Hi,
On 10/19/06, Kraemer, Fabian <[EMAIL PROTECTED]> 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