Package org.opencms.ade.configuration
Class CmsGlobalConfigurationCacheEventHandler
java.lang.Object
org.opencms.ade.configuration.CmsGlobalConfigurationCacheEventHandler
- All Implemented Interfaces:
I_CmsEventListener
This event handler manages cache instances which are instances of the interface
I_CmsGlobalConfigurationCache
.
It keeps a list of cache instance pairs, each containing one cache for the online mode and one for the offline mode,
and handles events caused by changed resources by notifying the cache instances.
Note that *all* changed resources will get passed to the underlying cache instances, so those instances will need to check
whether the resource passed into the update or remove methods is actually a resource with which the cache instance is concerned.
This class should be used if you have an indefinite number of configuration files at arbitrary locations in the VFS.
If you need to cache e.g. a single configuration file with a known, fixed path, using CmsVfsMemoryObjectCache
is
easier.
-
Field Summary
Fields inherited from interface org.opencms.main.I_CmsEventListener
EVENT_BEFORE_PUBLISH_PROJECT, EVENT_CLEAR_CACHES, EVENT_CLEAR_OFFLINE_CACHES, EVENT_CLEAR_ONLINE_CACHES, EVENT_CLEAR_PRINCIPAL_CACHES, EVENT_FLEX_CACHE_CLEAR, EVENT_FLEX_PURGE_JSP_REPOSITORY, EVENT_FULLSTATIC_EXPORT, EVENT_GROUP_MODIFIED, EVENT_LOGIN_USER, EVENT_OU_MODIFIED, EVENT_PROJECT_MODIFIED, EVENT_PROPERTY_DEFINITION_CREATED, EVENT_PROPERTY_DEFINITION_MODIFIED, EVENT_PROPERTY_MODIFIED, EVENT_PUBLISH_PROJECT, EVENT_REBUILD_SEARCHINDEXES, EVENT_REINDEX_OFFLINE, EVENT_REINDEX_ONLINE, EVENT_RESOURCE_AND_PROPERTIES_MODIFIED, EVENT_RESOURCE_COPIED, EVENT_RESOURCE_CREATED, EVENT_RESOURCE_DELETED, EVENT_RESOURCE_MODIFIED, EVENT_RESOURCE_MOVED, EVENT_RESOURCES_AND_PROPERTIES_MODIFIED, EVENT_RESOURCES_MODIFIED, EVENT_SITEMAP_CHANGED, EVENT_UPDATE_EXPORTS, EVENT_USER_MODIFIED, KEY_CHANGE, KEY_DBCONTEXT, KEY_GROUP_ID, KEY_GROUP_NAME, KEY_INDEX_NAMES, KEY_IS_ONLINE, KEY_OU_ID, KEY_OU_NAME, KEY_PROJECTID, KEY_PUBLISHID, KEY_PUBLISHLIST, KEY_REINDEX_RELATED, KEY_REPORT, KEY_RESOURCE, KEY_RESOURCES, KEY_SKIPINDEX, KEY_USER_ACTION, KEY_USER_CHANGES, KEY_USER_ID, KEY_USER_NAME, LISTENERS_FOR_ALL_EVENTS, VALUE_CREATE_SIBLING, VALUE_GROUP_MODIFIED_ACTION_CREATE, VALUE_GROUP_MODIFIED_ACTION_DELETE, VALUE_GROUP_MODIFIED_ACTION_WRITE, VALUE_OU_MODIFIED_ACTION_CREATE, VALUE_OU_MODIFIED_ACTION_DELETE, VALUE_USER_MODIFIED_ACTION_ADD_USER_TO_GROUP, VALUE_USER_MODIFIED_ACTION_CREATE_USER, VALUE_USER_MODIFIED_ACTION_DELETE_USER, VALUE_USER_MODIFIED_ACTION_REMOVE_USER_FROM_GROUP, VALUE_USER_MODIFIED_ACTION_RESET_PASSWORD, VALUE_USER_MODIFIED_ACTION_SET_OU, VALUE_USER_MODIFIED_ACTION_WRITE_USER
-
Constructor Summary
ConstructorDescriptionCmsGlobalConfigurationCacheEventHandler
(CmsObject onlineCms) Creates a new cache event handler. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addCache
(I_CmsGlobalConfigurationCache offlineCache, I_CmsGlobalConfigurationCache onlineCache, String debugName) Adds a new pair of cache instances which should be managed by this event handler.void
Acknowledge the occurrence of the specified event, implement this method to check for CmsEvents in your class.protected void
Clears the offline caches.protected void
offlineCacheRemove
(CmsPublishedResource resource) Removes a resource from the offline caches.protected void
offlineCacheRemove
(CmsResource resource) Removes a resource from the offline caches.protected void
offlineCacheUpdate
(CmsPublishedResource resource) Updates a resource in the offline caches.protected void
offlineCacheUpdate
(CmsResource resource) Updates a resource in the offline caches.protected void
Clears the online caches.protected void
onlineCacheRemove
(CmsPublishedResource resource) Removes a resource from the online caches.protected void
onlineCacheRemove
(CmsResource resource) Removes a resource from the online caches.protected void
onlineCacheUpdate
(CmsPublishedResource resource) Updates a resource in the online caches.protected void
onlineCacheUpdate
(CmsResource resource) Updates a resource in the online caches.
-
Constructor Details
-
CmsGlobalConfigurationCacheEventHandler
Creates a new cache event handler.- Parameters:
onlineCms
- an online CMS object
-
-
Method Details
-
addCache
public void addCache(I_CmsGlobalConfigurationCache offlineCache, I_CmsGlobalConfigurationCache onlineCache, String debugName) Adds a new pair of cache instances which should be managed by this event handler.- Parameters:
offlineCache
- the offline cache instanceonlineCache
- the online cache instancedebugName
- an identifier used for debugging
-
cmsEvent
Description copied from interface:I_CmsEventListener
Acknowledge the occurrence of the specified event, implement this method to check for CmsEvents in your class.- Specified by:
cmsEvent
in interfaceI_CmsEventListener
- Parameters:
event
- CmsEvent that has occurred- See Also:
-
offlineCacheClear
Clears the offline caches. -
offlineCacheRemove
Removes a resource from the offline caches.- Parameters:
resource
- the resource to remove
-
offlineCacheRemove
Removes a resource from the offline caches.- Parameters:
resource
- the resource to remove
-
offlineCacheUpdate
Updates a resource in the offline caches.- Parameters:
resource
- the resource to update
-
offlineCacheUpdate
Updates a resource in the offline caches.- Parameters:
resource
- the resource to update
-
onlineCacheClear
Clears the online caches. -
onlineCacheRemove
Removes a resource from the online caches.- Parameters:
resource
- the resource to remove
-
onlineCacheRemove
Removes a resource from the online caches.- Parameters:
resource
- the resource to remove
-
onlineCacheUpdate
Updates a resource in the online caches.- Parameters:
resource
- the resource to update
-
onlineCacheUpdate
Updates a resource in the online caches.- Parameters:
resource
- the resource to update
-