static void soup_connection_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { SoupConnectionPrivate *priv = SOUP_CONNECTION_GET_PRIVATE (object); switch (prop_id) { case PROP_REMOTE_URI: priv->remote_uri = g_value_dup_boxed (value); if (priv->remote_uri) priv->ssl = (priv->remote_uri->scheme == SOUP_URI_SCHEME_HTTPS); else priv->ssl = FALSE; break; break; case PROP_SSL_FALLBACK: priv->ssl_fallback = g_value_get_boolean (value); break; case PROP_SOCKET_PROPERTIES: priv->socket_props = g_value_dup_boxed (value); break; case PROP_STATE: soup_connection_set_state (SOUP_CONNECTION (object), g_value_get_uint (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } }
static void soup_connection_dispose (GObject *object) { SoupConnection *conn = SOUP_CONNECTION (object); SoupConnectionPrivate *priv = SOUP_CONNECTION_GET_PRIVATE (conn); stop_idle_timer (priv); G_OBJECT_CLASS (soup_connection_parent_class)->dispose (object); }
static void dispose (GObject *object) { SoupConnection *conn = SOUP_CONNECTION (object); SoupConnectionPrivate *priv = SOUP_CONNECTION_GET_PRIVATE (conn); stop_idle_timer (priv); /* Make sure clear_current_request doesn't re-establish the timeout */ priv->idle_timeout = 0; clear_current_request (conn); soup_connection_disconnect (conn); G_OBJECT_CLASS (soup_connection_parent_class)->dispose (object); }
static void connection_state_changed (GObject *object, GParamSpec *param, gpointer user_data) { SoupConnection *conn = SOUP_CONNECTION (object); SoupConnectionState *state = user_data; SoupConnectionState new_state; new_state = soup_connection_get_state (conn); if (state_transitions[*state] != new_state) { debug_printf (1, " Unexpected transition: %s -> %s\n", state_names[*state], state_names[new_state]); errors++; } else { debug_printf (2, " %s -> %s\n", state_names[*state], state_names[new_state]); } *state = new_state; }
static void set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { SoupConnectionPrivate *priv = SOUP_CONNECTION_GET_PRIVATE (object); switch (prop_id) { case PROP_REMOTE_ADDRESS: priv->remote_addr = g_value_dup_object (value); break; case PROP_TUNNEL_ADDRESS: priv->tunnel_addr = g_value_dup_object (value); break; case PROP_PROXY_URI: if (priv->proxy_uri) soup_uri_free (priv->proxy_uri); priv->proxy_uri = g_value_dup_boxed (value); break; case PROP_SSL_CREDS: priv->ssl_creds = g_value_get_pointer (value); break; case PROP_ASYNC_CONTEXT: priv->async_context = g_value_get_pointer (value); if (priv->async_context) g_main_context_ref (priv->async_context); break; case PROP_TIMEOUT: priv->io_timeout = g_value_get_uint (value); break; case PROP_IDLE_TIMEOUT: priv->idle_timeout = g_value_get_uint (value); break; case PROP_STATE: soup_connection_set_state (SOUP_CONNECTION (object), g_value_get_uint (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } }