From: Patrik Flykt <[email protected]>
Remove support functions and 'Services' property from Manager
D-Bus API. Update gateway in all places service was changed.
---
v2: Call __connman_connection_update_gateway instead of services_changed
src/connman.h | 1 -
src/manager.c | 3 --
src/service.c | 73 ++++++--------------------------------------------------
3 files changed, 8 insertions(+), 69 deletions(-)
diff --git a/src/connman.h b/src/connman.h
index dcde0f3..6664ef6 100644
--- a/src/connman.h
+++ b/src/connman.h
@@ -510,7 +510,6 @@ int __connman_provider_init(void);
int __connman_service_init(void);
void __connman_service_cleanup(void);
-void __connman_service_list(DBusMessageIter *iter, void *user_data);
void __connman_service_list_struct(DBusMessageIter *iter);
struct connman_service *__connman_service_lookup_from_network(struct
connman_network *network);
diff --git a/src/manager.c b/src/manager.c
index 7cf1eec..b59e2ca 100644
--- a/src/manager.c
+++ b/src/manager.c
@@ -50,9 +50,6 @@ static DBusMessage *get_properties(DBusConnection *conn,
connman_dbus_dict_open(&array, &dict);
- connman_dbus_dict_append_array(&dict, "Services",
- DBUS_TYPE_OBJECT_PATH, __connman_service_list, NULL);
-
str = __connman_notifier_get_state();
connman_dbus_dict_append_basic(&dict, "State",
DBUS_TYPE_STRING, &str);
diff --git a/src/service.c b/src/service.c
index 3468ba3..e7b0c46 100644
--- a/src/service.c
+++ b/src/service.c
@@ -112,26 +112,6 @@ struct connman_service {
int online_check_count;
};
-static void append_path(gpointer value, gpointer user_data)
-{
- struct connman_service *service = value;
- DBusMessageIter *iter = user_data;
-
- if (service->path == NULL)
- return;
-
- dbus_message_iter_append_basic(iter, DBUS_TYPE_OBJECT_PATH,
- &service->path);
-}
-
-void __connman_service_list(DBusMessageIter *iter, void *user_data)
-{
- if (service_list == NULL)
- return;
-
- g_sequence_foreach(service_list, append_path, iter);
-}
-
struct find_data {
const char *path;
struct connman_service *service;
@@ -631,43 +611,6 @@ done:
return err;
}
-static guint changed_timeout = 0;
-
-static gboolean notify_services_changed(gpointer user_data)
-{
- changed_timeout = 0;
-
- connman_dbus_property_changed_array(CONNMAN_MANAGER_PATH,
- CONNMAN_MANAGER_INTERFACE, "Services",
- DBUS_TYPE_OBJECT_PATH, __connman_service_list,
- NULL);
-
- return FALSE;
-}
-
-static void services_changed(gboolean delayed)
-{
- DBG("");
-
- if (changed_timeout > 0) {
- g_source_remove(changed_timeout);
- changed_timeout = 0;
- }
-
- if (__connman_connection_update_gateway() == TRUE) {
- notify_services_changed(NULL);
- return;
- }
-
- if (delayed == FALSE) {
- notify_services_changed(NULL);
- return;
- }
-
- changed_timeout = g_timeout_add_seconds(1, notify_services_changed,
- NULL);
-}
-
static enum connman_service_state combine_state(
enum connman_service_state state_a,
enum connman_service_state state_b)
@@ -3291,7 +3234,7 @@ static DBusMessage *move_service(DBusConnection *conn,
downgrade_state(target);
}
- services_changed(FALSE);
+ __connman_connection_update_gateway();
return g_dbus_create_reply(msg, DBUS_TYPE_INVALID);
}
@@ -3493,7 +3436,7 @@ static void service_free(gpointer user_data)
service->path = NULL;
if (path != NULL) {
- services_changed(FALSE);
+ __connman_connection_update_gateway();
g_dbus_unregister_interface(connection, path,
CONNMAN_SERVICE_INTERFACE);
@@ -3905,7 +3848,7 @@ int __connman_service_set_favorite(struct connman_service
*service,
g_sequence_sort_changed(iter, service_compare, NULL);
- services_changed(FALSE);
+ __connman_connection_update_gateway();
return 0;
}
@@ -3972,7 +3915,7 @@ static void report_error_cb(struct connman_service
*service,
__connman_service_connect(service);
else {
service_complete(service);
- services_changed(FALSE);
+ __connman_connection_update_gateway();
__connman_device_request_scan(CONNMAN_DEVICE_TYPE_UNKNOWN);
}
}
@@ -4020,7 +3963,7 @@ static void request_input_cb (struct connman_service
*service,
if (values_received == FALSE || service->hidden == TRUE) {
service_complete(service);
- services_changed(FALSE);
+ __connman_connection_update_gateway();
__connman_device_request_scan(CONNMAN_DEVICE_TYPE_UNKNOWN);
return;
}
@@ -4210,7 +4153,7 @@ static int service_indicate_state(struct connman_service
*service)
if (iter != NULL)
g_sequence_sort_changed(iter, service_compare, NULL);
- services_changed(FALSE);
+ __connman_connection_update_gateway();
if (new_state == CONNMAN_SERVICE_STATE_ONLINE)
default_changed();
@@ -4917,7 +4860,7 @@ static int service_register(struct connman_service
*service)
if (iter != NULL)
g_sequence_sort_changed(iter, service_compare, NULL);
- services_changed(TRUE);
+ __connman_connection_update_gateway();
return 0;
}
@@ -5340,7 +5283,7 @@ struct connman_service *
__connman_service_create_from_network(struct connman_ne
if (service->path != NULL) {
update_from_network(service, network);
- services_changed(TRUE);
+ __connman_connection_update_gateway();
return service;
}
--
1.7.8.3
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman