WebLogic Integration


com.bea.wlpi.common.plugin
Interface PluginData

All Known Subinterfaces:
PluginActionData

public interface PluginData
extends java.lang.Cloneable, PluginObject

Interface to allow plugins to load and store data in XML format. Implementations classes must be cloneable (in order to support cut and paste operations in design-time clients).

Since:
WebLogic Process Integrator 2.0
Author:
Copyright © 2000, 2001 BEA Systems, Inc. All Rights Reserved.
See Also:
PluginObject

Method Summary
 java.lang.Object clone()
          Clone the plugin data.
 java.lang.String getPrintableData()
          Return a printable description of the plugin data.
 java.util.List getReferencedPublishables(java.util.Map publishables)
          Query the plugin for references it holds to publishable objects.
 void save(XMLWriter writer, int indent)
          Instruct the plugin to store its data in an XML document.
 
Methods inherited from interface com.bea.wlpi.common.plugin.PluginObject
load
 
Methods inherited from interface org.xml.sax.ContentHandler
characters, endDocument, endElement, endPrefixMapping, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity, startDocument, startElement, startPrefixMapping
 

Method Detail

save

public void save(XMLWriter writer,
                 int indent)
          throws java.io.IOException
Instruct the plugin to store its data in an XML document. The plugin framework calls this method when it encounters a plugin-supplied datum while storing a template, template definition, or plugin configuration.

Parameters:
writer - The plugin serializes its data to XML using this object.
indent - The current indentation level. The plugin should use this value to create a correctly indented XML document. The standard indentation increment is two spaces.

getReferencedPublishables

public java.util.List getReferencedPublishables(java.util.Map publishables)
Query the plugin for references it holds to publishable objects. This enables design-time clients to package a workflow definition together with all its dependencies, so that the resulting package can be imported and run without the need for manual intervention. Publishable objects include: templates, template definitions, business calendars, business operations, event keys, repository items. Plugins that hold references to such objects must declare them when this method is called. The user creating an export package can then specify which of these referenced items is to be included in the package.

Parameters:
publishables - A map of all publishable objects, keyed on the constants defined in the Publishable interface. The values in the map are homogenous java.util.List objects containing XxxInfo objects of a type to match their corresponding key:
Key List element type
Publishable.TEMPLATE TemplateInfo
Publishable.TEMPLATE_DEFINITION TemplateDefinitionInfo
Publishable.BUSINESS_OPERATION ClassInvocationDescriptor or EJBInvocationDescriptor
Publishable.BUSINESS_CALENDAR BusinessCalendarInfo
Publishable.USER UserInfo
Publishable.ROLE RoleInfo
Publishable.ORG OrganizationInfo
Publishable.XML_REPOSITORY_FOLDER RepositoryFolderInfoHelper
Publishable.XML_REPOSITORY_ENTITY XMLEntityInfoHelper
Publishable.EVENT_KEY EventKeyInfo
The plugin should add the appropriate objects in these lists to the returned list, because the design-time client expects a list of references to the actual objects contained within the publishables parameter.
Returns:
A list of Publishable objects referenced by the plugin.

getPrintableData

public java.lang.String getPrintableData()
Return a printable description of the plugin data. This is typically for inclusion in a TemplateDefinition printout.

Returns:
The printable description.

clone

public java.lang.Object clone()
Clone the plugin data. The implementation method must return a deep (recursive) copy of the graph for this object.

Overrides:
clone in class java.lang.Object

WebLogic Integration

WebLogic Integration (WLI)