Package ghidra.app.merge
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 TypeMethodDescriptionvoidapply()Notification that the apply button was hit.voidcancel()Notification that the merge process was canceled.Get the description of what this MergeResolver does.getName()Get the name of this MergeResolver.String[][]Gets identifiers for the merge phases handled by this MergeResolver.voidmerge(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
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 returnnew String[][] {new String[] {"Phase A"}}
So for a phase with 2 sub-phases returnnew String[][] { new String[] {"Phase A"}, new String[] {"Phase A", "Sub-Phase 1}, new String[] {"Phase A", "Sub-Phase 2} }.- Returns:
 - an array of phases.
 
 
 -