SoupSessionFeature

SoupSessionFeature — Interface for miscellaneous session features

Synopsis

#include <libsoup/soup.h>

                    SoupSessionFeature;
                    SoupSessionFeatureInterface;

Object Hierarchy

  GInterface
   +----SoupSessionFeature

Prerequisites

SoupSessionFeature requires GObject.

Known Implementations

SoupSessionFeature is implemented by SoupCache, SoupContentDecoder, SoupContentSniffer, SoupCookieJar, SoupCookieJarText, SoupLogger and SoupProxyResolverDefault.

Description

SoupSessionFeature is the interface used by classes that extend the functionality of a SoupSession. Some features like HTTP authentication handling are implemented internally via SoupSessionFeatures. Other features can be added to the session by the application. (Eg, SoupLogger, SoupCookieJar.)

See soup_session_add_feature(), etc, to add a feature to a session.

Details

SoupSessionFeature

typedef struct _SoupSessionFeature SoupSessionFeature;

An object that implement some sort of optional feature for SoupSession.

Since 2.24


SoupSessionFeatureInterface

typedef struct {
	GTypeInterface parent;

	/* methods */
	void     (*attach)           (SoupSessionFeature *feature,
				      SoupSession        *session);
	void     (*detach)           (SoupSessionFeature *feature,
				      SoupSession        *session);

	void     (*request_queued)   (SoupSessionFeature *feature,
				      SoupSession        *session,
				      SoupMessage        *msg);
	void     (*request_started)  (SoupSessionFeature *feature,
				      SoupSession        *session,
				      SoupMessage        *msg,
				      SoupSocket         *socket);
	void     (*request_unqueued) (SoupSessionFeature *feature,
				      SoupSession        *session,
				      SoupMessage        *msg);

	gboolean (*add_feature)      (SoupSessionFeature *feature,
				      GType               type);
	gboolean (*remove_feature)   (SoupSessionFeature *feature,
				      GType               type);
	gboolean (*has_feature)      (SoupSessionFeature *feature,
				      GType               type);
} SoupSessionFeatureInterface;

The interface implemented by SoupSessionFeatures.

GTypeInterface parent;

The parent interface.

attach ()

Perform setup when a feature is added to a session

detach ()

Perform cleanup when a feature is removed from a session

request_queued ()

Proxies the session's "request_queued" signal

request_started ()

Proxies the session's "request_started" signal

request_unqueued ()

Proxies the session's "request_unqueued" signal

add_feature ()

adds a sub-feature to the main feature

remove_feature ()

removes a sub-feature from the main feature

has_feature ()

tests if the feature includes a sub-feature

Since 2.24