Author: toad
Date: 2007-12-01 17:00:15 +0000 (Sat, 01 Dec 2007)
New Revision: 16188

Modified:
   trunk/freenet/src/freenet/node/OpennetManager.java
Log:
Add sendAnnouncementRequest() method

Modified: trunk/freenet/src/freenet/node/OpennetManager.java
===================================================================
--- trunk/freenet/src/freenet/node/OpennetManager.java  2007-12-01 16:57:29 UTC 
(rev 16187)
+++ trunk/freenet/src/freenet/node/OpennetManager.java  2007-12-01 17:00:15 UTC 
(rev 16188)
@@ -503,6 +503,21 @@
                }
        }

+       public void sendAnnouncementRequest(long uid, PeerNode peer, byte[] 
noderef, ByteCounter ctr, 
+                       double target, short htl, double nearestLocSoFar) 
throws NotConnectedException {
+               byte[] padded = new byte[PADDED_NODEREF_SIZE];
+               if(noderef.length > padded.length) {
+                       Logger.error(this, "Noderef too big: "+noderef.length+" 
bytes");
+                       return;
+               }
+               System.arraycopy(noderef, 0, padded, 0, noderef.length);
+               long xferUID = node.random.nextLong();
+               Message msg = DMT.createFNPOpennetAnnounceRequest(uid, xferUID, 
noderef.length, 
+                               padded.length, target, htl, nearestLocSoFar);
+               peer.sendAsync(msg, null, 0, ctr);
+               innerSendOpennetRef(xferUID, padded, peer);
+       }
+       
        /**
         * Wait for an opennet noderef.
         * @param isReply If true, wait for an FNPOpennetConnectReply[New], if 
false wait for an FNPOpennetConnectDestination[New].


Reply via email to