Package generic.application
Class GenericApplicationLayout
java.lang.Object
utility.application.ApplicationLayout
generic.application.GenericApplicationLayout
A low-level implementation of
ApplicationLayout
that is suitable for basic applications.
This class makes use of the Module
system to find application components at
runtime.-
Field Summary
Fields inherited from class utility.application.ApplicationLayout
applicationInstallationDir, applicationProperties, applicationRootDirs, extensionArchiveDir, extensionInstallationDirs, modules, patchDir, userCacheDir, userSettingsDir, userTempDir
-
Constructor Summary
ConstructorDescriptionGenericApplicationLayout
(ApplicationProperties applicationProperties) Constructs a new application layout object with the given set of application properties.GenericApplicationLayout
(String name, String version) Constructs a new application layout object with the given name and version.GenericApplicationLayout
(Collection<ResourceFile> applicationRootDirs, ApplicationProperties applicationProperties) Constructs a new application layout object with the given set of application properties. -
Method Summary
Modifier and TypeMethodDescriptionprotected Collection
<ResourceFile> static Collection
<ResourceFile> Get the default list of Application directories.Methods inherited from class utility.application.ApplicationLayout
getApplicationInstallationDir, getApplicationProperties, getApplicationRootDirs, getExtensionArchiveDir, getExtensionInstallationDirs, getModules, getPatchDir, getUserCacheDir, getUserSettingsDir, getUserTempDir, inSingleJarMode
-
Constructor Details
-
GenericApplicationLayout
Constructs a new application layout object with the given name and version.- Parameters:
name
- The name of the application.version
- The version of the application.- Throws:
IOException
- if there was a problem getting a user directory.
-
GenericApplicationLayout
Constructs a new application layout object with the given set of application properties. The default Ghidra application root directory(s) will be used.- Parameters:
applicationProperties
- The properties object that will be read system properties.- Throws:
IOException
- if there was a problem getting a user directory.
-
GenericApplicationLayout
public GenericApplicationLayout(Collection<ResourceFile> applicationRootDirs, ApplicationProperties applicationProperties) throws IOException Constructs a new application layout object with the given set of application properties.- Parameters:
applicationRootDirs
- list of application root directories which should be used to identify modules and resources. The first entry will be treated as the installation root.applicationProperties
- The properties object that will be read system properties.- Throws:
IOException
- if there was a problem getting a user directory.
-
-
Method Details
-
getAdditionalApplicationRootDirs
-
findModules
-
getDefaultApplicationRootDirs
Get the default list of Application directories. In repo-based development mode this includes the root Ghidra directory within each repo. When not in development mode, the requirement is that the current working directory correspond to the installation root. The first entry will be the primary root in both cases.- Returns:
- root directories
-