Class ConcurrentLinkedHashMap.Builder<K,V>
java.lang.Object
org.apache.groovy.util.concurrent.concurrentlinkedhashmap.ConcurrentLinkedHashMap.Builder<K,V>
- Enclosing class:
- ConcurrentLinkedHashMap<K,V>
public static final class ConcurrentLinkedHashMap.Builder<K,V>
extends java.lang.Object
A builder that creates 
ConcurrentLinkedHashMap instances. It
 provides a flexible approach for constructing customized instances with
 a named parameter syntax. It can be used in the following manner:
 
 ConcurrentMap<Vertex, Set<Edge>> graph = new Builder<Vertex, Set<Edge>>()
     .maximumWeightedCapacity(5000)
     .weigher(Weighers.<Edge>set())
     .build();
 - 
Constructor SummaryConstructors Constructor Description Builder()
- 
Method SummaryModifier and Type Method Description ConcurrentLinkedHashMap<K,V>build()Creates a newConcurrentLinkedHashMapinstance.ConcurrentLinkedHashMap.Builder<K,V>concurrencyLevel(int concurrencyLevel)Specifies the estimated number of concurrently updating threads.ConcurrentLinkedHashMap.Builder<K,V>initialCapacity(int initialCapacity)Specifies the initial capacity of the hash table (default 16).ConcurrentLinkedHashMap.Builder<K,V>listener(EvictionListener<K,V> listener)Specifies an optional listener that is registered for notification when an entry is evicted.ConcurrentLinkedHashMap.Builder<K,V>maximumWeightedCapacity(long capacity)Specifies the maximum weighted capacity to coerce the map to and may exceed it temporarily.ConcurrentLinkedHashMap.Builder<K,V>weigher(EntryWeigher<? super K,? super V> weigher)Specifies an algorithm to determine how many the units of capacity an entry consumes.ConcurrentLinkedHashMap.Builder<K,V>weigher(Weigher<? super V> weigher)Specifies an algorithm to determine how many the units of capacity a value consumes.Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
- 
Constructor Details- 
Builderpublic Builder()
 
- 
- 
Method Details- 
initialCapacitySpecifies the initial capacity of the hash table (default 16). This is the number of key-value pairs that the hash table can hold before a resize operation is required.- Parameters:
- initialCapacity- the initial capacity used to size the hash table to accommodate this many entries.
- Throws:
- java.lang.IllegalArgumentException- if the initialCapacity is negative
 
- 
maximumWeightedCapacitySpecifies the maximum weighted capacity to coerce the map to and may exceed it temporarily.- Parameters:
- capacity- the weighted threshold to bound the map by
- Throws:
- java.lang.IllegalArgumentException- if the maximumWeightedCapacity is negative
 
- 
concurrencyLevelSpecifies the estimated number of concurrently updating threads. The implementation performs internal sizing to try to accommodate this many threads (default 16).- Parameters:
- concurrencyLevel- the estimated number of concurrently updating threads
- Throws:
- java.lang.IllegalArgumentException- if the concurrencyLevel is less than or equal to zero
 
- 
listenerSpecifies an optional listener that is registered for notification when an entry is evicted.- Parameters:
- listener- the object to forward evicted entries to
- Throws:
- java.lang.NullPointerException- if the listener is null
 
- 
weigherSpecifies an algorithm to determine how many the units of capacity a value consumes. The default algorithm bounds the map by the number of key-value pairs by giving each entry a weight of 1.- Parameters:
- weigher- the algorithm to determine a value's weight
- Throws:
- java.lang.NullPointerException- if the weigher is null
 
- 
weigherSpecifies an algorithm to determine how many the units of capacity an entry consumes. The default algorithm bounds the map by the number of key-value pairs by giving each entry a weight of 1.- Parameters:
- weigher- the algorithm to determine a entry's weight
- Throws:
- java.lang.NullPointerException- if the weigher is null
 
- 
buildCreates a newConcurrentLinkedHashMapinstance.- Throws:
- java.lang.IllegalStateException- if the maximum weighted capacity was not set
 
 
-