Class MapCacheStoreAdapter
java.lang.Object
org.craftercms.core.cache.impl.store.MapCacheStoreAdapter
- All Implemented Interfaces:
CacheStoreAdapter
Implementation of a
CacheStoreAdapter using an underlying Map.- Author:
- Sumer Jabri, Alfonso Vásquez
-
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.MapCacheStoreAdapter(List<String> scopes) Constructor that receives a list of scopes that need to created. -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds a new scope.voidclearAll()Clears the contents of the entire store.voidclearScope(String scope) Clears the contents of the specified scope in the underlying store.Retrieves an item from a scope.Returns a list of the keys of the items present in the specified scope.Returns the scopes managed by the underlying store.intReturns the quantity of items present in the specified scope.getStatistics(String scope) Returns the statistics of the specified scope from the underlying store.booleanReturns true if there's and item with the specified key in the specified scope.booleanReturns true if the specified scope exists in the cache.voidPuts an item in a scope.booleanRemoves an item from a scope.voidremoveScope(String scope) Removes an existing scope and all the items that are in it.
-
Constructor Details
-
MapCacheStoreAdapter
public MapCacheStoreAdapter()Default constructor. CreatesscopeCachesas aConcurrentHashMap -
MapCacheStoreAdapter
Constructor that receives a list of scopes that need to created. Each scope is an instance ofConcurrentHashMap.
-
-
Method Details
-
hasScope
Returns true if the specified scope exists in the cache.- Specified by:
hasScopein interfaceCacheStoreAdapter- Throws:
Exception
-
getScopes
Returns the scopes managed by the underlying store.- Specified by:
getScopesin interfaceCacheStoreAdapter- Throws:
Exception
-
addScope
Adds a new scope. The scope is an instance ofConcurrentHashMap.- Specified by:
addScopein interfaceCacheStoreAdapter- Parameters:
scope- the name of the scopemaxItemsInMemory- the maximum number of items in memory, before they are evicted- Throws:
Exception
-
removeScope
Removes an existing scope and all the items that are in it.- Specified by:
removeScopein interfaceCacheStoreAdapter- Parameters:
scope- scope to remove- Throws:
Exception
-
getSize
Returns the quantity of items present in the specified scope.- Specified by:
getSizein interfaceCacheStoreAdapter- Returns:
- the size of the scope (quantity of items)
- Throws:
Exception
-
getKeys
Returns a list of the keys of the items present in the specified scope.- Specified by:
getKeysin interfaceCacheStoreAdapter- Returns:
- a list of the keys of the available items in the scope
- Throws:
Exception
-
hasKey
Returns true if there's and item with the specified key in the specified scope.- Specified by:
hasKeyin interfaceCacheStoreAdapter- Returns:
- true if the key exists in the scope, false otherwise
- Throws:
Exception
-
get
Retrieves an item from a scope.- Specified by:
getin interfaceCacheStoreAdapter- Parameters:
scope- scope to get the item fromkey- unique key for the item within this scope- Returns:
- the requested item if found, null otherwise
- Throws:
Exception
-
put
Puts an item in a scope. The scope is obtained throughCacheItem.getScope().- Specified by:
putin interfaceCacheStoreAdapter- Parameters:
item- the item to put- Throws:
Exception
-
remove
Removes an item from a scope.- Specified by:
removein interfaceCacheStoreAdapter- Parameters:
scope- scope to remove the item fromkey- unique key for the item within this scope- Returns:
- true if the removal was successful, false otherwise
- Throws:
Exception
-
clearAll
Clears the contents of the entire store.- Specified by:
clearAllin interfaceCacheStoreAdapter- Throws:
Exception
-
clearScope
Clears the contents of the specified scope in the underlying store.- Specified by:
clearScopein interfaceCacheStoreAdapter- Parameters:
scope- scope to clear- Throws:
Exception
-
getStatistics
Returns the statistics of the specified scope from the underlying store.- Specified by:
getStatisticsin interfaceCacheStoreAdapter- Parameters:
scope- scope to inspect- Returns:
- the statistics
-