[
https://issues.apache.org/jira/browse/OAK-1110?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13802923#comment-13802923
]
Michael Dürig commented on OAK-1110:
------------------------------------
Good point, I'll have a look into this and see whether I can hook up the move
detection there.
> Make NodeStateDiff composable
> -----------------------------
>
> Key: OAK-1110
> URL: https://issues.apache.org/jira/browse/OAK-1110
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: core
> Reporter: Michael Dürig
> Attachments: OAK-1110.patch
>
>
> Currently it is not possible to warp a {{NodeStateDiff}} instance into
> another one for delegation. The problem is that recursion is done by the
> consumer of the {{childNodeChanged()}} call back which causes wrapped
> {{NodeStateDiff}} "to escape". To fix that I propose to separate the concerns
> of change notification from recursing into a subtree. For this we need an
> extra method {{createChildDiff}} on the {{NodeStateDiff}} interface:
> {code}
> /**
> * Create a {@code NodeStateDiff} for diffing the passed {@code before}
> and
> * {@code after} states. Returning {@code null} skips comparison for the
> sub
> * trees rooted at the passed states.
> *
> * @param name name of the child node
> * @param before before state of the child node
> * @param after after state of the child node
> * @return {@code NodeStateDiff} for the child node
> */
> @CheckForNull
> NodeStateDiff createChildDiff(String name, NodeState before, NodeState
> after);
> {code}
--
This message was sent by Atlassian JIRA
(v6.1#6144)