-NSMessage * NSGetMessage(OCClientResponse * clientResponse)
-{
- NS_VERIFY_NOT_NULL(clientResponse->payload, NULL);
- OCRepPayload * payload = (OCRepPayload *)clientResponse->payload;
-
- NS_LOG(DEBUG, "get msg id");
- uint64_t id = NULL;
- bool getResult = OCRepPayloadGetPropInt(payload, NS_ATTRIBUTE_MESSAGE_ID, (int64_t *)&id);
- NS_VERIFY_NOT_NULL(getResult == true ? (void *) 1 : NULL, NULL);
-
- NS_LOG(DEBUG, "get provider id");
- char * pId = NULL;
- getResult = OCRepPayloadGetPropString(payload, NS_ATTRIBUTE_PROVIDER_ID, &pId);
- NS_LOG_V (DEBUG, "provider id: %s", pId);
- NS_VERIFY_NOT_NULL(getResult == true ? (void *) 1 : NULL, NULL);
-
- NS_LOG(DEBUG, "create NSMessage");
- NSMessage * retMsg = NSCreateMessage_internal(id, pId);
- NS_VERIFY_NOT_NULL_WITH_POST_CLEANING(retMsg, NULL, NSOICFree(pId));
- NSOICFree(pId);
-
- NS_LOG(DEBUG, "get msg optional field");
- OCRepPayloadGetPropString(payload, NS_ATTRIBUTE_TITLE, &retMsg->title);
- OCRepPayloadGetPropString(payload, NS_ATTRIBUTE_TEXT, &retMsg->contentText);
- OCRepPayloadGetPropString(payload, NS_ATTRIBUTE_SOURCE, &retMsg->sourceName);
- OCRepPayloadGetPropString(payload, NS_ATTRIBUTE_TOPIC_NAME, &retMsg->topic);
-
- OCRepPayloadGetPropInt(payload, NS_ATTRIBUTE_TYPE, (int64_t *)&retMsg->type);
- OCRepPayloadGetPropString(payload, NS_ATTRIBUTE_DATETIME, &retMsg->dateTime);
- OCRepPayloadGetPropInt(payload, NS_ATTRIBUTE_TTL, (int64_t *)&retMsg->ttl);
-
- char * icon = NULL;
- OCRepPayloadGetPropString(payload, NS_ATTRIBUTE_ICON_IMAGE, &icon);
-
- if (icon)
- {
- NSMediaContents * contents = (NSMediaContents *)OICMalloc(sizeof(NSMediaContents));
- if (contents)
- {
- contents->iconImage = icon;
- retMsg->mediaContents = contents;
- }
- else
- {
- NSOICFree(icon);
- }
- }
-
- NS_LOG_V(DEBUG, "Msg ID : %lld", (long long int)retMsg->messageId);
- NS_LOG_V(DEBUG, "Msg Title : %s", retMsg->title);
- NS_LOG_V(DEBUG, "Msg Content : %s", retMsg->contentText);
- NS_LOG_V(DEBUG, "Msg Source : %s", retMsg->sourceName);
- NS_LOG_V(DEBUG, "Msg Topic : %s", retMsg->topic);
- NS_LOG_V(DEBUG, "Msg Type : %d", retMsg->type);
- NS_LOG_V(DEBUG, "Msg Date : %s", retMsg->dateTime);
- NS_LOG_V(DEBUG, "Msg ttl : %lld", (long long int)retMsg->ttl);
-
- return retMsg;
-}
-