OCRepPayloadSetPropInt(payload, NS_ATTRIBUTE_POLICY, NSGetPolicy());\r
OCRepPayloadSetPropString(payload, NS_ATTRIBUTE_MESSAGE, NS_COLLECTION_MESSAGE_URI);\r
OCRepPayloadSetPropString(payload, NS_ATTRIBUTE_SYNC, NS_COLLECTION_SYNC_URI);\r
+ OCRepPayloadSetPropString(payload, NS_ATTRIBUTE_TOPIC, NS_COLLECTION_TOPIC_URI);\r
\r
response.requestHandle = entityHandlerRequest->requestHandle;\r
response.resourceHandle = entityHandlerRequest->resource;\r
\r
bool iSRemoteServer = false;\r
\r
-#ifdef WITH_CLOUD\r
+#ifdef RD_CLIEND\r
iSRemoteServer = NSIsRemoteServerAddress(entityHandlerRequest->devAddr.addr);\r
if(iSRemoteServer)\r
{\r
else if (currPolicy == NS_POLICY_CONSUMER)\r
{\r
NS_LOG(DEBUG, "NSGetSubscriptionAccepter == NS_ACCEPTER_CONSUMER");\r
- NSSendSubscriptionResponse(entityHandlerRequest, true);\r
+ NSSendConsumerSubResponse(entityHandlerRequest);\r
}\r
}\r
else if (resourceType == NS_RESOURCE_SYNC)\r
subData->remote_syncObId = subData->syncObId = 0;\r
bool isRemoteServer = false;\r
\r
-#ifdef WITH_CLOUD\r
+#ifdef RD_CLIENT\r
isRemoteServer = NSIsRemoteServerAddress(entityHandlerRequest->devAddr.addr);\r
if(isRemoteServer)\r
{\r
{\r
NS_LOG(DEBUG, "NSHandleUnsubscription - IN");\r
\r
- NSProviderDeleteSubDataFromObId(consumerSubList, entityHandlerRequest->obsInfo.obsId);\r
+ consumerSubList->cacheType = NS_PROVIDER_CACHE_SUBSCRIBER_OBSERVE_ID;\r
+\r
+ while(NSStorageDelete(consumerSubList, (unsigned char *)\r
+ &(entityHandlerRequest->obsInfo.obsId)) != NS_FAIL);\r
+ consumerSubList->cacheType = NS_PROVIDER_CACHE_SUBSCRIBER;\r
\r
NSFreeOCEntityHandlerRequest(entityHandlerRequest);\r
\r
}\r
NSCacheSubData * subData = (NSCacheSubData*) element->data;\r
\r
- if (OCNotifyListOfObservers(rHandle, (OCObservationId*)&subData->messageObId, 1, payload, OC_HIGH_QOS)\r
+ if (OCNotifyListOfObservers(rHandle, (OCObservationId*)&subData->messageObId, 1, payload, OC_LOW_QOS)\r
!= OC_STACK_OK)\r
{\r
NS_LOG(ERROR, "fail to send Acceptance");\r
return NS_OK;\r
}\r
\r
-NSResult NSSendSubscriptionResponse(OCEntityHandlerRequest *entityHandlerRequest, bool accepted)\r
+NSResult NSSendConsumerSubResponse(OCEntityHandlerRequest * entityHandlerRequest)\r
{\r
NS_LOG(DEBUG, "NSSendSubscriptionResponse - IN");\r
\r
return NS_ERROR;\r
}\r
\r
- if (accepted)\r
- {\r
- NS_LOG(DEBUG, "accepted is true");\r
- NSCacheElement * element = (NSCacheElement *) OICMalloc(sizeof(NSCacheElement));\r
- NSCacheSubData * subData = (NSCacheSubData *) OICMalloc(sizeof(NSCacheSubData));\r
-\r
- OICStrcpy(subData->id, UUID_STRING_SIZE, id);\r
-\r
- subData->isWhite = true;\r
- subData->messageObId = entityHandlerRequest->obsInfo.obsId;\r
-\r
- element->data = (void*) subData;\r
- element->next = NULL;\r
-\r
- if (NSStorageWrite(consumerSubList, element) != NS_OK)\r
- {\r
- NS_LOG(ERROR, "fail to write consumer white list");\r
- }\r
- }\r
-\r
- NSSendResponse(id, accepted);\r
-\r
+ NSCacheUpdateSubScriptionState(consumerSubList, id, true);\r
+ NSSendResponse(id, true);\r
NSFreeOCEntityHandlerRequest(entityHandlerRequest);\r
-\r
NS_LOG(DEBUG, "NSSendSubscriptionResponse - OUT");\r
return NS_OK;\r
}\r