Interface ServiceLayer
-
@ProviderType public interface ServiceLayer
Primary Interface for an oneM2M application entity to send request and get response to/from other oneM2M entity.It contains low level API and high level API. The only low level method is request() and other methods are categorized as high level API.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Promise<ResourceDTO>
create(java.lang.String uri, ResourceDTO resource)
create resourcePromise<java.lang.Boolean>
delete(java.lang.String uri)
delete resourcePromise<java.util.List<java.lang.String>>
discovery(java.lang.String uri, FilterCriteriaDTO fc)
find resources with filter condition specified in fc argument.Promise<java.util.List<java.lang.String>>
discovery(java.lang.String uri, FilterCriteriaDTO fc, RequestPrimitiveDTO.DesiredIdentifierResultType drt)
find resources with filter condition specified in fc argument.Promise<java.lang.Boolean>
notify(java.lang.String uri, NotificationDTO notification)
send notificationPromise<ResponsePrimitiveDTO>
request(RequestPrimitiveDTO request)
send a request and receive response.Promise<ResourceDTO>
retrieve(java.lang.String uri)
retrieve resourcePromise<ResourceDTO>
retrieve(java.lang.String uri, java.util.List<java.lang.String> targetAttributes)
retrieve resource with selected attributes.Promise<ResourceDTO>
update(java.lang.String uri, ResourceDTO resource)
update resource
-
-
-
Method Detail
-
request
Promise<ResponsePrimitiveDTO> request(RequestPrimitiveDTO request)
send a request and receive response.This method allows very raw data type access and it enables all possible message exchanges among oneM2M entities. This is called the low level API. This method allows all possible operation of oneM2M. For the return type, OSGi Promise is used for allowing synchronous and asynchronous calling manner.
- Parameters:
request
- request primitive- Returns:
- promise of ResponseDTO.
-
create
Promise<ResourceDTO> create(java.lang.String uri, ResourceDTO resource)
create resourceThe create() method is a method to create new resource under specified uri. The second argument resource is expression of resource to be generated. The resourceType field of the resourceDTO must be assigned. For other fields depends on resource type. Section 7.4 of TS-00004 specifies the optionalities of the fields.
- Parameters:
uri
- URI for parent resource of the resource being created.resource
- resource data- Returns:
- Promise of created resource
-
retrieve
Promise<ResourceDTO> retrieve(java.lang.String uri)
retrieve resourceretrieve resource on URI specified by uri argument. This method retrieve all attributes of the resource.
- Parameters:
uri
- URI for retrieving resource- Returns:
- retrieved resource data
-
retrieve
Promise<ResourceDTO> retrieve(java.lang.String uri, java.util.List<java.lang.String> targetAttributes)
retrieve resource with selected attributes.retrieve resource on URI specified by uri argument. This method retrieve selected attributes by targetAttributes argument. The retrieve() methods are methods to retrieve resource on URI specified by uri argument.
- Parameters:
uri
- URI for retrieving resourcetargetAttributes
- names of the target attribute- Returns:
- retrieved resource data
-
update
Promise<ResourceDTO> update(java.lang.String uri, ResourceDTO resource)
update resourceThe update() method is a method to update resource on the URI specified by uri argument. The resource argument holds attributes to be updated. Attributes not to be updated shall not included in the argument.
- Parameters:
uri
- URI for updating resourceresource
- data resource- Returns:
- updated resource
-
delete
Promise<java.lang.Boolean> delete(java.lang.String uri)
delete resourcedelete resource on the URI specified by uri argument.
- Parameters:
uri
- target URI for deleting resource- Returns:
- promise of execution status
-
discovery
Promise<java.util.List<java.lang.String>> discovery(java.lang.String uri, FilterCriteriaDTO fc)
find resources with filter condition specified in fc argument.Discovery Result Type is kept as blank and default value of target CSE is used for the parameter.
- Parameters:
uri
- URI for resource tree to start the searchfc
- filter criteria selecting resources- Returns:
- list of URIs matching the condition specified in fc
-
discovery
Promise<java.util.List<java.lang.String>> discovery(java.lang.String uri, FilterCriteriaDTO fc, RequestPrimitiveDTO.DesiredIdentifierResultType drt)
find resources with filter condition specified in fc argument.With this method application can specify desired identifier in result
- Parameters:
uri
- URI for resource tree to start the searchfc
- filter criteriadrt
- Discovery Result Type (structured/unstructured)- Returns:
- list of URIs matching the condition specified in fc
-
notify
Promise<java.lang.Boolean> notify(java.lang.String uri, NotificationDTO notification)
send notification- Parameters:
uri
- uri of destinationnotification
- content of notification- Returns:
- Promise of notification execution status
-
-