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);
}
}