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 voidflush(boolean online)Flushes the caches.java.lang.ObjectgetCachedObject(CmsObject cms, java.lang.String rootPath)Return an object from the cache.static CmsVfsMemoryObjectCachegetVfsMemoryObjectCache()Returns the VFS memory Object cache.java.lang.ObjectloadVfsObject(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.voidputCachedObject(CmsObject cms, java.lang.String rootPath, java.lang.Object value)Puts an object into the cache.protected voiduncacheResource(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:CmsVfsCacheFlushes the caches.- Specified by:
flushin 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:CmsVfsCacheRemoves a cached resource from the cache.- Specified by:
uncacheResourcein classCmsVfsCache- Parameters:
resource- the resource- See Also:
CmsVfsCache.uncacheResource(org.opencms.file.CmsResource)
-
-