X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FCoreListener.java;h=854af8a56b10632fac0be3e94c36a0777383d561;hp=950e8908319b179d5e09f7a8730b49c2bebecca3;hb=227e3e5aa520354a7744844f9345bf20920519e7;hpb=0ac5c61faa54b62f29bf8c8e9903919315810c80 diff --git a/src/main/java/net/pterodactylus/sone/core/CoreListener.java b/src/main/java/net/pterodactylus/sone/core/CoreListener.java index 950e890..854af8a 100644 --- a/src/main/java/net/pterodactylus/sone/core/CoreListener.java +++ b/src/main/java/net/pterodactylus/sone/core/CoreListener.java @@ -1,5 +1,5 @@ /* - * Sone - CoreListener.java - Copyright © 2010 David Roden + * Sone - CoreListener.java - Copyright © 2010–2012 David Roden * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -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 @@ -32,83 +34,145 @@ import net.pterodactylus.sone.data.Sone; public interface CoreListener extends EventListener { /** - * Notifies a listener that a Sone is now being rescued. + * Notifies a listener that the given Sone is now marked as known. * * @param sone - * The Sone that is rescued + * The known Sone */ - public void rescuingSone(Sone sone); + public void markSoneKnown(Sone sone); /** - * Notifies a listener that the Sone was rescued and can now be unlocked. + * Notifies a listener that the given post is now marked as known. * - * @param sone - * The Sone that was rescued + * @param post + * The known post + */ + public void markPostKnown(Post post); + + /** + * Notifies a listener that the given reply is now marked as known. + * + * @param reply + * The known reply */ - public void rescuedSone(Sone sone); + public void markReplyKnown(PostReply reply); /** - * Notifies a listener that a new Sone has been discovered. + * Notifies a listener that the given Sone was removed. * * @param sone - * The new Sone + * The removed Sone */ - public void newSoneFound(Sone sone); + public void soneRemoved(Sone sone); /** - * Notifies a listener that a new post has been found. + * Notifies a listener that the given post was removed. * * @param post - * The new post + * The removed post */ - public void newPostFound(Post post); + public void postRemoved(Post post); /** - * Notifies a listener that a new reply has been found. + * Notifies a listener that the given reply was removed. * * @param reply - * The new reply + * The removed reply */ - public void newReplyFound(Reply reply); + public void replyRemoved(PostReply reply); /** - * Notifies a listener that the given Sone is now marked as known. + * Notifies a listener when a Sone was locked. * * @param sone - * The known Sone + * The Sone that was locked */ - public void markSoneKnown(Sone sone); + public void soneLocked(Sone sone); /** - * Notifies a listener that the given post is now marked as known. + * Notifies a listener that a Sone was unlocked. * - * @param post - * The known post + * @param sone + * The Sone that was unlocked */ - public void markPostKnown(Post post); + public void soneUnlocked(Sone sone); /** - * Notifies a listener that the given reply is now marked as known. + * Notifies a listener that the insert of the given Sone has started. * - * @param reply - * The known reply + * @see SoneInsertListener#insertStarted(Sone) + * @param sone + * The Sone that is being inserted */ - public void markReplyKnown(Reply reply); + public void soneInserting(Sone sone); /** - * Notifies a listener that the given post was removed. + * Notifies a listener that the insert of the given Sone has finished + * successfully. * - * @param post - * The removed post + * @see SoneInsertListener#insertFinished(Sone, long) + * @param sone + * The Sone that has been inserted + * @param insertDuration + * The insert duration (in milliseconds) */ - public void postRemoved(Post post); + public void soneInserted(Sone sone, long insertDuration); /** - * Notifies a listener that the given reply was removed. + * Notifies a listener that the insert of the given Sone was aborted. * - * @param reply - * The removed reply + * @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 replyRemoved(Reply reply); + public void imageInsertFailed(Image image, Throwable cause); }