diff options
author | Robert Ancell <robert.ancell@canonical.com> | 2017-12-15 13:17:33 +1300 |
---|---|---|
committer | Robert Ancell <robert.ancell@canonical.com> | 2017-12-15 13:17:33 +1300 |
commit | 5553e8f483a81085995d66319f05e8d930a12593 (patch) | |
tree | 7aa3b6be541f9fafa00f302e03cd93244ff7f52f | |
parent | ca3199f91378a03037140f7fbd79424c9ea92751 (diff) |
Replace deprecated GSimpleAsyncResult with GTask
-rw-r--r-- | src/libaccountsservice/act-user-manager.c | 90 |
1 files changed, 39 insertions, 51 deletions
diff --git a/src/libaccountsservice/act-user-manager.c b/src/libaccountsservice/act-user-manager.c index 6c6628b..97e5621 100644 --- a/src/libaccountsservice/act-user-manager.c +++ b/src/libaccountsservice/act-user-manager.c @@ -3129,11 +3129,10 @@ act_user_manager_async_complete_handler (GObject *source, GAsyncResult *result, gpointer user_data) { - GSimpleAsyncResult *res = user_data; + GTask *task = user_data; - g_simple_async_result_set_op_res_gpointer (res, g_object_ref (result), g_object_unref); - g_simple_async_result_complete (res); - g_object_unref (res); + g_task_return_pointer (task, g_object_ref (result), g_object_unref); + g_object_unref (task); } /** @@ -3164,7 +3163,7 @@ act_user_manager_create_user_async (ActUserManager *manager, GAsyncReadyCallback callback, gpointer user_data) { - GSimpleAsyncResult *res; + GTask *task; g_return_if_fail (ACT_IS_USER_MANAGER (manager)); g_return_if_fail (manager->priv->accounts_proxy != NULL); @@ -3174,17 +3173,16 @@ act_user_manager_create_user_async (ActUserManager *manager, g_assert (manager->priv->accounts_proxy != NULL); - res = g_simple_async_result_new (G_OBJECT (manager), - callback, user_data, - act_user_manager_create_user_async); - g_simple_async_result_set_check_cancellable (res, cancellable); + task = g_task_new (G_OBJECT (manager), + cancellable, + callback, user_data); accounts_accounts_call_create_user (manager->priv->accounts_proxy, username, fullname, accounttype, cancellable, - act_user_manager_async_complete_handler, res); + act_user_manager_async_complete_handler, task); } /** @@ -3209,14 +3207,12 @@ act_user_manager_create_user_finish (ActUserManager *manager, GAsyncResult *inner_result; ActUser *user = NULL; gchar *path; - GSimpleAsyncResult *res; GError *remote_error = NULL; - g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (manager), act_user_manager_create_user_async), FALSE); - - res = G_SIMPLE_ASYNC_RESULT (result); - inner_result = g_simple_async_result_get_op_res_gpointer (res); - g_assert (inner_result); + inner_result = g_task_propagate_pointer (G_TASK (result), error); + if (inner_result == NULL) { + return FALSE; + } if (accounts_accounts_call_create_user_finish (manager->priv->accounts_proxy, &path, inner_result, &remote_error)) { @@ -3301,22 +3297,21 @@ act_user_manager_cache_user_async (ActUserManager *manager, GAsyncReadyCallback callback, gpointer user_data) { - GSimpleAsyncResult *res; + GTask *task; g_return_if_fail (ACT_IS_USER_MANAGER (manager)); g_return_if_fail (manager->priv->accounts_proxy != NULL); g_debug ("ActUserManager: Caching user (async) '%s'", username); - res = g_simple_async_result_new (G_OBJECT (manager), - callback, user_data, - act_user_manager_cache_user_async); - g_simple_async_result_set_check_cancellable (res, cancellable); + task = g_task_new (G_OBJECT (manager), + cancellable, + callback, user_data); accounts_accounts_call_cache_user (manager->priv->accounts_proxy, username, cancellable, - act_user_manager_async_complete_handler, res); + act_user_manager_async_complete_handler, task); } /** @@ -3341,14 +3336,12 @@ act_user_manager_cache_user_finish (ActUserManager *manager, GAsyncResult *inner_result; ActUser *user = NULL; gchar *path; - GSimpleAsyncResult *res; GError *remote_error = NULL; - g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (manager), act_user_manager_cache_user_async), FALSE); - - res = G_SIMPLE_ASYNC_RESULT (result); - inner_result = g_simple_async_result_get_op_res_gpointer (res); - g_assert (inner_result); + inner_result = g_task_propagate_pointer (G_TASK (result), error); + if (inner_result == NULL) { + return FALSE; + } if (accounts_accounts_call_cache_user_finish (manager->priv->accounts_proxy, &path, inner_result, &remote_error)) { @@ -3427,7 +3420,7 @@ act_user_manager_uncache_user_async (ActUserManager *manager, GAsyncReadyCallback callback, gpointer user_data) { - GSimpleAsyncResult *res; + GTask *task; g_return_if_fail (ACT_IS_USER_MANAGER (manager)); g_return_if_fail (username != NULL); @@ -3435,15 +3428,14 @@ act_user_manager_uncache_user_async (ActUserManager *manager, g_debug ("ActUserManager: Uncaching user (async) '%s'", username); - res = g_simple_async_result_new (G_OBJECT (manager), - callback, user_data, - act_user_manager_uncache_user_async); - g_simple_async_result_set_check_cancellable (res, cancellable); + task = g_task_new (G_OBJECT (manager), + cancellable, + callback, user_data); accounts_accounts_call_uncache_user (manager->priv->accounts_proxy, username, cancellable, - act_user_manager_async_complete_handler, res); + act_user_manager_async_complete_handler, task); } /** @@ -3467,14 +3459,12 @@ act_user_manager_uncache_user_finish (ActUserManager *manager, { GAsyncResult *inner_result; gboolean success; - GSimpleAsyncResult *res; GError *remote_error = NULL; - g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (manager), act_user_manager_uncache_user_async), FALSE); - - res = G_SIMPLE_ASYNC_RESULT (result); - inner_result = g_simple_async_result_get_op_res_gpointer (res); - g_assert (inner_result); + inner_result = g_task_propagate_pointer (G_TASK (result), error); + if (inner_result == NULL) { + return FALSE; + } success = accounts_accounts_call_uncache_user_finish (manager->priv->accounts_proxy, inner_result, &remote_error); @@ -3552,23 +3542,22 @@ act_user_manager_delete_user_async (ActUserManager *manager, GAsyncReadyCallback callback, gpointer user_data) { - GSimpleAsyncResult *res; + GTask *task; g_return_if_fail (ACT_IS_USER_MANAGER (manager)); g_return_if_fail (ACT_IS_USER (user)); g_return_if_fail (manager->priv->accounts_proxy != NULL); - res = g_simple_async_result_new (G_OBJECT (manager), - callback, user_data, - act_user_manager_delete_user_async); - g_simple_async_result_set_check_cancellable (res, cancellable); + task = g_task_new (G_OBJECT (manager), + cancellable, + callback, user_data); g_debug ("ActUserManager: Deleting (async) user '%s' (uid %ld)", act_user_get_user_name (user), (long) act_user_get_uid (user)); accounts_accounts_call_delete_user (manager->priv->accounts_proxy, act_user_get_uid (user), remove_files, cancellable, - act_user_manager_async_complete_handler, res); + act_user_manager_async_complete_handler, task); } /** @@ -3592,13 +3581,12 @@ act_user_manager_delete_user_finish (ActUserManager *manager, { GAsyncResult *inner_result; gboolean success; - GSimpleAsyncResult *res; GError *remote_error = NULL; - g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (manager), act_user_manager_delete_user_async), FALSE); - res = G_SIMPLE_ASYNC_RESULT (result); - inner_result = g_simple_async_result_get_op_res_gpointer (res); - g_assert (inner_result); + inner_result = g_task_propagate_pointer (G_TASK (result), error); + if (inner_result == NULL) { + return FALSE; + } success = accounts_accounts_call_delete_user_finish (manager->priv->accounts_proxy, inner_result, &remote_error); |