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
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description String
getCasesUrl()
String
getCategory()
String
getClassLoaderGroup()
Map<Class<?>,String>
getClassMap()
String
getDescription()
String
getDocumentationUrl()
String
getErrorHelpFile()
String
getForumUrl()
String[]
getIds()
String
getImageFile()
List<String>
getLibraries()
Class<?>
getMainType()
String
getName()
URL
getPluginDirectory()
default Properties
getPluginProperties()
Class<? extends PluginTypeInterface>
getPluginType()
String
getSuggestion()
boolean
isNativePlugin()
boolean
isSeparateClassLoaderNeeded()
boolean
matches(String id)
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 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
-
-