Package org.pentaho.di.core.plugins
Interface PluginInterface
- All Known Implementing Classes:
Plugin
,SupplementalPlugin
public interface PluginInterface
This interface describes the plugin itself, the IDs it listens too, what libraries (jar files) it uses, the names,
the i18n detailes, etc.
- Author:
- matt
-
Method Summary
Modifier and TypeMethodDescriptionString[]
getIds()
Class<?>
getName()
default Properties
Class<? extends PluginTypeInterface>
boolean
boolean
boolean
default void
merge
(PluginInterface fragment) void
setCasesUrl
(String casesUrl) void
setClassLoaderGroup
(String group) void
setDocumentationUrl
(String documentationUrl) void
setErrorHelpFile
(String errorHelpFile) void
setForumUrl
(String forumUrl) void
setImageFile
(String imageFile) void
setSuggestion
(String suggestion)
-
Method Details
-
getIds
String[] getIds()- Returns:
- All the possible IDs that this plugin corresponds with.
Multiple IDs are typically used when you migrate 2 different plugins into a single one with the same functionality.
It can also happen if you deprecate an older plugin and you want to have a new one provide compatibility for it.
-
getPluginType
Class<? extends PluginTypeInterface> getPluginType()- Returns:
- The type of plugin
-
getMainType
Class<?> getMainType()- Returns:
- The main class assigned to this Plugin.
-
getLibraries
- Returns:
- The libraries (jar file names) that are used by this plugin
-
getName
String getName()- Returns:
- The name of the plugin
-
getDescription
String getDescription()- Returns:
- The description of the plugin
-
getImageFile
String getImageFile()- Returns:
- The location of the image (icon) file for this plugin
-
setImageFile
- Parameters:
imageFile
- the location of the image (icon) file for this plugin
-
getCategory
String getCategory()- Returns:
- The category of this plugin or null if this is not applicable
-
isSeparateClassLoaderNeeded
boolean isSeparateClassLoaderNeeded()- Returns:
- True if a separate class loader is needed every time this class is instantiated
-
isNativePlugin
boolean isNativePlugin()- Returns:
- true if this is considered to be a standard native plugin.
-
getClassMap
- Returns:
- All the possible class names that can be loaded with this plugin, split up by type.
-
matches
- Parameters:
id
- the plugin id to match- Returns:
- true if one of the ids matches the given argument. Return false if it doesn't.
-
getErrorHelpFile
String getErrorHelpFile()- Returns:
- An optional location to a help file that the plugin can refer to in case there is a loading problem. This usually happens if a jar file is not installed correctly (class not found exceptions) etc.
-
setErrorHelpFile
- Parameters:
errorHelpFile
- the errorHelpFile to set
-
getPluginDirectory
URL getPluginDirectory() -
getDocumentationUrl
String getDocumentationUrl()- Returns:
- the documentationUrl
-
setDocumentationUrl
- Parameters:
documentationUrl
- the documentationUrl to set
-
getCasesUrl
String getCasesUrl()- Returns:
- The cases URL of the plugin
-
setCasesUrl
- Parameters:
casesUrl
- the cases URL to set for this plugin
-
getForumUrl
String getForumUrl()- Returns:
- the forum URL
-
setForumUrl
- Parameters:
forumUrl
- the forum URL to set
-
getClassLoaderGroup
String getClassLoaderGroup()- Returns:
- The group to which this class loader belongs. Returns null if the plugin does not belong to a group (the default)
-
setSuggestion
-
getSuggestion
String getSuggestion() -
setClassLoaderGroup
- Parameters:
group
- The group to which this class loader belongs. Set to null if the plugin does not belong to a group (the default)
-
merge
- Parameters:
fragment
- A plugin interface to merge with
-
getPluginProperties
- Returns:
- Plugin properties Returns a Properties object containing any properties in a plugin.properties file in the plugin directopry. The method will return null if the plugin.properties does not exist.
- Throws:
KettleException
-