diff --git a/backend/build.gradle.kts b/backend/build.gradle.kts index 8205734..52459bd 100644 --- a/backend/build.gradle.kts +++ b/backend/build.gradle.kts @@ -14,6 +14,7 @@ application{ dependencies{ implementation(project(":core")) implementation(project(":legacy")) + implementation(project(":messages")) implementation(project(":translations")) implementation(project(":user")) implementation(project(":web")) diff --git a/backend/src/main/java/de/srsoftware/umbrella/backend/Application.java b/backend/src/main/java/de/srsoftware/umbrella/backend/Application.java index 9f846ef..fbfaeee 100644 --- a/backend/src/main/java/de/srsoftware/umbrella/backend/Application.java +++ b/backend/src/main/java/de/srsoftware/umbrella/backend/Application.java @@ -11,6 +11,9 @@ import de.srsoftware.tools.ColorLogger; import de.srsoftware.umbrella.core.ConnectionProvider; import de.srsoftware.umbrella.core.UmbrellaException; import de.srsoftware.umbrella.legacy.LegacyApi; +import de.srsoftware.umbrella.message.MessageApi; +import de.srsoftware.umbrella.message.MessageSystem; +import de.srsoftware.umbrella.message.SqliteMessageDb; import de.srsoftware.umbrella.translations.Translations; import de.srsoftware.umbrella.user.UserModule; import de.srsoftware.umbrella.user.sqlite.SqliteDB; @@ -42,15 +45,20 @@ public class Application { configureLogging(config); var port = config.get("umbrella.http.port", 8080); var threads = config.get("umbrella.threads", 16); - var userDB = config.get("umbrella.database.user", config.file().getParent()+"/umbrella.db"); - var loginDB = config.get("umbrella.database.login_services",config.file().getParent()+"/umbrella.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 userDb = new SqliteDB(connectionProvider.get(userDB)); - var loginServicedb = new SqliteDB(connectionProvider.get(loginDB)); + var messageDb = new SqliteMessageDb(connectionProvider.get(messageDbFile)); + var userDb = new SqliteDB(connectionProvider.get(userDbFile)); + var loginServicedb = new SqliteDB(connectionProvider.get(loginDbFile)); + + var messageSystem = new MessageSystem(messageDb); var server = HttpServer.create(new InetSocketAddress(port), 0); server.setExecutor(Executors.newFixedThreadPool(threads)); new LegacyApi(userDb,config).bindPath("/legacy").on(server); + new MessageApi(messageSystem).bindPath("/api/messages").on(server); new Translations().bindPath("/api/translations").on(server); new UserModule(userDb,loginServicedb).bindPath("/api/user").on(server); new WebHandler().bindPath("/").on(server); diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte index 0b5ce71..90664ac 100644 --- a/frontend/src/App.svelte +++ b/frontend/src/App.svelte @@ -7,6 +7,7 @@ import EditService from "./routes/user/EditService.svelte"; import Footer from "./Components/Footer.svelte"; import Login from "./Components/Login.svelte"; + import Messages from "./routes/message/Messages.svelte"; import Menu from "./Components/Menu.svelte"; import Search from "./routes/search/Search.svelte"; import User from "./routes/user/User.svelte"; @@ -32,6 +33,7 @@ {#if user.name }
+