Package org.osid.control
The Open Service Interface Definitions for the org.osid.control service.
The Control OSID manages control systems. A system is comprised of
Devices whose Controllers are the control points.
Devices have various Input mechanisms to command the
Controllers .
Device
A Device represents some piece of visible equipment in a
system. Example Devices are joysticks, yokes, and control panels.
Controller
A Controller is an Operable manages a specific
responder in a system such as a model railroad gate, an airplane rudder, or
the volume of a stereo. The management of a Controller includes
on/off, variable amount values, or a set of States. A Controller is
a black box. The Control OSID does not describe or manage system responders
or how a Controller performs its tasks.
Inputs
An Input is an OsidRelationship between a
Device and a Controller . A yoke may have several Inputs .
One Input for push-pull that commands the Controller for
the elevator, another Input for turning that commands the
Controller for the ailerons, and another Input that commands the
Controller for enabling and disabling auto-pilot.
Settings
A Setting captures fixed setting values for a
Controller . A Controller for a sound system volume may have a
variable amount Setting for LOUD and another variable amount
Setting for SOFT. Settings are the basic building blocks for
Scenes .
Scenes
A Scene is a set of Settings . While a Setting
is a value for a single Controller , Scenes apply values
across a bunch of Controllers . Executing a movie theater
Scene may set the light Controllers to dim values, close the
curtains, and set the sound system vilume.
Triggers
Triggers are OsidRules used to perform actions in response
to a value or state change in a Controller . Triggers have
two parts. One part of the Trigger is the event listening criteria
(fan turned on, light changed brightness). The second part of a
Trigger is the execution that is to be performed when the event criteria
is true. The OsidRule may encapsulate more complex event criteria.
An example Trigger is when the motion sensor Controller
is turned "on," the Trigger executes a Setting or a
Scene that turns on the porch light.
Triggers may execute Scenes or Settings directly.
This is the simpler approach but does not allow for other rules or
conditionals not expressable by a set of critera. Triggers may also
execute ActionGroups .
Actions and ActionGroups
ActionGroups are a set of Actions . Actions are
OsidRules to be executed. Built-in rules execute Settings
or Scenes . These OsidRules may reference other actions or
behaviors not directly described in the Action .
Settings, Scenes, and Actions
A Setting is a single state or value for a specific
Controller used to build Scenes but may also be directly executed
by a Trigger or Action .
Scenes are a set of Settings used to set the state or
values of multiple Controllers simultaneously and provide
reusability of clusters of Settings .
ActionGroups may be used with Triggers to achieve the same
effect as a Setting . The difference between a set of
Actions and a Setting are the presence of rules in the
Actions . These rules may determine which Actions within an
ActionGroup apply at tha time within a context. As such, each evaluation
across an ActionGroup may result in different sets of executed
Actions unlike Scenes whose complete set of
Settings are known up front and may be thought of as a multicast group.
System Cataloging
All Devices , Inputs , Controllers ,
Settings , Scenes , Triggers , and ActionGroups
may be organized into federateable OsidCatalogs called
Systems .
Sub Packages
The Control OSID includes a Control Rules OSID for managing rules amd a
Control Batch OSID for managing Devices , Inputs ,
Controllers , Scenes , Settings , Triggers , and
ActionGroups in bulk.
Copyright © 2013 Ingenescus. All Rights Reserved.
This Work is being provided by the copyright holder(s) subject to the following license. By obtaining, using and/or copying this Work, you agree that you have read, understand, and will comply with the following terms and conditions.
Permission to use, copy and distribute unmodified versions of this Work, for any purpose, without fee or royalty is hereby granted, provided that you include the above copyright notices and the terms of this license on ALL copies of the Work or portions thereof.
You may nodify or create Derivatives of this Work only for your internal purposes. You shall not distribute or transfer any such Derivative of this Work to any location or to any third party. For the purposes of this license, "Derivative" shall mean any derivative of the Work as defined in the United States Copyright Act of 1976, such as a translation or modification.
This Work and the information contained herein is provided on an "AS IS" basis WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE WORK OR THE USE OR OTHER DEALINGS IN THE WORK.
The export of software employing encryption technology may require a specific license from the United States Government. It is the responsibility of any person or organization contemplating export to obtain such a license before exporting this Work.
-
InterfacesClassDescriptionAn
Actionexecutes aScene, Setting, anotherActionGroup, or otherRule.This is the form for creating and updating actions.AnActionGroupis a list ofActionsto execute.This session creates, updates, and deletesActionGroups.This is the form for creating and updating action groups.Like allOsidLists,ActionGroupListprovides a means for accessingActionGroupelements sequentially either one at a time or many at a time.This session provides methods for retrievingActionGroups.This session defines methods to receive notifications on adds/changes toActionGroupsin thisSystem.This is the query for searching action groups.This is the query inspector for examining action group queries.This session provides methods for searching amongActionGroups.The action group receiver is the consumer supplied interface for receiving notifications pertaining to new, updated or deletedActionGroupobjects.The search interface for governing action group searches.An interface for specifying the ordering of search results.This interface provides a means to capture results of a search.This session provides methods for searching amongActionGroups.This session manages queries and sequencing to create "smart" dynamic catalogs.This session provides methods to re-assignActionGroupstoSystemmappings.This session provides methods to retrieveActionGrouptoSystemmappings.Like allOsidLists,ActionListprovides a means for accessingActionelements sequentially either one at a time or many at a time.This is the query for searching actions.This is the query inspector for examining action queries.AControlleris an addressableOperablethat executes an action.This session creates, updates, and deletesControllers.This is the form for creating and updatingControllers.Like allOsidLists,ControllerListprovides a means for accessingControllerelements sequentially either one at a time or many at a time.This session provides methods for retrievingControllers.This session defines methods to receive notifications on adds/changes toControllersin thisSystem.This is the query for searching controllers.This is the query inspector for examning controller queries.This session provides methods for searching amongControllers.The controller receiver is the consumer supplied interface for receiving notifications pertaining to new, updated or deleted controllers.The search interface for governing controller searches.An interface for specifying the ordering of search results.This interface provides a means to capture results of a search.This session provides methods for searching amongControllers.This session manages queries and sequencing to create "smart" dynamic catalogs.This session provides methods to re-assignControllertoSystemmappings.This session provides methods to retrieveControllertoSystemmappings.The control manager provides access to control sessions and provides interoperability tests for various aspects of this service.The control profile describes the interoperability among control services.The control proxy manager provides access to control sessions and provides interoperability tests for various aspects of this service.ADevicemanages a set ofInputstoControllers.This session creates, updates, and deletesDevices.This is the form for creating and updatingDevices.Like allOsidLists,DeviceListprovides a means for accessingDeviceelements sequentially either one at a time or many at a time.This session provides methods for retrievingDevices.This session defines methods to receive notifications on adds/changes toDevicesin thisSystem.This is the query for searching devices.This is the query inspector for examining device queries.This session provides methods for searching amongDevices.The device receiver is the consumer supplied interface for receiving notifications pertaining to new, updated or deletedDeviceobjects.The search interface for governing device searches.An interface for specifying the ordering of search results.This interface provides a means to capture results of a search.This session provides methods for searching amongDevices.This session manages queries and sequencing to create "smart" dynamic catalogs.This session provides methods to re-assignDevicestoSystemmappings.This session provides methods to retrieveDevicetoSystemmappings.AnInputis anOsidRelationshipbetween aDeviceand aController.This session creates, updates, and deletesInputs.This is the form for creating and updatingInputs.Like allOsidLists,InputListprovides a means for accessingInputelements sequentially either one at a time or many at a time.This session provides methods for retrievingInputs.This session defines methods to receive notifications on adds/changes toInputsin thisSystem.This is the query for searching inputs.This is the query inspector for examining input queries.This session provides methods for searching amongInputs.The input receiver is the consumer supplied interface for receiving notifications pertaining to new, updated or deletedInputobjects.The search interface for governing input searches.An interface for specifying the ordering of search results.This interface provides a means to capture results of a search.This session provides methods for searching amongInputs.This session manages queries and sequencing to create "smart" dynamic catalogs.This session provides methods to re-assignInputstoSystemmappings.This session provides methods to retrieveInputtoSystemmappings.ASceneis a collection ofSettings.This session creates, updates, and deletesScenes.This is the form for creating and updating scenes.Like allOsidLists,SceneListprovides a means for accessingSceneelements sequentially either one at a time or many at a time.This session defines methods for retrieving scenes.This session defines methods to receive notifications on adds/changes toScenesin thisdDstributor.This is the query for searching scenes.This is the query inspector for examining scene queries.This session provides methods for searching amongScenes.The scene receiver is the consumer supplied interface for receiving notifications pertaining to new, updated or deleted scenes.The search interface for governing scene searches.An interface for specifying the ordering of search results.This interface provides a means to capture results of a search.This session provides methods for searching amongScenes.This session manages queries and sequencing to create "smart" dynamic catalogs.This session provides methods to re-assignScenestoSystemmappings.This session provides methods to retrieveScenetoSystemscenes.AnSettingis a preset value for aController.This session creates, updates, and deletesSettings.This is the form for creating and updating settings.Like allOsidLists,SettingListprovides a means for accessingSettingelements sequentially either one at a time or many at a time.This session defines methods for retrieving settings.This session defines methods to receive notifications on adds/changes toSettingsin thisdDstributor.This is the query for searching settings.This is the query inspector for examining setting queries.This session provides methods for searching amongSettings.The setting receiver is the consumer supplied interface for receiving notifications pertaining to new, updated or deleted settings.The search interface for governing setting searches.An interface for specifying the ordering of search results.This interface provides a means to capture results of a search.This session provides methods for searching amongSettings.This session manages queries and sequencing to create "smart" dynamic catalogs.This session provides methods to re-assignSettingstoSystemmappings.This session provides methods to retrieveSettingtoSystemsettings.ASystemrepresents a collection ofDevices,Inputs,Controllers,Settings,Triggers,ActionGroups, andScenes.This session creates, updates, and deletesSystems.This is the form for creating and updating systems.This session defines methods for managing a hierarchy ofSystems.This session defines methods for traversing a hierarchy ofSystems.Like allOsidLists,SystemListprovides a means for accessingSystemelements sequentially either one at a time or many at a time.This session provides methods for retrievingSystems.This interface is a container for a partial hierarchy retrieval.Like allOsidLists,SystemNodeListprovides a means for accessingSystemNodeelements sequentially either one at a time or many at a time.This session defines methods to receive notifications on adds/changes toSystems.This is the query for searching systems.This is the query inspector for examining system queries.This session provides methods for searching amongSystems.The system receiver is the consumer supplied interface for receiving notifications pertaining to new, updated or deletedSystemobjects.The search interface for governing system searches.An interface for specifying the ordering of search results.This interface provides a means to capture results of a search.This session provides methods for searching amongSystems.ATriggeris anOsidRulethat listens to events from aController.This session creates, updates, and deletesTriggers.This is the form for creating and updating triggers.Like allOsidLists,TriggerListprovides a means for accessingTriggerelements sequentially either one at a time or many at a time.This session provides methods for retrievingTriggers.This session defines methods to receive notifications on adds/changes toTriggersin thisSystem.This is the query for searching triggers.This is the query inspector for examining trigger queries.This session provides methods for searching amongTriggers.The trigger receiver is the consumer supplied interface for receiving notifications pertaining to new, updated or deletedTriggerobjects.The search interface for governing trigger searches.An interface for specifying the ordering of search results.This interface provides a means to capture results of a search.This session provides methods for searching amongTriggers.This session manages queries and sequencing to create "smart" dynamic catalogs.This session provides methods to re-assignTriggerstoSystemmappings.This session provides methods to retrieveTriggertoSystemmappings.