public void clear() { if (_map.removalPolicy != null) { for (Entry<K, V> entry : _map.entrySet()) { _map.removalPolicy.onElementRemoved(entry.getKey(), entry.getValue()); } } _map.clear(); }
synchronized public void setSize (int size) { _size = size; while (_map.size() > _size) { K key = _map.keySet().iterator().next(); V value = _map.remove(key); if (_map.removalPolicy != null) _map.removalPolicy.onElementRemoved(key, value); } }
public void remove(K key) { V value = _map.remove(key); if (_map.removalPolicy != null) _map.removalPolicy.onElementRemoved(key, value); }
public void put(K key, V value) { V oldValue = _map.put(key, value); if (oldValue != null && _map.removalPolicy != null) _map.removalPolicy.onElementRemoved(key, oldValue); }