Interface OHashTable<K,V>
- All Known Implementing Classes:
LocalHashTableV2,OLocalHashTableV3
public interface OHashTable<K,V>
Created by lomak_000 on 15.04.2015.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classstatic final classstatic classstatic final classstatic final classstatic class -
Method Summary
Modifier and TypeMethodDescriptionvoidAcquires exclusive lock in the active atomic operation running on the current thread for this hash table.OHashTable.Entry<K,V>[] ceilingEntries(K key) voidclose()voidcreate(OAtomicOperation atomicOperation, OBinarySerializer<K> keySerializer, OBinarySerializer<V> valueSerializer, OType[] keyTypes, OEncryption encryption, OHashFunction<K> keyHashFunction, boolean nullKeyIsSupported) voiddelete(OAtomicOperation atomicOperation) OHashTable.Entry<K,V>[] floorEntries(K key) voidflush()getName()OHashTable.Entry<K,V>[] higherEntries(K key) OHashTable.Entry<K,V>[] higherEntries(K key, int limit) booleanvoidload(String name, OType[] keyTypes, boolean nullKeyIsSupported, OEncryption encryption, OHashFunction<K> keyHashFunction, OBinarySerializer<K> keySerializer, OBinarySerializer<V> valueSerializer) OHashTable.Entry<K,V>[] lowerEntries(K key) voidput(OAtomicOperation atomicOperation, K key, V value) remove(OAtomicOperation atomicOperation, K key) longsize()booleanvalidatedPut(OAtomicOperation atomicOperation, K key, V value, IndexEngineValidator<K, V> validator) Puts the given value under the given key into this hash table.
-
Method Details
-
create
void create(OAtomicOperation atomicOperation, OBinarySerializer<K> keySerializer, OBinarySerializer<V> valueSerializer, OType[] keyTypes, OEncryption encryption, OHashFunction<K> keyHashFunction, boolean nullKeyIsSupported) throws IOException - Throws:
IOException
-
get
-
validatedPut
boolean validatedPut(OAtomicOperation atomicOperation, K key, V value, IndexEngineValidator<K, V> validator) throws IOExceptionPuts the given value under the given key into this hash table. Validates the operation using the provided validator.- Parameters:
atomicOperation-key- the key to put the value under.value- the value to put.validator- the operation validator.- Returns:
trueif the validator allowed the put,falseotherwise.- Throws:
IOException- See Also:
-
put
- Throws:
IOException
-
remove
- Throws:
IOException
-
higherEntries
-
higherEntries
-
load
void load(String name, OType[] keyTypes, boolean nullKeyIsSupported, OEncryption encryption, OHashFunction<K> keyHashFunction, OBinarySerializer<K> keySerializer, OBinarySerializer<V> valueSerializer) -
ceilingEntries
-
firstEntry
OHashTable.Entry<K,V> firstEntry() -
lastEntry
OHashTable.Entry<K,V> lastEntry() -
lowerEntries
-
floorEntries
-
size
long size() -
close
void close() -
delete
- Throws:
IOException
-
flush
void flush() -
isNullKeyIsSupported
boolean isNullKeyIsSupported() -
acquireAtomicExclusiveLock
void acquireAtomicExclusiveLock()Acquires exclusive lock in the active atomic operation running on the current thread for this hash table. -
getName
String getName()
-