The org.zkoss.zk.ui.event.EventThreadInit interface
Listener:
org.zkoss.zk.ui.event.EventThreadInit Interface
A listener could implement EventThreadInit to initialize an event processing thread, before an event is dispatched to it for processing.
Notice that it is useless unless the event processing threads are enabled (it is disabled by default).
If a listener implements this interface, an instance is created, and then the prepare method is called in the main thread (aka., the servlet thread), before processing an event. Then, the init method is called in the event processing thread.
If a developer wants to prevent an event from being processed, he can throw an exception in the prepare method or the init method.
A typical use of this feature is to implement auto-authentication. For example, JBoss required you to call SecurityAssociation.setPrincipal to grant permissions of a user to the event processing thread, as described in the Initialization Before Processing Each Event section, the Event Listening and Processing chapter.