Package org.apache.wiki.api.plugin

## Interface Plugin

    public interface Plugin

Defines an interface for plugins. Any instance of a wiki plugin should implement this interface.

### Field Summary

Fields
`static java.lang.String` `CORE_PLUGINS_RESOURCEBUNDLE` Name of the default plugin resource bundle.

### Method Summary

All Methods Instance Methods Abstract Methods
`java.lang.String` `execute​(Context context, java.util.Map<java.lang.String,​java.lang.String> params)` This is the main entry point for any plugin.

### Field Detail

#### CORE_PLUGINS_RESOURCEBUNDLE

    static final java.lang.String CORE_PLUGINS_RESOURCEBUNDLE

Name of the default plugin resource bundle.

See Also:
  Constant Field Values

### Method Detail

#### execute

    java.lang.String execute​(Context context,
                             java.util.Map<java.lang.String,​java.lang.String> params)
                      throws PluginException

This is the main entry point for any plugin. The parameters are parsed, and a special parameter called "_body" signifies the name of the plugin body, i.e. the part of the plugin that is not a parameter of the form "key=value". This has been separated using an empty line.

Note that it is preferred that the plugin returns XHTML-compliant HTML (i.e. close all tags, use <br /> instead of <br>, etc.

Parameters:
  `context` - The current WikiContext.
  `params` - A Map which contains key-value pairs. Any parameter that the user has specified on the wiki page will contain String-String parameters, but it is possible that at some future date, JSPWiki will give you other things that are not Strings.
Returns:
  HTML, ready to be included into the rendered page.
Throws:
  `PluginException` - In case anything goes wrong.