Package ch.bailu.gtk.gio
Class DBusObjectManagerServer
java.lang.Object
ch.bailu.gtk.type.Type
ch.bailu.gtk.type.Pointer
ch.bailu.gtk.gobject.Object
ch.bailu.gtk.gio.DBusObjectManagerServer
- All Implemented Interfaces:
PointerInterface
#GDBusObjectManagerServer is used to export #GDBusObject instances using
the standardized
[org.freedesktop.DBus.ObjectManager](http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager)
interface. For example, remote D-Bus clients can get all objects
and properties in a single call. Additionally, any change in the
object hierarchy is broadcast using signals. This means that D-Bus
clients can keep caches up to date by only listening to D-Bus
signals.
The recommended path to export an object manager at is the path form of the
well-known name of a D-Bus service, or below. For example, if a D-Bus service
is available at the well-known name `net.example.ExampleService1`, the object
manager should typically be exported at `/net/example/ExampleService1`, or
below (to allow for multiple object managers in a service).
It is supported, but not recommended, to export an object manager at the root
path, `/`.
See #GDBusObjectManagerClient for the client-side code that is
intended to be used with #GDBusObjectManagerServer or any D-Bus
object implementing the org.freedesktop.DBus.ObjectManager
interface.
the standardized
[org.freedesktop.DBus.ObjectManager](http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager)
interface. For example, remote D-Bus clients can get all objects
and properties in a single call. Additionally, any change in the
object hierarchy is broadcast using signals. This means that D-Bus
clients can keep caches up to date by only listening to D-Bus
signals.
The recommended path to export an object manager at is the path form of the
well-known name of a D-Bus service, or below. For example, if a D-Bus service
is available at the well-known name `net.example.ExampleService1`, the object
manager should typically be exported at `/net/example/ExampleService1`, or
below (to allow for multiple object managers in a service).
It is supported, but not recommended, to export an object manager at the root
path, `/`.
See #GDBusObjectManagerClient for the client-side code that is
intended to be used with #GDBusObjectManagerServer or any D-Bus
object implementing the org.freedesktop.DBus.ObjectManager
interface.
-
Nested Class Summary
Nested classes/interfaces inherited from class ch.bailu.gtk.gobject.Object
Object.OnBindingTransformFunc, Object.OnDestroyNotify, Object.OnDuplicateFunc, Object.OnNotify, Object.OnToggleNotify, Object.OnWeakNotify
-
Field Summary
Fields inherited from class ch.bailu.gtk.gobject.Object
SIGNAL_ON_NOTIFY
-
Constructor Summary
ConstructorDescriptionDBusObjectManagerServer
(PointerContainer pointer) DBusObjectManagerServer
(Str object_path) Creates a new #GDBusObjectManagerServer object.DBusObjectManagerServer
(String object_path) Creates a new #GDBusObjectManagerServer object. -
Method Summary
Modifier and TypeMethodDescriptionImplements interfaceDBusObjectManager
.void
export
(DBusObjectSkeleton object) Exports @object on @manager.void
exportUniquely
(DBusObjectSkeleton object) Like g_dbus_object_manager_server_export() but appends a string of
the form _N (with N being a natural number) to @object's object path
if an object with the given path already exists.static ClassHandler
Gets the #GDBusConnection used by @manager.static int
static long
static TypeSystem.TypeSize
static long
static TypeSystem.TypeSize
boolean
isExported
(DBusObjectSkeleton object) Returns whether @object is currently exported on @manager.void
setConnection
(DBusConnection connection) Exports all objects managed by @manager on @connection.boolean
If @manager has an object at @path, removes the object.boolean
If @manager has an object at @path, removes the object.Methods inherited from class ch.bailu.gtk.gobject.Object
addToggleRef, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, disconnect, disconnect, dupData, dupData, dupQdata, forceFloating, freezeNotify, get, get, getData, getData, getProperty, getProperty, getQdata, interfaceFindProperty, interfaceInstallProperty, isFloating, notify, notify, notifyByPspec, onNotify, ref, refSink, removeToggleRef, replaceData, replaceData, replaceQdata, runDispose, set, set, setData, setData, setDataFull, setDataFull, setProperty, setProperty, setQdata, setQdataFull, stealData, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref
Methods inherited from class ch.bailu.gtk.type.Pointer
asCPointer, cast, connectSignal, disconnectSignals, disconnectSignals, equals, hashCode, throwIfNull, throwNullPointerException, toString, unregisterCallbacks, unregisterCallbacks
Methods inherited from class ch.bailu.gtk.type.Type
asCPointer, asCPointer, asCPointerNotNull, asJnaPointer, asJnaPointer, asPointer, asPointer, cast, cast, throwIfNull
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface ch.bailu.gtk.type.PointerInterface
asCPointerNotNull, asJnaPointer, asPointer, isNotNull, isNull
-
Constructor Details
-
DBusObjectManagerServer
-
DBusObjectManagerServer
Creates a new #GDBusObjectManagerServer object.
The returned server isn't yet exported on any connection. To do so,
use g_dbus_object_manager_server_set_connection(). Normally you
want to export all of your objects before doing so to avoid
[InterfacesAdded](http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager)
signals being emitted.- Parameters:
object_path
- The object path to export the manager object at.
-
DBusObjectManagerServer
Creates a new #GDBusObjectManagerServer object.
The returned server isn't yet exported on any connection. To do so,
use g_dbus_object_manager_server_set_connection(). Normally you
want to export all of your objects before doing so to avoid
[InterfacesAdded](http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager)
signals being emitted.- Parameters:
object_path
- The object path to export the manager object at.
-
-
Method Details
-
getClassHandler
-
export
Exports @object on @manager.
If there is already a #GDBusObject exported at the object path,
then the old object is removed.
The object path for @object must be in the hierarchy rooted by the
object path for @manager.
Note that @manager will take a reference on @object for as long as
it is exported.- Parameters:
object
- A #GDBusObjectSkeleton.
-
exportUniquely
Like g_dbus_object_manager_server_export() but appends a string of
the form _N (with N being a natural number) to @object's object path
if an object with the given path already exists. As such, the
#GDBusObjectProxy:g-object-path property of @object may be modified.- Parameters:
object
- An object.
-
getConnection
Gets the #GDBusConnection used by @manager.- Returns:
- A #GDBusConnection object or %NULL if @manager isn't exported on a connection. The returned object should be freed with g_object_unref().
-
isExported
Returns whether @object is currently exported on @manager.- Parameters:
object
- An object.- Returns:
- %TRUE if @object is exported
-
setConnection
Exports all objects managed by @manager on @connection. If
@connection is %NULL, stops exporting objects.- Parameters:
connection
- A #GDBusConnection or %NULL.
-
unexport
If @manager has an object at @path, removes the object. Otherwise
does nothing.
Note that @object_path must be in the hierarchy rooted by the
object path for @manager.- Parameters:
object_path
- An object path.- Returns:
- %TRUE if object at @object_path was removed, %FALSE otherwise.
-
unexport
If @manager has an object at @path, removes the object. Otherwise
does nothing.
Note that @object_path must be in the hierarchy rooted by the
object path for @manager.- Parameters:
object_path
- An object path.- Returns:
- %TRUE if object at @object_path was removed, %FALSE otherwise.
-
asDBusObjectManager
Implements interfaceDBusObjectManager
. Call this to get access to interface functions.- Returns:
DBusObjectManager
-
getTypeID
public static long getTypeID() -
getParentTypeID
public static long getParentTypeID() -
getTypeSize
-
getParentTypeSize
-
getInstanceSize
public static int getInstanceSize()
-