Class ChildOrderConflictHandler
- java.lang.Object
-
- org.apache.jackrabbit.oak.plugins.commit.ChildOrderConflictHandler
-
- All Implemented Interfaces:
PartialConflictHandler
public class ChildOrderConflictHandler extends Object implements PartialConflictHandler
This conflict handler instance takes care of properly merging conflicts occurring by concurrent reorder operations.- See Also:
TreeConstants.OAK_CHILD_ORDER
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.jackrabbit.oak.spi.commit.PartialConflictHandler
PartialConflictHandler.Resolution
-
-
Constructor Summary
Constructors Constructor Description ChildOrderConflictHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PartialConflictHandler.Resolution
addExistingNode(NodeBuilder parent, String name, NodeState ours, NodeState theirs)
The nodeours
has been added toparent
which conflicts with nodetheirs
which has been added in the persistence store.PartialConflictHandler.Resolution
addExistingProperty(NodeBuilder parent, PropertyState ours, PropertyState theirs)
The propertyours
has been added toparent
which conflicts with propertytheirs
which has been added in the persistence store.PartialConflictHandler.Resolution
changeChangedProperty(NodeBuilder parent, PropertyState ours, PropertyState theirs)
The propertyours
has been changed inparent
while it was also changed to a different value (theirs
) in the persistence store.PartialConflictHandler.Resolution
changeDeletedNode(NodeBuilder parent, String name, NodeState ours)
The nodeours
has been changed inparent
while it was removed in the persistence store.PartialConflictHandler.Resolution
changeDeletedProperty(NodeBuilder parent, PropertyState ours)
The propertyours
has been changed inparent
while it was removed in the persistence store.PartialConflictHandler.Resolution
deleteChangedNode(NodeBuilder parent, String name, NodeState theirs)
The nodetheirs
changed in the persistence store while it has been deleted locally.PartialConflictHandler.Resolution
deleteChangedProperty(NodeBuilder parent, PropertyState theirs)
The propertytheirs
changed in the persistence store while it has been deleted locally.PartialConflictHandler.Resolution
deleteDeletedNode(NodeBuilder parent, String name)
The nodename
has been removed inparent
while it was also removed in the persistence store.PartialConflictHandler.Resolution
deleteDeletedProperty(NodeBuilder parent, PropertyState ours)
The propertyours
has been removed inparent
while it was also removed in the persistence store.
-
-
-
Method Detail
-
addExistingProperty
public PartialConflictHandler.Resolution addExistingProperty(NodeBuilder parent, PropertyState ours, PropertyState theirs)
Description copied from interface:PartialConflictHandler
The propertyours
has been added toparent
which conflicts with propertytheirs
which has been added in the persistence store.- Specified by:
addExistingProperty
in interfacePartialConflictHandler
- Parameters:
parent
- root of the conflictours
- our version of the propertytheirs
- their version of the property- Returns:
PartialConflictHandler.Resolution
of the conflict ornull
-
changeDeletedProperty
public PartialConflictHandler.Resolution changeDeletedProperty(NodeBuilder parent, PropertyState ours)
Description copied from interface:PartialConflictHandler
The propertyours
has been changed inparent
while it was removed in the persistence store.- Specified by:
changeDeletedProperty
in interfacePartialConflictHandler
- Parameters:
parent
- root of the conflictours
- our version of the property- Returns:
PartialConflictHandler.Resolution
of the conflict ornull
-
changeChangedProperty
public PartialConflictHandler.Resolution changeChangedProperty(NodeBuilder parent, PropertyState ours, PropertyState theirs)
Description copied from interface:PartialConflictHandler
The propertyours
has been changed inparent
while it was also changed to a different value (theirs
) in the persistence store.- Specified by:
changeChangedProperty
in interfacePartialConflictHandler
- Parameters:
parent
- root of the conflictours
- our version of the propertytheirs
- their version of the property- Returns:
PartialConflictHandler.Resolution
of the conflict ornull
-
deleteDeletedProperty
public PartialConflictHandler.Resolution deleteDeletedProperty(NodeBuilder parent, PropertyState ours)
Description copied from interface:PartialConflictHandler
The propertyours
has been removed inparent
while it was also removed in the persistence store.- Specified by:
deleteDeletedProperty
in interfacePartialConflictHandler
- Parameters:
parent
- root of the conflictours
- our version of the property- Returns:
PartialConflictHandler.Resolution
of the conflict ornull
-
deleteChangedProperty
public PartialConflictHandler.Resolution deleteChangedProperty(NodeBuilder parent, PropertyState theirs)
Description copied from interface:PartialConflictHandler
The propertytheirs
changed in the persistence store while it has been deleted locally.- Specified by:
deleteChangedProperty
in interfacePartialConflictHandler
- Parameters:
parent
- root of the conflicttheirs
- their version of the property- Returns:
PartialConflictHandler.Resolution
of the conflict ornull
-
addExistingNode
public PartialConflictHandler.Resolution addExistingNode(NodeBuilder parent, String name, NodeState ours, NodeState theirs)
Description copied from interface:PartialConflictHandler
The nodeours
has been added toparent
which conflicts with nodetheirs
which has been added in the persistence store.- Specified by:
addExistingNode
in interfacePartialConflictHandler
- Parameters:
parent
- root of the conflictname
- name of the nodeours
- our version of the nodetheirs
- their version of the node- Returns:
PartialConflictHandler.Resolution
of the conflict ornull
-
changeDeletedNode
public PartialConflictHandler.Resolution changeDeletedNode(NodeBuilder parent, String name, NodeState ours)
Description copied from interface:PartialConflictHandler
The nodeours
has been changed inparent
while it was removed in the persistence store.- Specified by:
changeDeletedNode
in interfacePartialConflictHandler
- Parameters:
parent
- root of the conflictname
- name of the nodeours
- our version of the node- Returns:
PartialConflictHandler.Resolution
of the conflict ornull
-
deleteChangedNode
public PartialConflictHandler.Resolution deleteChangedNode(NodeBuilder parent, String name, NodeState theirs)
Description copied from interface:PartialConflictHandler
The nodetheirs
changed in the persistence store while it has been deleted locally.- Specified by:
deleteChangedNode
in interfacePartialConflictHandler
- Parameters:
parent
- root of the conflictname
- name of the nodetheirs
- their version of the node- Returns:
PartialConflictHandler.Resolution
of the conflict ornull
-
deleteDeletedNode
public PartialConflictHandler.Resolution deleteDeletedNode(NodeBuilder parent, String name)
Description copied from interface:PartialConflictHandler
The nodename
has been removed inparent
while it was also removed in the persistence store.- Specified by:
deleteDeletedNode
in interfacePartialConflictHandler
- Parameters:
parent
- root of the conflictname
- name of the node- Returns:
PartialConflictHandler.Resolution
of the conflict ornull
-
-