From: David ‘Bombe’ Roden Date: Tue, 12 Apr 2011 07:01:37 +0000 (+0200) Subject: Add image insert listener interface. X-Git-Tag: beta-freefall-0.6.2-1~43 X-Git-Url: https://git.pterodactylus.net/?a=commitdiff_plain;h=72d3eb99fd972bc47b36666ff58483fa2ecc99bd;p=Sone.git Add image insert listener interface. --- diff --git a/src/main/java/net/pterodactylus/sone/core/ImageInsertListener.java b/src/main/java/net/pterodactylus/sone/core/ImageInsertListener.java new file mode 100644 index 0000000..a0e8a56 --- /dev/null +++ b/src/main/java/net/pterodactylus/sone/core/ImageInsertListener.java @@ -0,0 +1,76 @@ +/* + * Sone - ImageInsertListener.java - Copyright © 2011 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 + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package net.pterodactylus.sone.core; + +import java.util.EventListener; + +import net.pterodactylus.sone.core.FreenetInterface.InsertToken; +import net.pterodactylus.sone.data.Image; +import freenet.keys.FreenetURI; + +/** + * Listener interface for objects that want to be notified about the status of + * an image insert. + * + * @see ImageInserter#insertImage(net.pterodactylus.sone.data.TemporaryImage, + * Image) + * @see FreenetInterface#insertImage(net.pterodactylus.sone.data.TemporaryImage, + * Image, net.pterodactylus.sone.core.FreenetInterface.InsertToken) + * @see InsertToken + * @author David ‘Bombe’ Roden + */ +public interface ImageInsertListener extends EventListener { + + /** + * Notifies a listener that the insert of the given image started. + * + * @param image + * The image that is being inserted + */ + public void imageInsertStarted(Image image); + + /** + * Notifies a listener that the insert of the given image was aborted by the + * user. + * + * @param image + * The image that is no longer being inserted + */ + public void imageInsertAborted(Image image); + + /** + * Notifies a listener that the given image was inserted successfully. + * + * @param image + * The image that was inserted + * @param key + * The final key of the image + */ + public void imageInsertFinished(Image image, FreenetURI key); + + /** + * Notifies a listener that the given image could not be inserted. + * + * @param image + * The image that could not be inserted + * @param cause + * The cause of the insertion failure + */ + public void imageInsertFailed(Image image, Throwable cause); + +}