summaryrefslogtreecommitdiff
path: root/libsoup/soup-session-async.c
diff options
context:
space:
mode:
Diffstat (limited to 'libsoup/soup-session-async.c')
-rw-r--r--libsoup/soup-session-async.c146
1 files changed, 0 insertions, 146 deletions
diff --git a/libsoup/soup-session-async.c b/libsoup/soup-session-async.c
deleted file mode 100644
index 3d67f66a..00000000
--- a/libsoup/soup-session-async.c
+++ /dev/null
@@ -1,146 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-/*
- * soup-session-async.c
- *
- * Copyright (C) 2000-2003, Ximian, Inc.
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include "soup-session-async.h"
-#include "soup.h"
-#include "soup-session-private.h"
-#include "soup-message-private.h"
-#include "soup-message-queue.h"
-#include "soup-misc.h"
-
-/**
- * SECTION:soup-session-async
- * @short_description: SoupSession for asynchronous (main-loop-based) I/O
- * (deprecated).
- *
- * #SoupSessionAsync is an implementation of #SoupSession that uses
- * non-blocking I/O via the glib main loop for all I/O.
- *
- * Deprecated: 2.42: Use the #SoupSession class (which uses both asynchronous
- * and synchronous I/O, depending on the API used). See the
- * <link linkend="libsoup-session-porting">porting guide</link>.
- **/
-
-G_GNUC_BEGIN_IGNORE_DEPRECATIONS;
-
-G_DEFINE_TYPE (SoupSessionAsync, soup_session_async, SOUP_TYPE_SESSION)
-
-static void
-soup_session_async_init (SoupSessionAsync *sa)
-{
-}
-
-/**
- * soup_session_async_new:
- *
- * Creates an asynchronous #SoupSession with the default options.
- *
- * Return value: the new session.
- *
- * Deprecated: #SoupSessionAsync is deprecated; use a plain
- * #SoupSession, created with soup_session_new(). See the <link
- * linkend="libsoup-session-porting">porting guide</link>.
- **/
-SoupSession *
-soup_session_async_new (void)
-{
- return g_object_new (SOUP_TYPE_SESSION_ASYNC, NULL);
-}
-
-/**
- * soup_session_async_new_with_options:
- * @optname1: name of first property to set
- * @...: value of @optname1, followed by additional property/value pairs
- *
- * Creates an asynchronous #SoupSession with the specified options.
- *
- * Return value: the new session.
- *
- * Deprecated: #SoupSessionAsync is deprecated; use a plain
- * #SoupSession, created with soup_session_new_with_options(). See the
- * <link linkend="libsoup-session-porting">porting guide</link>.
- **/
-SoupSession *
-soup_session_async_new_with_options (const char *optname1, ...)
-{
- SoupSession *session;
- va_list ap;
-
- va_start (ap, optname1);
- session = (SoupSession *)g_object_new_valist (SOUP_TYPE_SESSION_ASYNC,
- optname1, ap);
- va_end (ap);
-
- return session;
-}
-
-static guint
-soup_session_async_send_message (SoupSession *session, SoupMessage *msg)
-{
- SoupMessageQueueItem *item;
- GMainContext *async_context =
- soup_session_get_async_context (session);
-
- item = soup_session_append_queue_item (session, msg, TRUE, FALSE,
- NULL, NULL);
- soup_session_kick_queue (session);
-
- while (item->state != SOUP_MESSAGE_FINISHED)
- g_main_context_iteration (async_context, TRUE);
-
- soup_message_queue_item_unref (item);
-
- return msg->status_code;
-}
-
-static void
-soup_session_async_cancel_message (SoupSession *session, SoupMessage *msg,
- guint status_code)
-{
- SoupMessageQueue *queue;
- SoupMessageQueueItem *item;
-
- SOUP_SESSION_CLASS (soup_session_async_parent_class)->
- cancel_message (session, msg, status_code);
-
- queue = soup_session_get_queue (session);
- item = soup_message_queue_lookup (queue, msg);
- if (!item)
- return;
-
- /* Force it to finish immediately, so that
- * soup_session_abort (session); g_object_unref (session);
- * will work. (The soup_session_cancel_message() docs
- * point out that the callback will be invoked from
- * within the cancel call.)
- */
- if (soup_message_io_in_progress (msg))
- soup_message_io_finished (msg);
- else if (item->state != SOUP_MESSAGE_FINISHED)
- item->state = SOUP_MESSAGE_FINISHING;
-
- if (item->state != SOUP_MESSAGE_FINISHED)
- soup_session_process_queue_item (session, item, NULL, FALSE);
-
- soup_message_queue_item_unref (item);
-}
-
-static void
-soup_session_async_class_init (SoupSessionAsyncClass *soup_session_async_class)
-{
- SoupSessionClass *session_class = SOUP_SESSION_CLASS (soup_session_async_class);
-
- /* virtual method override */
- session_class->send_message = soup_session_async_send_message;
- session_class->cancel_message = soup_session_async_cancel_message;
-}
-
-G_GNUC_END_IGNORE_DEPRECATIONS;