Now that you have defined the concrete class that will be called by the broker for a property change, you must register the action with the broker using the PropertyBrokerDefinitions
extension point. This extension point will register your action and also the input and output parameters of the action. Each action cannot only receive one input property change, but also post as many output property changes as needed. This is a key difference from a traditional pub sub. This means when you action is called by the broker, it simply adds output properties to the passed in PropertyChangeEvent
object by calling addOutputProperty()
The schema definition of the PropertyBrokerDefinitions
extension point has three primary fields:
Parent topic: Creating Cooperative Components with the Lotus Expeditor Property Broker
- Class – Optional Java™ class that will be instantiated by the broker and should implement one of the supported handler interfaces (Command, SWT, AWT).
- File – The Web Services Definition Language (WSDL) file that defines the action name, input and output properties.
- Type – The type of action to be registered, for instance COMMAND, SWT_ACTION.
- Map Element
- wsdlActionName - The ID of the action in the WSDL.
- actionID - The ID of the action in the Eclipse system.
- class - Optional class implementation for this specific action. If this class is specified, the property broker will instantiate the object and contain it with the Action definition. The object will then be called by the appropriate handler.