diff options
author | Ignacio Casal Quinteiro <icq@gnome.org> | 2016-12-01 08:43:32 +0100 |
---|---|---|
committer | Ignacio Casal Quinteiro <icq@gnome.org> | 2016-12-03 21:56:33 +0100 |
commit | cb2f7854ccb4069197898b693ff82c29cc69a5ef (patch) | |
tree | 1e91af654fce067dde056fe6386a208f4c9a96b4 | |
parent | efcb377dde512f453ee90e31682540678f37fdae (diff) | |
download | libsoup-cb2f7854ccb4069197898b693ff82c29cc69a5ef.tar.gz |
Port more classes to the new private api
Now only SoupMessage is missing since the private from this class
is accessed from other classes.
-rw-r--r-- | libsoup/soup-multipart-input-stream.c | 19 | ||||
-rw-r--r-- | libsoup/soup-proxy-resolver-default.c | 31 | ||||
-rw-r--r-- | libsoup/soup-request-data.c | 7 | ||||
-rw-r--r-- | libsoup/soup-request-file.c | 8 | ||||
-rw-r--r-- | libsoup/soup-request-http.c | 8 | ||||
-rw-r--r-- | libsoup/soup-request.c | 17 | ||||
-rw-r--r-- | libsoup/soup-requester.c | 6 | ||||
-rw-r--r-- | libsoup/soup-server.c | 74 | ||||
-rw-r--r-- | libsoup/soup-session.c | 96 | ||||
-rw-r--r-- | libsoup/soup-socket.c | 117 | ||||
-rw-r--r-- | libsoup/soup-websocket-connection.c | 7 |
11 files changed, 196 insertions, 194 deletions
diff --git a/libsoup/soup-multipart-input-stream.c b/libsoup/soup-multipart-input-stream.c index a1a66838..d44991cb 100644 --- a/libsoup/soup-multipart-input-stream.c +++ b/libsoup/soup-multipart-input-stream.c @@ -37,12 +37,6 @@ * Since: 2.40 **/ -static void soup_multipart_input_stream_pollable_init (GPollableInputStreamInterface *pollable_interface, gpointer interface_data); - -G_DEFINE_TYPE_WITH_CODE (SoupMultipartInputStream, soup_multipart_input_stream, G_TYPE_FILTER_INPUT_STREAM, - G_IMPLEMENT_INTERFACE (G_TYPE_POLLABLE_INPUT_STREAM, - soup_multipart_input_stream_pollable_init)) - enum { PROP_0, @@ -65,6 +59,13 @@ struct _SoupMultipartInputStreamPrivate { goffset remaining_bytes; }; +static void soup_multipart_input_stream_pollable_init (GPollableInputStreamInterface *pollable_interface, gpointer interface_data); + +G_DEFINE_TYPE_WITH_CODE (SoupMultipartInputStream, soup_multipart_input_stream, G_TYPE_FILTER_INPUT_STREAM, + G_ADD_PRIVATE (SoupMultipartInputStream) + G_IMPLEMENT_INTERFACE (G_TYPE_POLLABLE_INPUT_STREAM, + soup_multipart_input_stream_pollable_init)) + static void soup_multipart_input_stream_dispose (GObject *object) { @@ -201,9 +202,7 @@ static void soup_multipart_input_stream_init (SoupMultipartInputStream *multipart) { SoupMultipartInputStreamPrivate *priv; - priv = multipart->priv = G_TYPE_INSTANCE_GET_PRIVATE (multipart, - SOUP_TYPE_MULTIPART_INPUT_STREAM, - SoupMultipartInputStreamPrivate); + priv = multipart->priv = soup_multipart_input_stream_get_instance_private (multipart); priv->meta_buf = g_byte_array_sized_new (RESPONSE_BLOCK_SIZE); priv->done_with_part = FALSE; @@ -290,8 +289,6 @@ soup_multipart_input_stream_class_init (SoupMultipartInputStreamClass *multipart GInputStreamClass *input_stream_class = G_INPUT_STREAM_CLASS (multipart_class); - g_type_class_add_private (multipart_class, sizeof (SoupMultipartInputStreamPrivate)); - object_class->dispose = soup_multipart_input_stream_dispose; object_class->finalize = soup_multipart_input_stream_finalize; object_class->constructed = soup_multipart_input_stream_constructed; diff --git a/libsoup/soup-proxy-resolver-default.c b/libsoup/soup-proxy-resolver-default.c index 7fd09349..adfc54d2 100644 --- a/libsoup/soup-proxy-resolver-default.c +++ b/libsoup/soup-proxy-resolver-default.c @@ -34,12 +34,6 @@ * Deprecated: Use #SoupSession:proxy-resolver */ -static void soup_proxy_resolver_default_interface_init (SoupProxyURIResolverInterface *proxy_resolver_interface); - -G_DEFINE_TYPE_EXTENDED (SoupProxyResolverDefault, soup_proxy_resolver_default, G_TYPE_OBJECT, 0, - G_IMPLEMENT_INTERFACE (SOUP_TYPE_SESSION_FEATURE, NULL) - G_IMPLEMENT_INTERFACE (SOUP_TYPE_PROXY_URI_RESOLVER, soup_proxy_resolver_default_interface_init)) - enum { PROP_0, PROP_GPROXY_RESOLVER @@ -48,7 +42,13 @@ enum { typedef struct { GProxyResolver *gproxy_resolver; } SoupProxyResolverDefaultPrivate; -#define SOUP_PROXY_RESOLVER_DEFAULT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SOUP_TYPE_PROXY_RESOLVER_DEFAULT, SoupProxyResolverDefaultPrivate)) + +static void soup_proxy_resolver_default_interface_init (SoupProxyURIResolverInterface *proxy_resolver_interface); + +G_DEFINE_TYPE_EXTENDED (SoupProxyResolverDefault, soup_proxy_resolver_default, G_TYPE_OBJECT, 0, + G_ADD_PRIVATE (SoupProxyResolverDefault) + G_IMPLEMENT_INTERFACE (SOUP_TYPE_SESSION_FEATURE, NULL) + G_IMPLEMENT_INTERFACE (SOUP_TYPE_PROXY_URI_RESOLVER, soup_proxy_resolver_default_interface_init)) static void soup_proxy_resolver_default_init (SoupProxyResolverDefault *resolver) @@ -59,7 +59,8 @@ static void soup_proxy_resolver_default_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { - SoupProxyResolverDefaultPrivate *priv = SOUP_PROXY_RESOLVER_DEFAULT_GET_PRIVATE (object); + SoupProxyResolverDefault *resolver = SOUP_PROXY_RESOLVER_DEFAULT (object); + SoupProxyResolverDefaultPrivate *priv = soup_proxy_resolver_default_get_instance_private (resolver); switch (prop_id) { case PROP_GPROXY_RESOLVER: @@ -76,7 +77,8 @@ soup_proxy_resolver_default_set_property (GObject *object, guint prop_id, static void soup_proxy_resolver_default_constructed (GObject *object) { - SoupProxyResolverDefaultPrivate *priv = SOUP_PROXY_RESOLVER_DEFAULT_GET_PRIVATE (object); + SoupProxyResolverDefault *resolver = SOUP_PROXY_RESOLVER_DEFAULT (object); + SoupProxyResolverDefaultPrivate *priv = soup_proxy_resolver_default_get_instance_private (resolver); if (!priv->gproxy_resolver) { priv->gproxy_resolver = g_proxy_resolver_get_default (); @@ -89,7 +91,8 @@ soup_proxy_resolver_default_constructed (GObject *object) static void soup_proxy_resolver_default_finalize (GObject *object) { - SoupProxyResolverDefaultPrivate *priv = SOUP_PROXY_RESOLVER_DEFAULT_GET_PRIVATE (object); + SoupProxyResolverDefault *resolver = SOUP_PROXY_RESOLVER_DEFAULT (object); + SoupProxyResolverDefaultPrivate *priv = soup_proxy_resolver_default_get_instance_private (resolver); g_clear_object (&priv->gproxy_resolver); @@ -101,8 +104,6 @@ soup_proxy_resolver_default_class_init (SoupProxyResolverDefaultClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); - g_type_class_add_private (klass, sizeof (SoupProxyResolverDefaultPrivate)); - object_class->set_property = soup_proxy_resolver_default_set_property; object_class->constructed = soup_proxy_resolver_default_constructed; object_class->finalize = soup_proxy_resolver_default_finalize; @@ -178,7 +179,8 @@ get_proxy_uri_async (SoupProxyURIResolver *resolver, SoupProxyURIResolverCallback callback, gpointer user_data) { - SoupProxyResolverDefaultPrivate *priv = SOUP_PROXY_RESOLVER_DEFAULT_GET_PRIVATE (resolver); + SoupProxyResolverDefault *resolver_default = SOUP_PROXY_RESOLVER_DEFAULT (resolver); + SoupProxyResolverDefaultPrivate *priv = soup_proxy_resolver_default_get_instance_private (resolver_default); SoupAsyncData *async_data; char *uri_string; @@ -211,7 +213,8 @@ get_proxy_uri_sync (SoupProxyURIResolver *resolver, GCancellable *cancellable, SoupURI **proxy_uri) { - SoupProxyResolverDefaultPrivate *priv = SOUP_PROXY_RESOLVER_DEFAULT_GET_PRIVATE (resolver); + SoupProxyResolverDefault *resolver_default = SOUP_PROXY_RESOLVER_DEFAULT (resolver); + SoupProxyResolverDefaultPrivate *priv = soup_proxy_resolver_default_get_instance_private (resolver_default); GError *error = NULL; char** proxy_uris = NULL; char *uri_string; diff --git a/libsoup/soup-request-data.c b/libsoup/soup-request-data.c index 1b441319..3e075073 100644 --- a/libsoup/soup-request-data.c +++ b/libsoup/soup-request-data.c @@ -38,17 +38,18 @@ * #SoupRequestData implements #SoupRequest for "data" URIs. */ -G_DEFINE_TYPE (SoupRequestData, soup_request_data, SOUP_TYPE_REQUEST) struct _SoupRequestDataPrivate { gsize content_length; char *content_type; }; +G_DEFINE_TYPE_WITH_PRIVATE (SoupRequestData, soup_request_data, SOUP_TYPE_REQUEST) + static void soup_request_data_init (SoupRequestData *data) { - data->priv = G_TYPE_INSTANCE_GET_PRIVATE (data, SOUP_TYPE_REQUEST_DATA, SoupRequestDataPrivate); + data->priv = soup_request_data_get_instance_private (data); } static void @@ -151,8 +152,6 @@ soup_request_data_class_init (SoupRequestDataClass *request_data_class) SoupRequestClass *request_class = SOUP_REQUEST_CLASS (request_data_class); - g_type_class_add_private (request_data_class, sizeof (SoupRequestDataPrivate)); - request_class->schemes = data_schemes; object_class->finalize = soup_request_data_finalize; diff --git a/libsoup/soup-request-file.c b/libsoup/soup-request-file.c index 5a56b28b..61fc712d 100644 --- a/libsoup/soup-request-file.c +++ b/libsoup/soup-request-file.c @@ -40,8 +40,6 @@ * URIs. */ -G_DEFINE_TYPE (SoupRequestFile, soup_request_file, SOUP_TYPE_REQUEST) - struct _SoupRequestFilePrivate { GFile *gfile; @@ -49,10 +47,12 @@ struct _SoupRequestFilePrivate { goffset size; }; +G_DEFINE_TYPE_WITH_PRIVATE (SoupRequestFile, soup_request_file, SOUP_TYPE_REQUEST) + static void soup_request_file_init (SoupRequestFile *file) { - file->priv = G_TYPE_INSTANCE_GET_PRIVATE (file, SOUP_TYPE_REQUEST_FILE, SoupRequestFilePrivate); + file->priv = soup_request_file_get_instance_private (file); file->priv->size = -1; } @@ -265,8 +265,6 @@ soup_request_file_class_init (SoupRequestFileClass *request_file_class) SoupRequestClass *request_class = SOUP_REQUEST_CLASS (request_file_class); - g_type_class_add_private (request_file_class, sizeof (SoupRequestFilePrivate)); - request_class->schemes = file_schemes; object_class->finalize = soup_request_file_finalize; diff --git a/libsoup/soup-request-http.c b/libsoup/soup-request-http.c index 9ae2c2a7..285f59d7 100644 --- a/libsoup/soup-request-http.c +++ b/libsoup/soup-request-http.c @@ -44,13 +44,13 @@ * #SoupMessage. */ -G_DEFINE_TYPE (SoupRequestHTTP, soup_request_http, SOUP_TYPE_REQUEST) - struct _SoupRequestHTTPPrivate { SoupMessage *msg; char *content_type; }; +G_DEFINE_TYPE_WITH_PRIVATE (SoupRequestHTTP, soup_request_http, SOUP_TYPE_REQUEST) + static void content_sniffed (SoupMessage *msg, const char *content_type, GHashTable *params, @@ -59,7 +59,7 @@ static void content_sniffed (SoupMessage *msg, static void soup_request_http_init (SoupRequestHTTP *http) { - http->priv = G_TYPE_INSTANCE_GET_PRIVATE (http, SOUP_TYPE_REQUEST_HTTP, SoupRequestHTTPPrivate); + http->priv = soup_request_http_get_instance_private (http); } static gboolean @@ -203,8 +203,6 @@ soup_request_http_class_init (SoupRequestHTTPClass *request_http_class) SoupRequestClass *request_class = SOUP_REQUEST_CLASS (request_http_class); - g_type_class_add_private (request_http_class, sizeof (SoupRequestHTTPPrivate)); - request_class->schemes = http_schemes; object_class->finalize = soup_request_http_finalize; diff --git a/libsoup/soup-request.c b/libsoup/soup-request.c index e65f5071..72fc844b 100644 --- a/libsoup/soup-request.c +++ b/libsoup/soup-request.c @@ -47,12 +47,6 @@ * Since: 2.42 */ -static void soup_request_initable_interface_init (GInitableIface *initable_interface); - -G_DEFINE_TYPE_WITH_CODE (SoupRequest, soup_request, G_TYPE_OBJECT, - G_IMPLEMENT_INTERFACE (G_TYPE_INITABLE, - soup_request_initable_interface_init)) - enum { PROP_0, PROP_URI, @@ -64,10 +58,17 @@ struct _SoupRequestPrivate { SoupSession *session; }; +static void soup_request_initable_interface_init (GInitableIface *initable_interface); + +G_DEFINE_TYPE_WITH_CODE (SoupRequest, soup_request, G_TYPE_OBJECT, + G_ADD_PRIVATE (SoupRequest) + G_IMPLEMENT_INTERFACE (G_TYPE_INITABLE, + soup_request_initable_interface_init)) + static void soup_request_init (SoupRequest *request) { - request->priv = G_TYPE_INSTANCE_GET_PRIVATE (request, SOUP_TYPE_REQUEST, SoupRequestPrivate); + request->priv = soup_request_get_instance_private (request); } static void @@ -271,8 +272,6 @@ soup_request_class_init (SoupRequestClass *request_class) { GObjectClass *object_class = G_OBJECT_CLASS (request_class); - g_type_class_add_private (request_class, sizeof (SoupRequestPrivate)); - request_class->check_uri = soup_request_default_check_uri; request_class->send_async = soup_request_default_send_async; request_class->send_finish = soup_request_default_send_finish; diff --git a/libsoup/soup-requester.c b/libsoup/soup-requester.c index c67bfe31..61f66785 100644 --- a/libsoup/soup-requester.c +++ b/libsoup/soup-requester.c @@ -37,21 +37,19 @@ struct _SoupRequesterPrivate { }; G_DEFINE_TYPE_WITH_CODE (SoupRequester, soup_requester, G_TYPE_OBJECT, + G_ADD_PRIVATE (SoupRequester) G_IMPLEMENT_INTERFACE (SOUP_TYPE_SESSION_FEATURE, soup_requester_session_feature_init)) static void soup_requester_init (SoupRequester *requester) { - requester->priv = G_TYPE_INSTANCE_GET_PRIVATE (requester, - SOUP_TYPE_REQUESTER, - SoupRequesterPrivate); + requester->priv = soup_requester_get_instance_private (requester); } static void soup_requester_class_init (SoupRequesterClass *requester_class) { - g_type_class_add_private (requester_class, sizeof (SoupRequesterPrivate)); } static void diff --git a/libsoup/soup-server.c b/libsoup/soup-server.c index 15026cd5..47ebac36 100644 --- a/libsoup/soup-server.c +++ b/libsoup/soup-server.c @@ -118,8 +118,6 @@ * #GMainContext. */ -G_DEFINE_TYPE (SoupServer, soup_server, G_TYPE_OBJECT) - enum { REQUEST_STARTED, REQUEST_READ, @@ -188,7 +186,6 @@ typedef struct { gboolean disposed; } SoupServerPrivate; -#define SOUP_SERVER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SOUP_TYPE_SERVER, SoupServerPrivate)) #define SOUP_SERVER_SERVER_HEADER_BASE "libsoup/" PACKAGE_VERSION @@ -211,6 +208,8 @@ enum { LAST_PROP }; +G_DEFINE_TYPE_WITH_PRIVATE (SoupServer, soup_server, G_TYPE_OBJECT) + static SoupClientContext *soup_client_context_ref (SoupClientContext *client); static void soup_client_context_unref (SoupClientContext *client); @@ -232,7 +231,7 @@ free_handler (SoupServerHandler *handler) static void soup_server_init (SoupServer *server) { - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); priv->handlers = soup_path_map_new ((GDestroyNotify)free_handler); @@ -247,7 +246,7 @@ static void soup_server_dispose (GObject *object) { SoupServer *server = SOUP_SERVER (object); - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); priv->disposed = TRUE; soup_server_disconnect (server); @@ -259,7 +258,7 @@ static void soup_server_finalize (GObject *object) { SoupServer *server = SOUP_SERVER (object); - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); g_clear_object (&priv->legacy_iface); @@ -285,7 +284,7 @@ soup_server_finalize (GObject *object) static gboolean soup_server_ensure_listening (SoupServer *server) { - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); SoupSocket *listener; if (priv->listeners) @@ -329,7 +328,7 @@ soup_server_constructor (GType type, server = G_OBJECT_CLASS (soup_server_parent_class)-> constructor (type, n_construct_properties, construct_properties); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (SOUP_SERVER (server)); /* For backward compatibility, we have to process the * :ssl-cert-file, :ssl-key-file, :interface, and :port @@ -409,7 +408,8 @@ static void soup_server_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (object); + SoupServer *server = SOUP_SERVER (object); + SoupServerPrivate *priv = soup_server_get_instance_private (server); const char *header; switch (prop_id) { @@ -477,7 +477,7 @@ soup_server_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) { SoupServer *server = SOUP_SERVER (object); - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); switch (prop_id) { case PROP_PORT: @@ -523,8 +523,6 @@ soup_server_class_init (SoupServerClass *server_class) { GObjectClass *object_class = G_OBJECT_CLASS (server_class); - g_type_class_add_private (server_class, sizeof (SoupServerPrivate)); - /* virtual method override */ object_class->constructor = soup_server_constructor; object_class->dispose = soup_server_dispose; @@ -975,7 +973,7 @@ soup_server_get_port (SoupServer *server) SoupServerPrivate *priv; g_return_val_if_fail (SOUP_IS_SERVER (server), 0); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); soup_server_ensure_listening (server); g_return_val_if_fail (priv->legacy_iface != NULL, 0); @@ -1011,7 +1009,7 @@ soup_server_set_ssl_cert_file (SoupServer *server, SoupServerPrivate *priv; g_return_val_if_fail (SOUP_IS_SERVER (server), FALSE); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); if (priv->tls_cert) g_object_unref (priv->tls_cert); @@ -1055,7 +1053,7 @@ soup_server_is_https (SoupServer *server) SoupServerPrivate *priv; g_return_val_if_fail (SOUP_IS_SERVER (server), 0); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); return priv->tls_cert != NULL; } @@ -1081,7 +1079,7 @@ soup_server_get_listener (SoupServer *server) SoupServerPrivate *priv; g_return_val_if_fail (SOUP_IS_SERVER (server), NULL); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); soup_server_ensure_listening (server); g_return_val_if_fail (priv->legacy_iface != NULL, NULL); @@ -1111,7 +1109,7 @@ soup_server_get_listeners (SoupServer *server) GSList *listeners, *iter; g_return_val_if_fail (SOUP_IS_SERVER (server), NULL); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); listeners = NULL; for (iter = priv->listeners; iter; iter = iter->next) @@ -1182,7 +1180,7 @@ request_finished (SoupMessage *msg, SoupMessageIOCompletion completion, gpointer { SoupClientContext *client = user_data; SoupServer *server = client->server; - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); SoupSocket *sock = client->sock; gboolean failed; @@ -1224,7 +1222,7 @@ request_finished (SoupMessage *msg, SoupMessageIOCompletion completion, gpointer static SoupServerHandler * get_handler (SoupServer *server, SoupMessage *msg) { - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); SoupURI *uri; uri = soup_message_get_uri (msg); @@ -1271,7 +1269,7 @@ static void got_headers (SoupMessage *msg, SoupClientContext *client) { SoupServer *server = client->server; - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); SoupServerHandler *handler; SoupURI *uri; SoupDate *date; @@ -1417,7 +1415,7 @@ got_body (SoupMessage *msg, SoupClientContext *client) static void start_request (SoupServer *server, SoupClientContext *client) { - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); SoupMessage *msg; soup_client_context_cleanup (client); @@ -1447,7 +1445,7 @@ start_request (SoupServer *server, SoupClientContext *client) static void socket_disconnected (SoupSocket *sock, SoupClientContext *client) { - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (client->server); + SoupServerPrivate *priv = soup_server_get_instance_private (client->server); priv->clients = g_slist_remove (priv->clients, client); @@ -1461,7 +1459,7 @@ static void soup_server_accept_socket (SoupServer *server, SoupSocket *sock) { - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); SoupClientContext *client; client = soup_client_context_new (server, sock); @@ -1550,7 +1548,7 @@ soup_server_run_async (SoupServer *server) SoupSocket *listener; g_return_if_fail (SOUP_IS_SERVER (server)); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); soup_server_ensure_listening (server); @@ -1591,7 +1589,7 @@ soup_server_run (SoupServer *server) SoupServerPrivate *priv; g_return_if_fail (SOUP_IS_SERVER (server)); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); if (!priv->loop) { priv->loop = g_main_loop_new (priv->async_context, TRUE); @@ -1630,7 +1628,7 @@ soup_server_quit (SoupServer *server) SoupSocket *listener; g_return_if_fail (SOUP_IS_SERVER (server)); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); g_return_if_fail (priv->legacy_iface != NULL); g_return_if_fail (priv->listeners != NULL); @@ -1666,7 +1664,7 @@ soup_server_disconnect (SoupServer *server) SoupClientContext *client; g_return_if_fail (SOUP_IS_SERVER (server)); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); if (priv->legacy_iface) { G_GNUC_BEGIN_IGNORE_DEPRECATIONS; @@ -1716,7 +1714,7 @@ soup_server_listen_internal (SoupServer *server, SoupSocket *listener, SoupServerListenOptions options, GError **error) { - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); gboolean is_listening; if (options & SOUP_SERVER_LISTEN_HTTPS) { @@ -1804,7 +1802,7 @@ soup_server_listen (SoupServer *server, GSocketAddress *address, g_return_val_if_fail (!(options & SOUP_SERVER_LISTEN_IPV4_ONLY) && !(options & SOUP_SERVER_LISTEN_IPV6_ONLY), FALSE); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); g_return_val_if_fail (priv->disposed == FALSE, FALSE); saddr = soup_address_new_from_gsockaddr (address); @@ -1828,7 +1826,7 @@ soup_server_listen_ipv4_ipv6 (SoupServer *server, SoupServerListenOptions options, GError **error) { - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); GSocketAddress *addr4, *addr6; GError *my_error = NULL; SoupSocket *v4sock; @@ -2033,7 +2031,7 @@ soup_server_listen_socket (SoupServer *server, GSocket *socket, g_return_val_if_fail (!(options & SOUP_SERVER_LISTEN_IPV4_ONLY) && !(options & SOUP_SERVER_LISTEN_IPV6_ONLY), FALSE); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); g_return_val_if_fail (priv->disposed == FALSE, FALSE); listener = g_initable_new (SOUP_TYPE_SOCKET, NULL, error, @@ -2083,7 +2081,7 @@ soup_server_listen_fd (SoupServer *server, int fd, g_return_val_if_fail (!(options & SOUP_SERVER_LISTEN_IPV4_ONLY) && !(options & SOUP_SERVER_LISTEN_IPV6_ONLY), FALSE); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); g_return_val_if_fail (priv->disposed == FALSE, FALSE); listener = g_initable_new (SOUP_TYPE_SOCKET, NULL, error, @@ -2129,7 +2127,7 @@ soup_server_get_uris (SoupServer *server) gpointer creds; g_return_val_if_fail (SOUP_IS_SERVER (server), NULL); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); for (l = priv->listeners, uris = NULL; l; l = l->next) { listener = l->data; @@ -2172,7 +2170,7 @@ soup_server_get_async_context (SoupServer *server) SoupServerPrivate *priv; g_return_val_if_fail (SOUP_IS_SERVER (server), NULL); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); return priv->async_context; } @@ -2488,7 +2486,7 @@ soup_client_context_steal_connection (SoupClientContext *client) static SoupServerHandler * get_or_create_handler (SoupServer *server, const char *exact_path) { - SoupServerPrivate *priv = SOUP_SERVER_GET_PRIVATE (server); + SoupServerPrivate *priv = soup_server_get_instance_private (server); SoupServerHandler *handler; exact_path = NORMALIZED_PATH (exact_path); @@ -2719,7 +2717,7 @@ soup_server_remove_handler (SoupServer *server, const char *path) SoupServerPrivate *priv; g_return_if_fail (SOUP_IS_SERVER (server)); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); soup_path_map_remove (priv->handlers, NORMALIZED_PATH (path)); } @@ -2747,7 +2745,7 @@ soup_server_add_auth_domain (SoupServer *server, SoupAuthDomain *auth_domain) SoupServerPrivate *priv; g_return_if_fail (SOUP_IS_SERVER (server)); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); priv->auth_domains = g_slist_append (priv->auth_domains, auth_domain); g_object_ref (auth_domain); @@ -2766,7 +2764,7 @@ soup_server_remove_auth_domain (SoupServer *server, SoupAuthDomain *auth_domain) SoupServerPrivate *priv; g_return_if_fail (SOUP_IS_SERVER (server)); - priv = SOUP_SERVER_GET_PRIVATE (server); + priv = soup_server_get_instance_private (server); priv->auth_domains = g_slist_remove (priv->auth_domains, auth_domain); g_object_unref (auth_domain); diff --git a/libsoup/soup-session.c b/libsoup/soup-session.c index 942d8912..f7aef68e 100644 --- a/libsoup/soup-session.c +++ b/libsoup/soup-session.c @@ -142,7 +142,6 @@ typedef struct { GHashTable *request_types; } SoupSessionPrivate; -#define SOUP_SESSION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SOUP_TYPE_SESSION, SoupSessionPrivate)) #define SOUP_IS_PLAIN_SESSION(o) (G_TYPE_FROM_INSTANCE (o) == SOUP_TYPE_SESSION) @@ -168,7 +167,7 @@ static void async_send_request_running (SoupSession *session, SoupMessageQueueIt #define SOUP_SESSION_USER_AGENT_BASE "libsoup/" PACKAGE_VERSION -G_DEFINE_TYPE (SoupSession, soup_session, G_TYPE_OBJECT) +G_DEFINE_TYPE_WITH_PRIVATE (SoupSession, soup_session, G_TYPE_OBJECT) enum { REQUEST_QUEUED, @@ -215,7 +214,7 @@ enum { static void soup_session_init (SoupSession *session) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupAuthManager *auth_manager; priv->queue = soup_message_queue_new (session); @@ -277,7 +276,7 @@ soup_session_constructor (GType type, */ if (type == SOUP_TYPE_SESSION) { SoupSession *session = SOUP_SESSION (object); - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); g_clear_pointer (&priv->async_context, g_main_context_unref); priv->async_context = g_main_context_ref_thread_default (); @@ -304,7 +303,7 @@ static void soup_session_dispose (GObject *object) { SoupSession *session = SOUP_SESSION (object); - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); priv->disposed = TRUE; soup_session_abort (session); @@ -320,7 +319,7 @@ static void soup_session_finalize (GObject *object) { SoupSession *session = SOUP_SESSION (object); - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); soup_message_queue_destroy (priv->queue); @@ -359,7 +358,7 @@ soup_session_finalize (GObject *object) static void ensure_socket_props (SoupSession *session) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); gboolean ssl_strict; if (priv->socket_props) @@ -471,7 +470,7 @@ accept_languages_from_system (void) static void set_tlsdb (SoupSession *session, GTlsDatabase *tlsdb) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); GTlsDatabase *system_default; priv->tlsdb_use_default = FALSE; @@ -507,7 +506,7 @@ set_tlsdb (SoupSession *session, GTlsDatabase *tlsdb) static void set_use_system_ca_file (SoupSession *session, gboolean use_system_ca_file) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); GTlsDatabase *system_default; priv->tlsdb_use_default = FALSE; @@ -525,7 +524,7 @@ set_use_system_ca_file (SoupSession *session, gboolean use_system_ca_file) static void set_ssl_ca_file (SoupSession *session, const char *ssl_ca_file) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); GTlsDatabase *tlsdb; GError *error = NULL; @@ -599,7 +598,7 @@ set_proxy_resolver (SoupSession *session, SoupURI *uri, SoupProxyURIResolver *soup_resolver, GProxyResolver *g_resolver) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); G_GNUC_BEGIN_IGNORE_DEPRECATIONS; soup_session_remove_feature_by_type (session, SOUP_TYPE_PROXY_URI_RESOLVER); @@ -631,7 +630,7 @@ soup_session_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { SoupSession *session = SOUP_SESSION (object); - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); const char *user_agent; SoupSessionFeature *feature; GMainContext *async_context; @@ -783,7 +782,7 @@ soup_session_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) { SoupSession *session = SOUP_SESSION (object); - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupSessionFeature *feature; GTlsDatabase *tlsdb; @@ -924,7 +923,7 @@ soup_session_get_async_context (SoupSession *session) SoupSessionPrivate *priv; g_return_val_if_fail (SOUP_IS_SESSION (session), NULL); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); if (priv->use_thread_context) return g_main_context_get_thread_default (); @@ -973,7 +972,7 @@ soup_session_host_new (SoupSession *session, SoupURI *uri) host->uri = soup_uri_copy_host (uri); if (host->uri->scheme != SOUP_URI_SCHEME_HTTP && host->uri->scheme != SOUP_URI_SCHEME_HTTPS) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); if (soup_uri_is_https (host->uri, priv->https_aliases)) host->uri->scheme = SOUP_URI_SCHEME_HTTPS; @@ -996,7 +995,7 @@ soup_session_host_new (SoupSession *session, SoupURI *uri) static SoupSessionHost * get_host_for_uri (SoupSession *session, SoupURI *uri) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupSessionHost *host; gboolean https; SoupURI *uri_tmp = NULL; @@ -1105,7 +1104,7 @@ redirection_uri (SoupMessage *msg) gboolean soup_session_would_redirect (SoupSession *session, SoupMessage *msg) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupURI *new_uri; /* It must have an appropriate status code and method */ @@ -1258,7 +1257,7 @@ soup_session_append_queue_item (SoupSession *session, SoupMessage *msg, gboolean async, gboolean new_api, SoupSessionCallback callback, gpointer user_data) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupMessageQueueItem *item; SoupSessionHost *host; @@ -1292,7 +1291,7 @@ soup_session_send_queue_item (SoupSession *session, SoupMessageQueueItem *item, SoupMessageCompletionFn completion_cb) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); if (priv->user_agent) { soup_message_headers_replace (item->msg->request_headers, @@ -1331,7 +1330,7 @@ static gboolean soup_session_cleanup_connections (SoupSession *session, gboolean cleanup_idle) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); GSList *conns = NULL, *c; GHashTableIter iter; gpointer conn, host; @@ -1367,7 +1366,7 @@ static gboolean free_unused_host (gpointer user_data) { SoupSessionHost *host = (SoupSessionHost *) user_data; - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (host->session); + SoupSessionPrivate *priv = soup_session_get_instance_private (host->session); g_mutex_lock (&priv->conn_lock); @@ -1394,7 +1393,7 @@ free_unused_host (gpointer user_data) static void drop_connection (SoupSession *session, SoupSessionHost *host, SoupConnection *conn) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); /* Note: caller must hold conn_lock, and must remove @conn * from priv->conns itself. @@ -1429,7 +1428,7 @@ static void connection_disconnected (SoupConnection *conn, gpointer user_data) { SoupSession *session = user_data; - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupSessionHost *host; g_mutex_lock (&priv->conn_lock); @@ -1457,7 +1456,7 @@ connection_state_changed (GObject *object, GParamSpec *param, gpointer user_data SoupMessageQueue * soup_session_get_queue (SoupSession *session) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); return priv->queue; } @@ -1466,7 +1465,7 @@ static void soup_session_unqueue_item (SoupSession *session, SoupMessageQueueItem *item) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupSessionHost *host; SoupConnection *dedicated_conn = NULL; @@ -1785,7 +1784,7 @@ get_connection_for_host (SoupSession *session, gboolean *try_cleanup, gboolean *is_dedicated_connection) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupConnection *conn; GSList *conns; guint num_pending = 0; @@ -1875,7 +1874,7 @@ static gboolean get_connection (SoupMessageQueueItem *item, gboolean *should_cleanup) { SoupSession *session = item->session; - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupSessionHost *host; SoupConnection *conn = NULL; gboolean my_should_cleanup = FALSE; @@ -2039,7 +2038,7 @@ soup_session_process_queue_item (SoupSession *session, static void async_run_queue (SoupSession *session) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupMessageQueueItem *item; SoupMessage *msg; gboolean try_cleanup = TRUE, should_cleanup = FALSE; @@ -2172,7 +2171,7 @@ soup_session_queue_message (SoupSession *session, SoupMessage *msg, static void soup_session_real_requeue_message (SoupSession *session, SoupMessage *msg) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupMessageQueueItem *item; item = soup_message_queue_lookup (priv->queue, msg); @@ -2277,7 +2276,7 @@ soup_session_pause_message (SoupSession *session, g_return_if_fail (SOUP_IS_SESSION (session)); g_return_if_fail (SOUP_IS_MESSAGE (msg)); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); item = soup_message_queue_lookup (priv->queue, msg); g_return_if_fail (item != NULL); g_return_if_fail (item->async); @@ -2291,7 +2290,7 @@ soup_session_pause_message (SoupSession *session, static void soup_session_real_kick_queue (SoupSession *session) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupMessageQueueItem *item; GHashTable *async_pending; gboolean have_sync_items = FALSE; @@ -2361,7 +2360,7 @@ soup_session_unpause_message (SoupSession *session, g_return_if_fail (SOUP_IS_SESSION (session)); g_return_if_fail (SOUP_IS_MESSAGE (msg)); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); item = soup_message_queue_lookup (priv->queue, msg); g_return_if_fail (item != NULL); g_return_if_fail (item->async); @@ -2378,7 +2377,7 @@ soup_session_unpause_message (SoupSession *session, static void soup_session_real_cancel_message (SoupSession *session, SoupMessage *msg, guint status_code) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupMessageQueueItem *item; item = soup_message_queue_lookup (priv->queue, msg); @@ -2438,7 +2437,7 @@ soup_session_cancel_message (SoupSession *session, SoupMessage *msg, g_return_if_fail (SOUP_IS_SESSION (session)); g_return_if_fail (SOUP_IS_MESSAGE (msg)); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); item = soup_message_queue_lookup (priv->queue, msg); /* If the message is already ending, don't do anything */ if (!item) @@ -2455,7 +2454,7 @@ soup_session_cancel_message (SoupSession *session, SoupMessage *msg, static void soup_session_real_flush_queue (SoupSession *session) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupMessageQueueItem *item; GHashTable *current = NULL; gboolean done = FALSE; @@ -2527,7 +2526,7 @@ soup_session_abort (SoupSession *session) gpointer conn, host; g_return_if_fail (SOUP_IS_SESSION (session)); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); SOUP_SESSION_GET_CLASS (session)->flush_queue (session); @@ -2565,7 +2564,7 @@ prefetch_uri (SoupSession *session, SoupURI *uri, SoupSessionHost *host; SoupAddress *addr; - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); g_mutex_lock (&priv->conn_lock); host = get_host_for_uri (session, uri); @@ -2666,7 +2665,7 @@ soup_session_add_feature (SoupSession *session, SoupSessionFeature *feature) g_return_if_fail (SOUP_IS_SESSION (session)); g_return_if_fail (SOUP_IS_SESSION_FEATURE (feature)); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); G_GNUC_BEGIN_IGNORE_DEPRECATIONS; if (SOUP_IS_PROXY_URI_RESOLVER (feature)) { @@ -2711,7 +2710,7 @@ soup_session_add_feature_by_type (SoupSession *session, GType feature_type) g_return_if_fail (SOUP_IS_SESSION (session)); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); if (g_type_is_a (feature_type, SOUP_TYPE_SESSION_FEATURE)) { SoupSessionFeature *feature; @@ -2756,7 +2755,7 @@ soup_session_remove_feature (SoupSession *session, SoupSessionFeature *feature) g_return_if_fail (SOUP_IS_SESSION (session)); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); if (g_slist_find (priv->features, feature)) { priv->features = g_slist_remove (priv->features, feature); g_hash_table_remove_all (priv->features_cache); @@ -2794,7 +2793,7 @@ soup_session_remove_feature_by_type (SoupSession *session, GType feature_type) g_return_if_fail (SOUP_IS_SESSION (session)); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); if (g_type_is_a (feature_type, SOUP_TYPE_SESSION_FEATURE)) { restart: @@ -2851,7 +2850,7 @@ soup_session_has_feature (SoupSession *session, g_return_val_if_fail (SOUP_IS_SESSION (session), FALSE); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); if (g_type_is_a (feature_type, SOUP_TYPE_SESSION_FEATURE)) { for (f = priv->features; f; f = f->next) { @@ -2893,7 +2892,7 @@ soup_session_get_features (SoupSession *session, GType feature_type) g_return_val_if_fail (SOUP_IS_SESSION (session), NULL); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); for (f = priv->features, ret = NULL; f; f = f->next) { if (G_TYPE_CHECK_INSTANCE_TYPE (f->data, feature_type)) ret = g_slist_prepend (ret, f->data); @@ -2924,7 +2923,7 @@ soup_session_get_feature (SoupSession *session, GType feature_type) g_return_val_if_fail (SOUP_IS_SESSION (session), NULL); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); feature = g_hash_table_lookup (priv->features_cache, GSIZE_TO_POINTER (feature_type)); @@ -2979,8 +2978,6 @@ soup_session_class_init (SoupSessionClass *session_class) { GObjectClass *object_class = G_OBJECT_CLASS (session_class); - g_type_class_add_private (session_class, sizeof (SoupSessionPrivate)); - /* virtual method definition */ session_class->queue_message = soup_session_real_queue_message; session_class->send_message = soup_session_real_send_message; @@ -4547,7 +4544,7 @@ soup_session_request_uri (SoupSession *session, SoupURI *uri, g_return_val_if_fail (SOUP_IS_SESSION (session), NULL); - priv = SOUP_SESSION_GET_PRIVATE (session); + priv = soup_session_get_instance_private (session); request_type = (GType)GPOINTER_TO_SIZE (g_hash_table_lookup (priv->request_types, uri->scheme)); if (!request_type) { @@ -4708,7 +4705,7 @@ GIOStream * soup_session_steal_connection (SoupSession *session, SoupMessage *msg) { - SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupMessageQueueItem *item; SoupConnection *conn; SoupSocket *sock; @@ -4834,11 +4831,12 @@ soup_session_websocket_connect_async (SoupSession *session, GAsyncReadyCallback callback, gpointer user_data) { + SoupSessionPrivate *priv = soup_session_get_instance_private (session); SoupMessageQueueItem *item; GTask *task; g_return_if_fail (SOUP_IS_SESSION (session)); - g_return_if_fail (SOUP_SESSION_GET_PRIVATE (session)->use_thread_context); + g_return_if_fail (priv->use_thread_context); g_return_if_fail (SOUP_IS_MESSAGE (msg)); soup_websocket_client_prepare_handshake (msg, origin, protocols); diff --git a/libsoup/soup-socket.c b/libsoup/soup-socket.c index e7378128..5363dc72 100644 --- a/libsoup/soup-socket.c +++ b/libsoup/soup-socket.c @@ -30,12 +30,6 @@ * soup_socket_get_remote_address()) may be useful to applications. **/ -static void soup_socket_initable_interface_init (GInitableIface *initable_interface); - -G_DEFINE_TYPE_WITH_CODE (SoupSocket, soup_socket, G_TYPE_OBJECT, - G_IMPLEMENT_INTERFACE (G_TYPE_INITABLE, - soup_socket_initable_interface_init)) - enum { READABLE, WRITABLE, @@ -102,7 +96,13 @@ typedef struct { GCancellable *connect_cancel; int fd; } SoupSocketPrivate; -#define SOUP_SOCKET_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), SOUP_TYPE_SOCKET, SoupSocketPrivate)) + +static void soup_socket_initable_interface_init (GInitableIface *initable_interface); + +G_DEFINE_TYPE_WITH_CODE (SoupSocket, soup_socket, G_TYPE_OBJECT, + G_ADD_PRIVATE (SoupSocket) + G_IMPLEMENT_INTERFACE (G_TYPE_INITABLE, + soup_socket_initable_interface_init)) static void soup_socket_peer_certificate_changed (GObject *conn, GParamSpec *pspec, @@ -113,7 +113,7 @@ static void finish_listener_setup (SoupSocket *sock); static void soup_socket_init (SoupSocket *sock) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); priv->non_blocking = TRUE; priv->fd = -1; @@ -127,7 +127,7 @@ soup_socket_initable_init (GInitable *initable, GError **error) { SoupSocket *sock = SOUP_SOCKET (initable); - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); if (priv->conn) { g_warn_if_fail (priv->gsock == NULL); @@ -183,7 +183,7 @@ soup_socket_initable_init (GInitable *initable, static void disconnect_internal (SoupSocket *sock, gboolean close) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); g_clear_object (&priv->gsock); if (priv->conn && close) { @@ -204,7 +204,8 @@ disconnect_internal (SoupSocket *sock, gboolean close) static void soup_socket_finalize (GObject *object) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (object); + SoupSocket *sock = SOUP_SOCKET (object); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); if (priv->connect_cancel) { if (priv->clean_dispose) @@ -245,7 +246,7 @@ soup_socket_finalize (GObject *object) static void finish_socket_setup (SoupSocket *sock) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); if (priv->gsock) { if (!priv->conn) @@ -270,7 +271,8 @@ static void soup_socket_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (object); + SoupSocket *sock = SOUP_SOCKET (object); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); SoupSocketProperties *props; switch (prop_id) { @@ -371,7 +373,8 @@ static void soup_socket_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (object); + SoupSocket *sock = SOUP_SOCKET (object); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); switch (prop_id) { case PROP_FD: @@ -433,8 +436,6 @@ soup_socket_class_init (SoupSocketClass *socket_class) { GObjectClass *object_class = G_OBJECT_CLASS (socket_class); - g_type_class_add_private (socket_class, sizeof (SoupSocketPrivate)); - /* virtual method override */ object_class->finalize = soup_socket_finalize; object_class->set_property = soup_socket_set_property; @@ -851,7 +852,7 @@ re_emit_socket_client_event (GSocketClient *client, static gboolean socket_connect_finish (SoupSocket *sock, GSocketConnection *conn) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); g_clear_object (&priv->connect_cancel); @@ -883,7 +884,7 @@ socket_legacy_error (SoupSocket *sock, GError *error) static GSocketClient * new_socket_client (SoupSocket *sock) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); GSocketClient *client = g_socket_client_new (); g_signal_connect (client, "event", @@ -943,7 +944,7 @@ soup_socket_connect_async_internal (SoupSocket *sock, GTask *task; g_return_if_fail (SOUP_IS_SOCKET (sock)); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); g_return_if_fail (!priv->is_server); g_return_if_fail (priv->gsock == NULL); g_return_if_fail (priv->remote_addr != NULL); @@ -1017,7 +1018,7 @@ soup_socket_connect_async (SoupSocket *sock, GCancellable *cancellable, SoupSocketAsyncConnectData *sacd; g_return_if_fail (SOUP_IS_SOCKET (sock)); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); g_return_if_fail (!priv->is_server); g_return_if_fail (priv->gsock == NULL); g_return_if_fail (priv->remote_addr != NULL); @@ -1048,7 +1049,7 @@ soup_socket_connect_sync_internal (SoupSocket *sock, GSocketConnection *conn; g_return_val_if_fail (SOUP_IS_SOCKET (sock), SOUP_STATUS_MALFORMED); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); g_return_val_if_fail (!priv->is_server, SOUP_STATUS_MALFORMED); g_return_val_if_fail (priv->gsock == NULL, SOUP_STATUS_MALFORMED); g_return_val_if_fail (priv->remote_addr != NULL, SOUP_STATUS_MALFORMED); @@ -1084,7 +1085,7 @@ soup_socket_connect_sync (SoupSocket *sock, GCancellable *cancellable) GError *error = NULL; g_return_val_if_fail (SOUP_IS_SOCKET (sock), SOUP_STATUS_MALFORMED); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); g_return_val_if_fail (!priv->is_server, SOUP_STATUS_MALFORMED); g_return_val_if_fail (priv->gsock == NULL, SOUP_STATUS_MALFORMED); g_return_val_if_fail (priv->remote_addr != NULL, SOUP_STATUS_MALFORMED); @@ -1109,17 +1110,25 @@ soup_socket_connect_sync (SoupSocket *sock, GCancellable *cancellable) int soup_socket_get_fd (SoupSocket *sock) { + SoupSocketPrivate *priv; + g_return_val_if_fail (SOUP_IS_SOCKET (sock), -1); - return g_socket_get_fd (SOUP_SOCKET_GET_PRIVATE (sock)->gsock); + priv = soup_socket_get_instance_private (sock); + + return g_socket_get_fd (priv->gsock); } GSocket * soup_socket_get_gsocket (SoupSocket *sock) { + SoupSocketPrivate *priv; + g_return_val_if_fail (SOUP_IS_SOCKET (sock), NULL); - return SOUP_SOCKET_GET_PRIVATE (sock)->gsock; + priv = soup_socket_get_instance_private (sock); + + return priv->gsock; } GSocket * @@ -1129,7 +1138,7 @@ soup_socket_steal_gsocket (SoupSocket *sock) GSocket *gsock; g_return_val_if_fail (SOUP_IS_SOCKET (sock), NULL); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); gsock = priv->gsock; priv->gsock = NULL; @@ -1145,7 +1154,7 @@ soup_socket_is_readable (SoupSocket *sock) SoupSocketPrivate *priv; g_return_val_if_fail (SOUP_IS_SOCKET (sock), FALSE); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); return g_pollable_input_stream_is_readable (G_POLLABLE_INPUT_STREAM (priv->istream)); } @@ -1153,17 +1162,25 @@ soup_socket_is_readable (SoupSocket *sock) GIOStream * soup_socket_get_connection (SoupSocket *sock) { + SoupSocketPrivate *priv; + g_return_val_if_fail (SOUP_IS_SOCKET (sock), NULL); - return SOUP_SOCKET_GET_PRIVATE (sock)->conn; + priv = soup_socket_get_instance_private (sock); + + return priv->conn; } GIOStream * soup_socket_get_iostream (SoupSocket *sock) { + SoupSocketPrivate *priv; + g_return_val_if_fail (SOUP_IS_SOCKET (sock), NULL); - return SOUP_SOCKET_GET_PRIVATE (sock)->iostream; + priv = soup_socket_get_instance_private (sock); + + return priv->iostream; } static GSource * @@ -1189,7 +1206,7 @@ static gboolean listen_watch (GObject *pollable, gpointer data) { SoupSocket *sock = data, *new; - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock), *new_priv; + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock), *new_priv; GSocket *new_gsock; new_gsock = g_socket_accept (priv->gsock, NULL, NULL); @@ -1197,7 +1214,7 @@ listen_watch (GObject *pollable, gpointer data) return FALSE; new = g_object_new (SOUP_TYPE_SOCKET, NULL); - new_priv = SOUP_SOCKET_GET_PRIVATE (new); + new_priv = soup_socket_get_instance_private (new); new_priv->gsock = new_gsock; if (priv->async_context) new_priv->async_context = g_main_context_ref (priv->async_context); @@ -1226,7 +1243,7 @@ listen_watch (GObject *pollable, gpointer data) static void finish_listener_setup (SoupSocket *sock) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); priv->is_server = TRUE; priv->watch_src = soup_socket_create_watch (priv, G_IO_IN, @@ -1269,7 +1286,7 @@ soup_socket_listen_full (SoupSocket *sock, GSocketAddress *addr; g_return_val_if_fail (SOUP_IS_SOCKET (sock), FALSE); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); g_return_val_if_fail (priv->gsock == NULL, FALSE); g_return_val_if_fail (priv->local_addr != NULL, FALSE); @@ -1328,7 +1345,7 @@ static void soup_socket_peer_certificate_changed (GObject *conn, GParamSpec *pspec, gpointer sock) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); priv->tls_errors = g_tls_connection_get_peer_certificate_errors (G_TLS_CONNECTION (priv->conn)); @@ -1349,7 +1366,7 @@ soup_socket_setup_ssl (SoupSocket *sock, GCancellable *cancellable, GError **error) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); GTlsBackend *backend = g_tls_backend_get_default (); if (G_IS_TLS_CONNECTION (priv->conn)) @@ -1436,7 +1453,7 @@ soup_socket_setup_ssl (SoupSocket *sock, gboolean soup_socket_start_ssl (SoupSocket *sock, GCancellable *cancellable) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); return soup_socket_setup_ssl (sock, soup_address_get_name (priv->remote_addr), cancellable, NULL); @@ -1466,7 +1483,7 @@ soup_socket_handshake_sync (SoupSocket *sock, GCancellable *cancellable, GError **error) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); if (!soup_socket_setup_ssl (sock, ssl_host, cancellable, error)) return FALSE; @@ -1490,7 +1507,7 @@ handshake_async_ready (GObject *source, GAsyncResult *result, gpointer user_data if (g_tls_connection_handshake_finish (G_TLS_CONNECTION (source), result, &error)) { SoupSocket *sock = g_task_get_source_object (task); - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); soup_socket_event (sock, G_SOCKET_CLIENT_TLS_HANDSHAKED, priv->conn); g_task_return_boolean (task, TRUE); @@ -1506,7 +1523,7 @@ soup_socket_handshake_async (SoupSocket *sock, GAsyncReadyCallback callback, gpointer user_data) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); GTask *task; GError *error = NULL; @@ -1545,7 +1562,7 @@ soup_socket_handshake_finish (SoupSocket *sock, gboolean soup_socket_is_ssl (SoupSocket *sock) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); return priv->ssl; } @@ -1564,7 +1581,7 @@ soup_socket_disconnect (SoupSocket *sock) gboolean already_disconnected = FALSE; g_return_if_fail (SOUP_IS_SOCKET (sock)); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); if (priv->connect_cancel) { disconnect_internal (sock, FALSE); @@ -1621,7 +1638,7 @@ soup_socket_is_connected (SoupSocket *sock) SoupSocketPrivate *priv; g_return_val_if_fail (SOUP_IS_SOCKET (sock), FALSE); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); return priv->conn && !g_io_stream_is_closed (priv->conn); } @@ -1643,7 +1660,7 @@ soup_socket_get_local_address (SoupSocket *sock) SoupSocketPrivate *priv; g_return_val_if_fail (SOUP_IS_SOCKET (sock), NULL); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); g_mutex_lock (&priv->addrlock); if (!priv->local_addr) { @@ -1691,7 +1708,7 @@ soup_socket_get_remote_address (SoupSocket *sock) SoupSocketPrivate *priv; g_return_val_if_fail (SOUP_IS_SOCKET (sock), NULL); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); g_mutex_lock (&priv->addrlock); if (!priv->remote_addr) { @@ -1725,7 +1742,7 @@ unlock: SoupURI * soup_socket_get_http_proxy_uri (SoupSocket *sock) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); GSocketAddress *addr; GProxyAddress *paddr; SoupURI *uri; @@ -1752,7 +1769,7 @@ static gboolean socket_read_watch (GObject *pollable, gpointer user_data) { SoupSocket *sock = user_data; - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); priv->read_src = NULL; g_signal_emit (sock, signals[READABLE], 0); @@ -1764,7 +1781,7 @@ translate_read_status (SoupSocket *sock, GCancellable *cancellable, gssize my_nread, gsize *nread, GError *my_err, GError **error) { - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); if (my_nread > 0) { g_assert_no_error (my_err); @@ -1839,7 +1856,7 @@ soup_socket_read (SoupSocket *sock, gpointer buffer, gsize len, g_return_val_if_fail (SOUP_IS_SOCKET (sock), SOUP_SOCKET_ERROR); g_return_val_if_fail (nread != NULL, SOUP_SOCKET_ERROR); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); g_mutex_lock (&priv->iolock); @@ -1909,7 +1926,7 @@ soup_socket_read_until (SoupSocket *sock, gpointer buffer, gsize len, g_return_val_if_fail (nread != NULL, SOUP_SOCKET_ERROR); g_return_val_if_fail (len >= boundary_len, SOUP_SOCKET_ERROR); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); g_mutex_lock (&priv->iolock); @@ -1935,7 +1952,7 @@ static gboolean socket_write_watch (GObject *pollable, gpointer user_data) { SoupSocket *sock = user_data; - SoupSocketPrivate *priv = SOUP_SOCKET_GET_PRIVATE (sock); + SoupSocketPrivate *priv = soup_socket_get_instance_private (sock); priv->write_src = NULL; g_signal_emit (sock, signals[WRITABLE], 0); @@ -1980,7 +1997,7 @@ soup_socket_write (SoupSocket *sock, gconstpointer buffer, g_return_val_if_fail (SOUP_IS_SOCKET (sock), SOUP_SOCKET_ERROR); g_return_val_if_fail (nwrote != NULL, SOUP_SOCKET_ERROR); - priv = SOUP_SOCKET_GET_PRIVATE (sock); + priv = soup_socket_get_instance_private (sock); g_mutex_lock (&priv->iolock); diff --git a/libsoup/soup-websocket-connection.c b/libsoup/soup-websocket-connection.c index eff6ba66..ed82a27c 100644 --- a/libsoup/soup-websocket-connection.c +++ b/libsoup/soup-websocket-connection.c @@ -139,7 +139,7 @@ struct _SoupWebsocketConnectionPrivate { #define MAX_INCOMING_PAYLOAD_SIZE_DEFAULT 128 * 1024 -G_DEFINE_TYPE (SoupWebsocketConnection, soup_websocket_connection, G_TYPE_OBJECT) +G_DEFINE_TYPE_WITH_PRIVATE (SoupWebsocketConnection, soup_websocket_connection, G_TYPE_OBJECT) typedef enum { SOUP_WEBSOCKET_QUEUE_NORMAL = 0, @@ -166,8 +166,7 @@ soup_websocket_connection_init (SoupWebsocketConnection *self) { SoupWebsocketConnectionPrivate *pv; - pv = self->pv = G_TYPE_INSTANCE_GET_PRIVATE (self, SOUP_TYPE_WEBSOCKET_CONNECTION, - SoupWebsocketConnectionPrivate); + pv = self->pv = soup_websocket_connection_get_instance_private (self); pv->incoming = g_byte_array_sized_new (1024); g_queue_init (&pv->outgoing); @@ -1137,8 +1136,6 @@ soup_websocket_connection_class_init (SoupWebsocketConnectionClass *klass) { GObjectClass *gobject_class = G_OBJECT_CLASS (klass); - g_type_class_add_private (klass, sizeof (SoupWebsocketConnectionPrivate)); - gobject_class->constructed = soup_websocket_connection_constructed; gobject_class->get_property = soup_websocket_connection_get_property; gobject_class->set_property = soup_websocket_connection_set_property; |