Interface I_CmsEventListener
- All Known Subinterfaces:
I_CmsModuleAction
- All Known Implementing Classes:
A_CmsModuleAction
,CmsADECache
,CmsDriverManager
,CmsExplorerTypeAccessFlushListener
,CmsFlexCache
,CmsGlobalConfigurationCacheEventHandler
,CmsGwtServiceContext
,CmsIconUtil
,CmsImageLoader
,CmsJspLoader
,CmsLocaleManager
,CmsMemoryObjectCache
,CmsSearchManager
,CmsSearchManager.CmsSearchOfflineHandler
,CmsSiteManagerImpl
,CmsStaticExportManager
,CmsVfsBundleManager
,CmsVfsCache
,CmsVfsMemoryObjectCache
,CmsWorkplaceManager
,CmsXmlEntityResolver
In order to receive system events, your class must register with the OpenCms event mechanism. This can be done in the constructor of a class like this:
org.opencms.main.OpenCms.addCmsEventListener(this);A typical implementation might look like this:
public void cmsEvent(org.opencms.main.CmsEvent event) { switch (event.getType()) { case org.opencms.main.I_CmsEventListener.EVENT_PUBLISH_PROJECT: case org.opencms.main.I_CmsEventListener.EVENT_CLEAR_CACHES: // do something break; case org.opencms.main.I_CmsEventListener.EVENT_LOGIN_USER: // do something else break; } }
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
Event "a project is to published" (but has not yet been published).static final int
Event "all caches must be cleared".static final int
Event "clear all offline caches".static final int
Event "clear all online caches".static final int
Event "all caches related to user and groups must be cleared".static final int
Event "the FlexCache must be cleared".static final int
Event "delete all JSP pages in the "real" file system (so they will be rebuild next time the JSP is requested)".static final int
Event "full static export".static final int
Event "group modified".static final int
Event "user has logged in".static final int
Event "ou modified".static final int
Event "a project was modified" (e.g.static final int
Event "a property definition has been created".static final int
Event "a property definition has been modified".static final int
Event "a single property (and so the resource itself, too) have been modified".static final int
Event "a project was published".static final int
Event "rebuild search indexes".static final int
Event "reindex" in an offline project.static final int
Event "reindex" in the online project.static final int
Event "all properties (and so the resource itself, too) have been modified".static final int
static final int
static final int
static final int
Event "a single resource has been modified".static final int
static final int
Event "a list of resources and their properties have been modified".static final int
Event "a bunch of resources has been modified".static final int
Event "a sitemap has been modified".static final int
Event "update exported resources".static final int
Event "user modified".static final String
Key name for passing a change int in the data map - see theCHANGED_XXX
constants inCmsDriverManager
.static final String
Key name for passing a database context in the data map.static final String
Key name for passing a group ID.static final String
Key name for passing a group name.static final String
Key name for passing a comma separated list of search index names in the data map.static final String
Key name for passing a flag, indicating if we are in the online project.static final String
Key name for passing an OU ID.static final String
Key name for passing a group name.static final String
Key name for passing a project id in the data map.static final String
Key name for passing a publish history id in the data map.static final String
Key name for passing a publish list in the data map.static final String
Key name for passing a flag, indicating if related resources should be taken into account in the data map.static final String
Key name for passing a report in the data map.static final String
Key name for passing aCmsResource
in the data map.static final String
Key name for passing a List ofCmsResource
in the data map.static final String
Key name for skipping searchindexing.static final String
Key name for passing a user action.static final String
Key name for passing user changes flag.static final String
Key name for passing an user ID.static final String
Key name for passing a user name.static final Integer
Marker for "all events".static final String
Value to mark modification events from sibling creation.static final String
Value for the "group modified" action.static final String
Value for the "group modified" action.static final String
Value for the "group modified" action.static final String
Value for the "ou modified" action.static final String
Value for the "ou modified" action.static final String
Value for the "user modified" action.static final String
Value for the "user modified" action.static final String
Value for the "user modified" action.static final String
Value for the "user modified" action.static final String
Value for the "user modified" action.static final String
Value for the "user modified" action.static final String
Value for the "user modified" action. -
Method Summary
-
Field Details
-
EVENT_BEFORE_PUBLISH_PROJECT
Event "a project is to published" (but has not yet been published).Event data:
: aKEY_REPORT
to print output messages toI_CmsReport
: aKEY_PUBLISHLIST
that contains the resources that are to be publishedCmsPublishList
: the ID of the project that is to be publishedKEY_PROJECTID
: the current users database contextKEY_DBCONTEXT
-
EVENT_CLEAR_CACHES
Event "all caches must be cleared".Not thrown by the core classes, but might be used in modules.
- See Also:
-
EVENT_CLEAR_OFFLINE_CACHES
Event "clear all offline caches".Event data: none
- See Also:
-
EVENT_CLEAR_ONLINE_CACHES
Event "clear all online caches".Event data: none
- See Also:
-
EVENT_CLEAR_PRINCIPAL_CACHES
Event "all caches related to user and groups must be cleared".Not thrown by the core classes, but might be used in modules.
- See Also:
-
EVENT_FLEX_CACHE_CLEAR
Event "the FlexCache must be cleared".This is thrown on the "FlexCache Administration" page if you press one ot the "Clear cache" buttons, or if you use the
_flex=clearcache
request parameter.- See Also:
-
EVENT_FLEX_PURGE_JSP_REPOSITORY
Event "delete all JSP pages in the "real" file system (so they will be rebuild next time the JSP is requested)".This is thrown on the "FlexCache Administration" page if you press the button "Purge JSP repository", or if you use the
_flex=purge
request parameter.- See Also:
-
EVENT_FULLSTATIC_EXPORT
Event "full static export".This is thrown in
CmsStaticExportManager
. Event data:- key "purge": the boolean value to purge the export folders first
: aKEY_REPORT
to print output messages toI_CmsReport
- See Also:
-
EVENT_GROUP_MODIFIED
Event "group modified".Includes create, write and delete group.
Event data:
- key "id": the uuid of the modified group
- key "groupname": the name of the modified group
- key "useraction": the name of the action to do on the replicated server
- createGroup
- writeGroup
- deleteGroup
- See Also:
-
EVENT_LOGIN_USER
Event "user has logged in".Event data:
- key "data" (mandatory): the user who was logged in
-
EVENT_OU_MODIFIED
Event "ou modified".Includes create OU and delete OU.
Event data:
- key "id": the uuid of the modified ou
- key "ouname": the name of the modified ou
- key "useraction": the name of the action to do on the replicated server
- createOu
- deleteOu
- See Also:
-
EVENT_PROJECT_MODIFIED
Event "a project was modified" (e.g. a project has been deleted, or the project resources have been changed).Event data:
- key "project" (mandatory): the deleted CmsProject
- See Also:
-
EVENT_PROPERTY_DEFINITION_CREATED
Event "a property definition has been created".Event data:
- key "propertyDefinition" (mandatory): the modified property definition
- See Also:
-
EVENT_PROPERTY_DEFINITION_MODIFIED
Event "a property definition has been modified".Event data:
- key "propertyDefinition" (mandatory): the modified property definition
- See Also:
-
EVENT_PROPERTY_MODIFIED
Event "a single property (and so the resource itself, too) have been modified".Event data:
- key "resource" (mandatory): the CmsResource that has the modified property attached
- key "property" (mandatory): the modified property
- See Also:
-
EVENT_PUBLISH_PROJECT
Event "a project was published".Event data:
: aKEY_REPORT
to print output messages toI_CmsReport
: the ID of the publish task in the publish historyKEY_PUBLISHID
: the ID of the project that has been publishedKEY_PROJECTID
: the current users database contextKEY_DBCONTEXT
-
EVENT_REBUILD_SEARCHINDEXES
Event "rebuild search indexes".Event data:
: aKEY_REPORT
to print output messages toI_CmsReport
: a comma separated list of names of the search indexes to rebuild, empty for all indexesKEY_INDEX_NAMES
- See Also:
-
EVENT_REINDEX_ONLINE
Event "reindex" in the online project.Note we split offline/online in two events since only for the online project, the event has to be forwarded in a cluster.
Event data:
: a list ofKEY_RESOURCES
CmsResource
.
: aKEY_REPORT
to print output messages toI_CmsReport
: id of the user triggering the action. Used to show a message on success/failure.KEY_USER_ID
: flag, indicating if related resources should be reindexed as well.KEY_REINDEX_RELATED
- See Also:
-
EVENT_REINDEX_OFFLINE
Event "reindex" in an offline project.Note we split offline/online in two events since only for the online project, the event has to be forwarded in a cluster.
Event data:
: a list ofKEY_RESOURCES
CmsResource
.
: the id of the project re-indexing is triggered in.KEY_PROJECTID
: aKEY_REPORT
to print output messages toI_CmsReport
: id of the user triggering the action. Used to show a message on success/failure.KEY_USER_ID
: flag, indicating if related resources should be reindexed as well.KEY_REINDEX_RELATED
- See Also:
-
EVENT_RESOURCE_AND_PROPERTIES_MODIFIED
Event "all properties (and so the resource itself, too) have been modified".Event data:
- key "resource" (mandatory): the CmsResource that has the modified properties attached
- See Also:
-
EVENT_RESOURCE_COPIED
-
EVENT_RESOURCE_CREATED
-
EVENT_RESOURCE_DELETED
-
EVENT_RESOURCE_MODIFIED
Event "a single resource has been modified".Event data:
- key "resource" (mandatory): the modified CmsResource
- See Also:
-
EVENT_RESOURCE_MOVED
-
EVENT_RESOURCES_AND_PROPERTIES_MODIFIED
Event "a list of resources and their properties have been modified".Event data:
- key "resources" (mandatory): a List of modified CmsResources
- See Also:
-
EVENT_RESOURCES_MODIFIED
Event "a bunch of resources has been modified".Event data:
- key "resources" (mandatory): a List of modified CmsResources
- See Also:
-
EVENT_SITEMAP_CHANGED
Event "a sitemap has been modified".Event data:
- key "resources" (mandatory): a List of modified sitemap entries identified by their root path
- See Also:
-
EVENT_UPDATE_EXPORTS
Event "update exported resources".This event updates all export points, deletes the content of the "export" folder, purges the JSP repository, and clears all caches.
This event is for internal use.
- See Also:
-
EVENT_USER_MODIFIED
Event "user modified".Event data:
- key "id": the uuid of the modified user
- key "username": the name of the modified user
- key "groupname": the name of the group which is effected
- key "useraction": the name of the action to do on the replicated server
- createUser
- writeUser
- deleteUser
- setOu
- addUserToGroup
- removeUserFromGroup
- resetPassword
- See Also:
-
KEY_CHANGE
Key name for passing a change int in the data map - see theCHANGED_XXX
constants inCmsDriverManager
.- See Also:
-
KEY_DBCONTEXT
Key name for passing a database context in the data map.- See Also:
-
KEY_GROUP_ID
Key name for passing a group ID.- See Also:
-
KEY_GROUP_NAME
Key name for passing a group name.- See Also:
-
KEY_INDEX_NAMES
Key name for passing a comma separated list of search index names in the data map.- See Also:
-
KEY_IS_ONLINE
Key name for passing a flag, indicating if we are in the online project.- See Also:
-
KEY_OU_ID
Key name for passing an OU ID.- See Also:
-
KEY_OU_NAME
Key name for passing a group name.- See Also:
-
KEY_PROJECTID
Key name for passing a project id in the data map.- See Also:
-
KEY_PUBLISHID
Key name for passing a publish history id in the data map.- See Also:
-
KEY_PUBLISHLIST
Key name for passing a publish list in the data map.- See Also:
-
KEY_REINDEX_RELATED
Key name for passing a flag, indicating if related resources should be taken into account in the data map.- See Also:
-
KEY_REPORT
Key name for passing a report in the data map.- See Also:
-
KEY_RESOURCE
Key name for passing aCmsResource
in the data map.- See Also:
-
KEY_RESOURCES
Key name for passing a List ofCmsResource
in the data map.- See Also:
-
KEY_SKIPINDEX
Key name for skipping searchindexing.- See Also:
-
KEY_USER_ACTION
Key name for passing a user action.- See Also:
-
KEY_USER_CHANGES
Key name for passing user changes flag.- See Also:
-
KEY_USER_ID
Key name for passing an user ID.- See Also:
-
KEY_USER_NAME
Key name for passing a user name.- See Also:
-
LISTENERS_FOR_ALL_EVENTS
Marker for "all events". -
VALUE_GROUP_MODIFIED_ACTION_CREATE
Value for the "group modified" action.- See Also:
-
VALUE_GROUP_MODIFIED_ACTION_DELETE
Value for the "group modified" action.- See Also:
-
VALUE_GROUP_MODIFIED_ACTION_WRITE
Value for the "group modified" action.- See Also:
-
VALUE_OU_MODIFIED_ACTION_CREATE
Value for the "ou modified" action.- See Also:
-
VALUE_OU_MODIFIED_ACTION_DELETE
Value for the "ou modified" action.- See Also:
-
VALUE_USER_MODIFIED_ACTION_ADD_USER_TO_GROUP
Value for the "user modified" action.- See Also:
-
VALUE_USER_MODIFIED_ACTION_CREATE_USER
Value for the "user modified" action.- See Also:
-
VALUE_USER_MODIFIED_ACTION_DELETE_USER
Value for the "user modified" action.- See Also:
-
VALUE_USER_MODIFIED_ACTION_REMOVE_USER_FROM_GROUP
Value for the "user modified" action.- See Also:
-
VALUE_USER_MODIFIED_ACTION_RESET_PASSWORD
Value for the "user modified" action.- See Also:
-
VALUE_USER_MODIFIED_ACTION_SET_OU
Value for the "user modified" action.- See Also:
-
VALUE_USER_MODIFIED_ACTION_WRITE_USER
Value for the "user modified" action.- See Also:
-
VALUE_CREATE_SIBLING
Value to mark modification events from sibling creation.- See Also:
-
-
Method Details
-
cmsEvent
Acknowledge the occurrence of the specified event, implement this method to check for CmsEvents in your class.- Parameters:
event
- CmsEvent that has occurred
-