Interface MergeResolver

All Known Implementing Classes:
DataTypeMergeManager, ExternalProgramMerger, FunctionTagMerger, ListingMergeManager, MemoryMergeManager, ProgramContextMergeManager, ProgramTreeMergeManager, PropertyListMergeManager

public interface MergeResolver
Interface for resolving domain object merge conflicts.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Notification that the apply button was hit.
    void
    Notification that the merge process was canceled.
    Get the description of what this MergeResolver does.
    Get the name of this MergeResolver.
    String[][]
    Gets identifiers for the merge phases handled by this MergeResolver.
    void
    merge(TaskMonitor monitor)
    Perform the merge process.
  • Method Details

    • getName

      String getName()
      Get the name of this MergeResolver.
    • getDescription

      String getDescription()
      Get the description of what this MergeResolver does.
    • apply

      void apply()
      Notification that the apply button was hit.
    • cancel

      void cancel()
      Notification that the merge process was canceled.
    • merge

      void merge(TaskMonitor monitor) throws Exception
      Perform the merge process.
      Parameters:
      monitor - monitor that allows the user to cancel the merge operation
      Throws:
      Exception - if the merge encounters an error and the merge process should not continue.
    • getPhases

      String[][] getPhases()
      Gets identifiers for the merge phases handled by this MergeResolver. If the merge has no sub-phases then return an array with a single string array. Each inner String array indicates a path for a single merge phase. Each outer array element represents a phase whose progress we wish to indicate.
      Examples:
      So for a simple phase which has no sub-phases return new String[][] {new String[] {"Phase A"}}
      So for a phase with 2 sub-phases return new String[][] { new String[] {"Phase A"}, new String[] {"Phase A", "Sub-Phase 1}, new String[] {"Phase A", "Sub-Phase 2} } .
      Returns:
      an array of phases.