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 PropertiesClass<? extends PluginTypeInterface>booleanbooleanbooleandefault voidmerge(PluginInterface fragment) voidsetCasesUrl(String casesUrl) voidsetClassLoaderGroup(String group) voidsetDocumentationUrl(String documentationUrl) voidsetErrorHelpFile(String errorHelpFile) voidsetForumUrl(String forumUrl) voidsetImageFile(String imageFile) voidsetSuggestion(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
-