Class EMFCompareEditingDomain

    • Method Detail

      • create

        public static ICompareEditingDomain create​(Notifier left,
                                                   Notifier right,
                                                   Notifier ancestor)
        Creates a new compare editing domain on the given notifier with an appropriate ICompareCommandStack set up on it.
        Parameters:
        left - the left notifier. Should not be null.
        right - the right notifier. Should not be null.
        ancestor - the ancestor notifier. May be null.
        Returns:
        a new compare editing domain on the given notifier.
      • create

        public static ICompareEditingDomain create​(Notifier left,
                                                   Notifier right,
                                                   Notifier ancestor,
                                                   CommandStack commandStack)
        Equivalent to create(left, right, ancestor, commandStack, null).
        Parameters:
        left - the left notifier. Should not be null.
        right - the right notifier. Should not be null.
        ancestor - the ancestor notifier. May be null.
        commandStack - a command stack to which merge command will be delegated to.
        Returns:
        a newly created compare editing domain.
      • create

        public static ICompareEditingDomain create​(Notifier left,
                                                   Notifier right,
                                                   Notifier ancestor,
                                                   CommandStack leftCommandStack,
                                                   CommandStack rightCommandStack)
        Creates a new compare editing domain on the given notifier with an appropriate ICompareCommandStack set up on it.
        Parameters:
        left - the left notifier. Should not be null.
        right - the right notifier. Should not be null.
        ancestor - the ancestor notifier. May be null.
        leftCommandStack - a command stack to which merge to left command will be delegated to.
        rightCommandStack - a command stack to which merge to irght command will be delegated to.
        Returns:
        a newly created compare editing domain.
      • dispose

        public void dispose()
        Specified by:
        dispose in interface IDisposable
        See Also:
        org.eclipse.emf.compare.domain.ICompareEditingDomain#dispose()
      • createCopyCommand

        public Command createCopyCommand​(List<? extends Diff> differences,
                                         boolean leftToRight,
                                         IMerger.Registry mergerRegistry)
        Creates a new command that will merge the given differences in from right to left or left to right by using the mergers defined in the given merger registry.
        Specified by:
        createCopyCommand in interface ICompareEditingDomain
        Parameters:
        differences - the differences to merge.
        leftToRight - whether the merge has to be merge from left to right or right to left.
        mergerRegistry - the merger registry to query to get the appropriate mergers for each difference to be merged.
        Returns:
        the created command.
        Since:
        3.0
        See Also:
        org.eclipse.emf.compare.domain.ICompareEditingDomain#createCopyCommand(org.eclipse.emf.compare.Diff, boolean, org.eclipse.emf.compare.merge.IMerger.Registry)
      • createCopyAllNonConflictingCommand

        public ICompareCopyCommand createCopyAllNonConflictingCommand​(Comparison comparison,
                                                                      boolean leftToRight,
                                                                      IMerger.Registry mergerRegistry,
                                                                      IMergeAllNonConflictingRunnable runnable)
        Creates a command that will merge all non-conflicting differences in the given direction.

        A "non-conflicting" difference is any difference that is not in a real conflict with another and that does not, directly or indirectly, depend on the merge of a difference that is in conflict itself.

        Note that only the differences originating from the "source" side of the chosen merge direction will be considered.

        Parameters:
        comparison - The comparison which differences to merge.
        leftToRight - The direction in which we should merge the differences.
        mergerRegistry - The registry to query for specific mergers for each difference.
        runnable - the runnable to execute for the actual merge operation.
        Returns:
        The copy command, ready for use.
        Since:
        4.1