Echelon LNS Plug-in User Manual

Page 36

Advertising
background image

Director Action

Plug-in Response

requests. The Plug-in Framework
automatically manages the plug-in’s
reference counts. See How Plug-ins Know
When To Exit
l
ater in this chapter for more
information on how reference counts are
tracked.

If this is a remote client, sets the RemoteFlag
property to True and then sets the
NetworkInterfaceName property to identify the
interface that the plug-in should use to
communicate with the LNS Object Server. All
plug-ins must support these properties.

Note: After creating an instance of a plug-in, the
director can set any property, at any time, with two
exceptions. If they are set, the
NetworkInterfaceName and Remote properties
must be set before the NetworkName property.

Stores the state of the RemoteFlag property.

Stores the name of the network interface in
the NetworkInterfaceName property of the
PlugInObjectBase class.

Sets the NetworkName property to identify the
network on which the plug-in will act. All plug-ins
must support this property.

Opens the network using the specified
network interface name (if one was
previously given).

You can override the NetworkName
property put method if you want your plug-in
to do additional work (for example, load
device templates).

Optionally sets additional properties.

Responds appropriately. All mandatory
properties are automatically handled by the
derived PlugInObjectBase class. If you
want to add any custom properties, you need
to override the derived class.

See Appendix B, Standard Plug-in
Properties
,
for the list of standard plug-in
properties and potential responses.

Invokes the SendCommand method to tell the plug
in the command that it should perform and the
target object on which to perform it. The command
is identified by ID, as listed in Appendix A,
Standard Plug-in Commands. The target object is
identified by class ID and by object name, as
described later in this chapter.

If the command is something other than
registration, the framework validates the
command by making sure that it is in the
PluginCommands array.

Note that the framework only attempts to
locate objects of the lcaAppDevice and
lcaLonMarkObject types. If your plug-in
operates on other object types, you will need
to locate the object yourself. See Appendix
C, Standard Plug-in Object Classes, for
addressing syntax for each object type.

Optionally sets the Visible property.

Displays the user interface, if appropriate.

The ActivatePlugin() method is called with
an array of actions specified in the Actions
property of the PluginObjectBase class.
Each action contains a command and a
decoded LNS object.

Advertising