Update of /cvsroot/freenet/freenet/src/freenet/node/states/request
In directory sc8-pr-cvs1:/tmp/cvs-serv11501/src/freenet/node/states/request

Modified Files:
        InsertPending.java Pending.java RequestSendCallback.java 
        SendFinished.java 
Log Message:
6217:
Implement PeerHandler. Web interface works. FCP does not work. Probably has 
significant bugs. This is unstable after all... and others may want to look at it.


Index: InsertPending.java
===================================================================
RCS file: /cvsroot/freenet/freenet/src/freenet/node/states/request/InsertPending.java,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- InsertPending.java  18 Sep 2003 17:48:12 -0000      1.21
+++ InsertPending.java  4 Oct 2003 01:17:05 -0000       1.22
@@ -312,7 +312,7 @@
     final void queryAborted(Node n, QueryAborted qf) {
         if (lastPeer != null) {
             try {
-                n.makeConnection(lastPeer).sendMessage(qf);
+               n.sendMessage(qf, lastPeer);
             } catch (CommunicationException e) {
                 n.logger.log(this, 
                             "Failed to send QueryAborted upstream for "+
@@ -372,14 +372,9 @@
        startedSendTime = System.currentTimeMillis();
         try {
            receivedTime = -2; // receivedTime on the next message will be meaningless
+           out = n.sendMessage(dim, lastPeer);
            if(logDEBUG)
-               n.logger.log(this, "Opening connection for "+this, Logger.DEBUG);
-           ConnectionHandler ch = n.makeConnection(lastPeer);
-           if(logDEBUG) n.logger.log(this, "Opened connection for "+this+
-                                     ", sending "+dim+" on "+ch, Logger.DEBUG);
-            out = ch.sendMessage(dim);
-           if(logDEBUG)
-               n.logger.log(this, "Sent message for "+this+" on "+ch, Logger.DEBUG);
+               n.logger.log(this, "Sent message for "+this+" on "+lastPeer, 
Logger.DEBUG);
         } catch (CommunicationException e) {
             // restart right away
             scheduleRestart(n, 0);

Index: Pending.java
===================================================================
RCS file: /cvsroot/freenet/freenet/src/freenet/node/states/request/Pending.java,v
retrieving revision 1.62
retrieving revision 1.63
diff -u -r1.62 -r1.63
--- Pending.java        29 Sep 2003 23:18:08 -0000      1.62
+++ Pending.java        4 Oct 2003 01:17:06 -0000       1.63
@@ -59,7 +59,7 @@
     
     SendFinished feedbackSender = null;
     SendFinished outwardSender = null;
-    ConnectionHandler outwardConnLastUsed = null;
+    Identity outwardIdentityLastUsed = null;
     
     public String toString() {
        return super.toString()+", routedTime="+routedTime+", replyTime="+replyTime;
@@ -87,7 +87,7 @@
            replyTime = p.replyTime;
            feedbackSender = p.feedbackSender;
            outwardSender = p.outwardSender;
-           outwardConnLastUsed = p.outwardConnLastUsed;
+           outwardIdentityLastUsed = p.outwardIdentityLastUsed;
        }
        if(logDEBUG)
            Core.logger.log(this, "Created new Pending: "+this+" from "+
@@ -342,10 +342,9 @@
            n.logger.log(this, "Backtracking", Logger.DEBUG);
         try {
            Message m = new QueryRejected(id, hopsToLive, "Looped request", 
r.otherFields);
-           ConnectionHandler ch = n.makeConnection(r.getSource());
-           RequestSendCallback cb = new RequestSendCallback("QueryRejected (looped 
request)"+
-                                                            " for "+this, n, this);
-            ch.sendMessageAsync(m,cb);
+           RequestSendCallback cb = new RequestSendCallback("QueryRejected (looped "+
+                                                            "request) for "+this, n, 
this);
+           n.sendMessageAsync(m, r.getSource(), cb);
         } catch (CommunicationException e) {
             n.logger.log(this, "Failed to send backtrack reply: "+e+" for "+this,
                         Logger.MINOR);
@@ -585,22 +584,18 @@
                    receivedTime = -2; // make sure we aren't called twice
                 }
                 attemptCount++;
-               outwardConnLastUsed = 
-                   n.makeConnection(addr, n.routeConnectTimeout);
-               routes.routeConnected(outwardConnLastUsed.isCached());
+               
+               outwardIdentityLastUsed = nr.getIdentity();
                outwardSender = new SendFinished(n, id, r.toString());
                if(logDEBUG) Core.logger.log(this, "Sending message "+r+" on "
-                                            +outwardConnLastUsed+" for "+
-                                            this+": "+outwardSender,
+                                            +nr+" for "+this+": "+outwardSender,
                                             Logger.DEBUG);
-               
-               outwardConnLastUsed.sendMessageAsync(r, outwardSender);
+               n.sendMessageAsync(r, nr, outwardSender);
                
                // We only wait 1 hop time for accepted. Sending should take much less 
time.
                n.schedule(Core.hopTime(1), outwardSender);
                if(logDEBUG) Core.logger.log(this, "Sent message "+r+" on "+
-                                            outwardConnLastUsed+" for "+this,
-                                            Logger.DEBUG);
+                                            nr+" for "+this, Logger.DEBUG);
                 break;
             } catch (CommunicationException e) {
                 ++unreachable;
@@ -668,8 +663,8 @@
            if(!sf.getSuccess()) {
                Exception e = sf.failCause();
                if(e == null) {
-                   outwardConnLastUsed.unsendMessageAsync(sf);
-                   outwardConnLastUsed = null;
+                   n.unsendMessage(outwardIdentityLastUsed, sf);
+                   outwardIdentityLastUsed = null;
                    // Timed out?
                    routes.searchFailed(System.currentTimeMillis()-sf.startTime());
                    ++restarted; // it did time out

Index: RequestSendCallback.java
===================================================================
RCS file: 
/cvsroot/freenet/freenet/src/freenet/node/states/request/RequestSendCallback.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- RequestSendCallback.java    18 Sep 2003 17:48:12 -0000      1.4
+++ RequestSendCallback.java    4 Oct 2003 01:17:06 -0000       1.5
@@ -5,6 +5,7 @@
 import freenet.node.Node;
 import freenet.node.State;
 import freenet.CommunicationException;
+import freenet.TrailerWriter;
 import java.io.OutputStream;
 
 public class RequestSendCallback implements MessageSendCallback {
@@ -17,7 +18,7 @@
        this.parent = parent;
     }
     
-    public void setTrailerStream(OutputStream os) { };
+    public void setTrailerWriter(TrailerWriter tw) { };
     
     public void succeeded() {
        if(n.logger.shouldLog(Logger.DEBUG,this))

Index: SendFinished.java
===================================================================
RCS file: /cvsroot/freenet/freenet/src/freenet/node/states/request/SendFinished.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- SendFinished.java   18 Sep 2003 17:48:12 -0000      1.7
+++ SendFinished.java   4 Oct 2003 01:17:06 -0000       1.8
@@ -6,6 +6,7 @@
 import freenet.node.Node;
 import freenet.node.State;
 import freenet.CommunicationException;
+import freenet.TrailerWriter;
 import java.io.OutputStream;
 
 /** Message Object for async send callback 
@@ -18,14 +19,14 @@
     private boolean succeeded;
     final Node n;
     final String logMessage;
-    private OutputStream os;
+    private TrailerWriter tw;
     
-    public void setTrailerStream(OutputStream os) {
-       this.os = os;
+    public void setTrailerWriter(TrailerWriter tw) {
+       this.tw = tw;
     }
     
-    public OutputStream getOutputStream() {
-       return os;
+    public TrailerWriter getTrailerWriter() {
+       return tw;
     }
     
     public SendFinished(Node n, long id, String logMessage) {

_______________________________________________
cvs mailing list
[EMAIL PROTECTED]
http://dodo.freenetproject.org/cgi-bin/mailman/listinfo/cvs

Reply via email to