gi-soup-2.4.24: Libsoup bindings
CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.Soup.Objects.AuthManager

Description

AuthManager is the SessionFeature that handles HTTP authentication for a Session.

A AuthManager is added to the session by default, and normally you don't need to worry about it at all. However, if you want to disable HTTP authentication, you can remove the feature from the session with sessionRemoveFeatureByType, or disable it on individual requests with messageDisableFeature.

Since: 2.42

Synopsis

Exported types

newtype AuthManager Source #

Memory-managed wrapper type.

Constructors

AuthManager (ManagedPtr AuthManager) 

Instances

Instances details
Eq AuthManager Source # 
Instance details

Defined in GI.Soup.Objects.AuthManager

GObject AuthManager Source # 
Instance details

Defined in GI.Soup.Objects.AuthManager

ManagedPtrNewtype AuthManager Source # 
Instance details

Defined in GI.Soup.Objects.AuthManager

Methods

toManagedPtr :: AuthManager -> ManagedPtr AuthManager

TypedObject AuthManager Source # 
Instance details

Defined in GI.Soup.Objects.AuthManager

Methods

glibType :: IO GType

HasParentTypes AuthManager Source # 
Instance details

Defined in GI.Soup.Objects.AuthManager

IsGValue (Maybe AuthManager) Source #

Convert AuthManager to and from GValue. See toGValue and fromGValue.

Instance details

Defined in GI.Soup.Objects.AuthManager

Methods

gvalueGType_ :: IO GType

gvalueSet_ :: Ptr GValue -> Maybe AuthManager -> IO ()

gvalueGet_ :: Ptr GValue -> IO (Maybe AuthManager)

type ParentTypes AuthManager Source # 
Instance details

Defined in GI.Soup.Objects.AuthManager

type ParentTypes AuthManager = '[Object, SessionFeature]

class (GObject o, IsDescendantOf AuthManager o) => IsAuthManager o Source #

Type class for types which can be safely cast to AuthManager, for instance with toAuthManager.

Instances

Instances details
(GObject o, IsDescendantOf AuthManager o) => IsAuthManager o Source # 
Instance details

Defined in GI.Soup.Objects.AuthManager

toAuthManager :: (MonadIO m, IsAuthManager o) => o -> m AuthManager Source #

Cast to AuthManager, for types for which this is known to be safe. For general casts, use castTo.

Methods

clearCachedCredentials

authManagerClearCachedCredentials Source #

Arguments

:: (HasCallStack, MonadIO m, IsAuthManager a) 
=> a

manager: a AuthManager

-> m () 

Clear all credentials cached by manager

Since: 2.58

useAuth

authManagerUseAuth Source #

Arguments

:: (HasCallStack, MonadIO m, IsAuthManager a, IsAuth b) 
=> a

manager: a AuthManager

-> URI

uri: the URI under which auth is to be used

-> b

auth: the Auth to use

-> m () 

Records that auth is to be used under uri, as though a WWW-Authenticate header had been received at that URI. This can be used to "preload" manager's auth cache, to avoid an extra HTTP round trip in the case where you know ahead of time that a 401 response will be returned.

This is only useful for authentication types where the initial Authorization header does not depend on any additional information from the server. (Eg, Basic or NTLM, but not Digest.)

Since: 2.42

Signals

authenticate

type AuthManagerAuthenticateCallback Source #

Arguments

 = Message

msg: the Message being sent

-> Auth

auth: the Auth to authenticate

-> Bool

retrying: True if this is the second (or later) attempt

-> IO () 

Emitted when the manager requires the application to provide authentication credentials.

Session connects to this signal and emits its own authenticate signal when it is emitted, so you shouldn't need to use this signal directly.

type C_AuthManagerAuthenticateCallback = Ptr () -> Ptr Message -> Ptr Auth -> CInt -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

afterAuthManagerAuthenticate :: (IsAuthManager a, MonadIO m) => a -> AuthManagerAuthenticateCallback -> m SignalHandlerId Source #

Connect a signal handler for the authenticate signal, to be run after the default handler. When overloading is enabled, this is equivalent to

after authManager #authenticate callback

onAuthManagerAuthenticate :: (IsAuthManager a, MonadIO m) => a -> AuthManagerAuthenticateCallback -> m SignalHandlerId Source #

Connect a signal handler for the authenticate signal, to be run before the default handler. When overloading is enabled, this is equivalent to

on authManager #authenticate callback