seperate app enable/disable signal parameter 41/62541/4 accepted/tizen/ivi/20160323.010801 accepted/tizen/mobile/20160323.010651 accepted/tizen/tv/20160323.010723 accepted/tizen/wearable/20160323.010743 submit/tizen/20160322.002805
authorJunghyun Yeon <jungh.yeon@samsung.com>
Wed, 16 Mar 2016 11:53:09 +0000 (20:53 +0900)
committerJunghyun Yeon <jungh.yeon@samsung.com>
Mon, 21 Mar 2016 11:01:33 +0000 (04:01 -0700)
Change-Id: Ie38784869255bf35679895f5f4f0f0e7432e878b
Signed-off-by: Junghyun Yeon <jungh.yeon@samsung.com>
client/include/package-manager.h
client/src/pkgmgr.c
comm/comm_client_gdbus.c
comm/comm_config.h
comm/pkgmgr_installer.c
comm/pkgmgr_installer.h

index 1708f6e..47d5a9f 100644 (file)
@@ -110,7 +110,9 @@ extern "C" {
 #define PKGMGR_CLIENT_STATUS_CLEAR_DATA                                        0x10
 #define PKGMGR_CLIENT_STATUS_INSTALL_PROGRESS                  0x20
 #define PKGMGR_CLIENT_STATUS_GET_SIZE                          0x40
-#define PKGMGR_CLIENT_STATUS_ENABLE_DISABLE_APP                                0x80
+#define PKGMGR_CLIENT_STATUS_ENABLE_APP                                0x80
+#define PKGMGR_CLIENT_STATUS_DISABLE_APP                               0x100
+
 /** @} */
 
 /* new common error codes */
index c51da8f..c43b323 100644 (file)
@@ -813,7 +813,7 @@ static int __change_op_cb_for_getsize(pkgmgr_client *pc)
        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;
 
@@ -835,13 +835,19 @@ static int __change_op_cb_for_enable_disable(pkgmgr_client *pc)
 
        /* 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;
@@ -1379,7 +1385,7 @@ API int pkgmgr_client_usr_activate_app(pkgmgr_client *pc, const char *appid,
                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;
        }
@@ -1423,7 +1429,7 @@ API int pkgmgr_client_activate_global_app_for_uid(pkgmgr_client *pc,
                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;
        }
@@ -1463,7 +1469,7 @@ API int pkgmgr_client_usr_deactivate_app(pkgmgr_client *pc, const char *appid,
        }
 
        /* 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;
        }
@@ -1509,7 +1515,7 @@ API int pkgmgr_client_deactivate_global_app_for_uid(pkgmgr_client *pc,
                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;
        }
@@ -1619,14 +1625,19 @@ API int pkgmgr_client_set_status_type(pkgmgr_client *pc, int status_type)
        }
 
    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;
 }
index a332dd9..dd4bbfe 100644 (file)
@@ -79,8 +79,10 @@ static int __get_signal_type(const char *name)
                return COMM_STATUS_BROADCAST_UPGRADE;
        else if (strcmp(name, COMM_STATUS_BROADCAST_EVENT_GET_SIZE) == 0)
                return COMM_STATUS_BROADCAST_GET_SIZE;
-       else if (strcmp(name, COMM_STATUS_BROADCAST_EVENT_ENABLE_DISABLE_APP) == 0)
-               return COMM_STATUS_BROADCAST_ENABLE_DISABLE_APP;
+       else if (strcmp(name, COMM_STATUS_BROADCAST_EVENT_ENABLE_APP) == 0)
+               return COMM_STATUS_BROADCAST_ENABLE_APP;
+       else if (strcmp(name, COMM_STATUS_BROADCAST_EVENT_DISABLE_APP) == 0)
+               return COMM_STATUS_BROADCAST_DISABLE_APP;
        else
                return -1;
 }
index 937fa41..1d9454d 100644 (file)
@@ -48,7 +48,9 @@
 #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
@@ -98,14 +100,15 @@ enum {
 
 /* 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__ */
index b474a1a..c110953 100644 (file)
@@ -82,8 +82,10 @@ static const char *__get_signal_name(pkgmgr_installer *pi, const char *key)
                return COMM_STATUS_BROADCAST_EVENT_UPGRADE;
        case PKGMGR_REQ_MOVE:
                return COMM_STATUS_BROADCAST_EVENT_MOVE;
-       case PKGMGR_REQ_ENABLE_DISABLE_APP:
-               return COMM_STATUS_BROADCAST_EVENT_ENABLE_DISABLE_APP;
+       case PKGMGR_REQ_ENABLE_APP:
+               return COMM_STATUS_BROADCAST_EVENT_ENABLE_APP;
+       case PKGMGR_REQ_DISABLE_APP:
+               return COMM_STATUS_BROADCAST_EVENT_DISABLE_APP;
        }
 
        ERR("cannot find type, send signal with type SIGNAL_STATUS");
index 07b02bb..fa2c4e4 100644 (file)
@@ -84,7 +84,8 @@ enum {
        PKGMGR_REQ_UPGRADE = 8,
        PKGMGR_REQ_SMACK = 9,
        PKGMGR_REQ_MANIFEST_DIRECT_INSTALL = 10,
-       PKGMGR_REQ_ENABLE_DISABLE_APP = 11
+       PKGMGR_REQ_ENABLE_APP = 11,
+       PKGMGR_REQ_DISABLE_APP = 12
 };
 
 enum {