| 1 |
<?xml version="1.0"?> |
|---|
| 2 |
|
|---|
| 3 |
<component name="org.nuxeo.ecm.core.listener.CoreEventListenerService"> |
|---|
| 4 |
|
|---|
| 5 |
<documentation> |
|---|
| 6 |
Service that deals with synchronous core events and listeners. |
|---|
| 7 |
|
|---|
| 8 |
@version 1.0 |
|---|
| 9 |
@author <a href="mailto:ja@nuxeo.com">Julien Anguenot</a> |
|---|
| 10 |
</documentation> |
|---|
| 11 |
|
|---|
| 12 |
<require>org.nuxeo.ecm.core.repository.RepositoryService</require> |
|---|
| 13 |
|
|---|
| 14 |
<implementation |
|---|
| 15 |
class="org.nuxeo.ecm.core.listener.impl.CoreEventListenerServiceImpl" /> |
|---|
| 16 |
|
|---|
| 17 |
<extension-point name="listener"> |
|---|
| 18 |
<documentation> |
|---|
| 19 |
Extension point for registering event listeners. |
|---|
| 20 |
|
|---|
| 21 |
<p> |
|---|
| 22 |
An event listener has the following properties: |
|---|
| 23 |
|
|---|
| 24 |
- name: identifier for this listener. It must be unique within the |
|---|
| 25 |
application. |
|---|
| 26 |
|
|---|
| 27 |
- class: the class to use for this event listener, see below for |
|---|
| 28 |
implementation requirements. |
|---|
| 29 |
|
|---|
| 30 |
- order: the order in which the listener will be notified of an event. |
|---|
| 31 |
This may be useful if different listeners have to react in a specified |
|---|
| 32 |
order. If no order is given, order 0 is assumed. Negative orders are |
|---|
| 33 |
accepted. Listeners can share the same order, but the notification order |
|---|
| 34 |
will not be reliable. |
|---|
| 35 |
|
|---|
| 36 |
- eventId: event ids this listener processes. Multiple values can be |
|---|
| 37 |
defined. If no eventId attributes are defined, the listener is notified |
|---|
| 38 |
for all events. It is then responsible for filtering events it has to |
|---|
| 39 |
process in its notifyEvent method. |
|---|
| 40 |
</p> |
|---|
| 41 |
|
|---|
| 42 |
<p> |
|---|
| 43 |
Event listeners must implement the |
|---|
| 44 |
org.nuxeo.ecm.core.listener.EventListener interface and will be notified |
|---|
| 45 |
on each call back : public void notifyEvent(CoreEvent coreEvent); Core |
|---|
| 46 |
Event listeners are synchronous. Thus they should be implemented to |
|---|
| 47 |
rather perform non time consuming heavy computing that would decrease |
|---|
| 48 |
core txn performances. |
|---|
| 49 |
</p> |
|---|
| 50 |
|
|---|
| 51 |
<p> |
|---|
| 52 |
Nuxeo core defines a default set of event ids that are defined in : |
|---|
| 53 |
org.nuxeo.ecm.core.api.event.DocumentEventTypes. Though, you can extend |
|---|
| 54 |
them and define your own event ids and listeners reacting on them. |
|---|
| 55 |
</p> |
|---|
| 56 |
|
|---|
| 57 |
</documentation> |
|---|
| 58 |
<object |
|---|
| 59 |
class="org.nuxeo.ecm.core.listener.extensions.CoreEventListenerDescriptor" /> |
|---|
| 60 |
</extension-point> |
|---|
| 61 |
|
|---|
| 62 |
<!-- Disbaled for now since it is not used --> |
|---|
| 63 |
<!-- |
|---|
| 64 |
<extension target="org.nuxeo.ecm.core.listener.CoreEventListenerService" |
|---|
| 65 |
point="listener"> |
|---|
| 66 |
<documentation> |
|---|
| 67 |
Core event listener that forwards core events to the nuxeo runtime event |
|---|
| 68 |
service. |
|---|
| 69 |
|
|---|
| 70 |
Order is set to 10 so that forwarding is done before most of other |
|---|
| 71 |
listener operations. |
|---|
| 72 |
</documentation> |
|---|
| 73 |
|
|---|
| 74 |
<listener name="nxruntimelistener" |
|---|
| 75 |
class="org.nuxeo.ecm.core.listener.impl.NXRuntimeEventListener" |
|---|
| 76 |
order="10" /> |
|---|
| 77 |
</extension> |
|---|
| 78 |
--> |
|---|
| 79 |
|
|---|
| 80 |
</component> |
|---|