public interface Controller extends OsidObject, Operable
A Controller is an addressable Operable
that executes an action. Controllers are related to
Devices through Inputs. A few typical controller
modes are defined such as a toggle, a variable amount, and a set of
discreet states. Other kinds of controllers may be defined in a
ControllerRecord.
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
getAddress()
Gets the controller address.
|
ControllerRecord |
getControllerRecord(Type controllerRecordType)
Gets the controller record corresponding to the given
Controller record Type. |
IdList |
getDiscreetStateIds()
Gets the discreet
State Ids. |
StateList |
getDiscreetStates()
Gets the discreet
States. |
Model |
getModel()
Gets the controller model.
|
Id |
getModelId()
Gets the controller model
Id. |
java.math.BigDecimal |
getVariableIncrement()
Gets the increments in the level.
|
java.math.BigDecimal |
getVariableMaximum()
Gets the maximum level.
|
java.math.BigDecimal |
getVariableMinimum()
Gets the minimum level.
|
Version |
getVersion()
Gets the controller version.
|
boolean |
hasDiscreetStates()
Tests if this controller supports discreet states.
|
boolean |
isRampable()
Tests if this controller supports a ramp rate for a transition from
off to on.
|
boolean |
isToggleable()
Tests if this controller can be turned on and off.
|
boolean |
isVariable()
Tests if this controller supports levels between on and off.
|
boolean |
isVariableByPercentage()
Tests if the levels represent a percentage.
|
getDescription, getDisplayName, getGenusType, isOfGenusTypegetId, isCurrentgetRecordTypes, hasRecordTypegetProperties, getPropertiesByRecordTypeisActive, isDisabled, isEnabled, isOperationaljava.lang.String getAddress()
mandatory - This method must be implemented. Id getModelId()
Id. Id mandatory - This method must be implemented. Model getModel() throws OperationFailedException
OperationFailedException - unable to complete requestmandatory - This method must be implemented. Version getVersion()
mandatory - This method must be implemented. boolean isToggleable()
true if this controller can be toggled, false
otherwisemandatory - This method must be implemented. boolean isVariable()
true if this controller has levels, false
otherwisemandatory - This method must be implemented. boolean isVariableByPercentage()
true if this controller has levels as a
percentage, false otherwiseIllegalStateException - isVariable() is
false mandatory - This method must be implemented. java.math.BigDecimal getVariableMinimum()
IllegalStateException - isVariable() is
false mandatory - This method must be implemented. java.math.BigDecimal getVariableMaximum()
IllegalStateException - isVariable() is
false mandatory - This method must be implemented. java.math.BigDecimal getVariableIncrement()
IllegalStateException - isVariable() is
false or isVariableByPercentage()
is true mandatory - This method must be implemented. boolean hasDiscreetStates()
true if this controller has discreet states,
false otherwisemandatory - This method must be implemented. IdList getDiscreetStateIds()
State Ids. Ids IllegalStateException - hasDiscreetStates()
is false mandatory - This method must be implemented. StateList getDiscreetStates() throws OperationFailedException
States. IllegalStateException - hasDiscreetStates()
is false OperationFailedException - unable to complete requestmandatory - This method must be implemented. boolean isRampable()
true if this controller supports ramp rates,
false otherwisemandatory - This method must be implemented. ControllerRecord getControllerRecord(Type controllerRecordType) throws OperationFailedException
Controller record Type. This method is used to
retrieve an object implementing the requested record. The
controllerRecordType may be the Type returned
in getRecordTypes() or any of its parents in a
Type hierarchy where
hasRecordType(controllerRecordType) is true .controllerRecordType - the type of controller record to retrieveNullArgumentException - controllerRecordType
is null OperationFailedException - unable to complete requestUnsupportedException -
hasRecordType(controllerRecordType) is false
mandatory - This method must be implemented.