Class WikiPageEvent
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
WikiPageRenameEvent
- Phase Boundary Events
- Those considered as "beginning-of-phase", and those as "end-of-phase" events (as designated by *_BEGIN and *_END), as generated by the WikiEngine. The phases include pre-save, post-save, pre-translate, and post-translate.
- In-Phase Events
- In-phase events are generated as specific events from the PageEventFilter (or elsewhere), on a per-listener basis. There may be many such events during a particular phase.
E.g., a typical event sequence for the pre-translate phase would be:
- PRE_TRANSLATE_BEGIN
- PRE_TRANSLATE
- PRE_TRANSLATE
- ...
- PRE_TRANSLATE_END
Notes
Page Requested and Delivered Events
These two events are fired once per page request, at the beginning and after delivery of the page (respectively). They are generated
by the WikiServletFilter
.
Page Lock and Unlock Events
Page lock and unlock events occur only once during an editing session, so there are no begin and end events. They are generated
by the PageManager
.
WikiPageEvents
Other WikiPageEvents include both phase boundary and in-phase events for saving, pre- and post-translating content.
These are very noisy event types, but are not fired unless a listener is available. They are generated by the
FilterManager
, PageEventFilter
, and potentially other
implementing classes.
Firing Order and Phase Boundaries
Note that due to the asynchronous nature of event processing, any threads spawned by such events will not necessarily have completed during their specific phase; we can assume only that no more events of that phase will be fired after its *_END event has been fired.
- Since:
- 2.4.20
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
Indicates a wiki page delete event (the beginning of a delete request).static final int
Indicates a wiki page deleted event (after the delete has been completed).static final int
Indicates a wiki page delivery event (the end of a request).static final int
Indicates a page lock event.static final int
Indicates a wiki page reindex event (a page was changed when requested to a provided)static final int
Indicates a wiki page request event (the start of a request).static final int
Indicates a page unlock event.static final int
Indicates a wiki post-save page event.static final int
Indicates the beginning of all wiki post-save page events.static final int
Indicates the end of all wiki post-save page events.static final int
Indicates a wiki post-translate page event.static final int
Indicates the beginning of all wiki post-translate page events.static final int
Indicates the end of all wiki post-translate page events.static final int
Indicates a wiki pre-save page event.static final int
Indicates the beginning of all wiki pre-save page events.static final int
Indicates the end of all wiki pre-save page events.static final int
Indicates a wiki pre-translate page event.static final int
Indicates the beginning of all wiki pre-translate page events.static final int
Indicates the end of all wiki pre-translate page events.Fields inherited from class java.util.EventObject
source
-
Constructor Summary
ConstructorsConstructorDescriptionWikiPageEvent
(Object src, int type, String pagename) Constructs an instance of this event. -
Method Summary
Modifier and TypeMethodDescriptionReturns a textual representation of the event type.Returns the Wiki page name associated with this event.Returns a human-readable description of the event type.static boolean
isValidType
(int type) Returns true if the int value is a WikiPageEvent type.Methods inherited from class org.apache.wiki.event.WikiEvent
getArg, getArgs, getSrc, getType, getWhen, setType, toString
Methods inherited from class java.util.EventObject
getSource
-
Field Details
-
PAGE_LOCK
Indicates a page lock event. This is based on events generated byPageManager
.- See Also:
-
PAGE_UNLOCK
Indicates a page unlock event. This is based on events generated byPageManager
.- See Also:
-
PRE_TRANSLATE_BEGIN
Indicates the beginning of all wiki pre-translate page events. This is based on events generated byFilterManager
.- See Also:
-
PRE_TRANSLATE
Indicates a wiki pre-translate page event. This is based on events generated byPageEventFilter
.- See Also:
-
PRE_TRANSLATE_END
Indicates the end of all wiki pre-translate page events. This is based on events generated byFilterManager
.- See Also:
-
POST_TRANSLATE_BEGIN
Indicates the beginning of all wiki post-translate page events. This is based on events generated byFilterManager
.- See Also:
-
POST_TRANSLATE
Indicates a wiki post-translate page event. This is based on events generated byPageEventFilter
.- See Also:
-
POST_TRANSLATE_END
Indicates the end of all wiki post-translate page events. This is based on events generated byFilterManager
.- See Also:
-
PRE_SAVE_BEGIN
Indicates the beginning of all wiki pre-save page events. This is based on events generated byFilterManager
.- See Also:
-
PRE_SAVE
Indicates a wiki pre-save page event. This is based on events generated byPageEventFilter
.- See Also:
-
PRE_SAVE_END
Indicates the end of all wiki pre-save page events. This is based on events generated byFilterManager
.- See Also:
-
POST_SAVE_BEGIN
Indicates the beginning of all wiki post-save page events. This is based on events generated byFilterManager
.- See Also:
-
POST_SAVE
Indicates a wiki post-save page event. This is based on events generated byPageEventFilter
.- See Also:
-
POST_SAVE_END
Indicates the end of all wiki post-save page events. This is based on events generated byFilterManager
.- See Also:
-
PAGE_REQUESTED
Indicates a wiki page request event (the start of a request). This is based on events generated byWikiServletFilter
.- See Also:
-
PAGE_DELIVERED
Indicates a wiki page delivery event (the end of a request). This is based on events generated byWikiServletFilter
.- See Also:
-
PAGE_DELETE_REQUEST
Indicates a wiki page delete event (the beginning of a delete request). This is based on events generated byWikiServletFilter
.- Since:
- 2.4.65
- See Also:
-
PAGE_DELETED
Indicates a wiki page deleted event (after the delete has been completed). This is based on events generated byWikiServletFilter
.- Since:
- 2.4.65
- See Also:
-
PAGE_REINDEX
Indicates a wiki page reindex event (a page was changed when requested to a provided)- See Also:
-
-
Constructor Details
-
WikiPageEvent
Constructs an instance of this event.- Parameters:
src
- the Object that is the source of the event.type
- the type of the event (see the enumerated int values defined inWikiEvent
).pagename
- the WikiPage being acted upon.
-
-
Method Details
-
getPageName
Returns the Wiki page name associated with this event. This may be null if unavailable.- Returns:
- the Wiki page name associated with this WikiEvent, or null.
-
isValidType
Returns true if the int value is a WikiPageEvent type. -
eventName
Returns a textual representation of the event type. -
getTypeDescription
Returns a human-readable description of the event type.- Overrides:
getTypeDescription
in classWikiEvent
- Returns:
- a String description of the type
-