diff options
author | Daniel Wagner <daniel.wagner@bmw-carit.de> | 2012-08-13 10:40:25 +0200 |
---|---|---|
committer | Patrik Flykt <patrik.flykt@linux.intel.com> | 2012-08-30 13:02:51 +0300 |
commit | 5bdf8a28314cd50ac9a8cea8f58f156b114634b1 (patch) | |
tree | 9e2e7ebfaad299495e6be40f4f4854449f0f7291 /src | |
parent | 9844cb3d499b654e6d337dab29673513680b6bb5 (diff) | |
download | connman-5bdf8a28314cd50ac9a8cea8f58f156b114634b1.tar.gz connman-5bdf8a28314cd50ac9a8cea8f58f156b114634b1.tar.bz2 connman-5bdf8a28314cd50ac9a8cea8f58f156b114634b1.zip |
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.
Diffstat (limited to 'src')
-rw-r--r-- | src/session.c | 33 |
1 files changed, 15 insertions, 18 deletions
diff --git a/src/session.c b/src/session.c index a1341d78..485510fb 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); |