Author: toad
Date: 2007-06-28 18:43:57 +0000 (Thu, 28 Jun 2007)
New Revision: 13811

Modified:
   trunk/freenet/src/freenet/node/PeerManager.java
   trunk/freenet/src/freenet/node/PeerNode.java
   trunk/freenet/src/freenet/node/TextModeClientInterface.java
   trunk/freenet/src/freenet/node/fcp/AddPeer.java
Log:
Use DarknetPeerNode's not PeerNode's!

Modified: trunk/freenet/src/freenet/node/PeerManager.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerManager.java     2007-06-28 18:29:08 UTC 
(rev 13810)
+++ trunk/freenet/src/freenet/node/PeerManager.java     2007-06-28 18:43:57 UTC 
(rev 13811)
@@ -150,7 +150,7 @@
                 fs = new SimpleFieldSet(br, false, true);
                 PeerNode pn;
                 try {
-                    pn = new PeerNode(fs, node, this, true, mangler);
+                    pn = PeerNode.create(fs, node, this, true, mangler);
                 } catch (FSParseException e2) {
                     Logger.error(this, "Could not parse peer: "+e2+ '\n' 
+fs.toString(),e2);
                     continue;
@@ -328,7 +328,7 @@
      * Connect to a node provided the fieldset representing it.
      */
     public void connect(SimpleFieldSet noderef, OutgoingPacketMangler mangler) 
throws FSParseException, PeerParseException, 
ReferenceSignatureVerificationException {
-        PeerNode pn = new PeerNode(noderef, node, this, false, mangler);
+        PeerNode pn = new DarknetPeerNode(noderef, node, this, false, mangler);
         for(int i=0;i<myPeers.length;i++) {
             if(Arrays.equals(myPeers[i].identity, pn.identity)) return;
         }

Modified: trunk/freenet/src/freenet/node/PeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerNode.java        2007-06-28 18:29:08 UTC 
(rev 13810)
+++ trunk/freenet/src/freenet/node/PeerNode.java        2007-06-28 18:43:57 UTC 
(rev 13811)
@@ -71,7 +71,7 @@
  * code into KeyTracker, which handles all communications to and
  * from this peer over the duration of a single key.
  */
-public class PeerNode implements PeerContext, USKRetrieverCallback {
+public abstract class PeerNode implements PeerContext, USKRetrieverCallback {

     /** Set to true when we complete a handshake. */
     private boolean completedHandshake;
@@ -2645,4 +2645,11 @@
        public boolean isIgnoreSource() {
                return false;
        }
+
+       /**
+        * Create a DarknetPeerNode or an OpennetPeerNode as appropriate
+        */
+       public static PeerNode create(SimpleFieldSet fs, Node node2, 
PeerManager manager, boolean b, OutgoingPacketMangler mangler) throws 
FSParseException, PeerParseException, ReferenceSignatureVerificationException {
+               return new DarknetPeerNode(fs, node2, manager, b, mangler);
+       }
 }

Modified: trunk/freenet/src/freenet/node/TextModeClientInterface.java
===================================================================
--- trunk/freenet/src/freenet/node/TextModeClientInterface.java 2007-06-28 
18:29:08 UTC (rev 13810)
+++ trunk/freenet/src/freenet/node/TextModeClientInterface.java 2007-06-28 
18:43:57 UTC (rev 13811)
@@ -1016,7 +1016,7 @@
         }
         PeerNode pn;
         try {
-            pn = new PeerNode(fs, n, n.peers, false, n.packetMangler);
+            pn = new DarknetPeerNode(fs, n, n.peers, false, n.packetMangler);
         } catch (FSParseException e1) {
             System.err.println("Did not parse: "+e1);
             Logger.error(this, "Did not parse: "+e1, e1);

Modified: trunk/freenet/src/freenet/node/fcp/AddPeer.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/AddPeer.java     2007-06-28 18:29:08 UTC 
(rev 13810)
+++ trunk/freenet/src/freenet/node/fcp/AddPeer.java     2007-06-28 18:43:57 UTC 
(rev 13811)
@@ -15,6 +15,7 @@

 import freenet.io.comm.PeerParseException;
 import freenet.io.comm.ReferenceSignatureVerificationException;
+import freenet.node.DarknetPeerNode;
 import freenet.node.FSParseException;
 import freenet.node.Node;
 import freenet.node.PeerNode;
@@ -111,7 +112,7 @@
                fs.setEndMarker( "End" );
                PeerNode pn;
                try {
-                       pn = new PeerNode(fs, node, node.peers, false, 
node.packetMangler);
+                       pn = new DarknetPeerNode(fs, node, node.peers, false, 
node.packetMangler);
                } catch (FSParseException e) {
                        throw new 
MessageInvalidException(ProtocolErrorMessage.REF_PARSE_ERROR, "Error parsing 
ref: "+e.getMessage(), null, false);
                } catch (PeerParseException e) {


Reply via email to