X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fmain%2FSonePlugin.java;h=b79df7c6754f0fa984a1859991a454af4d59c1a1;hb=a71b38bad4c9acd35902161e2579b6738408abc2;hp=540f3ac2a42eeb446355338de4bea607c506820a;hpb=33b58cb4388ee7ca267470c0d883653e1a16dff4;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/main/SonePlugin.java b/src/main/java/net/pterodactylus/sone/main/SonePlugin.java index 540f3ac..b79df7c 100644 --- a/src/main/java/net/pterodactylus/sone/main/SonePlugin.java +++ b/src/main/java/net/pterodactylus/sone/main/SonePlugin.java @@ -22,11 +22,12 @@ import static java.util.logging.Logger.*; import java.util.logging.Logger; import java.util.logging.*; -import com.google.common.eventbus.*; import net.pterodactylus.sone.core.*; import net.pterodactylus.sone.fcp.*; import net.pterodactylus.sone.freenet.wot.*; import net.pterodactylus.sone.web.*; +import net.pterodactylus.sone.web.notification.NotificationHandler; +import net.pterodactylus.sone.web.notification.NotificationHandlerModule; import freenet.l10n.BaseL10n.*; import freenet.l10n.*; @@ -35,8 +36,10 @@ import freenet.support.*; import freenet.support.api.*; import com.google.common.annotations.*; +import com.google.common.eventbus.*; import com.google.common.cache.*; import com.google.inject.*; +import com.google.inject.Module; import com.google.inject.name.*; import kotlin.jvm.functions.*; @@ -196,8 +199,13 @@ public class SonePlugin implements FredPlugin, FredPluginFCP, FredPluginL10n, Fr /* create the web interface. */ webInterface = injector.getInstance(WebInterface.class); + /* we need to request this to install all notification handlers. */ + injector.getInstance(NotificationHandler.class); + /* start core! */ core.start(); + + /* start the web interface! */ webInterface.start(); webInterface.setFirstStart(injector.getInstance(Key.get(Boolean.class, Names.named("FirstStart")))); webInterface.setNewConfig(injector.getInstance(Key.get(Boolean.class, Names.named("NewConfig")))); @@ -208,8 +216,9 @@ public class SonePlugin implements FredPlugin, FredPluginFCP, FredPluginL10n, Fr FreenetModule freenetModule = new FreenetModule(pluginRespirator); AbstractModule soneModule = new SoneModule(this, new EventBus()); Module webInterfaceModule = new WebInterfaceModule(); + Module notificationHandlerModule = new NotificationHandlerModule(); - return createInjector(freenetModule, soneModule, webInterfaceModule); + return createInjector(freenetModule, soneModule, webInterfaceModule, notificationHandlerModule); } @VisibleForTesting