From: David ‘Bombe’ Roden Date: Wed, 16 Jan 2013 18:08:19 +0000 (+0100) Subject: Convert “Sone locked” into EventBus-based event. X-Git-Tag: 0.8.5^2~3^2~105 X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=commitdiff_plain;h=de3f83202862d1b12505eff4da668a736a355b72 Convert “Sone locked” into EventBus-based event. --- diff --git a/src/main/java/net/pterodactylus/sone/core/Core.java b/src/main/java/net/pterodactylus/sone/core/Core.java index e42a055..ed8cc72 100644 --- a/src/main/java/net/pterodactylus/sone/core/Core.java +++ b/src/main/java/net/pterodactylus/sone/core/Core.java @@ -43,6 +43,7 @@ import net.pterodactylus.sone.core.event.NewPostReplyFoundEvent; import net.pterodactylus.sone.core.event.NewSoneFoundEvent; import net.pterodactylus.sone.core.event.PostRemovedEvent; import net.pterodactylus.sone.core.event.PostReplyRemovedEvent; +import net.pterodactylus.sone.core.event.SoneLockedEvent; import net.pterodactylus.sone.core.event.SoneRemovedEvent; import net.pterodactylus.sone.data.Album; import net.pterodactylus.sone.data.Client; @@ -798,7 +799,7 @@ public class Core extends AbstractService implements IdentityListener, UpdateLis public void lockSone(Sone sone) { synchronized (lockedSones) { if (lockedSones.add(sone)) { - coreListenerManager.fireSoneLocked(sone); + eventBus.post(new SoneLockedEvent(sone)); } } } diff --git a/src/main/java/net/pterodactylus/sone/core/CoreListener.java b/src/main/java/net/pterodactylus/sone/core/CoreListener.java index 0ae6fe1..a826e64 100644 --- a/src/main/java/net/pterodactylus/sone/core/CoreListener.java +++ b/src/main/java/net/pterodactylus/sone/core/CoreListener.java @@ -32,14 +32,6 @@ import net.pterodactylus.util.version.Version; public interface CoreListener extends EventListener { /** - * Notifies a listener when a Sone was locked. - * - * @param sone - * The Sone that was locked - */ - public void soneLocked(Sone sone); - - /** * Notifies a listener that a Sone was unlocked. * * @param sone diff --git a/src/main/java/net/pterodactylus/sone/core/CoreListenerManager.java b/src/main/java/net/pterodactylus/sone/core/CoreListenerManager.java index 031fdb3..44fb67b 100644 --- a/src/main/java/net/pterodactylus/sone/core/CoreListenerManager.java +++ b/src/main/java/net/pterodactylus/sone/core/CoreListenerManager.java @@ -44,19 +44,6 @@ public class CoreListenerManager extends AbstractListenerManager. + */ + +package net.pterodactylus.sone.core.event; + +import net.pterodactylus.sone.data.Sone; + +/** + * Event that signals that a {@link Sone} was locked. Only + * {@link Sone#isLocal() local Sones} can be locked. + * + * @author David ‘Bombe’ Roden + */ +public class SoneLockedEvent extends SoneEvent { + + /** + * Creates a new “Sone locked” event. + * + * @param sone + * The Sone that was locked + */ + public SoneLockedEvent(Sone sone) { + super(sone); + } + +} diff --git a/src/main/java/net/pterodactylus/sone/web/WebInterface.java b/src/main/java/net/pterodactylus/sone/web/WebInterface.java index 4534c35..9e5e0eb 100644 --- a/src/main/java/net/pterodactylus/sone/web/WebInterface.java +++ b/src/main/java/net/pterodactylus/sone/web/WebInterface.java @@ -45,6 +45,7 @@ import net.pterodactylus.sone.core.event.NewPostReplyFoundEvent; import net.pterodactylus.sone.core.event.NewSoneFoundEvent; import net.pterodactylus.sone.core.event.PostRemovedEvent; import net.pterodactylus.sone.core.event.PostReplyRemovedEvent; +import net.pterodactylus.sone.core.event.SoneLockedEvent; import net.pterodactylus.sone.core.event.SoneRemovedEvent; import net.pterodactylus.sone.data.Album; import net.pterodactylus.sone.data.Image; @@ -936,15 +937,15 @@ public class WebInterface implements CoreListener { } } - // - // CORELISTENER METHODS - // - /** - * {@inheritDoc} + * Notifies the web interface that a Sone was locked. + * + * @param soneLockedEvent + * The event */ - @Override - public void soneLocked(final Sone sone) { + @Subscribe + public void soneLocked(SoneLockedEvent soneLockedEvent) { + final Sone sone = soneLockedEvent.sone(); Object tickerObject = Ticker.getInstance().registerEvent(System.currentTimeMillis() + (5 * 60) * 1000, new Runnable() { @Override @@ -958,6 +959,10 @@ public class WebInterface implements CoreListener { lockedSonesTickerObjects.put(sone, tickerObject); } + // + // CORELISTENER METHODS + // + /** * {@inheritDoc} */