{- | 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.RequestHTTP ( -- * Exported types RequestHTTP(..) , IsRequestHTTP , toRequestHTTP , noRequestHTTP , -- * Methods -- ** getMessage #method:getMessage# #if ENABLE_OVERLOADING RequestHTTPGetMessageMethodInfo , #endif requestHTTPGetMessage , ) 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 qualified GI.Gio.Interfaces.Initable as Gio.Initable import {-# SOURCE #-} qualified GI.Soup.Objects.Message as Soup.Message import {-# SOURCE #-} qualified GI.Soup.Objects.Request as Soup.Request -- | Memory-managed wrapper type. newtype RequestHTTP = RequestHTTP (ManagedPtr RequestHTTP) foreign import ccall "soup_request_http_get_type" c_soup_request_http_get_type :: IO GType instance GObject RequestHTTP where gobjectType = c_soup_request_http_get_type -- | Type class for types which can be safely cast to `RequestHTTP`, for instance with `toRequestHTTP`. class (GObject o, O.IsDescendantOf RequestHTTP o) => IsRequestHTTP o instance (GObject o, O.IsDescendantOf RequestHTTP o) => IsRequestHTTP o instance O.HasParentTypes RequestHTTP type instance O.ParentTypes RequestHTTP = '[Soup.Request.Request, GObject.Object.Object, Gio.Initable.Initable] -- | Cast to `RequestHTTP`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`. toRequestHTTP :: (MonadIO m, IsRequestHTTP o) => o -> m RequestHTTP toRequestHTTP = liftIO . unsafeCastTo RequestHTTP -- | A convenience alias for `Nothing` :: `Maybe` `RequestHTTP`. noRequestHTTP :: Maybe RequestHTTP noRequestHTTP = Nothing #if ENABLE_OVERLOADING type family ResolveRequestHTTPMethod (t :: Symbol) (o :: *) :: * where ResolveRequestHTTPMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo ResolveRequestHTTPMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo ResolveRequestHTTPMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo ResolveRequestHTTPMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo ResolveRequestHTTPMethod "getv" o = GObject.Object.ObjectGetvMethodInfo ResolveRequestHTTPMethod "init" o = Gio.Initable.InitableInitMethodInfo ResolveRequestHTTPMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo ResolveRequestHTTPMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo ResolveRequestHTTPMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo ResolveRequestHTTPMethod "ref" o = GObject.Object.ObjectRefMethodInfo ResolveRequestHTTPMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo ResolveRequestHTTPMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo ResolveRequestHTTPMethod "send" o = Soup.Request.RequestSendMethodInfo ResolveRequestHTTPMethod "sendAsync" o = Soup.Request.RequestSendAsyncMethodInfo ResolveRequestHTTPMethod "sendFinish" o = Soup.Request.RequestSendFinishMethodInfo ResolveRequestHTTPMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo ResolveRequestHTTPMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo ResolveRequestHTTPMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo ResolveRequestHTTPMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo ResolveRequestHTTPMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo ResolveRequestHTTPMethod "getContentLength" o = Soup.Request.RequestGetContentLengthMethodInfo ResolveRequestHTTPMethod "getContentType" o = Soup.Request.RequestGetContentTypeMethodInfo ResolveRequestHTTPMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo ResolveRequestHTTPMethod "getMessage" o = RequestHTTPGetMessageMethodInfo ResolveRequestHTTPMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo ResolveRequestHTTPMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo ResolveRequestHTTPMethod "getSession" o = Soup.Request.RequestGetSessionMethodInfo ResolveRequestHTTPMethod "getUri" o = Soup.Request.RequestGetUriMethodInfo ResolveRequestHTTPMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo ResolveRequestHTTPMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo ResolveRequestHTTPMethod l o = O.MethodResolutionFailed l o instance (info ~ ResolveRequestHTTPMethod t RequestHTTP, O.MethodInfo info RequestHTTP p) => OL.IsLabel t (RequestHTTP -> 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 RequestHTTP type instance O.AttributeList RequestHTTP = RequestHTTPAttributeList type RequestHTTPAttributeList = ('[ '("session", Soup.Request.RequestSessionPropertyInfo), '("uri", Soup.Request.RequestUriPropertyInfo)] :: [(Symbol, *)]) #endif #if ENABLE_OVERLOADING #endif #if ENABLE_OVERLOADING type instance O.SignalList RequestHTTP = RequestHTTPSignalList type RequestHTTPSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)]) #endif -- method RequestHTTP::get_message -- method type : OrdinaryMethod -- Args : [Arg {argCName = "http", argType = TInterface (Name {namespace = "Soup", name = "RequestHTTP"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #SoupRequestHTTP object", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Soup", name = "Message"})) -- throws : False -- Skip return : False foreign import ccall "soup_request_http_get_message" soup_request_http_get_message :: Ptr RequestHTTP -> -- http : TInterface (Name {namespace = "Soup", name = "RequestHTTP"}) IO (Ptr Soup.Message.Message) {- | Gets a new reference to the 'GI.Soup.Objects.Message.Message' associated to this SoupRequest /Since: 2.40/ -} requestHTTPGetMessage :: (B.CallStack.HasCallStack, MonadIO m, IsRequestHTTP a) => a {- ^ /@http@/: a 'GI.Soup.Objects.RequestHTTP.RequestHTTP' object -} -> m Soup.Message.Message {- ^ __Returns:__ a new reference to the 'GI.Soup.Objects.Message.Message' -} requestHTTPGetMessage http = liftIO $ do http' <- unsafeManagedPtrCastPtr http result <- soup_request_http_get_message http' checkUnexpectedReturnNULL "requestHTTPGetMessage" result result' <- (wrapObject Soup.Message.Message) result touchManagedPtr http return result' #if ENABLE_OVERLOADING data RequestHTTPGetMessageMethodInfo instance (signature ~ (m Soup.Message.Message), MonadIO m, IsRequestHTTP a) => O.MethodInfo RequestHTTPGetMessageMethodInfo a signature where overloadedMethod _ = requestHTTPGetMessage #endif