public abstract class AbstractSubMergeExtender extends java.lang.Object implements ISubMergeExtender
Constructor and Description |
---|
AbstractSubMergeExtender() |
Modifier and Type | Method and Description |
---|---|
protected abstract java.lang.Object |
computeMergedResult(org.eclipse.compare.ITypedElement mergedElement)
Computes the merge result from mergedElement.
|
java.lang.Object |
computeSubfieldMergeResult(org.eclipse.compare.structuremergeviewer.ICompareInput input)
The extender is asked to compute and return the merged value from its own
ICompareInput object which is kept in the left or right ITypedElement.
|
org.eclipse.compare.structuremergeviewer.ICompareInput |
createCompareInput(ISubMergeDataHolder dataHolder,
org.eclipse.compare.CompareConfiguration config)
Creates the ICompareInput object that contains the changed data.
|
org.eclipse.compare.structuremergeviewer.ICompareInput |
createSwappedLeftRightCompareInput(org.eclipse.compare.structuremergeviewer.ICompareInput input)
Creates a new compare input object from the given object with left and
right side swapped.
|
protected abstract org.eclipse.compare.ITypedElement |
createTypedElement(java.lang.Object contributorData,
boolean editable)
Converts a contributorData object into ITypedElement.
|
protected void |
decorateCompareConfiguration(org.eclipse.compare.CompareConfiguration config)
hook method that allows subclass to override the default icons and labels
|
protected java.lang.Object |
getAncestorValue(ISubMergeDataHolder dataHolder)
Extracts the ancestor value from data holder.
|
java.lang.String |
getContentType()
Returns the content type id.
|
org.eclipse.compare.IViewerCreator |
getCustomViewerCreator()
If the merge viewer is NOT an Eclipse registered merge viewer, the
extender can provides its custom viewer creator via this interface.
|
protected java.lang.Object |
getLeftValue(ISubMergeDataHolder dataHolder)
Extracts the left value from data holder.
|
int |
getPriority()
Returns the extender's priority.
|
protected java.lang.Object |
getRightValue(ISubMergeDataHolder dataHolder)
Extracts the right value from data holder.
|
protected boolean |
hasRegisteredContentMergeViewer(org.eclipse.core.runtime.content.IContentType contentType) |
protected boolean |
hasRegisteredContentMergeViewer(java.lang.String fileExtension) |
boolean |
isShowSubMergeAutomatically(ISubMergeDataHolder dataHolder) |
void |
subMergeSessionOpened(org.eclipse.jface.viewers.Viewer structureViewer,
org.eclipse.jface.viewers.Viewer contentViewer,
ISubMergeDataHolder dataHolder)
This notification is call after the viewers are created.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
canMergeData, dispose, getDisplayContentTypeName, getIcon, subMergeSessionClosed
protected abstract java.lang.Object computeMergedResult(org.eclipse.compare.ITypedElement mergedElement)
mergedElement
- element used to compute the final merge result.protected abstract org.eclipse.compare.ITypedElement createTypedElement(java.lang.Object contributorData, boolean editable)
contributorData
- contributorData object used to create ITypeElementeditable
- determine whether the ITypedElement can be editable or notpublic java.lang.String getContentType()
ISubMergeExtender
getContentType
in interface ISubMergeExtender
ISubMergeExtender.getContentType()
public org.eclipse.compare.IViewerCreator getCustomViewerCreator()
ISubMergeExtender
getCustomViewerCreator
in interface ISubMergeExtender
ISubMergeExtender.getCustomViewerCreator()
public void subMergeSessionOpened(org.eclipse.jface.viewers.Viewer structureViewer, org.eclipse.jface.viewers.Viewer contentViewer, ISubMergeDataHolder dataHolder)
ISubMergeExtender
subMergeSessionOpened
in interface ISubMergeExtender
structureViewer
- The structure viewer that created during the sub merge
session.contentViewer
- The content viewer that created during the sub merge session.dataHolder
- The data object that contains the changed data.ISubMergeExtender.subMergeSessionOpened(org.eclipse.jface.viewers.Viewer,
org.eclipse.jface.viewers.Viewer,
com.ibm.xtools.comparemerge.ui.submerge.ISubMergeDataHolder)
public java.lang.Object computeSubfieldMergeResult(org.eclipse.compare.structuremergeviewer.ICompareInput input)
ISubMergeExtender
computeSubfieldMergeResult
in interface ISubMergeExtender
input
- -
The compare input object that created by this extenderISubMergeExtender.computeSubfieldMergeResult(org.eclipse.compare.structuremergeviewer.ICompareInput)
public org.eclipse.compare.structuremergeviewer.ICompareInput createCompareInput(ISubMergeDataHolder dataHolder, org.eclipse.compare.CompareConfiguration config)
ISubMergeExtender
createCompareInput
in interface ISubMergeExtender
dataHolder
- -
The data object that contains the changed data.config
- -
The compare configuration that is pass to the Compare Viewer.
The extender can override the default icons and labels for the
ancestor, left and right contributors.ISubMergeExtender.createCompareInput(com.ibm.xtools.comparemerge.ui.submerge.ISubMergeDataHolder,
org.eclipse.compare.CompareConfiguration)
protected java.lang.Object getAncestorValue(ISubMergeDataHolder dataHolder)
dataHolder
- the merge data holderprotected java.lang.Object getLeftValue(ISubMergeDataHolder dataHolder)
dataHolder
- the merge data holderprotected java.lang.Object getRightValue(ISubMergeDataHolder dataHolder)
dataHolder
- the merge data holderpublic org.eclipse.compare.structuremergeviewer.ICompareInput createSwappedLeftRightCompareInput(org.eclipse.compare.structuremergeviewer.ICompareInput input)
ISubMergeExtender
createSwappedLeftRightCompareInput
in interface ISubMergeExtender
input
- -
The original compare input objectISubMergeExtender.createSwappedLeftRightCompareInput(org.eclipse.compare.structuremergeviewer.ICompareInput)
protected void decorateCompareConfiguration(org.eclipse.compare.CompareConfiguration config)
config
- CompareConfiguration datapublic int getPriority()
public boolean isShowSubMergeAutomatically(ISubMergeDataHolder dataHolder)
protected boolean hasRegisteredContentMergeViewer(org.eclipse.core.runtime.content.IContentType contentType)
protected boolean hasRegisteredContentMergeViewer(java.lang.String fileExtension)