X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FCoreListener.java;h=2e7b337917eb25c09a9e887407a351f0beb8b3e9;hp=ca99e879f9aeb9dc724e97cba05fbbd6855d5a2b;hb=c9e306ac8e3ada846e87a0cc256a20fc148f381c;hpb=5b6767cdd9eece7d2a08f52016b3e35340d1f22f diff --git a/src/main/java/net/pterodactylus/sone/core/CoreListener.java b/src/main/java/net/pterodactylus/sone/core/CoreListener.java index ca99e87..2e7b337 100644 --- a/src/main/java/net/pterodactylus/sone/core/CoreListener.java +++ b/src/main/java/net/pterodactylus/sone/core/CoreListener.java @@ -19,9 +19,11 @@ package net.pterodactylus.sone.core; import java.util.EventListener; +import net.pterodactylus.sone.data.Image; import net.pterodactylus.sone.data.Post; -import net.pterodactylus.sone.data.Reply; +import net.pterodactylus.sone.data.PostReply; import net.pterodactylus.sone.data.Sone; +import net.pterodactylus.util.version.Version; /** * Listener interface for objects that want to be notified on certain @@ -53,7 +55,7 @@ public interface CoreListener extends EventListener { * @param reply * The new reply */ - public void newReplyFound(Reply reply); + public void newReplyFound(PostReply reply); /** * Notifies a listener that the given Sone is now marked as known. @@ -77,6 +79,124 @@ public interface CoreListener extends EventListener { * @param reply * The known reply */ - public void markReplyKnown(Reply reply); + public void markReplyKnown(PostReply reply); + + /** + * Notifies a listener that the given Sone was removed. + * + * @param sone + * The removed Sone + */ + public void soneRemoved(Sone sone); + + /** + * 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(PostReply 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 the insert of the given Sone has started. + * + * @see SoneInsertListener#insertStarted(Sone) + * @param sone + * The Sone that is being inserted + */ + public void soneInserting(Sone sone); + + /** + * Notifies a listener that the insert of the given Sone has finished + * successfully. + * + * @see SoneInsertListener#insertFinished(Sone, long) + * @param sone + * The Sone that has been inserted + * @param insertDuration + * The insert duration (in milliseconds) + */ + public void soneInserted(Sone sone, long insertDuration); + + /** + * Notifies a listener that the insert of the given Sone was aborted. + * + * @see SoneInsertListener#insertAborted(Sone, Throwable) + * @param sone + * The Sone that was inserted + * @param cause + * The cause for the abortion (may be {@code null}) + */ + public void soneInsertAborted(Sone sone, Throwable cause); + + /** + * 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); + + /** + * Notifies a listener that an image has started being inserted. + * + * @param image + * The image that is now inserted + */ + public void imageInsertStarted(Image image); + + /** + * Notifies a listener that an image insert was aborted by the user. + * + * @param image + * The image that is not inserted anymore + */ + public void imageInsertAborted(Image image); + + /** + * Notifies a listener that an image was successfully inserted. + * + * @param image + * The image that was inserted + */ + public void imageInsertFinished(Image image); + + /** + * Notifies a listener that an image failed to be inserted. + * + * @param image + * The image that could not be inserted + * @param cause + * The reason for the failed insert + */ + public void imageInsertFailed(Image image, Throwable cause); }