Add command that removes a plugin
[jFCPlib.git] / src / main / java / net / pterodactylus / fcp / quelaton / FcpDialog.java
index 2aa003c..5be102c 100644 (file)
@@ -36,6 +36,7 @@ import net.pterodactylus.fcp.PersistentPutDir;
 import net.pterodactylus.fcp.PersistentRequestModified;
 import net.pterodactylus.fcp.PersistentRequestRemoved;
 import net.pterodactylus.fcp.PluginInfo;
+import net.pterodactylus.fcp.PluginRemoved;
 import net.pterodactylus.fcp.ProtocolError;
 import net.pterodactylus.fcp.PutFailed;
 import net.pterodactylus.fcp.PutFetchable;
@@ -57,7 +58,7 @@ import com.google.common.util.concurrent.ListeningExecutorService;
 import com.google.common.util.concurrent.MoreExecutors;
 
 /**
- * An FCP reply sequence enables you to conveniently wait for a specific set of FCP replies.
+ * An FCP dialog enables you to conveniently wait for a specific set of FCP replies.
  *
  * @author <a href="bombe@freenetproject.org">David ‘Bombe’ Roden</a>
  */
@@ -369,6 +370,13 @@ public abstract class FcpDialog<R> implements AutoCloseable, FcpListener {
        protected void consumePluginInfo(PluginInfo pluginInfo) { }
 
        @Override
+       public final void receivedPluginRemoved(FcpConnection fcpConnection, PluginRemoved pluginRemoved) {
+               consume(this::consumePluginRemoved, pluginRemoved);
+       }
+
+       protected void consumePluginRemoved(PluginRemoved pluginRemoved) { }
+
+       @Override
        public final void receivedFCPPluginReply(FcpConnection fcpConnection, FCPPluginReply fcpPluginReply) {
                consume(this::consumeFCPPluginReply, fcpPluginReply);
        }