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
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private int
private static final int
private final int
protected static final String
private long
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
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
(Map<String, Object> map) int
Returns number of unique entriesprotected int
getHash
(int function, int value) protected int
protected static byte[]
getSerialization
(byte[] address, int port) int
getSize()
Returns overall capacitylong
protected abstract int
getValue
(int index) protected abstract int
incValue
(int index) static void
int
remove
(byte[] value) protected int
remove
(int value) protected void
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 Details
-
MY_PACKAGE
- See Also:
-
HASH_NUM
private static final int HASH_NUM- See Also:
-
a2
private static final int a2- See Also:
-
a3
private static final int a3- See Also:
-
a4
private static final int a4- See Also:
-
b2
private static final int b2- See Also:
-
b3
private static final int b3- See Also:
-
b4
private static final int b4- See Also:
-
max_entries
private final int max_entries -
entry_count
private int entry_count -
start_time
private long start_time
-
-
Constructor Details
-
BloomFilterImpl
public BloomFilterImpl(int _max_entries) -
BloomFilterImpl
-
-
Method Details
-
deserialiseFromMap
-
serialiseToMap
-
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
- Specified by:
getString
in interfaceBloomFilter
-
main
-