{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (garetxe@gmail.com) -} module GI.WebKit.Objects.WebDatabase ( -- * Exported types WebDatabase(..) , WebDatabaseK , toWebDatabase , noWebDatabase , -- * Methods -- ** webDatabaseGetDisplayName WebDatabaseGetDisplayNameMethodInfo , webDatabaseGetDisplayName , -- ** webDatabaseGetExpectedSize WebDatabaseGetExpectedSizeMethodInfo , webDatabaseGetExpectedSize , -- ** webDatabaseGetFilename WebDatabaseGetFilenameMethodInfo , webDatabaseGetFilename , -- ** webDatabaseGetName WebDatabaseGetNameMethodInfo , webDatabaseGetName , -- ** webDatabaseGetSecurityOrigin WebDatabaseGetSecurityOriginMethodInfo , webDatabaseGetSecurityOrigin , -- ** webDatabaseGetSize WebDatabaseGetSizeMethodInfo , webDatabaseGetSize , -- ** webDatabaseRemove WebDatabaseRemoveMethodInfo , webDatabaseRemove , -- * Properties -- ** DisplayName WebDatabaseDisplayNamePropertyInfo , getWebDatabaseDisplayName , webDatabaseDisplayName , -- ** ExpectedSize WebDatabaseExpectedSizePropertyInfo , getWebDatabaseExpectedSize , webDatabaseExpectedSize , -- ** Filename WebDatabaseFilenamePropertyInfo , getWebDatabaseFilename , webDatabaseFilename , -- ** Name WebDatabaseNamePropertyInfo , constructWebDatabaseName , getWebDatabaseName , webDatabaseName , -- ** SecurityOrigin WebDatabaseSecurityOriginPropertyInfo , constructWebDatabaseSecurityOrigin , getWebDatabaseSecurityOrigin , webDatabaseSecurityOrigin , -- ** Size WebDatabaseSizePropertyInfo , getWebDatabaseSize , webDatabaseSize , ) where import Data.GI.Base.ShortPrelude import qualified Data.GI.Base.Attributes as GI.Attributes import qualified Data.Text as T import qualified Data.ByteString.Char8 as B import qualified Data.Map as Map import GI.WebKit.Types import GI.WebKit.Callbacks import qualified GI.GObject as GObject newtype WebDatabase = WebDatabase (ForeignPtr WebDatabase) foreign import ccall "webkit_web_database_get_type" c_webkit_web_database_get_type :: IO GType type instance ParentTypes WebDatabase = WebDatabaseParentTypes type WebDatabaseParentTypes = '[GObject.Object] instance GObject WebDatabase where gobjectIsInitiallyUnowned _ = False gobjectType _ = c_webkit_web_database_get_type class GObject o => WebDatabaseK o instance (GObject o, IsDescendantOf WebDatabase o) => WebDatabaseK o toWebDatabase :: WebDatabaseK o => o -> IO WebDatabase toWebDatabase = unsafeCastTo WebDatabase noWebDatabase :: Maybe WebDatabase noWebDatabase = Nothing type family ResolveWebDatabaseMethod (t :: Symbol) (o :: *) :: * where ResolveWebDatabaseMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo ResolveWebDatabaseMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo ResolveWebDatabaseMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo ResolveWebDatabaseMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo ResolveWebDatabaseMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo ResolveWebDatabaseMethod "notify" o = GObject.ObjectNotifyMethodInfo ResolveWebDatabaseMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo ResolveWebDatabaseMethod "ref" o = GObject.ObjectRefMethodInfo ResolveWebDatabaseMethod "refSink" o = GObject.ObjectRefSinkMethodInfo ResolveWebDatabaseMethod "remove" o = WebDatabaseRemoveMethodInfo ResolveWebDatabaseMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo ResolveWebDatabaseMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo ResolveWebDatabaseMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo ResolveWebDatabaseMethod "stealData" o = GObject.ObjectStealDataMethodInfo ResolveWebDatabaseMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo ResolveWebDatabaseMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo ResolveWebDatabaseMethod "unref" o = GObject.ObjectUnrefMethodInfo ResolveWebDatabaseMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo ResolveWebDatabaseMethod "getData" o = GObject.ObjectGetDataMethodInfo ResolveWebDatabaseMethod "getDisplayName" o = WebDatabaseGetDisplayNameMethodInfo ResolveWebDatabaseMethod "getExpectedSize" o = WebDatabaseGetExpectedSizeMethodInfo ResolveWebDatabaseMethod "getFilename" o = WebDatabaseGetFilenameMethodInfo ResolveWebDatabaseMethod "getName" o = WebDatabaseGetNameMethodInfo ResolveWebDatabaseMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo ResolveWebDatabaseMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo ResolveWebDatabaseMethod "getSecurityOrigin" o = WebDatabaseGetSecurityOriginMethodInfo ResolveWebDatabaseMethod "getSize" o = WebDatabaseGetSizeMethodInfo ResolveWebDatabaseMethod "setData" o = GObject.ObjectSetDataMethodInfo ResolveWebDatabaseMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo ResolveWebDatabaseMethod l o = MethodResolutionFailed l o instance (info ~ ResolveWebDatabaseMethod t WebDatabase, MethodInfo info WebDatabase p) => IsLabelProxy t (WebDatabase -> p) where fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info) #if MIN_VERSION_base(4,9,0) instance (info ~ ResolveWebDatabaseMethod t WebDatabase, MethodInfo info WebDatabase p) => IsLabel t (WebDatabase -> p) where fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info) #endif -- VVV Prop "display-name" -- Type: TBasicType TUTF8 -- Flags: [PropertyReadable] -- Nullable: (Just False,Nothing) getWebDatabaseDisplayName :: (MonadIO m, WebDatabaseK o) => o -> m T.Text getWebDatabaseDisplayName obj = liftIO $ checkUnexpectedNothing "getWebDatabaseDisplayName" $ getObjectPropertyString obj "display-name" data WebDatabaseDisplayNamePropertyInfo instance AttrInfo WebDatabaseDisplayNamePropertyInfo where type AttrAllowedOps WebDatabaseDisplayNamePropertyInfo = '[ 'AttrGet, 'AttrClear] type AttrSetTypeConstraint WebDatabaseDisplayNamePropertyInfo = (~) () type AttrBaseTypeConstraint WebDatabaseDisplayNamePropertyInfo = WebDatabaseK type AttrGetType WebDatabaseDisplayNamePropertyInfo = T.Text type AttrLabel WebDatabaseDisplayNamePropertyInfo = "display-name" attrGet _ = getWebDatabaseDisplayName attrSet _ = undefined attrConstruct _ = undefined attrClear _ = undefined -- VVV Prop "expected-size" -- Type: TBasicType TUInt64 -- Flags: [PropertyReadable] -- Nullable: (Just False,Nothing) getWebDatabaseExpectedSize :: (MonadIO m, WebDatabaseK o) => o -> m Word64 getWebDatabaseExpectedSize obj = liftIO $ getObjectPropertyUInt64 obj "expected-size" data WebDatabaseExpectedSizePropertyInfo instance AttrInfo WebDatabaseExpectedSizePropertyInfo where type AttrAllowedOps WebDatabaseExpectedSizePropertyInfo = '[ 'AttrGet] type AttrSetTypeConstraint WebDatabaseExpectedSizePropertyInfo = (~) () type AttrBaseTypeConstraint WebDatabaseExpectedSizePropertyInfo = WebDatabaseK type AttrGetType WebDatabaseExpectedSizePropertyInfo = Word64 type AttrLabel WebDatabaseExpectedSizePropertyInfo = "expected-size" attrGet _ = getWebDatabaseExpectedSize attrSet _ = undefined attrConstruct _ = undefined attrClear _ = undefined -- VVV Prop "filename" -- Type: TBasicType TUTF8 -- Flags: [PropertyReadable] -- Nullable: (Just False,Nothing) getWebDatabaseFilename :: (MonadIO m, WebDatabaseK o) => o -> m T.Text getWebDatabaseFilename obj = liftIO $ checkUnexpectedNothing "getWebDatabaseFilename" $ getObjectPropertyString obj "filename" data WebDatabaseFilenamePropertyInfo instance AttrInfo WebDatabaseFilenamePropertyInfo where type AttrAllowedOps WebDatabaseFilenamePropertyInfo = '[ 'AttrGet, 'AttrClear] type AttrSetTypeConstraint WebDatabaseFilenamePropertyInfo = (~) () type AttrBaseTypeConstraint WebDatabaseFilenamePropertyInfo = WebDatabaseK type AttrGetType WebDatabaseFilenamePropertyInfo = T.Text type AttrLabel WebDatabaseFilenamePropertyInfo = "filename" attrGet _ = getWebDatabaseFilename attrSet _ = undefined attrConstruct _ = undefined attrClear _ = undefined -- VVV Prop "name" -- Type: TBasicType TUTF8 -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly] -- Nullable: (Just False,Nothing) getWebDatabaseName :: (MonadIO m, WebDatabaseK o) => o -> m T.Text getWebDatabaseName obj = liftIO $ checkUnexpectedNothing "getWebDatabaseName" $ getObjectPropertyString obj "name" constructWebDatabaseName :: T.Text -> IO ([Char], GValue) constructWebDatabaseName val = constructObjectPropertyString "name" (Just val) data WebDatabaseNamePropertyInfo instance AttrInfo WebDatabaseNamePropertyInfo where type AttrAllowedOps WebDatabaseNamePropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear] type AttrSetTypeConstraint WebDatabaseNamePropertyInfo = (~) T.Text type AttrBaseTypeConstraint WebDatabaseNamePropertyInfo = WebDatabaseK type AttrGetType WebDatabaseNamePropertyInfo = T.Text type AttrLabel WebDatabaseNamePropertyInfo = "name" attrGet _ = getWebDatabaseName attrSet _ = undefined attrConstruct _ = constructWebDatabaseName attrClear _ = undefined -- VVV Prop "security-origin" -- Type: TInterface "WebKit" "SecurityOrigin" -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly] -- Nullable: (Just False,Nothing) getWebDatabaseSecurityOrigin :: (MonadIO m, WebDatabaseK o) => o -> m SecurityOrigin getWebDatabaseSecurityOrigin obj = liftIO $ checkUnexpectedNothing "getWebDatabaseSecurityOrigin" $ getObjectPropertyObject obj "security-origin" SecurityOrigin constructWebDatabaseSecurityOrigin :: (SecurityOriginK a) => a -> IO ([Char], GValue) constructWebDatabaseSecurityOrigin val = constructObjectPropertyObject "security-origin" (Just val) data WebDatabaseSecurityOriginPropertyInfo instance AttrInfo WebDatabaseSecurityOriginPropertyInfo where type AttrAllowedOps WebDatabaseSecurityOriginPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear] type AttrSetTypeConstraint WebDatabaseSecurityOriginPropertyInfo = SecurityOriginK type AttrBaseTypeConstraint WebDatabaseSecurityOriginPropertyInfo = WebDatabaseK type AttrGetType WebDatabaseSecurityOriginPropertyInfo = SecurityOrigin type AttrLabel WebDatabaseSecurityOriginPropertyInfo = "security-origin" attrGet _ = getWebDatabaseSecurityOrigin attrSet _ = undefined attrConstruct _ = constructWebDatabaseSecurityOrigin attrClear _ = undefined -- VVV Prop "size" -- Type: TBasicType TUInt64 -- Flags: [PropertyReadable] -- Nullable: (Just False,Nothing) getWebDatabaseSize :: (MonadIO m, WebDatabaseK o) => o -> m Word64 getWebDatabaseSize obj = liftIO $ getObjectPropertyUInt64 obj "size" data WebDatabaseSizePropertyInfo instance AttrInfo WebDatabaseSizePropertyInfo where type AttrAllowedOps WebDatabaseSizePropertyInfo = '[ 'AttrGet] type AttrSetTypeConstraint WebDatabaseSizePropertyInfo = (~) () type AttrBaseTypeConstraint WebDatabaseSizePropertyInfo = WebDatabaseK type AttrGetType WebDatabaseSizePropertyInfo = Word64 type AttrLabel WebDatabaseSizePropertyInfo = "size" attrGet _ = getWebDatabaseSize attrSet _ = undefined attrConstruct _ = undefined attrClear _ = undefined type instance AttributeList WebDatabase = WebDatabaseAttributeList type WebDatabaseAttributeList = ('[ '("displayName", WebDatabaseDisplayNamePropertyInfo), '("expectedSize", WebDatabaseExpectedSizePropertyInfo), '("filename", WebDatabaseFilenamePropertyInfo), '("name", WebDatabaseNamePropertyInfo), '("securityOrigin", WebDatabaseSecurityOriginPropertyInfo), '("size", WebDatabaseSizePropertyInfo)] :: [(Symbol, *)]) webDatabaseDisplayName :: AttrLabelProxy "displayName" webDatabaseDisplayName = AttrLabelProxy webDatabaseExpectedSize :: AttrLabelProxy "expectedSize" webDatabaseExpectedSize = AttrLabelProxy webDatabaseFilename :: AttrLabelProxy "filename" webDatabaseFilename = AttrLabelProxy webDatabaseName :: AttrLabelProxy "name" webDatabaseName = AttrLabelProxy webDatabaseSecurityOrigin :: AttrLabelProxy "securityOrigin" webDatabaseSecurityOrigin = AttrLabelProxy webDatabaseSize :: AttrLabelProxy "size" webDatabaseSize = AttrLabelProxy type instance SignalList WebDatabase = WebDatabaseSignalList type WebDatabaseSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)]) -- method WebDatabase::get_display_name -- method type : OrdinaryMethod -- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "WebDatabase", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUTF8) -- throws : False -- Skip return : False foreign import ccall "webkit_web_database_get_display_name" webkit_web_database_get_display_name :: Ptr WebDatabase -> -- _obj : TInterface "WebKit" "WebDatabase" IO CString webDatabaseGetDisplayName :: (MonadIO m, WebDatabaseK a) => a -- _obj -> m T.Text -- result webDatabaseGetDisplayName _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- webkit_web_database_get_display_name _obj' checkUnexpectedReturnNULL "webkit_web_database_get_display_name" result result' <- cstringToText result touchManagedPtr _obj return result' data WebDatabaseGetDisplayNameMethodInfo instance (signature ~ (m T.Text), MonadIO m, WebDatabaseK a) => MethodInfo WebDatabaseGetDisplayNameMethodInfo a signature where overloadedMethod _ = webDatabaseGetDisplayName -- method WebDatabase::get_expected_size -- method type : OrdinaryMethod -- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "WebDatabase", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUInt64) -- throws : False -- Skip return : False foreign import ccall "webkit_web_database_get_expected_size" webkit_web_database_get_expected_size :: Ptr WebDatabase -> -- _obj : TInterface "WebKit" "WebDatabase" IO Word64 webDatabaseGetExpectedSize :: (MonadIO m, WebDatabaseK a) => a -- _obj -> m Word64 -- result webDatabaseGetExpectedSize _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- webkit_web_database_get_expected_size _obj' touchManagedPtr _obj return result data WebDatabaseGetExpectedSizeMethodInfo instance (signature ~ (m Word64), MonadIO m, WebDatabaseK a) => MethodInfo WebDatabaseGetExpectedSizeMethodInfo a signature where overloadedMethod _ = webDatabaseGetExpectedSize -- method WebDatabase::get_filename -- method type : OrdinaryMethod -- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "WebDatabase", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUTF8) -- throws : False -- Skip return : False foreign import ccall "webkit_web_database_get_filename" webkit_web_database_get_filename :: Ptr WebDatabase -> -- _obj : TInterface "WebKit" "WebDatabase" IO CString webDatabaseGetFilename :: (MonadIO m, WebDatabaseK a) => a -- _obj -> m T.Text -- result webDatabaseGetFilename _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- webkit_web_database_get_filename _obj' checkUnexpectedReturnNULL "webkit_web_database_get_filename" result result' <- cstringToText result touchManagedPtr _obj return result' data WebDatabaseGetFilenameMethodInfo instance (signature ~ (m T.Text), MonadIO m, WebDatabaseK a) => MethodInfo WebDatabaseGetFilenameMethodInfo a signature where overloadedMethod _ = webDatabaseGetFilename -- method WebDatabase::get_name -- method type : OrdinaryMethod -- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "WebDatabase", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUTF8) -- throws : False -- Skip return : False foreign import ccall "webkit_web_database_get_name" webkit_web_database_get_name :: Ptr WebDatabase -> -- _obj : TInterface "WebKit" "WebDatabase" IO CString webDatabaseGetName :: (MonadIO m, WebDatabaseK a) => a -- _obj -> m T.Text -- result webDatabaseGetName _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- webkit_web_database_get_name _obj' checkUnexpectedReturnNULL "webkit_web_database_get_name" result result' <- cstringToText result touchManagedPtr _obj return result' data WebDatabaseGetNameMethodInfo instance (signature ~ (m T.Text), MonadIO m, WebDatabaseK a) => MethodInfo WebDatabaseGetNameMethodInfo a signature where overloadedMethod _ = webDatabaseGetName -- method WebDatabase::get_security_origin -- method type : OrdinaryMethod -- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "WebDatabase", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface "WebKit" "SecurityOrigin") -- throws : False -- Skip return : False foreign import ccall "webkit_web_database_get_security_origin" webkit_web_database_get_security_origin :: Ptr WebDatabase -> -- _obj : TInterface "WebKit" "WebDatabase" IO (Ptr SecurityOrigin) webDatabaseGetSecurityOrigin :: (MonadIO m, WebDatabaseK a) => a -- _obj -> m SecurityOrigin -- result webDatabaseGetSecurityOrigin _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- webkit_web_database_get_security_origin _obj' checkUnexpectedReturnNULL "webkit_web_database_get_security_origin" result result' <- (newObject SecurityOrigin) result touchManagedPtr _obj return result' data WebDatabaseGetSecurityOriginMethodInfo instance (signature ~ (m SecurityOrigin), MonadIO m, WebDatabaseK a) => MethodInfo WebDatabaseGetSecurityOriginMethodInfo a signature where overloadedMethod _ = webDatabaseGetSecurityOrigin -- method WebDatabase::get_size -- method type : OrdinaryMethod -- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "WebDatabase", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUInt64) -- throws : False -- Skip return : False foreign import ccall "webkit_web_database_get_size" webkit_web_database_get_size :: Ptr WebDatabase -> -- _obj : TInterface "WebKit" "WebDatabase" IO Word64 webDatabaseGetSize :: (MonadIO m, WebDatabaseK a) => a -- _obj -> m Word64 -- result webDatabaseGetSize _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- webkit_web_database_get_size _obj' touchManagedPtr _obj return result data WebDatabaseGetSizeMethodInfo instance (signature ~ (m Word64), MonadIO m, WebDatabaseK a) => MethodInfo WebDatabaseGetSizeMethodInfo a signature where overloadedMethod _ = webDatabaseGetSize -- method WebDatabase::remove -- method type : OrdinaryMethod -- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "WebDatabase", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_web_database_remove" webkit_web_database_remove :: Ptr WebDatabase -> -- _obj : TInterface "WebKit" "WebDatabase" IO () webDatabaseRemove :: (MonadIO m, WebDatabaseK a) => a -- _obj -> m () -- result webDatabaseRemove _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj webkit_web_database_remove _obj' touchManagedPtr _obj return () data WebDatabaseRemoveMethodInfo instance (signature ~ (m ()), MonadIO m, WebDatabaseK a) => MethodInfo WebDatabaseRemoveMethodInfo a signature where overloadedMethod _ = webDatabaseRemove