org.codehaus.groovy.runtime.memoize
Class UnlimitedConcurrentCache

java.lang.Object
  extended by org.codehaus.groovy.runtime.memoize.UnlimitedConcurrentCache
All Implemented Interfaces:
MemoizeCache<java.lang.Object,java.lang.Object>

public final class UnlimitedConcurrentCache
extends java.lang.Object
implements MemoizeCache<java.lang.Object,java.lang.Object>

A cache backed by a ConcurrentHashMap


Constructor Summary
UnlimitedConcurrentCache()
           
 
Method Summary
 void cleanUpNullReferences()
          Replying on the ConcurrentHashMap thread-safe iteration implementation the method will remove all entries holding SoftReferences to gc-evicted objects.
 java.lang.Object get(java.lang.Object key)
           
 java.lang.Object put(java.lang.Object key, java.lang.Object value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UnlimitedConcurrentCache

public UnlimitedConcurrentCache()
Method Detail

put

public java.lang.Object put(java.lang.Object key,
                            java.lang.Object value)
Specified by:
put in interface MemoizeCache<java.lang.Object,java.lang.Object>

get

public java.lang.Object get(java.lang.Object key)
Specified by:
get in interface MemoizeCache<java.lang.Object,java.lang.Object>

cleanUpNullReferences

public void cleanUpNullReferences()
Replying on the ConcurrentHashMap thread-safe iteration implementation the method will remove all entries holding SoftReferences to gc-evicted objects.

Specified by:
cleanUpNullReferences in interface MemoizeCache<java.lang.Object,java.lang.Object>