From: Daniel Wagner Date: Mon, 13 Aug 2012 08:40:25 +0000 (+0200) Subject: session: Move Priority to configuration plugin X-Git-Tag: 1.7~54 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5bdf8a28314cd50ac9a8cea8f58f156b114634b1;p=platform%2Fupstream%2Fconnman.git session: Move Priority to configuration plugin The Priority setting which should be set by the platform integrator and not by the application developer is moved the configuration plugin. --- diff --git a/plugins/session_default.c b/plugins/session_default.c index 0c01139..a087ddf 100644 --- a/plugins/session_default.c +++ b/plugins/session_default.c @@ -26,6 +26,8 @@ #include #include +#include + #define CONNMAN_API_SUBJECT_TO_CHANGE #include #include @@ -35,9 +37,12 @@ static int config_get_bool(const char *id, const char *key, connman_bool_t *val) { DBG("id %s key %s", id, key); - *val = FALSE; + if (g_str_equal(key, "Priority") == TRUE) + *val = FALSE; + else + return -EINVAL; - return -EINVAL; + return 0; } static int config_get_string(const char *id, const char *key, char **val) diff --git a/src/session.c b/src/session.c index a1341d7..485510f 100644 --- a/src/session.c +++ b/src/session.c @@ -276,6 +276,16 @@ static char *service2bearer(enum connman_service_type type) return ""; } +static int config_get_bool(const char *id, const char *key, connman_bool_t *val) +{ + if (session_config == NULL) { + *val = FALSE; + return -EINVAL; + } + + return (*session_config->get_bool)(id, key, val); +} + static void cleanup_bearer_info(gpointer data, gpointer user_data) { struct bearer_info *info = data; @@ -465,14 +475,6 @@ static void append_notify(DBusMessageIter *dict, } if (session->append_all == TRUE || - info->priority != info_last->priority) { - connman_dbus_dict_append_basic(dict, "Priority", - DBUS_TYPE_BOOLEAN, - &info->priority); - info_last->priority = info->priority; - } - - if (session->append_all == TRUE || info->allowed_bearers != info_last->allowed_bearers) { connman_dbus_dict_append_array(dict, "AllowedBearers", DBUS_TYPE_STRING, @@ -558,7 +560,6 @@ static connman_bool_t compute_notifiable_changes(struct connman_session *session info->avoid_handover != info_last->avoid_handover || info->stay_connected != info_last->stay_connected || info->roaming_policy != info_last->roaming_policy || - info->priority != info_last->priority || info->ecall != info_last->ecall || info->type != info_last->type) return TRUE; @@ -1389,10 +1390,7 @@ static DBusMessage *change_session(DBusConnection *conn, } break; case DBUS_TYPE_BOOLEAN: - if (g_str_equal(name, "Priority") == TRUE) { - dbus_message_iter_get_basic(&value, - &info->priority); - } else if (g_str_equal(name, "AvoidHandover") == TRUE) { + if (g_str_equal(name, "AvoidHandover") == TRUE) { dbus_message_iter_get_basic(&value, &info->avoid_handover); } else if (g_str_equal(name, "StayConnected") == TRUE) { @@ -1519,7 +1517,7 @@ int __connman_session_create(DBusMessage *msg) struct session_info *info, *info_last; enum connman_session_type type = CONNMAN_SESSION_TYPE_ANY; - connman_bool_t priority = FALSE, avoid_handover = FALSE; + connman_bool_t priority, avoid_handover = FALSE; connman_bool_t stay_connected = FALSE, ecall = FALSE; enum connman_session_roaming_policy roaming_policy = CONNMAN_SESSION_ROAMING_POLICY_FORBIDDEN; @@ -1562,10 +1560,7 @@ int __connman_session_create(DBusMessage *msg) } break; case DBUS_TYPE_BOOLEAN: - if (g_str_equal(key, "Priority") == TRUE) { - dbus_message_iter_get_basic(&value, - &priority); - } else if (g_str_equal(key, "AvoidHandover") == TRUE) { + if (g_str_equal(key, "AvoidHandover") == TRUE) { dbus_message_iter_get_basic(&value, &avoid_handover); } else if (g_str_equal(key, "StayConnected") == TRUE) { @@ -1634,6 +1629,8 @@ int __connman_session_create(DBusMessage *msg) info = session->info; info_last = session->info_last; + config_get_bool(owner, "Priority", &priority); + session->owner = g_strdup(owner); session->session_path = session_path; session->notify_path = g_strdup(notify_path);