SoupNetworkSession.h [plain text]
#ifndef SoupNetworkSession_h
#define SoupNetworkSession_h
#include <glib-object.h>
#include <pal/SessionID.h>
#include <wtf/Function.h>
#include <wtf/Noncopyable.h>
#include <wtf/glib/GRefPtr.h>
#include <wtf/text/WTFString.h>
typedef struct _SoupCache SoupCache;
typedef struct _SoupCookieJar SoupCookieJar;
typedef struct _SoupMessage SoupMessage;
typedef struct _SoupRequest SoupRequest;
typedef struct _SoupSession SoupSession;
namespace WebCore {
class CertificateInfo;
class ResourceError;
struct SoupNetworkProxySettings;
class SoupNetworkSession {
WTF_MAKE_NONCOPYABLE(SoupNetworkSession); WTF_MAKE_FAST_ALLOCATED;
public:
explicit SoupNetworkSession(PAL::SessionID = PAL::SessionID::defaultSessionID(), SoupCookieJar* = nullptr);
~SoupNetworkSession();
SoupSession* soupSession() const { return m_soupSession.get(); }
void setCookieJar(SoupCookieJar*);
SoupCookieJar* cookieJar() const;
static void clearOldSoupCache(const String& cacheDirectory);
static void setProxySettings(const SoupNetworkProxySettings&);
void setupProxy();
static void setInitialAcceptLanguages(const CString&);
void setAcceptLanguages(const CString&);
static void setShouldIgnoreTLSErrors(bool);
static void checkTLSErrors(SoupRequest*, SoupMessage*, WTF::Function<void (const ResourceError&)>&&);
static void allowSpecificHTTPSCertificateForHost(const CertificateInfo&, const String& host);
static void setCustomProtocolRequestType(GType);
void setupCustomProtocols();
private:
void setupLogger();
GRefPtr<SoupSession> m_soupSession;
};
}
#endif