[jira] Created: (JCR-1672) Adding Event interface and isLocal()

View: New views
19 Messages — Rating Filter:   Alert me  

[jira] Created: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Adding Event interface and isLocal()
------------------------------------

                 Key: JCR-1672
                 URL: https://issues.apache.org/jira/browse/JCR-1672
             Project: Jackrabbit
          Issue Type: Improvement
          Components: jackrabbit-api
    Affects Versions: 1.4
            Reporter: Carsten Ziegeler


when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.

This is especially important if you want to do post processing of data
based on observation (the post processing should only be done by one instance in the cluster).

A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)

So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Commented: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


    [ https://issues.apache.org/jira/browse/JCR-1672?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12611362#action_12611362 ]

Tobias Bocanegra commented on JCR-1672:
---------------------------------------

i would rather add the isExternal() method to the interface. 'local' is already occupied by the listener registration and means that only local-events (i.e. this session) should be observed.

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Commented: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


    [ https://issues.apache.org/jira/browse/JCR-1672?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12611462#action_12611462 ]

Carsten Ziegeler commented on JCR-1672:
---------------------------------------

Yes, makes sense.

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Updated: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


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

Carsten Ziegeler updated JCR-1672:
----------------------------------

    Attachment: localeventlistener.patch

This adds the local event listener interface to jackrabbit

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>         Attachments: localeventlistener.patch
>
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Resolved: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


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

Marcel Reutegger resolved JCR-1672.
-----------------------------------

       Resolution: Fixed
    Fix Version/s: 1.5

Applied patch in revision: 677261

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api, jackrabbit-core
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>             Fix For: 1.5
>
>         Attachments: localeventlistener.patch
>
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Updated: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


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

Marcel Reutegger updated JCR-1672:
----------------------------------

    Component/s: jackrabbit-core

Also affects jackrabbit-core.

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api, jackrabbit-core
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>             Fix For: 1.5
>
>         Attachments: localeventlistener.patch
>
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


Re: [jira] Resolved: (JCR-1672) Adding Event interface and isLocal()

by Carsten Ziegeler :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks Marcel for applying the patch.

Is there any chance to get this into the 1.4.x branch as well?

Carsten

Marcel Reutegger (JIRA) wrote:

>      [ https://issues.apache.org/jira/browse/JCR-1672?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
>
> Marcel Reutegger resolved JCR-1672.
> -----------------------------------
>
>        Resolution: Fixed
>     Fix Version/s: 1.5
>
> Applied patch in revision: 677261
>
>> Adding Event interface and isLocal()
>> ------------------------------------
>>
>>                 Key: JCR-1672
>>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>>             Project: Jackrabbit
>>          Issue Type: Improvement
>>          Components: jackrabbit-api, jackrabbit-core
>>    Affects Versions: 1.4
>>            Reporter: Carsten Ziegeler
>>             Fix For: 1.5
>>
>>         Attachments: localeventlistener.patch
>>
>>
>> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
>> This is especially important if you want to do post processing of data
>> based on observation (the post processing should only be done by one instance in the cluster).
>> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
>> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?
>


--
Carsten Ziegeler
cziegeler@...

Re: [jira] Resolved: (JCR-1672) Adding Event interface and isLocal()

by Marcel Reutegger :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Carsten,

our policy is to not include enhancements in patch releases, though we did not
always follow that policy in the past.

I'd rather include this in the next minor release because it also affects the
jackrabbit api module.

regards
  marcel

Carsten Ziegeler wrote:

> Thanks Marcel for applying the patch.
>
> Is there any chance to get this into the 1.4.x branch as well?
>
> Carsten
>
> Marcel Reutegger (JIRA) wrote:
>>      [
>> https://issues.apache.org/jira/browse/JCR-1672?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel 
>> ]
>>
>> Marcel Reutegger resolved JCR-1672.
>> -----------------------------------
>>
>>        Resolution: Fixed
>>     Fix Version/s: 1.5
>>
>> Applied patch in revision: 677261
>>
>>> Adding Event interface and isLocal()
>>> ------------------------------------
>>>
>>>                 Key: JCR-1672
>>>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>>>             Project: Jackrabbit
>>>          Issue Type: Improvement
>>>          Components: jackrabbit-api, jackrabbit-core
>>>    Affects Versions: 1.4
>>>            Reporter: Carsten Ziegeler
>>>             Fix For: 1.5
>>>
>>>         Attachments: localeventlistener.patch
>>>
>>>
>>> when a repository cluster is used, it seems that a common problem
>>> many people have is to detect if an observation event is send because
>>> of changes on the local instance or a remote instance of the cluster.
>>> This is especially important if you want to do post processing of data
>>> based on observation (the post processing should only be done by one
>>> instance in the cluster).
>>> A current solution is to cast the jcr event object to the EventImpl
>>> of jackrabbit core which is obviously not a nice solution :)
>>> So what about adding an event interface to jackrabbit api which
>>> extends the jcr event interface and adds the isLocal() method?
>>
>
>


Re: [jira] Resolved: (JCR-1672) Adding Event interface and isLocal()

by Carsten Ziegeler :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Marcel Reutegger wrote:
> Hi Carsten,
>
> our policy is to not include enhancements in patch releases, though we
> did not always follow that policy in the past.
>
> I'd rather include this in the next minor release because it also
> affects the jackrabbit api module.
>
Ok, thanks Marcel

Carsten

--
Carsten Ziegeler
cziegeler@...

Re: [jira] Resolved: (JCR-1672) Adding Event interface and isLocal()

by Jukka Zitting :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

On Mon, Jul 21, 2008 at 7:11 PM, Carsten Ziegeler <cziegeler@...> wrote:
> Marcel Reutegger wrote:
>> our policy is to not include enhancements in patch releases, though we did
>> not always follow that policy in the past.
>>
>> I'd rather include this in the next minor release because it also affects
>> the jackrabbit api module.
>>
> Ok, thanks Marcel

Is there time pressure on getting this feature out in a release? I'm
back from vacation and was thinking of pushing Jackrabbit 1.5 ahead.

BR,

Jukka Zitting

Re: [jira] Resolved: (JCR-1672) Adding Event interface and isLocal()

by Carsten Ziegeler :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Jukka Zitting wrote:

> Hi,
>
> On Mon, Jul 21, 2008 at 7:11 PM, Carsten Ziegeler <cziegeler@...> wrote:
>> Marcel Reutegger wrote:
>>> our policy is to not include enhancements in patch releases, though we did
>>> not always follow that policy in the past.
>>>
>>> I'd rather include this in the next minor release because it also affects
>>> the jackrabbit api module.
>>>
>> Ok, thanks Marcel
>
> Is there time pressure on getting this feature out in a release? I'm
> back from vacation and was thinking of pushing Jackrabbit 1.5 ahead.
>
No real time pressure - but the sooner the better :) I prefer using
offical API over casting to a private impl, but that works as a
workaround :)

Carsten

--
Carsten Ziegeler
cziegeler@...

[jira] Reopened: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


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

Carsten Ziegeler reopened JCR-1672:
-----------------------------------


As discussed in the mailing list, it's better to have the isExternal() method on an extension of the event interface.

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api, jackrabbit-core
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>             Fix For: 1.5
>
>         Attachments: localeventlistener.patch
>
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Updated: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


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

Carsten Ziegeler updated JCR-1672:
----------------------------------

    Attachment: jackrabbit.patch

New patch adding the ExtendedEvent interface and the isExternal() method.

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api, jackrabbit-core
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>             Fix For: 1.5
>
>         Attachments: jackrabbit.patch, localeventlistener.patch
>
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Commented: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


    [ https://issues.apache.org/jira/browse/JCR-1672?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12616876#action_12616876 ]

Jukka Zitting commented on JCR-1672:
------------------------------------

Thanks! Patch applied in revision 679735.

In revision 679741 I renamed the interface to JackrabbitEvent for consistency with the previous JackrabbitSomething naming pattern for Jackrabbit-specific extensions.

About the naming of the method, IMHO isExternal() is still semantically a bit too close (the logical opposite) to the "local" flag in listener registration. How about isClusterLocal()?

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api, jackrabbit-core
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>             Fix For: 1.5
>
>         Attachments: jackrabbit.patch, localeventlistener.patch
>
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Commented: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


    [ https://issues.apache.org/jira/browse/JCR-1672?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12616877#action_12616877 ]

Jukka Zitting commented on JCR-1672:
------------------------------------

Also, I reverted the original patch (revision 677261, the LocalEventListener interface) in revision 679750.

We can reintroduce the interface once we can leverage the extra information it gives to the observation manager, but until that it's better to avoid having two different mechanisms for the same functionality.

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api, jackrabbit-core
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>             Fix For: 1.5
>
>         Attachments: jackrabbit.patch, localeventlistener.patch
>
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Commented: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


    [ https://issues.apache.org/jira/browse/JCR-1672?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12617374#action_12617374 ]

Carsten Ziegeler commented on JCR-1672:
---------------------------------------

I'm not sure what the best wording might be, but I think isExternal is "ok" - for me the opposite of isLocal would be isRemote :)

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api, jackrabbit-core
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>             Fix For: 1.5
>
>         Attachments: jackrabbit.patch, localeventlistener.patch
>
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Commented: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


    [ https://issues.apache.org/jira/browse/JCR-1672?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12617388#action_12617388 ]

Tobias Bocanegra commented on JCR-1672:
---------------------------------------

IMO isExternal() is a good choice, since it not entirely tied to a cluster setup. It just specifies that the
underlying data was changed but the modification did not go through 'this' repository. theoretically one could modify the values in the DB directly and then send such an event (which is of course discouraged :-).

> Adding Event interface and isLocal()
> ------------------------------------
>
>                 Key: JCR-1672
>                 URL: https://issues.apache.org/jira/browse/JCR-1672
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-api, jackrabbit-core
>    Affects Versions: 1.4
>            Reporter: Carsten Ziegeler
>             Fix For: 1.5
>
>         Attachments: jackrabbit.patch, localeventlistener.patch
>
>
> when a repository cluster is used, it seems that a common problem many people have is to detect if an observation event is send because of changes on the local instance or a remote instance of the cluster.
> This is especially important if you want to do post processing of data
> based on observation (the post processing should only be done by one instance in the cluster).
> A current solution is to cast the jcr event object to the EventImpl of jackrabbit core which is obviously not a nice solution :)
> So what about adding an event interface to jackrabbit api which extends the jcr event interface and adds the isLocal() method?

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


[jira] Commented: (JCR-1672) Adding Event interface and isLocal()

by JIRA jira@apache.org :: Rate this Message: