Package org.opencms.cache
Class CmsVfsMemoryObjectCache
- java.lang.Object
-
- org.opencms.cache.CmsVfsCache
-
- org.opencms.cache.CmsVfsMemoryObjectCache
-
- All Implemented Interfaces:
I_CmsEventListener
public class CmsVfsMemoryObjectCache extends CmsVfsCache
Implements a memory cache, that stores objects related to VFS files, providing a cache for the "online" and another for the "offline" project.- Since:
- 6.1.3
-
-
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
Constructors Constructor Description CmsVfsMemoryObjectCache()
Constructor, creates a new CmsVfsMemoryObjectCache.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
flush(boolean online)
Flushes the caches.java.lang.Object
getCachedObject(CmsObject cms, java.lang.String rootPath)
Return an object from the cache.static CmsVfsMemoryObjectCache
getVfsMemoryObjectCache()
Returns the VFS memory Object cache.java.lang.Object
loadVfsObject(CmsObject cms, java.lang.String rootPath, org.apache.commons.collections.Transformer function)
Uses a transformer for loading an object from a path if it has not already been cached, and then caches it.void
putCachedObject(CmsObject cms, java.lang.String rootPath, java.lang.Object value)
Puts an object into the cache.protected void
uncacheResource(CmsResource resource)
Removes a cached resource from the cache.-
Methods inherited from class org.opencms.cache.CmsVfsCache
cmsEvent, registerEventListener, shutdown, uncacheResources
-
-
-
-
Constructor Detail
-
CmsVfsMemoryObjectCache
public CmsVfsMemoryObjectCache()
Constructor, creates a new CmsVfsMemoryObjectCache.
-
-
Method Detail
-
getVfsMemoryObjectCache
public static CmsVfsMemoryObjectCache getVfsMemoryObjectCache()
Returns the VFS memory Object cache.- Returns:
- the VFS memory Object cache
-
getCachedObject
public java.lang.Object getCachedObject(CmsObject cms, java.lang.String rootPath)
Return an object from the cache.- Parameters:
cms
- the current users OpenCms contextrootPath
- the rootPath of the VFS resource to get the object for- Returns:
- object form cache or null
-
loadVfsObject
public java.lang.Object loadVfsObject(CmsObject cms, java.lang.String rootPath, org.apache.commons.collections.Transformer function)
Uses a transformer for loading an object from a path if it has not already been cached, and then caches it.- Parameters:
cms
- the CMS contextrootPath
- the root path from which the object should be loadedfunction
- the function which should load the object from VFS if it isn't already cached- Returns:
- the loaded object
-
putCachedObject
public void putCachedObject(CmsObject cms, java.lang.String rootPath, java.lang.Object value)
Puts an object into the cache.- Parameters:
cms
- the CmsObjectrootPath
- the rootPath of the VFS resource to store the object forvalue
- the object to store
-
flush
protected void flush(boolean online)
Description copied from class:CmsVfsCache
Flushes the caches.- Specified by:
flush
in classCmsVfsCache
- Parameters:
online
- if to flush the online or offline caches- See Also:
CmsVfsCache.flush(boolean)
-
uncacheResource
protected void uncacheResource(CmsResource resource)
Description copied from class:CmsVfsCache
Removes a cached resource from the cache.- Specified by:
uncacheResource
in classCmsVfsCache
- Parameters:
resource
- the resource- See Also:
CmsVfsCache.uncacheResource(org.opencms.file.CmsResource)
-
-