com.ibatis.sqlmap.engine.cache.memory

Class MemoryCacheLevel

public final class MemoryCacheLevel extends Object

An enumeration for the values for the memory cache levels
Field Summary
static MemoryCacheLevelSOFT
Constant for soft caching.
static MemoryCacheLevelSTRONG
Constant for strong caching.
static MemoryCacheLevelWEAK
Constant for weak caching This cache model is probably the best choice in most cases.
Method Summary
static MemoryCacheLevelgetByReferenceType(String refType)
Gets a MemoryCacheLevel by name
StringgetReferenceType()
Getter for the reference type

Field Detail

SOFT

public static final MemoryCacheLevel SOFT
Constant for soft caching. This cache model will reduce the likelihood of running out of memory in case the results are not currently in use and the memory is needed for other objects. However, this is not the most aggressive cache-model in that regard. Hence, memory still might be allocated and unavailable for more important objects.

STRONG

public static final MemoryCacheLevel STRONG
Constant for strong caching. This cache model will guarantee that the results stay in memory until the cache is explicitly flushed. This is ideal for results that are:
  1. very small
  2. absolutely static
  3. used very often
The advantage is that performance will be very good for this particular query. The disadvantage is that if the memory used by these results is needed, then it will not be released to make room for other objects (possibly more important objects).

WEAK

public static final MemoryCacheLevel WEAK
Constant for weak caching This cache model is probably the best choice in most cases. It will increase performance for popular results, but it will absolutely release the memory to be used in allocating other objects, assuming that the results are not currently in use.

Method Detail

getByReferenceType

public static MemoryCacheLevel getByReferenceType(String refType)
Gets a MemoryCacheLevel by name

Parameters: refType the name of the reference type

Returns: the MemoryCacheLevel that the name indicates

getReferenceType

public String getReferenceType()
Getter for the reference type

Returns: the type of reference type used

Copyright © 2011. All Rights Reserved.