That is exactly the reason for both: seed nodes are technically neither.
Matthew Toseland wrote:
> Is there any reason to have both isDarknet() and isOpennet()? I suppose seed
> nodes would return false for both?
>
> On Wednesday 09 January 2008 00:53, zothar at freenetproject.org wrote:
>
>> Author: zothar
>> Date: 2008-01-09 00:53:07 +0000 (Wed, 09 Jan 2008)
>> New Revision: 16974
>>
>> 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:
>> Implement isDarknet(). Move sendNodeToNodeMessage() to PeerNode and queue
>>
> on not connected only if the peer is a darknet peer.
>
>> Modified: trunk/freenet/src/freenet/node/DarknetPeerNode.java
>> ===================================================================
>> --- trunk/freenet/src/freenet/node/DarknetPeerNode.java 2008-01-09
>> 00:00:39
>>
> UTC (rev 16973)
>
>> +++ trunk/freenet/src/freenet/node/DarknetPeerNode.java 2008-01-09
>> 00:53:07
>>
> UTC (rev 16974)
>
>> @@ -1257,28 +1257,6 @@
>> }
>> }
>>
>> - public void sendNodeToNodeMessage(SimpleFieldSet fs, int n2nType,
>> boolean
>>
> includeSentTime, long now) {
>
>> - fs.put("n2nType", n2nType);
>> - if(includeSentTime) {
>> - fs.put("sentTime", now);
>> - }
>> - try {
>> - Message n2nm;
>> - n2nm = DMT.createNodeToNodeMessage(
>> - n2nType,
>> fs.toString().getBytes("UTF-8"));
>> - try {
>> - sendAsync(n2nm, null, 0, null);
>> - } catch (NotConnectedException e) {
>> - if(includeSentTime) {
>> - fs.removeValue("sentTime");
>> - }
>> - queueN2NM(fs);
>> - }
>> - } catch (UnsupportedEncodingException e) {
>> - throw new Error("Impossible: "+e, e);
>> - }
>> - }
>> -
>> public int sendFileOfferAccepted(long uid) {
>> storeOffers();
>> long now = System.currentTimeMillis();
>> @@ -1509,6 +1487,10 @@
>> return new DarknetPeerNodeStatus(this, noHeavy);
>> }
>>
>> + public boolean isDarknet() {
>> + return true;
>> + }
>> +
>> public boolean isOpennet() {
>> return false;
>> }
>>
>> Modified: trunk/freenet/src/freenet/node/OpennetPeerNode.java
>> ===================================================================
>> --- trunk/freenet/src/freenet/node/OpennetPeerNode.java 2008-01-09
>> 00:00:39
>>
> UTC (rev 16973)
>
>> +++ trunk/freenet/src/freenet/node/OpennetPeerNode.java 2008-01-09
>> 00:53:07
>>
> UTC (rev 16974)
>
>> @@ -23,6 +23,10 @@
>> return super.isRoutingCompatible();
>> }
>>
>> + public boolean isDarknet() {
>> + return false;
>> + }
>> +
>> public boolean isOpennet() {
>> return true;
>> }
>>
>> Modified: trunk/freenet/src/freenet/node/PeerNode.java
>> ===================================================================
>> --- trunk/freenet/src/freenet/node/PeerNode.java 2008-01-09 00:00:39 UTC
>>
> (rev 16973)
>
>> +++ trunk/freenet/src/freenet/node/PeerNode.java 2008-01-09 00:53:07 UTC
>>
> (rev 16974)
>
>> @@ -2367,6 +2367,8 @@
>> return fs;
>> }
>>
>> + public abstract boolean isDarknet();
>> +
>> public abstract boolean isOpennet();
>>
>> /**
>> @@ -3498,4 +3500,35 @@
>> }
>>
>> private int handshakeIPAlternator;
>> +
>> + public void sendNodeToNodeMessage(SimpleFieldSet fs, int n2nType,
>> boolean
>>
> includeSentTime, long now) {
>
>> + fs.put("n2nType", n2nType);
>> + if(includeSentTime) {
>> + fs.put("sentTime", now);
>> + }
>> + try {
>> + Message n2nm;
>> + n2nm = DMT.createNodeToNodeMessage(
>> + n2nType,
>> fs.toString().getBytes("UTF-8"));
>> + try {
>> + sendAsync(n2nm, null, 0, null);
>> + } catch (NotConnectedException e) {
>> + if(includeSentTime) {
>> + fs.removeValue("sentTime");
>> + }
>> + if(isDarknet()) {
>> + queueN2NM(fs);
>> + }
>> + }
>> + } catch (UnsupportedEncodingException e) {
>> + throw new Error("Impossible: "+e, e);
>> + }
>> + }
>> +
>> + /**
>> + * A method to be to queue an N2NM in a extra peer data file, only
>>
> implemented by DarknetPeerNode
>
>> + */
>> + public void queueN2NM(SimpleFieldSet fs) {
>> + // Do nothing in the default impl
>> + }
>> }
>>
>> Modified: trunk/freenet/src/freenet/node/SeedClientPeerNode.java
>> ===================================================================
>> --- trunk/freenet/src/freenet/node/SeedClientPeerNode.java 2008-01-09
>>
> 00:00:39 UTC (rev 16973)
>
>> +++ trunk/freenet/src/freenet/node/SeedClientPeerNode.java 2008-01-09
>>
> 00:53:07 UTC (rev 16974)
>
>> @@ -21,6 +21,10 @@
>> return new PeerNodeStatus(this, noHeavy);
>> }
>>
>> + public boolean isDarknet() {
>> + return false;
>> + }
>> +
>> public boolean isOpennet() {
>> return false; // Not exactly
>> }
>>
>> Modified: trunk/freenet/src/freenet/node/SeedServerPeerNode.java
>> ===================================================================
>> --- trunk/freenet/src/freenet/node/SeedServerPeerNode.java 2008-01-09
>>
> 00:00:39 UTC (rev 16973)
>
>> +++ trunk/freenet/src/freenet/node/SeedServerPeerNode.java 2008-01-09
>>
> 00:53:07 UTC (rev 16974)
>
>> @@ -26,6 +26,10 @@
>> return new PeerNodeStatus(this, noHeavy);
>> }
>>
>> + public boolean isDarknet() {
>> + return false;
>> + }
>> +
>> public boolean isOpennet() {
>> return false;
>> }
>>
>> _______________________________________________
>> cvs mailing list
>> cvs at freenetproject.org
>> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Devl mailing list
>> Devl at freenetproject.org
>> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl