Fix test programs
Julius Härtl
6 years ago
30 | 30 | } CloudProviderPrivate; |
31 | 31 | |
32 | 32 | G_DEFINE_TYPE_WITH_PRIVATE (CloudProvider, cloud_provider, G_TYPE_OBJECT) |
33 | ||
34 | enum { | |
35 | CHANGED, | |
36 | READY, | |
37 | LAST_SIGNAL | |
38 | }; | |
39 | ||
40 | static guint gSignals [LAST_SIGNAL]; | |
41 | 33 | |
42 | 34 | void |
43 | 35 | cloud_provider_export_account(CloudProvider* cloud_provider, |
113 | 105 | { |
114 | 106 | CloudProviderPrivate *priv = cloud_provider_get_instance_private(cloud_provider); |
115 | 107 | gchar *object_path = g_strconcat(priv->object_path, "/", account_name, NULL); |
116 | g_dbus_connection_emit_signal (priv->bus, | |
117 | NULL, | |
118 | object_path, | |
119 | "org.freedesktop.CloudProvider.Account1", | |
120 | "CloudProviderChanged", | |
121 | NULL, | |
122 | NULL /*error*/); | |
108 | GDBusObject *object = g_dbus_object_manager_get_object((GDBusObjectManager*)priv->manager, object_path); | |
109 | CloudProviderAccount1 *account = cloud_provider_object_get_account1 (CLOUD_PROVIDER_OBJECT(object)); | |
110 | cloud_provider_account1_emit_cloud_provider_changed (account); | |
111 | g_object_unref (account); | |
112 | g_object_unref (object); | |
123 | 113 | g_free (object_path); |
124 | 114 | } |
115 | ||
125 | 116 | CloudProvider* |
126 | 117 | cloud_provider_new (GDBusConnection *bus, |
127 | 118 | const gchar *bus_name, |
153 | 144 | g_clear_object (&priv->bus); |
154 | 145 | g_free (priv->bus_name); |
155 | 146 | g_free (priv->object_path); |
147 | g_object_unref(priv->manager); | |
156 | 148 | |
157 | 149 | G_OBJECT_CLASS (cloud_provider_parent_class)->finalize (object); |
158 | 150 | } |
161 | 153 | cloud_provider_class_init (CloudProviderClass *klass) |
162 | 154 | { |
163 | 155 | GObjectClass *object_class = G_OBJECT_CLASS (klass); |
164 | ||
165 | 156 | object_class->finalize = cloud_provider_finalize; |
166 | ||
167 | gSignals [CHANGED] = | |
168 | g_signal_new ("changed", | |
169 | G_TYPE_FROM_CLASS (klass), | |
170 | G_SIGNAL_RUN_LAST, | |
171 | 0, | |
172 | NULL, | |
173 | NULL, | |
174 | g_cclosure_marshal_generic, | |
175 | G_TYPE_NONE, | |
176 | 0); | |
177 | gSignals [READY] = | |
178 | g_signal_new ("ready", | |
179 | G_TYPE_FROM_CLASS (klass), | |
180 | G_SIGNAL_RUN_LAST, | |
181 | 0, | |
182 | NULL, | |
183 | NULL, | |
184 | g_cclosure_marshal_generic, | |
185 | G_TYPE_NONE, | |
186 | 0); | |
187 | 157 | } |
188 | 158 | |
189 | 159 | static void |
20 | 20 | |
21 | 21 | #include <gio/gio.h> |
22 | 22 | #include "cloudprovider-generated.h" |
23 | /* for CloudProviderStatus enum */ | |
24 | #include "cloudproviderproxy.h" | |
23 | 25 | |
24 | 26 | G_BEGIN_DECLS |
25 | 27 | |
43 | 45 | { |
44 | 46 | GObject parent_instance; |
45 | 47 | }; |
46 | ||
47 | ||
48 | 48 | |
49 | 49 | void |
50 | 50 | cloud_provider_export_account (CloudProvider* cloud_provider, |
6 | 6 | GMainLoop *loop = g_main_loop_new(NULL, FALSE); |
7 | 7 | CloudProviderManager *manager = cloud_provider_manager_dup_singleton (); |
8 | 8 | g_main_loop_run(loop); |
9 | g_free(manager); | |
9 | g_object_unref(manager); | |
10 | 10 | g_free(loop); |
11 | 11 | return 0; |
12 | 12 | } |
220 | 220 | * Returns: (transfer none): The list of providers. |
221 | 221 | */ |
222 | 222 | GList* |
223 | cloud_providers_get_providers (CloudProviders *manager) | |
224 | { | |
225 | CloudProvidersPrivate *priv = cloud_providers_get_instance_private (manager); | |
226 | ||
223 | cloud_providers_get_providers (CloudProviders *self) | |
224 | { | |
225 | CloudProvidersPrivate *priv = cloud_providers_get_instance_private (self); | |
227 | 226 | return priv->providers; |
228 | 227 | } |
229 | 228 |
0 | 0 | #include <glib.h> |
1 | 1 | #include <cloudproviderproxy.h> |
2 | 2 | #include <cloudprovidermanager.h> |
3 | #include <cloudproviders.h> | |
3 | 4 | |
4 | 5 | static void |
5 | 6 | print_gmenu_model (GMenuModel *model) |
34 | 35 | } |
35 | 36 | |
36 | 37 | static void |
37 | on_manager_changed (CloudProviderManager *manager) | |
38 | on_manager_changed (CloudProviders *manager) | |
38 | 39 | { |
39 | 40 | GList *providers; |
40 | 41 | GList *l; |
44 | 45 | gchar *icon_representation; |
45 | 46 | GMenuModel *menu; |
46 | 47 | |
47 | providers = cloud_provider_manager_get_providers (manager); | |
48 | providers = cloud_providers_get_providers (manager); | |
48 | 49 | if(providers == NULL) |
49 | 50 | return; |
50 | 51 | g_print ("Providers data\n"); |
99 | 100 | main (gint argc, |
100 | 101 | gchar *argv[]) |
101 | 102 | { |
102 | CloudProviderManager *manager; | |
103 | CloudProviders *manager; | |
103 | 104 | GMainLoop *loop = g_main_loop_new(NULL, FALSE); |
104 | 105 | |
105 | manager = cloud_provider_manager_dup_singleton (); | |
106 | manager = cloud_providers_dup_singleton (); | |
106 | 107 | g_signal_connect (manager, "changed", G_CALLBACK (on_manager_changed), manager); |
107 | cloud_provider_manager_update (manager); | |
108 | cloud_providers_update (manager); | |
108 | 109 | |
109 | 110 | g_print("Waiting for cloud providers\n\n"); |
110 | 111 |
1 | 1 | #include <stdlib.h> |
2 | 2 | #include <gio/gio.h> |
3 | 3 | #include <cloudprovider.h> |
4 | /* for CLoudProviderStatus enum */ | |
4 | 5 | #include <cloudproviderproxy.h> |
5 | 6 | |
6 | 7 | |
214 | 215 | static gboolean |
215 | 216 | change_random_cloud_provider_state (gpointer user_data) |
216 | 217 | { |
217 | TestCloudProvider *cloud_provider = (TestCloudProvider *)user_data; | |
218 | TestCloudProvider *test_cloud_provider = (TestCloudProvider *)user_data; | |
218 | 219 | GRand *rand; |
219 | 220 | gint new_status; |
220 | 221 | gint account_id; |
228 | 229 | |
229 | 230 | account_object_name = g_strdup_printf ("MyCloud%d", account_id); |
230 | 231 | g_print ("Change status of %03d to %d\n", account_id, new_status); |
231 | test_cloud_provider_set_status (cloud_provider, new_status); | |
232 | cloud_provider_emit_changed (cloud_provider->cloud_provider, account_object_name); | |
232 | test_cloud_provider_set_status (test_cloud_provider, new_status); | |
233 | cloud_provider_emit_changed (test_cloud_provider->cloud_provider, account_object_name); | |
233 | 234 | return TRUE; |
234 | 235 | } |
235 | 236 |