module GI.Gio.Objects.DBusObjectManagerServer
(
DBusObjectManagerServer(..) ,
DBusObjectManagerServerK ,
toDBusObjectManagerServer ,
noDBusObjectManagerServer ,
dBusObjectManagerServerExport ,
dBusObjectManagerServerExportUniquely ,
dBusObjectManagerServerGetConnection ,
dBusObjectManagerServerIsExported ,
dBusObjectManagerServerNew ,
dBusObjectManagerServerSetConnection ,
dBusObjectManagerServerUnexport ,
DBusObjectManagerServerConnectionPropertyInfo,
constructDBusObjectManagerServerConnection,
getDBusObjectManagerServerConnection ,
setDBusObjectManagerServerConnection ,
DBusObjectManagerServerObjectPathPropertyInfo,
constructDBusObjectManagerServerObjectPath,
getDBusObjectManagerServerObjectPath ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.Gio.Types
import GI.Gio.Callbacks
import qualified GI.GObject as GObject
newtype DBusObjectManagerServer = DBusObjectManagerServer (ForeignPtr DBusObjectManagerServer)
foreign import ccall "g_dbus_object_manager_server_get_type"
c_g_dbus_object_manager_server_get_type :: IO GType
type instance ParentTypes DBusObjectManagerServer = DBusObjectManagerServerParentTypes
type DBusObjectManagerServerParentTypes = '[GObject.Object, DBusObjectManager]
instance GObject DBusObjectManagerServer where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_g_dbus_object_manager_server_get_type
class GObject o => DBusObjectManagerServerK o
instance (GObject o, IsDescendantOf DBusObjectManagerServer o) => DBusObjectManagerServerK o
toDBusObjectManagerServer :: DBusObjectManagerServerK o => o -> IO DBusObjectManagerServer
toDBusObjectManagerServer = unsafeCastTo DBusObjectManagerServer
noDBusObjectManagerServer :: Maybe DBusObjectManagerServer
noDBusObjectManagerServer = Nothing
getDBusObjectManagerServerConnection :: (MonadIO m, DBusObjectManagerServerK o) => o -> m DBusConnection
getDBusObjectManagerServerConnection obj = liftIO $ getObjectPropertyObject obj "connection" DBusConnection
setDBusObjectManagerServerConnection :: (MonadIO m, DBusObjectManagerServerK o, DBusConnectionK a) => o -> a -> m ()
setDBusObjectManagerServerConnection obj val = liftIO $ setObjectPropertyObject obj "connection" val
constructDBusObjectManagerServerConnection :: (DBusConnectionK a) => a -> IO ([Char], GValue)
constructDBusObjectManagerServerConnection val = constructObjectPropertyObject "connection" val
data DBusObjectManagerServerConnectionPropertyInfo
instance AttrInfo DBusObjectManagerServerConnectionPropertyInfo where
type AttrAllowedOps DBusObjectManagerServerConnectionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrSetTypeConstraint DBusObjectManagerServerConnectionPropertyInfo = DBusConnectionK
type AttrBaseTypeConstraint DBusObjectManagerServerConnectionPropertyInfo = DBusObjectManagerServerK
type AttrGetType DBusObjectManagerServerConnectionPropertyInfo = DBusConnection
type AttrLabel DBusObjectManagerServerConnectionPropertyInfo = "DBusObjectManagerServer::connection"
attrGet _ = getDBusObjectManagerServerConnection
attrSet _ = setDBusObjectManagerServerConnection
attrConstruct _ = constructDBusObjectManagerServerConnection
getDBusObjectManagerServerObjectPath :: (MonadIO m, DBusObjectManagerServerK o) => o -> m T.Text
getDBusObjectManagerServerObjectPath obj = liftIO $ getObjectPropertyString obj "object-path"
constructDBusObjectManagerServerObjectPath :: T.Text -> IO ([Char], GValue)
constructDBusObjectManagerServerObjectPath val = constructObjectPropertyString "object-path" val
data DBusObjectManagerServerObjectPathPropertyInfo
instance AttrInfo DBusObjectManagerServerObjectPathPropertyInfo where
type AttrAllowedOps DBusObjectManagerServerObjectPathPropertyInfo = '[ 'AttrConstruct, 'AttrGet]
type AttrSetTypeConstraint DBusObjectManagerServerObjectPathPropertyInfo = (~) T.Text
type AttrBaseTypeConstraint DBusObjectManagerServerObjectPathPropertyInfo = DBusObjectManagerServerK
type AttrGetType DBusObjectManagerServerObjectPathPropertyInfo = T.Text
type AttrLabel DBusObjectManagerServerObjectPathPropertyInfo = "DBusObjectManagerServer::object-path"
attrGet _ = getDBusObjectManagerServerObjectPath
attrSet _ = undefined
attrConstruct _ = constructDBusObjectManagerServerObjectPath
type instance AttributeList DBusObjectManagerServer = DBusObjectManagerServerAttributeList
type DBusObjectManagerServerAttributeList = ('[ '("connection", DBusObjectManagerServerConnectionPropertyInfo), '("object-path", DBusObjectManagerServerObjectPathPropertyInfo)] :: [(Symbol, *)])
type instance SignalList DBusObjectManagerServer = DBusObjectManagerServerSignalList
type DBusObjectManagerServerSignalList = ('[ '("interface-added", DBusObjectManagerInterfaceAddedSignalInfo), '("interface-removed", DBusObjectManagerInterfaceRemovedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("object-added", DBusObjectManagerObjectAddedSignalInfo), '("object-removed", DBusObjectManagerObjectRemovedSignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
foreign import ccall "g_dbus_object_manager_server_new" g_dbus_object_manager_server_new ::
CString ->
IO (Ptr DBusObjectManagerServer)
dBusObjectManagerServerNew ::
(MonadIO m) =>
T.Text ->
m DBusObjectManagerServer
dBusObjectManagerServerNew object_path = liftIO $ do
object_path' <- textToCString object_path
result <- g_dbus_object_manager_server_new object_path'
checkUnexpectedReturnNULL "g_dbus_object_manager_server_new" result
result' <- (wrapObject DBusObjectManagerServer) result
freeMem object_path'
return result'
foreign import ccall "g_dbus_object_manager_server_export" g_dbus_object_manager_server_export ::
Ptr DBusObjectManagerServer ->
Ptr DBusObjectSkeleton ->
IO ()
dBusObjectManagerServerExport ::
(MonadIO m, DBusObjectManagerServerK a, DBusObjectSkeletonK b) =>
a ->
b ->
m ()
dBusObjectManagerServerExport _obj object = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let object' = unsafeManagedPtrCastPtr object
g_dbus_object_manager_server_export _obj' object'
touchManagedPtr _obj
touchManagedPtr object
return ()
foreign import ccall "g_dbus_object_manager_server_export_uniquely" g_dbus_object_manager_server_export_uniquely ::
Ptr DBusObjectManagerServer ->
Ptr DBusObjectSkeleton ->
IO ()
dBusObjectManagerServerExportUniquely ::
(MonadIO m, DBusObjectManagerServerK a, DBusObjectSkeletonK b) =>
a ->
b ->
m ()
dBusObjectManagerServerExportUniquely _obj object = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let object' = unsafeManagedPtrCastPtr object
g_dbus_object_manager_server_export_uniquely _obj' object'
touchManagedPtr _obj
touchManagedPtr object
return ()
foreign import ccall "g_dbus_object_manager_server_get_connection" g_dbus_object_manager_server_get_connection ::
Ptr DBusObjectManagerServer ->
IO (Ptr DBusConnection)
dBusObjectManagerServerGetConnection ::
(MonadIO m, DBusObjectManagerServerK a) =>
a ->
m DBusConnection
dBusObjectManagerServerGetConnection _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- g_dbus_object_manager_server_get_connection _obj'
checkUnexpectedReturnNULL "g_dbus_object_manager_server_get_connection" result
result' <- (wrapObject DBusConnection) result
touchManagedPtr _obj
return result'
foreign import ccall "g_dbus_object_manager_server_is_exported" g_dbus_object_manager_server_is_exported ::
Ptr DBusObjectManagerServer ->
Ptr DBusObjectSkeleton ->
IO CInt
dBusObjectManagerServerIsExported ::
(MonadIO m, DBusObjectManagerServerK a, DBusObjectSkeletonK b) =>
a ->
b ->
m Bool
dBusObjectManagerServerIsExported _obj object = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let object' = unsafeManagedPtrCastPtr object
result <- g_dbus_object_manager_server_is_exported _obj' object'
let result' = (/= 0) result
touchManagedPtr _obj
touchManagedPtr object
return result'
foreign import ccall "g_dbus_object_manager_server_set_connection" g_dbus_object_manager_server_set_connection ::
Ptr DBusObjectManagerServer ->
Ptr DBusConnection ->
IO ()
dBusObjectManagerServerSetConnection ::
(MonadIO m, DBusObjectManagerServerK a, DBusConnectionK b) =>
a ->
Maybe (b) ->
m ()
dBusObjectManagerServerSetConnection _obj connection = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
maybeConnection <- case connection of
Nothing -> return nullPtr
Just jConnection -> do
let jConnection' = unsafeManagedPtrCastPtr jConnection
return jConnection'
g_dbus_object_manager_server_set_connection _obj' maybeConnection
touchManagedPtr _obj
whenJust connection touchManagedPtr
return ()
foreign import ccall "g_dbus_object_manager_server_unexport" g_dbus_object_manager_server_unexport ::
Ptr DBusObjectManagerServer ->
CString ->
IO CInt
dBusObjectManagerServerUnexport ::
(MonadIO m, DBusObjectManagerServerK a) =>
a ->
T.Text ->
m Bool
dBusObjectManagerServerUnexport _obj object_path = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
object_path' <- textToCString object_path
result <- g_dbus_object_manager_server_unexport _obj' object_path'
let result' = (/= 0) result
touchManagedPtr _obj
freeMem object_path'
return result'