diff --git a/pom.xml b/pom.xml index a9856cb..009d381 100644 --- a/pom.xml +++ b/pom.xml @@ -197,14 +197,15 @@ __ - filesystem:src/main/resources/db/migration classpath:com/stktrk/app/db/migrations jdbc:postgresql://192.168.178.50:7654/flyway_db flyway_user 7e7v55UcYGrY0e3UPYI0qtyMA4YJ1ZkTEaoyZ252GluFkiEMHVT9U5ULS7Rg2rGi - flyway_db + + flyway_db + diff --git a/src/main/java/com/stktrk/app/AppApplication.java b/src/main/java/com/stktrk/app/AppApplication.java index ff53a1b..5758b86 100644 --- a/src/main/java/com/stktrk/app/AppApplication.java +++ b/src/main/java/com/stktrk/app/AppApplication.java @@ -3,7 +3,9 @@ package com.stktrk.app; import com.arcadedb.gremlin.ArcadeGraph; import com.github.javafaker.Faker; +import com.stktrk.app.configuration.GraphDbConfig; import org.apache.tinkerpop.gremlin.structure.Vertex; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; diff --git a/src/main/java/com/stktrk/app/ConnectionPool.java b/src/main/java/com/stktrk/app/ConnectionPool.java index 51ab12e..bd44d9d 100644 --- a/src/main/java/com/stktrk/app/ConnectionPool.java +++ b/src/main/java/com/stktrk/app/ConnectionPool.java @@ -2,20 +2,30 @@ package com.stktrk.app; import com.arcadedb.gremlin.ArcadeGraph; import com.arcadedb.gremlin.ArcadeGraphFactory; +import com.stktrk.app.configuration.GraphDbConfig; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import javax.annotation.PostConstruct; + +@Component public class ConnectionPool { - static final ArcadeGraphFactory pool; + static ArcadeGraphFactory pool; - static { + @Autowired + GraphDbConfig graphDbConfig; + + @PostConstruct + void init () { try { - pool = ArcadeGraphFactory.withRemote("192.168.178.50", 2480, "graph", "root", "playwithdata"); + pool = ArcadeGraphFactory.withRemote(graphDbConfig.getHost(), graphDbConfig.getHttpPort(), graphDbConfig.getGraphName(), graphDbConfig.getUser(), graphDbConfig.getPassword()); } catch (Exception e) { throw new RuntimeException(e); } } - public static ArcadeGraph getGraph(){ + public static ArcadeGraph getGraph() { return pool.get(); } } diff --git a/src/main/java/com/stktrk/app/configuration/GraphDbConfig.java b/src/main/java/com/stktrk/app/configuration/GraphDbConfig.java new file mode 100644 index 0000000..be5bfc2 --- /dev/null +++ b/src/main/java/com/stktrk/app/configuration/GraphDbConfig.java @@ -0,0 +1,22 @@ +package com.stktrk.app.configuration; + + +import lombok.Getter; +import lombok.Setter; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +@Component +@Getter +@Setter +@ConfigurationProperties(prefix = "graph") + +public class GraphDbConfig { + String host; + int httpPort; + int postgresPort; + String graphName; + String user; + String password; + +} diff --git a/src/main/java/com/stktrk/app/db/migrations/V1__CreateTest.java b/src/main/java/com/stktrk/app/db/migrations/V2__CreateTest.java similarity index 91% rename from src/main/java/com/stktrk/app/db/migrations/V1__CreateTest.java rename to src/main/java/com/stktrk/app/db/migrations/V2__CreateTest.java index e21fe06..3d260cb 100644 --- a/src/main/java/com/stktrk/app/db/migrations/V1__CreateTest.java +++ b/src/main/java/com/stktrk/app/db/migrations/V2__CreateTest.java @@ -6,7 +6,7 @@ import org.flywaydb.core.api.migration.Context; import java.sql.*; import java.util.Properties; -public class V1__CreateTest extends BaseJavaMigration { +public class V2__CreateTest extends BaseJavaMigration { public void migrate(Context context) throws Exception { Class.forName("org.postgresql.Driver"); @@ -25,7 +25,6 @@ public class V1__CreateTest extends BaseJavaMigration { Statement st = connection.createStatement(); st.execute("CREATE VERTEX TYPE test"); - connection.close(); } catch (Exception e) { diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index a11ec6c..21d1ca9 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -4,4 +4,13 @@ springdoc.swagger-ui.path=/swagger-ui.html flyway.user=flyway_user flyway.password=7e7v55UcYGrY0e3UPYI0qtyMA4YJ1ZkTEaoyZ252GluFkiEMHVT9U5ULS7Rg2rGi -flyway.schemas=flyway_db \ No newline at end of file +flyway.schemas=flyway_db + + +graph.user=root +graph.password=playwithdata +graph.connection=jdbc:postgresql://192.168.178.50:5432/graph +graph.http-port:2480 +graph.postgres-port:5432 +graph.host=192.168.178.50 +graph.graph-name=graph \ No newline at end of file