Author: toad
Date: 2006-06-16 16:07:06 +0000 (Fri, 16 Jun 2006)
New Revision: 9231

Modified:
   trunk/freenet/src/freenet/node/fcp/ClientGet.java
   trunk/freenet/src/freenet/node/fcp/ClientPut.java
   trunk/freenet/src/freenet/node/fcp/ClientPutBase.java
   trunk/freenet/src/freenet/node/fcp/ClientRequest.java
   trunk/freenet/src/freenet/node/fcp/FCPClient.java
   trunk/freenet/src/freenet/node/fcp/GetRequestStatusMessage.java
Log:
Add OnlyData option to GetRequestStatus.

Modified: trunk/freenet/src/freenet/node/fcp/ClientGet.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientGet.java   2006-06-16 16:01:48 UTC 
(rev 9230)
+++ trunk/freenet/src/freenet/node/fcp/ClientGet.java   2006-06-16 16:07:06 UTC 
(rev 9231)
@@ -163,7 +163,7 @@
                        }
                getter = new ClientGetter(this, client.node.chkFetchScheduler, 
client.node.sskFetchScheduler, uri, fctx, priorityClass, client, returnBucket);
                if(persistenceType != PERSIST_CONNECTION && handler != null)
-                       sendPendingMessages(handler.outputHandler, true, true);
+                       sendPendingMessages(handler.outputHandler, true, true, 
false);

        }

@@ -345,19 +345,21 @@
                client.queueClientRequestMessage(msg, 
VERBOSITY_SPLITFILE_PROGRESS);
        }

-       public void sendPendingMessages(FCPConnectionOutputHandler handler, 
boolean includePersistentRequest, boolean includeData) {
+       public void sendPendingMessages(FCPConnectionOutputHandler handler, 
boolean includePersistentRequest, boolean includeData, boolean onlyData) {
                if(persistenceType == ClientRequest.PERSIST_CONNECTION) {
                        Logger.error(this, "WTF? 
persistenceType="+persistenceType, new Exception("error"));
                        return;
                }
-               if(includePersistentRequest) {
-                       FCPMessage msg = new PersistentGet(identifier, uri, 
verbosity, priorityClass, returnType, persistenceType, targetFile, tempFile, 
clientToken, client.isGlobalQueue);
-                       handler.queue(msg);
+               if(!onlyData) {
+                       if(includePersistentRequest) {
+                               FCPMessage msg = new PersistentGet(identifier, 
uri, verbosity, priorityClass, returnType, persistenceType, targetFile, 
tempFile, clientToken, client.isGlobalQueue);
+                               handler.queue(msg);
+                       }
+                       if(progressPending != null)
+                               handler.queue(progressPending);
+                       if(finished)
+                               trySendDataFoundOrGetFailed(handler);
                }
-               if(progressPending != null)
-                       handler.queue(progressPending);
-               if(finished)
-                       trySendDataFoundOrGetFailed(handler);
                if(includeData && allDataPending != null)
                        handler.queue(allDataPending);
        }

Modified: trunk/freenet/src/freenet/node/fcp/ClientPut.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientPut.java   2006-06-16 16:01:48 UTC 
(rev 9230)
+++ trunk/freenet/src/freenet/node/fcp/ClientPut.java   2006-06-16 16:07:06 UTC 
(rev 9231)
@@ -72,7 +72,7 @@
                                ctx, client.node.chkPutScheduler, 
client.node.sskPutScheduler, priorityClass, 
                                getCHKOnly, isMetadata, client);
                if(persistenceType != PERSIST_CONNECTION && handler != null)
-                       sendPendingMessages(handler.outputHandler, true, false);
+                       sendPendingMessages(handler.outputHandler, true, false, 
false);
        }

        /**

Modified: trunk/freenet/src/freenet/node/fcp/ClientPutBase.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientPutBase.java       2006-06-16 
16:01:48 UTC (rev 9230)
+++ trunk/freenet/src/freenet/node/fcp/ClientPutBase.java       2006-06-16 
16:07:06 UTC (rev 9231)
@@ -183,7 +183,7 @@
                        client.queueClientRequestMessage(msg, verbosity);
        }

-       public void sendPendingMessages(FCPConnectionOutputHandler handler, 
boolean includePersistentRequest, boolean includeData) {
+       public void sendPendingMessages(FCPConnectionOutputHandler handler, 
boolean includePersistentRequest, boolean includeData, boolean onlyData) {
                if(persistenceType == PERSIST_CONNECTION) {
                        Logger.error(this, "WTF? 
persistenceType="+persistenceType, new Exception("error"));
                        return;

Modified: trunk/freenet/src/freenet/node/fcp/ClientRequest.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientRequest.java       2006-06-16 
16:01:48 UTC (rev 9230)
+++ trunk/freenet/src/freenet/node/fcp/ClientRequest.java       2006-06-16 
16:07:06 UTC (rev 9231)
@@ -105,7 +105,7 @@
        public abstract void onLostConnection();

        /** Send any pending messages for a persistent request e.g. after 
reconnecting */
-       public abstract void sendPendingMessages(FCPConnectionOutputHandler 
handler, boolean includePersistentRequest, boolean includeData);
+       public abstract void sendPendingMessages(FCPConnectionOutputHandler 
handler, boolean includePersistentRequest, boolean includeData, boolean 
onlyData);

        // Persistence


Modified: trunk/freenet/src/freenet/node/fcp/FCPClient.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/FCPClient.java   2006-06-16 16:01:48 UTC 
(rev 9230)
+++ trunk/freenet/src/freenet/node/fcp/FCPClient.java   2006-06-16 16:07:06 UTC 
(rev 9231)
@@ -112,7 +112,7 @@
                        reqs = completedUnackedRequests.toArray();
                }
                for(int i=0;i<reqs.length;i++)
-                       
((ClientRequest)reqs[i]).sendPendingMessages(outputHandler, true, false);
+                       
((ClientRequest)reqs[i]).sendPendingMessages(outputHandler, true, false, false);
        }

        /**
@@ -124,7 +124,7 @@
                        reqs = runningPersistentRequests.toArray();
                }
                for(int i=0;i<reqs.length;i++)
-                       
((ClientRequest)reqs[i]).sendPendingMessages(outputHandler, true, false);
+                       
((ClientRequest)reqs[i]).sendPendingMessages(outputHandler, true, false, false);
        }

        public void register(ClientRequest cg) throws 
IdentifierCollisionException {

Modified: trunk/freenet/src/freenet/node/fcp/GetRequestStatusMessage.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/GetRequestStatusMessage.java     
2006-06-16 16:01:48 UTC (rev 9230)
+++ trunk/freenet/src/freenet/node/fcp/GetRequestStatusMessage.java     
2006-06-16 16:07:06 UTC (rev 9231)
@@ -8,11 +8,13 @@

        final String identifier;
        final boolean global;
+       final boolean onlyData;
        final static String name = "GetRequestStatus";

        public GetRequestStatusMessage(SimpleFieldSet fs) {
                this.identifier = fs.get("Identifier");
                this.global = Fields.stringToBool(fs.get("Global"), false);
+               this.onlyData = Fields.stringToBool(fs.get("OnlyData"), false);
        }

        public SimpleFieldSet getFieldSet() {
@@ -37,7 +39,7 @@
                        ProtocolErrorMessage msg = new 
ProtocolErrorMessage(ProtocolErrorMessage.NO_SUCH_IDENTIFIER, false, null, 
identifier);
                        handler.outputHandler.queue(msg);
                } else {
-                       req.sendPendingMessages(handler.outputHandler, true, 
true);
+                       req.sendPendingMessages(handler.outputHandler, true, 
true, onlyData);
                }
        }



Reply via email to