replace : iotivity -> iotivity-sec
[platform/upstream/iotivity.git] / resource / include / InProcClientWrapper.h
index c4f0e59..ff62d7b 100644 (file)
@@ -67,6 +67,26 @@ namespace OC
                 : callback(cb1), errorCallback(cb2), clientWrapper(cw){}
         };
 
+        struct ListenResListContext
+        {
+            FindResListCallback callback;
+            std::weak_ptr<IClientWrapper> clientWrapper;
+
+            ListenResListContext(FindResListCallback cb, std::weak_ptr<IClientWrapper> cw)
+                : callback(cb), clientWrapper(cw){}
+        };
+
+        struct ListenResListWithErrorContext
+        {
+            FindResListCallback callback;
+            FindErrorCallback errorCallback;
+            std::weak_ptr<IClientWrapper> clientWrapper;
+
+            ListenResListWithErrorContext(FindResListCallback cb1, FindErrorCallback cb2,
+                               std::weak_ptr<IClientWrapper> cw)
+                : callback(cb1), errorCallback(cb2), clientWrapper(cw){}
+        };
+
         struct DeviceListenContext
         {
             FindDeviceCallback callback;
@@ -99,6 +119,23 @@ namespace OC
             DirectPairingContext(DirectPairingCallback cb) : callback(cb){}
 
         };
+#ifdef TCP_ADAPTER
+        struct KeepAliveContext
+        {
+            KeepAliveCallback callback;
+            KeepAliveContext(KeepAliveCallback cb) : callback(cb){}
+        };
+#endif
+
+#ifdef WITH_MQ
+        struct MQTopicContext
+        {
+            MQTopicCallback callback;
+            std::weak_ptr<IClientWrapper> clientWrapper;
+            MQTopicContext(MQTopicCallback cb, std::weak_ptr<IClientWrapper> cw)
+                : callback(cb), clientWrapper(cw){}
+        };
+#endif
     }
 
     class InProcClientWrapper : public IClientWrapper
@@ -114,6 +151,15 @@ namespace OC
             const std::string& resourceType, OCConnectivityType transportFlags,
             FindCallback& callback, QualityOfService QoS);
 
+        virtual OCStackResult ListenForResourceList(const std::string& serviceUrl,
+            const std::string& resourceType, OCConnectivityType transportFlags,
+            FindResListCallback& callback, QualityOfService QoS);
+
+        virtual OCStackResult ListenForResourceListWithError(const std::string& serviceUrl,
+            const std::string& resourceType, OCConnectivityType connectivityType,
+            FindResListCallback& callback, FindErrorCallback& errorCallback,
+            QualityOfService QoS);
+
         virtual OCStackResult ListenErrorForResource(const std::string& serviceUrl,
             const std::string& resourceType, OCConnectivityType transportFlags,
             FindCallback& callback, FindErrorCallback& errorCallback, QualityOfService QoS);
@@ -126,6 +172,7 @@ namespace OC
             const OCDevAddr& devAddr,
             const std::string& uri,
             const QueryParamsMap& queryParams, const HeaderOptions& headerOptions,
+            OCConnectivityType connectivityType,
             GetCallback& callback, QualityOfService QoS);
 
         virtual OCStackResult PutResourceRepresentation(
@@ -145,6 +192,7 @@ namespace OC
             const OCDevAddr& devAddr,
             const std::string& uri,
             const HeaderOptions& headerOptions,
+            OCConnectivityType connectivityType,
             DeleteCallback& callback, QualityOfService QoS);
 
         virtual OCStackResult ObserveResource(
@@ -168,8 +216,16 @@ namespace OC
             SubscribeCallback& presenceHandler);
 
         virtual OCStackResult UnsubscribePresence(OCDoHandle handle);
-        OCStackResult GetDefaultQos(QualityOfService& QoS);
 
+#ifdef WITH_CLOUD
+        virtual OCStackResult SubscribeDevicePresence(OCDoHandle* handle,
+                                                      const std::string& host,
+                                                      const std::vector<std::string>& di,
+                                                      OCConnectivityType connectivityType,
+                                                      ObserveCallback& callback);
+#endif
+
+        OCStackResult GetDefaultQos(QualityOfService& QoS);
 
         virtual OCStackResult FindDirectPairingDevices(unsigned short waittime,
                        GetDirectPairedCallback& callback);
@@ -179,9 +235,35 @@ namespace OC
         virtual OCStackResult DoDirectPairing(std::shared_ptr<OCDirectPairing> peer, const OCPrm_t& pmSel,
                 const std::string& pinNumber, DirectPairingCallback& resultCallback);
 
+#ifdef WITH_MQ
+        virtual OCStackResult ListenForMQTopic(
+            const OCDevAddr& devAddr,
+            const std::string& resourceUri,
+            const QueryParamsMap& queryParams, const HeaderOptions& headerOptions,
+            MQTopicCallback& callback, QualityOfService QoS);
+
+        virtual OCStackResult PutMQTopicRepresentation(
+            const OCDevAddr& devAddr,
+            const std::string& uri,
+            const OCRepresentation& rep,
+            const QueryParamsMap& queryParams, const HeaderOptions& headerOptions,
+            MQTopicCallback& callback, QualityOfService QoS);
+#endif
+
+        virtual OCStackResult stop();
+        virtual OCStackResult start();
+
+#ifdef TCP_ADAPTER
+        virtual OCStackResult findKeepAliveResource(std::string host,
+                                                    KeepAliveCallback resultCallback);
+        virtual OCStackResult sendKeepAliveRequest(std::string host, const OCRepresentation& rep,
+                                                             KeepAliveCallback resultCallback);
+#endif
+
     private:
         void listeningFunc();
         std::string assembleSetResourceUri(std::string uri, const QueryParamsMap& queryParams);
+        std::string assembleSetResourceUri(std::string uri, const QueryParamsList& queryParams);
         OCPayload* assembleSetResourcePayload(const OCRepresentation& attributes);
         OCHeaderOption* assembleHeaderOptions(OCHeaderOption options[],
            const HeaderOptions& headerOptions);