Author: toad
Date: 2006-08-05 20:31:16 +0000 (Sat, 05 Aug 2006)
New Revision: 9914

Added:
   trunk/freenet/src/freenet/node/RequestScheduler.java
   trunk/freenet/src/freenet/node/SendableGet.java
   trunk/freenet/src/freenet/node/SendableInsert.java
   trunk/freenet/src/freenet/node/SendableRequest.java
   trunk/freenet/src/freenet/node/SimpleSendableInsert.java
Removed:
   trunk/freenet/src/freenet/client/async/RequestScheduler.java
   trunk/freenet/src/freenet/client/async/SendableGet.java
   trunk/freenet/src/freenet/client/async/SendableInsert.java
   trunk/freenet/src/freenet/client/async/SendableRequest.java
   trunk/freenet/src/freenet/client/async/SimpleSendableInsert.java
Modified:
   trunk/freenet/src/freenet/client/async/BaseSingleFileFetcher.java
   trunk/freenet/src/freenet/client/async/ClientRequestScheduler.java
   trunk/freenet/src/freenet/client/async/SingleBlockInserter.java
   trunk/freenet/src/freenet/node/Node.java
   trunk/freenet/src/freenet/node/RequestStarter.java
Log:
Move some Sendable* and RequestScheduler from freenet.client.async to 
freenet.node; they're not really part of the client layer, they're more the 
interface to it from the node layer.

Modified: trunk/freenet/src/freenet/client/async/BaseSingleFileFetcher.java
===================================================================
--- trunk/freenet/src/freenet/client/async/BaseSingleFileFetcher.java   
2006-08-05 20:02:30 UTC (rev 9913)
+++ trunk/freenet/src/freenet/client/async/BaseSingleFileFetcher.java   
2006-08-05 20:31:16 UTC (rev 9914)
@@ -7,6 +7,7 @@
 import freenet.keys.ClientSSK;
 import freenet.node.LowLevelGetException;
 import freenet.node.Node;
+import freenet.node.SendableGet;
 import freenet.support.Logger;

 public abstract class BaseSingleFileFetcher implements SendableGet {

Modified: trunk/freenet/src/freenet/client/async/ClientRequestScheduler.java
===================================================================
--- trunk/freenet/src/freenet/client/async/ClientRequestScheduler.java  
2006-08-05 20:02:30 UTC (rev 9913)
+++ trunk/freenet/src/freenet/client/async/ClientRequestScheduler.java  
2006-08-05 20:31:16 UTC (rev 9914)
@@ -12,7 +12,10 @@
 import freenet.keys.KeyVerifyException;
 import freenet.node.LowLevelGetException;
 import freenet.node.Node;
+import freenet.node.RequestScheduler;
 import freenet.node.RequestStarter;
+import freenet.node.SendableGet;
+import freenet.node.SendableRequest;
 import freenet.support.Logger;
 import freenet.support.SectoredRandomGrabArrayWithClient;
 import freenet.support.SectoredRandomGrabArrayWithInt;

Deleted: trunk/freenet/src/freenet/client/async/RequestScheduler.java
===================================================================
--- trunk/freenet/src/freenet/client/async/RequestScheduler.java        
2006-08-05 20:02:30 UTC (rev 9913)
+++ trunk/freenet/src/freenet/client/async/RequestScheduler.java        
2006-08-05 20:31:16 UTC (rev 9914)
@@ -1,7 +0,0 @@
-package freenet.client.async;
-
-public interface RequestScheduler {
-
-       public SendableRequest removeFirst();
-       
-}

Deleted: trunk/freenet/src/freenet/client/async/SendableGet.java
===================================================================
--- trunk/freenet/src/freenet/client/async/SendableGet.java     2006-08-05 
20:02:30 UTC (rev 9913)
+++ trunk/freenet/src/freenet/client/async/SendableGet.java     2006-08-05 
20:31:16 UTC (rev 9914)
@@ -1,25 +0,0 @@
-package freenet.client.async;
-
-import freenet.keys.ClientKey;
-import freenet.keys.ClientKeyBlock;
-import freenet.node.LowLevelGetException;
-
-/**
- * A low-level key fetch which can be sent immediately. @see SendableRequest
- */
-public interface SendableGet extends SendableRequest {
-
-       public ClientKey getKey();
-       
-       /** Called when/if the low-level request succeeds. */
-       public void onSuccess(ClientKeyBlock block, boolean fromStore);
-       
-       /** Called when/if the low-level request fails. */
-       public void onFailure(LowLevelGetException e);
-       
-       /** Should the request ignore the datastore? */
-       public boolean ignoreStore();
-
-       /** If true, don't cache local requests */
-       public boolean dontCache();
-}

Deleted: trunk/freenet/src/freenet/client/async/SendableInsert.java
===================================================================
--- trunk/freenet/src/freenet/client/async/SendableInsert.java  2006-08-05 
20:02:30 UTC (rev 9913)
+++ trunk/freenet/src/freenet/client/async/SendableInsert.java  2006-08-05 
20:31:16 UTC (rev 9914)
@@ -1,20 +0,0 @@
-package freenet.client.async;
-
-import freenet.keys.ClientKeyBlock;
-import freenet.node.LowLevelPutException;
-
-/**
- * Callback interface for a low level insert, which is immediately sendable. 
These
- * should be registered on the ClientRequestScheduler when we want to send 
them. It will
- * then, when it is time to send, create a thread, send the request, and call 
the 
- * callback below.
- */
-public interface SendableInsert extends SendableRequest {
-
-       /** Called when we successfully insert the data */
-       public void onSuccess();
-       
-       /** Called when we don't! */
-       public void onFailure(LowLevelPutException e);
-
-}

Deleted: trunk/freenet/src/freenet/client/async/SendableRequest.java
===================================================================
--- trunk/freenet/src/freenet/client/async/SendableRequest.java 2006-08-05 
20:02:30 UTC (rev 9913)
+++ trunk/freenet/src/freenet/client/async/SendableRequest.java 2006-08-05 
20:31:16 UTC (rev 9914)
@@ -1,25 +0,0 @@
-package freenet.client.async;
-
-import freenet.node.Node;
-import freenet.support.RandomGrabArrayItem;
-
-/**
- * A low-level request which can be sent immediately. These are registered
- * on the ClientRequestScheduler.
- */
-public interface SendableRequest extends RandomGrabArrayItem {
-       
-       public short getPriorityClass();
-       
-       public int getRetryCount();
-       
-       /** ONLY called by RequestStarter */
-       public void send(Node node);
-       
-       /** Get client context object */
-       public Object getClient();
-       
-       /** Get the ClientRequest */
-       public ClientRequester getClientRequest();
-
-}

Deleted: trunk/freenet/src/freenet/client/async/SimpleSendableInsert.java
===================================================================
--- trunk/freenet/src/freenet/client/async/SimpleSendableInsert.java    
2006-08-05 20:02:30 UTC (rev 9913)
+++ trunk/freenet/src/freenet/client/async/SimpleSendableInsert.java    
2006-08-05 20:31:16 UTC (rev 9914)
@@ -1,72 +0,0 @@
-package freenet.client.async;
-
-import freenet.keys.ClientKeyBlock;
-import freenet.keys.KeyBlock;
-import freenet.node.LowLevelPutException;
-import freenet.node.Node;
-import freenet.support.Logger;
-
-/**
- * Simple SendableInsert implementation. No feedback, no retries, just insert 
the
- * block. Not designed for use by the client layer. Used by the node layer for 
the
- * 1 in every 200 successful requests which starts an insert.
- */
-public class SimpleSendableInsert implements SendableInsert {
-
-       public final Node node;
-       public final KeyBlock block;
-       public final short prioClass;
-       private boolean finished;
-       
-       public SimpleSendableInsert(Node node, KeyBlock block, short prioClass) 
{
-               this.node = node;
-               this.block = block;
-               this.prioClass = prioClass;
-       }
-       
-       public void onSuccess() {
-               // Yay!
-               Logger.minor(this, "Finished insert of "+block);
-       }
-
-       public void onFailure(LowLevelPutException e) {
-               Logger.minor(this, "Failed insert of "+block+": "+e);
-       }
-
-       public short getPriorityClass() {
-               return prioClass;
-       }
-
-       public int getRetryCount() {
-               // No retries.
-               return 0;
-       }
-
-       public void send(Node node) {
-               try {
-                       Logger.minor(this, "Starting request: "+this);
-                       node.realPut(block, false);
-               } catch (LowLevelPutException e) {
-                       onFailure(e);
-                       Logger.minor(this, "Request failed: "+this+" for "+e);
-                       return;
-               } finally {
-                       finished = true;
-               }
-               Logger.minor(this, "Request succeeded: "+this);
-               onSuccess();
-       }
-
-       public Object getClient() {
-               return node;
-       }
-
-       public ClientRequester getClientRequest() {
-               return null;
-       }
-
-       public boolean isFinished() {
-               return finished;
-       }
-
-}

Modified: trunk/freenet/src/freenet/client/async/SingleBlockInserter.java
===================================================================
--- trunk/freenet/src/freenet/client/async/SingleBlockInserter.java     
2006-08-05 20:02:30 UTC (rev 9913)
+++ trunk/freenet/src/freenet/client/async/SingleBlockInserter.java     
2006-08-05 20:31:16 UTC (rev 9914)
@@ -16,6 +16,7 @@
 import freenet.keys.SSKEncodeException;
 import freenet.node.LowLevelPutException;
 import freenet.node.Node;
+import freenet.node.SendableInsert;
 import freenet.support.Logger;
 import freenet.support.SimpleFieldSet;
 import freenet.support.io.Bucket;

Modified: trunk/freenet/src/freenet/node/Node.java
===================================================================
--- trunk/freenet/src/freenet/node/Node.java    2006-08-05 20:02:30 UTC (rev 
9913)
+++ trunk/freenet/src/freenet/node/Node.java    2006-08-05 20:31:16 UTC (rev 
9914)
@@ -48,7 +48,6 @@
 import freenet.client.async.ClientRequestScheduler;
 import freenet.client.async.HealingQueue;
 import freenet.client.async.SimpleHealingQueue;
-import freenet.client.async.SimpleSendableInsert;
 import freenet.client.async.USKManager;
 import freenet.client.events.SimpleEventProducer;
 import freenet.clients.http.BookmarkManager;

Copied: trunk/freenet/src/freenet/node/RequestScheduler.java (from rev 9906, 
trunk/freenet/src/freenet/client/async/RequestScheduler.java)
===================================================================
--- trunk/freenet/src/freenet/client/async/RequestScheduler.java        
2006-08-05 16:00:37 UTC (rev 9906)
+++ trunk/freenet/src/freenet/node/RequestScheduler.java        2006-08-05 
20:31:16 UTC (rev 9914)
@@ -0,0 +1,7 @@
+package freenet.node;
+
+public interface RequestScheduler {
+
+       public SendableRequest removeFirst();
+       
+}

Modified: trunk/freenet/src/freenet/node/RequestStarter.java
===================================================================
--- trunk/freenet/src/freenet/node/RequestStarter.java  2006-08-05 20:02:30 UTC 
(rev 9913)
+++ trunk/freenet/src/freenet/node/RequestStarter.java  2006-08-05 20:31:16 UTC 
(rev 9914)
@@ -1,7 +1,5 @@
 package freenet.node;

-import freenet.client.async.RequestScheduler;
-import freenet.client.async.SendableRequest;
 import freenet.support.Logger;
 import freenet.support.TokenBucket;
 import freenet.support.math.RunningAverage;

Copied: trunk/freenet/src/freenet/node/SendableGet.java (from rev 9906, 
trunk/freenet/src/freenet/client/async/SendableGet.java)
===================================================================
--- trunk/freenet/src/freenet/client/async/SendableGet.java     2006-08-05 
16:00:37 UTC (rev 9906)
+++ trunk/freenet/src/freenet/node/SendableGet.java     2006-08-05 20:31:16 UTC 
(rev 9914)
@@ -0,0 +1,24 @@
+package freenet.node;
+
+import freenet.keys.ClientKey;
+import freenet.keys.ClientKeyBlock;
+
+/**
+ * A low-level key fetch which can be sent immediately. @see SendableRequest
+ */
+public interface SendableGet extends SendableRequest {
+
+       public ClientKey getKey();
+       
+       /** Called when/if the low-level request succeeds. */
+       public void onSuccess(ClientKeyBlock block, boolean fromStore);
+       
+       /** Called when/if the low-level request fails. */
+       public void onFailure(LowLevelGetException e);
+       
+       /** Should the request ignore the datastore? */
+       public boolean ignoreStore();
+
+       /** If true, don't cache local requests */
+       public boolean dontCache();
+}

Copied: trunk/freenet/src/freenet/node/SendableInsert.java (from rev 9906, 
trunk/freenet/src/freenet/client/async/SendableInsert.java)
===================================================================
--- trunk/freenet/src/freenet/client/async/SendableInsert.java  2006-08-05 
16:00:37 UTC (rev 9906)
+++ trunk/freenet/src/freenet/node/SendableInsert.java  2006-08-05 20:31:16 UTC 
(rev 9914)
@@ -0,0 +1,19 @@
+package freenet.node;
+
+import freenet.keys.ClientKeyBlock;
+
+/**
+ * Callback interface for a low level insert, which is immediately sendable. 
These
+ * should be registered on the ClientRequestScheduler when we want to send 
them. It will
+ * then, when it is time to send, create a thread, send the request, and call 
the 
+ * callback below.
+ */
+public interface SendableInsert extends SendableRequest {
+
+       /** Called when we successfully insert the data */
+       public void onSuccess();
+       
+       /** Called when we don't! */
+       public void onFailure(LowLevelPutException e);
+
+}

Copied: trunk/freenet/src/freenet/node/SendableRequest.java (from rev 9906, 
trunk/freenet/src/freenet/client/async/SendableRequest.java)
===================================================================
--- trunk/freenet/src/freenet/client/async/SendableRequest.java 2006-08-05 
16:00:37 UTC (rev 9906)
+++ trunk/freenet/src/freenet/node/SendableRequest.java 2006-08-05 20:31:16 UTC 
(rev 9914)
@@ -0,0 +1,25 @@
+package freenet.node;
+
+import freenet.client.async.ClientRequester;
+import freenet.support.RandomGrabArrayItem;
+
+/**
+ * A low-level request which can be sent immediately. These are registered
+ * on the ClientRequestScheduler.
+ */
+public interface SendableRequest extends RandomGrabArrayItem {
+       
+       public short getPriorityClass();
+       
+       public int getRetryCount();
+       
+       /** ONLY called by RequestStarter */
+       public void send(Node node);
+       
+       /** Get client context object */
+       public Object getClient();
+       
+       /** Get the ClientRequest */
+       public ClientRequester getClientRequest();
+
+}

Copied: trunk/freenet/src/freenet/node/SimpleSendableInsert.java (from rev 
9906, trunk/freenet/src/freenet/client/async/SimpleSendableInsert.java)
===================================================================
--- trunk/freenet/src/freenet/client/async/SimpleSendableInsert.java    
2006-08-05 16:00:37 UTC (rev 9906)
+++ trunk/freenet/src/freenet/node/SimpleSendableInsert.java    2006-08-05 
20:31:16 UTC (rev 9914)
@@ -0,0 +1,71 @@
+package freenet.node;
+
+import freenet.client.async.ClientRequester;
+import freenet.keys.ClientKeyBlock;
+import freenet.keys.KeyBlock;
+import freenet.support.Logger;
+
+/**
+ * Simple SendableInsert implementation. No feedback, no retries, just insert 
the
+ * block. Not designed for use by the client layer. Used by the node layer for 
the
+ * 1 in every 200 successful requests which starts an insert.
+ */
+public class SimpleSendableInsert implements SendableInsert {
+
+       public final Node node;
+       public final KeyBlock block;
+       public final short prioClass;
+       private boolean finished;
+       
+       public SimpleSendableInsert(Node node, KeyBlock block, short prioClass) 
{
+               this.node = node;
+               this.block = block;
+               this.prioClass = prioClass;
+       }
+       
+       public void onSuccess() {
+               // Yay!
+               Logger.minor(this, "Finished insert of "+block);
+       }
+
+       public void onFailure(LowLevelPutException e) {
+               Logger.minor(this, "Failed insert of "+block+": "+e);
+       }
+
+       public short getPriorityClass() {
+               return prioClass;
+       }
+
+       public int getRetryCount() {
+               // No retries.
+               return 0;
+       }
+
+       public void send(Node node) {
+               try {
+                       Logger.minor(this, "Starting request: "+this);
+                       node.realPut(block, false);
+               } catch (LowLevelPutException e) {
+                       onFailure(e);
+                       Logger.minor(this, "Request failed: "+this+" for "+e);
+                       return;
+               } finally {
+                       finished = true;
+               }
+               Logger.minor(this, "Request succeeded: "+this);
+               onSuccess();
+       }
+
+       public Object getClient() {
+               return node;
+       }
+
+       public ClientRequester getClientRequest() {
+               return null;
+       }
+
+       public boolean isFinished() {
+               return finished;
+       }
+
+}


Reply via email to