jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting" <jukka.zitt...@gmail.com>
Subject Re: Node Removal Observation
Date Fri, 20 Oct 2006 06:52:09 GMT
Hi,

On 10/19/06, Kraemer, Fabian <F.Kraemer@esolut.de> wrote:
> I wrote a small test to understand the event handling in the repository.
> When I came to the removal of a Node with an attached property I
> expected an event bundle of Event.NODE_REMOVED and
> Event.PROPERTY_REMOVED.
>
> The specification says the following:
> "When a node is removed, a NODE_REMOVED event must be generated
> for the node on which the remove was called. Additionally, an
> implementation should also generate a NODE_REMOVE or
> PROPERTY_REMOVE (as appropriate) for each item in the removed
> subtree."
>
> So the behaviour seems correct to me, because it says SHOULD and not
> MUST. Can someone please explain to me why an implementation should pass
> on to collect this useful data? It doesn't seem to me that this would
> cause a significant performance loss and/or programming effort?

Hmm, I'm not too into the observation implementation to know the
details. I agree with you on the SHOULD part, we probably should do
that. Can you make a simple test case for this and file it in the
issue tracker as either a bug report or an improvement request?

> Beside this question I'm wondering about why the specification says sth.
> about NODE_REMOVE, I can't find this property in the Event Interface? Is
> this just a typo (in this case it doesn't make sense) or am I missing
> sth?

It should be NODE_REMOVED, referring to the removal of any child nodes
within the removed subtree (a Node.remove() always removes the entire
subtree).

BR,

Jukka Zitting

Mime
View raw message