|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface CacheManager
A CacheManager is the primary mechanism for retrieving a Cache
instance, and is often
used as a starting point to using the Cache
.
Configuration
or a path or URL to a configuration XML file.
Lifecycle - CacheManagers have a lifecycle (it implements Lifecycle
) and
the default constructors also call Lifecycle.start()
. Overloaded versions of the constructors are available, that do
not start the CacheManager, although it must be kept in mind that CacheManagers need to be started
before they can be used to create Cache instances.
Once constructed, CacheManagers should be made available to any component that requires a Cache,
via JNDI or via some other mechanism
such as an dependency injection framework.
You obtain Cache instances from the CacheManager by using one of the overloaded
getCache(), methods. Note that with getCache(), there is no guarantee that the instance you get is
brand-new and empty, since caches are named and shared. Because of this, the CacheManager also acts as a
repository of Caches, and is an effective mechanism of looking up or creating Caches on demand.
When the system shuts down, it should call Lifecycle.stop()
on the CacheManager. This will ensure all caches
within its scope are properly stopped as well.
NB: Shared caches are supported (and in fact encouraged) but if they are used it's the users responsibility to
ensure that at least one but only one caller calls stop() on the cache, and it does so with the awareness
that others may be using the cache.
Sample usage: CacheManager manager = new DefaultCacheManager("my-config-file.xml"); Cache entityCache =
manager.getCache("myEntityCache"); entityCache.put("aPerson", new Person());
Configuration myNewConfiguration = new Configuration(); myNewConfiguration.setCacheMode(Configuration.CacheMode.LOCAL);
manager.defineConfiguration("myLocalCache", myNewConfiguration); Cache localCache = manager.getCache("myLocalCache");
Method Summary | ||
---|---|---|
Configuration |
defineConfiguration(String cacheName,
Configuration configurationOverride)
Defines a named cache's configuration using the following algorithm: If cache name hasn't been defined before, this method creates a clone of the default cache's configuration, applies a clone of the configuration overrides passed in and returns this configuration instance. |
|
Configuration |
defineConfiguration(String cacheName,
String templateCacheName,
Configuration configurationOverride)
Defines a named cache's configuration using the following algorithm: Regardless of whether the cache name has been defined or not, this method creates a clone of the configuration of the cache whose name matches the given template cache name, then applies a clone of the configuration overrides passed in and finally returns this configuration instance. |
|
Address |
getAddress()
|
|
|
getCache()
Retrieves the default cache associated with this cache manager. |
|
|
getCache(String cacheName)
Retrieves a named cache from the system. |
|
Set<String> |
getCacheNames()
If no named caches are registered, this method returns an empty set. |
|
String |
getClusterName()
|
|
Configuration |
getDefaultConfiguration()
Returns default configuration for this CacheManager |
|
GlobalConfiguration |
getGlobalConfiguration()
Returns global configuration for this CacheManager |
|
List<Address> |
getMembers()
|
|
ComponentStatus |
getStatus()
|
|
boolean |
isCoordinator()
|
Methods inherited from interface org.infinispan.lifecycle.Lifecycle |
---|
start, stop |
Methods inherited from interface org.infinispan.notifications.Listenable |
---|
addListener, getListeners, removeListener |
Method Detail |
---|
Configuration defineConfiguration(String cacheName, Configuration configurationOverride)
cacheName
- name of cache whose configuration is being definedconfigurationOverride
- configuration overrides to use
Configuration defineConfiguration(String cacheName, String templateCacheName, Configuration configurationOverride)
defineConfiguration(String, Configuration)
in the sense that the base configuration used is the default cache
configuration.
cacheName
- name of cache whose configuration is being definedtemplateCacheName
- name of cache to which to which apply overrides if cache name has not been previously
definedconfigurationOverride
- configuration overrides to use
<K,V> Cache<K,V> getCache()
<K,V> Cache<K,V> getCache(String cacheName)
defineConfiguration(String, Configuration)
or defineConfiguration(String, String, Configuration)
methods, or declared in the configuration file.
NB: Shared caches are supported (and in fact encouraged) but if they are used it's the users responsibility to
ensure that at least one but only one caller calls stop() on the cache, and it does so with the awareness
that others may be using the cache.
cacheName
- name of cache to retrieve
String getClusterName()
List<Address> getMembers()
Address getAddress()
boolean isCoordinator()
ComponentStatus getStatus()
GlobalConfiguration getGlobalConfiguration()
Configuration getDefaultConfiguration()
Set<String> getCacheNames()
|
Google Analytics | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |