net.i2p.router.networkdb.kademlia
Class IterativeLookupSelector

java.lang.Object
  extended by net.i2p.router.networkdb.kademlia.IterativeLookupSelector
All Implemented Interfaces:
MessageSelector

 class IterativeLookupSelector
extends Object
implements MessageSelector

Slightly modified version of FloodOnlyLookupSelector. Always follows the DSRM entries.

Since:
0.8.9

Constructor Summary
IterativeLookupSelector(RouterContext ctx, IterativeSearchJob search)
           
 
Method Summary
 boolean continueMatching()
          Returns true if the selector should still keep searching for further matches.
 long getExpiration()
          Returns the # of milliseconds since the epoch after which this selector should stop searching for matches.
 boolean isMatch(I2NPMessage message)
          This only returns true for DSMs, not for DSRMs.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IterativeLookupSelector

public IterativeLookupSelector(RouterContext ctx,
                               IterativeSearchJob search)
Method Detail

continueMatching

public boolean continueMatching()
Description copied from interface: MessageSelector
Returns true if the selector should still keep searching for further matches. This is called only if isMatch() returns true. If this returns true, isMatch() will not be called again.

Specified by:
continueMatching in interface MessageSelector

getExpiration

public long getExpiration()
Description copied from interface: MessageSelector
Returns the # of milliseconds since the epoch after which this selector should stop searching for matches. At some time after expiration, if continueMatching() has not returned false, the job specified by OutNetMessage.getOnFailedReplyJob() will be run for every OutNetMessage associated with this selector (by OutboundMessageRegistry).

Specified by:
getExpiration in interface MessageSelector

isMatch

public boolean isMatch(I2NPMessage message)
This only returns true for DSMs, not for DSRMs.

Specified by:
isMatch in interface MessageSelector