#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.WebKit2.Objects.URIRequest
(
URIRequest(..) ,
IsURIRequest ,
toURIRequest ,
noURIRequest ,
#if ENABLE_OVERLOADING
URIRequestGetHttpHeadersMethodInfo ,
#endif
uRIRequestGetHttpHeaders ,
#if ENABLE_OVERLOADING
URIRequestGetHttpMethodMethodInfo ,
#endif
uRIRequestGetHttpMethod ,
#if ENABLE_OVERLOADING
URIRequestGetUriMethodInfo ,
#endif
uRIRequestGetUri ,
uRIRequestNew ,
#if ENABLE_OVERLOADING
URIRequestSetUriMethodInfo ,
#endif
uRIRequestSetUri ,
#if ENABLE_OVERLOADING
URIRequestUriPropertyInfo ,
#endif
constructURIRequestUri ,
getURIRequestUri ,
setURIRequestUri ,
#if ENABLE_OVERLOADING
uRIRequestUri ,
#endif
) 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.Soup.Structs.MessageHeaders as Soup.MessageHeaders
newtype URIRequest = URIRequest (ManagedPtr URIRequest)
foreign import ccall "webkit_uri_request_get_type"
c_webkit_uri_request_get_type :: IO GType
instance GObject URIRequest where
gobjectType = c_webkit_uri_request_get_type
class (GObject o, O.IsDescendantOf URIRequest o) => IsURIRequest o
instance (GObject o, O.IsDescendantOf URIRequest o) => IsURIRequest o
instance O.HasParentTypes URIRequest
type instance O.ParentTypes URIRequest = '[GObject.Object.Object]
toURIRequest :: (MonadIO m, IsURIRequest o) => o -> m URIRequest
toURIRequest = liftIO . unsafeCastTo URIRequest
noURIRequest :: Maybe URIRequest
noURIRequest = Nothing
#if ENABLE_OVERLOADING
type family ResolveURIRequestMethod (t :: Symbol) (o :: *) :: * where
ResolveURIRequestMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveURIRequestMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveURIRequestMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveURIRequestMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveURIRequestMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveURIRequestMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveURIRequestMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveURIRequestMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveURIRequestMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveURIRequestMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveURIRequestMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveURIRequestMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveURIRequestMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveURIRequestMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveURIRequestMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveURIRequestMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveURIRequestMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveURIRequestMethod "getHttpHeaders" o = URIRequestGetHttpHeadersMethodInfo
ResolveURIRequestMethod "getHttpMethod" o = URIRequestGetHttpMethodMethodInfo
ResolveURIRequestMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveURIRequestMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveURIRequestMethod "getUri" o = URIRequestGetUriMethodInfo
ResolveURIRequestMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveURIRequestMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveURIRequestMethod "setUri" o = URIRequestSetUriMethodInfo
ResolveURIRequestMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveURIRequestMethod t URIRequest, O.MethodInfo info URIRequest p) => OL.IsLabel t (URIRequest -> 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
getURIRequestUri :: (MonadIO m, IsURIRequest o) => o -> m T.Text
getURIRequestUri obj = liftIO $ checkUnexpectedNothing "getURIRequestUri" $ B.Properties.getObjectPropertyString obj "uri"
setURIRequestUri :: (MonadIO m, IsURIRequest o) => o -> T.Text -> m ()
setURIRequestUri obj val = liftIO $ B.Properties.setObjectPropertyString obj "uri" (Just val)
constructURIRequestUri :: (IsURIRequest o) => T.Text -> IO (GValueConstruct o)
constructURIRequestUri val = B.Properties.constructObjectPropertyString "uri" (Just val)
#if ENABLE_OVERLOADING
data URIRequestUriPropertyInfo
instance AttrInfo URIRequestUriPropertyInfo where
type AttrAllowedOps URIRequestUriPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrSetTypeConstraint URIRequestUriPropertyInfo = (~) T.Text
type AttrBaseTypeConstraint URIRequestUriPropertyInfo = IsURIRequest
type AttrGetType URIRequestUriPropertyInfo = T.Text
type AttrLabel URIRequestUriPropertyInfo = "uri"
type AttrOrigin URIRequestUriPropertyInfo = URIRequest
attrGet _ = getURIRequestUri
attrSet _ = setURIRequestUri
attrConstruct _ = constructURIRequestUri
attrClear _ = undefined
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList URIRequest
type instance O.AttributeList URIRequest = URIRequestAttributeList
type URIRequestAttributeList = ('[ '("uri", URIRequestUriPropertyInfo)] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
uRIRequestUri :: AttrLabelProxy "uri"
uRIRequestUri = AttrLabelProxy
#endif
#if ENABLE_OVERLOADING
type instance O.SignalList URIRequest = URIRequestSignalList
type URIRequestSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "webkit_uri_request_new" webkit_uri_request_new ::
CString ->
IO (Ptr URIRequest)
uRIRequestNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
T.Text
-> m URIRequest
uRIRequestNew uri = liftIO $ do
uri' <- textToCString uri
result <- webkit_uri_request_new uri'
checkUnexpectedReturnNULL "uRIRequestNew" result
result' <- (wrapObject URIRequest) result
freeMem uri'
return result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "webkit_uri_request_get_http_headers" webkit_uri_request_get_http_headers ::
Ptr URIRequest ->
IO (Ptr Soup.MessageHeaders.MessageHeaders)
uRIRequestGetHttpHeaders ::
(B.CallStack.HasCallStack, MonadIO m, IsURIRequest a) =>
a
-> m (Maybe Soup.MessageHeaders.MessageHeaders)
uRIRequestGetHttpHeaders request = liftIO $ do
request' <- unsafeManagedPtrCastPtr request
result <- webkit_uri_request_get_http_headers request'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (newBoxed Soup.MessageHeaders.MessageHeaders) result'
return result''
touchManagedPtr request
return maybeResult
#if ENABLE_OVERLOADING
data URIRequestGetHttpHeadersMethodInfo
instance (signature ~ (m (Maybe Soup.MessageHeaders.MessageHeaders)), MonadIO m, IsURIRequest a) => O.MethodInfo URIRequestGetHttpHeadersMethodInfo a signature where
overloadedMethod _ = uRIRequestGetHttpHeaders
#endif
foreign import ccall "webkit_uri_request_get_http_method" webkit_uri_request_get_http_method ::
Ptr URIRequest ->
IO CString
uRIRequestGetHttpMethod ::
(B.CallStack.HasCallStack, MonadIO m, IsURIRequest a) =>
a
-> m T.Text
uRIRequestGetHttpMethod request = liftIO $ do
request' <- unsafeManagedPtrCastPtr request
result <- webkit_uri_request_get_http_method request'
checkUnexpectedReturnNULL "uRIRequestGetHttpMethod" result
result' <- cstringToText result
touchManagedPtr request
return result'
#if ENABLE_OVERLOADING
data URIRequestGetHttpMethodMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsURIRequest a) => O.MethodInfo URIRequestGetHttpMethodMethodInfo a signature where
overloadedMethod _ = uRIRequestGetHttpMethod
#endif
foreign import ccall "webkit_uri_request_get_uri" webkit_uri_request_get_uri ::
Ptr URIRequest ->
IO CString
uRIRequestGetUri ::
(B.CallStack.HasCallStack, MonadIO m, IsURIRequest a) =>
a
-> m T.Text
uRIRequestGetUri request = liftIO $ do
request' <- unsafeManagedPtrCastPtr request
result <- webkit_uri_request_get_uri request'
checkUnexpectedReturnNULL "uRIRequestGetUri" result
result' <- cstringToText result
touchManagedPtr request
return result'
#if ENABLE_OVERLOADING
data URIRequestGetUriMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsURIRequest a) => O.MethodInfo URIRequestGetUriMethodInfo a signature where
overloadedMethod _ = uRIRequestGetUri
#endif
foreign import ccall "webkit_uri_request_set_uri" webkit_uri_request_set_uri ::
Ptr URIRequest ->
CString ->
IO ()
uRIRequestSetUri ::
(B.CallStack.HasCallStack, MonadIO m, IsURIRequest a) =>
a
-> T.Text
-> m ()
uRIRequestSetUri request uri = liftIO $ do
request' <- unsafeManagedPtrCastPtr request
uri' <- textToCString uri
webkit_uri_request_set_uri request' uri'
touchManagedPtr request
freeMem uri'
return ()
#if ENABLE_OVERLOADING
data URIRequestSetUriMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsURIRequest a) => O.MethodInfo URIRequestSetUriMethodInfo a signature where
overloadedMethod _ = uRIRequestSetUri
#endif