Author: zothar
Date: 2008-01-24 00:12:10 +0000 (Thu, 24 Jan 2008)
New Revision: 17218

Modified:
   trunk/freenet/src/freenet/node/DarknetPeerNode.java
   trunk/freenet/src/freenet/node/OpennetPeerNode.java
   trunk/freenet/src/freenet/node/PeerNode.java
   trunk/freenet/src/freenet/node/SeedClientPeerNode.java
   trunk/freenet/src/freenet/node/SeedServerPeerNode.java
Log:
Factor getLocalNoderef() out into the separate PeerNode classes, adding it to 
SeedClientPeerNode and SeedServerPeerNode in the process

Modified: trunk/freenet/src/freenet/node/DarknetPeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/DarknetPeerNode.java 2008-01-24 00:01:53 UTC 
(rev 17217)
+++ trunk/freenet/src/freenet/node/DarknetPeerNode.java 2008-01-24 00:12:10 UTC 
(rev 17218)
@@ -1531,4 +1531,11 @@
                super.sendInitialMessages();
                sendConnectedDiffNoderef();
        }
+
+       /**
+        * Return the relevant local node reference related to this peer's type
+        */
+       protected SimpleFieldSet getLocalNoderef() {
+               return crypto.exportPublicFieldSet();
+       }
 }

Modified: trunk/freenet/src/freenet/node/OpennetPeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/OpennetPeerNode.java 2008-01-24 00:01:53 UTC 
(rev 17217)
+++ trunk/freenet/src/freenet/node/OpennetPeerNode.java 2008-01-24 00:12:10 UTC 
(rev 17218)
@@ -101,4 +101,11 @@
                super.sendInitialMessages();
                sendConnectedDiffNoderef();
        }
+
+       /**
+        * Return the relevant local node reference related to this peer's type
+        */
+       protected SimpleFieldSet getLocalNoderef() {
+               return crypto.exportPublicFieldSet();
+       }
 }

Modified: trunk/freenet/src/freenet/node/PeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerNode.java        2008-01-24 00:01:53 UTC 
(rev 17217)
+++ trunk/freenet/src/freenet/node/PeerNode.java        2008-01-24 00:12:10 UTC 
(rev 17218)
@@ -294,6 +294,9 @@
        /** Total number of handshake attempts (while in ListenOnly mode) to be 
in this burst */
        private int listeningHandshakeBurstSize;

+       // NodeCrypto for the relevant node reference for this peer's type 
(Darknet or Opennet at this time))
+       protected NodeCrypto crypto;
+       
        /**
         * For FNP link setup:
         *  The initiator has to ensure that nonces send back by the
@@ -334,6 +337,7 @@
                myRef = new WeakReference(this);
                this.outgoingMangler = mangler;
                this.node = node2;
+               this.crypto = crypto;
                this.peers = peers;
                this.backedOffPercent = new TimeDecayingRunningAverage(0.0, 
180000, 0.0, 1.0, node);
                version = fs.get("version");
@@ -3489,13 +3493,7 @@
         * Return the relevant local node reference related to this peer's type
         */
        protected SimpleFieldSet getLocalNoderef() {
-               if(isDarknet()) {
-                       return node.exportDarknetPublicFieldSet();
-               } else if(isOpennet()) {
-                       return node.exportOpennetPublicFieldSet();
-               }
-               // What else is there that a differential node reference would 
care about?  Add it here if needed
-               return null;
+               // Do nothing in the default impl
        }

        /**

Modified: trunk/freenet/src/freenet/node/SeedClientPeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/SeedClientPeerNode.java      2008-01-24 
00:01:53 UTC (rev 17217)
+++ trunk/freenet/src/freenet/node/SeedClientPeerNode.java      2008-01-24 
00:12:10 UTC (rev 17218)
@@ -87,4 +87,11 @@
        void startARKFetcher() {
                // Do not start an ARK fetcher.
        }
+
+       /**
+        * Return the relevant local node reference related to this peer's type
+        */
+       protected SimpleFieldSet getLocalNoderef() {
+               return crypto.exportPublicFieldSet();
+       }
 }

Modified: trunk/freenet/src/freenet/node/SeedServerPeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/SeedServerPeerNode.java      2008-01-24 
00:01:53 UTC (rev 17217)
+++ trunk/freenet/src/freenet/node/SeedServerPeerNode.java      2008-01-24 
00:12:10 UTC (rev 17218)
@@ -98,4 +98,11 @@
        protected boolean generateIdentityFromPubkey() {
                return false;
        }
+
+       /**
+        * Return the relevant local node reference related to this peer's type
+        */
+       protected SimpleFieldSet getLocalNoderef() {
+               return crypto.exportPublicFieldSet();
+       }
 }


Reply via email to