}
+static GVariant* _icl_representation_empty_gvariant(void)
+{
+ GVariant *value;
+ GVariantBuilder types, repr, children;
+
+ g_variant_builder_init(&types, G_VARIANT_TYPE("as"));
+ g_variant_builder_init(&repr, G_VARIANT_TYPE("a{sv}"));
+ g_variant_builder_init(&children, G_VARIANT_TYPE("av"));
+
+ value = g_variant_new("(siasa{sv}av)", IC_STR_NULL, 0, &types, &repr, &children);
+
+ return value;
+}
+
+
GVariant* icl_representation_to_gvariant(iotcon_representation_h repr)
{
GList *node;
GVariantBuilder *repr_gvar = NULL;
GVariantBuilder children, resource_types;
- RETV_IF(NULL == repr, NULL);
+ if (NULL == repr)
+ return _icl_representation_empty_gvariant();
/* uri path */
uri_path = ic_utils_dbus_encode_str(repr->uri_path);
int ret;
RETV_IF(NULL == resp, IOTCON_ERROR_INVALID_PARAMETER);
- RETV_IF(NULL == resp->repr, IOTCON_ERROR_INVALID_PARAMETER);
+ if (NULL == resp->repr)
+ return IOTCON_ERROR_NONE;
iotcon_representation_h first = resp->repr;
RETV_IF(NULL == icl_dbus_get_object(), IOTCON_ERROR_DBUS);
RETV_IF(NULL == resp, IOTCON_ERROR_INVALID_PARAMETER);
- RETV_IF(NULL == resp->repr, IOTCON_ERROR_INVALID_PARAMETER);
ret = _icl_response_check_representation_visibility(resp);
if (IOTCON_ERROR_NONE != ret) {