First draft at the new object to maintain formerly-global state. (Not yet
authorDan Winship <danw@src.gnome.org>
Tue, 2 Sep 2003 16:15:19 +0000 (16:15 +0000)
committerDan Winship <danw@src.gnome.org>
Tue, 2 Sep 2003 16:15:19 +0000 (16:15 +0000)
commit1cc11d717a29e5835d03eb244f3a05e8bd6c039c
tree219e0b9ecdef463b1c370dd8cd41a5446c03dcef
parent1468fddca1027399c84834b968ccf2208394af26
First draft at the new object to maintain formerly-global state. (Not yet

* libsoup/soup-session.c: First draft at the new object to
maintain formerly-global state. (Not yet complete; still need to
get rid of SoupContext).

* libsoup/soup-message-queue.c: Data structure used by SoupSession

* libsoup/soup-queue.c: Gone. Mostly moved into soup-session, but
some bits went into soup-connection.

* libsoup/soup-connection.c (soup_connection_send_request): New,
to send a request on a connection. The connection updates its
internal state and then hands off to soup_message_send_request.
(request_done): Callback set up by soup_connection_send_request.
Marks the connection as no-longer-in-use, and disconnects it if
the message says to.
(soup_connection_set_in_use, soup_connection_mark_old): No longer
needed; the connection takes care of this itself now.
(soup_connection_new_proxy): New, to create a new connection that
is explicitly marked as being through an HTTP proxy.
(soup_connection_new_tunnel): New, to create a new HTTPS
connection through a proxy. (Includes the code to send the
CONNECT.)

* libsoup/soup-context.c (try_existing_connections): Don't need to
call soup_connection_set_in_use.
(try_create_connection): Use soup_connection_new,
soup_connection_new_proxy, or soup_connection_new_tunnel as
appropriate.

* libsoup/soup-message.c (soup_message_prepare): Replaces
queue_message.
(soup_message_queue, soup_message_requeue, soup_message_prepare):
Gone. This must be done via a SoupSession now.
(soup_message_set_connection): don't need to mark in_use/not
in_use. Also, msg->priv->socket is gone now.
(soup_message_get_socket): Gone.

* libsoup/soup-message-handlers.c (soup_message_run_handlers):
Remove references to global handlers.
(redirect_handler, authorize_handler): Moved to soup-session.c.

* libsoup/soup-misc.c (soup_shutdown): Gone; just unref the
session to shut down now.

* libsoup/soup.h: add soup-session.h

* libsoup/Makefile.am: updates

* tests/auth-test.c, tests/get.c, tests/simple-proxy.c: Use
SoupSession.
21 files changed:
ChangeLog
libsoup/Makefile.am
libsoup/soup-connection.c
libsoup/soup-connection.h
libsoup/soup-context.c
libsoup/soup-message-handlers.c
libsoup/soup-message-private.h
libsoup/soup-message-queue.c [new file with mode: 0644]
libsoup/soup-message-queue.h [new file with mode: 0644]
libsoup/soup-message.c
libsoup/soup-message.h
libsoup/soup-misc.c
libsoup/soup-misc.h
libsoup/soup-queue.c [deleted file]
libsoup/soup-queue.h [deleted file]
libsoup/soup-session.c [new file with mode: 0644]
libsoup/soup-session.h [new file with mode: 0644]
libsoup/soup.h
tests/auth-test.c
tests/get.c
tests/simple-proxy.c