Package com.biglybt.core.util.bloom.impl
Class BloomFilterImpl
- java.lang.Object
-
- com.biglybt.core.util.bloom.impl.BloomFilterImpl
-
- All Implemented Interfaces:
BloomFilter
- Direct Known Subclasses:
BloomFilterAddOnly
,BloomFilterAddRemove4Bit
,BloomFilterAddRemove8Bit
public abstract class BloomFilterImpl extends java.lang.Object implements BloomFilter
-
-
Field Summary
Fields Modifier and Type Field Description private static int
a2
private static int
a3
private static int
a4
private static int
b2
private static int
b3
private static int
b4
private int
entry_count
private static int
HASH_NUM
private int
max_entries
protected static java.lang.String
MY_PACKAGE
private long
start_time
-
Constructor Summary
Constructors Constructor Description BloomFilterImpl(int _max_entries)
BloomFilterImpl(java.util.Map<java.lang.String,java.lang.Object> x)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description int
add(byte[] value)
protected int
add(int value)
protected int
bytesToInteger(byte[] data)
void
clear()
boolean
contains(byte[] value)
protected boolean
contains(int value)
int
count(byte[] value)
protected int
count(int value)
protected abstract int
decValue(int index)
static BloomFilter
deserialiseFromMap(java.util.Map<java.lang.String,java.lang.Object> map)
int
getEntryCount()
Returns number of unique entriesprotected int
getHash(int function, int value)
protected int
getMaxEntries()
protected static byte[]
getSerialization(byte[] address, int port)
int
getSize()
Returns overall capacitylong
getStartTimeMono()
java.lang.String
getString()
protected abstract int
getValue(int index)
protected abstract int
incValue(int index)
static void
main(java.lang.String[] args)
int
remove(byte[] value)
protected int
remove(int value)
java.util.Map<java.lang.String,java.lang.Object>
serialiseToMap()
protected void
serialiseToMap(java.util.Map<java.lang.String,java.lang.Object> x)
protected abstract int
trimValue(int value)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.biglybt.core.util.bloom.BloomFilter
getReplica
-
-
-
-
Field Detail
-
MY_PACKAGE
protected static final java.lang.String MY_PACKAGE
- See Also:
- Constant Field Values
-
HASH_NUM
private static final int HASH_NUM
- See Also:
- Constant Field Values
-
a2
private static final int a2
- See Also:
- Constant Field Values
-
a3
private static final int a3
- See Also:
- Constant Field Values
-
a4
private static final int a4
- See Also:
- Constant Field Values
-
b2
private static final int b2
- See Also:
- Constant Field Values
-
b3
private static final int b3
- See Also:
- Constant Field Values
-
b4
private static final int b4
- See Also:
- Constant Field Values
-
max_entries
private final int max_entries
-
entry_count
private int entry_count
-
start_time
private long start_time
-
-
Method Detail
-
deserialiseFromMap
public static BloomFilter deserialiseFromMap(java.util.Map<java.lang.String,java.lang.Object> map)
-
serialiseToMap
protected void serialiseToMap(java.util.Map<java.lang.String,java.lang.Object> x)
-
serialiseToMap
public java.util.Map<java.lang.String,java.lang.Object> serialiseToMap()
- Specified by:
serialiseToMap
in interfaceBloomFilter
-
getMaxEntries
protected int getMaxEntries()
-
add
public int add(byte[] value)
- Specified by:
add
in interfaceBloomFilter
-
remove
public int remove(byte[] value)
- Specified by:
remove
in interfaceBloomFilter
-
count
public int count(byte[] value)
- Specified by:
count
in interfaceBloomFilter
-
contains
public boolean contains(byte[] value)
- Specified by:
contains
in interfaceBloomFilter
-
add
protected int add(int value)
-
remove
protected int remove(int value)
-
count
protected int count(int value)
-
contains
protected boolean contains(int value)
-
getValue
protected abstract int getValue(int index)
-
incValue
protected abstract int incValue(int index)
-
decValue
protected abstract int decValue(int index)
-
trimValue
protected abstract int trimValue(int value)
-
getHash
protected int getHash(int function, int value)
-
bytesToInteger
protected int bytesToInteger(byte[] data)
-
getEntryCount
public int getEntryCount()
Description copied from interface:BloomFilter
Returns number of unique entries- Specified by:
getEntryCount
in interfaceBloomFilter
- Returns:
-
getSize
public int getSize()
Description copied from interface:BloomFilter
Returns overall capacity- Specified by:
getSize
in interfaceBloomFilter
- Returns:
-
clear
public void clear()
- Specified by:
clear
in interfaceBloomFilter
-
getStartTimeMono
public long getStartTimeMono()
- Specified by:
getStartTimeMono
in interfaceBloomFilter
-
getSerialization
protected static byte[] getSerialization(byte[] address, int port)
-
getString
public java.lang.String getString()
- Specified by:
getString
in interfaceBloomFilter
-
main
public static void main(java.lang.String[] args)
-
-