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 /libsoup/soup-socket.c | |
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.
Diffstat (limited to 'libsoup/soup-socket.c')
-rw-r--r-- | libsoup/soup-socket.c | 117 |
1 files changed, 67 insertions, 50 deletions
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); |