Use the destroy_event_type of dynamicbox_service.
authorSung-jae Park <nicesj.park@samsung.com>
Thu, 16 Oct 2014 12:22:11 +0000 (21:22 +0900)
committerSung-jae Park <nicesj.park@samsung.com>
Thu, 16 Oct 2014 12:22:11 +0000 (21:22 +0900)
it is commonly used via provider, master, viewer.

[model] Redwood,Kiran,B3(Wearable)
[binary_type] AP
[customer] Docomo/Orange/ATT/Open
[issue#] N/A
[problem]
[cause]
[solution]
[team] HomeTF
[request]
[horizontal_expansion]

Change-Id: Iede58103d83df2fca787f5afe9d246567d5f3d8d

include/instance.h
src/client_life.c
src/client_rpc.c
src/dead_monitor.c
src/instance.c
src/package.c
src/server.c

index 51b0240..bc86e41 100644 (file)
@@ -94,16 +94,6 @@ enum instance_event {
        INSTNACE_EVENT_UNKNOWN
 };
 
-enum instance_destroy_type {
-       INSTANCE_DESTROY_DEFAULT = 0x00,
-       INSTANCE_DESTROY_UPGRADE = 0x01,
-       INSTANCE_DESTROY_UNINSTALL = 0x02,
-       INSTANCE_DESTROY_TERMINATE = 0x03,
-       INSTANCE_DESTROY_FAULT = 0x04,
-       INSTANCE_DESTROY_TEMPORARY = 0x05,
-       INSTANCE_DESTROY_UNKNOWN = 0x06
-};
-
 enum instance_state {
        INST_INIT = 0x0, /*!< Only keeps in the master */
 
@@ -137,8 +127,8 @@ struct script_handle;
 struct client_node;
 
 extern struct inst_info *instance_create(struct client_node *client, double timestamp, const char *pkgname, const char *content, const char *cluster, const char *category, double period, int width, int height);
-extern int instance_destroy(struct inst_info *inst, enum instance_destroy_type type);
-extern int instance_reload(struct inst_info *inst, enum instance_destroy_type type);
+extern int instance_destroy(struct inst_info *inst, dynamicbox_destroy_type_e type);
+extern int instance_reload(struct inst_info *inst, dynamicbox_destroy_type_e type);
 
 extern struct inst_info * instance_ref(struct inst_info *inst);
 extern struct inst_info * instance_unref(struct inst_info *inst);
index 6006371..edb5048 100644 (file)
@@ -28,6 +28,7 @@
 #include <dlog.h>
 #include <packet.h>
 #include <dynamicbox_errno.h>
+#include <dynamicbox_service.h>
 
 #include "client_life.h"
 #include "instance.h"
index 723b37c..fb9c99f 100644 (file)
@@ -25,6 +25,7 @@
 #include <packet.h>
 #include <dynamicbox_errno.h>
 #include <dynamicbox_conf.h>
+#include <dynamicbox_service.h>
 
 #include "client_life.h"
 #include "instance.h"
index 313327f..bd2a0ee 100644 (file)
@@ -23,6 +23,7 @@
 #include <dlog.h>
 
 #include <Eina.h>
+#include <dynamicbox_service.h> /* destroy_type for instance.h */
 
 #include "slave_life.h"
 #include "client_life.h"
index 3fd2c65..8465711 100644 (file)
@@ -95,7 +95,7 @@ struct inst_info {
 
        enum instance_state state; /*!< Represents current state */
        enum instance_state requested_state; /*!< Only ACTIVATED | DESTROYED is acceptable */
-       enum instance_destroy_type destroy_type;
+       dynamicbox_destroy_type_e destroy_type;
        int changing_state;
        int unicast_delete_event;
 
@@ -226,7 +226,7 @@ static int viewer_deactivated_cb(struct client_node *client, void *data)
        inst->client_list = eina_list_remove(inst->client_list, client);
        if (!inst->client_list && !inst->client) {
                DbgPrint("Has no clients\n");
-               instance_destroy(inst, INSTANCE_DESTROY_FAULT);
+               instance_destroy(inst, DBOX_DESTROY_TYPE_FAULT);
        }
 
        instance_unref(inst);
@@ -540,7 +540,7 @@ static int instance_broadcast_deleted_event(struct inst_info *inst, int reason)
 static int client_deactivated_cb(struct client_node *client, void *data)
 {
        struct inst_info *inst = data;
-       instance_destroy(inst, INSTANCE_DESTROY_FAULT);
+       instance_destroy(inst, DBOX_DESTROY_TYPE_FAULT);
        return DBOX_STATUS_ERROR_NONE;
 }
 
@@ -860,7 +860,7 @@ HAPI struct inst_info *instance_create(struct client_node *client, double timest
        instance_ref(inst);
 
        if (package_add_instance(inst->info, inst) < 0) {
-               instance_destroy(inst, INSTANCE_DESTROY_FAULT);
+               instance_destroy(inst, DBOX_DESTROY_TYPE_FAULT);
                return NULL;
        }
 
@@ -868,7 +868,7 @@ HAPI struct inst_info *instance_create(struct client_node *client, double timest
 
        if (instance_activate(inst) < 0) {
                instance_state_reset(inst);
-               instance_destroy(inst, INSTANCE_DESTROY_FAULT);
+               instance_destroy(inst, DBOX_DESTROY_TYPE_FAULT);
                inst = NULL;
        }
 
@@ -959,7 +959,7 @@ static void deactivate_cb(struct slave_node *slave, const struct packet *packet,
                                instance_broadcast_deleted_event(inst, ret);
                        }
                        instance_state_reset(inst);
-                       instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                default:
                        /*!< Unable to reach here */
                        break;
@@ -993,7 +993,7 @@ static void deactivate_cb(struct slave_node *slave, const struct packet *packet,
                 */
                instance_broadcast_deleted_event(inst, ret);
                instance_state_reset(inst);
-               instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+               instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                break;
        }
 
@@ -1069,7 +1069,7 @@ static void reactivate_cb(struct slave_node *slave, const struct packet *packet,
                inst->state = INST_ACTIVATED;
                switch (inst->requested_state) {
                case INST_DESTROYED:
-                       instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                        break;
                case INST_ACTIVATED:
                        inst->is_pinned_up = is_pinned_up;
@@ -1156,7 +1156,7 @@ static void reactivate_cb(struct slave_node *slave, const struct packet *packet,
        default:
                instance_broadcast_deleted_event(inst, ret);
                instance_state_reset(inst);
-               instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+               instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                break;
        }
 
@@ -1234,7 +1234,7 @@ static void activate_cb(struct slave_node *slave, const struct packet *packet, v
                        /**
                         * In this case, we should destroy the instance.
                         */
-                       instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                        break;
                case INST_ACTIVATED:
                default:
@@ -1288,7 +1288,7 @@ static void activate_cb(struct slave_node *slave, const struct packet *packet, v
        default:
                instance_unicast_deleted_event(inst, NULL, ret);
                instance_state_reset(inst);
-               instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+               instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                break;
        }
 
@@ -1337,7 +1337,7 @@ HAPI int instance_create_dbox_buffer(struct inst_info *inst, int pixels)
        return !!inst->dbox.canvas.buffer;
 }
 
-HAPI int instance_destroy(struct inst_info *inst, enum instance_destroy_type type)
+HAPI int instance_destroy(struct inst_info *inst, dynamicbox_destroy_type_e type)
 {
        struct packet *packet;
        unsigned int cmd = CMD_DELETE;
@@ -1378,7 +1378,7 @@ HAPI int instance_destroy(struct inst_info *inst, enum instance_destroy_type typ
        return slave_rpc_async_request(package_slave(inst->info), package_name(inst->info), packet, deactivate_cb, instance_ref(inst), 0);
 }
 
-HAPI int instance_reload(struct inst_info *inst, enum instance_destroy_type type)
+HAPI int instance_reload(struct inst_info *inst, dynamicbox_destroy_type_e type)
 {
        struct packet *packet;
        unsigned int cmd = CMD_DELETE;
@@ -2817,7 +2817,7 @@ HAPI int instance_destroyed(struct inst_info *inst, int reason)
                        instance_broadcast_deleted_event(inst, reason);
                }
                instance_state_reset(inst);
-               instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+               instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                break;
        case INST_REQUEST_TO_REACTIVATE:
        case INST_REQUEST_TO_DESTROY:
@@ -2825,7 +2825,7 @@ HAPI int instance_destroyed(struct inst_info *inst, int reason)
                DbgPrint("Send deleted event - multicast\n");
                instance_broadcast_deleted_event(inst, reason);
                instance_state_reset(inst);
-               instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+               instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
        case INST_DESTROYED:
                break;
        default:
@@ -2866,7 +2866,7 @@ HAPI int instance_recover_state(struct inst_info *inst)
                case INST_DESTROYED:
                        DbgPrint("Req. to DESTROYED (%s)\n", package_name(inst->info));
                        instance_state_reset(inst);
-                       instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                        break;
                default:
                        break;
@@ -2883,7 +2883,7 @@ HAPI int instance_recover_state(struct inst_info *inst)
                                DbgPrint("Failed to reactivate the instance\n");
                                instance_broadcast_deleted_event(inst, DBOX_STATUS_ERROR_FAULT);
                                instance_state_reset(inst);
-                               instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                               instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                        } else {
                                ret = 1;
                        }
@@ -2891,7 +2891,7 @@ HAPI int instance_recover_state(struct inst_info *inst)
                case INST_DESTROYED:
                        DbgPrint("Req. to DESTROYED (%s)\n", package_name(inst->info));
                        instance_state_reset(inst);
-                       instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                        break;
                default:
                        break;
@@ -2929,7 +2929,7 @@ HAPI int instance_need_slave(struct inst_info *inst)
                case INST_REQUEST_TO_DESTROY:
                case INST_REQUEST_TO_ACTIVATE:
                        instance_state_reset(inst);
-                       instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                        break;
                case INST_DESTROYED:
                        break;
@@ -2951,7 +2951,7 @@ HAPI int instance_need_slave(struct inst_info *inst)
                case INST_DESTROYED:
                        DbgPrint("Req. to DESTROYED (%s)\n", package_name(inst->info));
                        instance_state_reset(inst);
-                       instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                        break;
                default:
                        break;
@@ -2968,7 +2968,7 @@ HAPI int instance_need_slave(struct inst_info *inst)
                case INST_DESTROYED:
                        DbgPrint("Req. to DESTROYED (%s)\n", package_name(inst->info));
                        instance_state_reset(inst);
-                       instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                        break;
                default:
                        break;
index 3120573..16da610 100644 (file)
@@ -1253,7 +1253,7 @@ static int io_uninstall_cb(const char *pkgid, const char *dbox_id, int prime, vo
         */
        if (info->inst_list) {
                EINA_LIST_FOREACH_SAFE(info->inst_list, l, n, inst) {
-                       instance_destroy(inst, INSTANCE_DESTROY_UNINSTALL);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_UNINSTALL);
                }
        } else {
                package_destroy(info);
@@ -1297,9 +1297,9 @@ static inline void reload_package_info(struct pkg_info *info)
                        if (instance_period(inst) == old_period) {
                                instance_reload_period(inst, package_period(info));
                        }
-                       instance_reload(inst, INSTANCE_DESTROY_UPGRADE);
+                       instance_reload(inst, DBOX_DESTROY_TYPE_UPGRADE);
                } else {
-                       instance_destroy(inst, INSTANCE_DESTROY_UNINSTALL);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_UNINSTALL);
                }
        }
 }
@@ -1416,7 +1416,7 @@ HAPI int package_fini(void)
        EINA_LIST_FOREACH_SAFE(s_info.pkg_list, p_l, p_n, info) {
                EINA_LIST_FOREACH_SAFE(info->inst_list, i_l, i_n, inst) {
                        instance_state_reset(inst);
-                       instance_destroy(inst, INSTANCE_DESTROY_TERMINATE);
+                       instance_destroy(inst, DBOX_DESTROY_TYPE_TERMINATE);
                }
 
                package_destroy(info);
@@ -1579,7 +1579,7 @@ HAPI int package_faulted(struct pkg_info *pkg, int broadcast)
        DbgPrint("package: %s (forucely faulted %s)\n", package_name(pkg), slave_name(slave));
        EINA_LIST_FOREACH_SAFE(pkg->inst_list, l, n, inst) {
                DbgPrint("Destroy instance %p\n", inst);
-               instance_destroy(inst, INSTANCE_DESTROY_FAULT);
+               instance_destroy(inst, DBOX_DESTROY_TYPE_FAULT);
        }
 
        return DBOX_STATUS_ERROR_NONE;
index 02e44bf..952cc08 100644 (file)
@@ -1123,10 +1123,10 @@ static struct packet *client_delete(pid_t pid, int handle, const struct packet *
        } else {
                switch (type) {
                case DBOX_DELETE_PERMANENTLY:
-                       ret = instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                       ret = instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                        break;
                case DBOX_DELETE_TEMPORARY:
-                       ret = instance_destroy(inst, INSTANCE_DESTROY_TEMPORARY);
+                       ret = instance_destroy(inst, DBOX_DESTROY_TYPE_TEMPORARY);
                        break;
                default:
                        break;
@@ -7693,7 +7693,7 @@ static struct packet *liveinfo_pkg_ctrl(pid_t pid, int handle, const struct pack
                if (!inst) {
                        liveinfo_set_data(info, (void *)ENOENT);
                } else {
-                       (void)instance_destroy(inst, INSTANCE_DESTROY_DEFAULT);
+                       (void)instance_destroy(inst, DBOX_DESTROY_TYPE_DEFAULT);
                        liveinfo_set_data(info, (void *)0);
                }