Class RandomIfOldTrimmer<T extends SimpleDataStructure>

java.lang.Object
net.i2p.kademlia.RandomTrimmer<T>
net.i2p.kademlia.RandomIfOldTrimmer<T>
All Implemented Interfaces:
KBucketTrimmer<T>

public class RandomIfOldTrimmer<T extends SimpleDataStructure> extends RandomTrimmer<T>
Removes a random element, but only if the bucket hasn't changed in 5 minutes.
Since:
0.9.2 in i2psnark, moved to core in 0.9.10
  • Constructor Details

    • RandomIfOldTrimmer

      public RandomIfOldTrimmer(I2PAppContext ctx, int max)
  • Method Details

    • trim

      public boolean trim(KBucket<T> kbucket, T toAdd)
      Description copied from interface: KBucketTrimmer
      Called from add() just before adding the entry. You may call getEntries() and/or remove() from here. Do NOT call add(). To always discard a newer entry, always return false.
      Specified by:
      trim in interface KBucketTrimmer<T extends SimpleDataStructure>
      Overrides:
      trim in class RandomTrimmer<T extends SimpleDataStructure>
      Parameters:
      kbucket - the kbucket that is now too big
      Returns:
      true to actually add the entry.