"No Authorization");
RETV_IF(NULL == resp->payload, OC_STACK_KEEP_TRANSACTION);
- if (PAYLOAD_TYPE_DEVICE != resp->payload->type) {
+ if (PAYLOAD_TYPE_REPRESENTATION != resp->payload->type) {
ERR("Invalid payload type (%d)", resp->payload->type);
return OC_STACK_KEEP_TRANSACTION;
}
- ret = ic_ioty_parse_oic_device_payload((OCDevicePayload *)resp->payload,
+ ret = ic_ioty_parse_oic_device_payload((OCRepPayload *)resp->payload,
&info);
if (IOTCON_ERROR_NONE != ret) {
ERR("ic_ioty_parse_oic_device_payload() Fail(%d)", ret);
"No Authorization");
RETV_IF(NULL == resp->payload, OC_STACK_KEEP_TRANSACTION);
- if (PAYLOAD_TYPE_PLATFORM != resp->payload->type) {
+ if (PAYLOAD_TYPE_REPRESENTATION != resp->payload->type) {
ERR("Invalid payload type (%d)", resp->payload->type);
return OC_STACK_KEEP_TRANSACTION;
}
- ret = ic_ioty_parse_oic_platform_payload((OCPlatformPayload *)resp->payload,
+ ret = ic_ioty_parse_oic_platform_payload((OCRepPayload *)resp->payload,
&info);
if (IOTCON_ERROR_NONE != ret) {
ERR("ic_ioty_parse_oic_platform_payload() Fail(%d)", ret);
RETV_IF(NULL == resp, OC_STACK_KEEP_TRANSACTION);
RETV_IF(NULL == presence, OC_STACK_KEEP_TRANSACTION);
+ DBG("presence->handle:[%p] vs handle:[%p]", presence->handle, handle);
+
ret = ic_ioty_parse_oic_presence_payload(&resp->devAddr,
(OCPresencePayload*)resp->payload, resp->result, &presence_response);
if (IOTCON_ERROR_NONE != ret) {
g_idle_add(_icl_ioty_ocprocess_lite_resource_response_idle_cb, res);
break;
case IOTCON_REQUEST_POST:
- if(NULL == repr) {
+ if (NULL == repr) {
ERR("repr is NULL!!");
break;
}
return IOTCON_ERROR_NONE;
}
-int ic_ioty_parse_oic_device_payload(OCDevicePayload *payload,
+int ic_ioty_parse_oic_device_payload(OCRepPayload *payload,
iotcon_device_info_h *device_info)
{
+ FN_CALL;
struct icl_device_info *info = NULL;
+ char **dmv = NULL;
+ size_t dim[MAX_REP_ARRAY_DEPTH] = {1, 0, 0};
RETV_IF(NULL == device_info, IOTCON_ERROR_INVALID_PARAMETER);
return IOTCON_ERROR_OUT_OF_MEMORY;
}
- if (payload->deviceName)
- info->device_name = strdup(payload->deviceName);
- else
- info->device_name = strdup("");
- if (NULL == info->device_name)
- ERR("strdup(device_name) Fail(%d)", errno);
-
- info->spec_ver = ic_utils_strdup(payload->specVersion);
- info->device_id = ic_utils_strdup(payload->sid);
- info->data_model_ver = OCCreateString(payload->dataModelVersions);
+ OCRepPayloadGetPropString(payload, OC_RSRVD_DEVICE_NAME, &(info->device_name));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_SPEC_VERSION, &(info->spec_ver));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_DEVICE_ID, &(info->device_id));
+ OCRepPayloadGetStringArray(payload, OC_RSRVD_DATA_MODEL_VERSION, &dmv, dim);
+ if (dmv) {
+ if (dmv[0]) {
+ info->data_model_ver = ic_utils_strdup(dmv[0]);
+ free(dmv[0]);
+ }
+ free(dmv);
+ }
*device_info = info;
return IOTCON_ERROR_NONE;
}
-int ic_ioty_parse_oic_platform_payload(OCPlatformPayload *payload,
+int ic_ioty_parse_oic_platform_payload(OCRepPayload *payload,
iotcon_platform_info_h *platform_info)
{
struct icl_platform_info *info = NULL;
return IOTCON_ERROR_OUT_OF_MEMORY;
}
- info->platform_id = ic_utils_strdup(payload->info.platformID);
- info->manuf_name = ic_utils_strdup(payload->info.manufacturerName);
- if (payload->info.manufacturerUrl)
- info->manuf_url = ic_utils_strdup(payload->info.manufacturerUrl);
- if (payload->info.modelNumber)
- info->model_number = ic_utils_strdup(payload->info.modelNumber);
- if (payload->info.dateOfManufacture)
- info->date_of_manuf = ic_utils_strdup(payload->info.dateOfManufacture);
- if (payload->info.platformVersion)
- info->platform_ver = ic_utils_strdup(payload->info.platformVersion);
- if (payload->info.operatingSystemVersion)
- info->os_ver = ic_utils_strdup(payload->info.operatingSystemVersion);
- if (payload->info.hardwareVersion)
- info->hardware_ver = ic_utils_strdup(payload->info.hardwareVersion);
- if (payload->info.firmwareVersion)
- info->firmware_ver = ic_utils_strdup(payload->info.firmwareVersion);
- if (payload->info.supportUrl)
- info->support_url = ic_utils_strdup(payload->info.supportUrl);
- if (payload->info.systemTime)
- info->system_time = ic_utils_strdup(payload->info.systemTime);
+ OCRepPayloadGetPropString(payload, OC_RSRVD_PLATFORM_ID, &(info->platform_id));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_MFG_NAME, &(info->manuf_name));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_MFG_URL, &(info->manuf_url));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_MODEL_NUM, &(info->model_number));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_MFG_DATE, &(info->date_of_manuf));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_PLATFORM_VERSION, &(info->platform_ver));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_OS_VERSION, &(info->os_ver));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_HARDWARE_VERSION, &(info->hardware_ver));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_FIRMWARE_VERSION, &(info->firmware_ver));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_SUPPORT_URL, &(info->support_url));
+ OCRepPayloadGetPropString(payload, OC_RSRVD_SYSTEM_TIME, &(info->system_time));
*platform_info = info;