service: Add function to update the service list order
authorJukka Rissanen <jukka.rissanen@linux.intel.com>
Thu, 5 Apr 2012 09:00:50 +0000 (12:00 +0300)
committerPatrik Flykt <patrik.flykt@linux.intel.com>
Thu, 5 Apr 2012 11:18:11 +0000 (14:18 +0300)
src/connman.h
src/service.c

index e97f856..a83c2a4 100644 (file)
@@ -545,6 +545,7 @@ connman_bool_t __connman_service_is_connected_state(struct connman_service *serv
 const char *__connman_service_get_ident(struct connman_service *service);
 const char *__connman_service_get_path(struct connman_service *service);
 unsigned int __connman_service_get_order(struct connman_service *service);
+void __connman_service_update_ordering(void);
 struct connman_network *__connman_service_get_network(struct connman_service *service);
 enum connman_service_security __connman_service_get_security(struct connman_service *service);
 const char *__connman_service_get_phase2(struct connman_service *service);
index 52b705e..cd7234f 100644 (file)
@@ -5245,6 +5245,15 @@ done:
        return service->order;
 }
 
+void __connman_service_update_ordering(void)
+{
+       GSequenceIter *iter;
+
+       iter = g_sequence_get_begin_iter(service_list);
+       if (iter != NULL)
+               g_sequence_sort_changed(iter, service_compare, NULL);
+}
+
 static enum connman_service_type convert_network_type(struct connman_network *network)
 {
        enum connman_network_type type = connman_network_get_type(network);