Class WikiPageEvent

All Implemented Interfaces:
Serializable
Direct Known Subclasses:
WikiPageRenameEvent

public class WikiPageEvent
extends WikiEvent
WikiPageEvent indicates a change in the state or processing of a WikiPage. There are basically two types of page events:
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:

  1. PRE_TRANSLATE_BEGIN
  2. PRE_TRANSLATE
  3. PRE_TRANSLATE
  4. ...
  5. 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:
WikiEvent, Serialized Form