Author: toad
Date: 2006-03-08 21:15:06 +0000 (Wed, 08 Mar 2006)
New Revision: 8195

Modified:
   trunk/freenet/src/freenet/node/Version.java
   trunk/freenet/src/freenet/node/fcp/ClientRequest.java
   trunk/freenet/src/freenet/node/fcp/FCPClient.java
   trunk/freenet/src/freenet/node/fcp/RemovePersistentRequest.java
Log:
508:
RemovePersistentRequest should cancel the request if it is already running.

Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2006-03-08 15:48:28 UTC (rev 
8194)
+++ trunk/freenet/src/freenet/node/Version.java 2006-03-08 21:15:06 UTC (rev 
8195)
@@ -20,7 +20,7 @@
        public static final String protocolVersion = "1.0";

        /** The build number of the current revision */
-       private static final int buildNumber = 507;
+       private static final int buildNumber = 508;

        /** Oldest build of Fred we will talk to */
        private static final int lastGoodBuild = 507;

Modified: trunk/freenet/src/freenet/node/fcp/ClientRequest.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientRequest.java       2006-03-08 
15:48:28 UTC (rev 8194)
+++ trunk/freenet/src/freenet/node/fcp/ClientRequest.java       2006-03-08 
21:15:06 UTC (rev 8195)
@@ -97,4 +97,6 @@

        public abstract boolean isPersistentForever();

+       public abstract void cancel();
+
 }

Modified: trunk/freenet/src/freenet/node/fcp/FCPClient.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/FCPClient.java   2006-03-08 15:48:28 UTC 
(rev 8194)
+++ trunk/freenet/src/freenet/node/fcp/FCPClient.java   2006-03-08 21:15:06 UTC 
(rev 8195)
@@ -136,7 +136,7 @@
                }
        }

-       public void removeByIdentifier(String identifier) throws 
MessageInvalidException {
+       public void removeByIdentifier(String identifier, boolean kill) throws 
MessageInvalidException {
                ClientRequest req;
                synchronized(this) {
                        req = (ClientRequest) 
clientRequestsByIdentifier.get(identifier);
@@ -146,6 +146,8 @@
                                throw new 
MessageInvalidException(ProtocolErrorMessage.NO_SUCH_IDENTIFIER, "Not found", 
identifier);
                        clientRequestsByIdentifier.remove(identifier);
                }
+               if(kill)
+                       req.cancel();
                server.forceStorePersistentRequests();
        }


Modified: trunk/freenet/src/freenet/node/fcp/RemovePersistentRequest.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/RemovePersistentRequest.java     
2006-03-08 15:48:28 UTC (rev 8194)
+++ trunk/freenet/src/freenet/node/fcp/RemovePersistentRequest.java     
2006-03-08 21:15:06 UTC (rev 8195)
@@ -34,7 +34,7 @@
        public void run(FCPConnectionHandler handler, Node node)
                        throws MessageInvalidException {
                FCPClient client = global ? handler.server.globalClient : 
handler.getClient();
-               client.removeByIdentifier(identifier);
+               client.removeByIdentifier(identifier, true);
        }

 }


Reply via email to