Class DefaultThreeWayConflictHandler
java.lang.Object
org.apache.jackrabbit.oak.plugins.commit.DefaultThreeWayConflictHandler
- All Implemented Interfaces:
ThreeWayConflictHandler
- Direct Known Subclasses:
JcrLastModifiedConflictHandler
This implementation of a
ThreeWayConflictHandler always returns the
same resolution. It can be used to implement default behaviour or as a base
class for more specialised implementations.-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.jackrabbit.oak.spi.commit.ThreeWayConflictHandler
ThreeWayConflictHandler.Resolution -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ThreeWayConflictHandlerAConflictHandlerwhich always returnThreeWayConflictHandler.Resolution.OURS.static final ThreeWayConflictHandlerAConflictHandlerwhich always returnThreeWayConflictHandler.Resolution.THEIRS. -
Constructor Summary
ConstructorsConstructorDescriptionCreate a newConflictHandlerwhich always returnsresolution. -
Method Summary
Modifier and TypeMethodDescription@NotNull ThreeWayConflictHandler.ResolutionaddExistingNode(@NotNull NodeBuilder parent, @NotNull String name, @NotNull NodeState ours, @NotNull NodeState theirs) The nodeourshas been added toparentwhich conflicts with nodetheirswhich has been added in the persistence store.@NotNull ThreeWayConflictHandler.ResolutionaddExistingProperty(@NotNull NodeBuilder parent, @NotNull PropertyState ours, @NotNull PropertyState theirs) The propertyourshas been added toparentwhich conflicts with propertytheirswhich has been added in the persistence store.@NotNull ThreeWayConflictHandler.ResolutionchangeChangedProperty(@NotNull NodeBuilder parent, @NotNull PropertyState ours, @NotNull PropertyState theirs, @NotNull PropertyState base) The propertyourshas been changed inparentwhile it was also changed to a different value (theirs) in the persistence store.@NotNull ThreeWayConflictHandler.ResolutionchangeDeletedNode(@NotNull NodeBuilder parent, @NotNull String name, @NotNull NodeState ours, @NotNull NodeState base) The nodeourshas been changed inparentwhile it was removed in the persistence store.@NotNull ThreeWayConflictHandler.ResolutionchangeDeletedProperty(@NotNull NodeBuilder parent, @NotNull PropertyState ours, @NotNull PropertyState base) The propertyourshas been changed inparentwhile it was removed in the persistence store.@NotNull ThreeWayConflictHandler.ResolutiondeleteChangedNode(@NotNull NodeBuilder parent, @NotNull String name, @NotNull NodeState theirs, @NotNull NodeState base) The nodetheirschanged in the persistence store while it has been deleted locally.@NotNull ThreeWayConflictHandler.ResolutiondeleteChangedProperty(@NotNull NodeBuilder parent, @NotNull PropertyState theirs, @NotNull PropertyState base) The propertytheirschanged in the persistence store while it has been deleted locally.@NotNull ThreeWayConflictHandler.ResolutiondeleteDeletedNode(@NotNull NodeBuilder parent, @NotNull String name, @NotNull NodeState base) The nodenamehas been removed inparentwhile it was also removed in the persistence store.@NotNull ThreeWayConflictHandler.ResolutiondeleteDeletedProperty(@NotNull NodeBuilder parent, @NotNull PropertyState base) The propertyourshas been removed inparentwhile it was also removed in the persistence store.
-
Field Details
-
OURS
AConflictHandlerwhich always returnThreeWayConflictHandler.Resolution.OURS. -
THEIRS
AConflictHandlerwhich always returnThreeWayConflictHandler.Resolution.THEIRS.
-
-
Constructor Details
-
DefaultThreeWayConflictHandler
Create a newConflictHandlerwhich always returnsresolution.- Parameters:
resolution- the resolution to return from all methods of thisConflictHandlerinstance.
-
-
Method Details
-
addExistingProperty
@NotNull public @NotNull ThreeWayConflictHandler.Resolution addExistingProperty(@NotNull @NotNull NodeBuilder parent, @NotNull @NotNull PropertyState ours, @NotNull @NotNull PropertyState theirs) Description copied from interface:ThreeWayConflictHandlerThe propertyourshas been added toparentwhich conflicts with propertytheirswhich has been added in the persistence store.- Specified by:
addExistingPropertyin interfaceThreeWayConflictHandler- Parameters:
parent- root of the conflictours- our version of the propertytheirs- their version of the property- Returns:
ThreeWayConflictHandler.Resolutionof the conflict
-
changeDeletedProperty
@NotNull public @NotNull ThreeWayConflictHandler.Resolution changeDeletedProperty(@NotNull @NotNull NodeBuilder parent, @NotNull @NotNull PropertyState ours, @NotNull @NotNull PropertyState base) Description copied from interface:ThreeWayConflictHandlerThe propertyourshas been changed inparentwhile it was removed in the persistence store.- Specified by:
changeDeletedPropertyin interfaceThreeWayConflictHandler- Parameters:
parent- root of the conflictours- our version of the propertybase- the base version of the property- Returns:
ThreeWayConflictHandler.Resolutionof the conflict
-
changeChangedProperty
@NotNull public @NotNull ThreeWayConflictHandler.Resolution changeChangedProperty(@NotNull @NotNull NodeBuilder parent, @NotNull @NotNull PropertyState ours, @NotNull @NotNull PropertyState theirs, @NotNull @NotNull PropertyState base) Description copied from interface:ThreeWayConflictHandlerThe propertyourshas been changed inparentwhile it was also changed to a different value (theirs) in the persistence store.- Specified by:
changeChangedPropertyin interfaceThreeWayConflictHandler- Parameters:
parent- root of the conflictours- our version of the propertytheirs- their version of the propertybase- the base version of the property- Returns:
ThreeWayConflictHandler.Resolutionof the conflict
-
deleteDeletedProperty
@NotNull public @NotNull ThreeWayConflictHandler.Resolution deleteDeletedProperty(@NotNull @NotNull NodeBuilder parent, @NotNull @NotNull PropertyState base) Description copied from interface:ThreeWayConflictHandlerThe propertyourshas been removed inparentwhile it was also removed in the persistence store.- Specified by:
deleteDeletedPropertyin interfaceThreeWayConflictHandler- Parameters:
parent- root of the conflictbase- the base version of the property- Returns:
ThreeWayConflictHandler.Resolutionof the conflict
-
deleteChangedProperty
@NotNull public @NotNull ThreeWayConflictHandler.Resolution deleteChangedProperty(@NotNull @NotNull NodeBuilder parent, @NotNull @NotNull PropertyState theirs, @NotNull @NotNull PropertyState base) Description copied from interface:ThreeWayConflictHandlerThe propertytheirschanged in the persistence store while it has been deleted locally.- Specified by:
deleteChangedPropertyin interfaceThreeWayConflictHandler- Parameters:
parent- root of the conflicttheirs- their version of the propertybase- the base version of the property- Returns:
ThreeWayConflictHandler.Resolutionof the conflict
-
addExistingNode
@NotNull public @NotNull ThreeWayConflictHandler.Resolution addExistingNode(@NotNull @NotNull NodeBuilder parent, @NotNull @NotNull String name, @NotNull @NotNull NodeState ours, @NotNull @NotNull NodeState theirs) Description copied from interface:ThreeWayConflictHandlerThe nodeourshas been added toparentwhich conflicts with nodetheirswhich has been added in the persistence store.- Specified by:
addExistingNodein interfaceThreeWayConflictHandler- Parameters:
parent- root of the conflictname- name of the nodeours- our version of the nodetheirs- their version of the node- Returns:
ThreeWayConflictHandler.Resolutionof the conflict
-
changeDeletedNode
@NotNull public @NotNull ThreeWayConflictHandler.Resolution changeDeletedNode(@NotNull @NotNull NodeBuilder parent, @NotNull @NotNull String name, @NotNull @NotNull NodeState ours, @NotNull @NotNull NodeState base) Description copied from interface:ThreeWayConflictHandlerThe nodeourshas been changed inparentwhile it was removed in the persistence store.- Specified by:
changeDeletedNodein interfaceThreeWayConflictHandler- Parameters:
parent- root of the conflictname- name of the nodeours- our version of the nodebase- the base version of the node- Returns:
ThreeWayConflictHandler.Resolutionof the conflict
-
deleteChangedNode
@NotNull public @NotNull ThreeWayConflictHandler.Resolution deleteChangedNode(@NotNull @NotNull NodeBuilder parent, @NotNull @NotNull String name, @NotNull @NotNull NodeState theirs, @NotNull @NotNull NodeState base) Description copied from interface:ThreeWayConflictHandlerThe nodetheirschanged in the persistence store while it has been deleted locally.- Specified by:
deleteChangedNodein interfaceThreeWayConflictHandler- Parameters:
parent- root of the conflictname- name of the nodetheirs- their version of the nodebase- the base version of the node- Returns:
ThreeWayConflictHandler.Resolutionof the conflict
-
deleteDeletedNode
@NotNull public @NotNull ThreeWayConflictHandler.Resolution deleteDeletedNode(@NotNull @NotNull NodeBuilder parent, @NotNull @NotNull String name, @NotNull @NotNull NodeState base) Description copied from interface:ThreeWayConflictHandlerThe nodenamehas been removed inparentwhile it was also removed in the persistence store.- Specified by:
deleteDeletedNodein interfaceThreeWayConflictHandler- Parameters:
parent- root of the conflictname- name of the nodebase- the base version of the node- Returns:
ThreeWayConflictHandler.Resolutionof the conflict
-