* @note Any calls made to this AFTER the first call to OCPlatform::Instance
* will have no affect
*/
- void Configure(const PlatformConfig& config);
+ OCStackResult Configure(const PlatformConfig& config);
// typedef for handle to cancel presence info with
typedef OCDoHandle OCPresenceHandle;
/**
+ * API for stop Base layer including resource and connectivity abstraction.
+ *
+ * @return Returns ::OC_STACK_OK if success.
+ */
+ OCStackResult stop();
+
+ /**
+ * API for start Base layer including resource and connectivity abstraction.
+ * OCInit will be invoked.
+ *
+ * @return Returns ::OC_STACK_OK if success.
+ */
+ OCStackResult start();
+
+ /**
* API for notifying base that resource's attributes have changed.
*
* @param resourceHandle resource handle of the resource
OCConnectivityType connectivityType, FindCallback resourceHandler,
FindErrorCallback errorHandler, QualityOfService QoS);
+ OCStackResult findResourceList(const std::string& host, const std::string& resourceURI,
+ OCConnectivityType connectivityType, FindResListCallback resourceHandler,
+ QualityOfService QoS = QualityOfService::LowQos);
+
+ OCStackResult findResourceList(const std::string& host, const std::string& resourceURI,
+ OCConnectivityType connectivityType, FindResListCallback resourceHandler,
+ FindErrorCallback errorHandler, QualityOfService QoS = QualityOfService::LowQos);
+
+ OCStackResult setPropertyValue(OCPayloadType type, const std::string& tag, const std::string& value);
+ OCStackResult setPropertyValue(OCPayloadType type, const std::string& tag, const std::vector<std::string>& value);
+ OCStackResult getPropertyValue(OCPayloadType type, const std::string& tag, std::string& value);
+ OCStackResult getPropertyValue(OCPayloadType type, const std::string& tag, std::vector<std::string>& value);
/**
* API for Device Discovery
*
OCAccountManager::Ptr constructAccountManagerObject(const std::string& host,
OCConnectivityType connectivityType);
#endif // WITH_CLOUD
-#ifdef RD_CLIENT
- /**
- * API for Virtual Resource("/oic/d" and "/oic/p") Publish to Resource Directory.
- * @note This API applies to resource server side only.
- *
- * @param host Host IP Address of a service to direct resource publish query.
- * @param connectivityType ::OCConnectivityType type of connectivity.
- * @param callback Handles callbacks, success states and failure states.
- *
- * @return Returns ::OC_STACK_OK if success.
- */
- OCStackResult publishResourceToRD(const std::string& host,
- OCConnectivityType connectivityType,
- PublishResourceCallback callback);
+#ifdef TCP_ADAPTER
/**
- * @overload
- *
- * @param host Host IP Address of a service to direct resource publish query.
- * @param connectivityType ::OCConnectivityType type of connectivity.
- * @param callback Handles callbacks, success states and failure states.
- * @param QoS the quality of communication.
+ * gets OCRepresentation of KeepAlive resource from given host.
*
+ * @param host Host IP Address of KeepAlive resource
+ * @param resultCallback Function to callback with result code and OCRepresentation.
* @return Returns ::OC_STACK_OK if success.
*/
- OCStackResult publishResourceToRD(const std::string& host,
- OCConnectivityType connectivityType,
- PublishResourceCallback callback,
- QualityOfService QoS);
+ OCStackResult findKeepAliveResource(std::string host, KeepAliveCallback resultCallback);
/**
- * API for Resource Publish to Resource Directory.
- * @note This API applies to resource server side only.
- *
- * @param host Host IP Address of a service to direct resource publish query.
- * @param connectivityType ::OCConnectivityType type of connectivity.
- * @param resourceHandle resource handle of the resource.
- * @param callback Handles callbacks, success states and failure states.
- *
- * @return Returns ::OC_STACK_OK if success.
- */
- OCStackResult publishResourceToRD(const std::string& host,
- OCConnectivityType connectivityType,
- ResourceHandles& resourceHandles,
- PublishResourceCallback callback);
-
- /**
- * @overload
- *
- * @param host Host IP Address of a service to direct resource publish query.
- * @param connectivityType ::OCConnectivityType type of connectivity.
- * @param resourceHandle resource handle of the resource.
- * @param callback function to callback with published resources.
- * @param QoS the quality of communication.
- * @see publishResourceToRD(const std::string&, OCConnectivityType, OCResourceHandle,
- * uint8_t, PublishResourceCallback)
- */
- OCStackResult publishResourceToRD(const std::string& host,
- OCConnectivityType connectivityType,
- ResourceHandles& resourceHandles,
- PublishResourceCallback callback, QualityOfService QoS);
-
+ * send KeepAlive request to given host.
+ *
+ * @param rep include interval time of expected pong response
+ * @param resultCallback handles callback
+ *
+ * @return Returns ::OC_STACK_OK on success, some other value upon failure.
+ *
+ */
+ OCStackResult sendKeepAliveRequest(std::string host, const OCRepresentation& rep,
+ KeepAliveCallback resultCallback);
+#endif
/**
- * API for published resource delete from Resource Directory.
- * @note This API applies to resource server side only.
- *
- * @param host Host IP Address of a service to direct resource delete query.
- * @param connectivityType ::OCConnectivityType type of connectivity.
- * @param callback Handles callbacks, success states and failure states.
+ * gets the deviceId of the client
*
+ * @param deviceId pointer.
* @return Returns ::OC_STACK_OK if success.
*/
- OCStackResult deleteResourceFromRD(const std::string& host,
- OCConnectivityType connectivityType,
- DeleteResourceCallback callback);
+ OCStackResult getDeviceId(OCUUIdentity *deviceId);
/**
- * @overload
- *
- * @param host Host IP Address of a service to direct resource delete query.
- * @param connectivityType ::OCConnectivityType type of connectivity.
- * @param callback Handles callbacks, success states and failure states.
- * @param QoS the quality of communication.
+ * sets the deviceId of the client
*
+ * @param deviceId pointer.
* @return Returns ::OC_STACK_OK if success.
*/
- OCStackResult deleteResourceFromRD(const std::string& host,
- OCConnectivityType connectivityType,
- DeleteResourceCallback callback,
- QualityOfService QoS);
-
- /**
- * @overload
- *
- * @param host Host IP Address of a service to direct resource delete query.
- * @param connectivityType ::OCConnectivityType type of connectivity.
- * @param resourceHandle resource handle of the resource.
- * @param callback function to callback with published resources.
- * @see publishResourceToRD(const std::string&, OCConnectivityType, OCResourceHandle,
- * uint8_t, PublishResourceCallback)
- */
- OCStackResult deleteResourceFromRD(const std::string& host,
- OCConnectivityType connectivityType,
- ResourceHandles& resourceHandles,
- DeleteResourceCallback callback);
-
- /**
- * @overload
- *
- * @param host Host IP Address of a service to direct resource delete query.
- * @param connectivityType ::OCConnectivityType type of connectivity.
- * @param resourceHandle resource handle of the resource.
- * @param callback function to callback with published resources.
- * @param QoS the quality of communication.
- * @see publishResourceToRD(const std::string&, OCConnectivityType, OCResourceHandle,
- * uint8_t, PublishResourceCallback)
- */
- OCStackResult deleteResourceFromRD(const std::string& host,
- OCConnectivityType connectivityType,
- ResourceHandles& resourceHandles,
- DeleteResourceCallback callback, QualityOfService QoS);
-#endif
+ OCStackResult setDeviceId(const OCUUIdentity *deviceId);
}
}
#endif // OC_PLATFORM_H_
-
-
-