static GList * lookup_records (GResolver *resolver, const gchar *rrname, GResolverRecordType record_type, GCancellable *cancellable, GError **error) { GTask *task; GList *records; LookupRecordsData *lrd; task = g_task_new (resolver, cancellable, NULL, NULL); g_task_set_source_tag (task, lookup_records); lrd = g_slice_new (LookupRecordsData); lrd->rrname = g_strdup (rrname); lrd->record_type = record_type; g_task_set_task_data (task, lrd, (GDestroyNotify) free_lookup_records_data); g_task_set_return_on_cancel (task, TRUE); g_task_run_in_thread_sync (task, do_lookup_records); records = g_task_propagate_pointer (task, error); g_object_unref (task); return records; }
static void lookup_by_address_async (GResolver *resolver, GInetAddress *address, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) { GTask *task; task = g_task_new (resolver, cancellable, callback, user_data); g_task_set_task_data (task, g_object_ref (address), g_object_unref); g_task_set_return_on_cancel (task, TRUE); g_task_run_in_thread (task, do_lookup_by_address); g_object_unref (task); }
static void lookup_by_name_async (GResolver *resolver, const gchar *hostname, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) { GTask *task; task = g_task_new (resolver, cancellable, callback, user_data); g_task_set_task_data (task, g_strdup (hostname), g_free); g_task_set_return_on_cancel (task, TRUE); g_task_run_in_thread (task, do_lookup_by_name); g_object_unref (task); }
static void g_libproxy_resolver_lookup_async (GProxyResolver *resolver, const gchar *uri, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) { GTask *task; task = g_task_new (resolver, cancellable, callback, user_data); g_task_set_source_tag (task, g_libproxy_resolver_lookup_async); g_task_set_task_data (task, g_strdup (uri), g_free); g_task_set_return_on_cancel (task, TRUE); g_task_run_in_thread (task, get_libproxy_proxies); g_object_unref (task); }
static gchar * lookup_by_address (GResolver *resolver, GInetAddress *address, GCancellable *cancellable, GError **error) { GTask *task; gchar *name; task = g_task_new (resolver, cancellable, NULL, NULL); g_task_set_task_data (task, g_object_ref (address), g_object_unref); g_task_set_return_on_cancel (task, TRUE); g_task_run_in_thread_sync (task, do_lookup_by_address); name = g_task_propagate_pointer (task, error); g_object_unref (task); return name; }
static GList * lookup_by_name (GResolver *resolver, const gchar *hostname, GCancellable *cancellable, GError **error) { GTask *task; GList *addresses; task = g_task_new (resolver, cancellable, NULL, NULL); g_task_set_task_data (task, g_strdup (hostname), g_free); g_task_set_return_on_cancel (task, TRUE); g_task_run_in_thread_sync (task, do_lookup_by_name); addresses = g_task_propagate_pointer (task, error); g_object_unref (task); return addresses; }
static void ide_git_vcs_list_status_async (IdeVcs *vcs, GFile *directory_or_file, gboolean include_descendants, gint io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) { IdeGitVcs *self = (IdeGitVcs *)vcs; g_autoptr(GTask) task = NULL; ListStatus *state; IDE_ENTRY; g_return_if_fail (IDE_IS_GIT_VCS (self)); g_return_if_fail (!directory_or_file || G_IS_FILE (directory_or_file)); g_return_if_fail (!cancellable || G_IS_CANCELLABLE (cancellable)); g_mutex_lock (&self->repository_mutex); state = g_slice_new0 (ListStatus); state->directory_or_file = g_object_ref (directory_or_file); state->repository_location = ggit_repository_get_location (self->repository); state->recursive = !!include_descendants; g_mutex_unlock (&self->repository_mutex); task = g_task_new (self, cancellable, callback, user_data); g_task_set_source_tag (task, ide_git_vcs_list_status_async); g_task_set_priority (task, io_priority); g_task_set_return_on_cancel (task, TRUE); g_task_set_task_data (task, state, list_status_free); if (state->repository_location == NULL) g_task_return_new_error (task, G_IO_ERROR, G_IO_ERROR_FAILED, "No repository loaded"); else g_task_run_in_thread (task, ide_git_vcs_list_status_worker); IDE_EXIT; }
static void lookup_records_async (GResolver *resolver, const char *rrname, GResolverRecordType record_type, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) { GTask *task; LookupRecordsData *lrd; task = g_task_new (resolver, cancellable, callback, user_data); lrd = g_slice_new (LookupRecordsData); lrd->rrname = g_strdup (rrname); lrd->record_type = record_type; g_task_set_task_data (task, lrd, (GDestroyNotify) free_lookup_records_data); g_task_set_return_on_cancel (task, TRUE); g_task_run_in_thread (task, do_lookup_records); g_object_unref (task); }
void um_realm_login (UmRealmObject *realm, const gchar *user, const gchar *password, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) { GTask *task; LoginClosure *login; UmRealmKerberos *kerberos; g_return_if_fail (UM_REALM_IS_OBJECT (realm)); g_return_if_fail (user != NULL); g_return_if_fail (password != NULL); g_return_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable)); kerberos = um_realm_object_get_kerberos (realm); g_return_if_fail (kerberos != NULL); task = g_task_new (realm, cancellable, callback, user_data); login = g_slice_new0 (LoginClosure); login->domain = g_strdup (um_realm_kerberos_get_domain_name (kerberos)); login->realm = g_strdup (um_realm_kerberos_get_realm_name (kerberos)); login->user = g_strdup (user); login->password = g_strdup (password); g_task_set_task_data (task, login, login_closure_free); g_task_set_check_cancellable (task, TRUE); g_task_set_return_on_cancel (task, TRUE); g_task_run_in_thread (task, kinit_thread_func); g_object_unref (task); g_object_unref (kerberos); }