Plugin Base Abstract Class and Interface

Abstract Class

org.joget.plugin.base.ExtDefaultPlugin

  • Under wflow-plugin-base module
  • Extended org.joget.plugin.base.DefaultPlugin
  • Implemented org.joget.plugin.base.Plugin and org.osgi.framework.BundleActivator
  • A base abstract class that must be extended by every plugins

Method Detail

Abstract Methods
getName

public java.lang.String getName()
Return a unique name for the plugin. You can override an existing System plugin by providing the same name as the System plugin.

getVersion

public java.lang.String getVersion()
Return plugin version.

getDescription

public java.lang.String getDescription()
Return plugin description. This value will be used when a Resource Bundle Message Key "plugin.className.pluginDesc" is not found by getI18nDescription() method.

Overridable Methods
getI18nLabel

public java.lang.String getI18nLabel()
Return a plugin label for the plugin based on language setting. It will auto look for Resource Bundle Message Key "plugin.className.pluginLabel". If resource key not found, org.joget.plugin.property.model.PropertyEditable.getLabel() will be use if the plugin also implemented org.joget.plugin.property.model.PropertyEditable interface. Else, value from getName() method is use. OSGI plugin is required to override this method to provide an internationalization label.

getI18nDescription

public java.lang.String getI18nDescription()
Return a plugin description for the plugin based on language setting. It will auto look for Resource Bundle Message Key "plugin.className.pluginDesc". If resource key not found, value from org.joget.plugin.base.Plugin.getDescription() is use. OSGI plugin is required to override this method to provide an internationalization description.

Utility Methods
getProperties

public java.util.Map<java.lang.String,java.lang.Object> getProperties()
Get plugin properties.

setProperties

public void setProperties(java.util.Map<java.lang.String,java.lang.Object> properties)
Set plugin properties.

getProperty

public java.lang.Object getProperty(java.lang.String property)
Get a plugin property value by property key.

setProperty

public void setProperty(java.lang.String property, java.lang.Object value)
Set a plugin property.

getPropertyString

public java.lang.String getPropertyString(java.lang.String property)
Get a plugin property value by property key and return in java.lang.String. Non-exist key will return an empty string instead of NULL value.

start

public void start(org.osgi.framework.BundleContext context)
Method used by Felix OSGI framework to register the plugin.

stop

public void stop(org.osgi.framework.BundleContext context)
Method used by Felix OSGI framework to unregister the plugin.

Deprecated Methods
getPluginProperties

public org.joget.plugin.base.PluginProperty[] getPluginProperties()
Return a set of plugin properties to configure by admin user.
Deprecated Since version 3, Joget Workflow introduced a better UI for plugin configuration. A plugin should implement org.joget.plugin.property.model.PropertyEditable interface to provide the plugin configuration options.

execute

public java.lang.Object execute(java.util.Map properties)
To execute a plugin.
Deprecated This method is only use by Process Tool plugin therefore it had been moved to org.joget.plugin.base.DefaultApplicationPlugin

Interface

org.joget.plugin.property.model.PropertyEditable

  • Under wflow-plugin-base module
  • A interface that must be implemented by a plugin to provide admin interface to configure the plugin

Method Detail

Interface Methods
getLabel

public java.lang.String getLabel()
Return plugin label. This value will be used when a Resource Bundle Message Key "plugin.className.pluginlabel" is not found by getI18nLabel() method.

getClassName

public java.lang.String getClassName()
Return Class Name for the plugin.

getPropertyOptions

public java.lang.String getPropertyOptions()
Return the plugin properties options in JSON format. Please refer to Plugin Properties Options.

getProperties

public java.util.Map<java.lang.String,java.lang.Object> getProperties()
Get plugin properties.

setProperties

public void setProperties(java.util.Map<java.lang.String,java.lang.Object> properties)
Set plugin properties.

getProperty

public java.lang.Object getProperty(java.lang.String property)
Get a plugin property value by property key.

setProperty

public void setProperty(java.lang.String property, java.lang.Object value)
Set a plugin property.

getPropertyString

public java.lang.String getPropertyString(java.lang.String property)
Get a plugin property value by property key and return in java.lang.String. Non-exist key need to return an empty string instead of NULL value.

 
 
 
 
Created by Damian Last modified by Aadrian on Dec 13, 2024