Add response logic for TopicListener.
authorjaesick.shin <jaesick.shin@samsung.com>
Thu, 8 Sep 2016 09:03:36 +0000 (18:03 +0900)
committerUze Choi <uzchoi@samsung.com>
Fri, 9 Sep 2016 02:23:50 +0000 (02:23 +0000)
Add response logic for OC_REST_POST case.
and call the NSSendTopicUpdationToConsumer().

Change-Id: I38de295bf143d504bb03cb090b6294a3d25017ec
Signed-off-by: jaesick.shin <jaesick.shin@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/11565
Reviewed-by: Uze Choi <uzchoi@samsung.com>
Tested-by: jenkins-iotivity <jenkins-iotivity@opendaylight.org>
service/notification/src/provider/NSProviderListener.c
service/notification/src/provider/NSProviderTopic.c

index eb8d4d3..8e1c653 100644 (file)
@@ -200,7 +200,7 @@ OCEntityHandlerResult NSEntityHandlerSyncCb(OCEntityHandlerFlag flag,
     if (OCDoResponse(&response) != OC_STACK_OK)\r
     {\r
         NS_LOG(ERROR, "Fail to AccessPolicy send response");\r
-        return NS_ERROR;\r
+        return OC_EH_ERROR;\r
     }\r
 \r
     NS_LOG(DEBUG, "NSEntityHandlerSyncCb - OUT");\r
@@ -252,6 +252,23 @@ OCEntityHandlerResult NSEntityHandlerTopicCb(OCEntityHandlerFlag flag,
                 NSPushQueue(TOPIC_SCHEDULER, TASK_POST_TOPIC,\r
                         NSCopyOCEntityHandlerRequest(entityHandlerRequest));\r
                 ehResult = OC_EH_OK;\r
+                OCEntityHandlerResponse response;\r
+                response.numSendVendorSpecificHeaderOptions = 0;\r
+                memset(response.sendVendorSpecificHeaderOptions, 0,\r
+                        sizeof response.sendVendorSpecificHeaderOptions);\r
+                memset(response.resourceUri, 0, sizeof response.resourceUri);\r
+\r
+                response.requestHandle = entityHandlerRequest->requestHandle;\r
+                response.resourceHandle = entityHandlerRequest->resource;\r
+                response.persistentBufferFlag = 0;\r
+                response.ehResult = ehResult;\r
+                response.payload = (OCPayload *) NULL;\r
+\r
+                if (OCDoResponse(&response) != OC_STACK_OK)\r
+                {\r
+                    NS_LOG(ERROR, "Fail to AccessPolicy send response");\r
+                    return OC_EH_ERROR;\r
+                }\r
             }\r
         }\r
         else\r
index 1786b5b..93eb541 100644 (file)
@@ -367,6 +367,7 @@ NSResult NSPostConsumerTopics(OCEntityHandlerRequest * entityHandlerRequest)
             NSStorageWrite(consumerTopicList, newObj);\r
         }\r
     }\r
+    NSSendTopicUpdationToConsumer(consumerId);\r
 \r
     NS_LOG(DEBUG, "NSPostConsumerTopics() - OUT");\r
     return NS_OK;\r