gi-soup-2.4.18: GI/Soup/Objects/AuthNegotiate.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
/No description available in the introspection data./
-}
#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.Soup.Objects.AuthNegotiate
(
-- * Exported types
AuthNegotiate(..) ,
IsAuthNegotiate ,
toAuthNegotiate ,
noAuthNegotiate ,
-- * Methods
-- ** supported #method:supported#
authNegotiateSupported ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Soup.Objects.Auth as Soup.Auth
-- | Memory-managed wrapper type.
newtype AuthNegotiate = AuthNegotiate (ManagedPtr AuthNegotiate)
foreign import ccall "soup_auth_negotiate_get_type"
c_soup_auth_negotiate_get_type :: IO GType
instance GObject AuthNegotiate where
gobjectType = c_soup_auth_negotiate_get_type
-- | Type class for types which can be safely cast to `AuthNegotiate`, for instance with `toAuthNegotiate`.
class (GObject o, O.IsDescendantOf AuthNegotiate o) => IsAuthNegotiate o
instance (GObject o, O.IsDescendantOf AuthNegotiate o) => IsAuthNegotiate o
instance O.HasParentTypes AuthNegotiate
type instance O.ParentTypes AuthNegotiate = '[Soup.Auth.Auth, GObject.Object.Object]
-- | Cast to `AuthNegotiate`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toAuthNegotiate :: (MonadIO m, IsAuthNegotiate o) => o -> m AuthNegotiate
toAuthNegotiate = liftIO . unsafeCastTo AuthNegotiate
-- | A convenience alias for `Nothing` :: `Maybe` `AuthNegotiate`.
noAuthNegotiate :: Maybe AuthNegotiate
noAuthNegotiate = Nothing
#if ENABLE_OVERLOADING
type family ResolveAuthNegotiateMethod (t :: Symbol) (o :: *) :: * where
ResolveAuthNegotiateMethod "authenticate" o = Soup.Auth.AuthAuthenticateMethodInfo
ResolveAuthNegotiateMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveAuthNegotiateMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveAuthNegotiateMethod "canAuthenticate" o = Soup.Auth.AuthCanAuthenticateMethodInfo
ResolveAuthNegotiateMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveAuthNegotiateMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveAuthNegotiateMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveAuthNegotiateMethod "hasSavedPassword" o = Soup.Auth.AuthHasSavedPasswordMethodInfo
ResolveAuthNegotiateMethod "isAuthenticated" o = Soup.Auth.AuthIsAuthenticatedMethodInfo
ResolveAuthNegotiateMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveAuthNegotiateMethod "isForProxy" o = Soup.Auth.AuthIsForProxyMethodInfo
ResolveAuthNegotiateMethod "isReady" o = Soup.Auth.AuthIsReadyMethodInfo
ResolveAuthNegotiateMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveAuthNegotiateMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveAuthNegotiateMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveAuthNegotiateMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveAuthNegotiateMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveAuthNegotiateMethod "savePassword" o = Soup.Auth.AuthSavePasswordMethodInfo
ResolveAuthNegotiateMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveAuthNegotiateMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveAuthNegotiateMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveAuthNegotiateMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveAuthNegotiateMethod "update" o = Soup.Auth.AuthUpdateMethodInfo
ResolveAuthNegotiateMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveAuthNegotiateMethod "getAuthorization" o = Soup.Auth.AuthGetAuthorizationMethodInfo
ResolveAuthNegotiateMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveAuthNegotiateMethod "getHost" o = Soup.Auth.AuthGetHostMethodInfo
ResolveAuthNegotiateMethod "getInfo" o = Soup.Auth.AuthGetInfoMethodInfo
ResolveAuthNegotiateMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveAuthNegotiateMethod "getProtectionSpace" o = Soup.Auth.AuthGetProtectionSpaceMethodInfo
ResolveAuthNegotiateMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveAuthNegotiateMethod "getRealm" o = Soup.Auth.AuthGetRealmMethodInfo
ResolveAuthNegotiateMethod "getSavedPassword" o = Soup.Auth.AuthGetSavedPasswordMethodInfo
ResolveAuthNegotiateMethod "getSavedUsers" o = Soup.Auth.AuthGetSavedUsersMethodInfo
ResolveAuthNegotiateMethod "getSchemeName" o = Soup.Auth.AuthGetSchemeNameMethodInfo
ResolveAuthNegotiateMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveAuthNegotiateMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveAuthNegotiateMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveAuthNegotiateMethod t AuthNegotiate, O.MethodInfo info AuthNegotiate p) => OL.IsLabel t (AuthNegotiate -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList AuthNegotiate
type instance O.AttributeList AuthNegotiate = AuthNegotiateAttributeList
type AuthNegotiateAttributeList = ('[ '("host", Soup.Auth.AuthHostPropertyInfo), '("isAuthenticated", Soup.Auth.AuthIsAuthenticatedPropertyInfo), '("isForProxy", Soup.Auth.AuthIsForProxyPropertyInfo), '("realm", Soup.Auth.AuthRealmPropertyInfo), '("schemeName", Soup.Auth.AuthSchemeNamePropertyInfo)] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
#endif
#if ENABLE_OVERLOADING
type instance O.SignalList AuthNegotiate = AuthNegotiateSignalList
type AuthNegotiateSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
-- method AuthNegotiate::supported
-- method type : MemberFunction
-- Args : []
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False
foreign import ccall "soup_auth_negotiate_supported" soup_auth_negotiate_supported ::
IO CInt
{- |
Indicates whether libsoup was built with GSSAPI support. If this is
'False', @/SOUP_TYPE_AUTH_NEGOTIATE/@ will still be defined and can
still be added to a 'GI.Soup.Objects.Session.Session', but libsoup will never attempt to
actually use this auth type.
/Since: 2.54/
-}
authNegotiateSupported ::
(B.CallStack.HasCallStack, MonadIO m) =>
m Bool
authNegotiateSupported = liftIO $ do
result <- soup_auth_negotiate_supported
let result' = (/= 0) result
return result'
#if ENABLE_OVERLOADING
#endif