/* * Created on 08.09.2005 * * To change the template for this generated file go to * Window>Preferences>Java>Code Generation>Code and Comments */ package quickbase.service; import java.util.ArrayList; import java.util.Collection; import quickbase.exception.DatabaseException; public abstract class ExHandlingMapWrapper<K, V> { private IPersistedMap<K, V> wrapped; public ExHandlingMapWrapper(IPersistedMap<K, V> wrapped) { this.wrapped = wrapped; } public abstract void handleException(DatabaseException e); public boolean contains(K key) { try { return wrapped.contains(key); } catch (DatabaseException e) { handleException(e); return false; } } public V get(K key) { try { return wrapped.get(key); } catch (DatabaseException e) { handleException(e); return null; } } public void put(K key, V value) { try { wrapped.put(key, value); } catch (DatabaseException e) { handleException(e); } } public void remove(K key) { try { wrapped.remove(key); } catch (DatabaseException e) { handleException(e); } } public Collection<V> values() { try { return wrapped.values(); } catch (DatabaseException e) { handleException(e); return new ArrayList<V>(); } } public void visit(IVisitor<K, V> visitor) { try { wrapped.visit(visitor); } catch (DatabaseException e) { handleException(e); } } }