Package ghidra.framework.plugintool.util
Class PluginUtils
java.lang.Object
ghidra.framework.plugintool.util.PluginUtils
Utility class for plugin-related methods.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
assertUniquePluginName
(Class<? extends Plugin> pluginClass) Ensures the specified Plugin has a unique name among all Plugin classes found in the current ClassSearcher's reach.Returns the Class for a Plugin, by class name.getDefaultProviderForServiceClass
(Class<?> serviceClass) Returns the Plugin Class that is specified as being the defaultProvider for a Service, or null if no default provider is specified.static String
getPluginNameFromClass
(Class<? extends Plugin> pluginClass) Returns the name of a Plugin based on its class.static <T extends Plugin>
TinstantiatePlugin
(Class<T> pluginClass, PluginTool tool) Returns a new instance of aPlugin
.
-
Constructor Details
-
PluginUtils
public PluginUtils()
-
-
Method Details
-
instantiatePlugin
public static <T extends Plugin> T instantiatePlugin(Class<T> pluginClass, PluginTool tool) throws PluginException Returns a new instance of aPlugin
.- Parameters:
pluginClass
- Specific Plugin Classtool
- ThePluginTool
that is the parent of the new Plugin- Returns:
- a new Plugin instance, never NULL.
- Throws:
PluginException
- if problem constructing the Plugin instance.
-
forName
Returns the Class for a Plugin, by class name.- Parameters:
pluginClassName
- String class name- Returns:
- Class that is a Plugin, never null.
- Throws:
PluginException
- if specified class does not exist or is not a Plugin.
-
getDefaultProviderForServiceClass
Returns the Plugin Class that is specified as being the defaultProvider for a Service, or null if no default provider is specified.- Parameters:
serviceClass
- Service interface class- Returns:
- Plugin class that provides the specified service
-
getPluginNameFromClass
Returns the name of a Plugin based on its class.- Parameters:
pluginClass
- Class to get name from- Returns:
- String name, based on Class's getSimpleName()
-
assertUniquePluginName
public static void assertUniquePluginName(Class<? extends Plugin> pluginClass) throws PluginException Ensures the specified Plugin has a unique name among all Plugin classes found in the current ClassSearcher's reach.- Parameters:
pluginClass
- Class- Throws:
PluginException
- throws exception if Plugin class is not uniquely named
-