Store and propagate the latest edition, too.
[Sone.git] / src / main / java / net / pterodactylus / sone / core / CoreListener.java
index ca99e87..fb83c9f 100644 (file)
@@ -22,6 +22,7 @@ import java.util.EventListener;
 import net.pterodactylus.sone.data.Post;
 import net.pterodactylus.sone.data.Reply;
 import net.pterodactylus.sone.data.Sone;
+import net.pterodactylus.util.version.Version;
 
 /**
  * Listener interface for objects that want to be notified on certain
@@ -32,6 +33,22 @@ import net.pterodactylus.sone.data.Sone;
 public interface CoreListener extends EventListener {
 
        /**
+        * Notifies a listener that a Sone is now being rescued.
+        *
+        * @param sone
+        *            The Sone that is rescued
+        */
+       public void rescuingSone(Sone sone);
+
+       /**
+        * Notifies a listener that the Sone was rescued and can now be unlocked.
+        *
+        * @param sone
+        *            The Sone that was rescued
+        */
+       public void rescuedSone(Sone sone);
+
+       /**
         * Notifies a listener that a new Sone has been discovered.
         *
         * @param sone
@@ -79,4 +96,48 @@ public interface CoreListener extends EventListener {
         */
        public void markReplyKnown(Reply reply);
 
+       /**
+        * Notifies a listener that the given post was removed.
+        *
+        * @param post
+        *            The removed post
+        */
+       public void postRemoved(Post post);
+
+       /**
+        * Notifies a listener that the given reply was removed.
+        *
+        * @param reply
+        *            The removed reply
+        */
+       public void replyRemoved(Reply reply);
+
+       /**
+        * 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
+        *            The Sone that was unlocked
+        */
+       public void soneUnlocked(Sone sone);
+
+       /**
+        * Notifies a listener that a new version has been found.
+        *
+        * @param version
+        *            The version that was found
+        * @param releaseTime
+        *            The release time of the new version
+        * @param latestEdition
+        *            The latest edition of the Sone homepage
+        */
+       public void updateFound(Version version, long releaseTime, long latestEdition);
+
 }