Add new reqeust API 15/116315/10
authorjongmyeongko <jongmyeong.ko@samsung.com>
Thu, 23 Feb 2017 14:50:34 +0000 (23:50 +0900)
committerjongmyeong ko <jongmyeong.ko@samsung.com>
Tue, 14 Mar 2017 09:16:06 +0000 (02:16 -0700)
commit51b5ff312f0450fca191ce29e96d3bba3635d058
treec71b57f8fdd7b5b61d4ebf89a82f7f54cdf55e24
parentf76114d4a9c0691e200ad89cdf89ec288c60cd8c
Add new reqeust API

this api makes it easy to register request callback.
this api registers individual request callback for each api call.

ex)
package_manager_request_create(&request);
package_manager_request_install_with_cb(request, pkg_path, callback_1, user_data);
package_manager_request_install_with_cb(request, pkg_path, callback_2, user_data);
package_manager_request_install_with_cb(request, pkg_path, callback_3, user_data);

The callback_1, callback_2 and callback3 will be invoked against 3 times api call above.

ref) legacy behavior
package_manager_request_create(&request);
package_manager_request_set_event_cb(request, callback_1, user_data);
package_manager_request_install(request, pkg_path, &id);
package_manager_request_set_event_cb(request, callback_2, user_data);
package_manager_request_install(request, pkg_path, &id);
package_manager_request_set_event_cb(request, callback_3, user_data);
package_manager_request_install(request, pkg_path, &id);

The package_manager_request_set_event_cb API always resets the request->event_cb as last one.
So, the last callback, that is callback_3, will be invoked 3 times against 3 times api call above.
We need to set only one event_cb for one request handle.

Change-Id: I7a805e4cec031431916af0a19871458d8ceeff7e
Signed-off-by: jongmyeongko <jongmyeong.ko@samsung.com>
include/package_manager.h
src/package_manager.c