Class WeakObjectRegistry<K, E extends K>
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractSet<E>
org.eclipse.rdf4j.sail.memory.model.WeakObjectRegistry<K,E>
- All Implemented Interfaces:
Iterable<E>,Collection<E>,Set<E>
An object registry that uses weak references to keep track of the stored objects. The registry can be used to
retrieve stored objects using another, equivalent object. As such, it can be used to prevent the use of duplicates in
another data structure, reducing memory usage. The objects that are being stored should properly implement the
Object.equals(java.lang.Object) and Object.hashCode() methods.-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionConstructs a new, empty object registry.WeakObjectRegistry(int cacheSize, Collection<? extends E> c) Constructs a new WeakObjectRegistry containing the elements in the specified collection. -
Method Summary
Methods inherited from class java.util.AbstractSet
equals, hashCode, removeAllMethods inherited from class java.util.AbstractCollection
addAll, containsAll, isEmpty, retainAll, toArray, toArray, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArrayMethods inherited from interface java.util.Set
addAll, containsAll, isEmpty, retainAll, spliterator, toArray, toArray
-
Constructor Details
-
WeakObjectRegistry
public WeakObjectRegistry()Constructs a new, empty object registry. -
WeakObjectRegistry
Constructs a new WeakObjectRegistry containing the elements in the specified collection.- Parameters:
c- The collection whose elements are to be placed into this object registry.- Throws:
NullPointerException- If the specified collection is null.
-
-
Method Details
-
get
-
closeableIterator
-
iterator
-
size
public int size()- Specified by:
sizein interfaceCollection<K>- Specified by:
sizein interfaceSet<K>- Specified by:
sizein classAbstractCollection<E extends K>
-
contains
-
add
-
getOrAdd
-
remove
-
clear
public void clear()- Specified by:
clearin interfaceCollection<K>- Specified by:
clearin interfaceSet<K>- Overrides:
clearin classAbstractCollection<E extends K>
-