public abstract class VirtualDevice extends AbstractVirtualDevice<VirtualDevice>
Modifier and Type | Class and Description |
---|---|
static interface |
VirtualDevice.ActionCallback
A callback interface for receiving notification of an Action.
|
static class |
VirtualDevice.ActionEvent
An event passed to the
ActionCallback . |
static interface |
VirtualDevice.Callable<T>
Deprecated.
This API does not support actions with multiple arguments.
Use
VirtualDevice.ActionCallback |
AbstractVirtualDevice.ChangeCallback<V>, AbstractVirtualDevice.ChangeEvent<V>, AbstractVirtualDevice.ErrorCallback<V>, AbstractVirtualDevice.ErrorEvent<V>, AbstractVirtualDevice.Event<V>, AbstractVirtualDevice.NamedValue<T>
Modifier and Type | Method and Description |
---|---|
abstract Alert |
createAlert(java.lang.String format)
Create an Alert for this VirtualDevice.
|
abstract Data |
createData(java.lang.String format)
Create a custom data object for this VirtualDevice.
|
abstract <T> VirtualDevice |
offer(java.lang.String attributeName,
T value)
Offer to set the value of an attribute.
|
abstract void |
setCallable(java.lang.String actionName,
VirtualDevice.Callable<?> callable)
Deprecated.
This API does not support actions with multiple arguments.
Use
setOnAction(String, ActionCallback) |
abstract void |
setOnAction(java.lang.String actionName,
VirtualDevice.ActionCallback callback)
Set a callback that is invoked when an action for the given name is
received.
|
abstract void |
setOnAction(VirtualDevice.ActionCallback callback)
Set a callback that is invoked when any action in the device model is
received.
|
finish, get, getDeviceModel, getEndpointId, getLastKnown, set, setOnChange, setOnChange, setOnError, setOnError, update
@Deprecated public abstract void setCallable(java.lang.String actionName, VirtualDevice.Callable<?> callable)
setOnAction(String, ActionCallback)
actionName
- The action namecallable
- The interface to invokepublic abstract void setOnAction(java.lang.String actionName, VirtualDevice.ActionCallback callback)
Note that it is possible to set a callback for a specific action and
to set a callback for all actions via setOnAction(VirtualDevice.ActionCallback)
.
If there is a callback for the specific action and for all actions,
both callbacks will be invoked, with the specific action invoked first.
actionName
- The action name from the device modelcallback
- a callback to invoke when an action is received,
if null
, the existing callback will be removedsetOnAction(VirtualDevice.ActionCallback)
public abstract void setOnAction(VirtualDevice.ActionCallback callback)
Note that it is possible to set a callback for a specific action
via setOnAction(String, VirtualDevice.ActionCallback)
.
If there is a callback for the specific action and for all actions,
both callbacks will be invoked, wiht the specific action invoked first.
callback
- a callback to invoke when an action is received,
if null
, the existing callback will be removedsetOnAction(String, VirtualDevice.ActionCallback)
public abstract Alert createAlert(java.lang.String format)
format
- the alert format URN.public abstract Data createData(java.lang.String format)
format
- the custom data message format URN.public abstract <T> VirtualDevice offer(java.lang.String attributeName, T value)
set
method were called.
The value is validated according to the constraints in the device model.
If the value is not valid, an IllegalArgumentException is raised.T
- the type of the attribute valueattributeName
- the name of an attribute from the device type modelvalue
- the value to setjava.lang.IllegalArgumentException
- if the value is not valid,
the attribute is not in the model,
or attributeName
is null
java.lang.UnsupportedOperationException
- if the attribute is read-only