X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2FWebInterface.java;h=42fd355245d1f3b0544e868b83e4a3cb76ac181c;hb=76402ddc863287224b17e413ec87208dcc562762;hp=436ed5f3a1065c9a839c19e418fa37f62a7a8240;hpb=26dbc1f7ba2c4243d8cc07986b0e943a2238ea08;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/web/WebInterface.java b/src/main/java/net/pterodactylus/sone/web/WebInterface.java index 436ed5f..42fd355 100644 --- a/src/main/java/net/pterodactylus/sone/web/WebInterface.java +++ b/src/main/java/net/pterodactylus/sone/web/WebInterface.java @@ -37,6 +37,8 @@ import java.util.logging.Logger; import net.pterodactylus.sone.core.Core; import net.pterodactylus.sone.core.CoreListener; +import net.pterodactylus.sone.core.event.NewPostFoundEvent; +import net.pterodactylus.sone.core.event.NewSoneFoundEvent; import net.pterodactylus.sone.data.Album; import net.pterodactylus.sone.data.Image; import net.pterodactylus.sone.data.Post; @@ -103,7 +105,6 @@ import net.pterodactylus.sone.web.ajax.UntrustAjaxPage; import net.pterodactylus.sone.web.page.FreenetRequest; import net.pterodactylus.sone.web.page.PageToadlet; import net.pterodactylus.sone.web.page.PageToadletFactory; -import net.pterodactylus.util.collection.SetBuilder; import net.pterodactylus.util.logging.Logging; import net.pterodactylus.util.notify.Notification; import net.pterodactylus.util.notify.NotificationManager; @@ -132,6 +133,8 @@ import net.pterodactylus.util.web.StaticPage; import net.pterodactylus.util.web.TemplatePage; import com.google.common.collect.Collections2; +import com.google.common.collect.ImmutableSet; +import com.google.common.eventbus.Subscribe; import com.google.inject.Inject; import freenet.clients.http.SessionManager; @@ -462,7 +465,7 @@ public class WebInterface implements CoreListener { * @return The new posts */ public Set getNewPosts() { - return new SetBuilder().addAll(newPostNotification.getElements()).addAll(localPostNotification.getElements()).get(); + return ImmutableSet. builder().addAll(newPostNotification.getElements()).addAll(localPostNotification.getElements()).build(); } /** @@ -472,7 +475,7 @@ public class WebInterface implements CoreListener { * @return The new replies */ public Set getNewReplies() { - return new SetBuilder().addAll(newReplyNotification.getElements()).addAll(localReplyNotification.getElements()).get(); + return ImmutableSet. builder().addAll(newReplyNotification.getElements()).addAll(localReplyNotification.getElements()).build(); } /** @@ -774,15 +777,15 @@ public class WebInterface implements CoreListener { } // - // CORELISTENER METHODS + // EVENT HANDLERS // /** * {@inheritDoc} */ - @Override - public void newSoneFound(Sone sone) { - newSoneNotification.add(sone); + @Subscribe + public void newSoneFound(NewSoneFoundEvent newSoneFoundEvent) { + newSoneNotification.add(newSoneFoundEvent.sone()); if (!hasFirstStartNotification()) { notificationManager.addNotification(newSoneNotification); } @@ -791,8 +794,9 @@ public class WebInterface implements CoreListener { /** * {@inheritDoc} */ - @Override - public void newPostFound(Post post) { + @Subscribe + public void newPostFound(NewPostFoundEvent newPostFoundEvent) { + Post post = newPostFoundEvent.post(); boolean isLocal = post.getSone().isLocal(); if (isLocal) { localPostNotification.add(post); @@ -810,6 +814,10 @@ public class WebInterface implements CoreListener { } } + // + // CORELISTENER METHODS + // + /** * {@inheritDoc} */