Package org.pentaho.di.core.plugins
Interface PluginInterface
-
- All Known Implementing Classes:
Plugin,SupplementalPlugin
public interface PluginInterfaceThis 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
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description StringgetCasesUrl()StringgetCategory()StringgetClassLoaderGroup()Map<Class<?>,String>getClassMap()StringgetDescription()StringgetDocumentationUrl()StringgetErrorHelpFile()StringgetForumUrl()String[]getIds()StringgetImageFile()List<String>getLibraries()Class<?>getMainType()StringgetName()URLgetPluginDirectory()default PropertiesgetPluginProperties()Class<? extends PluginTypeInterface>getPluginType()StringgetSuggestion()booleanisNativePlugin()booleanisSeparateClassLoaderNeeded()booleanmatches(String id)default 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 Detail
-
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
List<String> 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
void setImageFile(String imageFile)
- 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
Map<Class<?>,String> getClassMap()
- Returns:
- All the possible class names that can be loaded with this plugin, split up by type.
-
matches
boolean matches(String id)
- 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
void setErrorHelpFile(String errorHelpFile)
- Parameters:
errorHelpFile- the errorHelpFile to set
-
getPluginDirectory
URL getPluginDirectory()
-
getDocumentationUrl
String getDocumentationUrl()
- Returns:
- the documentationUrl
-
setDocumentationUrl
void setDocumentationUrl(String documentationUrl)
- Parameters:
documentationUrl- the documentationUrl to set
-
getCasesUrl
String getCasesUrl()
- Returns:
- The cases URL of the plugin
-
setCasesUrl
void setCasesUrl(String casesUrl)
- Parameters:
casesUrl- the cases URL to set for this plugin
-
getForumUrl
String getForumUrl()
- Returns:
- the forum URL
-
setForumUrl
void setForumUrl(String forumUrl)
- 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
void setSuggestion(String suggestion)
-
getSuggestion
String getSuggestion()
-
setClassLoaderGroup
void setClassLoaderGroup(String group)
- 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
default void merge(PluginInterface fragment)
- Parameters:
fragment- A plugin interface to merge with
-
getPluginProperties
default Properties getPluginProperties() throws KettleException
- 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
-
-