jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting (JIRA)" <j...@apache.org>
Subject [jira] Reopened: (JCR-1441) Support workspace event listeners that will be created/registered on initialization time
Date Wed, 05 Mar 2008 14:19:40 GMT

     [ https://issues.apache.org/jira/browse/JCR-1441?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Jukka Zitting reopened JCR-1441:

I'm a bit worried about this approach as it IMHO binds much too tightly to the repository
implementation. Reopening for discussing alternatives.


* Couldn't we achieve this with something like an ObservationServlet (in jackrabbit-jcr-servlet)
that is started (in web.xml of jackrabbit-webapp) right after the repository and that uses
it's own configuration for setting up observers.

* If we need explicit workspace opened/closed events to avoid starting the observation sessions
before someone actually accesses the workspace (or the workspace is created!), then it would
IMHO be better to add and use a Jackrabbit-specific RepositoryListener interface with event
methods like workspaceOpened() and workspaceClosed().

* The audit logger could be a normal JCR observation listener (in jackrabbit-jcr-commons).

> Support workspace event listeners that will be created/registered on initialization time
> ----------------------------------------------------------------------------------------
>                 Key: JCR-1441
>                 URL: https://issues.apache.org/jira/browse/JCR-1441
>             Project: Jackrabbit
>          Issue Type: New Feature
>          Components: jackrabbit-core
>    Affects Versions: core 1.4.1
>            Reporter: Dominique Pfister
>            Assignee: Dominique Pfister
> Add an <EventListener> section in workspace.xml (or the <Workspace> section
of repository.xml), containing custom javax.jcr.observation.EventListener implementations
that will be created and registered when the workspace is initialized.
> The DTD for this section might look as follows:
> <!ELEMENT EventListener (param*)>
> <!ATTLIST EventListener class        CDATA #REQUIRED
>                         eventTypes   CDATA #IMPLIED
>                         absPath      CDATA #IMPLIED
>                         isDeep       CDATA #IMPLIED
>                         uuid         CDATA #IMPLIED
>                         nodeTypeName CDATA #IMPLIED
>                         noLocal      CDATA #IMPLIED>
> This would allow creating an audit logger that will log all write operations on a workspace.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message