working on document list
This commit is contained in:
@@ -1,9 +1,10 @@
|
||||
/* © SRSoftware 2025 */
|
||||
package de.srsoftware.umbrella.backend;
|
||||
|
||||
import static de.srsoftware.umbrella.core.Constants.UMBRELLA;
|
||||
import static de.srsoftware.umbrella.core.Constants.*;
|
||||
import static de.srsoftware.umbrella.core.Util.mapLogLevel;
|
||||
import static java.lang.System.Logger.Level.INFO;
|
||||
import static java.text.MessageFormat.format;
|
||||
|
||||
import com.sun.net.httpserver.HttpServer;
|
||||
import de.srsoftware.configuration.JsonConfig;
|
||||
@@ -11,6 +12,7 @@ import de.srsoftware.tools.ColorLogger;
|
||||
import de.srsoftware.umbrella.core.ConnectionProvider;
|
||||
import de.srsoftware.umbrella.core.UmbrellaException;
|
||||
import de.srsoftware.umbrella.documents.DocumentApi;
|
||||
import de.srsoftware.umbrella.documents.SqliteDb;
|
||||
import de.srsoftware.umbrella.legacy.LegacyApi;
|
||||
import de.srsoftware.umbrella.message.MessageApi;
|
||||
import de.srsoftware.umbrella.message.MessageSystem;
|
||||
@@ -46,26 +48,28 @@ public class Application {
|
||||
configureLogging(config);
|
||||
var port = config.get("umbrella.http.port", 8080);
|
||||
var threads = config.get("umbrella.threads", 16);
|
||||
var docDbFile = config.get("umbrella.database.documents",config.file().getParent()+"/documents.db");
|
||||
var userDbFile = config.get("umbrella.database.user", config.file().getParent()+"/umbrella.db");
|
||||
var loginDbFile = config.get("umbrella.database.login_services",config.file().getParent()+"/umbrella.db");
|
||||
var messageDbFile = config.get("umbrella.database.messages", config.file().getParent()+"/umbrella.db");
|
||||
var connectionProvider = new ConnectionProvider();
|
||||
var documentDb = new SqliteDb(connectionProvider.get(docDbFile));
|
||||
var messageDb = new SqliteMessageDb(connectionProvider.get(messageDbFile));
|
||||
var userDb = new SqliteDB(connectionProvider.get(userDbFile));
|
||||
var loginServiceDb = new SqliteDB(connectionProvider.get(loginDbFile));
|
||||
|
||||
var moduleConfig = config.subset("umbrella.modules").orElseThrow(() -> new RuntimeException(format(ERROR_MISSING_CONFIG,"umbrella.modules")));
|
||||
var translationModule = new Translations();
|
||||
|
||||
var messageSystem = new MessageSystem(messageDb,translationModule,config.subset("umbrella.modules.message").orElseThrow());
|
||||
var messageSystem = new MessageSystem(messageDb,translationModule,moduleConfig.subset("message").orElseThrow(() -> new RuntimeException(format(ERROR_MISSING_CONFIG,"umbrella.modules.message"))));
|
||||
var server = HttpServer.create(new InetSocketAddress(port), 0);
|
||||
server.setExecutor(Executors.newFixedThreadPool(threads));
|
||||
|
||||
new LegacyApi(userDb,config).bindPath("/legacy").on(server);
|
||||
new DocumentApi().bindPath("/api/document").on(server);
|
||||
new MessageApi(messageSystem).bindPath("/api/messages").on(server);
|
||||
translationModule.bindPath("/api/translations").on(server);
|
||||
new UserModule(userDb,loginServiceDb,messageSystem).bindPath("/api/user").on(server);
|
||||
new WebHandler().bindPath("/").on(server);
|
||||
var userModule = new UserModule(userDb,loginServiceDb,messageSystem);
|
||||
new LegacyApi(userDb,config) .bindPath("/legacy") .on(server);
|
||||
new DocumentApi(documentDb, userModule, moduleConfig) .bindPath("/api/document") .on(server);
|
||||
new MessageApi(messageSystem).bindPath("/api/messages") .on(server);
|
||||
translationModule .bindPath("/api/translations").on(server);
|
||||
userModule .bindPath("/api/user") .on(server);
|
||||
new WebHandler() .bindPath("/") .on(server);
|
||||
server.start();
|
||||
LOG.log(INFO,"Started web server at {0}",port);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user