1
0

changes (still bugs :c)

This commit is contained in:
Jose
2025-03-14 01:30:08 +01:00
parent 7eef98e870
commit 4014b1fd0a
6 changed files with 52 additions and 49 deletions

View File

@@ -65,9 +65,9 @@ public class ConfigManager {
public String getBaseDir() {
return getHomeDir() +
(getOS() == OSType.WINDOWS ? ".contaminus" :
getOS() == OSType.LINUX ? ".config/contaminus" :
".contaminus");
(getOS() == OSType.WINDOWS ? ".contaminus/" :
getOS() == OSType.LINUX ? ".config/contaminus/" :
".contaminus/");
}
public static OSType getOS() {

View File

@@ -1,40 +1,28 @@
package net.miarma.contaminus.database;
import io.vertx.core.Future;
import io.vertx.core.Handler;
import io.vertx.core.Vertx;
import io.vertx.core.json.JsonObject;
import io.vertx.jdbcclient.JDBCPool;
import io.vertx.sqlclient.Row;
import io.vertx.sqlclient.RowSet;
import net.miarma.contaminus.common.ConfigManager;
import net.miarma.contaminus.common.Constants;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
import io.vertx.core.Future;
import io.vertx.core.Handler;
import io.vertx.jdbcclient.JDBCPool;
import io.vertx.sqlclient.Row;
import io.vertx.sqlclient.RowSet;
import net.miarma.contaminus.common.Constants;
public class DatabaseManager {
private static DatabaseManager instance;
private final JDBCPool pool;
@SuppressWarnings("deprecation")
private DatabaseManager(Vertx vertx) {
ConfigManager config = ConfigManager.getInstance();
JsonObject dbConfig = new JsonObject()
.put("jdbcUrl", config.getJdbcUrl())
.put("username", config.getStringProperty("db.user"))
.put("password", config.getStringProperty("db.pwd"))
.put("max_pool_size", config.getIntProperty("db.poolSize"));
pool = JDBCPool.pool(vertx, dbConfig);
private DatabaseManager(JDBCPool pool) {
this.pool = pool;
}
public static synchronized DatabaseManager getInstance(Vertx vertx) {
public static synchronized DatabaseManager getInstance(JDBCPool pool) {
if (instance == null) {
instance = new DatabaseManager(vertx);
instance = new DatabaseManager(pool);
}
return instance;
}

View File

@@ -4,9 +4,6 @@ import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.Promise;
import io.vertx.core.http.HttpMethod;
@@ -14,20 +11,30 @@ import io.vertx.ext.web.Router;
import io.vertx.ext.web.RoutingContext;
import io.vertx.ext.web.handler.BodyHandler;
import io.vertx.ext.web.handler.CorsHandler;
import io.vertx.jdbcclient.JDBCPool;
import net.miarma.contaminus.common.ConfigManager;
import net.miarma.contaminus.common.Constants;
import net.miarma.contaminus.database.DatabaseManager;
@SuppressWarnings("unused")
public class DataLayerAPIVerticle extends AbstractVerticle {
private DatabaseManager dbManager = DatabaseManager.getInstance(vertx);
private Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
private ConfigManager configManager = ConfigManager.getInstance();
private JDBCPool pool;
private DatabaseManager dbManager;
private ConfigManager configManager;
public DataLayerAPIVerticle(JDBCPool pool) {
this.pool = pool;
}
@Override
public void start(Promise<Void> startPromise) {
dbManager = DatabaseManager.getInstance(pool);
configManager = ConfigManager.getInstance();
Constants.LOGGER.info("📡 Iniciando DataLayerAPIVerticle...");
Router router = Router.router(vertx);
Set<HttpMethod> allowedMethods = new HashSet<>(
Arrays.asList(HttpMethod.GET, HttpMethod.POST, HttpMethod.PUT, HttpMethod.OPTIONS)); // Por ejemplo
@@ -64,7 +71,7 @@ public class DataLayerAPIVerticle extends AbstractVerticle {
router.route(HttpMethod.PUT, Constants.PUT_ACTUATOR_BY_ID).handler(this::updateActuator);
dbManager.testConnection()
.onSuccess(rows -> {
.onSuccess(_rows -> {
Constants.LOGGER.info("✅ Database connection ok");
vertx.createHttpServer()
.requestHandler(router)

View File

@@ -1,13 +1,9 @@
package net.miarma.contaminus.server;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.Promise;
import io.vertx.core.http.HttpMethod;
@@ -17,16 +13,14 @@ import io.vertx.ext.web.handler.BodyHandler;
import io.vertx.ext.web.handler.CorsHandler;
import net.miarma.contaminus.common.ConfigManager;
import net.miarma.contaminus.common.Constants;
import net.miarma.contaminus.database.DatabaseManager;
@SuppressWarnings("unused")
public class LogicLayerAPIVerticle extends AbstractVerticle {
private DatabaseManager dbManager = DatabaseManager.getInstance(vertx);
private Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
private ConfigManager configManager = ConfigManager.getInstance();
private ConfigManager configManager;
@Override
public void start(Promise<Void> startPromise) {
configManager = ConfigManager.getInstance();
Constants.LOGGER.info("📡 Iniciando LogicApiVerticle...");
Router router = Router.router(vertx);

View File

@@ -10,13 +10,25 @@ import io.vertx.core.AbstractVerticle;
import io.vertx.core.DeploymentOptions;
import io.vertx.core.Promise;
import io.vertx.core.ThreadingModel;
import io.vertx.core.json.JsonObject;
import io.vertx.jdbcclient.JDBCPool;
import net.miarma.contaminus.common.ConfigManager;
import net.miarma.contaminus.common.Constants;
public class MainVerticle extends AbstractVerticle {
static ConfigManager configManager = ConfigManager.getInstance();
static ConfigManager configManager;
private JDBCPool pool;
@SuppressWarnings("deprecation")
private void init() {
configManager = ConfigManager.getInstance();
JsonObject dbConfig = new JsonObject()
.put("jdbcUrl", configManager.getJdbcUrl())
.put("username", configManager.getStringProperty("db.user"))
.put("password", configManager.getStringProperty("db.pwd"))
.put("max_pool_size", configManager.getIntProperty("db.poolSize"));
pool = JDBCPool.pool(vertx, dbConfig);
initializeDirectories();
copyDefaultConfig();
}
@@ -51,7 +63,7 @@ public class MainVerticle extends AbstractVerticle {
final DeploymentOptions options = new DeploymentOptions();
options.setThreadingModel(ThreadingModel.WORKER);
vertx.deployVerticle(new DataLayerAPIVerticle(), options, result -> {
vertx.deployVerticle(new DataLayerAPIVerticle(pool), options, result -> {
if(result.succeeded()) {
Constants.LOGGER.info(String.format(
"🟢 DataLayerAPIVerticle desplegado. (http://%s:%d)",

View File

@@ -8,10 +8,12 @@ import net.miarma.contaminus.common.ConfigManager;
import net.miarma.contaminus.common.Constants;
public class WebServerVerticle extends AbstractVerticle {
private final ConfigManager configManager = ConfigManager.getInstance();
private ConfigManager configManager;
@Override
public void start(Promise<Void> startPromise) {
configManager = ConfigManager.getInstance();
Constants.LOGGER.info("📡 Iniciando WebServerVerticle...");
Router router = Router.router(vertx);