Package ghidra.app.services
Interface EclipseIntegrationService
public interface EclipseIntegrationService
Service that provides Eclipse-related functionality.
-
Method Summary
Modifier and TypeMethodDescriptionghidra.app.plugin.core.eclipse.EclipseConnection
connectToEclipse
(int port) Attempts to connect to Eclipse on the given port.Gets the Eclipse dropins directory.Gets the Eclipse executable file.Gets the Eclipse Integration options.Gets the Eclipse workspace directory.void
handleEclipseError
(String error, boolean askAboutOptions, Throwable t) Displays the given Eclipse related error message in an error dialog.boolean
Checks to see if a feature is installed in Eclipse.void
offerGhidraDevInstallation
(TaskMonitor monitor) Offers to install GhidraDev into Eclipse's dropins directory.
-
Method Details
-
getEclipseIntegrationOptions
ToolOptions getEclipseIntegrationOptions()Gets the Eclipse Integration options.- Returns:
- The Eclipse Integration options.
-
getEclipseExecutableFile
Gets the Eclipse executable file.- Returns:
- The Eclipse executable file.
- Throws:
FileNotFoundException
- if the executable file does not exist.
-
getEclipseDropinsDir
Gets the Eclipse dropins directory. If it doesn't exist, it will be created.- Returns:
- The Eclipse dropins directory.
- Throws:
FileNotFoundException
- if the dropins directory was not found and could not be created.
-
getEclipseWorkspaceDir
File getEclipseWorkspaceDir()Gets the Eclipse workspace directory. If it is defined, the directory may or may not exist. If it is undefined, Eclipse will be in control of selecting a workspace directory to use.- Returns:
- The Eclipse workspace directory. The directory may or may not exist. Could return null if the workspace directory is undefined.
-
isEclipseFeatureInstalled
Checks to see if a feature is installed in Eclipse.- Parameters:
filter
- A filename filter that matches the feature file to check.- Returns:
- True if the specified feature is installed.
- Throws:
FileNotFoundException
- if Eclipse is not installed.
-
connectToEclipse
ghidra.app.plugin.core.eclipse.EclipseConnection connectToEclipse(int port) Attempts to connect to Eclipse on the given port. This may result in Eclipse being launched. If the launch and/or connection fails, an error message will be displayed.- Parameters:
port
- The port to connect to.- Returns:
- The (possibly failed) connection. Check the status of the
EclipseConnection
for details on the connection.
-
offerGhidraDevInstallation
Offers to install GhidraDev into Eclipse's dropins directory.- Parameters:
monitor
- The task monitor used to cancel the installation.
-
handleEclipseError
Displays the given Eclipse related error message in an error dialog.- Parameters:
error
- The error message to display in a dialog.askAboutOptions
- True if we should ask the user if they want to be taken to the Eclipse options; otherwise, false.t
- An optional throwable to tie to the message.
-