Package ghidra.app.merge
Class DataTypeArchiveMergeManagerPlugin
- java.lang.Object
-
- ghidra.framework.plugintool.Plugin
-
- ghidra.app.merge.MergeManagerPlugin
-
- ghidra.app.merge.DataTypeArchiveMergeManagerPlugin
-
- All Implemented Interfaces:
ProgramaticUseOnly
,DomainObjectListener
,PluginEventListener
,ServiceListener
,ExtensionPoint
,java.util.EventListener
public class DataTypeArchiveMergeManagerPlugin extends MergeManagerPlugin
Plugin that provides a merge component provider for data type archives.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface ghidra.util.classfinder.ExtensionPoint
ExtensionPoint.Exclude, ExtensionPoint.Util
-
-
Field Summary
-
Fields inherited from class ghidra.app.merge.MergeManagerPlugin
currentDomainObject, mergeManager, provider
-
Fields inherited from class ghidra.framework.plugintool.Plugin
name, pluginDescription, tool
-
-
Constructor Summary
Constructors Constructor Description DataTypeArchiveMergeManagerPlugin(PluginTool tool, DataTypeArchiveMergeManager mergeManager, DataTypeArchive dataTypeArchive)
Constructor for plugin that handles multi-user merge of programs.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
closeAllPrograms(boolean ignoreChanges)
boolean
closeProgram()
boolean
closeProgram(Program program, boolean ignoreChanges)
ghidra.app.merge.MergeManagerProvider
createProvider()
Creates the provider that will be displayed in the merge tool.protected void
dispose()
Tells a plugin that it is no longer needed.DataTypeArchive[]
getAllOpenDataTypeArchives()
static java.lang.String
getCategory()
DataTypeArchive
getCurrentDataTypeArchive()
static java.lang.String
getDescription()
static java.lang.String
getDescriptiveName()
Program
getProgram(Address addr)
int
getSearchPriority(Program p)
boolean
isVisible(Program program)
Program
openProgram(DomainFile domainFile)
Program
openProgram(DomainFile df, int version)
Program
openProgram(DomainFile domainFile, int version, int state)
void
openProgram(Program program)
void
openProgram(Program program, boolean current)
void
openProgram(Program program, int state)
void
processEvent(PluginEvent event)
Method called to process a plugin event.void
releaseProgram(Program program, java.lang.Object persistentOwner)
void
setCurrentProgram(Program p)
boolean
setPersistentOwner(Program program, java.lang.Object owner)
void
setSearchPriority(Program p, int priority)
-
Methods inherited from class ghidra.app.merge.MergeManagerPlugin
canClose, closeAllDomainObjects, closeDomainObject, closeDomainObject, domainObjectChanged, getAllOpenDomainObjects, getCurrentDomainObject, getSearchPriority, isVisible, openDomainObject, openDomainObject, openDomainObject, openDomainObject, openDomainObject, openDomainObject, releaseDomainObject, setCurrentDomainObject, setPersistentOwner, setSearchPriority
-
Methods inherited from class ghidra.framework.plugintool.Plugin
acceptData, canCloseDomainObject, cleanup, close, dataStateRestoreCompleted, dependsUpon, deregisterService, equals, eventSent, firePluginEvent, getData, getMissingRequiredServices, getName, getPluginDescription, getPluginName, getServicesRequired, getSupportedDataTypes, getTool, getTransientState, getUndoRedoState, hashCode, hasMissingRequiredService, hasUnsaveData, init, isDisposed, prepareToSave, readConfigState, readDataState, registerDynamicEventConsumed, registerDynamicServiceProvided, registerEventConsumed, registerEventProduced, registerServiceProvided, registerServiceUsed, restoreTransientState, restoreUndoRedoState, saveData, serviceAdded, serviceRemoved, writeConfigState, writeDataState
-
-
-
-
Constructor Detail
-
DataTypeArchiveMergeManagerPlugin
public DataTypeArchiveMergeManagerPlugin(PluginTool tool, DataTypeArchiveMergeManager mergeManager, DataTypeArchive dataTypeArchive)
Constructor for plugin that handles multi-user merge of programs.- Parameters:
tool
- the tool with the active program to be mergedmergeManager
- the merge manager that will control the merge processprogram
- the current program
-
-
Method Detail
-
createProvider
public ghidra.app.merge.MergeManagerProvider createProvider()
Description copied from class:MergeManagerPlugin
Creates the provider that will be displayed in the merge tool. This shows the merge progress to the user and lets the user resolve conflicts. Any class that extends this plugin must provide its own MergeManagerProvider here that will be shown to the user for the merge.- Specified by:
createProvider
in classMergeManagerPlugin
- Returns:
- the merge provider associated with this plugin.
-
processEvent
public void processEvent(PluginEvent event)
Description copied from class:Plugin
Method called to process a plugin event. Plugins should override this method if the plugin processes PluginEvents;- Specified by:
processEvent
in classMergeManagerPlugin
- Parameters:
event
- plugin to process
-
dispose
protected void dispose()
Description copied from class:Plugin
Tells a plugin that it is no longer needed. The plugin should release any resources that it has. All actions, components, services will automatically be cleaned up.- Overrides:
dispose
in classMergeManagerPlugin
-
getDescription
public static java.lang.String getDescription()
-
getDescriptiveName
public static java.lang.String getDescriptiveName()
-
getCategory
public static java.lang.String getCategory()
-
closeAllPrograms
public boolean closeAllPrograms(boolean ignoreChanges)
-
closeProgram
public boolean closeProgram()
-
closeProgram
public boolean closeProgram(Program program, boolean ignoreChanges)
-
getAllOpenDataTypeArchives
public DataTypeArchive[] getAllOpenDataTypeArchives()
-
getCurrentDataTypeArchive
public DataTypeArchive getCurrentDataTypeArchive()
-
getSearchPriority
public int getSearchPriority(Program p)
-
isVisible
public boolean isVisible(Program program)
-
openProgram
public Program openProgram(DomainFile domainFile)
-
openProgram
public Program openProgram(DomainFile df, int version)
-
openProgram
public Program openProgram(DomainFile domainFile, int version, int state)
-
openProgram
public void openProgram(Program program)
-
openProgram
public void openProgram(Program program, boolean current)
-
openProgram
public void openProgram(Program program, int state)
-
releaseProgram
public void releaseProgram(Program program, java.lang.Object persistentOwner)
-
setCurrentProgram
public void setCurrentProgram(Program p)
-
setPersistentOwner
public boolean setPersistentOwner(Program program, java.lang.Object owner)
-
setSearchPriority
public void setSearchPriority(Program p, int priority)
-
-