DBusInterfaceSkeleton.connectGAuthorizeMethod
gulong connectGAuthorizeMethod(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == bool)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gio.dbus_method_invocation.DBusMethodInvocation)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] : gio.dbus_interface_skeleton.DBusInterfaceSkeleton)))
&& Parameters!T.length < 3)Connect to GAuthorizeMethod signal.
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_INTERACTIONflag 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 [gio.dbus_method_invocation.DBusMethodInvocation.returnError]).
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 [gio.types.DBusInterfaceSkeletonFlags.HandleMethodInvocationsInThread] 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.
Parameters
callback | signal callback delegate or function to connect bool callback(gio.dbus_method_invocation.DBusMethodInvocation invocation, gio.dbus_interface_skeleton.DBusInterfaceSkeleton dBusInterfaceSkeleton) invocation A #GDBusMethodInvocation. (optional) dBusInterfaceSkeleton the instance the signal is connected to (optional) Returns true if the call is authorized, false otherwise. |
after | Yes.After to execute callback after default handler, No.After to execute before (default) |