com.hazelcast.cache.impl.eviction.impl.strategy
Class AbstractEvictionStrategy<A,E extends Evictable,S extends EvictableStore<A,E>>

java.lang.Object
  extended by com.hazelcast.cache.impl.eviction.impl.strategy.AbstractEvictionStrategy<A,E,S>
All Implemented Interfaces:
EvictionStrategy<A,E,S>
Direct Known Subclasses:
SamplingBasedEvictionStrategy

public abstract class AbstractEvictionStrategy<A,E extends Evictable,S extends EvictableStore<A,E>>
extends Object
implements EvictionStrategy<A,E,S>

Base class for eviction implementations to evict EvictableStore implementations as specified EvictionPolicyEvaluator.


Constructor Summary
AbstractEvictionStrategy()
           
 
Method Summary
 int evict(S evictableStore, EvictionPolicyEvaluator<A,E> evictionPolicyEvaluator, EvictionChecker evictionChecker)
          Does eviction if eviction is required by given EvictionChecker.
protected abstract  int evictInternal(S evictableStore, EvictionPolicyEvaluator<A,E> evictionPolicyEvaluator)
          Does eviction internally.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractEvictionStrategy

public AbstractEvictionStrategy()
Method Detail

evict

public int evict(S evictableStore,
                 EvictionPolicyEvaluator<A,E> evictionPolicyEvaluator,
                 EvictionChecker evictionChecker)
Does eviction if eviction is required by given EvictionChecker.

Specified by:
evict in interface EvictionStrategy<A,E extends Evictable,S extends EvictableStore<A,E>>
Parameters:
evictableStore - Store that holds Evictable entries
evictionPolicyEvaluator - EvictionPolicyEvaluator to evaluate EvictionPolicy on entries
evictionChecker - EvictionChecker to make a decision about if eviction is required or not. If you want evict anyway, you can use EvictionChecker.EVICT_ALWAYS
Returns:
evicted entry count

evictInternal

protected abstract int evictInternal(S evictableStore,
                                     EvictionPolicyEvaluator<A,E> evictionPolicyEvaluator)
Does eviction internally.

Parameters:
evictableStore - Store that holds Evictable entries
evictionPolicyEvaluator - EvictionPolicyEvaluator to evaluate EvictionPolicy on entries
Returns:
evicted entry count


Copyright © 2015 Hazelcast, Inc.. All Rights Reserved.