return PKGMGR_R_OK;
}
-static int __change_op_cb_for_enable_disable(pkgmgr_client *pc)
+static int __change_op_cb_for_enable_disable(pkgmgr_client *pc, bool is_disable)
{
int ret = -1;
/* Manage pc for seperated event */
mpc->ctype = PC_REQUEST;
- mpc->status_type = PKGMGR_CLIENT_STATUS_ENABLE_DISABLE_APP;
+ if (is_disable)
+ mpc->status_type = PKGMGR_CLIENT_STATUS_DISABLE_APP;
+ else
+ mpc->status_type = PKGMGR_CLIENT_STATUS_ENABLE_APP;
mpc->info.request.cc = comm_client_new();
retvm_if(mpc->info.request.cc == NULL, PKGMGR_R_ERROR, "client creation failed");
- ret = comm_client_set_status_callback(COMM_STATUS_BROADCAST_ENABLE_DISABLE_APP, mpc->info.request.cc, __operation_callback, pc);
+ if (is_disable)
+ ret = comm_client_set_status_callback(COMM_STATUS_BROADCAST_DISABLE_APP, mpc->info.request.cc, __operation_callback, pc);
+ else
+ ret = comm_client_set_status_callback(COMM_STATUS_BROADCAST_ENABLE_APP, mpc->info.request.cc, __operation_callback, pc);
retvm_if(ret < 0, PKGMGR_R_ERROR, "set_status_callback() failed - %d", ret);
return PKGMGR_R_OK;
return PKGMGR_R_EINVAL;
}
- if (__change_op_cb_for_enable_disable(mpc) < 0) {
+ if (__change_op_cb_for_enable_disable(mpc, false) < 0) {
ERR("__change_op_cb_for_enable_disable failed");
return PKGMGR_R_ESYSTEM;
}
return PKGMGR_R_EINVAL;
}
- if (__change_op_cb_for_enable_disable(mpc) < 0) {
+ if (__change_op_cb_for_enable_disable(mpc, false) < 0) {
ERR("__change_op_cb_for_enable_disable failed");
return PKGMGR_R_ESYSTEM;
}
}
/* FIXME */
- if (__change_op_cb_for_enable_disable(mpc) < 0) {
+ if (__change_op_cb_for_enable_disable(mpc, true) < 0) {
ERR("__change_op_cb_for_enable_disable failed");
return PKGMGR_R_ESYSTEM;
}
return PKGMGR_R_EINVAL;
}
- if (__change_op_cb_for_enable_disable(mpc) < 0) {
+ if (__change_op_cb_for_enable_disable(mpc, true) < 0) {
ERR("__change_op_cb_for_enable_disable failed");
return PKGMGR_R_ESYSTEM;
}
}
if ((mpc->status_type & PKGMGR_CLIENT_STATUS_UPGRADE) == PKGMGR_CLIENT_STATUS_UPGRADE) {
- ret = comm_client_set_status_callback(COMM_STATUS_BROADCAST_UPGRADE, mpc->info.listening.cc, __status_callback, pc);
- retvm_if(ret < 0, PKGMGR_R_ECOMM, "COMM_STATUS_BROADCAST_UPGRADE failed - %d", ret);
- }
-
- if ((mpc->status_type & PKGMGR_CLIENT_STATUS_ENABLE_DISABLE_APP) == PKGMGR_CLIENT_STATUS_ENABLE_DISABLE_APP) {
- ret = comm_client_set_status_callback(COMM_STATUS_BROADCAST_ENABLE_DISABLE_APP, mpc->info.listening.cc, __status_callback, pc);
- retvm_if(ret < 0, PKGMGR_R_ECOMM, "COMM_STATUS_BROADCAST_UPGRADE failed - %d", ret);
- }
+ ret = comm_client_set_status_callback(COMM_STATUS_BROADCAST_UPGRADE, mpc->info.listening.cc, __status_callback, pc);
+ retvm_if(ret < 0, PKGMGR_R_ECOMM, "COMM_STATUS_BROADCAST_UPGRADE failed - %d", ret);
+ }
+
+ if ((mpc->status_type & PKGMGR_CLIENT_STATUS_ENABLE_APP) == PKGMGR_CLIENT_STATUS_ENABLE_APP) {
+ ret = comm_client_set_status_callback(COMM_STATUS_BROADCAST_ENABLE_APP, mpc->info.listening.cc, __status_callback, pc);
+ retvm_if(ret < 0, PKGMGR_R_ECOMM, "COMM_STATUS_BROADCAST_ENABLE_APP failed - %d", ret);
+ }
+
+ if ((mpc->status_type & PKGMGR_CLIENT_STATUS_DISABLE_APP) == PKGMGR_CLIENT_STATUS_DISABLE_APP) {
+ ret = comm_client_set_status_callback(COMM_STATUS_BROADCAST_DISABLE_APP, mpc->info.listening.cc, __status_callback, pc);
+ retvm_if(ret < 0, PKGMGR_R_ECOMM, "COMM_STATUS_BROADCAST_DISABLE_APP failed - %d", ret);
+ }
return PKGMGR_R_OK;
}
#define COMM_STATUS_BROADCAST_EVENT_INSTALL_PROGRESS "install_progress"
#define COMM_STATUS_BROADCAST_EVENT_UPGRADE "upgrade"
#define COMM_STATUS_BROADCAST_EVENT_GET_SIZE "get_size"
-#define COMM_STATUS_BROADCAST_EVENT_ENABLE_DISABLE_APP "enable_disable_app"
+#define COMM_STATUS_BROADCAST_EVENT_ENABLE_APP "enable_app"
+#define COMM_STATUS_BROADCAST_EVENT_DISABLE_APP "disable_app"
+
/********
* enums
/* broadcast type */
enum {
- COMM_STATUS_BROADCAST_ALL = 0x7F,
+ COMM_STATUS_BROADCAST_ALL = 0xFF,
COMM_STATUS_BROADCAST_INSTALL = 0x01,
COMM_STATUS_BROADCAST_UNINSTALL = 0x02,
COMM_STATUS_BROADCAST_MOVE = 0x04,
COMM_STATUS_BROADCAST_INSTALL_PROGRESS = 0x08,
COMM_STATUS_BROADCAST_UPGRADE = 0x10,
COMM_STATUS_BROADCAST_GET_SIZE = 0x20,
- COMM_STATUS_BROADCAST_ENABLE_DISABLE_APP = 0x40,
+ COMM_STATUS_BROADCAST_ENABLE_APP = 0x40,
+ COMM_STATUS_BROADCAST_DISABLE_APP = 0x80,
};
#endif /* __COMM_CONFIG_H__ */