From 139e2d59614fdb372f02cfb8a0f6377d53e7184c Mon Sep 17 00:00:00 2001 From: Jose Date: Thu, 13 Mar 2025 22:04:22 +0100 Subject: [PATCH] add things (there are bugs, this is unstable!) --- backend/pom.xml | 7 ++++ .../contaminus/common/ConfigManager.java | 8 +++++ .../contaminus/database/DatabaseManager.java | 33 +++++++++++-------- .../server/DataLayerAPIVerticle.java | 4 +-- .../server/LogicLayerAPIVerticle.java | 2 +- .../contaminus/server/MainVerticle.java | 26 ++++----------- .../miarma/contaminus/util/SystemUtil.java | 6 ++-- .../resources/webroot/config/settings.json | 2 +- 8 files changed, 47 insertions(+), 41 deletions(-) diff --git a/backend/pom.xml b/backend/pom.xml index 848550d..73deb84 100644 --- a/backend/pom.xml +++ b/backend/pom.xml @@ -55,6 +55,13 @@ 2.12.1 + + + io.quarkus + quarkus-agroal + 3.19.3 + + diff --git a/backend/src/main/java/net/miarma/contaminus/common/ConfigManager.java b/backend/src/main/java/net/miarma/contaminus/common/ConfigManager.java index 8de8b3e..cda7f71 100644 --- a/backend/src/main/java/net/miarma/contaminus/common/ConfigManager.java +++ b/backend/src/main/java/net/miarma/contaminus/common/ConfigManager.java @@ -61,6 +61,14 @@ public class ConfigManager { } } + public String getJdbcUrl() { + return String.format("%s://%s:%s/%s", + config.getProperty("db.protocol"), + config.getProperty("db.host"), + config.getProperty("db.port"), + config.getProperty("db.name")); + } + public String getStringProperty(String key) { return config.getProperty(key); } diff --git a/backend/src/main/java/net/miarma/contaminus/database/DatabaseManager.java b/backend/src/main/java/net/miarma/contaminus/database/DatabaseManager.java index 3653f66..4991120 100644 --- a/backend/src/main/java/net/miarma/contaminus/database/DatabaseManager.java +++ b/backend/src/main/java/net/miarma/contaminus/database/DatabaseManager.java @@ -18,22 +18,27 @@ import net.miarma.contaminus.common.Constants; public class DatabaseManager { private final JDBCPool pool; + private final Vertx vertx = Vertx.vertx(); - public DatabaseManager(Vertx vertx) { + private static DatabaseManager instance; + + public static DatabaseManager getInstance() { + if (instance == null) { + instance = new DatabaseManager(); + } + return instance; + } + + private DatabaseManager() { ConfigManager config = ConfigManager.getInstance(); - - JDBCConnectOptions jdbcOptions = new JDBCConnectOptions() - .setJdbcUrl(config.getStringProperty("db.protocol") + "//" + - config.getStringProperty("db.host") + ":" + - config.getStringProperty("db.port") + "/" + - config.getStringProperty("db.name")) - .setUser(config.getStringProperty("db.user")) - .setPassword(config.getStringProperty("db.pwd")); - - PoolOptions poolOptions = new PoolOptions() - .setMaxSize(Integer.parseInt(config.getStringProperty("db.poolSize"))); - - pool = JDBCPool.pool(vertx, jdbcOptions, poolOptions); + pool = JDBCPool.pool(vertx, + new JDBCConnectOptions() + .setJdbcUrl(config.getJdbcUrl()) + .setUser(config.getStringProperty("db.user")) + .setPassword(config.getStringProperty("db.pwd")), + new PoolOptions() + .setMaxSize(5) + ); } public Future> testConnection() { diff --git a/backend/src/main/java/net/miarma/contaminus/server/DataLayerAPIVerticle.java b/backend/src/main/java/net/miarma/contaminus/server/DataLayerAPIVerticle.java index 900ddc3..94aabc8 100644 --- a/backend/src/main/java/net/miarma/contaminus/server/DataLayerAPIVerticle.java +++ b/backend/src/main/java/net/miarma/contaminus/server/DataLayerAPIVerticle.java @@ -29,9 +29,9 @@ public class DataLayerAPIVerticle extends AbstractVerticle { public void start(Promise startPromise) { Constants.LOGGER.info("📡 Iniciando DataLayerAPIVerticle..."); - configManager = ConfigManager.getInstance(); + configManager = ConfigManager.getInstance(); gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create(); - dbManager = new DatabaseManager(vertx); + dbManager = DatabaseManager.getInstance(); Router router = Router.router(vertx); Set allowedMethods = new HashSet<>( diff --git a/backend/src/main/java/net/miarma/contaminus/server/LogicLayerAPIVerticle.java b/backend/src/main/java/net/miarma/contaminus/server/LogicLayerAPIVerticle.java index 41efc38..a1a6de9 100644 --- a/backend/src/main/java/net/miarma/contaminus/server/LogicLayerAPIVerticle.java +++ b/backend/src/main/java/net/miarma/contaminus/server/LogicLayerAPIVerticle.java @@ -32,7 +32,7 @@ public class LogicLayerAPIVerticle extends AbstractVerticle { configManager = ConfigManager.getInstance(); gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create(); - dbManager = new DatabaseManager(vertx); + dbManager = DatabaseManager.getInstance(); Router router = Router.router(vertx); Set allowedMethods = new HashSet<>( diff --git a/backend/src/main/java/net/miarma/contaminus/server/MainVerticle.java b/backend/src/main/java/net/miarma/contaminus/server/MainVerticle.java index 4602987..83abb02 100644 --- a/backend/src/main/java/net/miarma/contaminus/server/MainVerticle.java +++ b/backend/src/main/java/net/miarma/contaminus/server/MainVerticle.java @@ -8,32 +8,18 @@ import io.vertx.core.ThreadingModel; public class MainVerticle extends AbstractVerticle { @Override - public void start(Promise startPromise) { + public void start(Promise startPromise) { final DeploymentOptions options = new DeploymentOptions(); options.setThreadingModel(ThreadingModel.WORKER); - - String enabledVerticles = System.getProperty("vertx.options", ""); - - if (enabledVerticles.contains("data")) { - getVertx().deployVerticle(new DataLayerAPIVerticle(), options); - } - if (enabledVerticles.contains("business")) { - getVertx().deployVerticle(new LogicLayerAPIVerticle(), options); - } - if (enabledVerticles.contains("web")) { - getVertx().deployVerticle(new HttpServerVerticle()); - } + + getVertx().deployVerticle(new DataLayerAPIVerticle(), options); + //getVertx().deployVerticle(new LogicLayerAPIVerticle(), options); + //getVertx().deployVerticle(new HttpServerVerticle()); } @Override public void stop(Promise stopPromise) throws Exception { getVertx().deploymentIDs() .forEach(v -> getVertx().undeploy(v)); - } - - public static void main(String[] args) { - System.setProperty("vertx.options", String.join(",", args)); - io.vertx.core.Launcher.executeCommand("run", MainVerticle.class.getName()); - } - + } } \ No newline at end of file diff --git a/backend/src/main/java/net/miarma/contaminus/util/SystemUtil.java b/backend/src/main/java/net/miarma/contaminus/util/SystemUtil.java index f1cc2a1..d69d3e5 100644 --- a/backend/src/main/java/net/miarma/contaminus/util/SystemUtil.java +++ b/backend/src/main/java/net/miarma/contaminus/util/SystemUtil.java @@ -7,9 +7,9 @@ public class SystemUtil { static ConfigManager configManager = ConfigManager.getInstance(); static String host = configManager.getStringProperty("inet.host"); static String origin = configManager.getStringProperty("inet.origin"); - static int dataApiPort = configManager.getIntProperty("data-api.port"); - static int logicApiPort = configManager.getIntProperty("logic-api.port"); - static int webserverPort = configManager.getIntProperty("webserver.port"); + static int dataApiPort = 8081; + static int logicApiPort = 8082; + static int webserverPort = 8080; public static String getHost() { return host; diff --git a/backend/src/main/resources/webroot/config/settings.json b/backend/src/main/resources/webroot/config/settings.json index 58754ca..9570f6a 100644 --- a/backend/src/main/resources/webroot/config/settings.json +++ b/backend/src/main/resources/webroot/config/settings.json @@ -7,7 +7,7 @@ }, "appConfig": { "endpoints": { - "BASE_URL": "http://localhost:8081/api/v1", + "BASE_URL": "http://localhost:3001/api/v1", "GET_GROUPS": "/groups", "GET_GROUP_BY_ID": "/groups/{0}", "GET_GROUP_DEVICES": "/groups/{0}/devices",