From 72d3eb99fd972bc47b36666ff58483fa2ecc99bd Mon Sep 17 00:00:00 2001 From: =?utf8?q?David=20=E2=80=98Bombe=E2=80=99=20Roden?= Date: Tue, 12 Apr 2011 09:01:37 +0200 Subject: [PATCH] Add image insert listener interface. --- .../sone/core/ImageInsertListener.java | 76 ++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 src/main/java/net/pterodactylus/sone/core/ImageInsertListener.java 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); + +} -- 2.7.4