1 8 package org.apache.avalon.excalibur.cache.policy; 9 10 import java.util.LinkedList ; 11 import org.apache.avalon.excalibur.cache.ReplacementPolicy; 12 13 18 public abstract class ListBasedPolicy 19 implements ReplacementPolicy 20 { 21 protected LinkedList m_keyList; 22 23 public ListBasedPolicy() 24 { 25 m_keyList = new LinkedList (); 26 } 27 28 public void add( final Object key ) 29 { 30 m_keyList.addFirst( key ); 31 } 32 33 public void remove( final Object key ) 34 { 35 m_keyList.remove( key ); 36 } 37 38 public Object selectVictim() 39 { 40 return m_keyList.removeLast(); 41 } 42 } 43 | Popular Tags |