Author: toad
Date: 2007-11-30 20:33:08 +0000 (Fri, 30 Nov 2007)
New Revision: 16150

Modified:
   trunk/freenet/src/freenet/io/comm/DMT.java
Log:
Announcement messages.
Only two are needed afaics.

Modified: trunk/freenet/src/freenet/io/comm/DMT.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/DMT.java  2007-11-30 20:29:55 UTC (rev 
16149)
+++ trunk/freenet/src/freenet/io/comm/DMT.java  2007-11-30 20:33:08 UTC (rev 
16150)
@@ -776,6 +776,52 @@
                return msg;
        }

+       // Opennet announcement
+
+       /**
+        * Announcement request. Noderef is attached, will be transferred 
before anything else is done.
+        */
+       public static MessageType FNPOpennetAnnounceRequest = new 
MessageType("FNPOpennetAnnounceRequest") {{
+               addField(UID, Long.class);
+               addField(TRANSFER_UID, Long.class);
+               addField(NODEREF_LENGTH, Integer.class);
+               addField(PADDED_LENGTH, Integer.class);
+               addField(HTL, Short.class);
+               addField(NEAREST_LOCATION, Double.class);
+       }};
+
+       public static Message createFNPOpennetAnnounceRequest(long uid, long 
transferUID, int noderefLength, int paddedLength, short htl, double 
nearestLocSoFar) {
+               Message msg = new Message(FNPOpennetAnnounceRequest);
+               msg.set(UID, uid);
+               msg.set(TRANSFER_UID, transferUID);
+               msg.set(NODEREF_LENGTH, noderefLength);
+               msg.set(PADDED_LENGTH, paddedLength);
+               msg.set(HTL, htl);
+               msg.set(NEAREST_LOCATION, nearestLocSoFar);
+               return msg;
+       }
+       
+       /**
+        * Announcement reply. Noderef is attached, will be transferred, both 
nodes add the other. A single
+        * request will result in many reply's. When the announcement is done, 
we return a DataNotFound; if
+        * we run into a dead-end, we return a RejectedLoop; if we can't accept 
it, RejectedOverload.
+        */
+       public static MessageType FNPOpennetAnnounceReply = new 
MessageType("FNPOpennetAnnounceReply") {{
+               addField(UID, Long.class);
+               addField(TRANSFER_UID, Long.class);
+               addField(NODEREF_LENGTH, Integer.class);
+               addField(PADDED_LENGTH, Integer.class);
+       }};
+       
+       public static Message createFNPOpennetAnnounceReply(long uid, long 
transferUID, int noderefLength, int paddedLength) {
+               Message msg = new Message(FNPOpennetAnnounceReply);
+               msg.set(UID, uid);
+               msg.set(TRANSFER_UID, transferUID);
+               msg.set(NODEREF_LENGTH, noderefLength);
+               msg.set(PADDED_LENGTH, paddedLength);
+               return msg;
+       }
+       
        // Key offers (ULPRs)

        public static MessageType FNPOfferKey = new MessageType("FNPOfferKey") 
{{


Reply via email to