List of usage examples for org.apache.commons.cache BaseStorageListener BaseStorageListener
BaseStorageListener
From source file:com.adito.policyframework.PrincipalCache.java
private StorageListener getStorageListener(final String messageBundle, final String cacheFullText) { return new BaseStorageListener() { private static final long serialVersionUID = 4283488241230531541L; private int storageCounter = 0; private boolean addedWarning; public synchronized void stored(Serializable arg0, Serializable arg1, Long arg2, Long arg3, Serializable arg4) { storageCounter++;/*from w w w .j a v a2s. c om*/ } public synchronized void cleared(Serializable arg0) { if (storageCounter == cacheSize && !addedWarning) { BundleActionMessage message = new BundleActionMessage(messageBundle, cacheFullText, String.valueOf(cacheSize)); GlobalWarningManager.getInstance().addMultipleGlobalWarning(new GlobalWarning( GlobalWarning.MANAGEMENT_USERS, message, DismissType.DISMISS_FOR_USER)); addedWarning = true; } storageCounter--; } public synchronized void cleared() { storageCounter = 0; addedWarning = false; GlobalWarningManager.getInstance().removeGlobalWarningFromAllSessions(cacheFullText); } }; }