Manual
Table Of Contents
- Table of Contents
- Preface
- 1 Introduction
- 2 Creating and Redistributing LNS Device Plug ins
- 3 How Plug ins Work with Directors
- How Plug ins Are Represented in the LNS Object Server
- How Plug ins are Installed and Made Visible to LNS
- How Plug ins Implement the Registration Command
- How Plug ins Respond to Commands from a Director Other than Registration
- How Directors Launch and Manipulate Plug ins
- What Plug ins Do When They Run in Standalone Mode
- Responding to Property Reads and Writes
- Uninstallation Issues
- Appendix A Standard Plug in Commands
- Appendix B Standard Plug in Properties
- Appendix C Standard Plug in Object Classes
- Appendix D Standard Plug in Exceptions
Field Description
MultiObject Indicates to a director whether the plug-in supports MultiObject
functionality. When supported, the MultiObject functionality
allows the plug-in to cache multiple SendCommand() method
invocations from a director and to defer the execution of those
requests until told to do so by the director.
If the MultiObject field is set to Feature.Supported (1), which
indicates that MultiObject functionality is supported), then the
plug-in must support MultiObject as described in
How Directors
Support MultiObject and SingleInstance in Chapter 3.
The MultiObject field can also be set to Feature.Disabled (0),
which indicates that this feature is disabled at the present time
although the plug-in does include MultiObject support.
The MultiObject field can also be set to Feature.Unsupported
(–1), which indicates that this feature is unsupported.
Optional (defaults to Feature.Unsupported)
SingleInstance Indicates to a director whether a single instance of the plug-in
should be used per object that the plug-in operates on. The
purpose of the SingleInstance functionality is to specify to the
director that if multiple commands are to be performed on the
same LNS object, that an existing instance of the plug-in (if there
is one) operating on that object should be passed the new
command. If SingleInstance functionality is not supported,
multiple commands on the same object would result in multiple
instances of the plug-in being launched.
From the user’s point of view, rather than have multiple plug-in
instances operating on the same object (and possibly causing
interaction with each other), a more friendly approach is to pass
the new command to the existing instance of the plug-in instance
operating on that object if it is still active, or launch a new
plug-in instance if one is not currently activeIf the
SingleInstance field is set to Feature.Supported (1) (which
indicates that SingleObject functionality is supported), then the
plug-in must support SingleInstance as described in
How
Directors Support MultiObject and SingleInstance in Chapter 3.
The SingleInstance field can also be set to Feature.Disabled
(0), which indicates that this feature is disabled at the present
time although the plug-in does include SingleInstance support.
The SingleInstance field can also be set to
Feature.Unsupported (–1), which indicates that this feature is
unsupported by the plug-in. Optional (defaults to
Feature.Unsupported)