EvictionPolicy.java |
/* * JBoss, the OpenSource J2EE webOS * * Distributable under LGPL license. * See terms of license at gnu.org. */ package org.jboss.cache.eviction; //import org.jboss.cache.TreeCache; import org.jboss.cache.Fqn; import org.jboss.cache.TreeCache; import java.util.Set; /** * Generic eviction policy interface. * * @author Ben Wang 2-2004 */ public interface EvictionPolicy { /** * Return all regions declared. * @return */ Region[] getRegions(); /** * Evict a node form the underlying cache. * @param fqn Node corresponds to this fqn. * @throws Exception */ void evict(Fqn fqn) throws Exception; /** * Return children names as Objects * @param fqn * @return */ Set getChildrenNames(Fqn fqn); /** * Is this a leaf node? * @param fqn * @return */ boolean hasChild(Fqn fqn); Object getCacheData(Fqn fqn, Object key); /** * return eviction thread (if any) wake up interval in seconds. * @return */ int getWakeupIntervalSeconds(); /** * Method called to configure this implementation. */ void configure(TreeCache cache); }
EvictionPolicy.java |