Class MergeContext


  • public class MergeContext
    extends Object
    A context to store all information needed on merge process.
    • Field Detail

      • comparisonContext

        public final ComparisonContext comparisonContext
        The comparison context.
      • mergeSession

        public final IMergeSession mergeSession
        The merge session.
      • topParents

        public final AbstractComparedEmfObjects<?> topParents
        The triple of top EObjects being merged related to the top node.
      • customMergeAvailable

        public final boolean customMergeAvailable
        The custom merge available flag.
    • Constructor Detail

      • MergeContext

        public MergeContext​(ComparisonContext comparisonContext,
                            IMergeSession mergeSession,
                            TopComparisonNode topNode,
                            AbstractComparedEmfObjects<?> topParents)
        Creates context instance.
        Parameters:
        comparisonContext - the comparison context, cannot be null
        mergeSession - the merge session, cannot be null
        topNode - the top node being merged, cannot be null
        topParents - the triple of top EObjects, can be null for non-model entities
      • MergeContext

        public MergeContext​(MergeContext mergeContext,
                            boolean customMergeAvailable)
        Creates context instance based on given context.
        Parameters:
        mergeContext - the base context, cannot be null.
        customMergeAvailable - the custom merge available flag.
    • Method Detail

      • getMergeBmTransaction

        public IBmTransaction getMergeBmTransaction()
        Gets the merge BM transaction.
        Returns:
        The merge transaction, cannot be null.
      • isAddedFullyFromOther

        public boolean isAddedFullyFromOther()
        Tells whether the top node from this context is added fully from the other side. This is an experimental feature, intended for internal use only.
        Returns:
        true if the top node is added fully from the other side, false otherwise
      • setAddedFullyFromOther

        public void setAddedFullyFromOther​(boolean addedFullyFromOther)
        Sets whether the top node from this context is added fully from the other side. This is an experimental feature, intended for internal use only.
        Parameters:
        addedFullyFromOther - true if the top node is added fully from the other side