...
{
int ret;
- ret = iotcon_remote_resource_start_observing(door_resource, IOTCON_OBSERVE_ALL, NULL,
+ ret = iotcon_remote_resource_set_notify_cb(door_resource, IOTCON_OBSERVE_ALL, NULL,
_on_resopnse_observe, NULL);
if (IOTCON_ERROR_NONE != ret)
return;
}
-API int iotcon_remote_resource_start_observing(iotcon_remote_resource_h resource,
+API int iotcon_remote_resource_set_notify_cb(iotcon_remote_resource_h resource,
iotcon_observe_type_e observe_type,
iotcon_query_h query,
iotcon_remote_resource_response_cb cb,
}
-API int iotcon_remote_resource_stop_observing(iotcon_remote_resource_h resource)
+API int iotcon_remote_resource_unset_notify_cb(iotcon_remote_resource_h resource)
{
int ret;
RET_IF(NULL == resource);
if (resource->observe_handle)
- iotcon_remote_resource_stop_observing(resource);
+ iotcon_remote_resource_unset_notify_cb(resource);
icl_remote_resource_crud_stop(resource);
return ret;
}
-
API int iotcon_resource_set_request_handler(iotcon_resource_h resource,
- iotcon_request_handler_cb cb)
+ iotcon_request_handler_cb cb, void *user_data)
{
RETV_IF(NULL == resource, IOTCON_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == cb, IOTCON_ERROR_INVALID_PARAMETER);
- WARN("Request handler is changed");
+ DBG("Request handler is changed");
resource->cb = cb;
+ resource->user_data = user_data;
return IOTCON_ERROR_NONE;
}
* @brief Sets a observer id into the observers handle
*
* @since_tizen 3.0
- * @remarks If you want to make a new list, then you should set NULL to @a observers.
*
* @param[in] observers The handle of the observers
* @param[in] obs_id The id to be appended to observers
* @brief Creates a new resource handle.
* @details Creates a resource proxy object so that iotcon_remote_resource_get(),
* iotcon_remote_resource_put(), iotcon_remote_resource_post(),
- * iotcon_remote_resource_delete(), iotcon_remote_resource_start_observing(),
+ * iotcon_remote_resource_delete(), iotcon_remote_resource_set_notify_cb(),
* iotcon_remote_resource_start_caching() and iotcon_remote_resource_start_monitoring()
* API can be used without discovering the object in advance.\n
* To use this API, you should provide all of the details required to correctly contact and
/**
* @brief Specifies the type of response function.
- * @details The function passed to iotcon_remote_resource_start_observing(),
+ * @details The function passed to iotcon_remote_resource_set_notify_cb(),
* iotcon_remote_resource_get(), iotcon_remote_resource_put(), iotcon_remote_resource_post(),
* iotcon_remote_resource_delete().
* The @a err could be one of #iotcon_error_e.
* @param[in] response The handle of the response
* @param[in] user_data The user data passed from the callback registration function
*
- * @pre The callback must be registered using iotcon_remote_resource_start_observing(),
+ * @pre The callback must be registered using iotcon_remote_resource_set_notify_cb(),
* iotcon_remote_resource_get(), iotcon_remote_resource_put(), iotcon_remote_resource_post(),
* iotcon_remote_resource_delete()
*
- * @see iotcon_remote_resource_start_observing()
+ * @see iotcon_remote_resource_set_notify_cb()
*/
typedef void (*iotcon_remote_resource_response_cb)(iotcon_remote_resource_h resource,
iotcon_error_e err,
void *user_data);
/**
- * @brief Starts observing on the resource
+ * @brief Sets notify callback on the resource
* @details When server sends notification message, iotcon_remote_resource_response_cb() will be called.
* The @a observe_type could be one of #iotcon_observe_type_e.
*
* @post When the @a resource receive notification message, iotcon_remote_resource_response_cb() will be called.
*
* @see iotcon_remote_resource_response_cb()
- * @see iotcon_remote_resource_stop_observing()
+ * @see iotcon_remote_resource_unset_notify_cb()
* @see iotcon_resource_notify()
*/
-int iotcon_remote_resource_start_observing(iotcon_remote_resource_h resource,
+int iotcon_remote_resource_set_notify_cb(iotcon_remote_resource_h resource,
iotcon_observe_type_e observe_type,
iotcon_query_h query,
iotcon_remote_resource_response_cb cb,
void *user_data);
/**
- * @brief Stops observing on the resource
+ * @brief Unsets notify callback on the resource
*
* @since_tizen 3.0
* @privlevel public
* @retval #IOTCON_ERROR_PERMISSION_DENIED Permission denied
*
* @see iotcon_remote_resource_response_cb()
- * @see iotcon_remote_resource_start_observing()
+ * @see iotcon_remote_resource_set_notify_cb()
* @see iotcon_resource_notify()
*/
-int iotcon_remote_resource_stop_observing(iotcon_remote_resource_h resource);
+int iotcon_remote_resource_unset_notify_cb(iotcon_remote_resource_h resource);
/**
* @brief Gets the attributes of a resource, asynchronously.
*
* @param[in] resource The handle of the resource
* @param[in] cb The request handler to be bound to the resource
+ * @param[in] user_data The user data to pass to the callback function
*
* @return 0 on success, otherwise a negative error value.
* @retval #IOTCON_ERROR_NONE Successful
* @see iotcon_request_handler_cb()
*/
int iotcon_resource_set_request_handler(iotcon_resource_h resource,
- iotcon_request_handler_cb cb);
+ iotcon_request_handler_cb cb, void *user_data);
/**
* @brief Binds a child resource into the parent resource.
* @retval #IOTCON_ERROR_PERMISSION_DENIED Permission denied
*
* @see iotcon_remote_resource_response_cb()
- * @see iotcon_remote_resource_start_observing()
- * @see iotcon_remote_resource_stop_observing()
+ * @see iotcon_remote_resource_set_notify_cb()
+ * @see iotcon_remote_resource_unset_notify_cb()
* @see iotcon_observers_create()
* @see iotcon_observers_destroy()
* @see iotcon_observers_add()
static void _on_response(iotcon_remote_resource_h resource, iotcon_error_e err,
iotcon_request_type_e request_type, iotcon_response_h response, void *user_data);
-static void _on_resopnse_observe(iotcon_remote_resource_h resource, iotcon_response_h response,
+static void _on_response_notify(iotcon_remote_resource_h resource, iotcon_response_h response,
void *user_data)
{
- INFO("_on_resopnse_observe");
+ INFO("_on_response_notify");
static int i = 0;
i++;
if (2 == i) {
- iotcon_remote_resource_stop_observing(resource);
+ iotcon_remote_resource_unset_notify_cb(resource);
iotcon_remote_resource_destroy(resource);
}
}
/* delete callback operations */
- ret = iotcon_remote_resource_start_observing(door_resource, IOTCON_OBSERVE_ALL, NULL,
+ ret = iotcon_remote_resource_set_notify_cb(door_resource, IOTCON_OBSERVE_ALL, NULL,
_on_response, NULL);
if (IOTCON_ERROR_NONE != ret)
- ERR("iotcon_remote_resource_start_observing() Fail(%d)", ret);
+ ERR("iotcon_remote_resource_set_notify_cb() Fail(%d)", ret);
iotcon_remote_resource_destroy(resource);
}
-static void _on_resopnse_post(iotcon_remote_resource_h resource, iotcon_response_h response,
+static void _on_response_post(iotcon_remote_resource_h resource, iotcon_response_h response,
void *user_data)
{
iotcon_state_h recv_state;
if (IOTCON_RESPONSE_RESULT_OK != response_result
&& IOTCON_RESPONSE_RESULT_RESOURCE_CREATED != response_result) {
- ERR("_on_resopnse_post Response error(%d)", response_result);
+ ERR("_on_response_post Response error(%d)", response_result);
return;
}
INFO("POST request was successful");
_on_response_put(resource, response, user_data);
break;
case IOTCON_REQUEST_POST:
- _on_resopnse_post(resource, response, user_data);
+ _on_response_post(resource, response, user_data);
break;
case IOTCON_REQUEST_DELETE:
_on_response_delete(resource, response, user_data);
break;
case IOTCON_REQUEST_OBSERVE:
- _on_resopnse_observe(resource, response, user_data);
+ _on_response_notify(resource, response, user_data);
break;
default:
ERR("Invalid request type (%d)", request_type);