struct Gio::DBusInterfaceSkeleton::GAuthorizeMethodSignal
- Gio::DBusInterfaceSkeleton::GAuthorizeMethodSignal
- GObject::Signal
- Struct
- Value
- Object
Overview
Emitted when a method is invoked by a remote caller and used to determine if the method call is authorized.
Note that this signal is emitted in a thread dedicated to handling the method call so handlers are allowed to perform blocking IO. This means that it is appropriate to call e.g. polkit_authority_check_authorization_sync() with the POLKIT_CHECK_AUTHORIZATION_FLAGS_ALLOW_USER_INTERACTION flag set.
If false
is returned then no further handlers are run and the
signal handler must take a reference to @invocation and finish
handling the call (e.g. return an error via
g_dbus_method_invocation_return_error()).
Otherwise, if true
is returned, signal emission continues. If no
handlers return false
, then the method is dispatched. If
@interface has an enclosing #GDBusObjectSkeleton, then the
#GDBusObjectSkeleton::authorize-method signal handlers run before
the handlers for this signal.
The default class handler just returns true
.
Please note that the common case is optimized: if no signals handlers are connected and the default class handler isn't overridden (for both @interface and the enclosing #GDBusObjectSkeleton, if any) and #GDBusInterfaceSkeleton:g-flags does not have the %G_DBUS_INTERFACE_SKELETON_FLAGS_HANDLE_METHOD_INVOCATIONS_IN_THREAD flags set, no dedicated thread is ever used and the call will be handled in the same thread as the object that @interface belongs to was exported in.
Defined in:
lib/gi-crystal/src/auto/gio-2.0/d_bus_interface_skeleton.crInstance Method Summary
- #connect(*, after : Bool = false, &block : Proc(Gio::DBusMethodInvocation, Bool)) : GObject::SignalConnection
- #connect(handler : Proc(Gio::DBusMethodInvocation, Bool), *, after : Bool = false) : GObject::SignalConnection
- #connect(handler : Proc(Gio::DBusInterfaceSkeleton, Gio::DBusMethodInvocation, Bool), *, after : Bool = false) : GObject::SignalConnection
- #emit(invocation : Gio::DBusMethodInvocation) : Nil
-
#name : String
The signal name