Method
GioDBusConnectionregister_object_with_closures2
since: 2.84
Declaration [src]
guint
g_dbus_connection_register_object_with_closures2 (
GDBusConnection* connection,
const gchar* object_path,
GDBusInterfaceInfo* interface_info,
GClosure* method_call_closure,
GClosure* get_property_closure,
GClosure* set_property_closure,
GError** error
)
Description [src]
Version of g_dbus_connection_register_object() using closures instead
of a GDBusInterfaceVTable for easier binding in other languages.
In contrast to g_dbus_connection_register_object() and
g_dbus_connection_register_object_with_closures(), the reference
counting semantics of the function wrapped by method_call_closure are not
the same as those of GDBusInterfaceMethodCallFunc. Ownership of
a reference to the GDBusMethodInvocation is not transferred to
the function. Bindings must ensure that they add a reference to the
GDBusMethodInvocation before calling any
g_dbus_method_invocation_return_*() methods on it. This should be automatic
as a result of the introspection annotations on those methods.
Available since: 2.84
Parameters
object_path-
Type:
const gchar*The object path to register at.
The data is owned by the caller of the method. The value is a NUL terminated UTF-8 string. interface_info-
Type:
GDBusInterfaceInfoIntrospection data for the interface.
The data is owned by the caller of the method. method_call_closure-
Type:
GClosureGClosurefor handling incoming method calls.The argument can be NULL.The data is owned by the caller of the method. get_property_closure-
Type:
GClosureGClosurefor getting a property.The argument can be NULL.The data is owned by the caller of the method. set_property_closure-
Type:
GClosureGClosurefor setting a property.The argument can be NULL.The data is owned by the caller of the method. error-
Type:
GError **The return location for a recoverable error.
The argument can be NULL.If the return location is not NULL, then you must initialize it to aNULLGError*.The argument will be left initialized to NULLby the method if there are no errors.In case of error, the argument will be set to a newly allocated GError; the caller will take ownership of the data, and be responsible for freeing it.
Return value
Type: guint
0 if error is set, otherwise a registration ID (never 0)
that can be used with g_dbus_connection_unregister_object().