Interface DeviceControlApi
-
- All Known Implementing Classes:
DeviceControlApiImpl
public interface DeviceControlApiAPI for creating, updating and retrieving operations from the platform.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description OperationRepresentationcreate(OperationRepresentation operation)Creates operation in the platform.Subscriber<GId,OperationRepresentation>getNotificationsSubscriber()Gets the notifications subscriber, which allows to receive newly created operations for agent.OperationRepresentationgetOperation(GId gid)Gets operation by idOperationCollectiongetOperations()Gets the all the operation in the platformOperationCollectiongetOperationsByFilter(OperationFilter filter)Gets the operations from the platform based on specified filter.OperationRepresentationupdate(OperationRepresentation operation)Updates operation in the platform.FutureupdateAsync(OperationRepresentation operation)Updates operation in the platform.
-
-
-
Method Detail
-
getOperation
OperationRepresentation getOperation(GId gid) throws SDKException
Gets operation by id- Parameters:
gid- id of the operation to search for- Returns:
- the operation with the given id
- Throws:
SDKException- if the operation is not found or if the query failed
-
create
OperationRepresentation create(OperationRepresentation operation) throws SDKException
Creates operation in the platform. The id of the operation must not be set, since it will be generated by the platform- Parameters:
operation- operation to be created- Returns:
- the created operation with the generated id
- Throws:
SDKException- if the operation could not be created
-
update
OperationRepresentation update(OperationRepresentation operation) throws SDKException
Updates operation in the platform. The operation to be updated is identified by the id within the given operation.- Parameters:
operation- to be updated- Returns:
- the updated operation
- Throws:
SDKException- if the operation could not be updated
-
updateAsync
Future updateAsync(OperationRepresentation operation) throws SDKException
Updates operation in the platform. Immediate response is available through the Future object. In case of lost connection, buffers data in persistence provider.- Parameters:
operation- to be updated- Returns:
- the updated operation
- Throws:
SDKException- if the operation could not be updated
-
getOperations
OperationCollection getOperations() throws SDKException
Gets the all the operation in the platform- Returns:
- collection of operations with paging functionality
- Throws:
SDKException- if the query failed
-
getOperationsByFilter
OperationCollection getOperationsByFilter(OperationFilter filter) throws SDKException
Gets the operations from the platform based on specified filter. Queries based on [status,deviceId,agentId] and [deviceId,agentId] are not supported. currently not supported.- Parameters:
filter- the filter criteria(s)- Returns:
- collection of operations matched by the filter with paging functionality
- Throws:
SDKException- if the query failedIllegalArgumentException- in case of queries based on [status,deviceId,agentId] or [deviceId,agentId]
-
getNotificationsSubscriber
Subscriber<GId,OperationRepresentation> getNotificationsSubscriber() throws SDKException
Gets the notifications subscriber, which allows to receive newly created operations for agent.Example: final GId agentId = ... Subscriber<GId, OperationRepresentation> subscriber = deviceControlApi.getNotificationsSubscriber(); subscriber.subscribe( agentId , new SubscriptionListener<GId, OperationRepresentation>() { @Override public void onNotification(Subscription<GId> subscription, OperationRepresentation operation) { //process operation } @Override public void onError(Subscription<GId> subscription, Throwable ex) { // handle subscribe operation error } });- Returns:
- subscriber
- Throws:
SDKException- when subscriber creation fail
-
-