org.electrocodeogram.cpc.merge.api.strategy
Interface ICloneObjectExtensionMerger


public interface ICloneObjectExtensionMerger

A special merge handler for ICloneObjectExtensions.
The merge is internally handled by the registered ICloneObjectExtensionMergeStrategys.

Author:
vw

Method Summary
 void merge(IReadableMergeTask mergeTask, IMergeResult mergeResult, ICloneObject localCloneObject, ICloneObject remoteCloneObject, ICloneObject baseCloneObject, ICloneObject mergedCloneObject)
          Merges the ICloneObjectExtension data of the given local, remote and base ICloneObjects.
 

Method Detail

merge

void merge(IReadableMergeTask mergeTask,
           IMergeResult mergeResult,
           ICloneObject localCloneObject,
           ICloneObject remoteCloneObject,
           ICloneObject baseCloneObject,
           ICloneObject mergedCloneObject)
           throws MergeException
Merges the ICloneObjectExtension data of the given local, remote and base ICloneObjects.
The given merged clone object is updated in place.

Parameters:
mergeTask - current merge task, may not be modified, never null.
mergeResult - current merge result, may not be in its final state, may not be modified, never null.
localCloneObject - former local clone object, may not be modified, never null.
remoteCloneObject - former remote clone object, may not be modified, never null.
baseCloneObject - optional base clone object, may not be modified, may be NULL.
mergedCloneObject - new merged clone object, may be modified, never null.
Throws:
MergeException