Package org.hippoecm.frontend.plugin
Interface IPlugin
-
- All Superinterfaces:
org.apache.wicket.util.io.IClusterable
,Serializable
- All Known Implementing Classes:
AbstractListColumnProviderPlugin
,AbstractListingPlugin
,AssetUploadValidationPlugin
,BreadcrumbPlugin
,BrowserPlugin
,CmsLogoutService
,CompatibilityWorkflowPlugin
,DefaultFileUploadPreProcessorPlugin
,ExpandCollapseListingPlugin
,ExtWidget
,HTMLDiffPlugin
,ImageGalleryColumnProviderPlugin
,ImageUploadValidationPlugin
,ListViewPlugin
,ObservableRegistry
,PanelPlugin
,PanelPluginPerspective
,Perspective
,Plugin
,RenderPlugin
,TabsPlugin
,UnitPlugin
,UploadValidationPlugin
,WireframePlugin
public interface IPlugin extends org.apache.wicket.util.io.IClusterable
Marker interface for classes that can be instantiated as a plugin. There has to be a constructor with signature(IPluginContext, IPluginConfig); In general, the services that are available to a plugin may come and go at any moment, so the plugin lifecycle is rather minimal.
Plugin lifecycle:
- Construction - The plugin can retrieve and use services. Services that
are registered during this phase will be made available after construction completes.
Trackers can also be registered, but they will not receive any notifications until
construction completes. In this phase, the constructor with signature
(
IPluginContext
,IPluginConfig
) is invoked.A plugin can check its configuration and throw runtime exceptions when it finds that it cannot function correctly. For render plugins, a plugin that renders the error will be instantiated in this case, informing the user of the problem.
- Connect - Services that were registered during construction will be made available. Services can be invoked at this point. Trackers are activated, and will receive notifications for services that are already available in the system.
- Start - The
start()
method is invoked after services. The plugin can start new plugin clusters in this phase. - Stop - Before the framework starts cleanup of the registered services and
trackers, plugins can release resources by implementing
stop()
. - Destruction - The framework unregisters any services and trackers that were registered by the plugin.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
start()
This method can be implemented by plugins to delay part of the initialization until subclasses have finished their construction.void
stop()
Release references to external resources.
-
-
-
Field Detail
-
CLASSNAME
static final String CLASSNAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
start
void start()
This method can be implemented by plugins to delay part of the initialization until subclasses have finished their construction.
-
stop
void stop()
Release references to external resources. It is not necessary to unregister services or trackers; this is handled by the framework.
-
-