Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.hibernate.util
Class SoftLimitMRUCache

    java.lang.Object
      org.hibernate.util.SoftLimitMRUCache

All Implemented Interfaces:
  Serializable

    public class SoftLimitMRUCache

extends Object
implements Serializable

Cache following a "Most Recently Used" (MRY) algorithm for maintaining a bounded in-memory size; the "Least Recently Used" (LRU) entry is the first available for removal from the cache.

This implementation uses a "soft limit" to the in-memory size of the cache, meaning that all cache entries are kept within a completely `SoftReference`-based map with the most recently utilized entries additionally kept in a hard-reference manner to prevent those cache entries soft references from becoming enqueued by the garbage collector. Thus the actual size of this cache impl can actually grow beyond the stated max size bound as long as GC is not actively seeking soft references for enqueuement.

Author:
  Steve Ebersole
See Also:
  Serialized Form

Field Summary
`static int` | `DEFAULT_STRONG_REF_COUNT`

Constructor Summary
`SoftLimitMRUCache()`
`SoftLimitMRUCache(int strongRefCount)`

Method Summary
`void` | `clear()`
`Object` | `get(Object key)`
`Object` | `put(Object key, Object value)`
`int` | `size()`
`int` | `softSize()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### DEFAULT_STRONG_REF_COUNT

    public static final int DEFAULT_STRONG_REF_COUNT

See Also:
  Constant Field Values

Constructor Detail

### SoftLimitMRUCache

    public SoftLimitMRUCache()

### SoftLimitMRUCache

    public SoftLimitMRUCache(int strongRefCount)

Method Detail

### get

    public Object get(Object key)

### put

    public Object put(Object key,
                      Object value)

### size

    public int size()

### softSize

    public int softSize()

### clear

    public void clear()

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD