public interface IPluginUI
generatePage(com.actional.ui.plugin.IPluginUI.IGeneratePageContext)
)processPage(com.actional.ui.plugin.IPluginUI.IProcessPageContext)
)describe(com.actional.ui.plugin.IPluginUI.IDescribeContext)
)provideMetadata(com.actional.ui.plugin.IPluginUI.IProvideMetadataContext)
), the custom UI can be applied
to either the plug-ins registration using the product's "plug-ins" page (affecting the plug-in's global settings)
or the plug-ins instance UI (whose location different for each plug-in and which operates on the plug-in's instance
settings).Modifier and Type | Interface and Description |
---|---|
static interface |
IPluginUI.IDescribeContext |
static interface |
IPluginUI.IGeneratePageContext |
static interface |
IPluginUI.IPart |
static interface |
IPluginUI.IProcessPageContext |
static interface |
IPluginUI.IProvideMetadataContext |
Modifier and Type | Method and Description |
---|---|
void |
describe(IPluginUI.IDescribeContext ctx)
Provides a summary of the plug-in's current configuration settings.
|
void |
generatePage(IPluginUI.IGeneratePageContext ctx)
Generates the plug-in's custom HTML GUI.
|
void |
processPage(IPluginUI.IProcessPageContext ctx)
Validates and persists the form data as it is being posted back to the server.
|
void |
provideMetadata(IPluginUI.IProvideMetadataContext ctx)
Provides metadata about the plug-in prior to calling describe() or generate() that may be used by the
rendering engine to enhance or customize the rendering of the plug-in's HTML GUI.
|
void generatePage(IPluginUI.IGeneratePageContext ctx) throws java.lang.Exception
provideMetadata(com.actional.ui.plugin.IPluginUI.IProvideMetadataContext)
then this method would
be called once for each visible page.IPluginUI.IGeneratePageContext.generateUrl(String, String[], Object[])
if the plug-in's UI should include
hyperlinks that point to one of the configuration pages of the plug-in or a button that should trigger
a custom action that will be handled by the plug-in itself.IPluginUI.IGeneratePageContext.setState(Serializable)
and IPluginUI.IGeneratePageContext.getState()
to set and
retrieve a state across multiple invocations of
{generatePage(com.actional.ui.plugin.IPluginUI.IGeneratePageContext)
and
{processPage(com.actional.ui.plugin.IPluginUI.IProcessPageContext)
} in order to share]
volatile (session) data that should not be stored as part of the plug-in's setting and that may be
safely discarded once the plug-in configuration has been either completed or canceled.ctx
- The IPluginUI.IGeneratePageContext
for this method
java.lang.Exception
void processPage(IPluginUI.IProcessPageContext ctx) throws java.lang.Exception
IPluginUI.IProcessPageContext.getStringParameter(String)
or IPluginUI.IProcessPageContext.getPart(String)
) and
store them in the host application configuration database using
(IPluginUI.IProcessPageContext.getSettings()
and IRWSettings.setSetting(String, java.io.Serializable)
).
IPluginUI.IProcessPageContext.addMessage(Message)
should be used to propagate any validation errors to the user
which will cause the hosting platform to propagate the error message to the user in a standard fashion and
stay on the same page such that the user can re-enter the data if the user did click the Next or
Finnish button. Messages are ignored when the user clicks the Previous button. Alternatively, messages with
non-error severities can be used to display status messages in the hosting platform's UI while permitting it
to resume its regular UI flow, e.g. to propagate non-critical warning messages.IPluginUI.IProcessPageContext.getCurrentPageId()
.IPluginUI.IProcessPageContext.setPageToDisplay(String)
may be used
to explicitly set the page that the hosting platform should display next. (Otherwise, the hosting platform
will fall back to its default behavior which is to navigate through all defined pages in the order they
were defined.)IPluginUI.IGeneratePageContext.setState(Serializable)
and IPluginUI.IGeneratePageContext.getState()
to set and
retrieve a state across multiple invocations of
{generatePage(com.actional.ui.plugin.IPluginUI.IGeneratePageContext)
and
{processPage(com.actional.ui.plugin.IPluginUI.IProcessPageContext)
} in order to share
volatile (session) data that should not be stored as part of the plug-in's setting and that may be
safely discarded once the plug-in configuration has been either completed or canceled.ctx
- The IPluginUI.IProcessPageContext
for this method
java.lang.Exception
void describe(IPluginUI.IDescribeContext ctx) throws java.lang.Exception
IPluginUI.IDescribeContext.generateUrl(String, String[], Object[])
if the plug-in's UI should include
hyperlinks that point to one of the configuration pages of the plug-in or a button that should trigger
a custom action that will be handled by the plug-in itself.ctx
- The IPluginUI.IDescribeContext
for this method
java.lang.Exception
void provideMetadata(IPluginUI.IProvideMetadataContext ctx) throws java.lang.Exception
IPluginUI.IProvideMetadataContext.setRequiresSettings(boolean)
to indicate whether a UI should be shown
at all under the current context (registration phase or instance configuration).IPluginUI.IProvideMetadataContext.addPage(String, String)
to define a list of configuration pages that
should be shown when configuring this plug-in (under the current context). By default, the hosting platform
will render a UI page for each of these pages (using
generatePage(com.actional.ui.plugin.IPluginUI.IGeneratePageContext)
) in the order the pages are
defined although this behavior can be overridden during the processing of the form data (through
processPage(com.actional.ui.plugin.IPluginUI.IProcessPageContext)
).ctx
- The IPluginUI.IProvideMetadataContext
for this method
java.lang.Exception