The Cache will use a policy at startup. There are three policy implementations provided in ehcache: LRU, LFU and FIFO. However many other policies are possible. That the policy has access to the whole element enables policies based on the key, value, metadata, statistics, or a combination of any of the above.
| Modifier and Type | Method and Description |
|---|---|
| public boolean | |
| public String | |
| public Element | Returns: the selected Elementthis should be a random subset of the population sampledElements, Element we probably never want to select the element just added.
It is provided so that it can be ignored if selected. May be null. justAdded)Finds the best eviction candidate based on the sampled elements. |
| compare | back to summary |
|---|---|
| public boolean compare(Element element1, Element element2) Compares the desirableness for eviction of two elements | |
| getName | back to summary |
|---|---|
public String getName()
| |
| selectedBasedOnPolicy | back to summary |
|---|---|
| public Element selectedBasedOnPolicy(Element[] sampledElements, Element justAdded) Finds the best eviction candidate based on the sampled elements. What distinguishes this approach from the classic data structures approach is that an Element contains metadata (e.g. usage statistics) which can be used for making policy decisions, while generic data structures do not. It is expected that implementations will take advantage of that metadata. | |