diff options
Diffstat (limited to 'src/interfaces')
-rw-r--r-- | src/interfaces/hostnamed/hostnamed-gen.c | 2270 | ||||
-rw-r--r-- | src/interfaces/hostnamed/hostnamed-gen.h | 290 | ||||
-rw-r--r-- | src/interfaces/localed/localed-gen.c | 2513 | ||||
-rw-r--r-- | src/interfaces/localed/localed-gen.h | 296 | ||||
-rw-r--r-- | src/interfaces/localed/tmp | 1 | ||||
-rw-r--r-- | src/interfaces/logind/logind-gen.c | 10875 | ||||
-rw-r--r-- | src/interfaces/logind/logind-gen.h | 1405 | ||||
-rw-r--r-- | src/interfaces/logind/tmp | 1 | ||||
-rw-r--r-- | src/interfaces/timedated/timedated-gen.c | 2163 | ||||
-rw-r--r-- | src/interfaces/timedated/timedated-gen.h | 288 | ||||
-rw-r--r-- | src/interfaces/timedated/tmp | 1 |
11 files changed, 20100 insertions, 3 deletions
diff --git a/src/interfaces/hostnamed/hostnamed-gen.c b/src/interfaces/hostnamed/hostnamed-gen.c new file mode 100644 index 0000000..14b52ad --- /dev/null +++ b/src/interfaces/hostnamed/hostnamed-gen.c @@ -0,0 +1,2270 @@ +/* + * Generated by gdbus-codegen 2.40.0. DO NOT EDIT. + * + * The license of this code is the same as for the source it was derived from. + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include "hostnamed-gen.h" + +#include <string.h> +#ifdef G_OS_UNIX +# include <gio/gunixfdlist.h> +#endif + +typedef struct +{ + GDBusArgInfo parent_struct; + gboolean use_gvariant; +} _ExtendedGDBusArgInfo; + +typedef struct +{ + GDBusMethodInfo parent_struct; + const gchar *signal_name; + gboolean pass_fdlist; +} _ExtendedGDBusMethodInfo; + +typedef struct +{ + GDBusSignalInfo parent_struct; + const gchar *signal_name; +} _ExtendedGDBusSignalInfo; + +typedef struct +{ + GDBusPropertyInfo parent_struct; + const gchar *hyphen_name; + gboolean use_gvariant; +} _ExtendedGDBusPropertyInfo; + +typedef struct +{ + GDBusInterfaceInfo parent_struct; + const gchar *hyphen_name; +} _ExtendedGDBusInterfaceInfo; + +typedef struct +{ + const _ExtendedGDBusPropertyInfo *info; + guint prop_id; + GValue orig_value; /* the value before the change */ +} ChangedProperty; + +static void +_changed_property_free (ChangedProperty *data) +{ + g_value_unset (&data->orig_value); + g_free (data); +} + +static gboolean +_g_strv_equal0 (gchar **a, gchar **b) +{ + gboolean ret = FALSE; + guint n; + if (a == NULL && b == NULL) + { + ret = TRUE; + goto out; + } + if (a == NULL || b == NULL) + goto out; + if (g_strv_length (a) != g_strv_length (b)) + goto out; + for (n = 0; a[n] != NULL; n++) + if (g_strcmp0 (a[n], b[n]) != 0) + goto out; + ret = TRUE; +out: + return ret; +} + +static gboolean +_g_variant_equal0 (GVariant *a, GVariant *b) +{ + gboolean ret = FALSE; + if (a == NULL && b == NULL) + { + ret = TRUE; + goto out; + } + if (a == NULL || b == NULL) + goto out; + ret = g_variant_equal (a, b); +out: + return ret; +} + +G_GNUC_UNUSED static gboolean +_g_value_equal (const GValue *a, const GValue *b) +{ + gboolean ret = FALSE; + g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); + switch (G_VALUE_TYPE (a)) + { + case G_TYPE_BOOLEAN: + ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); + break; + case G_TYPE_UCHAR: + ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); + break; + case G_TYPE_INT: + ret = (g_value_get_int (a) == g_value_get_int (b)); + break; + case G_TYPE_UINT: + ret = (g_value_get_uint (a) == g_value_get_uint (b)); + break; + case G_TYPE_INT64: + ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); + break; + case G_TYPE_UINT64: + ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); + break; + case G_TYPE_DOUBLE: + { + /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ + gdouble da = g_value_get_double (a); + gdouble db = g_value_get_double (b); + ret = memcmp (&da, &db, sizeof (gdouble)) == 0; + } + break; + case G_TYPE_STRING: + ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); + break; + case G_TYPE_VARIANT: + ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); + break; + default: + if (G_VALUE_TYPE (a) == G_TYPE_STRV) + ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); + else + g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); + break; + } + return ret; +} + +/* ------------------------------------------------------------------------ + * Code for interface org.freedesktop.hostname1 + * ------------------------------------------------------------------------ + */ + +/** + * SECTION:Hostnamed + * @title: Hostnamed + * @short_description: Generated C code for the org.freedesktop.hostname1 D-Bus interface + * + * This section contains code for working with the <link linkend="gdbus-interface-org-freedesktop-hostname1.top_of_page">org.freedesktop.hostname1</link> D-Bus interface in C. + */ + +/* ---- Introspection data for org.freedesktop.hostname1 ---- */ + +static const _ExtendedGDBusArgInfo _hostnamed__method_info_set_hostname_IN_ARG_name = +{ + { + -1, + (gchar *) "name", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _hostnamed__method_info_set_hostname_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _hostnamed__method_info_set_hostname_IN_ARG_pointers[] = +{ + &_hostnamed__method_info_set_hostname_IN_ARG_name, + &_hostnamed__method_info_set_hostname_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _hostnamed__method_info_set_hostname = +{ + { + -1, + (gchar *) "SetHostname", + (GDBusArgInfo **) &_hostnamed__method_info_set_hostname_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-hostname", + FALSE +}; + +static const _ExtendedGDBusArgInfo _hostnamed__method_info_set_static_hostname_IN_ARG_name = +{ + { + -1, + (gchar *) "name", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _hostnamed__method_info_set_static_hostname_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _hostnamed__method_info_set_static_hostname_IN_ARG_pointers[] = +{ + &_hostnamed__method_info_set_static_hostname_IN_ARG_name, + &_hostnamed__method_info_set_static_hostname_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _hostnamed__method_info_set_static_hostname = +{ + { + -1, + (gchar *) "SetStaticHostname", + (GDBusArgInfo **) &_hostnamed__method_info_set_static_hostname_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-static-hostname", + FALSE +}; + +static const _ExtendedGDBusArgInfo _hostnamed__method_info_set_pretty_hostname_IN_ARG_name = +{ + { + -1, + (gchar *) "name", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _hostnamed__method_info_set_pretty_hostname_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _hostnamed__method_info_set_pretty_hostname_IN_ARG_pointers[] = +{ + &_hostnamed__method_info_set_pretty_hostname_IN_ARG_name, + &_hostnamed__method_info_set_pretty_hostname_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _hostnamed__method_info_set_pretty_hostname = +{ + { + -1, + (gchar *) "SetPrettyHostname", + (GDBusArgInfo **) &_hostnamed__method_info_set_pretty_hostname_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-pretty-hostname", + FALSE +}; + +static const _ExtendedGDBusArgInfo _hostnamed__method_info_set_icon_name_IN_ARG_name = +{ + { + -1, + (gchar *) "name", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _hostnamed__method_info_set_icon_name_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _hostnamed__method_info_set_icon_name_IN_ARG_pointers[] = +{ + &_hostnamed__method_info_set_icon_name_IN_ARG_name, + &_hostnamed__method_info_set_icon_name_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _hostnamed__method_info_set_icon_name = +{ + { + -1, + (gchar *) "SetIconName", + (GDBusArgInfo **) &_hostnamed__method_info_set_icon_name_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-icon-name", + FALSE +}; + +static const _ExtendedGDBusMethodInfo * const _hostnamed__method_info_pointers[] = +{ + &_hostnamed__method_info_set_hostname, + &_hostnamed__method_info_set_static_hostname, + &_hostnamed__method_info_set_pretty_hostname, + &_hostnamed__method_info_set_icon_name, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _hostnamed__property_info_hostname = +{ + { + -1, + (gchar *) "Hostname", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "hostname", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _hostnamed__property_info_static_hostname = +{ + { + -1, + (gchar *) "StaticHostname", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "static-hostname", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _hostnamed__property_info_pretty_hostname = +{ + { + -1, + (gchar *) "PrettyHostname", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "pretty-hostname", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _hostnamed__property_info_icon_name = +{ + { + -1, + (gchar *) "IconName", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "icon-name", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo * const _hostnamed__property_info_pointers[] = +{ + &_hostnamed__property_info_hostname, + &_hostnamed__property_info_static_hostname, + &_hostnamed__property_info_pretty_hostname, + &_hostnamed__property_info_icon_name, + NULL +}; + +static const _ExtendedGDBusInterfaceInfo _hostnamed__interface_info = +{ + { + -1, + (gchar *) "org.freedesktop.hostname1", + (GDBusMethodInfo **) &_hostnamed__method_info_pointers, + NULL, + (GDBusPropertyInfo **) &_hostnamed__property_info_pointers, + NULL + }, + "", +}; + + +/** + * hostnamed__interface_info: + * + * Gets a machine-readable description of the <link linkend="gdbus-interface-org-freedesktop-hostname1.top_of_page">org.freedesktop.hostname1</link> D-Bus interface. + * + * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. + */ +GDBusInterfaceInfo * +hostnamed__interface_info (void) +{ + return (GDBusInterfaceInfo *) &_hostnamed__interface_info.parent_struct; +} + +/** + * hostnamed__override_properties: + * @klass: The class structure for a #GObject<!-- -->-derived class. + * @property_id_begin: The property id to assign to the first overridden property. + * + * Overrides all #GObject properties in the #Hostnamed interface for a concrete class. + * The properties are overridden in the order they are defined. + * + * Returns: The last property id. + */ +guint +hostnamed__override_properties (GObjectClass *klass, guint property_id_begin) +{ + g_object_class_override_property (klass, property_id_begin++, "hostname"); + g_object_class_override_property (klass, property_id_begin++, "static-hostname"); + g_object_class_override_property (klass, property_id_begin++, "pretty-hostname"); + g_object_class_override_property (klass, property_id_begin++, "icon-name"); + return property_id_begin - 1; +} + + + +/** + * Hostnamed: + * + * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-hostname1.top_of_page">org.freedesktop.hostname1</link>. + */ + +/** + * HostnamedIface: + * @parent_iface: The parent interface. + * @handle_set_hostname: Handler for the #Hostnamed::handle-set-hostname signal. + * @handle_set_icon_name: Handler for the #Hostnamed::handle-set-icon-name signal. + * @handle_set_pretty_hostname: Handler for the #Hostnamed::handle-set-pretty-hostname signal. + * @handle_set_static_hostname: Handler for the #Hostnamed::handle-set-static-hostname signal. + * @get_hostname: Getter for the #Hostnamed:hostname property. + * @get_icon_name: Getter for the #Hostnamed:icon-name property. + * @get_pretty_hostname: Getter for the #Hostnamed:pretty-hostname property. + * @get_static_hostname: Getter for the #Hostnamed:static-hostname property. + * + * Virtual table for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-hostname1.top_of_page">org.freedesktop.hostname1</link>. + */ + +typedef HostnamedIface HostnamedInterface; +G_DEFINE_INTERFACE (Hostnamed, hostnamed_, G_TYPE_OBJECT); + +static void +hostnamed__default_init (HostnamedIface *iface) +{ + /* GObject signals for incoming D-Bus method calls: */ + /** + * Hostnamed::handle-set-hostname: + * @object: A #Hostnamed. + * @invocation: A #GDBusMethodInvocation. + * @arg_name: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-hostname1.SetHostname">SetHostname()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call hostnamed__complete_set_hostname() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-hostname", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (HostnamedIface, handle_set_hostname), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 3, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_BOOLEAN); + + /** + * Hostnamed::handle-set-static-hostname: + * @object: A #Hostnamed. + * @invocation: A #GDBusMethodInvocation. + * @arg_name: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-hostname1.SetStaticHostname">SetStaticHostname()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call hostnamed__complete_set_static_hostname() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-static-hostname", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (HostnamedIface, handle_set_static_hostname), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 3, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_BOOLEAN); + + /** + * Hostnamed::handle-set-pretty-hostname: + * @object: A #Hostnamed. + * @invocation: A #GDBusMethodInvocation. + * @arg_name: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-hostname1.SetPrettyHostname">SetPrettyHostname()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call hostnamed__complete_set_pretty_hostname() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-pretty-hostname", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (HostnamedIface, handle_set_pretty_hostname), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 3, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_BOOLEAN); + + /** + * Hostnamed::handle-set-icon-name: + * @object: A #Hostnamed. + * @invocation: A #GDBusMethodInvocation. + * @arg_name: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-hostname1.SetIconName">SetIconName()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call hostnamed__complete_set_icon_name() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-icon-name", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (HostnamedIface, handle_set_icon_name), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 3, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_BOOLEAN); + + /* GObject properties for D-Bus properties: */ + /** + * Hostnamed:hostname: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-hostname1.Hostname">"Hostname"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("hostname", "Hostname", "Hostname", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Hostnamed:static-hostname: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-hostname1.StaticHostname">"StaticHostname"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("static-hostname", "StaticHostname", "StaticHostname", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Hostnamed:pretty-hostname: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-hostname1.PrettyHostname">"PrettyHostname"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("pretty-hostname", "PrettyHostname", "PrettyHostname", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Hostnamed:icon-name: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-hostname1.IconName">"IconName"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("icon-name", "IconName", "IconName", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); +} + +/** + * hostnamed__get_hostname: (skip) + * @object: A #Hostnamed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-hostname1.Hostname">"Hostname"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use hostnamed__dup_hostname() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +hostnamed__get_hostname (Hostnamed *object) +{ + return HOSTNAMED__GET_IFACE (object)->get_hostname (object); +} + +/** + * hostnamed__dup_hostname: (skip) + * @object: A #Hostnamed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-hostname1.Hostname">"Hostname"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +hostnamed__dup_hostname (Hostnamed *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "hostname", &value, NULL); + return value; +} + +/** + * hostnamed__set_hostname: (skip) + * @object: A #Hostnamed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-hostname1.Hostname">"Hostname"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +hostnamed__set_hostname (Hostnamed *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "hostname", value, NULL); +} + +/** + * hostnamed__get_static_hostname: (skip) + * @object: A #Hostnamed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-hostname1.StaticHostname">"StaticHostname"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use hostnamed__dup_static_hostname() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +hostnamed__get_static_hostname (Hostnamed *object) +{ + return HOSTNAMED__GET_IFACE (object)->get_static_hostname (object); +} + +/** + * hostnamed__dup_static_hostname: (skip) + * @object: A #Hostnamed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-hostname1.StaticHostname">"StaticHostname"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +hostnamed__dup_static_hostname (Hostnamed *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "static-hostname", &value, NULL); + return value; +} + +/** + * hostnamed__set_static_hostname: (skip) + * @object: A #Hostnamed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-hostname1.StaticHostname">"StaticHostname"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +hostnamed__set_static_hostname (Hostnamed *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "static-hostname", value, NULL); +} + +/** + * hostnamed__get_pretty_hostname: (skip) + * @object: A #Hostnamed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-hostname1.PrettyHostname">"PrettyHostname"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use hostnamed__dup_pretty_hostname() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +hostnamed__get_pretty_hostname (Hostnamed *object) +{ + return HOSTNAMED__GET_IFACE (object)->get_pretty_hostname (object); +} + +/** + * hostnamed__dup_pretty_hostname: (skip) + * @object: A #Hostnamed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-hostname1.PrettyHostname">"PrettyHostname"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +hostnamed__dup_pretty_hostname (Hostnamed *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "pretty-hostname", &value, NULL); + return value; +} + +/** + * hostnamed__set_pretty_hostname: (skip) + * @object: A #Hostnamed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-hostname1.PrettyHostname">"PrettyHostname"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +hostnamed__set_pretty_hostname (Hostnamed *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "pretty-hostname", value, NULL); +} + +/** + * hostnamed__get_icon_name: (skip) + * @object: A #Hostnamed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-hostname1.IconName">"IconName"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use hostnamed__dup_icon_name() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +hostnamed__get_icon_name (Hostnamed *object) +{ + return HOSTNAMED__GET_IFACE (object)->get_icon_name (object); +} + +/** + * hostnamed__dup_icon_name: (skip) + * @object: A #Hostnamed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-hostname1.IconName">"IconName"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +hostnamed__dup_icon_name (Hostnamed *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "icon-name", &value, NULL); + return value; +} + +/** + * hostnamed__set_icon_name: (skip) + * @object: A #Hostnamed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-hostname1.IconName">"IconName"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +hostnamed__set_icon_name (Hostnamed *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "icon-name", value, NULL); +} + +/** + * hostnamed__call_set_hostname: + * @proxy: A #HostnamedProxy. + * @arg_name: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-hostname1.SetHostname">SetHostname()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call hostnamed__call_set_hostname_finish() to get the result of the operation. + * + * See hostnamed__call_set_hostname_sync() for the synchronous, blocking version of this method. + */ +void +hostnamed__call_set_hostname ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetHostname", + g_variant_new ("(sb)", + arg_name, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * hostnamed__call_set_hostname_finish: + * @proxy: A #HostnamedProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to hostnamed__call_set_hostname(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with hostnamed__call_set_hostname(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +hostnamed__call_set_hostname_finish ( + Hostnamed *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * hostnamed__call_set_hostname_sync: + * @proxy: A #HostnamedProxy. + * @arg_name: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-hostname1.SetHostname">SetHostname()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See hostnamed__call_set_hostname() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +hostnamed__call_set_hostname_sync ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetHostname", + g_variant_new ("(sb)", + arg_name, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * hostnamed__call_set_static_hostname: + * @proxy: A #HostnamedProxy. + * @arg_name: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-hostname1.SetStaticHostname">SetStaticHostname()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call hostnamed__call_set_static_hostname_finish() to get the result of the operation. + * + * See hostnamed__call_set_static_hostname_sync() for the synchronous, blocking version of this method. + */ +void +hostnamed__call_set_static_hostname ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetStaticHostname", + g_variant_new ("(sb)", + arg_name, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * hostnamed__call_set_static_hostname_finish: + * @proxy: A #HostnamedProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to hostnamed__call_set_static_hostname(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with hostnamed__call_set_static_hostname(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +hostnamed__call_set_static_hostname_finish ( + Hostnamed *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * hostnamed__call_set_static_hostname_sync: + * @proxy: A #HostnamedProxy. + * @arg_name: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-hostname1.SetStaticHostname">SetStaticHostname()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See hostnamed__call_set_static_hostname() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +hostnamed__call_set_static_hostname_sync ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetStaticHostname", + g_variant_new ("(sb)", + arg_name, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * hostnamed__call_set_pretty_hostname: + * @proxy: A #HostnamedProxy. + * @arg_name: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-hostname1.SetPrettyHostname">SetPrettyHostname()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call hostnamed__call_set_pretty_hostname_finish() to get the result of the operation. + * + * See hostnamed__call_set_pretty_hostname_sync() for the synchronous, blocking version of this method. + */ +void +hostnamed__call_set_pretty_hostname ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetPrettyHostname", + g_variant_new ("(sb)", + arg_name, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * hostnamed__call_set_pretty_hostname_finish: + * @proxy: A #HostnamedProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to hostnamed__call_set_pretty_hostname(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with hostnamed__call_set_pretty_hostname(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +hostnamed__call_set_pretty_hostname_finish ( + Hostnamed *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * hostnamed__call_set_pretty_hostname_sync: + * @proxy: A #HostnamedProxy. + * @arg_name: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-hostname1.SetPrettyHostname">SetPrettyHostname()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See hostnamed__call_set_pretty_hostname() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +hostnamed__call_set_pretty_hostname_sync ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetPrettyHostname", + g_variant_new ("(sb)", + arg_name, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * hostnamed__call_set_icon_name: + * @proxy: A #HostnamedProxy. + * @arg_name: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-hostname1.SetIconName">SetIconName()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call hostnamed__call_set_icon_name_finish() to get the result of the operation. + * + * See hostnamed__call_set_icon_name_sync() for the synchronous, blocking version of this method. + */ +void +hostnamed__call_set_icon_name ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetIconName", + g_variant_new ("(sb)", + arg_name, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * hostnamed__call_set_icon_name_finish: + * @proxy: A #HostnamedProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to hostnamed__call_set_icon_name(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with hostnamed__call_set_icon_name(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +hostnamed__call_set_icon_name_finish ( + Hostnamed *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * hostnamed__call_set_icon_name_sync: + * @proxy: A #HostnamedProxy. + * @arg_name: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-hostname1.SetIconName">SetIconName()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See hostnamed__call_set_icon_name() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +hostnamed__call_set_icon_name_sync ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetIconName", + g_variant_new ("(sb)", + arg_name, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * hostnamed__complete_set_hostname: + * @object: A #Hostnamed. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-hostname1.SetHostname">SetHostname()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +hostnamed__complete_set_hostname ( + Hostnamed *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * hostnamed__complete_set_static_hostname: + * @object: A #Hostnamed. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-hostname1.SetStaticHostname">SetStaticHostname()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +hostnamed__complete_set_static_hostname ( + Hostnamed *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * hostnamed__complete_set_pretty_hostname: + * @object: A #Hostnamed. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-hostname1.SetPrettyHostname">SetPrettyHostname()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +hostnamed__complete_set_pretty_hostname ( + Hostnamed *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * hostnamed__complete_set_icon_name: + * @object: A #Hostnamed. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-hostname1.SetIconName">SetIconName()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +hostnamed__complete_set_icon_name ( + Hostnamed *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/* ------------------------------------------------------------------------ */ + +/** + * HostnamedProxy: + * + * The #HostnamedProxy structure contains only private data and should only be accessed using the provided API. + */ + +/** + * HostnamedProxyClass: + * @parent_class: The parent class. + * + * Class structure for #HostnamedProxy. + */ + +struct _HostnamedProxyPrivate +{ + GData *qdata; +}; + +static void hostnamed__proxy_iface_init (HostnamedIface *iface); + +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 +G_DEFINE_TYPE_WITH_CODE (HostnamedProxy, hostnamed__proxy, G_TYPE_DBUS_PROXY, + G_ADD_PRIVATE (HostnamedProxy) + G_IMPLEMENT_INTERFACE (HOSTNAMED_TYPE_, hostnamed__proxy_iface_init)); + +#else +G_DEFINE_TYPE_WITH_CODE (HostnamedProxy, hostnamed__proxy, G_TYPE_DBUS_PROXY, + G_IMPLEMENT_INTERFACE (HOSTNAMED_TYPE_, hostnamed__proxy_iface_init)); + +#endif +static void +hostnamed__proxy_finalize (GObject *object) +{ + HostnamedProxy *proxy = HOSTNAMED__PROXY (object); + g_datalist_clear (&proxy->priv->qdata); + G_OBJECT_CLASS (hostnamed__proxy_parent_class)->finalize (object); +} + +static void +hostnamed__proxy_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + const _ExtendedGDBusPropertyInfo *info; + GVariant *variant; + g_assert (prop_id != 0 && prop_id - 1 < 4); + info = _hostnamed__property_info_pointers[prop_id - 1]; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); + if (info->use_gvariant) + { + g_value_set_variant (value, variant); + } + else + { + if (variant != NULL) + g_dbus_gvariant_to_gvalue (variant, value); + } + if (variant != NULL) + g_variant_unref (variant); +} + +static void +hostnamed__proxy_set_property_cb (GDBusProxy *proxy, + GAsyncResult *res, + gpointer user_data) +{ + const _ExtendedGDBusPropertyInfo *info = user_data; + GError *error; + GVariant *_ret; + error = NULL; + _ret = g_dbus_proxy_call_finish (proxy, res, &error); + if (!_ret) + { + g_warning ("Error setting property '%s' on interface org.freedesktop.hostname1: %s (%s, %d)", + info->parent_struct.name, + error->message, g_quark_to_string (error->domain), error->code); + g_error_free (error); + } + else + { + g_variant_unref (_ret); + } +} + +static void +hostnamed__proxy_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + const _ExtendedGDBusPropertyInfo *info; + GVariant *variant; + g_assert (prop_id != 0 && prop_id - 1 < 4); + info = _hostnamed__property_info_pointers[prop_id - 1]; + variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); + g_dbus_proxy_call (G_DBUS_PROXY (object), + "org.freedesktop.DBus.Properties.Set", + g_variant_new ("(ssv)", "org.freedesktop.hostname1", info->parent_struct.name, variant), + G_DBUS_CALL_FLAGS_NONE, + -1, + NULL, (GAsyncReadyCallback) hostnamed__proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); + g_variant_unref (variant); +} + +static void +hostnamed__proxy_g_signal (GDBusProxy *proxy, + const gchar *sender_name G_GNUC_UNUSED, + const gchar *signal_name, + GVariant *parameters) +{ + _ExtendedGDBusSignalInfo *info; + GVariantIter iter; + GVariant *child; + GValue *paramv; + guint num_params; + guint n; + guint signal_id; + info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_hostnamed__interface_info.parent_struct, signal_name); + if (info == NULL) + return; + num_params = g_variant_n_children (parameters); + paramv = g_new0 (GValue, num_params + 1); + g_value_init (¶mv[0], HOSTNAMED_TYPE_); + g_value_set_object (¶mv[0], proxy); + g_variant_iter_init (&iter, parameters); + n = 1; + while ((child = g_variant_iter_next_value (&iter)) != NULL) + { + _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; + if (arg_info->use_gvariant) + { + g_value_init (¶mv[n], G_TYPE_VARIANT); + g_value_set_variant (¶mv[n], child); + n++; + } + else + g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); + g_variant_unref (child); + } + signal_id = g_signal_lookup (info->signal_name, HOSTNAMED_TYPE_); + g_signal_emitv (paramv, signal_id, 0, NULL); + for (n = 0; n < num_params + 1; n++) + g_value_unset (¶mv[n]); + g_free (paramv); +} + +static void +hostnamed__proxy_g_properties_changed (GDBusProxy *_proxy, + GVariant *changed_properties, + const gchar *const *invalidated_properties) +{ + HostnamedProxy *proxy = HOSTNAMED__PROXY (_proxy); + guint n; + const gchar *key; + GVariantIter *iter; + _ExtendedGDBusPropertyInfo *info; + g_variant_get (changed_properties, "a{sv}", &iter); + while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) + { + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_hostnamed__interface_info.parent_struct, key); + g_datalist_remove_data (&proxy->priv->qdata, key); + if (info != NULL) + g_object_notify (G_OBJECT (proxy), info->hyphen_name); + } + g_variant_iter_free (iter); + for (n = 0; invalidated_properties[n] != NULL; n++) + { + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_hostnamed__interface_info.parent_struct, invalidated_properties[n]); + g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); + if (info != NULL) + g_object_notify (G_OBJECT (proxy), info->hyphen_name); + } +} + +static const gchar * +hostnamed__proxy_get_hostname (Hostnamed *object) +{ + HostnamedProxy *proxy = HOSTNAMED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "Hostname"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +hostnamed__proxy_get_static_hostname (Hostnamed *object) +{ + HostnamedProxy *proxy = HOSTNAMED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "StaticHostname"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +hostnamed__proxy_get_pretty_hostname (Hostnamed *object) +{ + HostnamedProxy *proxy = HOSTNAMED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "PrettyHostname"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +hostnamed__proxy_get_icon_name (Hostnamed *object) +{ + HostnamedProxy *proxy = HOSTNAMED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "IconName"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static void +hostnamed__proxy_init (HostnamedProxy *proxy) +{ +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 + proxy->priv = hostnamed__proxy_get_instance_private (proxy); +#else + proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, HOSTNAMED_TYPE__PROXY, HostnamedProxyPrivate); +#endif + + g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), hostnamed__interface_info ()); +} + +static void +hostnamed__proxy_class_init (HostnamedProxyClass *klass) +{ + GObjectClass *gobject_class; + GDBusProxyClass *proxy_class; + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = hostnamed__proxy_finalize; + gobject_class->get_property = hostnamed__proxy_get_property; + gobject_class->set_property = hostnamed__proxy_set_property; + + proxy_class = G_DBUS_PROXY_CLASS (klass); + proxy_class->g_signal = hostnamed__proxy_g_signal; + proxy_class->g_properties_changed = hostnamed__proxy_g_properties_changed; + + hostnamed__override_properties (gobject_class, 1); + +#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 + g_type_class_add_private (klass, sizeof (HostnamedProxyPrivate)); +#endif +} + +static void +hostnamed__proxy_iface_init (HostnamedIface *iface) +{ + iface->get_hostname = hostnamed__proxy_get_hostname; + iface->get_static_hostname = hostnamed__proxy_get_static_hostname; + iface->get_pretty_hostname = hostnamed__proxy_get_pretty_hostname; + iface->get_icon_name = hostnamed__proxy_get_icon_name; +} + +/** + * hostnamed__proxy_new: + * @connection: A #GDBusConnection. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied. + * @user_data: User data to pass to @callback. + * + * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-hostname1.top_of_page">org.freedesktop.hostname1</link>. See g_dbus_proxy_new() for more details. + * + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call hostnamed__proxy_new_finish() to get the result of the operation. + * + * See hostnamed__proxy_new_sync() for the synchronous, blocking version of this constructor. + */ +void +hostnamed__proxy_new ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_async_initable_new_async (HOSTNAMED_TYPE__PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.freedesktop.hostname1", NULL); +} + +/** + * hostnamed__proxy_new_finish: + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to hostnamed__proxy_new(). + * @error: Return location for error or %NULL + * + * Finishes an operation started with hostnamed__proxy_new(). + * + * Returns: (transfer full) (type HostnamedProxy): The constructed proxy object or %NULL if @error is set. + */ +Hostnamed * +hostnamed__proxy_new_finish ( + GAsyncResult *res, + GError **error) +{ + GObject *ret; + GObject *source_object; + source_object = g_async_result_get_source_object (res); + ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); + g_object_unref (source_object); + if (ret != NULL) + return HOSTNAMED_ (ret); + else + return NULL; +} + +/** + * hostnamed__proxy_new_sync: + * @connection: A #GDBusConnection. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL + * + * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-hostname1.top_of_page">org.freedesktop.hostname1</link>. See g_dbus_proxy_new_sync() for more details. + * + * The calling thread is blocked until a reply is received. + * + * See hostnamed__proxy_new() for the asynchronous version of this constructor. + * + * Returns: (transfer full) (type HostnamedProxy): The constructed proxy object or %NULL if @error is set. + */ +Hostnamed * +hostnamed__proxy_new_sync ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error) +{ + GInitable *ret; + ret = g_initable_new (HOSTNAMED_TYPE__PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.freedesktop.hostname1", NULL); + if (ret != NULL) + return HOSTNAMED_ (ret); + else + return NULL; +} + + +/** + * hostnamed__proxy_new_for_bus: + * @bus_type: A #GBusType. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: A bus name (well-known or unique). + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied. + * @user_data: User data to pass to @callback. + * + * Like hostnamed__proxy_new() but takes a #GBusType instead of a #GDBusConnection. + * + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call hostnamed__proxy_new_for_bus_finish() to get the result of the operation. + * + * See hostnamed__proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. + */ +void +hostnamed__proxy_new_for_bus ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_async_initable_new_async (HOSTNAMED_TYPE__PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.freedesktop.hostname1", NULL); +} + +/** + * hostnamed__proxy_new_for_bus_finish: + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to hostnamed__proxy_new_for_bus(). + * @error: Return location for error or %NULL + * + * Finishes an operation started with hostnamed__proxy_new_for_bus(). + * + * Returns: (transfer full) (type HostnamedProxy): The constructed proxy object or %NULL if @error is set. + */ +Hostnamed * +hostnamed__proxy_new_for_bus_finish ( + GAsyncResult *res, + GError **error) +{ + GObject *ret; + GObject *source_object; + source_object = g_async_result_get_source_object (res); + ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); + g_object_unref (source_object); + if (ret != NULL) + return HOSTNAMED_ (ret); + else + return NULL; +} + +/** + * hostnamed__proxy_new_for_bus_sync: + * @bus_type: A #GBusType. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: A bus name (well-known or unique). + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL + * + * Like hostnamed__proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. + * + * The calling thread is blocked until a reply is received. + * + * See hostnamed__proxy_new_for_bus() for the asynchronous version of this constructor. + * + * Returns: (transfer full) (type HostnamedProxy): The constructed proxy object or %NULL if @error is set. + */ +Hostnamed * +hostnamed__proxy_new_for_bus_sync ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error) +{ + GInitable *ret; + ret = g_initable_new (HOSTNAMED_TYPE__PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.freedesktop.hostname1", NULL); + if (ret != NULL) + return HOSTNAMED_ (ret); + else + return NULL; +} + + +/* ------------------------------------------------------------------------ */ + +/** + * HostnamedSkeleton: + * + * The #HostnamedSkeleton structure contains only private data and should only be accessed using the provided API. + */ + +/** + * HostnamedSkeletonClass: + * @parent_class: The parent class. + * + * Class structure for #HostnamedSkeleton. + */ + +struct _HostnamedSkeletonPrivate +{ + GValue *properties; + GList *changed_properties; + GSource *changed_properties_idle_source; + GMainContext *context; + GMutex lock; +}; + +static void +_hostnamed__skeleton_handle_method_call ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name, + const gchar *method_name, + GVariant *parameters, + GDBusMethodInvocation *invocation, + gpointer user_data) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (user_data); + _ExtendedGDBusMethodInfo *info; + GVariantIter iter; + GVariant *child; + GValue *paramv; + guint num_params; + guint num_extra; + guint n; + guint signal_id; + GValue return_value = G_VALUE_INIT; + info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); + g_assert (info != NULL); + num_params = g_variant_n_children (parameters); + num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); + n = 0; + g_value_init (¶mv[n], HOSTNAMED_TYPE_); + g_value_set_object (¶mv[n++], skeleton); + g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); + g_value_set_object (¶mv[n++], invocation); + if (info->pass_fdlist) + { +#ifdef G_OS_UNIX + g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); + g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); +#else + g_assert_not_reached (); +#endif + } + g_variant_iter_init (&iter, parameters); + while ((child = g_variant_iter_next_value (&iter)) != NULL) + { + _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; + if (arg_info->use_gvariant) + { + g_value_init (¶mv[n], G_TYPE_VARIANT); + g_value_set_variant (¶mv[n], child); + n++; + } + else + g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); + g_variant_unref (child); + } + signal_id = g_signal_lookup (info->signal_name, HOSTNAMED_TYPE_); + g_value_init (&return_value, G_TYPE_BOOLEAN); + g_signal_emitv (paramv, signal_id, 0, &return_value); + if (!g_value_get_boolean (&return_value)) + g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); + g_value_unset (&return_value); + for (n = 0; n < num_params + num_extra; n++) + g_value_unset (¶mv[n]); + g_free (paramv); +} + +static GVariant * +_hostnamed__skeleton_handle_get_property ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name G_GNUC_UNUSED, + const gchar *property_name, + GError **error, + gpointer user_data) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (user_data); + GValue value = G_VALUE_INIT; + GParamSpec *pspec; + _ExtendedGDBusPropertyInfo *info; + GVariant *ret; + ret = NULL; + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_hostnamed__interface_info.parent_struct, property_name); + g_assert (info != NULL); + pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); + if (pspec == NULL) + { + g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); + } + else + { + g_value_init (&value, pspec->value_type); + g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); + ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); + g_value_unset (&value); + } + return ret; +} + +static gboolean +_hostnamed__skeleton_handle_set_property ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name G_GNUC_UNUSED, + const gchar *property_name, + GVariant *variant, + GError **error, + gpointer user_data) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (user_data); + GValue value = G_VALUE_INIT; + GParamSpec *pspec; + _ExtendedGDBusPropertyInfo *info; + gboolean ret; + ret = FALSE; + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_hostnamed__interface_info.parent_struct, property_name); + g_assert (info != NULL); + pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); + if (pspec == NULL) + { + g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); + } + else + { + if (info->use_gvariant) + g_value_set_variant (&value, variant); + else + g_dbus_gvariant_to_gvalue (variant, &value); + g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); + g_value_unset (&value); + ret = TRUE; + } + return ret; +} + +static const GDBusInterfaceVTable _hostnamed__skeleton_vtable = +{ + _hostnamed__skeleton_handle_method_call, + _hostnamed__skeleton_handle_get_property, + _hostnamed__skeleton_handle_set_property, + {NULL} +}; + +static GDBusInterfaceInfo * +hostnamed__skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) +{ + return hostnamed__interface_info (); +} + +static GDBusInterfaceVTable * +hostnamed__skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) +{ + return (GDBusInterfaceVTable *) &_hostnamed__skeleton_vtable; +} + +static GVariant * +hostnamed__skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (_skeleton); + + GVariantBuilder builder; + guint n; + g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); + if (_hostnamed__interface_info.parent_struct.properties == NULL) + goto out; + for (n = 0; _hostnamed__interface_info.parent_struct.properties[n] != NULL; n++) + { + GDBusPropertyInfo *info = _hostnamed__interface_info.parent_struct.properties[n]; + if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) + { + GVariant *value; + value = _hostnamed__skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.hostname1", info->name, NULL, skeleton); + if (value != NULL) + { + g_variant_take_ref (value); + g_variant_builder_add (&builder, "{sv}", info->name, value); + g_variant_unref (value); + } + } + } +out: + return g_variant_builder_end (&builder); +} + +static gboolean _hostnamed__emit_changed (gpointer user_data); + +static void +hostnamed__skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (_skeleton); + gboolean emit_changed = FALSE; + + g_mutex_lock (&skeleton->priv->lock); + if (skeleton->priv->changed_properties_idle_source != NULL) + { + g_source_destroy (skeleton->priv->changed_properties_idle_source); + skeleton->priv->changed_properties_idle_source = NULL; + emit_changed = TRUE; + } + g_mutex_unlock (&skeleton->priv->lock); + + if (emit_changed) + _hostnamed__emit_changed (skeleton); +} + +static void hostnamed__skeleton_iface_init (HostnamedIface *iface); +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 +G_DEFINE_TYPE_WITH_CODE (HostnamedSkeleton, hostnamed__skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, + G_ADD_PRIVATE (HostnamedSkeleton) + G_IMPLEMENT_INTERFACE (HOSTNAMED_TYPE_, hostnamed__skeleton_iface_init)); + +#else +G_DEFINE_TYPE_WITH_CODE (HostnamedSkeleton, hostnamed__skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, + G_IMPLEMENT_INTERFACE (HOSTNAMED_TYPE_, hostnamed__skeleton_iface_init)); + +#endif +static void +hostnamed__skeleton_finalize (GObject *object) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (object); + guint n; + for (n = 0; n < 4; n++) + g_value_unset (&skeleton->priv->properties[n]); + g_free (skeleton->priv->properties); + g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); + if (skeleton->priv->changed_properties_idle_source != NULL) + g_source_destroy (skeleton->priv->changed_properties_idle_source); + g_main_context_unref (skeleton->priv->context); + g_mutex_clear (&skeleton->priv->lock); + G_OBJECT_CLASS (hostnamed__skeleton_parent_class)->finalize (object); +} + +static void +hostnamed__skeleton_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (object); + g_assert (prop_id != 0 && prop_id - 1 < 4); + g_mutex_lock (&skeleton->priv->lock); + g_value_copy (&skeleton->priv->properties[prop_id - 1], value); + g_mutex_unlock (&skeleton->priv->lock); +} + +static gboolean +_hostnamed__emit_changed (gpointer user_data) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (user_data); + GList *l; + GVariantBuilder builder; + GVariantBuilder invalidated_builder; + guint num_changes; + + g_mutex_lock (&skeleton->priv->lock); + g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); + g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); + for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) + { + ChangedProperty *cp = l->data; + GVariant *variant; + const GValue *cur_value; + + cur_value = &skeleton->priv->properties[cp->prop_id - 1]; + if (!_g_value_equal (cur_value, &cp->orig_value)) + { + variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); + g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); + g_variant_unref (variant); + num_changes++; + } + } + if (num_changes > 0) + { + GList *connections, *ll; + GVariant *signal_variant; + signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "org.freedesktop.hostname1", + &builder, &invalidated_builder)); + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + for (ll = connections; ll != NULL; ll = ll->next) + { + GDBusConnection *connection = ll->data; + + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), + "org.freedesktop.DBus.Properties", + "PropertiesChanged", + signal_variant, + NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); + } + else + { + g_variant_builder_clear (&builder); + g_variant_builder_clear (&invalidated_builder); + } + g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); + skeleton->priv->changed_properties = NULL; + skeleton->priv->changed_properties_idle_source = NULL; + g_mutex_unlock (&skeleton->priv->lock); + return FALSE; +} + +static void +_hostnamed__schedule_emit_changed (HostnamedSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) +{ + ChangedProperty *cp; + GList *l; + cp = NULL; + for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) + { + ChangedProperty *i_cp = l->data; + if (i_cp->info == info) + { + cp = i_cp; + break; + } + } + if (cp == NULL) + { + cp = g_new0 (ChangedProperty, 1); + cp->prop_id = prop_id; + cp->info = info; + skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); + g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); + g_value_copy (orig_value, &cp->orig_value); + } +} + +static void +hostnamed__skeleton_notify (GObject *object, + GParamSpec *pspec G_GNUC_UNUSED) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (object); + g_mutex_lock (&skeleton->priv->lock); + if (skeleton->priv->changed_properties != NULL && + skeleton->priv->changed_properties_idle_source == NULL) + { + skeleton->priv->changed_properties_idle_source = g_idle_source_new (); + g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); + g_source_set_callback (skeleton->priv->changed_properties_idle_source, _hostnamed__emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); + g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); + g_source_unref (skeleton->priv->changed_properties_idle_source); + } + g_mutex_unlock (&skeleton->priv->lock); +} + +static void +hostnamed__skeleton_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (object); + g_assert (prop_id != 0 && prop_id - 1 < 4); + g_mutex_lock (&skeleton->priv->lock); + g_object_freeze_notify (object); + if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) + { + if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL) + _hostnamed__schedule_emit_changed (skeleton, _hostnamed__property_info_pointers[prop_id - 1], prop_id, &skeleton->priv->properties[prop_id - 1]); + g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); + g_object_notify_by_pspec (object, pspec); + } + g_mutex_unlock (&skeleton->priv->lock); + g_object_thaw_notify (object); +} + +static void +hostnamed__skeleton_init (HostnamedSkeleton *skeleton) +{ +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 + skeleton->priv = hostnamed__skeleton_get_instance_private (skeleton); +#else + skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, HOSTNAMED_TYPE__SKELETON, HostnamedSkeletonPrivate); +#endif + + g_mutex_init (&skeleton->priv->lock); + skeleton->priv->context = g_main_context_ref_thread_default (); + skeleton->priv->properties = g_new0 (GValue, 4); + g_value_init (&skeleton->priv->properties[0], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[1], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[2], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[3], G_TYPE_STRING); +} + +static const gchar * +hostnamed__skeleton_get_hostname (Hostnamed *object) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[0])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +hostnamed__skeleton_get_static_hostname (Hostnamed *object) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[1])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +hostnamed__skeleton_get_pretty_hostname (Hostnamed *object) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[2])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +hostnamed__skeleton_get_icon_name (Hostnamed *object) +{ + HostnamedSkeleton *skeleton = HOSTNAMED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[3])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static void +hostnamed__skeleton_class_init (HostnamedSkeletonClass *klass) +{ + GObjectClass *gobject_class; + GDBusInterfaceSkeletonClass *skeleton_class; + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = hostnamed__skeleton_finalize; + gobject_class->get_property = hostnamed__skeleton_get_property; + gobject_class->set_property = hostnamed__skeleton_set_property; + gobject_class->notify = hostnamed__skeleton_notify; + + + hostnamed__override_properties (gobject_class, 1); + + skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); + skeleton_class->get_info = hostnamed__skeleton_dbus_interface_get_info; + skeleton_class->get_properties = hostnamed__skeleton_dbus_interface_get_properties; + skeleton_class->flush = hostnamed__skeleton_dbus_interface_flush; + skeleton_class->get_vtable = hostnamed__skeleton_dbus_interface_get_vtable; + +#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 + g_type_class_add_private (klass, sizeof (HostnamedSkeletonPrivate)); +#endif +} + +static void +hostnamed__skeleton_iface_init (HostnamedIface *iface) +{ + iface->get_hostname = hostnamed__skeleton_get_hostname; + iface->get_static_hostname = hostnamed__skeleton_get_static_hostname; + iface->get_pretty_hostname = hostnamed__skeleton_get_pretty_hostname; + iface->get_icon_name = hostnamed__skeleton_get_icon_name; +} + +/** + * hostnamed__skeleton_new: + * + * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-hostname1.top_of_page">org.freedesktop.hostname1</link>. + * + * Returns: (transfer full) (type HostnamedSkeleton): The skeleton object. + */ +Hostnamed * +hostnamed__skeleton_new (void) +{ + return HOSTNAMED_ (g_object_new (HOSTNAMED_TYPE__SKELETON, NULL)); +} + diff --git a/src/interfaces/hostnamed/hostnamed-gen.h b/src/interfaces/hostnamed/hostnamed-gen.h new file mode 100644 index 0000000..8a53dac --- /dev/null +++ b/src/interfaces/hostnamed/hostnamed-gen.h @@ -0,0 +1,290 @@ +/* + * Generated by gdbus-codegen 2.40.0. DO NOT EDIT. + * + * The license of this code is the same as for the source it was derived from. + */ + +#ifndef __HOSTNAMED_GEN_H__ +#define __HOSTNAMED_GEN_H__ + +#include <gio/gio.h> + +G_BEGIN_DECLS + + +/* ------------------------------------------------------------------------ */ +/* Declarations for org.freedesktop.hostname1 */ + +#define HOSTNAMED_TYPE_ (hostnamed__get_type ()) +#define HOSTNAMED_(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), HOSTNAMED_TYPE_, Hostnamed)) +#define HOSTNAMED_IS_(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), HOSTNAMED_TYPE_)) +#define HOSTNAMED__GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), HOSTNAMED_TYPE_, HostnamedIface)) + +struct _Hostnamed; +typedef struct _Hostnamed Hostnamed; +typedef struct _HostnamedIface HostnamedIface; + +struct _HostnamedIface +{ + GTypeInterface parent_iface; + + + gboolean (*handle_set_hostname) ( + Hostnamed *object, + GDBusMethodInvocation *invocation, + const gchar *arg_name, + gboolean arg_user_interaction); + + gboolean (*handle_set_icon_name) ( + Hostnamed *object, + GDBusMethodInvocation *invocation, + const gchar *arg_name, + gboolean arg_user_interaction); + + gboolean (*handle_set_pretty_hostname) ( + Hostnamed *object, + GDBusMethodInvocation *invocation, + const gchar *arg_name, + gboolean arg_user_interaction); + + gboolean (*handle_set_static_hostname) ( + Hostnamed *object, + GDBusMethodInvocation *invocation, + const gchar *arg_name, + gboolean arg_user_interaction); + + const gchar * (*get_hostname) (Hostnamed *object); + + const gchar * (*get_icon_name) (Hostnamed *object); + + const gchar * (*get_pretty_hostname) (Hostnamed *object); + + const gchar * (*get_static_hostname) (Hostnamed *object); + +}; + +GType hostnamed__get_type (void) G_GNUC_CONST; + +GDBusInterfaceInfo *hostnamed__interface_info (void); +guint hostnamed__override_properties (GObjectClass *klass, guint property_id_begin); + + +/* D-Bus method call completion functions: */ +void hostnamed__complete_set_hostname ( + Hostnamed *object, + GDBusMethodInvocation *invocation); + +void hostnamed__complete_set_static_hostname ( + Hostnamed *object, + GDBusMethodInvocation *invocation); + +void hostnamed__complete_set_pretty_hostname ( + Hostnamed *object, + GDBusMethodInvocation *invocation); + +void hostnamed__complete_set_icon_name ( + Hostnamed *object, + GDBusMethodInvocation *invocation); + + + +/* D-Bus method calls: */ +void hostnamed__call_set_hostname ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean hostnamed__call_set_hostname_finish ( + Hostnamed *proxy, + GAsyncResult *res, + GError **error); + +gboolean hostnamed__call_set_hostname_sync ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + +void hostnamed__call_set_static_hostname ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean hostnamed__call_set_static_hostname_finish ( + Hostnamed *proxy, + GAsyncResult *res, + GError **error); + +gboolean hostnamed__call_set_static_hostname_sync ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + +void hostnamed__call_set_pretty_hostname ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean hostnamed__call_set_pretty_hostname_finish ( + Hostnamed *proxy, + GAsyncResult *res, + GError **error); + +gboolean hostnamed__call_set_pretty_hostname_sync ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + +void hostnamed__call_set_icon_name ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean hostnamed__call_set_icon_name_finish ( + Hostnamed *proxy, + GAsyncResult *res, + GError **error); + +gboolean hostnamed__call_set_icon_name_sync ( + Hostnamed *proxy, + const gchar *arg_name, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + + + +/* D-Bus property accessors: */ +const gchar *hostnamed__get_hostname (Hostnamed *object); +gchar *hostnamed__dup_hostname (Hostnamed *object); +void hostnamed__set_hostname (Hostnamed *object, const gchar *value); + +const gchar *hostnamed__get_static_hostname (Hostnamed *object); +gchar *hostnamed__dup_static_hostname (Hostnamed *object); +void hostnamed__set_static_hostname (Hostnamed *object, const gchar *value); + +const gchar *hostnamed__get_pretty_hostname (Hostnamed *object); +gchar *hostnamed__dup_pretty_hostname (Hostnamed *object); +void hostnamed__set_pretty_hostname (Hostnamed *object, const gchar *value); + +const gchar *hostnamed__get_icon_name (Hostnamed *object); +gchar *hostnamed__dup_icon_name (Hostnamed *object); +void hostnamed__set_icon_name (Hostnamed *object, const gchar *value); + + +/* ---- */ + +#define HOSTNAMED_TYPE__PROXY (hostnamed__proxy_get_type ()) +#define HOSTNAMED__PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), HOSTNAMED_TYPE__PROXY, HostnamedProxy)) +#define HOSTNAMED__PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), HOSTNAMED_TYPE__PROXY, HostnamedProxyClass)) +#define HOSTNAMED__PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), HOSTNAMED_TYPE__PROXY, HostnamedProxyClass)) +#define HOSTNAMED_IS__PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), HOSTNAMED_TYPE__PROXY)) +#define HOSTNAMED_IS__PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), HOSTNAMED_TYPE__PROXY)) + +typedef struct _HostnamedProxy HostnamedProxy; +typedef struct _HostnamedProxyClass HostnamedProxyClass; +typedef struct _HostnamedProxyPrivate HostnamedProxyPrivate; + +struct _HostnamedProxy +{ + /*< private >*/ + GDBusProxy parent_instance; + HostnamedProxyPrivate *priv; +}; + +struct _HostnamedProxyClass +{ + GDBusProxyClass parent_class; +}; + +GType hostnamed__proxy_get_type (void) G_GNUC_CONST; + +void hostnamed__proxy_new ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +Hostnamed *hostnamed__proxy_new_finish ( + GAsyncResult *res, + GError **error); +Hostnamed *hostnamed__proxy_new_sync ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error); + +void hostnamed__proxy_new_for_bus ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +Hostnamed *hostnamed__proxy_new_for_bus_finish ( + GAsyncResult *res, + GError **error); +Hostnamed *hostnamed__proxy_new_for_bus_sync ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error); + + +/* ---- */ + +#define HOSTNAMED_TYPE__SKELETON (hostnamed__skeleton_get_type ()) +#define HOSTNAMED__SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), HOSTNAMED_TYPE__SKELETON, HostnamedSkeleton)) +#define HOSTNAMED__SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), HOSTNAMED_TYPE__SKELETON, HostnamedSkeletonClass)) +#define HOSTNAMED__SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), HOSTNAMED_TYPE__SKELETON, HostnamedSkeletonClass)) +#define HOSTNAMED_IS__SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), HOSTNAMED_TYPE__SKELETON)) +#define HOSTNAMED_IS__SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), HOSTNAMED_TYPE__SKELETON)) + +typedef struct _HostnamedSkeleton HostnamedSkeleton; +typedef struct _HostnamedSkeletonClass HostnamedSkeletonClass; +typedef struct _HostnamedSkeletonPrivate HostnamedSkeletonPrivate; + +struct _HostnamedSkeleton +{ + /*< private >*/ + GDBusInterfaceSkeleton parent_instance; + HostnamedSkeletonPrivate *priv; +}; + +struct _HostnamedSkeletonClass +{ + GDBusInterfaceSkeletonClass parent_class; +}; + +GType hostnamed__skeleton_get_type (void) G_GNUC_CONST; + +Hostnamed *hostnamed__skeleton_new (void); + + +G_END_DECLS + +#endif /* __HOSTNAMED_GEN_H__ */ diff --git a/src/interfaces/localed/localed-gen.c b/src/interfaces/localed/localed-gen.c new file mode 100644 index 0000000..928d99b --- /dev/null +++ b/src/interfaces/localed/localed-gen.c @@ -0,0 +1,2513 @@ +/* + * Generated by gdbus-codegen 2.40.0. DO NOT EDIT. + * + * The license of this code is the same as for the source it was derived from. + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include "localed-gen.h" + +#include <string.h> +#ifdef G_OS_UNIX +# include <gio/gunixfdlist.h> +#endif + +typedef struct +{ + GDBusArgInfo parent_struct; + gboolean use_gvariant; +} _ExtendedGDBusArgInfo; + +typedef struct +{ + GDBusMethodInfo parent_struct; + const gchar *signal_name; + gboolean pass_fdlist; +} _ExtendedGDBusMethodInfo; + +typedef struct +{ + GDBusSignalInfo parent_struct; + const gchar *signal_name; +} _ExtendedGDBusSignalInfo; + +typedef struct +{ + GDBusPropertyInfo parent_struct; + const gchar *hyphen_name; + gboolean use_gvariant; +} _ExtendedGDBusPropertyInfo; + +typedef struct +{ + GDBusInterfaceInfo parent_struct; + const gchar *hyphen_name; +} _ExtendedGDBusInterfaceInfo; + +typedef struct +{ + const _ExtendedGDBusPropertyInfo *info; + guint prop_id; + GValue orig_value; /* the value before the change */ +} ChangedProperty; + +static void +_changed_property_free (ChangedProperty *data) +{ + g_value_unset (&data->orig_value); + g_free (data); +} + +static gboolean +_g_strv_equal0 (gchar **a, gchar **b) +{ + gboolean ret = FALSE; + guint n; + if (a == NULL && b == NULL) + { + ret = TRUE; + goto out; + } + if (a == NULL || b == NULL) + goto out; + if (g_strv_length (a) != g_strv_length (b)) + goto out; + for (n = 0; a[n] != NULL; n++) + if (g_strcmp0 (a[n], b[n]) != 0) + goto out; + ret = TRUE; +out: + return ret; +} + +static gboolean +_g_variant_equal0 (GVariant *a, GVariant *b) +{ + gboolean ret = FALSE; + if (a == NULL && b == NULL) + { + ret = TRUE; + goto out; + } + if (a == NULL || b == NULL) + goto out; + ret = g_variant_equal (a, b); +out: + return ret; +} + +G_GNUC_UNUSED static gboolean +_g_value_equal (const GValue *a, const GValue *b) +{ + gboolean ret = FALSE; + g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); + switch (G_VALUE_TYPE (a)) + { + case G_TYPE_BOOLEAN: + ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); + break; + case G_TYPE_UCHAR: + ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); + break; + case G_TYPE_INT: + ret = (g_value_get_int (a) == g_value_get_int (b)); + break; + case G_TYPE_UINT: + ret = (g_value_get_uint (a) == g_value_get_uint (b)); + break; + case G_TYPE_INT64: + ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); + break; + case G_TYPE_UINT64: + ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); + break; + case G_TYPE_DOUBLE: + { + /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ + gdouble da = g_value_get_double (a); + gdouble db = g_value_get_double (b); + ret = memcmp (&da, &db, sizeof (gdouble)) == 0; + } + break; + case G_TYPE_STRING: + ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); + break; + case G_TYPE_VARIANT: + ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); + break; + default: + if (G_VALUE_TYPE (a) == G_TYPE_STRV) + ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); + else + g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); + break; + } + return ret; +} + +/* ------------------------------------------------------------------------ + * Code for interface org.freedesktop.locale1 + * ------------------------------------------------------------------------ + */ + +/** + * SECTION:Localed + * @title: Localed + * @short_description: Generated C code for the org.freedesktop.locale1 D-Bus interface + * + * This section contains code for working with the <link linkend="gdbus-interface-org-freedesktop-locale1.top_of_page">org.freedesktop.locale1</link> D-Bus interface in C. + */ + +/* ---- Introspection data for org.freedesktop.locale1 ---- */ + +static const _ExtendedGDBusArgInfo _localed__method_info_set_locale_IN_ARG_locale = +{ + { + -1, + (gchar *) "locale", + (gchar *) "as", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_locale_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _localed__method_info_set_locale_IN_ARG_pointers[] = +{ + &_localed__method_info_set_locale_IN_ARG_locale, + &_localed__method_info_set_locale_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _localed__method_info_set_locale = +{ + { + -1, + (gchar *) "SetLocale", + (GDBusArgInfo **) &_localed__method_info_set_locale_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-locale", + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_vconsole_keyboard_IN_ARG_keymap = +{ + { + -1, + (gchar *) "keymap", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_vconsole_keyboard_IN_ARG_keymap_toggle = +{ + { + -1, + (gchar *) "keymap_toggle", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_vconsole_keyboard_IN_ARG_convert = +{ + { + -1, + (gchar *) "convert", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_vconsole_keyboard_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _localed__method_info_set_vconsole_keyboard_IN_ARG_pointers[] = +{ + &_localed__method_info_set_vconsole_keyboard_IN_ARG_keymap, + &_localed__method_info_set_vconsole_keyboard_IN_ARG_keymap_toggle, + &_localed__method_info_set_vconsole_keyboard_IN_ARG_convert, + &_localed__method_info_set_vconsole_keyboard_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _localed__method_info_set_vconsole_keyboard = +{ + { + -1, + (gchar *) "SetVConsoleKeyboard", + (GDBusArgInfo **) &_localed__method_info_set_vconsole_keyboard_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-vconsole-keyboard", + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_x11_keyboard_IN_ARG_layout = +{ + { + -1, + (gchar *) "layout", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_x11_keyboard_IN_ARG_model = +{ + { + -1, + (gchar *) "model", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_x11_keyboard_IN_ARG_variant = +{ + { + -1, + (gchar *) "variant", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_x11_keyboard_IN_ARG_options = +{ + { + -1, + (gchar *) "options", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_x11_keyboard_IN_ARG_convert = +{ + { + -1, + (gchar *) "convert", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _localed__method_info_set_x11_keyboard_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _localed__method_info_set_x11_keyboard_IN_ARG_pointers[] = +{ + &_localed__method_info_set_x11_keyboard_IN_ARG_layout, + &_localed__method_info_set_x11_keyboard_IN_ARG_model, + &_localed__method_info_set_x11_keyboard_IN_ARG_variant, + &_localed__method_info_set_x11_keyboard_IN_ARG_options, + &_localed__method_info_set_x11_keyboard_IN_ARG_convert, + &_localed__method_info_set_x11_keyboard_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _localed__method_info_set_x11_keyboard = +{ + { + -1, + (gchar *) "SetX11Keyboard", + (GDBusArgInfo **) &_localed__method_info_set_x11_keyboard_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-x11-keyboard", + FALSE +}; + +static const _ExtendedGDBusMethodInfo * const _localed__method_info_pointers[] = +{ + &_localed__method_info_set_locale, + &_localed__method_info_set_vconsole_keyboard, + &_localed__method_info_set_x11_keyboard, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _localed__property_info_locale = +{ + { + -1, + (gchar *) "Locale", + (gchar *) "as", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "locale", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _localed__property_info_vconsole_keymap = +{ + { + -1, + (gchar *) "VConsoleKeymap", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "vconsole-keymap", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _localed__property_info_vconsole_keymap_toggle = +{ + { + -1, + (gchar *) "VConsoleKeymapToggle", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "vconsole-keymap-toggle", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _localed__property_info_x11_layout = +{ + { + -1, + (gchar *) "X11Layout", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "x11-layout", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _localed__property_info_x11_model = +{ + { + -1, + (gchar *) "X11Model", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "x11-model", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _localed__property_info_x11_variant = +{ + { + -1, + (gchar *) "X11Variant", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "x11-variant", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _localed__property_info_x11_options = +{ + { + -1, + (gchar *) "X11Options", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "x11-options", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo * const _localed__property_info_pointers[] = +{ + &_localed__property_info_locale, + &_localed__property_info_vconsole_keymap, + &_localed__property_info_vconsole_keymap_toggle, + &_localed__property_info_x11_layout, + &_localed__property_info_x11_model, + &_localed__property_info_x11_variant, + &_localed__property_info_x11_options, + NULL +}; + +static const _ExtendedGDBusInterfaceInfo _localed__interface_info = +{ + { + -1, + (gchar *) "org.freedesktop.locale1", + (GDBusMethodInfo **) &_localed__method_info_pointers, + NULL, + (GDBusPropertyInfo **) &_localed__property_info_pointers, + NULL + }, + "", +}; + + +/** + * localed__interface_info: + * + * Gets a machine-readable description of the <link linkend="gdbus-interface-org-freedesktop-locale1.top_of_page">org.freedesktop.locale1</link> D-Bus interface. + * + * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. + */ +GDBusInterfaceInfo * +localed__interface_info (void) +{ + return (GDBusInterfaceInfo *) &_localed__interface_info.parent_struct; +} + +/** + * localed__override_properties: + * @klass: The class structure for a #GObject<!-- -->-derived class. + * @property_id_begin: The property id to assign to the first overridden property. + * + * Overrides all #GObject properties in the #Localed interface for a concrete class. + * The properties are overridden in the order they are defined. + * + * Returns: The last property id. + */ +guint +localed__override_properties (GObjectClass *klass, guint property_id_begin) +{ + g_object_class_override_property (klass, property_id_begin++, "locale"); + g_object_class_override_property (klass, property_id_begin++, "vconsole-keymap"); + g_object_class_override_property (klass, property_id_begin++, "vconsole-keymap-toggle"); + g_object_class_override_property (klass, property_id_begin++, "x11-layout"); + g_object_class_override_property (klass, property_id_begin++, "x11-model"); + g_object_class_override_property (klass, property_id_begin++, "x11-variant"); + g_object_class_override_property (klass, property_id_begin++, "x11-options"); + return property_id_begin - 1; +} + + + +/** + * Localed: + * + * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-locale1.top_of_page">org.freedesktop.locale1</link>. + */ + +/** + * LocaledIface: + * @parent_iface: The parent interface. + * @handle_set_locale: Handler for the #Localed::handle-set-locale signal. + * @handle_set_vconsole_keyboard: Handler for the #Localed::handle-set-vconsole-keyboard signal. + * @handle_set_x11_keyboard: Handler for the #Localed::handle-set-x11-keyboard signal. + * @get_locale: Getter for the #Localed:locale property. + * @get_vconsole_keymap: Getter for the #Localed:vconsole-keymap property. + * @get_vconsole_keymap_toggle: Getter for the #Localed:vconsole-keymap-toggle property. + * @get_x11_layout: Getter for the #Localed:x11-layout property. + * @get_x11_model: Getter for the #Localed:x11-model property. + * @get_x11_options: Getter for the #Localed:x11-options property. + * @get_x11_variant: Getter for the #Localed:x11-variant property. + * + * Virtual table for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-locale1.top_of_page">org.freedesktop.locale1</link>. + */ + +typedef LocaledIface LocaledInterface; +G_DEFINE_INTERFACE (Localed, localed_, G_TYPE_OBJECT); + +static void +localed__default_init (LocaledIface *iface) +{ + /* GObject signals for incoming D-Bus method calls: */ + /** + * Localed::handle-set-locale: + * @object: A #Localed. + * @invocation: A #GDBusMethodInvocation. + * @arg_locale: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-locale1.SetLocale">SetLocale()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call localed__complete_set_locale() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-locale", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LocaledIface, handle_set_locale), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 3, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRV, G_TYPE_BOOLEAN); + + /** + * Localed::handle-set-vconsole-keyboard: + * @object: A #Localed. + * @invocation: A #GDBusMethodInvocation. + * @arg_keymap: Argument passed by remote caller. + * @arg_keymap_toggle: Argument passed by remote caller. + * @arg_convert: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-locale1.SetVConsoleKeyboard">SetVConsoleKeyboard()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call localed__complete_set_vconsole_keyboard() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-vconsole-keyboard", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LocaledIface, handle_set_vconsole_keyboard), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 5, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN); + + /** + * Localed::handle-set-x11-keyboard: + * @object: A #Localed. + * @invocation: A #GDBusMethodInvocation. + * @arg_layout: Argument passed by remote caller. + * @arg_model: Argument passed by remote caller. + * @arg_variant: Argument passed by remote caller. + * @arg_options: Argument passed by remote caller. + * @arg_convert: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-locale1.SetX11Keyboard">SetX11Keyboard()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call localed__complete_set_x11_keyboard() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-x11-keyboard", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LocaledIface, handle_set_x11_keyboard), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 7, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN); + + /* GObject properties for D-Bus properties: */ + /** + * Localed:locale: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-locale1.Locale">"Locale"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_boxed ("locale", "Locale", "Locale", G_TYPE_STRV, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Localed:vconsole-keymap: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-locale1.VConsoleKeymap">"VConsoleKeymap"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("vconsole-keymap", "VConsoleKeymap", "VConsoleKeymap", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Localed:vconsole-keymap-toggle: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-locale1.VConsoleKeymapToggle">"VConsoleKeymapToggle"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("vconsole-keymap-toggle", "VConsoleKeymapToggle", "VConsoleKeymapToggle", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Localed:x11-layout: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-locale1.X11Layout">"X11Layout"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("x11-layout", "X11Layout", "X11Layout", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Localed:x11-model: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-locale1.X11Model">"X11Model"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("x11-model", "X11Model", "X11Model", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Localed:x11-variant: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-locale1.X11Variant">"X11Variant"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("x11-variant", "X11Variant", "X11Variant", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Localed:x11-options: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-locale1.X11Options">"X11Options"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("x11-options", "X11Options", "X11Options", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); +} + +/** + * localed__get_locale: (skip) + * @object: A #Localed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-locale1.Locale">"Locale"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use localed__dup_locale() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar *const * +localed__get_locale (Localed *object) +{ + return LOCALED__GET_IFACE (object)->get_locale (object); +} + +/** + * localed__dup_locale: (skip) + * @object: A #Localed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-locale1.Locale">"Locale"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_strfreev(). + */ +gchar ** +localed__dup_locale (Localed *object) +{ + gchar **value; + g_object_get (G_OBJECT (object), "locale", &value, NULL); + return value; +} + +/** + * localed__set_locale: (skip) + * @object: A #Localed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-locale1.Locale">"Locale"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +localed__set_locale (Localed *object, const gchar *const *value) +{ + g_object_set (G_OBJECT (object), "locale", value, NULL); +} + +/** + * localed__get_vconsole_keymap: (skip) + * @object: A #Localed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-locale1.VConsoleKeymap">"VConsoleKeymap"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use localed__dup_vconsole_keymap() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +localed__get_vconsole_keymap (Localed *object) +{ + return LOCALED__GET_IFACE (object)->get_vconsole_keymap (object); +} + +/** + * localed__dup_vconsole_keymap: (skip) + * @object: A #Localed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-locale1.VConsoleKeymap">"VConsoleKeymap"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +localed__dup_vconsole_keymap (Localed *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "vconsole-keymap", &value, NULL); + return value; +} + +/** + * localed__set_vconsole_keymap: (skip) + * @object: A #Localed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-locale1.VConsoleKeymap">"VConsoleKeymap"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +localed__set_vconsole_keymap (Localed *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "vconsole-keymap", value, NULL); +} + +/** + * localed__get_vconsole_keymap_toggle: (skip) + * @object: A #Localed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-locale1.VConsoleKeymapToggle">"VConsoleKeymapToggle"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use localed__dup_vconsole_keymap_toggle() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +localed__get_vconsole_keymap_toggle (Localed *object) +{ + return LOCALED__GET_IFACE (object)->get_vconsole_keymap_toggle (object); +} + +/** + * localed__dup_vconsole_keymap_toggle: (skip) + * @object: A #Localed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-locale1.VConsoleKeymapToggle">"VConsoleKeymapToggle"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +localed__dup_vconsole_keymap_toggle (Localed *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "vconsole-keymap-toggle", &value, NULL); + return value; +} + +/** + * localed__set_vconsole_keymap_toggle: (skip) + * @object: A #Localed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-locale1.VConsoleKeymapToggle">"VConsoleKeymapToggle"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +localed__set_vconsole_keymap_toggle (Localed *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "vconsole-keymap-toggle", value, NULL); +} + +/** + * localed__get_x11_layout: (skip) + * @object: A #Localed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-locale1.X11Layout">"X11Layout"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use localed__dup_x11_layout() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +localed__get_x11_layout (Localed *object) +{ + return LOCALED__GET_IFACE (object)->get_x11_layout (object); +} + +/** + * localed__dup_x11_layout: (skip) + * @object: A #Localed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-locale1.X11Layout">"X11Layout"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +localed__dup_x11_layout (Localed *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "x11-layout", &value, NULL); + return value; +} + +/** + * localed__set_x11_layout: (skip) + * @object: A #Localed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-locale1.X11Layout">"X11Layout"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +localed__set_x11_layout (Localed *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "x11-layout", value, NULL); +} + +/** + * localed__get_x11_model: (skip) + * @object: A #Localed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-locale1.X11Model">"X11Model"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use localed__dup_x11_model() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +localed__get_x11_model (Localed *object) +{ + return LOCALED__GET_IFACE (object)->get_x11_model (object); +} + +/** + * localed__dup_x11_model: (skip) + * @object: A #Localed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-locale1.X11Model">"X11Model"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +localed__dup_x11_model (Localed *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "x11-model", &value, NULL); + return value; +} + +/** + * localed__set_x11_model: (skip) + * @object: A #Localed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-locale1.X11Model">"X11Model"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +localed__set_x11_model (Localed *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "x11-model", value, NULL); +} + +/** + * localed__get_x11_variant: (skip) + * @object: A #Localed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-locale1.X11Variant">"X11Variant"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use localed__dup_x11_variant() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +localed__get_x11_variant (Localed *object) +{ + return LOCALED__GET_IFACE (object)->get_x11_variant (object); +} + +/** + * localed__dup_x11_variant: (skip) + * @object: A #Localed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-locale1.X11Variant">"X11Variant"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +localed__dup_x11_variant (Localed *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "x11-variant", &value, NULL); + return value; +} + +/** + * localed__set_x11_variant: (skip) + * @object: A #Localed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-locale1.X11Variant">"X11Variant"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +localed__set_x11_variant (Localed *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "x11-variant", value, NULL); +} + +/** + * localed__get_x11_options: (skip) + * @object: A #Localed. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-locale1.X11Options">"X11Options"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use localed__dup_x11_options() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +localed__get_x11_options (Localed *object) +{ + return LOCALED__GET_IFACE (object)->get_x11_options (object); +} + +/** + * localed__dup_x11_options: (skip) + * @object: A #Localed. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-locale1.X11Options">"X11Options"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +localed__dup_x11_options (Localed *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "x11-options", &value, NULL); + return value; +} + +/** + * localed__set_x11_options: (skip) + * @object: A #Localed. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-locale1.X11Options">"X11Options"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +localed__set_x11_options (Localed *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "x11-options", value, NULL); +} + +/** + * localed__call_set_locale: + * @proxy: A #LocaledProxy. + * @arg_locale: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-locale1.SetLocale">SetLocale()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call localed__call_set_locale_finish() to get the result of the operation. + * + * See localed__call_set_locale_sync() for the synchronous, blocking version of this method. + */ +void +localed__call_set_locale ( + Localed *proxy, + const gchar *const *arg_locale, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetLocale", + g_variant_new ("(^asb)", + arg_locale, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * localed__call_set_locale_finish: + * @proxy: A #LocaledProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to localed__call_set_locale(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with localed__call_set_locale(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +localed__call_set_locale_finish ( + Localed *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * localed__call_set_locale_sync: + * @proxy: A #LocaledProxy. + * @arg_locale: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-locale1.SetLocale">SetLocale()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See localed__call_set_locale() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +localed__call_set_locale_sync ( + Localed *proxy, + const gchar *const *arg_locale, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetLocale", + g_variant_new ("(^asb)", + arg_locale, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * localed__call_set_vconsole_keyboard: + * @proxy: A #LocaledProxy. + * @arg_keymap: Argument to pass with the method invocation. + * @arg_keymap_toggle: Argument to pass with the method invocation. + * @arg_convert: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-locale1.SetVConsoleKeyboard">SetVConsoleKeyboard()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call localed__call_set_vconsole_keyboard_finish() to get the result of the operation. + * + * See localed__call_set_vconsole_keyboard_sync() for the synchronous, blocking version of this method. + */ +void +localed__call_set_vconsole_keyboard ( + Localed *proxy, + const gchar *arg_keymap, + const gchar *arg_keymap_toggle, + gboolean arg_convert, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetVConsoleKeyboard", + g_variant_new ("(ssbb)", + arg_keymap, + arg_keymap_toggle, + arg_convert, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * localed__call_set_vconsole_keyboard_finish: + * @proxy: A #LocaledProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to localed__call_set_vconsole_keyboard(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with localed__call_set_vconsole_keyboard(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +localed__call_set_vconsole_keyboard_finish ( + Localed *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * localed__call_set_vconsole_keyboard_sync: + * @proxy: A #LocaledProxy. + * @arg_keymap: Argument to pass with the method invocation. + * @arg_keymap_toggle: Argument to pass with the method invocation. + * @arg_convert: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-locale1.SetVConsoleKeyboard">SetVConsoleKeyboard()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See localed__call_set_vconsole_keyboard() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +localed__call_set_vconsole_keyboard_sync ( + Localed *proxy, + const gchar *arg_keymap, + const gchar *arg_keymap_toggle, + gboolean arg_convert, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetVConsoleKeyboard", + g_variant_new ("(ssbb)", + arg_keymap, + arg_keymap_toggle, + arg_convert, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * localed__call_set_x11_keyboard: + * @proxy: A #LocaledProxy. + * @arg_layout: Argument to pass with the method invocation. + * @arg_model: Argument to pass with the method invocation. + * @arg_variant: Argument to pass with the method invocation. + * @arg_options: Argument to pass with the method invocation. + * @arg_convert: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-locale1.SetX11Keyboard">SetX11Keyboard()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call localed__call_set_x11_keyboard_finish() to get the result of the operation. + * + * See localed__call_set_x11_keyboard_sync() for the synchronous, blocking version of this method. + */ +void +localed__call_set_x11_keyboard ( + Localed *proxy, + const gchar *arg_layout, + const gchar *arg_model, + const gchar *arg_variant, + const gchar *arg_options, + gboolean arg_convert, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetX11Keyboard", + g_variant_new ("(ssssbb)", + arg_layout, + arg_model, + arg_variant, + arg_options, + arg_convert, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * localed__call_set_x11_keyboard_finish: + * @proxy: A #LocaledProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to localed__call_set_x11_keyboard(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with localed__call_set_x11_keyboard(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +localed__call_set_x11_keyboard_finish ( + Localed *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * localed__call_set_x11_keyboard_sync: + * @proxy: A #LocaledProxy. + * @arg_layout: Argument to pass with the method invocation. + * @arg_model: Argument to pass with the method invocation. + * @arg_variant: Argument to pass with the method invocation. + * @arg_options: Argument to pass with the method invocation. + * @arg_convert: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-locale1.SetX11Keyboard">SetX11Keyboard()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See localed__call_set_x11_keyboard() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +localed__call_set_x11_keyboard_sync ( + Localed *proxy, + const gchar *arg_layout, + const gchar *arg_model, + const gchar *arg_variant, + const gchar *arg_options, + gboolean arg_convert, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetX11Keyboard", + g_variant_new ("(ssssbb)", + arg_layout, + arg_model, + arg_variant, + arg_options, + arg_convert, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * localed__complete_set_locale: + * @object: A #Localed. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-locale1.SetLocale">SetLocale()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +localed__complete_set_locale ( + Localed *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * localed__complete_set_vconsole_keyboard: + * @object: A #Localed. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-locale1.SetVConsoleKeyboard">SetVConsoleKeyboard()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +localed__complete_set_vconsole_keyboard ( + Localed *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * localed__complete_set_x11_keyboard: + * @object: A #Localed. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-locale1.SetX11Keyboard">SetX11Keyboard()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +localed__complete_set_x11_keyboard ( + Localed *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/* ------------------------------------------------------------------------ */ + +/** + * LocaledProxy: + * + * The #LocaledProxy structure contains only private data and should only be accessed using the provided API. + */ + +/** + * LocaledProxyClass: + * @parent_class: The parent class. + * + * Class structure for #LocaledProxy. + */ + +struct _LocaledProxyPrivate +{ + GData *qdata; +}; + +static void localed__proxy_iface_init (LocaledIface *iface); + +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 +G_DEFINE_TYPE_WITH_CODE (LocaledProxy, localed__proxy, G_TYPE_DBUS_PROXY, + G_ADD_PRIVATE (LocaledProxy) + G_IMPLEMENT_INTERFACE (LOCALED_TYPE_, localed__proxy_iface_init)); + +#else +G_DEFINE_TYPE_WITH_CODE (LocaledProxy, localed__proxy, G_TYPE_DBUS_PROXY, + G_IMPLEMENT_INTERFACE (LOCALED_TYPE_, localed__proxy_iface_init)); + +#endif +static void +localed__proxy_finalize (GObject *object) +{ + LocaledProxy *proxy = LOCALED__PROXY (object); + g_datalist_clear (&proxy->priv->qdata); + G_OBJECT_CLASS (localed__proxy_parent_class)->finalize (object); +} + +static void +localed__proxy_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + const _ExtendedGDBusPropertyInfo *info; + GVariant *variant; + g_assert (prop_id != 0 && prop_id - 1 < 7); + info = _localed__property_info_pointers[prop_id - 1]; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); + if (info->use_gvariant) + { + g_value_set_variant (value, variant); + } + else + { + if (variant != NULL) + g_dbus_gvariant_to_gvalue (variant, value); + } + if (variant != NULL) + g_variant_unref (variant); +} + +static void +localed__proxy_set_property_cb (GDBusProxy *proxy, + GAsyncResult *res, + gpointer user_data) +{ + const _ExtendedGDBusPropertyInfo *info = user_data; + GError *error; + GVariant *_ret; + error = NULL; + _ret = g_dbus_proxy_call_finish (proxy, res, &error); + if (!_ret) + { + g_warning ("Error setting property '%s' on interface org.freedesktop.locale1: %s (%s, %d)", + info->parent_struct.name, + error->message, g_quark_to_string (error->domain), error->code); + g_error_free (error); + } + else + { + g_variant_unref (_ret); + } +} + +static void +localed__proxy_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + const _ExtendedGDBusPropertyInfo *info; + GVariant *variant; + g_assert (prop_id != 0 && prop_id - 1 < 7); + info = _localed__property_info_pointers[prop_id - 1]; + variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); + g_dbus_proxy_call (G_DBUS_PROXY (object), + "org.freedesktop.DBus.Properties.Set", + g_variant_new ("(ssv)", "org.freedesktop.locale1", info->parent_struct.name, variant), + G_DBUS_CALL_FLAGS_NONE, + -1, + NULL, (GAsyncReadyCallback) localed__proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); + g_variant_unref (variant); +} + +static void +localed__proxy_g_signal (GDBusProxy *proxy, + const gchar *sender_name G_GNUC_UNUSED, + const gchar *signal_name, + GVariant *parameters) +{ + _ExtendedGDBusSignalInfo *info; + GVariantIter iter; + GVariant *child; + GValue *paramv; + guint num_params; + guint n; + guint signal_id; + info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_localed__interface_info.parent_struct, signal_name); + if (info == NULL) + return; + num_params = g_variant_n_children (parameters); + paramv = g_new0 (GValue, num_params + 1); + g_value_init (¶mv[0], LOCALED_TYPE_); + g_value_set_object (¶mv[0], proxy); + g_variant_iter_init (&iter, parameters); + n = 1; + while ((child = g_variant_iter_next_value (&iter)) != NULL) + { + _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; + if (arg_info->use_gvariant) + { + g_value_init (¶mv[n], G_TYPE_VARIANT); + g_value_set_variant (¶mv[n], child); + n++; + } + else + g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); + g_variant_unref (child); + } + signal_id = g_signal_lookup (info->signal_name, LOCALED_TYPE_); + g_signal_emitv (paramv, signal_id, 0, NULL); + for (n = 0; n < num_params + 1; n++) + g_value_unset (¶mv[n]); + g_free (paramv); +} + +static void +localed__proxy_g_properties_changed (GDBusProxy *_proxy, + GVariant *changed_properties, + const gchar *const *invalidated_properties) +{ + LocaledProxy *proxy = LOCALED__PROXY (_proxy); + guint n; + const gchar *key; + GVariantIter *iter; + _ExtendedGDBusPropertyInfo *info; + g_variant_get (changed_properties, "a{sv}", &iter); + while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) + { + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_localed__interface_info.parent_struct, key); + g_datalist_remove_data (&proxy->priv->qdata, key); + if (info != NULL) + g_object_notify (G_OBJECT (proxy), info->hyphen_name); + } + g_variant_iter_free (iter); + for (n = 0; invalidated_properties[n] != NULL; n++) + { + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_localed__interface_info.parent_struct, invalidated_properties[n]); + g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); + if (info != NULL) + g_object_notify (G_OBJECT (proxy), info->hyphen_name); + } +} + +static const gchar *const * +localed__proxy_get_locale (Localed *object) +{ + LocaledProxy *proxy = LOCALED__PROXY (object); + GVariant *variant; + const gchar *const *value = NULL; + value = g_datalist_get_data (&proxy->priv->qdata, "Locale"); + if (value != NULL) + return value; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "Locale"); + if (variant != NULL) + { + value = g_variant_get_strv (variant, NULL); + g_datalist_set_data_full (&proxy->priv->qdata, "Locale", (gpointer) value, g_free); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +localed__proxy_get_vconsole_keymap (Localed *object) +{ + LocaledProxy *proxy = LOCALED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "VConsoleKeymap"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +localed__proxy_get_vconsole_keymap_toggle (Localed *object) +{ + LocaledProxy *proxy = LOCALED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "VConsoleKeymapToggle"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +localed__proxy_get_x11_layout (Localed *object) +{ + LocaledProxy *proxy = LOCALED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "X11Layout"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +localed__proxy_get_x11_model (Localed *object) +{ + LocaledProxy *proxy = LOCALED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "X11Model"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +localed__proxy_get_x11_variant (Localed *object) +{ + LocaledProxy *proxy = LOCALED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "X11Variant"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +localed__proxy_get_x11_options (Localed *object) +{ + LocaledProxy *proxy = LOCALED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "X11Options"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static void +localed__proxy_init (LocaledProxy *proxy) +{ +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 + proxy->priv = localed__proxy_get_instance_private (proxy); +#else + proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, LOCALED_TYPE__PROXY, LocaledProxyPrivate); +#endif + + g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), localed__interface_info ()); +} + +static void +localed__proxy_class_init (LocaledProxyClass *klass) +{ + GObjectClass *gobject_class; + GDBusProxyClass *proxy_class; + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = localed__proxy_finalize; + gobject_class->get_property = localed__proxy_get_property; + gobject_class->set_property = localed__proxy_set_property; + + proxy_class = G_DBUS_PROXY_CLASS (klass); + proxy_class->g_signal = localed__proxy_g_signal; + proxy_class->g_properties_changed = localed__proxy_g_properties_changed; + + localed__override_properties (gobject_class, 1); + +#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 + g_type_class_add_private (klass, sizeof (LocaledProxyPrivate)); +#endif +} + +static void +localed__proxy_iface_init (LocaledIface *iface) +{ + iface->get_locale = localed__proxy_get_locale; + iface->get_vconsole_keymap = localed__proxy_get_vconsole_keymap; + iface->get_vconsole_keymap_toggle = localed__proxy_get_vconsole_keymap_toggle; + iface->get_x11_layout = localed__proxy_get_x11_layout; + iface->get_x11_model = localed__proxy_get_x11_model; + iface->get_x11_variant = localed__proxy_get_x11_variant; + iface->get_x11_options = localed__proxy_get_x11_options; +} + +/** + * localed__proxy_new: + * @connection: A #GDBusConnection. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied. + * @user_data: User data to pass to @callback. + * + * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-locale1.top_of_page">org.freedesktop.locale1</link>. See g_dbus_proxy_new() for more details. + * + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call localed__proxy_new_finish() to get the result of the operation. + * + * See localed__proxy_new_sync() for the synchronous, blocking version of this constructor. + */ +void +localed__proxy_new ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_async_initable_new_async (LOCALED_TYPE__PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.freedesktop.locale1", NULL); +} + +/** + * localed__proxy_new_finish: + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to localed__proxy_new(). + * @error: Return location for error or %NULL + * + * Finishes an operation started with localed__proxy_new(). + * + * Returns: (transfer full) (type LocaledProxy): The constructed proxy object or %NULL if @error is set. + */ +Localed * +localed__proxy_new_finish ( + GAsyncResult *res, + GError **error) +{ + GObject *ret; + GObject *source_object; + source_object = g_async_result_get_source_object (res); + ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); + g_object_unref (source_object); + if (ret != NULL) + return LOCALED_ (ret); + else + return NULL; +} + +/** + * localed__proxy_new_sync: + * @connection: A #GDBusConnection. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL + * + * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-locale1.top_of_page">org.freedesktop.locale1</link>. See g_dbus_proxy_new_sync() for more details. + * + * The calling thread is blocked until a reply is received. + * + * See localed__proxy_new() for the asynchronous version of this constructor. + * + * Returns: (transfer full) (type LocaledProxy): The constructed proxy object or %NULL if @error is set. + */ +Localed * +localed__proxy_new_sync ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error) +{ + GInitable *ret; + ret = g_initable_new (LOCALED_TYPE__PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.freedesktop.locale1", NULL); + if (ret != NULL) + return LOCALED_ (ret); + else + return NULL; +} + + +/** + * localed__proxy_new_for_bus: + * @bus_type: A #GBusType. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: A bus name (well-known or unique). + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied. + * @user_data: User data to pass to @callback. + * + * Like localed__proxy_new() but takes a #GBusType instead of a #GDBusConnection. + * + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call localed__proxy_new_for_bus_finish() to get the result of the operation. + * + * See localed__proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. + */ +void +localed__proxy_new_for_bus ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_async_initable_new_async (LOCALED_TYPE__PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.freedesktop.locale1", NULL); +} + +/** + * localed__proxy_new_for_bus_finish: + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to localed__proxy_new_for_bus(). + * @error: Return location for error or %NULL + * + * Finishes an operation started with localed__proxy_new_for_bus(). + * + * Returns: (transfer full) (type LocaledProxy): The constructed proxy object or %NULL if @error is set. + */ +Localed * +localed__proxy_new_for_bus_finish ( + GAsyncResult *res, + GError **error) +{ + GObject *ret; + GObject *source_object; + source_object = g_async_result_get_source_object (res); + ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); + g_object_unref (source_object); + if (ret != NULL) + return LOCALED_ (ret); + else + return NULL; +} + +/** + * localed__proxy_new_for_bus_sync: + * @bus_type: A #GBusType. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: A bus name (well-known or unique). + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL + * + * Like localed__proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. + * + * The calling thread is blocked until a reply is received. + * + * See localed__proxy_new_for_bus() for the asynchronous version of this constructor. + * + * Returns: (transfer full) (type LocaledProxy): The constructed proxy object or %NULL if @error is set. + */ +Localed * +localed__proxy_new_for_bus_sync ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error) +{ + GInitable *ret; + ret = g_initable_new (LOCALED_TYPE__PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.freedesktop.locale1", NULL); + if (ret != NULL) + return LOCALED_ (ret); + else + return NULL; +} + + +/* ------------------------------------------------------------------------ */ + +/** + * LocaledSkeleton: + * + * The #LocaledSkeleton structure contains only private data and should only be accessed using the provided API. + */ + +/** + * LocaledSkeletonClass: + * @parent_class: The parent class. + * + * Class structure for #LocaledSkeleton. + */ + +struct _LocaledSkeletonPrivate +{ + GValue *properties; + GList *changed_properties; + GSource *changed_properties_idle_source; + GMainContext *context; + GMutex lock; +}; + +static void +_localed__skeleton_handle_method_call ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name, + const gchar *method_name, + GVariant *parameters, + GDBusMethodInvocation *invocation, + gpointer user_data) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (user_data); + _ExtendedGDBusMethodInfo *info; + GVariantIter iter; + GVariant *child; + GValue *paramv; + guint num_params; + guint num_extra; + guint n; + guint signal_id; + GValue return_value = G_VALUE_INIT; + info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); + g_assert (info != NULL); + num_params = g_variant_n_children (parameters); + num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); + n = 0; + g_value_init (¶mv[n], LOCALED_TYPE_); + g_value_set_object (¶mv[n++], skeleton); + g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); + g_value_set_object (¶mv[n++], invocation); + if (info->pass_fdlist) + { +#ifdef G_OS_UNIX + g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); + g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); +#else + g_assert_not_reached (); +#endif + } + g_variant_iter_init (&iter, parameters); + while ((child = g_variant_iter_next_value (&iter)) != NULL) + { + _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; + if (arg_info->use_gvariant) + { + g_value_init (¶mv[n], G_TYPE_VARIANT); + g_value_set_variant (¶mv[n], child); + n++; + } + else + g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); + g_variant_unref (child); + } + signal_id = g_signal_lookup (info->signal_name, LOCALED_TYPE_); + g_value_init (&return_value, G_TYPE_BOOLEAN); + g_signal_emitv (paramv, signal_id, 0, &return_value); + if (!g_value_get_boolean (&return_value)) + g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); + g_value_unset (&return_value); + for (n = 0; n < num_params + num_extra; n++) + g_value_unset (¶mv[n]); + g_free (paramv); +} + +static GVariant * +_localed__skeleton_handle_get_property ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name G_GNUC_UNUSED, + const gchar *property_name, + GError **error, + gpointer user_data) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (user_data); + GValue value = G_VALUE_INIT; + GParamSpec *pspec; + _ExtendedGDBusPropertyInfo *info; + GVariant *ret; + ret = NULL; + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_localed__interface_info.parent_struct, property_name); + g_assert (info != NULL); + pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); + if (pspec == NULL) + { + g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); + } + else + { + g_value_init (&value, pspec->value_type); + g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); + ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); + g_value_unset (&value); + } + return ret; +} + +static gboolean +_localed__skeleton_handle_set_property ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name G_GNUC_UNUSED, + const gchar *property_name, + GVariant *variant, + GError **error, + gpointer user_data) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (user_data); + GValue value = G_VALUE_INIT; + GParamSpec *pspec; + _ExtendedGDBusPropertyInfo *info; + gboolean ret; + ret = FALSE; + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_localed__interface_info.parent_struct, property_name); + g_assert (info != NULL); + pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); + if (pspec == NULL) + { + g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); + } + else + { + if (info->use_gvariant) + g_value_set_variant (&value, variant); + else + g_dbus_gvariant_to_gvalue (variant, &value); + g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); + g_value_unset (&value); + ret = TRUE; + } + return ret; +} + +static const GDBusInterfaceVTable _localed__skeleton_vtable = +{ + _localed__skeleton_handle_method_call, + _localed__skeleton_handle_get_property, + _localed__skeleton_handle_set_property, + {NULL} +}; + +static GDBusInterfaceInfo * +localed__skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) +{ + return localed__interface_info (); +} + +static GDBusInterfaceVTable * +localed__skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) +{ + return (GDBusInterfaceVTable *) &_localed__skeleton_vtable; +} + +static GVariant * +localed__skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (_skeleton); + + GVariantBuilder builder; + guint n; + g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); + if (_localed__interface_info.parent_struct.properties == NULL) + goto out; + for (n = 0; _localed__interface_info.parent_struct.properties[n] != NULL; n++) + { + GDBusPropertyInfo *info = _localed__interface_info.parent_struct.properties[n]; + if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) + { + GVariant *value; + value = _localed__skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.locale1", info->name, NULL, skeleton); + if (value != NULL) + { + g_variant_take_ref (value); + g_variant_builder_add (&builder, "{sv}", info->name, value); + g_variant_unref (value); + } + } + } +out: + return g_variant_builder_end (&builder); +} + +static gboolean _localed__emit_changed (gpointer user_data); + +static void +localed__skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (_skeleton); + gboolean emit_changed = FALSE; + + g_mutex_lock (&skeleton->priv->lock); + if (skeleton->priv->changed_properties_idle_source != NULL) + { + g_source_destroy (skeleton->priv->changed_properties_idle_source); + skeleton->priv->changed_properties_idle_source = NULL; + emit_changed = TRUE; + } + g_mutex_unlock (&skeleton->priv->lock); + + if (emit_changed) + _localed__emit_changed (skeleton); +} + +static void localed__skeleton_iface_init (LocaledIface *iface); +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 +G_DEFINE_TYPE_WITH_CODE (LocaledSkeleton, localed__skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, + G_ADD_PRIVATE (LocaledSkeleton) + G_IMPLEMENT_INTERFACE (LOCALED_TYPE_, localed__skeleton_iface_init)); + +#else +G_DEFINE_TYPE_WITH_CODE (LocaledSkeleton, localed__skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, + G_IMPLEMENT_INTERFACE (LOCALED_TYPE_, localed__skeleton_iface_init)); + +#endif +static void +localed__skeleton_finalize (GObject *object) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + guint n; + for (n = 0; n < 7; n++) + g_value_unset (&skeleton->priv->properties[n]); + g_free (skeleton->priv->properties); + g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); + if (skeleton->priv->changed_properties_idle_source != NULL) + g_source_destroy (skeleton->priv->changed_properties_idle_source); + g_main_context_unref (skeleton->priv->context); + g_mutex_clear (&skeleton->priv->lock); + G_OBJECT_CLASS (localed__skeleton_parent_class)->finalize (object); +} + +static void +localed__skeleton_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + g_assert (prop_id != 0 && prop_id - 1 < 7); + g_mutex_lock (&skeleton->priv->lock); + g_value_copy (&skeleton->priv->properties[prop_id - 1], value); + g_mutex_unlock (&skeleton->priv->lock); +} + +static gboolean +_localed__emit_changed (gpointer user_data) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (user_data); + GList *l; + GVariantBuilder builder; + GVariantBuilder invalidated_builder; + guint num_changes; + + g_mutex_lock (&skeleton->priv->lock); + g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); + g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); + for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) + { + ChangedProperty *cp = l->data; + GVariant *variant; + const GValue *cur_value; + + cur_value = &skeleton->priv->properties[cp->prop_id - 1]; + if (!_g_value_equal (cur_value, &cp->orig_value)) + { + variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); + g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); + g_variant_unref (variant); + num_changes++; + } + } + if (num_changes > 0) + { + GList *connections, *ll; + GVariant *signal_variant; + signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "org.freedesktop.locale1", + &builder, &invalidated_builder)); + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + for (ll = connections; ll != NULL; ll = ll->next) + { + GDBusConnection *connection = ll->data; + + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), + "org.freedesktop.DBus.Properties", + "PropertiesChanged", + signal_variant, + NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); + } + else + { + g_variant_builder_clear (&builder); + g_variant_builder_clear (&invalidated_builder); + } + g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); + skeleton->priv->changed_properties = NULL; + skeleton->priv->changed_properties_idle_source = NULL; + g_mutex_unlock (&skeleton->priv->lock); + return FALSE; +} + +static void +_localed__schedule_emit_changed (LocaledSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) +{ + ChangedProperty *cp; + GList *l; + cp = NULL; + for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) + { + ChangedProperty *i_cp = l->data; + if (i_cp->info == info) + { + cp = i_cp; + break; + } + } + if (cp == NULL) + { + cp = g_new0 (ChangedProperty, 1); + cp->prop_id = prop_id; + cp->info = info; + skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); + g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); + g_value_copy (orig_value, &cp->orig_value); + } +} + +static void +localed__skeleton_notify (GObject *object, + GParamSpec *pspec G_GNUC_UNUSED) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + g_mutex_lock (&skeleton->priv->lock); + if (skeleton->priv->changed_properties != NULL && + skeleton->priv->changed_properties_idle_source == NULL) + { + skeleton->priv->changed_properties_idle_source = g_idle_source_new (); + g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); + g_source_set_callback (skeleton->priv->changed_properties_idle_source, _localed__emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); + g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); + g_source_unref (skeleton->priv->changed_properties_idle_source); + } + g_mutex_unlock (&skeleton->priv->lock); +} + +static void +localed__skeleton_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + g_assert (prop_id != 0 && prop_id - 1 < 7); + g_mutex_lock (&skeleton->priv->lock); + g_object_freeze_notify (object); + if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) + { + if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL) + _localed__schedule_emit_changed (skeleton, _localed__property_info_pointers[prop_id - 1], prop_id, &skeleton->priv->properties[prop_id - 1]); + g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); + g_object_notify_by_pspec (object, pspec); + } + g_mutex_unlock (&skeleton->priv->lock); + g_object_thaw_notify (object); +} + +static void +localed__skeleton_init (LocaledSkeleton *skeleton) +{ +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 + skeleton->priv = localed__skeleton_get_instance_private (skeleton); +#else + skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, LOCALED_TYPE__SKELETON, LocaledSkeletonPrivate); +#endif + + g_mutex_init (&skeleton->priv->lock); + skeleton->priv->context = g_main_context_ref_thread_default (); + skeleton->priv->properties = g_new0 (GValue, 7); + g_value_init (&skeleton->priv->properties[0], G_TYPE_STRV); + g_value_init (&skeleton->priv->properties[1], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[2], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[3], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[4], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[5], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[6], G_TYPE_STRING); +} + +static const gchar *const * +localed__skeleton_get_locale (Localed *object) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + const gchar *const *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_boxed (&(skeleton->priv->properties[0])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +localed__skeleton_get_vconsole_keymap (Localed *object) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[1])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +localed__skeleton_get_vconsole_keymap_toggle (Localed *object) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[2])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +localed__skeleton_get_x11_layout (Localed *object) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[3])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +localed__skeleton_get_x11_model (Localed *object) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[4])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +localed__skeleton_get_x11_variant (Localed *object) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[5])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +localed__skeleton_get_x11_options (Localed *object) +{ + LocaledSkeleton *skeleton = LOCALED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[6])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static void +localed__skeleton_class_init (LocaledSkeletonClass *klass) +{ + GObjectClass *gobject_class; + GDBusInterfaceSkeletonClass *skeleton_class; + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = localed__skeleton_finalize; + gobject_class->get_property = localed__skeleton_get_property; + gobject_class->set_property = localed__skeleton_set_property; + gobject_class->notify = localed__skeleton_notify; + + + localed__override_properties (gobject_class, 1); + + skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); + skeleton_class->get_info = localed__skeleton_dbus_interface_get_info; + skeleton_class->get_properties = localed__skeleton_dbus_interface_get_properties; + skeleton_class->flush = localed__skeleton_dbus_interface_flush; + skeleton_class->get_vtable = localed__skeleton_dbus_interface_get_vtable; + +#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 + g_type_class_add_private (klass, sizeof (LocaledSkeletonPrivate)); +#endif +} + +static void +localed__skeleton_iface_init (LocaledIface *iface) +{ + iface->get_locale = localed__skeleton_get_locale; + iface->get_vconsole_keymap = localed__skeleton_get_vconsole_keymap; + iface->get_vconsole_keymap_toggle = localed__skeleton_get_vconsole_keymap_toggle; + iface->get_x11_layout = localed__skeleton_get_x11_layout; + iface->get_x11_model = localed__skeleton_get_x11_model; + iface->get_x11_variant = localed__skeleton_get_x11_variant; + iface->get_x11_options = localed__skeleton_get_x11_options; +} + +/** + * localed__skeleton_new: + * + * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-locale1.top_of_page">org.freedesktop.locale1</link>. + * + * Returns: (transfer full) (type LocaledSkeleton): The skeleton object. + */ +Localed * +localed__skeleton_new (void) +{ + return LOCALED_ (g_object_new (LOCALED_TYPE__SKELETON, NULL)); +} + diff --git a/src/interfaces/localed/localed-gen.h b/src/interfaces/localed/localed-gen.h new file mode 100644 index 0000000..cd62576 --- /dev/null +++ b/src/interfaces/localed/localed-gen.h @@ -0,0 +1,296 @@ +/* + * Generated by gdbus-codegen 2.40.0. DO NOT EDIT. + * + * The license of this code is the same as for the source it was derived from. + */ + +#ifndef __LOCALED_GEN_H__ +#define __LOCALED_GEN_H__ + +#include <gio/gio.h> + +G_BEGIN_DECLS + + +/* ------------------------------------------------------------------------ */ +/* Declarations for org.freedesktop.locale1 */ + +#define LOCALED_TYPE_ (localed__get_type ()) +#define LOCALED_(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), LOCALED_TYPE_, Localed)) +#define LOCALED_IS_(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), LOCALED_TYPE_)) +#define LOCALED__GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), LOCALED_TYPE_, LocaledIface)) + +struct _Localed; +typedef struct _Localed Localed; +typedef struct _LocaledIface LocaledIface; + +struct _LocaledIface +{ + GTypeInterface parent_iface; + + + gboolean (*handle_set_locale) ( + Localed *object, + GDBusMethodInvocation *invocation, + const gchar *const *arg_locale, + gboolean arg_user_interaction); + + gboolean (*handle_set_vconsole_keyboard) ( + Localed *object, + GDBusMethodInvocation *invocation, + const gchar *arg_keymap, + const gchar *arg_keymap_toggle, + gboolean arg_convert, + gboolean arg_user_interaction); + + gboolean (*handle_set_x11_keyboard) ( + Localed *object, + GDBusMethodInvocation *invocation, + const gchar *arg_layout, + const gchar *arg_model, + const gchar *arg_variant, + const gchar *arg_options, + gboolean arg_convert, + gboolean arg_user_interaction); + + const gchar *const * (*get_locale) (Localed *object); + + const gchar * (*get_vconsole_keymap) (Localed *object); + + const gchar * (*get_vconsole_keymap_toggle) (Localed *object); + + const gchar * (*get_x11_layout) (Localed *object); + + const gchar * (*get_x11_model) (Localed *object); + + const gchar * (*get_x11_options) (Localed *object); + + const gchar * (*get_x11_variant) (Localed *object); + +}; + +GType localed__get_type (void) G_GNUC_CONST; + +GDBusInterfaceInfo *localed__interface_info (void); +guint localed__override_properties (GObjectClass *klass, guint property_id_begin); + + +/* D-Bus method call completion functions: */ +void localed__complete_set_locale ( + Localed *object, + GDBusMethodInvocation *invocation); + +void localed__complete_set_vconsole_keyboard ( + Localed *object, + GDBusMethodInvocation *invocation); + +void localed__complete_set_x11_keyboard ( + Localed *object, + GDBusMethodInvocation *invocation); + + + +/* D-Bus method calls: */ +void localed__call_set_locale ( + Localed *proxy, + const gchar *const *arg_locale, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean localed__call_set_locale_finish ( + Localed *proxy, + GAsyncResult *res, + GError **error); + +gboolean localed__call_set_locale_sync ( + Localed *proxy, + const gchar *const *arg_locale, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + +void localed__call_set_vconsole_keyboard ( + Localed *proxy, + const gchar *arg_keymap, + const gchar *arg_keymap_toggle, + gboolean arg_convert, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean localed__call_set_vconsole_keyboard_finish ( + Localed *proxy, + GAsyncResult *res, + GError **error); + +gboolean localed__call_set_vconsole_keyboard_sync ( + Localed *proxy, + const gchar *arg_keymap, + const gchar *arg_keymap_toggle, + gboolean arg_convert, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + +void localed__call_set_x11_keyboard ( + Localed *proxy, + const gchar *arg_layout, + const gchar *arg_model, + const gchar *arg_variant, + const gchar *arg_options, + gboolean arg_convert, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean localed__call_set_x11_keyboard_finish ( + Localed *proxy, + GAsyncResult *res, + GError **error); + +gboolean localed__call_set_x11_keyboard_sync ( + Localed *proxy, + const gchar *arg_layout, + const gchar *arg_model, + const gchar *arg_variant, + const gchar *arg_options, + gboolean arg_convert, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + + + +/* D-Bus property accessors: */ +const gchar *const *localed__get_locale (Localed *object); +gchar **localed__dup_locale (Localed *object); +void localed__set_locale (Localed *object, const gchar *const *value); + +const gchar *localed__get_vconsole_keymap (Localed *object); +gchar *localed__dup_vconsole_keymap (Localed *object); +void localed__set_vconsole_keymap (Localed *object, const gchar *value); + +const gchar *localed__get_vconsole_keymap_toggle (Localed *object); +gchar *localed__dup_vconsole_keymap_toggle (Localed *object); +void localed__set_vconsole_keymap_toggle (Localed *object, const gchar *value); + +const gchar *localed__get_x11_layout (Localed *object); +gchar *localed__dup_x11_layout (Localed *object); +void localed__set_x11_layout (Localed *object, const gchar *value); + +const gchar *localed__get_x11_model (Localed *object); +gchar *localed__dup_x11_model (Localed *object); +void localed__set_x11_model (Localed *object, const gchar *value); + +const gchar *localed__get_x11_variant (Localed *object); +gchar *localed__dup_x11_variant (Localed *object); +void localed__set_x11_variant (Localed *object, const gchar *value); + +const gchar *localed__get_x11_options (Localed *object); +gchar *localed__dup_x11_options (Localed *object); +void localed__set_x11_options (Localed *object, const gchar *value); + + +/* ---- */ + +#define LOCALED_TYPE__PROXY (localed__proxy_get_type ()) +#define LOCALED__PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), LOCALED_TYPE__PROXY, LocaledProxy)) +#define LOCALED__PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), LOCALED_TYPE__PROXY, LocaledProxyClass)) +#define LOCALED__PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), LOCALED_TYPE__PROXY, LocaledProxyClass)) +#define LOCALED_IS__PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), LOCALED_TYPE__PROXY)) +#define LOCALED_IS__PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), LOCALED_TYPE__PROXY)) + +typedef struct _LocaledProxy LocaledProxy; +typedef struct _LocaledProxyClass LocaledProxyClass; +typedef struct _LocaledProxyPrivate LocaledProxyPrivate; + +struct _LocaledProxy +{ + /*< private >*/ + GDBusProxy parent_instance; + LocaledProxyPrivate *priv; +}; + +struct _LocaledProxyClass +{ + GDBusProxyClass parent_class; +}; + +GType localed__proxy_get_type (void) G_GNUC_CONST; + +void localed__proxy_new ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +Localed *localed__proxy_new_finish ( + GAsyncResult *res, + GError **error); +Localed *localed__proxy_new_sync ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error); + +void localed__proxy_new_for_bus ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +Localed *localed__proxy_new_for_bus_finish ( + GAsyncResult *res, + GError **error); +Localed *localed__proxy_new_for_bus_sync ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error); + + +/* ---- */ + +#define LOCALED_TYPE__SKELETON (localed__skeleton_get_type ()) +#define LOCALED__SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), LOCALED_TYPE__SKELETON, LocaledSkeleton)) +#define LOCALED__SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), LOCALED_TYPE__SKELETON, LocaledSkeletonClass)) +#define LOCALED__SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), LOCALED_TYPE__SKELETON, LocaledSkeletonClass)) +#define LOCALED_IS__SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), LOCALED_TYPE__SKELETON)) +#define LOCALED_IS__SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), LOCALED_TYPE__SKELETON)) + +typedef struct _LocaledSkeleton LocaledSkeleton; +typedef struct _LocaledSkeletonClass LocaledSkeletonClass; +typedef struct _LocaledSkeletonPrivate LocaledSkeletonPrivate; + +struct _LocaledSkeleton +{ + /*< private >*/ + GDBusInterfaceSkeleton parent_instance; + LocaledSkeletonPrivate *priv; +}; + +struct _LocaledSkeletonClass +{ + GDBusInterfaceSkeletonClass parent_class; +}; + +GType localed__skeleton_get_type (void) G_GNUC_CONST; + +Localed *localed__skeleton_new (void); + + +G_END_DECLS + +#endif /* __LOCALED_GEN_H__ */ diff --git a/src/interfaces/localed/tmp b/src/interfaces/localed/tmp deleted file mode 100644 index c32d7ff..0000000 --- a/src/interfaces/localed/tmp +++ /dev/null @@ -1 +0,0 @@ -TODO: delete me diff --git a/src/interfaces/logind/logind-gen.c b/src/interfaces/logind/logind-gen.c new file mode 100644 index 0000000..b76f8d5 --- /dev/null +++ b/src/interfaces/logind/logind-gen.c @@ -0,0 +1,10875 @@ +/* + * Generated by gdbus-codegen 2.40.0. DO NOT EDIT. + * + * The license of this code is the same as for the source it was derived from. + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include "logind-gen.h" + +#include <string.h> +#ifdef G_OS_UNIX +# include <gio/gunixfdlist.h> +#endif + +typedef struct +{ + GDBusArgInfo parent_struct; + gboolean use_gvariant; +} _ExtendedGDBusArgInfo; + +typedef struct +{ + GDBusMethodInfo parent_struct; + const gchar *signal_name; + gboolean pass_fdlist; +} _ExtendedGDBusMethodInfo; + +typedef struct +{ + GDBusSignalInfo parent_struct; + const gchar *signal_name; +} _ExtendedGDBusSignalInfo; + +typedef struct +{ + GDBusPropertyInfo parent_struct; + const gchar *hyphen_name; + gboolean use_gvariant; +} _ExtendedGDBusPropertyInfo; + +typedef struct +{ + GDBusInterfaceInfo parent_struct; + const gchar *hyphen_name; +} _ExtendedGDBusInterfaceInfo; + +typedef struct +{ + const _ExtendedGDBusPropertyInfo *info; + guint prop_id; + GValue orig_value; /* the value before the change */ +} ChangedProperty; + +static void +_changed_property_free (ChangedProperty *data) +{ + g_value_unset (&data->orig_value); + g_free (data); +} + +static gboolean +_g_strv_equal0 (gchar **a, gchar **b) +{ + gboolean ret = FALSE; + guint n; + if (a == NULL && b == NULL) + { + ret = TRUE; + goto out; + } + if (a == NULL || b == NULL) + goto out; + if (g_strv_length (a) != g_strv_length (b)) + goto out; + for (n = 0; a[n] != NULL; n++) + if (g_strcmp0 (a[n], b[n]) != 0) + goto out; + ret = TRUE; +out: + return ret; +} + +static gboolean +_g_variant_equal0 (GVariant *a, GVariant *b) +{ + gboolean ret = FALSE; + if (a == NULL && b == NULL) + { + ret = TRUE; + goto out; + } + if (a == NULL || b == NULL) + goto out; + ret = g_variant_equal (a, b); +out: + return ret; +} + +G_GNUC_UNUSED static gboolean +_g_value_equal (const GValue *a, const GValue *b) +{ + gboolean ret = FALSE; + g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); + switch (G_VALUE_TYPE (a)) + { + case G_TYPE_BOOLEAN: + ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); + break; + case G_TYPE_UCHAR: + ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); + break; + case G_TYPE_INT: + ret = (g_value_get_int (a) == g_value_get_int (b)); + break; + case G_TYPE_UINT: + ret = (g_value_get_uint (a) == g_value_get_uint (b)); + break; + case G_TYPE_INT64: + ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); + break; + case G_TYPE_UINT64: + ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); + break; + case G_TYPE_DOUBLE: + { + /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ + gdouble da = g_value_get_double (a); + gdouble db = g_value_get_double (b); + ret = memcmp (&da, &db, sizeof (gdouble)) == 0; + } + break; + case G_TYPE_STRING: + ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); + break; + case G_TYPE_VARIANT: + ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); + break; + default: + if (G_VALUE_TYPE (a) == G_TYPE_STRV) + ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); + else + g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); + break; + } + return ret; +} + +/* ------------------------------------------------------------------------ + * Code for interface org.freedesktop.login1.Manager + * ------------------------------------------------------------------------ + */ + +/** + * SECTION:LogindManager + * @title: LogindManager + * @short_description: Generated C code for the org.freedesktop.login1.Manager D-Bus interface + * + * This section contains code for working with the <link linkend="gdbus-interface-org-freedesktop-login1-Manager.top_of_page">org.freedesktop.login1.Manager</link> D-Bus interface in C. + */ + +/* ---- Introspection data for org.freedesktop.login1.Manager ---- */ + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_get_session_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_get_session_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_get_session_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_get_session_OUT_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_get_session_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_get_session_OUT_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_get_session = +{ + { + -1, + (gchar *) "GetSession", + (GDBusArgInfo **) &_logind_manager_method_info_get_session_IN_ARG_pointers, + (GDBusArgInfo **) &_logind_manager_method_info_get_session_OUT_ARG_pointers, + NULL + }, + "handle-get-session", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_get_session_by_pid_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_get_session_by_pid_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_get_session_by_pid_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_get_session_by_pid_OUT_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_get_session_by_pid_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_get_session_by_pid_OUT_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_get_session_by_pid = +{ + { + -1, + (gchar *) "GetSessionByPID", + (GDBusArgInfo **) &_logind_manager_method_info_get_session_by_pid_IN_ARG_pointers, + (GDBusArgInfo **) &_logind_manager_method_info_get_session_by_pid_OUT_ARG_pointers, + NULL + }, + "handle-get-session-by-pid", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_get_user_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_get_user_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_get_user_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_get_user_OUT_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_get_user_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_get_user_OUT_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_get_user = +{ + { + -1, + (gchar *) "GetUser", + (GDBusArgInfo **) &_logind_manager_method_info_get_user_IN_ARG_pointers, + (GDBusArgInfo **) &_logind_manager_method_info_get_user_OUT_ARG_pointers, + NULL + }, + "handle-get-user", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_get_user_by_pid_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_get_user_by_pid_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_get_user_by_pid_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_get_user_by_pid_OUT_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_get_user_by_pid_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_get_user_by_pid_OUT_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_get_user_by_pid = +{ + { + -1, + (gchar *) "GetUserByPID", + (GDBusArgInfo **) &_logind_manager_method_info_get_user_by_pid_IN_ARG_pointers, + (GDBusArgInfo **) &_logind_manager_method_info_get_user_by_pid_OUT_ARG_pointers, + NULL + }, + "handle-get-user-by-pid", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_get_seat_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_get_seat_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_get_seat_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_get_seat_OUT_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_get_seat_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_get_seat_OUT_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_get_seat = +{ + { + -1, + (gchar *) "GetSeat", + (GDBusArgInfo **) &_logind_manager_method_info_get_seat_IN_ARG_pointers, + (GDBusArgInfo **) &_logind_manager_method_info_get_seat_OUT_ARG_pointers, + NULL + }, + "handle-get-seat", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_list_sessions_OUT_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "a(susso)", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_list_sessions_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_list_sessions_OUT_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_list_sessions = +{ + { + -1, + (gchar *) "ListSessions", + NULL, + (GDBusArgInfo **) &_logind_manager_method_info_list_sessions_OUT_ARG_pointers, + NULL + }, + "handle-list-sessions", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_list_users_OUT_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "a(uso)", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_list_users_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_list_users_OUT_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_list_users = +{ + { + -1, + (gchar *) "ListUsers", + NULL, + (GDBusArgInfo **) &_logind_manager_method_info_list_users_OUT_ARG_pointers, + NULL + }, + "handle-list-users", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_list_seats_OUT_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "a(so)", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_list_seats_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_list_seats_OUT_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_list_seats = +{ + { + -1, + (gchar *) "ListSeats", + NULL, + (GDBusArgInfo **) &_logind_manager_method_info_list_seats_OUT_ARG_pointers, + NULL + }, + "handle-list-seats", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_list_inhibitors_OUT_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "a(ssssuu)", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_list_inhibitors_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_list_inhibitors_OUT_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_list_inhibitors = +{ + { + -1, + (gchar *) "ListInhibitors", + NULL, + (GDBusArgInfo **) &_logind_manager_method_info_list_inhibitors_OUT_ARG_pointers, + NULL + }, + "handle-list-inhibitors", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg2 = +{ + { + -1, + (gchar *) "unnamed_arg2", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg3 = +{ + { + -1, + (gchar *) "unnamed_arg3", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg4 = +{ + { + -1, + (gchar *) "unnamed_arg4", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg5 = +{ + { + -1, + (gchar *) "unnamed_arg5", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg6 = +{ + { + -1, + (gchar *) "unnamed_arg6", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg7 = +{ + { + -1, + (gchar *) "unnamed_arg7", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg8 = +{ + { + -1, + (gchar *) "unnamed_arg8", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg9 = +{ + { + -1, + (gchar *) "unnamed_arg9", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg10 = +{ + { + -1, + (gchar *) "unnamed_arg10", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg11 = +{ + { + -1, + (gchar *) "unnamed_arg11", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg12 = +{ + { + -1, + (gchar *) "unnamed_arg12", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_IN_ARG_unnamed_arg13 = +{ + { + -1, + (gchar *) "unnamed_arg13", + (gchar *) "a(sv)", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_create_session_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg0, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg1, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg2, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg3, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg4, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg5, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg6, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg7, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg8, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg9, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg10, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg11, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg12, + &_logind_manager_method_info_create_session_IN_ARG_unnamed_arg13, + NULL +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_OUT_ARG_unnamed_arg14 = +{ + { + -1, + (gchar *) "unnamed_arg14", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_OUT_ARG_unnamed_arg15 = +{ + { + -1, + (gchar *) "unnamed_arg15", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_OUT_ARG_unnamed_arg16 = +{ + { + -1, + (gchar *) "unnamed_arg16", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_OUT_ARG_unnamed_arg17 = +{ + { + -1, + (gchar *) "unnamed_arg17", + (gchar *) "h", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_OUT_ARG_unnamed_arg18 = +{ + { + -1, + (gchar *) "unnamed_arg18", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_OUT_ARG_unnamed_arg19 = +{ + { + -1, + (gchar *) "unnamed_arg19", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_OUT_ARG_unnamed_arg20 = +{ + { + -1, + (gchar *) "unnamed_arg20", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_create_session_OUT_ARG_unnamed_arg21 = +{ + { + -1, + (gchar *) "unnamed_arg21", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_create_session_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_create_session_OUT_ARG_unnamed_arg14, + &_logind_manager_method_info_create_session_OUT_ARG_unnamed_arg15, + &_logind_manager_method_info_create_session_OUT_ARG_unnamed_arg16, + &_logind_manager_method_info_create_session_OUT_ARG_unnamed_arg17, + &_logind_manager_method_info_create_session_OUT_ARG_unnamed_arg18, + &_logind_manager_method_info_create_session_OUT_ARG_unnamed_arg19, + &_logind_manager_method_info_create_session_OUT_ARG_unnamed_arg20, + &_logind_manager_method_info_create_session_OUT_ARG_unnamed_arg21, + NULL +}; + +static const GDBusAnnotationInfo _logind_manager_method_create_session_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_create_session_annotation_info_pointers[] = +{ + &_logind_manager_method_create_session_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_create_session = +{ + { + -1, + (gchar *) "CreateSession", + (GDBusArgInfo **) &_logind_manager_method_info_create_session_IN_ARG_pointers, + (GDBusArgInfo **) &_logind_manager_method_info_create_session_OUT_ARG_pointers, + (GDBusAnnotationInfo **) &_logind_manager_method_create_session_annotation_info_pointers + }, + "handle-create-session", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_release_session_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_release_session_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_release_session_IN_ARG_unnamed_arg0, + NULL +}; + +static const GDBusAnnotationInfo _logind_manager_method_release_session_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_release_session_annotation_info_pointers[] = +{ + &_logind_manager_method_release_session_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_release_session = +{ + { + -1, + (gchar *) "ReleaseSession", + (GDBusArgInfo **) &_logind_manager_method_info_release_session_IN_ARG_pointers, + NULL, + (GDBusAnnotationInfo **) &_logind_manager_method_release_session_annotation_info_pointers + }, + "handle-release-session", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_activate_session_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_activate_session_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_activate_session_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_activate_session = +{ + { + -1, + (gchar *) "ActivateSession", + (GDBusArgInfo **) &_logind_manager_method_info_activate_session_IN_ARG_pointers, + NULL, + NULL + }, + "handle-activate-session", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_activate_session_on_seat_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_activate_session_on_seat_IN_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_activate_session_on_seat_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_activate_session_on_seat_IN_ARG_unnamed_arg0, + &_logind_manager_method_info_activate_session_on_seat_IN_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_activate_session_on_seat = +{ + { + -1, + (gchar *) "ActivateSessionOnSeat", + (GDBusArgInfo **) &_logind_manager_method_info_activate_session_on_seat_IN_ARG_pointers, + NULL, + NULL + }, + "handle-activate-session-on-seat", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_lock_session_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_lock_session_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_lock_session_IN_ARG_unnamed_arg0, + NULL +}; + +static const GDBusAnnotationInfo _logind_manager_method_lock_session_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_lock_session_annotation_info_pointers[] = +{ + &_logind_manager_method_lock_session_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_lock_session = +{ + { + -1, + (gchar *) "LockSession", + (GDBusArgInfo **) &_logind_manager_method_info_lock_session_IN_ARG_pointers, + NULL, + (GDBusAnnotationInfo **) &_logind_manager_method_lock_session_annotation_info_pointers + }, + "handle-lock-session", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_unlock_session_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_unlock_session_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_unlock_session_IN_ARG_unnamed_arg0, + NULL +}; + +static const GDBusAnnotationInfo _logind_manager_method_unlock_session_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_unlock_session_annotation_info_pointers[] = +{ + &_logind_manager_method_unlock_session_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_unlock_session = +{ + { + -1, + (gchar *) "UnlockSession", + (GDBusArgInfo **) &_logind_manager_method_info_unlock_session_IN_ARG_pointers, + NULL, + (GDBusAnnotationInfo **) &_logind_manager_method_unlock_session_annotation_info_pointers + }, + "handle-unlock-session", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_method_lock_sessions_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_lock_sessions_annotation_info_pointers[] = +{ + &_logind_manager_method_lock_sessions_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_lock_sessions = +{ + { + -1, + (gchar *) "LockSessions", + NULL, + NULL, + (GDBusAnnotationInfo **) &_logind_manager_method_lock_sessions_annotation_info_pointers + }, + "handle-lock-sessions", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_method_unlock_sessions_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_unlock_sessions_annotation_info_pointers[] = +{ + &_logind_manager_method_unlock_sessions_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_unlock_sessions = +{ + { + -1, + (gchar *) "UnlockSessions", + NULL, + NULL, + (GDBusAnnotationInfo **) &_logind_manager_method_unlock_sessions_annotation_info_pointers + }, + "handle-unlock-sessions", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_kill_session_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_kill_session_IN_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_kill_session_IN_ARG_unnamed_arg2 = +{ + { + -1, + (gchar *) "unnamed_arg2", + (gchar *) "i", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_kill_session_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_kill_session_IN_ARG_unnamed_arg0, + &_logind_manager_method_info_kill_session_IN_ARG_unnamed_arg1, + &_logind_manager_method_info_kill_session_IN_ARG_unnamed_arg2, + NULL +}; + +static const GDBusAnnotationInfo _logind_manager_method_kill_session_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_kill_session_annotation_info_pointers[] = +{ + &_logind_manager_method_kill_session_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_kill_session = +{ + { + -1, + (gchar *) "KillSession", + (GDBusArgInfo **) &_logind_manager_method_info_kill_session_IN_ARG_pointers, + NULL, + (GDBusAnnotationInfo **) &_logind_manager_method_kill_session_annotation_info_pointers + }, + "handle-kill-session", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_kill_user_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_kill_user_IN_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "i", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_kill_user_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_kill_user_IN_ARG_unnamed_arg0, + &_logind_manager_method_info_kill_user_IN_ARG_unnamed_arg1, + NULL +}; + +static const GDBusAnnotationInfo _logind_manager_method_kill_user_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_kill_user_annotation_info_pointers[] = +{ + &_logind_manager_method_kill_user_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_kill_user = +{ + { + -1, + (gchar *) "KillUser", + (GDBusArgInfo **) &_logind_manager_method_info_kill_user_IN_ARG_pointers, + NULL, + (GDBusAnnotationInfo **) &_logind_manager_method_kill_user_annotation_info_pointers + }, + "handle-kill-user", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_terminate_session_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_terminate_session_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_terminate_session_IN_ARG_unnamed_arg0, + NULL +}; + +static const GDBusAnnotationInfo _logind_manager_method_terminate_session_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_terminate_session_annotation_info_pointers[] = +{ + &_logind_manager_method_terminate_session_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_terminate_session = +{ + { + -1, + (gchar *) "TerminateSession", + (GDBusArgInfo **) &_logind_manager_method_info_terminate_session_IN_ARG_pointers, + NULL, + (GDBusAnnotationInfo **) &_logind_manager_method_terminate_session_annotation_info_pointers + }, + "handle-terminate-session", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_terminate_user_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_terminate_user_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_terminate_user_IN_ARG_unnamed_arg0, + NULL +}; + +static const GDBusAnnotationInfo _logind_manager_method_terminate_user_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_terminate_user_annotation_info_pointers[] = +{ + &_logind_manager_method_terminate_user_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_terminate_user = +{ + { + -1, + (gchar *) "TerminateUser", + (GDBusArgInfo **) &_logind_manager_method_info_terminate_user_IN_ARG_pointers, + NULL, + (GDBusAnnotationInfo **) &_logind_manager_method_terminate_user_annotation_info_pointers + }, + "handle-terminate-user", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_terminate_seat_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_terminate_seat_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_terminate_seat_IN_ARG_unnamed_arg0, + NULL +}; + +static const GDBusAnnotationInfo _logind_manager_method_terminate_seat_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.systemd1.Privileged", + (gchar *) "true", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_method_terminate_seat_annotation_info_pointers[] = +{ + &_logind_manager_method_terminate_seat_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_terminate_seat = +{ + { + -1, + (gchar *) "TerminateSeat", + (GDBusArgInfo **) &_logind_manager_method_info_terminate_seat_IN_ARG_pointers, + NULL, + (GDBusAnnotationInfo **) &_logind_manager_method_terminate_seat_annotation_info_pointers + }, + "handle-terminate-seat", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_set_user_linger_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_set_user_linger_IN_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_set_user_linger_IN_ARG_unnamed_arg2 = +{ + { + -1, + (gchar *) "unnamed_arg2", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_set_user_linger_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_set_user_linger_IN_ARG_unnamed_arg0, + &_logind_manager_method_info_set_user_linger_IN_ARG_unnamed_arg1, + &_logind_manager_method_info_set_user_linger_IN_ARG_unnamed_arg2, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_set_user_linger = +{ + { + -1, + (gchar *) "SetUserLinger", + (GDBusArgInfo **) &_logind_manager_method_info_set_user_linger_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-user-linger", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_attach_device_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_attach_device_IN_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_attach_device_IN_ARG_unnamed_arg2 = +{ + { + -1, + (gchar *) "unnamed_arg2", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_attach_device_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_attach_device_IN_ARG_unnamed_arg0, + &_logind_manager_method_info_attach_device_IN_ARG_unnamed_arg1, + &_logind_manager_method_info_attach_device_IN_ARG_unnamed_arg2, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_attach_device = +{ + { + -1, + (gchar *) "AttachDevice", + (GDBusArgInfo **) &_logind_manager_method_info_attach_device_IN_ARG_pointers, + NULL, + NULL + }, + "handle-attach-device", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_flush_devices_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_flush_devices_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_flush_devices_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_flush_devices = +{ + { + -1, + (gchar *) "FlushDevices", + (GDBusArgInfo **) &_logind_manager_method_info_flush_devices_IN_ARG_pointers, + NULL, + NULL + }, + "handle-flush-devices", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_power_off_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_power_off_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_power_off_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_power_off = +{ + { + -1, + (gchar *) "PowerOff", + (GDBusArgInfo **) &_logind_manager_method_info_power_off_IN_ARG_pointers, + NULL, + NULL + }, + "handle-power-off", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_reboot_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_reboot_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_reboot_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_reboot = +{ + { + -1, + (gchar *) "Reboot", + (GDBusArgInfo **) &_logind_manager_method_info_reboot_IN_ARG_pointers, + NULL, + NULL + }, + "handle-reboot", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_suspend_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_suspend_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_suspend_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_suspend = +{ + { + -1, + (gchar *) "Suspend", + (GDBusArgInfo **) &_logind_manager_method_info_suspend_IN_ARG_pointers, + NULL, + NULL + }, + "handle-suspend", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_hibernate_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_hibernate_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_hibernate_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_hibernate = +{ + { + -1, + (gchar *) "Hibernate", + (GDBusArgInfo **) &_logind_manager_method_info_hibernate_IN_ARG_pointers, + NULL, + NULL + }, + "handle-hibernate", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_hybrid_sleep_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_hybrid_sleep_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_hybrid_sleep_IN_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_hybrid_sleep = +{ + { + -1, + (gchar *) "HybridSleep", + (GDBusArgInfo **) &_logind_manager_method_info_hybrid_sleep_IN_ARG_pointers, + NULL, + NULL + }, + "handle-hybrid-sleep", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_can_power_off_OUT_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_can_power_off_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_can_power_off_OUT_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_can_power_off = +{ + { + -1, + (gchar *) "CanPowerOff", + NULL, + (GDBusArgInfo **) &_logind_manager_method_info_can_power_off_OUT_ARG_pointers, + NULL + }, + "handle-can-power-off", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_can_reboot_OUT_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_can_reboot_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_can_reboot_OUT_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_can_reboot = +{ + { + -1, + (gchar *) "CanReboot", + NULL, + (GDBusArgInfo **) &_logind_manager_method_info_can_reboot_OUT_ARG_pointers, + NULL + }, + "handle-can-reboot", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_can_suspend_OUT_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_can_suspend_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_can_suspend_OUT_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_can_suspend = +{ + { + -1, + (gchar *) "CanSuspend", + NULL, + (GDBusArgInfo **) &_logind_manager_method_info_can_suspend_OUT_ARG_pointers, + NULL + }, + "handle-can-suspend", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_can_hibernate_OUT_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_can_hibernate_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_can_hibernate_OUT_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_can_hibernate = +{ + { + -1, + (gchar *) "CanHibernate", + NULL, + (GDBusArgInfo **) &_logind_manager_method_info_can_hibernate_OUT_ARG_pointers, + NULL + }, + "handle-can-hibernate", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_can_hybrid_sleep_OUT_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_can_hybrid_sleep_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_can_hybrid_sleep_OUT_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_can_hybrid_sleep = +{ + { + -1, + (gchar *) "CanHybridSleep", + NULL, + (GDBusArgInfo **) &_logind_manager_method_info_can_hybrid_sleep_OUT_ARG_pointers, + NULL + }, + "handle-can-hybrid-sleep", + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_inhibit_IN_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_inhibit_IN_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_inhibit_IN_ARG_unnamed_arg2 = +{ + { + -1, + (gchar *) "unnamed_arg2", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_inhibit_IN_ARG_unnamed_arg3 = +{ + { + -1, + (gchar *) "unnamed_arg3", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_inhibit_IN_ARG_pointers[] = +{ + &_logind_manager_method_info_inhibit_IN_ARG_unnamed_arg0, + &_logind_manager_method_info_inhibit_IN_ARG_unnamed_arg1, + &_logind_manager_method_info_inhibit_IN_ARG_unnamed_arg2, + &_logind_manager_method_info_inhibit_IN_ARG_unnamed_arg3, + NULL +}; + +static const _ExtendedGDBusArgInfo _logind_manager_method_info_inhibit_OUT_ARG_unnamed_arg4 = +{ + { + -1, + (gchar *) "unnamed_arg4", + (gchar *) "h", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_method_info_inhibit_OUT_ARG_pointers[] = +{ + &_logind_manager_method_info_inhibit_OUT_ARG_unnamed_arg4, + NULL +}; + +static const _ExtendedGDBusMethodInfo _logind_manager_method_info_inhibit = +{ + { + -1, + (gchar *) "Inhibit", + (GDBusArgInfo **) &_logind_manager_method_info_inhibit_IN_ARG_pointers, + (GDBusArgInfo **) &_logind_manager_method_info_inhibit_OUT_ARG_pointers, + NULL + }, + "handle-inhibit", + FALSE +}; + +static const _ExtendedGDBusMethodInfo * const _logind_manager_method_info_pointers[] = +{ + &_logind_manager_method_info_get_session, + &_logind_manager_method_info_get_session_by_pid, + &_logind_manager_method_info_get_user, + &_logind_manager_method_info_get_user_by_pid, + &_logind_manager_method_info_get_seat, + &_logind_manager_method_info_list_sessions, + &_logind_manager_method_info_list_users, + &_logind_manager_method_info_list_seats, + &_logind_manager_method_info_list_inhibitors, + &_logind_manager_method_info_create_session, + &_logind_manager_method_info_release_session, + &_logind_manager_method_info_activate_session, + &_logind_manager_method_info_activate_session_on_seat, + &_logind_manager_method_info_lock_session, + &_logind_manager_method_info_unlock_session, + &_logind_manager_method_info_lock_sessions, + &_logind_manager_method_info_unlock_sessions, + &_logind_manager_method_info_kill_session, + &_logind_manager_method_info_kill_user, + &_logind_manager_method_info_terminate_session, + &_logind_manager_method_info_terminate_user, + &_logind_manager_method_info_terminate_seat, + &_logind_manager_method_info_set_user_linger, + &_logind_manager_method_info_attach_device, + &_logind_manager_method_info_flush_devices, + &_logind_manager_method_info_power_off, + &_logind_manager_method_info_reboot, + &_logind_manager_method_info_suspend, + &_logind_manager_method_info_hibernate, + &_logind_manager_method_info_hybrid_sleep, + &_logind_manager_method_info_can_power_off, + &_logind_manager_method_info_can_reboot, + &_logind_manager_method_info_can_suspend, + &_logind_manager_method_info_can_hibernate, + &_logind_manager_method_info_can_hybrid_sleep, + &_logind_manager_method_info_inhibit, + NULL +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_session_new_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_session_new_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_signal_info_session_new_ARG_pointers[] = +{ + &_logind_manager_signal_info_session_new_ARG_unnamed_arg0, + &_logind_manager_signal_info_session_new_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusSignalInfo _logind_manager_signal_info_session_new = +{ + { + -1, + (gchar *) "SessionNew", + (GDBusArgInfo **) &_logind_manager_signal_info_session_new_ARG_pointers, + NULL + }, + "session-new" +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_session_removed_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_session_removed_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_signal_info_session_removed_ARG_pointers[] = +{ + &_logind_manager_signal_info_session_removed_ARG_unnamed_arg0, + &_logind_manager_signal_info_session_removed_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusSignalInfo _logind_manager_signal_info_session_removed = +{ + { + -1, + (gchar *) "SessionRemoved", + (GDBusArgInfo **) &_logind_manager_signal_info_session_removed_ARG_pointers, + NULL + }, + "session-removed" +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_user_new_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_user_new_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_signal_info_user_new_ARG_pointers[] = +{ + &_logind_manager_signal_info_user_new_ARG_unnamed_arg0, + &_logind_manager_signal_info_user_new_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusSignalInfo _logind_manager_signal_info_user_new = +{ + { + -1, + (gchar *) "UserNew", + (GDBusArgInfo **) &_logind_manager_signal_info_user_new_ARG_pointers, + NULL + }, + "user-new" +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_user_removed_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "u", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_user_removed_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_signal_info_user_removed_ARG_pointers[] = +{ + &_logind_manager_signal_info_user_removed_ARG_unnamed_arg0, + &_logind_manager_signal_info_user_removed_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusSignalInfo _logind_manager_signal_info_user_removed = +{ + { + -1, + (gchar *) "UserRemoved", + (GDBusArgInfo **) &_logind_manager_signal_info_user_removed_ARG_pointers, + NULL + }, + "user-removed" +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_seat_new_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_seat_new_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_signal_info_seat_new_ARG_pointers[] = +{ + &_logind_manager_signal_info_seat_new_ARG_unnamed_arg0, + &_logind_manager_signal_info_seat_new_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusSignalInfo _logind_manager_signal_info_seat_new = +{ + { + -1, + (gchar *) "SeatNew", + (GDBusArgInfo **) &_logind_manager_signal_info_seat_new_ARG_pointers, + NULL + }, + "seat-new" +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_seat_removed_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_seat_removed_ARG_unnamed_arg1 = +{ + { + -1, + (gchar *) "unnamed_arg1", + (gchar *) "o", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_signal_info_seat_removed_ARG_pointers[] = +{ + &_logind_manager_signal_info_seat_removed_ARG_unnamed_arg0, + &_logind_manager_signal_info_seat_removed_ARG_unnamed_arg1, + NULL +}; + +static const _ExtendedGDBusSignalInfo _logind_manager_signal_info_seat_removed = +{ + { + -1, + (gchar *) "SeatRemoved", + (GDBusArgInfo **) &_logind_manager_signal_info_seat_removed_ARG_pointers, + NULL + }, + "seat-removed" +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_prepare_for_shutdown_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_signal_info_prepare_for_shutdown_ARG_pointers[] = +{ + &_logind_manager_signal_info_prepare_for_shutdown_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusSignalInfo _logind_manager_signal_info_prepare_for_shutdown = +{ + { + -1, + (gchar *) "PrepareForShutdown", + (GDBusArgInfo **) &_logind_manager_signal_info_prepare_for_shutdown_ARG_pointers, + NULL + }, + "prepare-for-shutdown" +}; + +static const _ExtendedGDBusArgInfo _logind_manager_signal_info_prepare_for_sleep_ARG_unnamed_arg0 = +{ + { + -1, + (gchar *) "unnamed_arg0", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _logind_manager_signal_info_prepare_for_sleep_ARG_pointers[] = +{ + &_logind_manager_signal_info_prepare_for_sleep_ARG_unnamed_arg0, + NULL +}; + +static const _ExtendedGDBusSignalInfo _logind_manager_signal_info_prepare_for_sleep = +{ + { + -1, + (gchar *) "PrepareForSleep", + (GDBusArgInfo **) &_logind_manager_signal_info_prepare_for_sleep_ARG_pointers, + NULL + }, + "prepare-for-sleep" +}; + +static const _ExtendedGDBusSignalInfo * const _logind_manager_signal_info_pointers[] = +{ + &_logind_manager_signal_info_session_new, + &_logind_manager_signal_info_session_removed, + &_logind_manager_signal_info_user_new, + &_logind_manager_signal_info_user_removed, + &_logind_manager_signal_info_seat_new, + &_logind_manager_signal_info_seat_removed, + &_logind_manager_signal_info_prepare_for_shutdown, + &_logind_manager_signal_info_prepare_for_sleep, + NULL +}; + +static const GDBusAnnotationInfo _logind_manager_property_nauto_vts_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_nauto_vts_annotation_info_pointers[] = +{ + &_logind_manager_property_nauto_vts_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_nauto_vts = +{ + { + -1, + (gchar *) "NAutoVTs", + (gchar *) "u", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_nauto_vts_annotation_info_pointers + }, + "nauto-vts", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_kill_only_users_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_kill_only_users_annotation_info_pointers[] = +{ + &_logind_manager_property_kill_only_users_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_kill_only_users = +{ + { + -1, + (gchar *) "KillOnlyUsers", + (gchar *) "as", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_kill_only_users_annotation_info_pointers + }, + "kill-only-users", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_kill_exclude_users_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_kill_exclude_users_annotation_info_pointers[] = +{ + &_logind_manager_property_kill_exclude_users_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_kill_exclude_users = +{ + { + -1, + (gchar *) "KillExcludeUsers", + (gchar *) "as", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_kill_exclude_users_annotation_info_pointers + }, + "kill-exclude-users", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_kill_user_processes_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_kill_user_processes_annotation_info_pointers[] = +{ + &_logind_manager_property_kill_user_processes_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_kill_user_processes = +{ + { + -1, + (gchar *) "KillUserProcesses", + (gchar *) "b", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_kill_user_processes_annotation_info_pointers + }, + "kill-user-processes", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_idle_hint = +{ + { + -1, + (gchar *) "IdleHint", + (gchar *) "b", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "idle-hint", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_idle_since_hint = +{ + { + -1, + (gchar *) "IdleSinceHint", + (gchar *) "t", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "idle-since-hint", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_idle_since_hint_monotonic = +{ + { + -1, + (gchar *) "IdleSinceHintMonotonic", + (gchar *) "t", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "idle-since-hint-monotonic", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_block_inhibited = +{ + { + -1, + (gchar *) "BlockInhibited", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "block-inhibited", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_delay_inhibited = +{ + { + -1, + (gchar *) "DelayInhibited", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "delay-inhibited", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_inhibit_delay_max_usec_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_inhibit_delay_max_usec_annotation_info_pointers[] = +{ + &_logind_manager_property_inhibit_delay_max_usec_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_inhibit_delay_max_usec = +{ + { + -1, + (gchar *) "InhibitDelayMaxUSec", + (gchar *) "t", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_inhibit_delay_max_usec_annotation_info_pointers + }, + "inhibit-delay-max-usec", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_handle_power_key_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_handle_power_key_annotation_info_pointers[] = +{ + &_logind_manager_property_handle_power_key_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_handle_power_key = +{ + { + -1, + (gchar *) "HandlePowerKey", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_handle_power_key_annotation_info_pointers + }, + "handle-power-key", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_handle_suspend_key_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_handle_suspend_key_annotation_info_pointers[] = +{ + &_logind_manager_property_handle_suspend_key_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_handle_suspend_key = +{ + { + -1, + (gchar *) "HandleSuspendKey", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_handle_suspend_key_annotation_info_pointers + }, + "handle-suspend-key", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_handle_hibernate_key_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_handle_hibernate_key_annotation_info_pointers[] = +{ + &_logind_manager_property_handle_hibernate_key_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_handle_hibernate_key = +{ + { + -1, + (gchar *) "HandleHibernateKey", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_handle_hibernate_key_annotation_info_pointers + }, + "handle-hibernate-key", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_handle_lid_switch_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_handle_lid_switch_annotation_info_pointers[] = +{ + &_logind_manager_property_handle_lid_switch_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_handle_lid_switch = +{ + { + -1, + (gchar *) "HandleLidSwitch", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_handle_lid_switch_annotation_info_pointers + }, + "handle-lid-switch", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_idle_action_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_idle_action_annotation_info_pointers[] = +{ + &_logind_manager_property_idle_action_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_idle_action = +{ + { + -1, + (gchar *) "IdleAction", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_idle_action_annotation_info_pointers + }, + "idle-action", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_idle_action_usec_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "const", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_idle_action_usec_annotation_info_pointers[] = +{ + &_logind_manager_property_idle_action_usec_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_idle_action_usec = +{ + { + -1, + (gchar *) "IdleActionUSec", + (gchar *) "t", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_idle_action_usec_annotation_info_pointers + }, + "idle-action-usec", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_preparing_for_shutdown_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "false", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_preparing_for_shutdown_annotation_info_pointers[] = +{ + &_logind_manager_property_preparing_for_shutdown_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_preparing_for_shutdown = +{ + { + -1, + (gchar *) "PreparingForShutdown", + (gchar *) "b", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_preparing_for_shutdown_annotation_info_pointers + }, + "preparing-for-shutdown", + FALSE +}; + +static const GDBusAnnotationInfo _logind_manager_property_preparing_for_sleep_annotation_info_0 = +{ + -1, + (gchar *) "org.freedesktop.DBus.Property.EmitsChangedSignal", + (gchar *) "false", + NULL +}; + +static const GDBusAnnotationInfo * const _logind_manager_property_preparing_for_sleep_annotation_info_pointers[] = +{ + &_logind_manager_property_preparing_for_sleep_annotation_info_0, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _logind_manager_property_info_preparing_for_sleep = +{ + { + -1, + (gchar *) "PreparingForSleep", + (gchar *) "b", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + (GDBusAnnotationInfo **) &_logind_manager_property_preparing_for_sleep_annotation_info_pointers + }, + "preparing-for-sleep", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo * const _logind_manager_property_info_pointers[] = +{ + &_logind_manager_property_info_nauto_vts, + &_logind_manager_property_info_kill_only_users, + &_logind_manager_property_info_kill_exclude_users, + &_logind_manager_property_info_kill_user_processes, + &_logind_manager_property_info_idle_hint, + &_logind_manager_property_info_idle_since_hint, + &_logind_manager_property_info_idle_since_hint_monotonic, + &_logind_manager_property_info_block_inhibited, + &_logind_manager_property_info_delay_inhibited, + &_logind_manager_property_info_inhibit_delay_max_usec, + &_logind_manager_property_info_handle_power_key, + &_logind_manager_property_info_handle_suspend_key, + &_logind_manager_property_info_handle_hibernate_key, + &_logind_manager_property_info_handle_lid_switch, + &_logind_manager_property_info_idle_action, + &_logind_manager_property_info_idle_action_usec, + &_logind_manager_property_info_preparing_for_shutdown, + &_logind_manager_property_info_preparing_for_sleep, + NULL +}; + +static const _ExtendedGDBusInterfaceInfo _logind_manager_interface_info = +{ + { + -1, + (gchar *) "org.freedesktop.login1.Manager", + (GDBusMethodInfo **) &_logind_manager_method_info_pointers, + (GDBusSignalInfo **) &_logind_manager_signal_info_pointers, + (GDBusPropertyInfo **) &_logind_manager_property_info_pointers, + NULL + }, + "manager", +}; + + +/** + * logind_manager_interface_info: + * + * Gets a machine-readable description of the <link linkend="gdbus-interface-org-freedesktop-login1-Manager.top_of_page">org.freedesktop.login1.Manager</link> D-Bus interface. + * + * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. + */ +GDBusInterfaceInfo * +logind_manager_interface_info (void) +{ + return (GDBusInterfaceInfo *) &_logind_manager_interface_info.parent_struct; +} + +/** + * logind_manager_override_properties: + * @klass: The class structure for a #GObject<!-- -->-derived class. + * @property_id_begin: The property id to assign to the first overridden property. + * + * Overrides all #GObject properties in the #LogindManager interface for a concrete class. + * The properties are overridden in the order they are defined. + * + * Returns: The last property id. + */ +guint +logind_manager_override_properties (GObjectClass *klass, guint property_id_begin) +{ + g_object_class_override_property (klass, property_id_begin++, "nauto-vts"); + g_object_class_override_property (klass, property_id_begin++, "kill-only-users"); + g_object_class_override_property (klass, property_id_begin++, "kill-exclude-users"); + g_object_class_override_property (klass, property_id_begin++, "kill-user-processes"); + g_object_class_override_property (klass, property_id_begin++, "idle-hint"); + g_object_class_override_property (klass, property_id_begin++, "idle-since-hint"); + g_object_class_override_property (klass, property_id_begin++, "idle-since-hint-monotonic"); + g_object_class_override_property (klass, property_id_begin++, "block-inhibited"); + g_object_class_override_property (klass, property_id_begin++, "delay-inhibited"); + g_object_class_override_property (klass, property_id_begin++, "inhibit-delay-max-usec"); + g_object_class_override_property (klass, property_id_begin++, "handle-power-key"); + g_object_class_override_property (klass, property_id_begin++, "handle-suspend-key"); + g_object_class_override_property (klass, property_id_begin++, "handle-hibernate-key"); + g_object_class_override_property (klass, property_id_begin++, "handle-lid-switch"); + g_object_class_override_property (klass, property_id_begin++, "idle-action"); + g_object_class_override_property (klass, property_id_begin++, "idle-action-usec"); + g_object_class_override_property (klass, property_id_begin++, "preparing-for-shutdown"); + g_object_class_override_property (klass, property_id_begin++, "preparing-for-sleep"); + return property_id_begin - 1; +} + + + +/** + * LogindManager: + * + * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-login1-Manager.top_of_page">org.freedesktop.login1.Manager</link>. + */ + +/** + * LogindManagerIface: + * @parent_iface: The parent interface. + * @handle_activate_session: Handler for the #LogindManager::handle-activate-session signal. + * @handle_activate_session_on_seat: Handler for the #LogindManager::handle-activate-session-on-seat signal. + * @handle_attach_device: Handler for the #LogindManager::handle-attach-device signal. + * @handle_can_hibernate: Handler for the #LogindManager::handle-can-hibernate signal. + * @handle_can_hybrid_sleep: Handler for the #LogindManager::handle-can-hybrid-sleep signal. + * @handle_can_power_off: Handler for the #LogindManager::handle-can-power-off signal. + * @handle_can_reboot: Handler for the #LogindManager::handle-can-reboot signal. + * @handle_can_suspend: Handler for the #LogindManager::handle-can-suspend signal. + * @handle_create_session: Handler for the #LogindManager::handle-create-session signal. + * @handle_flush_devices: Handler for the #LogindManager::handle-flush-devices signal. + * @handle_get_seat: Handler for the #LogindManager::handle-get-seat signal. + * @handle_get_session: Handler for the #LogindManager::handle-get-session signal. + * @handle_get_session_by_pid: Handler for the #LogindManager::handle-get-session-by-pid signal. + * @handle_get_user: Handler for the #LogindManager::handle-get-user signal. + * @handle_get_user_by_pid: Handler for the #LogindManager::handle-get-user-by-pid signal. + * @handle_hibernate: Handler for the #LogindManager::handle-hibernate signal. + * @handle_hybrid_sleep: Handler for the #LogindManager::handle-hybrid-sleep signal. + * @handle_inhibit: Handler for the #LogindManager::handle-inhibit signal. + * @handle_kill_session: Handler for the #LogindManager::handle-kill-session signal. + * @handle_kill_user: Handler for the #LogindManager::handle-kill-user signal. + * @handle_list_inhibitors: Handler for the #LogindManager::handle-list-inhibitors signal. + * @handle_list_seats: Handler for the #LogindManager::handle-list-seats signal. + * @handle_list_sessions: Handler for the #LogindManager::handle-list-sessions signal. + * @handle_list_users: Handler for the #LogindManager::handle-list-users signal. + * @handle_lock_session: Handler for the #LogindManager::handle-lock-session signal. + * @handle_lock_sessions: Handler for the #LogindManager::handle-lock-sessions signal. + * @handle_power_off: Handler for the #LogindManager::handle-power-off signal. + * @handle_reboot: Handler for the #LogindManager::handle-reboot signal. + * @handle_release_session: Handler for the #LogindManager::handle-release-session signal. + * @handle_set_user_linger: Handler for the #LogindManager::handle-set-user-linger signal. + * @handle_suspend: Handler for the #LogindManager::handle-suspend signal. + * @handle_terminate_seat: Handler for the #LogindManager::handle-terminate-seat signal. + * @handle_terminate_session: Handler for the #LogindManager::handle-terminate-session signal. + * @handle_terminate_user: Handler for the #LogindManager::handle-terminate-user signal. + * @handle_unlock_session: Handler for the #LogindManager::handle-unlock-session signal. + * @handle_unlock_sessions: Handler for the #LogindManager::handle-unlock-sessions signal. + * @get_block_inhibited: Getter for the #LogindManager:block-inhibited property. + * @get_delay_inhibited: Getter for the #LogindManager:delay-inhibited property. + * @get_handle_hibernate_key: Getter for the #LogindManager:handle-hibernate-key property. + * @get_handle_lid_switch: Getter for the #LogindManager:handle-lid-switch property. + * @get_handle_power_key: Getter for the #LogindManager:handle-power-key property. + * @get_handle_suspend_key: Getter for the #LogindManager:handle-suspend-key property. + * @get_idle_action: Getter for the #LogindManager:idle-action property. + * @get_idle_action_usec: Getter for the #LogindManager:idle-action-usec property. + * @get_idle_hint: Getter for the #LogindManager:idle-hint property. + * @get_idle_since_hint: Getter for the #LogindManager:idle-since-hint property. + * @get_idle_since_hint_monotonic: Getter for the #LogindManager:idle-since-hint-monotonic property. + * @get_inhibit_delay_max_usec: Getter for the #LogindManager:inhibit-delay-max-usec property. + * @get_kill_exclude_users: Getter for the #LogindManager:kill-exclude-users property. + * @get_kill_only_users: Getter for the #LogindManager:kill-only-users property. + * @get_kill_user_processes: Getter for the #LogindManager:kill-user-processes property. + * @get_nauto_vts: Getter for the #LogindManager:nauto-vts property. + * @get_preparing_for_shutdown: Getter for the #LogindManager:preparing-for-shutdown property. + * @get_preparing_for_sleep: Getter for the #LogindManager:preparing-for-sleep property. + * @prepare_for_shutdown: Handler for the #LogindManager::prepare-for-shutdown signal. + * @prepare_for_sleep: Handler for the #LogindManager::prepare-for-sleep signal. + * @seat_new: Handler for the #LogindManager::seat-new signal. + * @seat_removed: Handler for the #LogindManager::seat-removed signal. + * @session_new: Handler for the #LogindManager::session-new signal. + * @session_removed: Handler for the #LogindManager::session-removed signal. + * @user_new: Handler for the #LogindManager::user-new signal. + * @user_removed: Handler for the #LogindManager::user-removed signal. + * + * Virtual table for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-login1-Manager.top_of_page">org.freedesktop.login1.Manager</link>. + */ + +typedef LogindManagerIface LogindManagerInterface; +G_DEFINE_INTERFACE (LogindManager, logind_manager, G_TYPE_OBJECT); + +static void +logind_manager_default_init (LogindManagerIface *iface) +{ + /* GObject signals for incoming D-Bus method calls: */ + /** + * LogindManager::handle-get-session: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSession">GetSession()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_get_session() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-get-session", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_get_session), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); + + /** + * LogindManager::handle-get-session-by-pid: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSessionByPID">GetSessionByPID()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_get_session_by_pid() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-get-session-by-pid", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_get_session_by_pid), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT); + + /** + * LogindManager::handle-get-user: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetUser">GetUser()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_get_user() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-get-user", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_get_user), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT); + + /** + * LogindManager::handle-get-user-by-pid: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetUserByPID">GetUserByPID()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_get_user_by_pid() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-get-user-by-pid", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_get_user_by_pid), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT); + + /** + * LogindManager::handle-get-seat: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSeat">GetSeat()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_get_seat() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-get-seat", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_get_seat), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); + + /** + * LogindManager::handle-list-sessions: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListSessions">ListSessions()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_list_sessions() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-list-sessions", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_list_sessions), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-list-users: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListUsers">ListUsers()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_list_users() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-list-users", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_list_users), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-list-seats: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListSeats">ListSeats()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_list_seats() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-list-seats", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_list_seats), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-list-inhibitors: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListInhibitors">ListInhibitors()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_list_inhibitors() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-list-inhibitors", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_list_inhibitors), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-create-session: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * @arg_unnamed_arg1: Argument passed by remote caller. + * @arg_unnamed_arg2: Argument passed by remote caller. + * @arg_unnamed_arg3: Argument passed by remote caller. + * @arg_unnamed_arg4: Argument passed by remote caller. + * @arg_unnamed_arg5: Argument passed by remote caller. + * @arg_unnamed_arg6: Argument passed by remote caller. + * @arg_unnamed_arg7: Argument passed by remote caller. + * @arg_unnamed_arg8: Argument passed by remote caller. + * @arg_unnamed_arg9: Argument passed by remote caller. + * @arg_unnamed_arg10: Argument passed by remote caller. + * @arg_unnamed_arg11: Argument passed by remote caller. + * @arg_unnamed_arg12: Argument passed by remote caller. + * @arg_unnamed_arg13: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CreateSession">CreateSession()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_create_session() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-create-session", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_create_session), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 15, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_UINT, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_VARIANT); + + /** + * LogindManager::handle-release-session: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ReleaseSession">ReleaseSession()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_release_session() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-release-session", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_release_session), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); + + /** + * LogindManager::handle-activate-session: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ActivateSession">ActivateSession()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_activate_session() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-activate-session", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_activate_session), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); + + /** + * LogindManager::handle-activate-session-on-seat: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * @arg_unnamed_arg1: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ActivateSessionOnSeat">ActivateSessionOnSeat()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_activate_session_on_seat() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-activate-session-on-seat", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_activate_session_on_seat), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 3, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_STRING); + + /** + * LogindManager::handle-lock-session: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.LockSession">LockSession()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_lock_session() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-lock-session", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_lock_session), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); + + /** + * LogindManager::handle-unlock-session: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.UnlockSession">UnlockSession()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_unlock_session() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-unlock-session", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_unlock_session), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); + + /** + * LogindManager::handle-lock-sessions: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.LockSessions">LockSessions()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_lock_sessions() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-lock-sessions", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_lock_sessions), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-unlock-sessions: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.UnlockSessions">UnlockSessions()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_unlock_sessions() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-unlock-sessions", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_unlock_sessions), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-kill-session: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * @arg_unnamed_arg1: Argument passed by remote caller. + * @arg_unnamed_arg2: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.KillSession">KillSession()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_kill_session() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-kill-session", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_kill_session), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 4, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT); + + /** + * LogindManager::handle-kill-user: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * @arg_unnamed_arg1: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.KillUser">KillUser()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_kill_user() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-kill-user", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_kill_user), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 3, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT, G_TYPE_INT); + + /** + * LogindManager::handle-terminate-session: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateSession">TerminateSession()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_terminate_session() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-terminate-session", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_terminate_session), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); + + /** + * LogindManager::handle-terminate-user: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateUser">TerminateUser()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_terminate_user() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-terminate-user", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_terminate_user), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT); + + /** + * LogindManager::handle-terminate-seat: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateSeat">TerminateSeat()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_terminate_seat() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-terminate-seat", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_terminate_seat), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); + + /** + * LogindManager::handle-set-user-linger: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * @arg_unnamed_arg1: Argument passed by remote caller. + * @arg_unnamed_arg2: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.SetUserLinger">SetUserLinger()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_set_user_linger() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-user-linger", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_set_user_linger), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 4, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN); + + /** + * LogindManager::handle-attach-device: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * @arg_unnamed_arg1: Argument passed by remote caller. + * @arg_unnamed_arg2: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.AttachDevice">AttachDevice()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_attach_device() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-attach-device", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_attach_device), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 4, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN); + + /** + * LogindManager::handle-flush-devices: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.FlushDevices">FlushDevices()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_flush_devices() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-flush-devices", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_flush_devices), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN); + + /** + * LogindManager::handle-power-off: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.PowerOff">PowerOff()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_power_off() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-power-off", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_power_off), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN); + + /** + * LogindManager::handle-reboot: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Reboot">Reboot()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_reboot() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-reboot", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_reboot), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN); + + /** + * LogindManager::handle-suspend: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Suspend">Suspend()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_suspend() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-suspend", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_suspend), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN); + + /** + * LogindManager::handle-hibernate: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Hibernate">Hibernate()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_hibernate() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-hibernate", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_hibernate), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN); + + /** + * LogindManager::handle-hybrid-sleep: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.HybridSleep">HybridSleep()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_hybrid_sleep() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-hybrid-sleep", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_hybrid_sleep), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 2, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN); + + /** + * LogindManager::handle-can-power-off: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanPowerOff">CanPowerOff()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_can_power_off() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-can-power-off", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_can_power_off), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-can-reboot: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanReboot">CanReboot()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_can_reboot() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-can-reboot", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_can_reboot), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-can-suspend: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanSuspend">CanSuspend()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_can_suspend() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-can-suspend", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_can_suspend), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-can-hibernate: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanHibernate">CanHibernate()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_can_hibernate() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-can-hibernate", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_can_hibernate), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-can-hybrid-sleep: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanHybridSleep">CanHybridSleep()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_can_hybrid_sleep() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-can-hybrid-sleep", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_can_hybrid_sleep), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 1, + G_TYPE_DBUS_METHOD_INVOCATION); + + /** + * LogindManager::handle-inhibit: + * @object: A #LogindManager. + * @invocation: A #GDBusMethodInvocation. + * @arg_unnamed_arg0: Argument passed by remote caller. + * @arg_unnamed_arg1: Argument passed by remote caller. + * @arg_unnamed_arg2: Argument passed by remote caller. + * @arg_unnamed_arg3: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Inhibit">Inhibit()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call logind_manager_complete_inhibit() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-inhibit", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, handle_inhibit), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 5, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); + + /* GObject signals for received D-Bus signals: */ + /** + * LogindManager::session-new: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument. + * @arg_unnamed_arg1: Argument. + * + * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-org-freedesktop-login1-Manager.SessionNew">"SessionNew"</link> is received. + * + * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. + */ + g_signal_new ("session-new", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, session_new), + NULL, + NULL, + g_cclosure_marshal_generic, + G_TYPE_NONE, + 2, G_TYPE_STRING, G_TYPE_STRING); + + /** + * LogindManager::session-removed: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument. + * @arg_unnamed_arg1: Argument. + * + * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-org-freedesktop-login1-Manager.SessionRemoved">"SessionRemoved"</link> is received. + * + * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. + */ + g_signal_new ("session-removed", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, session_removed), + NULL, + NULL, + g_cclosure_marshal_generic, + G_TYPE_NONE, + 2, G_TYPE_STRING, G_TYPE_STRING); + + /** + * LogindManager::user-new: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument. + * @arg_unnamed_arg1: Argument. + * + * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-org-freedesktop-login1-Manager.UserNew">"UserNew"</link> is received. + * + * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. + */ + g_signal_new ("user-new", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, user_new), + NULL, + NULL, + g_cclosure_marshal_generic, + G_TYPE_NONE, + 2, G_TYPE_UINT, G_TYPE_STRING); + + /** + * LogindManager::user-removed: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument. + * @arg_unnamed_arg1: Argument. + * + * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-org-freedesktop-login1-Manager.UserRemoved">"UserRemoved"</link> is received. + * + * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. + */ + g_signal_new ("user-removed", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, user_removed), + NULL, + NULL, + g_cclosure_marshal_generic, + G_TYPE_NONE, + 2, G_TYPE_UINT, G_TYPE_STRING); + + /** + * LogindManager::seat-new: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument. + * @arg_unnamed_arg1: Argument. + * + * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-org-freedesktop-login1-Manager.SeatNew">"SeatNew"</link> is received. + * + * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. + */ + g_signal_new ("seat-new", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, seat_new), + NULL, + NULL, + g_cclosure_marshal_generic, + G_TYPE_NONE, + 2, G_TYPE_STRING, G_TYPE_STRING); + + /** + * LogindManager::seat-removed: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument. + * @arg_unnamed_arg1: Argument. + * + * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-org-freedesktop-login1-Manager.SeatRemoved">"SeatRemoved"</link> is received. + * + * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. + */ + g_signal_new ("seat-removed", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, seat_removed), + NULL, + NULL, + g_cclosure_marshal_generic, + G_TYPE_NONE, + 2, G_TYPE_STRING, G_TYPE_STRING); + + /** + * LogindManager::prepare-for-shutdown: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument. + * + * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-org-freedesktop-login1-Manager.PrepareForShutdown">"PrepareForShutdown"</link> is received. + * + * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. + */ + g_signal_new ("prepare-for-shutdown", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, prepare_for_shutdown), + NULL, + NULL, + g_cclosure_marshal_generic, + G_TYPE_NONE, + 1, G_TYPE_BOOLEAN); + + /** + * LogindManager::prepare-for-sleep: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument. + * + * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-org-freedesktop-login1-Manager.PrepareForSleep">"PrepareForSleep"</link> is received. + * + * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal. + */ + g_signal_new ("prepare-for-sleep", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (LogindManagerIface, prepare_for_sleep), + NULL, + NULL, + g_cclosure_marshal_generic, + G_TYPE_NONE, + 1, G_TYPE_BOOLEAN); + + /* GObject properties for D-Bus properties: */ + /** + * LogindManager:nauto-vts: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.NAutoVTs">"NAutoVTs"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_uint ("nauto-vts", "NAutoVTs", "NAutoVTs", 0, G_MAXUINT32, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:kill-only-users: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillOnlyUsers">"KillOnlyUsers"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_boxed ("kill-only-users", "KillOnlyUsers", "KillOnlyUsers", G_TYPE_STRV, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:kill-exclude-users: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillExcludeUsers">"KillExcludeUsers"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_boxed ("kill-exclude-users", "KillExcludeUsers", "KillExcludeUsers", G_TYPE_STRV, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:kill-user-processes: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillUserProcesses">"KillUserProcesses"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_boolean ("kill-user-processes", "KillUserProcesses", "KillUserProcesses", FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:idle-hint: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleHint">"IdleHint"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_boolean ("idle-hint", "IdleHint", "IdleHint", FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:idle-since-hint: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleSinceHint">"IdleSinceHint"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_uint64 ("idle-since-hint", "IdleSinceHint", "IdleSinceHint", 0, G_MAXUINT64, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:idle-since-hint-monotonic: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleSinceHintMonotonic">"IdleSinceHintMonotonic"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_uint64 ("idle-since-hint-monotonic", "IdleSinceHintMonotonic", "IdleSinceHintMonotonic", 0, G_MAXUINT64, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:block-inhibited: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.BlockInhibited">"BlockInhibited"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("block-inhibited", "BlockInhibited", "BlockInhibited", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:delay-inhibited: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.DelayInhibited">"DelayInhibited"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("delay-inhibited", "DelayInhibited", "DelayInhibited", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:inhibit-delay-max-usec: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.InhibitDelayMaxUSec">"InhibitDelayMaxUSec"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_uint64 ("inhibit-delay-max-usec", "InhibitDelayMaxUSec", "InhibitDelayMaxUSec", 0, G_MAXUINT64, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:handle-power-key: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandlePowerKey">"HandlePowerKey"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("handle-power-key", "HandlePowerKey", "HandlePowerKey", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:handle-suspend-key: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleSuspendKey">"HandleSuspendKey"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("handle-suspend-key", "HandleSuspendKey", "HandleSuspendKey", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:handle-hibernate-key: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleHibernateKey">"HandleHibernateKey"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("handle-hibernate-key", "HandleHibernateKey", "HandleHibernateKey", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:handle-lid-switch: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleLidSwitch">"HandleLidSwitch"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("handle-lid-switch", "HandleLidSwitch", "HandleLidSwitch", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:idle-action: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleAction">"IdleAction"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("idle-action", "IdleAction", "IdleAction", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:idle-action-usec: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleActionUSec">"IdleActionUSec"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_uint64 ("idle-action-usec", "IdleActionUSec", "IdleActionUSec", 0, G_MAXUINT64, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:preparing-for-shutdown: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.PreparingForShutdown">"PreparingForShutdown"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_boolean ("preparing-for-shutdown", "PreparingForShutdown", "PreparingForShutdown", FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * LogindManager:preparing-for-sleep: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-login1-Manager.PreparingForSleep">"PreparingForSleep"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_boolean ("preparing-for-sleep", "PreparingForSleep", "PreparingForSleep", FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); +} + +/** + * logind_manager_get_nauto_vts: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.NAutoVTs">"NAutoVTs"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +guint +logind_manager_get_nauto_vts (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_nauto_vts (object); +} + +/** + * logind_manager_set_nauto_vts: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.NAutoVTs">"NAutoVTs"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_nauto_vts (LogindManager *object, guint value) +{ + g_object_set (G_OBJECT (object), "nauto-vts", value, NULL); +} + +/** + * logind_manager_get_kill_only_users: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillOnlyUsers">"KillOnlyUsers"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use logind_manager_dup_kill_only_users() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar *const * +logind_manager_get_kill_only_users (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_kill_only_users (object); +} + +/** + * logind_manager_dup_kill_only_users: (skip) + * @object: A #LogindManager. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillOnlyUsers">"KillOnlyUsers"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_strfreev(). + */ +gchar ** +logind_manager_dup_kill_only_users (LogindManager *object) +{ + gchar **value; + g_object_get (G_OBJECT (object), "kill-only-users", &value, NULL); + return value; +} + +/** + * logind_manager_set_kill_only_users: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillOnlyUsers">"KillOnlyUsers"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_kill_only_users (LogindManager *object, const gchar *const *value) +{ + g_object_set (G_OBJECT (object), "kill-only-users", value, NULL); +} + +/** + * logind_manager_get_kill_exclude_users: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillExcludeUsers">"KillExcludeUsers"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use logind_manager_dup_kill_exclude_users() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar *const * +logind_manager_get_kill_exclude_users (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_kill_exclude_users (object); +} + +/** + * logind_manager_dup_kill_exclude_users: (skip) + * @object: A #LogindManager. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillExcludeUsers">"KillExcludeUsers"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_strfreev(). + */ +gchar ** +logind_manager_dup_kill_exclude_users (LogindManager *object) +{ + gchar **value; + g_object_get (G_OBJECT (object), "kill-exclude-users", &value, NULL); + return value; +} + +/** + * logind_manager_set_kill_exclude_users: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillExcludeUsers">"KillExcludeUsers"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_kill_exclude_users (LogindManager *object, const gchar *const *value) +{ + g_object_set (G_OBJECT (object), "kill-exclude-users", value, NULL); +} + +/** + * logind_manager_get_kill_user_processes: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillUserProcesses">"KillUserProcesses"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +gboolean +logind_manager_get_kill_user_processes (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_kill_user_processes (object); +} + +/** + * logind_manager_set_kill_user_processes: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.KillUserProcesses">"KillUserProcesses"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_kill_user_processes (LogindManager *object, gboolean value) +{ + g_object_set (G_OBJECT (object), "kill-user-processes", value, NULL); +} + +/** + * logind_manager_get_idle_hint: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleHint">"IdleHint"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +gboolean +logind_manager_get_idle_hint (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_idle_hint (object); +} + +/** + * logind_manager_set_idle_hint: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleHint">"IdleHint"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_idle_hint (LogindManager *object, gboolean value) +{ + g_object_set (G_OBJECT (object), "idle-hint", value, NULL); +} + +/** + * logind_manager_get_idle_since_hint: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleSinceHint">"IdleSinceHint"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +guint64 +logind_manager_get_idle_since_hint (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_idle_since_hint (object); +} + +/** + * logind_manager_set_idle_since_hint: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleSinceHint">"IdleSinceHint"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_idle_since_hint (LogindManager *object, guint64 value) +{ + g_object_set (G_OBJECT (object), "idle-since-hint", value, NULL); +} + +/** + * logind_manager_get_idle_since_hint_monotonic: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleSinceHintMonotonic">"IdleSinceHintMonotonic"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +guint64 +logind_manager_get_idle_since_hint_monotonic (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_idle_since_hint_monotonic (object); +} + +/** + * logind_manager_set_idle_since_hint_monotonic: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleSinceHintMonotonic">"IdleSinceHintMonotonic"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_idle_since_hint_monotonic (LogindManager *object, guint64 value) +{ + g_object_set (G_OBJECT (object), "idle-since-hint-monotonic", value, NULL); +} + +/** + * logind_manager_get_block_inhibited: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.BlockInhibited">"BlockInhibited"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use logind_manager_dup_block_inhibited() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +logind_manager_get_block_inhibited (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_block_inhibited (object); +} + +/** + * logind_manager_dup_block_inhibited: (skip) + * @object: A #LogindManager. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.BlockInhibited">"BlockInhibited"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +logind_manager_dup_block_inhibited (LogindManager *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "block-inhibited", &value, NULL); + return value; +} + +/** + * logind_manager_set_block_inhibited: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.BlockInhibited">"BlockInhibited"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_block_inhibited (LogindManager *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "block-inhibited", value, NULL); +} + +/** + * logind_manager_get_delay_inhibited: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.DelayInhibited">"DelayInhibited"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use logind_manager_dup_delay_inhibited() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +logind_manager_get_delay_inhibited (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_delay_inhibited (object); +} + +/** + * logind_manager_dup_delay_inhibited: (skip) + * @object: A #LogindManager. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.DelayInhibited">"DelayInhibited"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +logind_manager_dup_delay_inhibited (LogindManager *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "delay-inhibited", &value, NULL); + return value; +} + +/** + * logind_manager_set_delay_inhibited: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.DelayInhibited">"DelayInhibited"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_delay_inhibited (LogindManager *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "delay-inhibited", value, NULL); +} + +/** + * logind_manager_get_inhibit_delay_max_usec: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.InhibitDelayMaxUSec">"InhibitDelayMaxUSec"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +guint64 +logind_manager_get_inhibit_delay_max_usec (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_inhibit_delay_max_usec (object); +} + +/** + * logind_manager_set_inhibit_delay_max_usec: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.InhibitDelayMaxUSec">"InhibitDelayMaxUSec"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_inhibit_delay_max_usec (LogindManager *object, guint64 value) +{ + g_object_set (G_OBJECT (object), "inhibit-delay-max-usec", value, NULL); +} + +/** + * logind_manager_get_handle_power_key: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandlePowerKey">"HandlePowerKey"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use logind_manager_dup_handle_power_key() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +logind_manager_get_handle_power_key (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_handle_power_key (object); +} + +/** + * logind_manager_dup_handle_power_key: (skip) + * @object: A #LogindManager. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandlePowerKey">"HandlePowerKey"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +logind_manager_dup_handle_power_key (LogindManager *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "handle-power-key", &value, NULL); + return value; +} + +/** + * logind_manager_set_handle_power_key: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandlePowerKey">"HandlePowerKey"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_handle_power_key (LogindManager *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "handle-power-key", value, NULL); +} + +/** + * logind_manager_get_handle_suspend_key: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleSuspendKey">"HandleSuspendKey"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use logind_manager_dup_handle_suspend_key() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +logind_manager_get_handle_suspend_key (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_handle_suspend_key (object); +} + +/** + * logind_manager_dup_handle_suspend_key: (skip) + * @object: A #LogindManager. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleSuspendKey">"HandleSuspendKey"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +logind_manager_dup_handle_suspend_key (LogindManager *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "handle-suspend-key", &value, NULL); + return value; +} + +/** + * logind_manager_set_handle_suspend_key: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleSuspendKey">"HandleSuspendKey"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_handle_suspend_key (LogindManager *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "handle-suspend-key", value, NULL); +} + +/** + * logind_manager_get_handle_hibernate_key: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleHibernateKey">"HandleHibernateKey"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use logind_manager_dup_handle_hibernate_key() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +logind_manager_get_handle_hibernate_key (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_handle_hibernate_key (object); +} + +/** + * logind_manager_dup_handle_hibernate_key: (skip) + * @object: A #LogindManager. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleHibernateKey">"HandleHibernateKey"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +logind_manager_dup_handle_hibernate_key (LogindManager *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "handle-hibernate-key", &value, NULL); + return value; +} + +/** + * logind_manager_set_handle_hibernate_key: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleHibernateKey">"HandleHibernateKey"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_handle_hibernate_key (LogindManager *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "handle-hibernate-key", value, NULL); +} + +/** + * logind_manager_get_handle_lid_switch: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleLidSwitch">"HandleLidSwitch"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use logind_manager_dup_handle_lid_switch() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +logind_manager_get_handle_lid_switch (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_handle_lid_switch (object); +} + +/** + * logind_manager_dup_handle_lid_switch: (skip) + * @object: A #LogindManager. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleLidSwitch">"HandleLidSwitch"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +logind_manager_dup_handle_lid_switch (LogindManager *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "handle-lid-switch", &value, NULL); + return value; +} + +/** + * logind_manager_set_handle_lid_switch: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.HandleLidSwitch">"HandleLidSwitch"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_handle_lid_switch (LogindManager *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "handle-lid-switch", value, NULL); +} + +/** + * logind_manager_get_idle_action: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleAction">"IdleAction"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use logind_manager_dup_idle_action() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +logind_manager_get_idle_action (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_idle_action (object); +} + +/** + * logind_manager_dup_idle_action: (skip) + * @object: A #LogindManager. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleAction">"IdleAction"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +logind_manager_dup_idle_action (LogindManager *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "idle-action", &value, NULL); + return value; +} + +/** + * logind_manager_set_idle_action: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleAction">"IdleAction"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_idle_action (LogindManager *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "idle-action", value, NULL); +} + +/** + * logind_manager_get_idle_action_usec: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleActionUSec">"IdleActionUSec"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +guint64 +logind_manager_get_idle_action_usec (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_idle_action_usec (object); +} + +/** + * logind_manager_set_idle_action_usec: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.IdleActionUSec">"IdleActionUSec"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_idle_action_usec (LogindManager *object, guint64 value) +{ + g_object_set (G_OBJECT (object), "idle-action-usec", value, NULL); +} + +/** + * logind_manager_get_preparing_for_shutdown: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.PreparingForShutdown">"PreparingForShutdown"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +gboolean +logind_manager_get_preparing_for_shutdown (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_preparing_for_shutdown (object); +} + +/** + * logind_manager_set_preparing_for_shutdown: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.PreparingForShutdown">"PreparingForShutdown"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_preparing_for_shutdown (LogindManager *object, gboolean value) +{ + g_object_set (G_OBJECT (object), "preparing-for-shutdown", value, NULL); +} + +/** + * logind_manager_get_preparing_for_sleep: (skip) + * @object: A #LogindManager. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-login1-Manager.PreparingForSleep">"PreparingForSleep"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +gboolean +logind_manager_get_preparing_for_sleep (LogindManager *object) +{ + return LOGIND_MANAGER_GET_IFACE (object)->get_preparing_for_sleep (object); +} + +/** + * logind_manager_set_preparing_for_sleep: (skip) + * @object: A #LogindManager. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-login1-Manager.PreparingForSleep">"PreparingForSleep"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +logind_manager_set_preparing_for_sleep (LogindManager *object, gboolean value) +{ + g_object_set (G_OBJECT (object), "preparing-for-sleep", value, NULL); +} + +/** + * logind_manager_emit_session_new: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument to pass with the signal. + * @arg_unnamed_arg1: Argument to pass with the signal. + * + * Emits the <link linkend="gdbus-signal-org-freedesktop-login1-Manager.SessionNew">"SessionNew"</link> D-Bus signal. + */ +void +logind_manager_emit_session_new ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + g_signal_emit_by_name (object, "session-new", arg_unnamed_arg0, arg_unnamed_arg1); +} + +/** + * logind_manager_emit_session_removed: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument to pass with the signal. + * @arg_unnamed_arg1: Argument to pass with the signal. + * + * Emits the <link linkend="gdbus-signal-org-freedesktop-login1-Manager.SessionRemoved">"SessionRemoved"</link> D-Bus signal. + */ +void +logind_manager_emit_session_removed ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + g_signal_emit_by_name (object, "session-removed", arg_unnamed_arg0, arg_unnamed_arg1); +} + +/** + * logind_manager_emit_user_new: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument to pass with the signal. + * @arg_unnamed_arg1: Argument to pass with the signal. + * + * Emits the <link linkend="gdbus-signal-org-freedesktop-login1-Manager.UserNew">"UserNew"</link> D-Bus signal. + */ +void +logind_manager_emit_user_new ( + LogindManager *object, + guint arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + g_signal_emit_by_name (object, "user-new", arg_unnamed_arg0, arg_unnamed_arg1); +} + +/** + * logind_manager_emit_user_removed: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument to pass with the signal. + * @arg_unnamed_arg1: Argument to pass with the signal. + * + * Emits the <link linkend="gdbus-signal-org-freedesktop-login1-Manager.UserRemoved">"UserRemoved"</link> D-Bus signal. + */ +void +logind_manager_emit_user_removed ( + LogindManager *object, + guint arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + g_signal_emit_by_name (object, "user-removed", arg_unnamed_arg0, arg_unnamed_arg1); +} + +/** + * logind_manager_emit_seat_new: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument to pass with the signal. + * @arg_unnamed_arg1: Argument to pass with the signal. + * + * Emits the <link linkend="gdbus-signal-org-freedesktop-login1-Manager.SeatNew">"SeatNew"</link> D-Bus signal. + */ +void +logind_manager_emit_seat_new ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + g_signal_emit_by_name (object, "seat-new", arg_unnamed_arg0, arg_unnamed_arg1); +} + +/** + * logind_manager_emit_seat_removed: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument to pass with the signal. + * @arg_unnamed_arg1: Argument to pass with the signal. + * + * Emits the <link linkend="gdbus-signal-org-freedesktop-login1-Manager.SeatRemoved">"SeatRemoved"</link> D-Bus signal. + */ +void +logind_manager_emit_seat_removed ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + g_signal_emit_by_name (object, "seat-removed", arg_unnamed_arg0, arg_unnamed_arg1); +} + +/** + * logind_manager_emit_prepare_for_shutdown: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument to pass with the signal. + * + * Emits the <link linkend="gdbus-signal-org-freedesktop-login1-Manager.PrepareForShutdown">"PrepareForShutdown"</link> D-Bus signal. + */ +void +logind_manager_emit_prepare_for_shutdown ( + LogindManager *object, + gboolean arg_unnamed_arg0) +{ + g_signal_emit_by_name (object, "prepare-for-shutdown", arg_unnamed_arg0); +} + +/** + * logind_manager_emit_prepare_for_sleep: + * @object: A #LogindManager. + * @arg_unnamed_arg0: Argument to pass with the signal. + * + * Emits the <link linkend="gdbus-signal-org-freedesktop-login1-Manager.PrepareForSleep">"PrepareForSleep"</link> D-Bus signal. + */ +void +logind_manager_emit_prepare_for_sleep ( + LogindManager *object, + gboolean arg_unnamed_arg0) +{ + g_signal_emit_by_name (object, "prepare-for-sleep", arg_unnamed_arg0); +} + +/** + * logind_manager_call_get_session: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSession">GetSession()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_get_session_finish() to get the result of the operation. + * + * See logind_manager_call_get_session_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_get_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "GetSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_get_session_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_get_session(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_get_session(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_get_session_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg1, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(o)", + out_unnamed_arg1); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_get_session_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSession">GetSession()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_get_session() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_get_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + gchar **out_unnamed_arg1, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "GetSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(o)", + out_unnamed_arg1); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_get_session_by_pid: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSessionByPID">GetSessionByPID()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_get_session_by_pid_finish() to get the result of the operation. + * + * See logind_manager_call_get_session_by_pid_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_get_session_by_pid ( + LogindManager *proxy, + guint arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "GetSessionByPID", + g_variant_new ("(u)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_get_session_by_pid_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_get_session_by_pid(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_get_session_by_pid(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_get_session_by_pid_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg1, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(o)", + out_unnamed_arg1); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_get_session_by_pid_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSessionByPID">GetSessionByPID()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_get_session_by_pid() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_get_session_by_pid_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gchar **out_unnamed_arg1, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "GetSessionByPID", + g_variant_new ("(u)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(o)", + out_unnamed_arg1); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_get_user: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetUser">GetUser()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_get_user_finish() to get the result of the operation. + * + * See logind_manager_call_get_user_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_get_user ( + LogindManager *proxy, + guint arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "GetUser", + g_variant_new ("(u)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_get_user_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_get_user(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_get_user(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_get_user_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg1, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(o)", + out_unnamed_arg1); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_get_user_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetUser">GetUser()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_get_user() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_get_user_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gchar **out_unnamed_arg1, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "GetUser", + g_variant_new ("(u)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(o)", + out_unnamed_arg1); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_get_user_by_pid: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetUserByPID">GetUserByPID()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_get_user_by_pid_finish() to get the result of the operation. + * + * See logind_manager_call_get_user_by_pid_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_get_user_by_pid ( + LogindManager *proxy, + guint arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "GetUserByPID", + g_variant_new ("(u)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_get_user_by_pid_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_get_user_by_pid(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_get_user_by_pid(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_get_user_by_pid_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg1, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(o)", + out_unnamed_arg1); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_get_user_by_pid_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetUserByPID">GetUserByPID()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_get_user_by_pid() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_get_user_by_pid_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gchar **out_unnamed_arg1, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "GetUserByPID", + g_variant_new ("(u)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(o)", + out_unnamed_arg1); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_get_seat: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSeat">GetSeat()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_get_seat_finish() to get the result of the operation. + * + * See logind_manager_call_get_seat_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_get_seat ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "GetSeat", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_get_seat_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_get_seat(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_get_seat(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_get_seat_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg1, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(o)", + out_unnamed_arg1); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_get_seat_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSeat">GetSeat()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_get_seat() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_get_seat_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + gchar **out_unnamed_arg1, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "GetSeat", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(o)", + out_unnamed_arg1); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_list_sessions: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListSessions">ListSessions()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_list_sessions_finish() to get the result of the operation. + * + * See logind_manager_call_list_sessions_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_list_sessions ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "ListSessions", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_list_sessions_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_list_sessions(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_list_sessions(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_list_sessions_finish ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(@a(susso))", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_list_sessions_sync: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListSessions">ListSessions()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_list_sessions() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_list_sessions_sync ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "ListSessions", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(@a(susso))", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_list_users: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListUsers">ListUsers()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_list_users_finish() to get the result of the operation. + * + * See logind_manager_call_list_users_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_list_users ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "ListUsers", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_list_users_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_list_users(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_list_users(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_list_users_finish ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(@a(uso))", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_list_users_sync: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListUsers">ListUsers()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_list_users() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_list_users_sync ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "ListUsers", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(@a(uso))", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_list_seats: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListSeats">ListSeats()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_list_seats_finish() to get the result of the operation. + * + * See logind_manager_call_list_seats_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_list_seats ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "ListSeats", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_list_seats_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_list_seats(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_list_seats(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_list_seats_finish ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(@a(so))", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_list_seats_sync: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListSeats">ListSeats()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_list_seats() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_list_seats_sync ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "ListSeats", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(@a(so))", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_list_inhibitors: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListInhibitors">ListInhibitors()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_list_inhibitors_finish() to get the result of the operation. + * + * See logind_manager_call_list_inhibitors_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_list_inhibitors ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "ListInhibitors", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_list_inhibitors_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_list_inhibitors(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_list_inhibitors(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_list_inhibitors_finish ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(@a(ssssuu))", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_list_inhibitors_sync: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListInhibitors">ListInhibitors()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_list_inhibitors() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_list_inhibitors_sync ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "ListInhibitors", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(@a(ssssuu))", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_create_session: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @arg_unnamed_arg2: Argument to pass with the method invocation. + * @arg_unnamed_arg3: Argument to pass with the method invocation. + * @arg_unnamed_arg4: Argument to pass with the method invocation. + * @arg_unnamed_arg5: Argument to pass with the method invocation. + * @arg_unnamed_arg6: Argument to pass with the method invocation. + * @arg_unnamed_arg7: Argument to pass with the method invocation. + * @arg_unnamed_arg8: Argument to pass with the method invocation. + * @arg_unnamed_arg9: Argument to pass with the method invocation. + * @arg_unnamed_arg10: Argument to pass with the method invocation. + * @arg_unnamed_arg11: Argument to pass with the method invocation. + * @arg_unnamed_arg12: Argument to pass with the method invocation. + * @arg_unnamed_arg13: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CreateSession">CreateSession()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_create_session_finish() to get the result of the operation. + * + * See logind_manager_call_create_session_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_create_session ( + LogindManager *proxy, + guint arg_unnamed_arg0, + guint arg_unnamed_arg1, + const gchar *arg_unnamed_arg2, + const gchar *arg_unnamed_arg3, + const gchar *arg_unnamed_arg4, + const gchar *arg_unnamed_arg5, + const gchar *arg_unnamed_arg6, + guint arg_unnamed_arg7, + const gchar *arg_unnamed_arg8, + const gchar *arg_unnamed_arg9, + gboolean arg_unnamed_arg10, + const gchar *arg_unnamed_arg11, + const gchar *arg_unnamed_arg12, + GVariant *arg_unnamed_arg13, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "CreateSession", + g_variant_new ("(uusssssussbss@a(sv))", + arg_unnamed_arg0, + arg_unnamed_arg1, + arg_unnamed_arg2, + arg_unnamed_arg3, + arg_unnamed_arg4, + arg_unnamed_arg5, + arg_unnamed_arg6, + arg_unnamed_arg7, + arg_unnamed_arg8, + arg_unnamed_arg9, + arg_unnamed_arg10, + arg_unnamed_arg11, + arg_unnamed_arg12, + arg_unnamed_arg13), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_create_session_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg14: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg15: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg16: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg17: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg18: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg19: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg20: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg21: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_create_session(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_create_session(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_create_session_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg14, + gchar **out_unnamed_arg15, + gchar **out_unnamed_arg16, + GVariant **out_unnamed_arg17, + guint *out_unnamed_arg18, + gchar **out_unnamed_arg19, + guint *out_unnamed_arg20, + gboolean *out_unnamed_arg21, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(sos@husub)", + out_unnamed_arg14, + out_unnamed_arg15, + out_unnamed_arg16, + out_unnamed_arg17, + out_unnamed_arg18, + out_unnamed_arg19, + out_unnamed_arg20, + out_unnamed_arg21); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_create_session_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @arg_unnamed_arg2: Argument to pass with the method invocation. + * @arg_unnamed_arg3: Argument to pass with the method invocation. + * @arg_unnamed_arg4: Argument to pass with the method invocation. + * @arg_unnamed_arg5: Argument to pass with the method invocation. + * @arg_unnamed_arg6: Argument to pass with the method invocation. + * @arg_unnamed_arg7: Argument to pass with the method invocation. + * @arg_unnamed_arg8: Argument to pass with the method invocation. + * @arg_unnamed_arg9: Argument to pass with the method invocation. + * @arg_unnamed_arg10: Argument to pass with the method invocation. + * @arg_unnamed_arg11: Argument to pass with the method invocation. + * @arg_unnamed_arg12: Argument to pass with the method invocation. + * @arg_unnamed_arg13: Argument to pass with the method invocation. + * @out_unnamed_arg14: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg15: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg16: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg17: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg18: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg19: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg20: (out): Return location for return parameter or %NULL to ignore. + * @out_unnamed_arg21: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CreateSession">CreateSession()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_create_session() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_create_session_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + guint arg_unnamed_arg1, + const gchar *arg_unnamed_arg2, + const gchar *arg_unnamed_arg3, + const gchar *arg_unnamed_arg4, + const gchar *arg_unnamed_arg5, + const gchar *arg_unnamed_arg6, + guint arg_unnamed_arg7, + const gchar *arg_unnamed_arg8, + const gchar *arg_unnamed_arg9, + gboolean arg_unnamed_arg10, + const gchar *arg_unnamed_arg11, + const gchar *arg_unnamed_arg12, + GVariant *arg_unnamed_arg13, + gchar **out_unnamed_arg14, + gchar **out_unnamed_arg15, + gchar **out_unnamed_arg16, + GVariant **out_unnamed_arg17, + guint *out_unnamed_arg18, + gchar **out_unnamed_arg19, + guint *out_unnamed_arg20, + gboolean *out_unnamed_arg21, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "CreateSession", + g_variant_new ("(uusssssussbss@a(sv))", + arg_unnamed_arg0, + arg_unnamed_arg1, + arg_unnamed_arg2, + arg_unnamed_arg3, + arg_unnamed_arg4, + arg_unnamed_arg5, + arg_unnamed_arg6, + arg_unnamed_arg7, + arg_unnamed_arg8, + arg_unnamed_arg9, + arg_unnamed_arg10, + arg_unnamed_arg11, + arg_unnamed_arg12, + arg_unnamed_arg13), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(sos@husub)", + out_unnamed_arg14, + out_unnamed_arg15, + out_unnamed_arg16, + out_unnamed_arg17, + out_unnamed_arg18, + out_unnamed_arg19, + out_unnamed_arg20, + out_unnamed_arg21); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_release_session: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ReleaseSession">ReleaseSession()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_release_session_finish() to get the result of the operation. + * + * See logind_manager_call_release_session_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_release_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "ReleaseSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_release_session_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_release_session(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_release_session(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_release_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_release_session_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ReleaseSession">ReleaseSession()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_release_session() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_release_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "ReleaseSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_activate_session: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ActivateSession">ActivateSession()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_activate_session_finish() to get the result of the operation. + * + * See logind_manager_call_activate_session_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_activate_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "ActivateSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_activate_session_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_activate_session(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_activate_session(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_activate_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_activate_session_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ActivateSession">ActivateSession()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_activate_session() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_activate_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "ActivateSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_activate_session_on_seat: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ActivateSessionOnSeat">ActivateSessionOnSeat()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_activate_session_on_seat_finish() to get the result of the operation. + * + * See logind_manager_call_activate_session_on_seat_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_activate_session_on_seat ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "ActivateSessionOnSeat", + g_variant_new ("(ss)", + arg_unnamed_arg0, + arg_unnamed_arg1), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_activate_session_on_seat_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_activate_session_on_seat(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_activate_session_on_seat(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_activate_session_on_seat_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_activate_session_on_seat_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ActivateSessionOnSeat">ActivateSessionOnSeat()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_activate_session_on_seat() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_activate_session_on_seat_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "ActivateSessionOnSeat", + g_variant_new ("(ss)", + arg_unnamed_arg0, + arg_unnamed_arg1), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_lock_session: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.LockSession">LockSession()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_lock_session_finish() to get the result of the operation. + * + * See logind_manager_call_lock_session_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_lock_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "LockSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_lock_session_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_lock_session(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_lock_session(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_lock_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_lock_session_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.LockSession">LockSession()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_lock_session() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_lock_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "LockSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_unlock_session: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.UnlockSession">UnlockSession()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_unlock_session_finish() to get the result of the operation. + * + * See logind_manager_call_unlock_session_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_unlock_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "UnlockSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_unlock_session_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_unlock_session(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_unlock_session(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_unlock_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_unlock_session_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.UnlockSession">UnlockSession()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_unlock_session() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_unlock_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "UnlockSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_lock_sessions: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.LockSessions">LockSessions()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_lock_sessions_finish() to get the result of the operation. + * + * See logind_manager_call_lock_sessions_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_lock_sessions ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "LockSessions", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_lock_sessions_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_lock_sessions(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_lock_sessions(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_lock_sessions_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_lock_sessions_sync: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.LockSessions">LockSessions()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_lock_sessions() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_lock_sessions_sync ( + LogindManager *proxy, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "LockSessions", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_unlock_sessions: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.UnlockSessions">UnlockSessions()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_unlock_sessions_finish() to get the result of the operation. + * + * See logind_manager_call_unlock_sessions_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_unlock_sessions ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "UnlockSessions", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_unlock_sessions_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_unlock_sessions(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_unlock_sessions(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_unlock_sessions_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_unlock_sessions_sync: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.UnlockSessions">UnlockSessions()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_unlock_sessions() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_unlock_sessions_sync ( + LogindManager *proxy, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "UnlockSessions", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_kill_session: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @arg_unnamed_arg2: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.KillSession">KillSession()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_kill_session_finish() to get the result of the operation. + * + * See logind_manager_call_kill_session_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_kill_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + gint arg_unnamed_arg2, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "KillSession", + g_variant_new ("(ssi)", + arg_unnamed_arg0, + arg_unnamed_arg1, + arg_unnamed_arg2), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_kill_session_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_kill_session(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_kill_session(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_kill_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_kill_session_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @arg_unnamed_arg2: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.KillSession">KillSession()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_kill_session() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_kill_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + gint arg_unnamed_arg2, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "KillSession", + g_variant_new ("(ssi)", + arg_unnamed_arg0, + arg_unnamed_arg1, + arg_unnamed_arg2), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_kill_user: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.KillUser">KillUser()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_kill_user_finish() to get the result of the operation. + * + * See logind_manager_call_kill_user_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_kill_user ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gint arg_unnamed_arg1, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "KillUser", + g_variant_new ("(ui)", + arg_unnamed_arg0, + arg_unnamed_arg1), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_kill_user_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_kill_user(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_kill_user(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_kill_user_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_kill_user_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.KillUser">KillUser()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_kill_user() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_kill_user_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gint arg_unnamed_arg1, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "KillUser", + g_variant_new ("(ui)", + arg_unnamed_arg0, + arg_unnamed_arg1), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_terminate_session: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateSession">TerminateSession()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_terminate_session_finish() to get the result of the operation. + * + * See logind_manager_call_terminate_session_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_terminate_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "TerminateSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_terminate_session_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_terminate_session(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_terminate_session(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_terminate_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_terminate_session_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateSession">TerminateSession()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_terminate_session() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_terminate_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "TerminateSession", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_terminate_user: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateUser">TerminateUser()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_terminate_user_finish() to get the result of the operation. + * + * See logind_manager_call_terminate_user_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_terminate_user ( + LogindManager *proxy, + guint arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "TerminateUser", + g_variant_new ("(u)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_terminate_user_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_terminate_user(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_terminate_user(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_terminate_user_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_terminate_user_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateUser">TerminateUser()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_terminate_user() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_terminate_user_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "TerminateUser", + g_variant_new ("(u)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_terminate_seat: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateSeat">TerminateSeat()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_terminate_seat_finish() to get the result of the operation. + * + * See logind_manager_call_terminate_seat_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_terminate_seat ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "TerminateSeat", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_terminate_seat_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_terminate_seat(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_terminate_seat(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_terminate_seat_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_terminate_seat_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateSeat">TerminateSeat()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_terminate_seat() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_terminate_seat_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "TerminateSeat", + g_variant_new ("(s)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_set_user_linger: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @arg_unnamed_arg2: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.SetUserLinger">SetUserLinger()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_set_user_linger_finish() to get the result of the operation. + * + * See logind_manager_call_set_user_linger_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_set_user_linger ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gboolean arg_unnamed_arg1, + gboolean arg_unnamed_arg2, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetUserLinger", + g_variant_new ("(ubb)", + arg_unnamed_arg0, + arg_unnamed_arg1, + arg_unnamed_arg2), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_set_user_linger_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_set_user_linger(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_set_user_linger(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_set_user_linger_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_set_user_linger_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @arg_unnamed_arg2: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.SetUserLinger">SetUserLinger()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_set_user_linger() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_set_user_linger_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gboolean arg_unnamed_arg1, + gboolean arg_unnamed_arg2, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetUserLinger", + g_variant_new ("(ubb)", + arg_unnamed_arg0, + arg_unnamed_arg1, + arg_unnamed_arg2), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_attach_device: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @arg_unnamed_arg2: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.AttachDevice">AttachDevice()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_attach_device_finish() to get the result of the operation. + * + * See logind_manager_call_attach_device_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_attach_device ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + gboolean arg_unnamed_arg2, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "AttachDevice", + g_variant_new ("(ssb)", + arg_unnamed_arg0, + arg_unnamed_arg1, + arg_unnamed_arg2), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_attach_device_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_attach_device(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_attach_device(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_attach_device_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_attach_device_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @arg_unnamed_arg2: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.AttachDevice">AttachDevice()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_attach_device() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_attach_device_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + gboolean arg_unnamed_arg2, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "AttachDevice", + g_variant_new ("(ssb)", + arg_unnamed_arg0, + arg_unnamed_arg1, + arg_unnamed_arg2), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_flush_devices: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.FlushDevices">FlushDevices()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_flush_devices_finish() to get the result of the operation. + * + * See logind_manager_call_flush_devices_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_flush_devices ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "FlushDevices", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_flush_devices_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_flush_devices(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_flush_devices(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_flush_devices_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_flush_devices_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.FlushDevices">FlushDevices()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_flush_devices() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_flush_devices_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "FlushDevices", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_power_off: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.PowerOff">PowerOff()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_power_off_finish() to get the result of the operation. + * + * See logind_manager_call_power_off_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_power_off ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "PowerOff", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_power_off_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_power_off(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_power_off(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_power_off_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_power_off_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.PowerOff">PowerOff()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_power_off() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_power_off_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "PowerOff", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_reboot: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Reboot">Reboot()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_reboot_finish() to get the result of the operation. + * + * See logind_manager_call_reboot_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_reboot ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "Reboot", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_reboot_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_reboot(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_reboot(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_reboot_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_reboot_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Reboot">Reboot()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_reboot() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_reboot_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "Reboot", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_suspend: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Suspend">Suspend()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_suspend_finish() to get the result of the operation. + * + * See logind_manager_call_suspend_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_suspend ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "Suspend", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_suspend_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_suspend(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_suspend(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_suspend_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_suspend_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Suspend">Suspend()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_suspend() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_suspend_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "Suspend", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_hibernate: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Hibernate">Hibernate()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_hibernate_finish() to get the result of the operation. + * + * See logind_manager_call_hibernate_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_hibernate ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "Hibernate", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_hibernate_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_hibernate(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_hibernate(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_hibernate_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_hibernate_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Hibernate">Hibernate()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_hibernate() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_hibernate_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "Hibernate", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_hybrid_sleep: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.HybridSleep">HybridSleep()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_hybrid_sleep_finish() to get the result of the operation. + * + * See logind_manager_call_hybrid_sleep_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_hybrid_sleep ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "HybridSleep", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_hybrid_sleep_finish: + * @proxy: A #LogindManagerProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_hybrid_sleep(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_hybrid_sleep(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_hybrid_sleep_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_hybrid_sleep_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.HybridSleep">HybridSleep()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_hybrid_sleep() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_hybrid_sleep_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "HybridSleep", + g_variant_new ("(b)", + arg_unnamed_arg0), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_can_power_off: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanPowerOff">CanPowerOff()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_can_power_off_finish() to get the result of the operation. + * + * See logind_manager_call_can_power_off_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_can_power_off ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "CanPowerOff", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_can_power_off_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_can_power_off(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_can_power_off(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_can_power_off_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(s)", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_can_power_off_sync: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanPowerOff">CanPowerOff()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_can_power_off() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_can_power_off_sync ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "CanPowerOff", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(s)", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_can_reboot: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanReboot">CanReboot()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_can_reboot_finish() to get the result of the operation. + * + * See logind_manager_call_can_reboot_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_can_reboot ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "CanReboot", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_can_reboot_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_can_reboot(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_can_reboot(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_can_reboot_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(s)", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_can_reboot_sync: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanReboot">CanReboot()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_can_reboot() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_can_reboot_sync ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "CanReboot", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(s)", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_can_suspend: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanSuspend">CanSuspend()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_can_suspend_finish() to get the result of the operation. + * + * See logind_manager_call_can_suspend_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_can_suspend ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "CanSuspend", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_can_suspend_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_can_suspend(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_can_suspend(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_can_suspend_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(s)", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_can_suspend_sync: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanSuspend">CanSuspend()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_can_suspend() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_can_suspend_sync ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "CanSuspend", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(s)", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_can_hibernate: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanHibernate">CanHibernate()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_can_hibernate_finish() to get the result of the operation. + * + * See logind_manager_call_can_hibernate_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_can_hibernate ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "CanHibernate", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_can_hibernate_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_can_hibernate(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_can_hibernate(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_can_hibernate_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(s)", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_can_hibernate_sync: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanHibernate">CanHibernate()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_can_hibernate() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_can_hibernate_sync ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "CanHibernate", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(s)", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_can_hybrid_sleep: + * @proxy: A #LogindManagerProxy. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanHybridSleep">CanHybridSleep()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_can_hybrid_sleep_finish() to get the result of the operation. + * + * See logind_manager_call_can_hybrid_sleep_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_can_hybrid_sleep ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "CanHybridSleep", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_can_hybrid_sleep_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_can_hybrid_sleep(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_can_hybrid_sleep(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_can_hybrid_sleep_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(s)", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_can_hybrid_sleep_sync: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanHybridSleep">CanHybridSleep()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_can_hybrid_sleep() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_can_hybrid_sleep_sync ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "CanHybridSleep", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(s)", + out_unnamed_arg0); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_inhibit: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @arg_unnamed_arg2: Argument to pass with the method invocation. + * @arg_unnamed_arg3: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Inhibit">Inhibit()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_call_inhibit_finish() to get the result of the operation. + * + * See logind_manager_call_inhibit_sync() for the synchronous, blocking version of this method. + */ +void +logind_manager_call_inhibit ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + const gchar *arg_unnamed_arg2, + const gchar *arg_unnamed_arg3, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "Inhibit", + g_variant_new ("(ssss)", + arg_unnamed_arg0, + arg_unnamed_arg1, + arg_unnamed_arg2, + arg_unnamed_arg3), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * logind_manager_call_inhibit_finish: + * @proxy: A #LogindManagerProxy. + * @out_unnamed_arg4: (out): Return location for return parameter or %NULL to ignore. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_call_inhibit(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with logind_manager_call_inhibit(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_inhibit_finish ( + LogindManager *proxy, + GVariant **out_unnamed_arg4, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(@h)", + out_unnamed_arg4); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_call_inhibit_sync: + * @proxy: A #LogindManagerProxy. + * @arg_unnamed_arg0: Argument to pass with the method invocation. + * @arg_unnamed_arg1: Argument to pass with the method invocation. + * @arg_unnamed_arg2: Argument to pass with the method invocation. + * @arg_unnamed_arg3: Argument to pass with the method invocation. + * @out_unnamed_arg4: (out): Return location for return parameter or %NULL to ignore. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Inhibit">Inhibit()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See logind_manager_call_inhibit() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +logind_manager_call_inhibit_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + const gchar *arg_unnamed_arg2, + const gchar *arg_unnamed_arg3, + GVariant **out_unnamed_arg4, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "Inhibit", + g_variant_new ("(ssss)", + arg_unnamed_arg0, + arg_unnamed_arg1, + arg_unnamed_arg2, + arg_unnamed_arg3), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "(@h)", + out_unnamed_arg4); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * logind_manager_complete_get_session: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg1: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSession">GetSession()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_get_session ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg1) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(o)", + unnamed_arg1)); +} + +/** + * logind_manager_complete_get_session_by_pid: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg1: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSessionByPID">GetSessionByPID()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_get_session_by_pid ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg1) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(o)", + unnamed_arg1)); +} + +/** + * logind_manager_complete_get_user: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg1: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetUser">GetUser()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_get_user ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg1) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(o)", + unnamed_arg1)); +} + +/** + * logind_manager_complete_get_user_by_pid: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg1: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetUserByPID">GetUserByPID()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_get_user_by_pid ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg1) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(o)", + unnamed_arg1)); +} + +/** + * logind_manager_complete_get_seat: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg1: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.GetSeat">GetSeat()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_get_seat ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg1) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(o)", + unnamed_arg1)); +} + +/** + * logind_manager_complete_list_sessions: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg0: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListSessions">ListSessions()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_list_sessions ( + LogindManager *object, + GDBusMethodInvocation *invocation, + GVariant *unnamed_arg0) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(@a(susso))", + unnamed_arg0)); +} + +/** + * logind_manager_complete_list_users: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg0: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListUsers">ListUsers()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_list_users ( + LogindManager *object, + GDBusMethodInvocation *invocation, + GVariant *unnamed_arg0) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(@a(uso))", + unnamed_arg0)); +} + +/** + * logind_manager_complete_list_seats: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg0: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListSeats">ListSeats()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_list_seats ( + LogindManager *object, + GDBusMethodInvocation *invocation, + GVariant *unnamed_arg0) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(@a(so))", + unnamed_arg0)); +} + +/** + * logind_manager_complete_list_inhibitors: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg0: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ListInhibitors">ListInhibitors()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_list_inhibitors ( + LogindManager *object, + GDBusMethodInvocation *invocation, + GVariant *unnamed_arg0) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(@a(ssssuu))", + unnamed_arg0)); +} + +/** + * logind_manager_complete_create_session: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg14: Parameter to return. + * @unnamed_arg15: Parameter to return. + * @unnamed_arg16: Parameter to return. + * @unnamed_arg17: Parameter to return. + * @unnamed_arg18: Parameter to return. + * @unnamed_arg19: Parameter to return. + * @unnamed_arg20: Parameter to return. + * @unnamed_arg21: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CreateSession">CreateSession()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_create_session ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg14, + const gchar *unnamed_arg15, + const gchar *unnamed_arg16, + GVariant *unnamed_arg17, + guint unnamed_arg18, + const gchar *unnamed_arg19, + guint unnamed_arg20, + gboolean unnamed_arg21) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(sos@husub)", + unnamed_arg14, + unnamed_arg15, + unnamed_arg16, + unnamed_arg17, + unnamed_arg18, + unnamed_arg19, + unnamed_arg20, + unnamed_arg21)); +} + +/** + * logind_manager_complete_release_session: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ReleaseSession">ReleaseSession()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_release_session ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_activate_session: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ActivateSession">ActivateSession()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_activate_session ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_activate_session_on_seat: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.ActivateSessionOnSeat">ActivateSessionOnSeat()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_activate_session_on_seat ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_lock_session: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.LockSession">LockSession()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_lock_session ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_unlock_session: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.UnlockSession">UnlockSession()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_unlock_session ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_lock_sessions: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.LockSessions">LockSessions()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_lock_sessions ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_unlock_sessions: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.UnlockSessions">UnlockSessions()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_unlock_sessions ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_kill_session: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.KillSession">KillSession()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_kill_session ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_kill_user: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.KillUser">KillUser()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_kill_user ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_terminate_session: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateSession">TerminateSession()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_terminate_session ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_terminate_user: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateUser">TerminateUser()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_terminate_user ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_terminate_seat: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.TerminateSeat">TerminateSeat()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_terminate_seat ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_set_user_linger: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.SetUserLinger">SetUserLinger()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_set_user_linger ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_attach_device: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.AttachDevice">AttachDevice()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_attach_device ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_flush_devices: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.FlushDevices">FlushDevices()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_flush_devices ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_power_off: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.PowerOff">PowerOff()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_power_off ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_reboot: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Reboot">Reboot()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_reboot ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_suspend: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Suspend">Suspend()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_suspend ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_hibernate: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Hibernate">Hibernate()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_hibernate ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_hybrid_sleep: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.HybridSleep">HybridSleep()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_hybrid_sleep ( + LogindManager *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * logind_manager_complete_can_power_off: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg0: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanPowerOff">CanPowerOff()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_can_power_off ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg0) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(s)", + unnamed_arg0)); +} + +/** + * logind_manager_complete_can_reboot: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg0: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanReboot">CanReboot()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_can_reboot ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg0) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(s)", + unnamed_arg0)); +} + +/** + * logind_manager_complete_can_suspend: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg0: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanSuspend">CanSuspend()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_can_suspend ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg0) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(s)", + unnamed_arg0)); +} + +/** + * logind_manager_complete_can_hibernate: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg0: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanHibernate">CanHibernate()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_can_hibernate ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg0) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(s)", + unnamed_arg0)); +} + +/** + * logind_manager_complete_can_hybrid_sleep: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg0: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.CanHybridSleep">CanHybridSleep()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_can_hybrid_sleep ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg0) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(s)", + unnamed_arg0)); +} + +/** + * logind_manager_complete_inhibit: + * @object: A #LogindManager. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * @unnamed_arg4: Parameter to return. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-login1-Manager.Inhibit">Inhibit()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +logind_manager_complete_inhibit ( + LogindManager *object, + GDBusMethodInvocation *invocation, + GVariant *unnamed_arg4) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("(@h)", + unnamed_arg4)); +} + +/* ------------------------------------------------------------------------ */ + +/** + * LogindManagerProxy: + * + * The #LogindManagerProxy structure contains only private data and should only be accessed using the provided API. + */ + +/** + * LogindManagerProxyClass: + * @parent_class: The parent class. + * + * Class structure for #LogindManagerProxy. + */ + +struct _LogindManagerProxyPrivate +{ + GData *qdata; +}; + +static void logind_manager_proxy_iface_init (LogindManagerIface *iface); + +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 +G_DEFINE_TYPE_WITH_CODE (LogindManagerProxy, logind_manager_proxy, G_TYPE_DBUS_PROXY, + G_ADD_PRIVATE (LogindManagerProxy) + G_IMPLEMENT_INTERFACE (LOGIND_TYPE_MANAGER, logind_manager_proxy_iface_init)); + +#else +G_DEFINE_TYPE_WITH_CODE (LogindManagerProxy, logind_manager_proxy, G_TYPE_DBUS_PROXY, + G_IMPLEMENT_INTERFACE (LOGIND_TYPE_MANAGER, logind_manager_proxy_iface_init)); + +#endif +static void +logind_manager_proxy_finalize (GObject *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + g_datalist_clear (&proxy->priv->qdata); + G_OBJECT_CLASS (logind_manager_proxy_parent_class)->finalize (object); +} + +static void +logind_manager_proxy_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + const _ExtendedGDBusPropertyInfo *info; + GVariant *variant; + g_assert (prop_id != 0 && prop_id - 1 < 18); + info = _logind_manager_property_info_pointers[prop_id - 1]; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); + if (info->use_gvariant) + { + g_value_set_variant (value, variant); + } + else + { + if (variant != NULL) + g_dbus_gvariant_to_gvalue (variant, value); + } + if (variant != NULL) + g_variant_unref (variant); +} + +static void +logind_manager_proxy_set_property_cb (GDBusProxy *proxy, + GAsyncResult *res, + gpointer user_data) +{ + const _ExtendedGDBusPropertyInfo *info = user_data; + GError *error; + GVariant *_ret; + error = NULL; + _ret = g_dbus_proxy_call_finish (proxy, res, &error); + if (!_ret) + { + g_warning ("Error setting property '%s' on interface org.freedesktop.login1.Manager: %s (%s, %d)", + info->parent_struct.name, + error->message, g_quark_to_string (error->domain), error->code); + g_error_free (error); + } + else + { + g_variant_unref (_ret); + } +} + +static void +logind_manager_proxy_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + const _ExtendedGDBusPropertyInfo *info; + GVariant *variant; + g_assert (prop_id != 0 && prop_id - 1 < 18); + info = _logind_manager_property_info_pointers[prop_id - 1]; + variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); + g_dbus_proxy_call (G_DBUS_PROXY (object), + "org.freedesktop.DBus.Properties.Set", + g_variant_new ("(ssv)", "org.freedesktop.login1.Manager", info->parent_struct.name, variant), + G_DBUS_CALL_FLAGS_NONE, + -1, + NULL, (GAsyncReadyCallback) logind_manager_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); + g_variant_unref (variant); +} + +static void +logind_manager_proxy_g_signal (GDBusProxy *proxy, + const gchar *sender_name G_GNUC_UNUSED, + const gchar *signal_name, + GVariant *parameters) +{ + _ExtendedGDBusSignalInfo *info; + GVariantIter iter; + GVariant *child; + GValue *paramv; + guint num_params; + guint n; + guint signal_id; + info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_logind_manager_interface_info.parent_struct, signal_name); + if (info == NULL) + return; + num_params = g_variant_n_children (parameters); + paramv = g_new0 (GValue, num_params + 1); + g_value_init (¶mv[0], LOGIND_TYPE_MANAGER); + g_value_set_object (¶mv[0], proxy); + g_variant_iter_init (&iter, parameters); + n = 1; + while ((child = g_variant_iter_next_value (&iter)) != NULL) + { + _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; + if (arg_info->use_gvariant) + { + g_value_init (¶mv[n], G_TYPE_VARIANT); + g_value_set_variant (¶mv[n], child); + n++; + } + else + g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); + g_variant_unref (child); + } + signal_id = g_signal_lookup (info->signal_name, LOGIND_TYPE_MANAGER); + g_signal_emitv (paramv, signal_id, 0, NULL); + for (n = 0; n < num_params + 1; n++) + g_value_unset (¶mv[n]); + g_free (paramv); +} + +static void +logind_manager_proxy_g_properties_changed (GDBusProxy *_proxy, + GVariant *changed_properties, + const gchar *const *invalidated_properties) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (_proxy); + guint n; + const gchar *key; + GVariantIter *iter; + _ExtendedGDBusPropertyInfo *info; + g_variant_get (changed_properties, "a{sv}", &iter); + while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) + { + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_logind_manager_interface_info.parent_struct, key); + g_datalist_remove_data (&proxy->priv->qdata, key); + if (info != NULL) + g_object_notify (G_OBJECT (proxy), info->hyphen_name); + } + g_variant_iter_free (iter); + for (n = 0; invalidated_properties[n] != NULL; n++) + { + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_logind_manager_interface_info.parent_struct, invalidated_properties[n]); + g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); + if (info != NULL) + g_object_notify (G_OBJECT (proxy), info->hyphen_name); + } +} + +static guint +logind_manager_proxy_get_nauto_vts (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + guint value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "NAutoVTs"); + if (variant != NULL) + { + value = g_variant_get_uint32 (variant); + g_variant_unref (variant); + } + return value; +} + +static const gchar *const * +logind_manager_proxy_get_kill_only_users (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + const gchar *const *value = NULL; + value = g_datalist_get_data (&proxy->priv->qdata, "KillOnlyUsers"); + if (value != NULL) + return value; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "KillOnlyUsers"); + if (variant != NULL) + { + value = g_variant_get_strv (variant, NULL); + g_datalist_set_data_full (&proxy->priv->qdata, "KillOnlyUsers", (gpointer) value, g_free); + g_variant_unref (variant); + } + return value; +} + +static const gchar *const * +logind_manager_proxy_get_kill_exclude_users (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + const gchar *const *value = NULL; + value = g_datalist_get_data (&proxy->priv->qdata, "KillExcludeUsers"); + if (value != NULL) + return value; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "KillExcludeUsers"); + if (variant != NULL) + { + value = g_variant_get_strv (variant, NULL); + g_datalist_set_data_full (&proxy->priv->qdata, "KillExcludeUsers", (gpointer) value, g_free); + g_variant_unref (variant); + } + return value; +} + +static gboolean +logind_manager_proxy_get_kill_user_processes (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + gboolean value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "KillUserProcesses"); + if (variant != NULL) + { + value = g_variant_get_boolean (variant); + g_variant_unref (variant); + } + return value; +} + +static gboolean +logind_manager_proxy_get_idle_hint (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + gboolean value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "IdleHint"); + if (variant != NULL) + { + value = g_variant_get_boolean (variant); + g_variant_unref (variant); + } + return value; +} + +static guint64 +logind_manager_proxy_get_idle_since_hint (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + guint64 value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "IdleSinceHint"); + if (variant != NULL) + { + value = g_variant_get_uint64 (variant); + g_variant_unref (variant); + } + return value; +} + +static guint64 +logind_manager_proxy_get_idle_since_hint_monotonic (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + guint64 value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "IdleSinceHintMonotonic"); + if (variant != NULL) + { + value = g_variant_get_uint64 (variant); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +logind_manager_proxy_get_block_inhibited (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "BlockInhibited"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +logind_manager_proxy_get_delay_inhibited (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "DelayInhibited"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static guint64 +logind_manager_proxy_get_inhibit_delay_max_usec (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + guint64 value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "InhibitDelayMaxUSec"); + if (variant != NULL) + { + value = g_variant_get_uint64 (variant); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +logind_manager_proxy_get_handle_power_key (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "HandlePowerKey"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +logind_manager_proxy_get_handle_suspend_key (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "HandleSuspendKey"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +logind_manager_proxy_get_handle_hibernate_key (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "HandleHibernateKey"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +logind_manager_proxy_get_handle_lid_switch (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "HandleLidSwitch"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static const gchar * +logind_manager_proxy_get_idle_action (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "IdleAction"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static guint64 +logind_manager_proxy_get_idle_action_usec (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + guint64 value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "IdleActionUSec"); + if (variant != NULL) + { + value = g_variant_get_uint64 (variant); + g_variant_unref (variant); + } + return value; +} + +static gboolean +logind_manager_proxy_get_preparing_for_shutdown (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + gboolean value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "PreparingForShutdown"); + if (variant != NULL) + { + value = g_variant_get_boolean (variant); + g_variant_unref (variant); + } + return value; +} + +static gboolean +logind_manager_proxy_get_preparing_for_sleep (LogindManager *object) +{ + LogindManagerProxy *proxy = LOGIND_MANAGER_PROXY (object); + GVariant *variant; + gboolean value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "PreparingForSleep"); + if (variant != NULL) + { + value = g_variant_get_boolean (variant); + g_variant_unref (variant); + } + return value; +} + +static void +logind_manager_proxy_init (LogindManagerProxy *proxy) +{ +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 + proxy->priv = logind_manager_proxy_get_instance_private (proxy); +#else + proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, LOGIND_TYPE_MANAGER_PROXY, LogindManagerProxyPrivate); +#endif + + g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), logind_manager_interface_info ()); +} + +static void +logind_manager_proxy_class_init (LogindManagerProxyClass *klass) +{ + GObjectClass *gobject_class; + GDBusProxyClass *proxy_class; + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = logind_manager_proxy_finalize; + gobject_class->get_property = logind_manager_proxy_get_property; + gobject_class->set_property = logind_manager_proxy_set_property; + + proxy_class = G_DBUS_PROXY_CLASS (klass); + proxy_class->g_signal = logind_manager_proxy_g_signal; + proxy_class->g_properties_changed = logind_manager_proxy_g_properties_changed; + + logind_manager_override_properties (gobject_class, 1); + +#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 + g_type_class_add_private (klass, sizeof (LogindManagerProxyPrivate)); +#endif +} + +static void +logind_manager_proxy_iface_init (LogindManagerIface *iface) +{ + iface->get_nauto_vts = logind_manager_proxy_get_nauto_vts; + iface->get_kill_only_users = logind_manager_proxy_get_kill_only_users; + iface->get_kill_exclude_users = logind_manager_proxy_get_kill_exclude_users; + iface->get_kill_user_processes = logind_manager_proxy_get_kill_user_processes; + iface->get_idle_hint = logind_manager_proxy_get_idle_hint; + iface->get_idle_since_hint = logind_manager_proxy_get_idle_since_hint; + iface->get_idle_since_hint_monotonic = logind_manager_proxy_get_idle_since_hint_monotonic; + iface->get_block_inhibited = logind_manager_proxy_get_block_inhibited; + iface->get_delay_inhibited = logind_manager_proxy_get_delay_inhibited; + iface->get_inhibit_delay_max_usec = logind_manager_proxy_get_inhibit_delay_max_usec; + iface->get_handle_power_key = logind_manager_proxy_get_handle_power_key; + iface->get_handle_suspend_key = logind_manager_proxy_get_handle_suspend_key; + iface->get_handle_hibernate_key = logind_manager_proxy_get_handle_hibernate_key; + iface->get_handle_lid_switch = logind_manager_proxy_get_handle_lid_switch; + iface->get_idle_action = logind_manager_proxy_get_idle_action; + iface->get_idle_action_usec = logind_manager_proxy_get_idle_action_usec; + iface->get_preparing_for_shutdown = logind_manager_proxy_get_preparing_for_shutdown; + iface->get_preparing_for_sleep = logind_manager_proxy_get_preparing_for_sleep; +} + +/** + * logind_manager_proxy_new: + * @connection: A #GDBusConnection. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied. + * @user_data: User data to pass to @callback. + * + * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-login1-Manager.top_of_page">org.freedesktop.login1.Manager</link>. See g_dbus_proxy_new() for more details. + * + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_proxy_new_finish() to get the result of the operation. + * + * See logind_manager_proxy_new_sync() for the synchronous, blocking version of this constructor. + */ +void +logind_manager_proxy_new ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_async_initable_new_async (LOGIND_TYPE_MANAGER_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.freedesktop.login1.Manager", NULL); +} + +/** + * logind_manager_proxy_new_finish: + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_proxy_new(). + * @error: Return location for error or %NULL + * + * Finishes an operation started with logind_manager_proxy_new(). + * + * Returns: (transfer full) (type LogindManagerProxy): The constructed proxy object or %NULL if @error is set. + */ +LogindManager * +logind_manager_proxy_new_finish ( + GAsyncResult *res, + GError **error) +{ + GObject *ret; + GObject *source_object; + source_object = g_async_result_get_source_object (res); + ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); + g_object_unref (source_object); + if (ret != NULL) + return LOGIND_MANAGER (ret); + else + return NULL; +} + +/** + * logind_manager_proxy_new_sync: + * @connection: A #GDBusConnection. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL + * + * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-login1-Manager.top_of_page">org.freedesktop.login1.Manager</link>. See g_dbus_proxy_new_sync() for more details. + * + * The calling thread is blocked until a reply is received. + * + * See logind_manager_proxy_new() for the asynchronous version of this constructor. + * + * Returns: (transfer full) (type LogindManagerProxy): The constructed proxy object or %NULL if @error is set. + */ +LogindManager * +logind_manager_proxy_new_sync ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error) +{ + GInitable *ret; + ret = g_initable_new (LOGIND_TYPE_MANAGER_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.freedesktop.login1.Manager", NULL); + if (ret != NULL) + return LOGIND_MANAGER (ret); + else + return NULL; +} + + +/** + * logind_manager_proxy_new_for_bus: + * @bus_type: A #GBusType. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: A bus name (well-known or unique). + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied. + * @user_data: User data to pass to @callback. + * + * Like logind_manager_proxy_new() but takes a #GBusType instead of a #GDBusConnection. + * + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call logind_manager_proxy_new_for_bus_finish() to get the result of the operation. + * + * See logind_manager_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. + */ +void +logind_manager_proxy_new_for_bus ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_async_initable_new_async (LOGIND_TYPE_MANAGER_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.freedesktop.login1.Manager", NULL); +} + +/** + * logind_manager_proxy_new_for_bus_finish: + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to logind_manager_proxy_new_for_bus(). + * @error: Return location for error or %NULL + * + * Finishes an operation started with logind_manager_proxy_new_for_bus(). + * + * Returns: (transfer full) (type LogindManagerProxy): The constructed proxy object or %NULL if @error is set. + */ +LogindManager * +logind_manager_proxy_new_for_bus_finish ( + GAsyncResult *res, + GError **error) +{ + GObject *ret; + GObject *source_object; + source_object = g_async_result_get_source_object (res); + ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); + g_object_unref (source_object); + if (ret != NULL) + return LOGIND_MANAGER (ret); + else + return NULL; +} + +/** + * logind_manager_proxy_new_for_bus_sync: + * @bus_type: A #GBusType. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: A bus name (well-known or unique). + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL + * + * Like logind_manager_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. + * + * The calling thread is blocked until a reply is received. + * + * See logind_manager_proxy_new_for_bus() for the asynchronous version of this constructor. + * + * Returns: (transfer full) (type LogindManagerProxy): The constructed proxy object or %NULL if @error is set. + */ +LogindManager * +logind_manager_proxy_new_for_bus_sync ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error) +{ + GInitable *ret; + ret = g_initable_new (LOGIND_TYPE_MANAGER_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.freedesktop.login1.Manager", NULL); + if (ret != NULL) + return LOGIND_MANAGER (ret); + else + return NULL; +} + + +/* ------------------------------------------------------------------------ */ + +/** + * LogindManagerSkeleton: + * + * The #LogindManagerSkeleton structure contains only private data and should only be accessed using the provided API. + */ + +/** + * LogindManagerSkeletonClass: + * @parent_class: The parent class. + * + * Class structure for #LogindManagerSkeleton. + */ + +struct _LogindManagerSkeletonPrivate +{ + GValue *properties; + GList *changed_properties; + GSource *changed_properties_idle_source; + GMainContext *context; + GMutex lock; +}; + +static void +_logind_manager_skeleton_handle_method_call ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name, + const gchar *method_name, + GVariant *parameters, + GDBusMethodInvocation *invocation, + gpointer user_data) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (user_data); + _ExtendedGDBusMethodInfo *info; + GVariantIter iter; + GVariant *child; + GValue *paramv; + guint num_params; + guint num_extra; + guint n; + guint signal_id; + GValue return_value = G_VALUE_INIT; + info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); + g_assert (info != NULL); + num_params = g_variant_n_children (parameters); + num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); + n = 0; + g_value_init (¶mv[n], LOGIND_TYPE_MANAGER); + g_value_set_object (¶mv[n++], skeleton); + g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); + g_value_set_object (¶mv[n++], invocation); + if (info->pass_fdlist) + { +#ifdef G_OS_UNIX + g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); + g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); +#else + g_assert_not_reached (); +#endif + } + g_variant_iter_init (&iter, parameters); + while ((child = g_variant_iter_next_value (&iter)) != NULL) + { + _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; + if (arg_info->use_gvariant) + { + g_value_init (¶mv[n], G_TYPE_VARIANT); + g_value_set_variant (¶mv[n], child); + n++; + } + else + g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); + g_variant_unref (child); + } + signal_id = g_signal_lookup (info->signal_name, LOGIND_TYPE_MANAGER); + g_value_init (&return_value, G_TYPE_BOOLEAN); + g_signal_emitv (paramv, signal_id, 0, &return_value); + if (!g_value_get_boolean (&return_value)) + g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); + g_value_unset (&return_value); + for (n = 0; n < num_params + num_extra; n++) + g_value_unset (¶mv[n]); + g_free (paramv); +} + +static GVariant * +_logind_manager_skeleton_handle_get_property ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name G_GNUC_UNUSED, + const gchar *property_name, + GError **error, + gpointer user_data) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (user_data); + GValue value = G_VALUE_INIT; + GParamSpec *pspec; + _ExtendedGDBusPropertyInfo *info; + GVariant *ret; + ret = NULL; + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_logind_manager_interface_info.parent_struct, property_name); + g_assert (info != NULL); + pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); + if (pspec == NULL) + { + g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); + } + else + { + g_value_init (&value, pspec->value_type); + g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); + ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); + g_value_unset (&value); + } + return ret; +} + +static gboolean +_logind_manager_skeleton_handle_set_property ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name G_GNUC_UNUSED, + const gchar *property_name, + GVariant *variant, + GError **error, + gpointer user_data) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (user_data); + GValue value = G_VALUE_INIT; + GParamSpec *pspec; + _ExtendedGDBusPropertyInfo *info; + gboolean ret; + ret = FALSE; + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_logind_manager_interface_info.parent_struct, property_name); + g_assert (info != NULL); + pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); + if (pspec == NULL) + { + g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); + } + else + { + if (info->use_gvariant) + g_value_set_variant (&value, variant); + else + g_dbus_gvariant_to_gvalue (variant, &value); + g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); + g_value_unset (&value); + ret = TRUE; + } + return ret; +} + +static const GDBusInterfaceVTable _logind_manager_skeleton_vtable = +{ + _logind_manager_skeleton_handle_method_call, + _logind_manager_skeleton_handle_get_property, + _logind_manager_skeleton_handle_set_property, + {NULL} +}; + +static GDBusInterfaceInfo * +logind_manager_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) +{ + return logind_manager_interface_info (); +} + +static GDBusInterfaceVTable * +logind_manager_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) +{ + return (GDBusInterfaceVTable *) &_logind_manager_skeleton_vtable; +} + +static GVariant * +logind_manager_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (_skeleton); + + GVariantBuilder builder; + guint n; + g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); + if (_logind_manager_interface_info.parent_struct.properties == NULL) + goto out; + for (n = 0; _logind_manager_interface_info.parent_struct.properties[n] != NULL; n++) + { + GDBusPropertyInfo *info = _logind_manager_interface_info.parent_struct.properties[n]; + if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) + { + GVariant *value; + value = _logind_manager_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.login1.Manager", info->name, NULL, skeleton); + if (value != NULL) + { + g_variant_take_ref (value); + g_variant_builder_add (&builder, "{sv}", info->name, value); + g_variant_unref (value); + } + } + } +out: + return g_variant_builder_end (&builder); +} + +static gboolean _logind_manager_emit_changed (gpointer user_data); + +static void +logind_manager_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (_skeleton); + gboolean emit_changed = FALSE; + + g_mutex_lock (&skeleton->priv->lock); + if (skeleton->priv->changed_properties_idle_source != NULL) + { + g_source_destroy (skeleton->priv->changed_properties_idle_source); + skeleton->priv->changed_properties_idle_source = NULL; + emit_changed = TRUE; + } + g_mutex_unlock (&skeleton->priv->lock); + + if (emit_changed) + _logind_manager_emit_changed (skeleton); +} + +static void +_logind_manager_on_signal_session_new ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + + GList *connections, *l; + GVariant *signal_variant; + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + + signal_variant = g_variant_ref_sink (g_variant_new ("(so)", + arg_unnamed_arg0, + arg_unnamed_arg1)); + for (l = connections; l != NULL; l = l->next) + { + GDBusConnection *connection = l->data; + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.login1.Manager", "SessionNew", + signal_variant, NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); +} + +static void +_logind_manager_on_signal_session_removed ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + + GList *connections, *l; + GVariant *signal_variant; + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + + signal_variant = g_variant_ref_sink (g_variant_new ("(so)", + arg_unnamed_arg0, + arg_unnamed_arg1)); + for (l = connections; l != NULL; l = l->next) + { + GDBusConnection *connection = l->data; + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.login1.Manager", "SessionRemoved", + signal_variant, NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); +} + +static void +_logind_manager_on_signal_user_new ( + LogindManager *object, + guint arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + + GList *connections, *l; + GVariant *signal_variant; + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + + signal_variant = g_variant_ref_sink (g_variant_new ("(uo)", + arg_unnamed_arg0, + arg_unnamed_arg1)); + for (l = connections; l != NULL; l = l->next) + { + GDBusConnection *connection = l->data; + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.login1.Manager", "UserNew", + signal_variant, NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); +} + +static void +_logind_manager_on_signal_user_removed ( + LogindManager *object, + guint arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + + GList *connections, *l; + GVariant *signal_variant; + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + + signal_variant = g_variant_ref_sink (g_variant_new ("(uo)", + arg_unnamed_arg0, + arg_unnamed_arg1)); + for (l = connections; l != NULL; l = l->next) + { + GDBusConnection *connection = l->data; + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.login1.Manager", "UserRemoved", + signal_variant, NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); +} + +static void +_logind_manager_on_signal_seat_new ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + + GList *connections, *l; + GVariant *signal_variant; + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + + signal_variant = g_variant_ref_sink (g_variant_new ("(so)", + arg_unnamed_arg0, + arg_unnamed_arg1)); + for (l = connections; l != NULL; l = l->next) + { + GDBusConnection *connection = l->data; + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.login1.Manager", "SeatNew", + signal_variant, NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); +} + +static void +_logind_manager_on_signal_seat_removed ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + + GList *connections, *l; + GVariant *signal_variant; + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + + signal_variant = g_variant_ref_sink (g_variant_new ("(so)", + arg_unnamed_arg0, + arg_unnamed_arg1)); + for (l = connections; l != NULL; l = l->next) + { + GDBusConnection *connection = l->data; + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.login1.Manager", "SeatRemoved", + signal_variant, NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); +} + +static void +_logind_manager_on_signal_prepare_for_shutdown ( + LogindManager *object, + gboolean arg_unnamed_arg0) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + + GList *connections, *l; + GVariant *signal_variant; + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + + signal_variant = g_variant_ref_sink (g_variant_new ("(b)", + arg_unnamed_arg0)); + for (l = connections; l != NULL; l = l->next) + { + GDBusConnection *connection = l->data; + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.login1.Manager", "PrepareForShutdown", + signal_variant, NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); +} + +static void +_logind_manager_on_signal_prepare_for_sleep ( + LogindManager *object, + gboolean arg_unnamed_arg0) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + + GList *connections, *l; + GVariant *signal_variant; + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + + signal_variant = g_variant_ref_sink (g_variant_new ("(b)", + arg_unnamed_arg0)); + for (l = connections; l != NULL; l = l->next) + { + GDBusConnection *connection = l->data; + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.login1.Manager", "PrepareForSleep", + signal_variant, NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); +} + +static void logind_manager_skeleton_iface_init (LogindManagerIface *iface); +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 +G_DEFINE_TYPE_WITH_CODE (LogindManagerSkeleton, logind_manager_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, + G_ADD_PRIVATE (LogindManagerSkeleton) + G_IMPLEMENT_INTERFACE (LOGIND_TYPE_MANAGER, logind_manager_skeleton_iface_init)); + +#else +G_DEFINE_TYPE_WITH_CODE (LogindManagerSkeleton, logind_manager_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, + G_IMPLEMENT_INTERFACE (LOGIND_TYPE_MANAGER, logind_manager_skeleton_iface_init)); + +#endif +static void +logind_manager_skeleton_finalize (GObject *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + guint n; + for (n = 0; n < 18; n++) + g_value_unset (&skeleton->priv->properties[n]); + g_free (skeleton->priv->properties); + g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); + if (skeleton->priv->changed_properties_idle_source != NULL) + g_source_destroy (skeleton->priv->changed_properties_idle_source); + g_main_context_unref (skeleton->priv->context); + g_mutex_clear (&skeleton->priv->lock); + G_OBJECT_CLASS (logind_manager_skeleton_parent_class)->finalize (object); +} + +static void +logind_manager_skeleton_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + g_assert (prop_id != 0 && prop_id - 1 < 18); + g_mutex_lock (&skeleton->priv->lock); + g_value_copy (&skeleton->priv->properties[prop_id - 1], value); + g_mutex_unlock (&skeleton->priv->lock); +} + +static gboolean +_logind_manager_emit_changed (gpointer user_data) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (user_data); + GList *l; + GVariantBuilder builder; + GVariantBuilder invalidated_builder; + guint num_changes; + + g_mutex_lock (&skeleton->priv->lock); + g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); + g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); + for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) + { + ChangedProperty *cp = l->data; + GVariant *variant; + const GValue *cur_value; + + cur_value = &skeleton->priv->properties[cp->prop_id - 1]; + if (!_g_value_equal (cur_value, &cp->orig_value)) + { + variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); + g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); + g_variant_unref (variant); + num_changes++; + } + } + if (num_changes > 0) + { + GList *connections, *ll; + GVariant *signal_variant; + signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "org.freedesktop.login1.Manager", + &builder, &invalidated_builder)); + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + for (ll = connections; ll != NULL; ll = ll->next) + { + GDBusConnection *connection = ll->data; + + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), + "org.freedesktop.DBus.Properties", + "PropertiesChanged", + signal_variant, + NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); + } + else + { + g_variant_builder_clear (&builder); + g_variant_builder_clear (&invalidated_builder); + } + g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); + skeleton->priv->changed_properties = NULL; + skeleton->priv->changed_properties_idle_source = NULL; + g_mutex_unlock (&skeleton->priv->lock); + return FALSE; +} + +static void +_logind_manager_schedule_emit_changed (LogindManagerSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) +{ + ChangedProperty *cp; + GList *l; + cp = NULL; + for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) + { + ChangedProperty *i_cp = l->data; + if (i_cp->info == info) + { + cp = i_cp; + break; + } + } + if (cp == NULL) + { + cp = g_new0 (ChangedProperty, 1); + cp->prop_id = prop_id; + cp->info = info; + skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); + g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); + g_value_copy (orig_value, &cp->orig_value); + } +} + +static void +logind_manager_skeleton_notify (GObject *object, + GParamSpec *pspec G_GNUC_UNUSED) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + g_mutex_lock (&skeleton->priv->lock); + if (skeleton->priv->changed_properties != NULL && + skeleton->priv->changed_properties_idle_source == NULL) + { + skeleton->priv->changed_properties_idle_source = g_idle_source_new (); + g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); + g_source_set_callback (skeleton->priv->changed_properties_idle_source, _logind_manager_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); + g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); + g_source_unref (skeleton->priv->changed_properties_idle_source); + } + g_mutex_unlock (&skeleton->priv->lock); +} + +static void +logind_manager_skeleton_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + g_assert (prop_id != 0 && prop_id - 1 < 18); + g_mutex_lock (&skeleton->priv->lock); + g_object_freeze_notify (object); + if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) + { + if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL) + _logind_manager_schedule_emit_changed (skeleton, _logind_manager_property_info_pointers[prop_id - 1], prop_id, &skeleton->priv->properties[prop_id - 1]); + g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); + g_object_notify_by_pspec (object, pspec); + } + g_mutex_unlock (&skeleton->priv->lock); + g_object_thaw_notify (object); +} + +static void +logind_manager_skeleton_init (LogindManagerSkeleton *skeleton) +{ +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 + skeleton->priv = logind_manager_skeleton_get_instance_private (skeleton); +#else + skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, LOGIND_TYPE_MANAGER_SKELETON, LogindManagerSkeletonPrivate); +#endif + + g_mutex_init (&skeleton->priv->lock); + skeleton->priv->context = g_main_context_ref_thread_default (); + skeleton->priv->properties = g_new0 (GValue, 18); + g_value_init (&skeleton->priv->properties[0], G_TYPE_UINT); + g_value_init (&skeleton->priv->properties[1], G_TYPE_STRV); + g_value_init (&skeleton->priv->properties[2], G_TYPE_STRV); + g_value_init (&skeleton->priv->properties[3], G_TYPE_BOOLEAN); + g_value_init (&skeleton->priv->properties[4], G_TYPE_BOOLEAN); + g_value_init (&skeleton->priv->properties[5], G_TYPE_UINT64); + g_value_init (&skeleton->priv->properties[6], G_TYPE_UINT64); + g_value_init (&skeleton->priv->properties[7], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[8], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[9], G_TYPE_UINT64); + g_value_init (&skeleton->priv->properties[10], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[11], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[12], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[13], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[14], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[15], G_TYPE_UINT64); + g_value_init (&skeleton->priv->properties[16], G_TYPE_BOOLEAN); + g_value_init (&skeleton->priv->properties[17], G_TYPE_BOOLEAN); +} + +static guint +logind_manager_skeleton_get_nauto_vts (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + guint value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_uint (&(skeleton->priv->properties[0])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar *const * +logind_manager_skeleton_get_kill_only_users (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + const gchar *const *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_boxed (&(skeleton->priv->properties[1])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar *const * +logind_manager_skeleton_get_kill_exclude_users (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + const gchar *const *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_boxed (&(skeleton->priv->properties[2])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static gboolean +logind_manager_skeleton_get_kill_user_processes (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + gboolean value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_boolean (&(skeleton->priv->properties[3])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static gboolean +logind_manager_skeleton_get_idle_hint (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + gboolean value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_boolean (&(skeleton->priv->properties[4])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static guint64 +logind_manager_skeleton_get_idle_since_hint (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + guint64 value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_uint64 (&(skeleton->priv->properties[5])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static guint64 +logind_manager_skeleton_get_idle_since_hint_monotonic (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + guint64 value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_uint64 (&(skeleton->priv->properties[6])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +logind_manager_skeleton_get_block_inhibited (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[7])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +logind_manager_skeleton_get_delay_inhibited (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[8])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static guint64 +logind_manager_skeleton_get_inhibit_delay_max_usec (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + guint64 value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_uint64 (&(skeleton->priv->properties[9])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +logind_manager_skeleton_get_handle_power_key (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[10])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +logind_manager_skeleton_get_handle_suspend_key (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[11])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +logind_manager_skeleton_get_handle_hibernate_key (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[12])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +logind_manager_skeleton_get_handle_lid_switch (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[13])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static const gchar * +logind_manager_skeleton_get_idle_action (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[14])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static guint64 +logind_manager_skeleton_get_idle_action_usec (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + guint64 value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_uint64 (&(skeleton->priv->properties[15])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static gboolean +logind_manager_skeleton_get_preparing_for_shutdown (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + gboolean value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_boolean (&(skeleton->priv->properties[16])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static gboolean +logind_manager_skeleton_get_preparing_for_sleep (LogindManager *object) +{ + LogindManagerSkeleton *skeleton = LOGIND_MANAGER_SKELETON (object); + gboolean value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_boolean (&(skeleton->priv->properties[17])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static void +logind_manager_skeleton_class_init (LogindManagerSkeletonClass *klass) +{ + GObjectClass *gobject_class; + GDBusInterfaceSkeletonClass *skeleton_class; + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = logind_manager_skeleton_finalize; + gobject_class->get_property = logind_manager_skeleton_get_property; + gobject_class->set_property = logind_manager_skeleton_set_property; + gobject_class->notify = logind_manager_skeleton_notify; + + + logind_manager_override_properties (gobject_class, 1); + + skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); + skeleton_class->get_info = logind_manager_skeleton_dbus_interface_get_info; + skeleton_class->get_properties = logind_manager_skeleton_dbus_interface_get_properties; + skeleton_class->flush = logind_manager_skeleton_dbus_interface_flush; + skeleton_class->get_vtable = logind_manager_skeleton_dbus_interface_get_vtable; + +#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 + g_type_class_add_private (klass, sizeof (LogindManagerSkeletonPrivate)); +#endif +} + +static void +logind_manager_skeleton_iface_init (LogindManagerIface *iface) +{ + iface->session_new = _logind_manager_on_signal_session_new; + iface->session_removed = _logind_manager_on_signal_session_removed; + iface->user_new = _logind_manager_on_signal_user_new; + iface->user_removed = _logind_manager_on_signal_user_removed; + iface->seat_new = _logind_manager_on_signal_seat_new; + iface->seat_removed = _logind_manager_on_signal_seat_removed; + iface->prepare_for_shutdown = _logind_manager_on_signal_prepare_for_shutdown; + iface->prepare_for_sleep = _logind_manager_on_signal_prepare_for_sleep; + iface->get_nauto_vts = logind_manager_skeleton_get_nauto_vts; + iface->get_kill_only_users = logind_manager_skeleton_get_kill_only_users; + iface->get_kill_exclude_users = logind_manager_skeleton_get_kill_exclude_users; + iface->get_kill_user_processes = logind_manager_skeleton_get_kill_user_processes; + iface->get_idle_hint = logind_manager_skeleton_get_idle_hint; + iface->get_idle_since_hint = logind_manager_skeleton_get_idle_since_hint; + iface->get_idle_since_hint_monotonic = logind_manager_skeleton_get_idle_since_hint_monotonic; + iface->get_block_inhibited = logind_manager_skeleton_get_block_inhibited; + iface->get_delay_inhibited = logind_manager_skeleton_get_delay_inhibited; + iface->get_inhibit_delay_max_usec = logind_manager_skeleton_get_inhibit_delay_max_usec; + iface->get_handle_power_key = logind_manager_skeleton_get_handle_power_key; + iface->get_handle_suspend_key = logind_manager_skeleton_get_handle_suspend_key; + iface->get_handle_hibernate_key = logind_manager_skeleton_get_handle_hibernate_key; + iface->get_handle_lid_switch = logind_manager_skeleton_get_handle_lid_switch; + iface->get_idle_action = logind_manager_skeleton_get_idle_action; + iface->get_idle_action_usec = logind_manager_skeleton_get_idle_action_usec; + iface->get_preparing_for_shutdown = logind_manager_skeleton_get_preparing_for_shutdown; + iface->get_preparing_for_sleep = logind_manager_skeleton_get_preparing_for_sleep; +} + +/** + * logind_manager_skeleton_new: + * + * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-login1-Manager.top_of_page">org.freedesktop.login1.Manager</link>. + * + * Returns: (transfer full) (type LogindManagerSkeleton): The skeleton object. + */ +LogindManager * +logind_manager_skeleton_new (void) +{ + return LOGIND_MANAGER (g_object_new (LOGIND_TYPE_MANAGER_SKELETON, NULL)); +} + diff --git a/src/interfaces/logind/logind-gen.h b/src/interfaces/logind/logind-gen.h new file mode 100644 index 0000000..5d21166 --- /dev/null +++ b/src/interfaces/logind/logind-gen.h @@ -0,0 +1,1405 @@ +/* + * Generated by gdbus-codegen 2.40.0. DO NOT EDIT. + * + * The license of this code is the same as for the source it was derived from. + */ + +#ifndef __LOGIND_GEN_H__ +#define __LOGIND_GEN_H__ + +#include <gio/gio.h> + +G_BEGIN_DECLS + + +/* ------------------------------------------------------------------------ */ +/* Declarations for org.freedesktop.login1.Manager */ + +#define LOGIND_TYPE_MANAGER (logind_manager_get_type ()) +#define LOGIND_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), LOGIND_TYPE_MANAGER, LogindManager)) +#define LOGIND_IS_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), LOGIND_TYPE_MANAGER)) +#define LOGIND_MANAGER_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), LOGIND_TYPE_MANAGER, LogindManagerIface)) + +struct _LogindManager; +typedef struct _LogindManager LogindManager; +typedef struct _LogindManagerIface LogindManagerIface; + +struct _LogindManagerIface +{ + GTypeInterface parent_iface; + + + + gboolean (*handle_activate_session) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0); + + gboolean (*handle_activate_session_on_seat) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + + gboolean (*handle_attach_device) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + gboolean arg_unnamed_arg2); + + gboolean (*handle_can_hibernate) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + gboolean (*handle_can_hybrid_sleep) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + gboolean (*handle_can_power_off) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + gboolean (*handle_can_reboot) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + gboolean (*handle_can_suspend) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + gboolean (*handle_create_session) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + guint arg_unnamed_arg0, + guint arg_unnamed_arg1, + const gchar *arg_unnamed_arg2, + const gchar *arg_unnamed_arg3, + const gchar *arg_unnamed_arg4, + const gchar *arg_unnamed_arg5, + const gchar *arg_unnamed_arg6, + guint arg_unnamed_arg7, + const gchar *arg_unnamed_arg8, + const gchar *arg_unnamed_arg9, + gboolean arg_unnamed_arg10, + const gchar *arg_unnamed_arg11, + const gchar *arg_unnamed_arg12, + GVariant *arg_unnamed_arg13); + + gboolean (*handle_flush_devices) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + gboolean arg_unnamed_arg0); + + gboolean (*handle_get_seat) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0); + + gboolean (*handle_get_session) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0); + + gboolean (*handle_get_session_by_pid) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + guint arg_unnamed_arg0); + + gboolean (*handle_get_user) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + guint arg_unnamed_arg0); + + gboolean (*handle_get_user_by_pid) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + guint arg_unnamed_arg0); + + gboolean (*handle_hibernate) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + gboolean arg_unnamed_arg0); + + gboolean (*handle_hybrid_sleep) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + gboolean arg_unnamed_arg0); + + gboolean (*handle_inhibit) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + const gchar *arg_unnamed_arg2, + const gchar *arg_unnamed_arg3); + + gboolean (*handle_kill_session) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + gint arg_unnamed_arg2); + + gboolean (*handle_kill_user) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + guint arg_unnamed_arg0, + gint arg_unnamed_arg1); + + gboolean (*handle_list_inhibitors) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + gboolean (*handle_list_seats) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + gboolean (*handle_list_sessions) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + gboolean (*handle_list_users) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + gboolean (*handle_lock_session) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0); + + gboolean (*handle_lock_sessions) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + gboolean (*handle_power_off) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + gboolean arg_unnamed_arg0); + + gboolean (*handle_reboot) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + gboolean arg_unnamed_arg0); + + gboolean (*handle_release_session) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0); + + gboolean (*handle_set_user_linger) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + guint arg_unnamed_arg0, + gboolean arg_unnamed_arg1, + gboolean arg_unnamed_arg2); + + gboolean (*handle_suspend) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + gboolean arg_unnamed_arg0); + + gboolean (*handle_terminate_seat) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0); + + gboolean (*handle_terminate_session) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0); + + gboolean (*handle_terminate_user) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + guint arg_unnamed_arg0); + + gboolean (*handle_unlock_session) ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *arg_unnamed_arg0); + + gboolean (*handle_unlock_sessions) ( + LogindManager *object, + GDBusMethodInvocation *invocation); + + const gchar * (*get_block_inhibited) (LogindManager *object); + + const gchar * (*get_delay_inhibited) (LogindManager *object); + + const gchar * (*get_handle_hibernate_key) (LogindManager *object); + + const gchar * (*get_handle_lid_switch) (LogindManager *object); + + const gchar * (*get_handle_power_key) (LogindManager *object); + + const gchar * (*get_handle_suspend_key) (LogindManager *object); + + const gchar * (*get_idle_action) (LogindManager *object); + + guint64 (*get_idle_action_usec) (LogindManager *object); + + gboolean (*get_idle_hint) (LogindManager *object); + + guint64 (*get_idle_since_hint) (LogindManager *object); + + guint64 (*get_idle_since_hint_monotonic) (LogindManager *object); + + guint64 (*get_inhibit_delay_max_usec) (LogindManager *object); + + const gchar *const * (*get_kill_exclude_users) (LogindManager *object); + + const gchar *const * (*get_kill_only_users) (LogindManager *object); + + gboolean (*get_kill_user_processes) (LogindManager *object); + + guint (*get_nauto_vts) (LogindManager *object); + + gboolean (*get_preparing_for_shutdown) (LogindManager *object); + + gboolean (*get_preparing_for_sleep) (LogindManager *object); + + void (*prepare_for_shutdown) ( + LogindManager *object, + gboolean arg_unnamed_arg0); + + void (*prepare_for_sleep) ( + LogindManager *object, + gboolean arg_unnamed_arg0); + + void (*seat_new) ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + + void (*seat_removed) ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + + void (*session_new) ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + + void (*session_removed) ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + + void (*user_new) ( + LogindManager *object, + guint arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + + void (*user_removed) ( + LogindManager *object, + guint arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + +}; + +GType logind_manager_get_type (void) G_GNUC_CONST; + +GDBusInterfaceInfo *logind_manager_interface_info (void); +guint logind_manager_override_properties (GObjectClass *klass, guint property_id_begin); + + +/* D-Bus method call completion functions: */ +void logind_manager_complete_get_session ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg1); + +void logind_manager_complete_get_session_by_pid ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg1); + +void logind_manager_complete_get_user ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg1); + +void logind_manager_complete_get_user_by_pid ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg1); + +void logind_manager_complete_get_seat ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg1); + +void logind_manager_complete_list_sessions ( + LogindManager *object, + GDBusMethodInvocation *invocation, + GVariant *unnamed_arg0); + +void logind_manager_complete_list_users ( + LogindManager *object, + GDBusMethodInvocation *invocation, + GVariant *unnamed_arg0); + +void logind_manager_complete_list_seats ( + LogindManager *object, + GDBusMethodInvocation *invocation, + GVariant *unnamed_arg0); + +void logind_manager_complete_list_inhibitors ( + LogindManager *object, + GDBusMethodInvocation *invocation, + GVariant *unnamed_arg0); + +void logind_manager_complete_create_session ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg14, + const gchar *unnamed_arg15, + const gchar *unnamed_arg16, + GVariant *unnamed_arg17, + guint unnamed_arg18, + const gchar *unnamed_arg19, + guint unnamed_arg20, + gboolean unnamed_arg21); + +void logind_manager_complete_release_session ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_activate_session ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_activate_session_on_seat ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_lock_session ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_unlock_session ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_lock_sessions ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_unlock_sessions ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_kill_session ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_kill_user ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_terminate_session ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_terminate_user ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_terminate_seat ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_set_user_linger ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_attach_device ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_flush_devices ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_power_off ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_reboot ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_suspend ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_hibernate ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_hybrid_sleep ( + LogindManager *object, + GDBusMethodInvocation *invocation); + +void logind_manager_complete_can_power_off ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg0); + +void logind_manager_complete_can_reboot ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg0); + +void logind_manager_complete_can_suspend ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg0); + +void logind_manager_complete_can_hibernate ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg0); + +void logind_manager_complete_can_hybrid_sleep ( + LogindManager *object, + GDBusMethodInvocation *invocation, + const gchar *unnamed_arg0); + +void logind_manager_complete_inhibit ( + LogindManager *object, + GDBusMethodInvocation *invocation, + GVariant *unnamed_arg4); + + + +/* D-Bus signal emissions functions: */ +void logind_manager_emit_session_new ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + +void logind_manager_emit_session_removed ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + +void logind_manager_emit_user_new ( + LogindManager *object, + guint arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + +void logind_manager_emit_user_removed ( + LogindManager *object, + guint arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + +void logind_manager_emit_seat_new ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + +void logind_manager_emit_seat_removed ( + LogindManager *object, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1); + +void logind_manager_emit_prepare_for_shutdown ( + LogindManager *object, + gboolean arg_unnamed_arg0); + +void logind_manager_emit_prepare_for_sleep ( + LogindManager *object, + gboolean arg_unnamed_arg0); + + + +/* D-Bus method calls: */ +void logind_manager_call_get_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_get_session_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg1, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_get_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + gchar **out_unnamed_arg1, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_get_session_by_pid ( + LogindManager *proxy, + guint arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_get_session_by_pid_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg1, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_get_session_by_pid_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gchar **out_unnamed_arg1, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_get_user ( + LogindManager *proxy, + guint arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_get_user_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg1, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_get_user_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gchar **out_unnamed_arg1, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_get_user_by_pid ( + LogindManager *proxy, + guint arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_get_user_by_pid_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg1, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_get_user_by_pid_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gchar **out_unnamed_arg1, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_get_seat ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_get_seat_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg1, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_get_seat_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + gchar **out_unnamed_arg1, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_list_sessions ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_list_sessions_finish ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_list_sessions_sync ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_list_users ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_list_users_finish ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_list_users_sync ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_list_seats ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_list_seats_finish ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_list_seats_sync ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_list_inhibitors ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_list_inhibitors_finish ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_list_inhibitors_sync ( + LogindManager *proxy, + GVariant **out_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_create_session ( + LogindManager *proxy, + guint arg_unnamed_arg0, + guint arg_unnamed_arg1, + const gchar *arg_unnamed_arg2, + const gchar *arg_unnamed_arg3, + const gchar *arg_unnamed_arg4, + const gchar *arg_unnamed_arg5, + const gchar *arg_unnamed_arg6, + guint arg_unnamed_arg7, + const gchar *arg_unnamed_arg8, + const gchar *arg_unnamed_arg9, + gboolean arg_unnamed_arg10, + const gchar *arg_unnamed_arg11, + const gchar *arg_unnamed_arg12, + GVariant *arg_unnamed_arg13, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_create_session_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg14, + gchar **out_unnamed_arg15, + gchar **out_unnamed_arg16, + GVariant **out_unnamed_arg17, + guint *out_unnamed_arg18, + gchar **out_unnamed_arg19, + guint *out_unnamed_arg20, + gboolean *out_unnamed_arg21, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_create_session_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + guint arg_unnamed_arg1, + const gchar *arg_unnamed_arg2, + const gchar *arg_unnamed_arg3, + const gchar *arg_unnamed_arg4, + const gchar *arg_unnamed_arg5, + const gchar *arg_unnamed_arg6, + guint arg_unnamed_arg7, + const gchar *arg_unnamed_arg8, + const gchar *arg_unnamed_arg9, + gboolean arg_unnamed_arg10, + const gchar *arg_unnamed_arg11, + const gchar *arg_unnamed_arg12, + GVariant *arg_unnamed_arg13, + gchar **out_unnamed_arg14, + gchar **out_unnamed_arg15, + gchar **out_unnamed_arg16, + GVariant **out_unnamed_arg17, + guint *out_unnamed_arg18, + gchar **out_unnamed_arg19, + guint *out_unnamed_arg20, + gboolean *out_unnamed_arg21, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_release_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_release_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_release_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_activate_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_activate_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_activate_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_activate_session_on_seat ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_activate_session_on_seat_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_activate_session_on_seat_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_lock_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_lock_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_lock_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_unlock_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_unlock_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_unlock_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_lock_sessions ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_lock_sessions_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_lock_sessions_sync ( + LogindManager *proxy, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_unlock_sessions ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_unlock_sessions_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_unlock_sessions_sync ( + LogindManager *proxy, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_kill_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + gint arg_unnamed_arg2, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_kill_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_kill_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + gint arg_unnamed_arg2, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_kill_user ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gint arg_unnamed_arg1, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_kill_user_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_kill_user_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gint arg_unnamed_arg1, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_terminate_session ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_terminate_session_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_terminate_session_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_terminate_user ( + LogindManager *proxy, + guint arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_terminate_user_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_terminate_user_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_terminate_seat ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_terminate_seat_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_terminate_seat_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_set_user_linger ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gboolean arg_unnamed_arg1, + gboolean arg_unnamed_arg2, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_set_user_linger_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_set_user_linger_sync ( + LogindManager *proxy, + guint arg_unnamed_arg0, + gboolean arg_unnamed_arg1, + gboolean arg_unnamed_arg2, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_attach_device ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + gboolean arg_unnamed_arg2, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_attach_device_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_attach_device_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + gboolean arg_unnamed_arg2, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_flush_devices ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_flush_devices_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_flush_devices_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_power_off ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_power_off_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_power_off_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_reboot ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_reboot_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_reboot_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_suspend ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_suspend_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_suspend_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_hibernate ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_hibernate_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_hibernate_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_hybrid_sleep ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_hybrid_sleep_finish ( + LogindManager *proxy, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_hybrid_sleep_sync ( + LogindManager *proxy, + gboolean arg_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_can_power_off ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_can_power_off_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_can_power_off_sync ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_can_reboot ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_can_reboot_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_can_reboot_sync ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_can_suspend ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_can_suspend_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_can_suspend_sync ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_can_hibernate ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_can_hibernate_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_can_hibernate_sync ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_can_hybrid_sleep ( + LogindManager *proxy, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_can_hybrid_sleep_finish ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_can_hybrid_sleep_sync ( + LogindManager *proxy, + gchar **out_unnamed_arg0, + GCancellable *cancellable, + GError **error); + +void logind_manager_call_inhibit ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + const gchar *arg_unnamed_arg2, + const gchar *arg_unnamed_arg3, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean logind_manager_call_inhibit_finish ( + LogindManager *proxy, + GVariant **out_unnamed_arg4, + GAsyncResult *res, + GError **error); + +gboolean logind_manager_call_inhibit_sync ( + LogindManager *proxy, + const gchar *arg_unnamed_arg0, + const gchar *arg_unnamed_arg1, + const gchar *arg_unnamed_arg2, + const gchar *arg_unnamed_arg3, + GVariant **out_unnamed_arg4, + GCancellable *cancellable, + GError **error); + + + +/* D-Bus property accessors: */ +guint logind_manager_get_nauto_vts (LogindManager *object); +void logind_manager_set_nauto_vts (LogindManager *object, guint value); + +const gchar *const *logind_manager_get_kill_only_users (LogindManager *object); +gchar **logind_manager_dup_kill_only_users (LogindManager *object); +void logind_manager_set_kill_only_users (LogindManager *object, const gchar *const *value); + +const gchar *const *logind_manager_get_kill_exclude_users (LogindManager *object); +gchar **logind_manager_dup_kill_exclude_users (LogindManager *object); +void logind_manager_set_kill_exclude_users (LogindManager *object, const gchar *const *value); + +gboolean logind_manager_get_kill_user_processes (LogindManager *object); +void logind_manager_set_kill_user_processes (LogindManager *object, gboolean value); + +gboolean logind_manager_get_idle_hint (LogindManager *object); +void logind_manager_set_idle_hint (LogindManager *object, gboolean value); + +guint64 logind_manager_get_idle_since_hint (LogindManager *object); +void logind_manager_set_idle_since_hint (LogindManager *object, guint64 value); + +guint64 logind_manager_get_idle_since_hint_monotonic (LogindManager *object); +void logind_manager_set_idle_since_hint_monotonic (LogindManager *object, guint64 value); + +const gchar *logind_manager_get_block_inhibited (LogindManager *object); +gchar *logind_manager_dup_block_inhibited (LogindManager *object); +void logind_manager_set_block_inhibited (LogindManager *object, const gchar *value); + +const gchar *logind_manager_get_delay_inhibited (LogindManager *object); +gchar *logind_manager_dup_delay_inhibited (LogindManager *object); +void logind_manager_set_delay_inhibited (LogindManager *object, const gchar *value); + +guint64 logind_manager_get_inhibit_delay_max_usec (LogindManager *object); +void logind_manager_set_inhibit_delay_max_usec (LogindManager *object, guint64 value); + +const gchar *logind_manager_get_handle_power_key (LogindManager *object); +gchar *logind_manager_dup_handle_power_key (LogindManager *object); +void logind_manager_set_handle_power_key (LogindManager *object, const gchar *value); + +const gchar *logind_manager_get_handle_suspend_key (LogindManager *object); +gchar *logind_manager_dup_handle_suspend_key (LogindManager *object); +void logind_manager_set_handle_suspend_key (LogindManager *object, const gchar *value); + +const gchar *logind_manager_get_handle_hibernate_key (LogindManager *object); +gchar *logind_manager_dup_handle_hibernate_key (LogindManager *object); +void logind_manager_set_handle_hibernate_key (LogindManager *object, const gchar *value); + +const gchar *logind_manager_get_handle_lid_switch (LogindManager *object); +gchar *logind_manager_dup_handle_lid_switch (LogindManager *object); +void logind_manager_set_handle_lid_switch (LogindManager *object, const gchar *value); + +const gchar *logind_manager_get_idle_action (LogindManager *object); +gchar *logind_manager_dup_idle_action (LogindManager *object); +void logind_manager_set_idle_action (LogindManager *object, const gchar *value); + +guint64 logind_manager_get_idle_action_usec (LogindManager *object); +void logind_manager_set_idle_action_usec (LogindManager *object, guint64 value); + +gboolean logind_manager_get_preparing_for_shutdown (LogindManager *object); +void logind_manager_set_preparing_for_shutdown (LogindManager *object, gboolean value); + +gboolean logind_manager_get_preparing_for_sleep (LogindManager *object); +void logind_manager_set_preparing_for_sleep (LogindManager *object, gboolean value); + + +/* ---- */ + +#define LOGIND_TYPE_MANAGER_PROXY (logind_manager_proxy_get_type ()) +#define LOGIND_MANAGER_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), LOGIND_TYPE_MANAGER_PROXY, LogindManagerProxy)) +#define LOGIND_MANAGER_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), LOGIND_TYPE_MANAGER_PROXY, LogindManagerProxyClass)) +#define LOGIND_MANAGER_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), LOGIND_TYPE_MANAGER_PROXY, LogindManagerProxyClass)) +#define LOGIND_IS_MANAGER_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), LOGIND_TYPE_MANAGER_PROXY)) +#define LOGIND_IS_MANAGER_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), LOGIND_TYPE_MANAGER_PROXY)) + +typedef struct _LogindManagerProxy LogindManagerProxy; +typedef struct _LogindManagerProxyClass LogindManagerProxyClass; +typedef struct _LogindManagerProxyPrivate LogindManagerProxyPrivate; + +struct _LogindManagerProxy +{ + /*< private >*/ + GDBusProxy parent_instance; + LogindManagerProxyPrivate *priv; +}; + +struct _LogindManagerProxyClass +{ + GDBusProxyClass parent_class; +}; + +GType logind_manager_proxy_get_type (void) G_GNUC_CONST; + +void logind_manager_proxy_new ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +LogindManager *logind_manager_proxy_new_finish ( + GAsyncResult *res, + GError **error); +LogindManager *logind_manager_proxy_new_sync ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error); + +void logind_manager_proxy_new_for_bus ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +LogindManager *logind_manager_proxy_new_for_bus_finish ( + GAsyncResult *res, + GError **error); +LogindManager *logind_manager_proxy_new_for_bus_sync ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error); + + +/* ---- */ + +#define LOGIND_TYPE_MANAGER_SKELETON (logind_manager_skeleton_get_type ()) +#define LOGIND_MANAGER_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), LOGIND_TYPE_MANAGER_SKELETON, LogindManagerSkeleton)) +#define LOGIND_MANAGER_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), LOGIND_TYPE_MANAGER_SKELETON, LogindManagerSkeletonClass)) +#define LOGIND_MANAGER_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), LOGIND_TYPE_MANAGER_SKELETON, LogindManagerSkeletonClass)) +#define LOGIND_IS_MANAGER_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), LOGIND_TYPE_MANAGER_SKELETON)) +#define LOGIND_IS_MANAGER_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), LOGIND_TYPE_MANAGER_SKELETON)) + +typedef struct _LogindManagerSkeleton LogindManagerSkeleton; +typedef struct _LogindManagerSkeletonClass LogindManagerSkeletonClass; +typedef struct _LogindManagerSkeletonPrivate LogindManagerSkeletonPrivate; + +struct _LogindManagerSkeleton +{ + /*< private >*/ + GDBusInterfaceSkeleton parent_instance; + LogindManagerSkeletonPrivate *priv; +}; + +struct _LogindManagerSkeletonClass +{ + GDBusInterfaceSkeletonClass parent_class; +}; + +GType logind_manager_skeleton_get_type (void) G_GNUC_CONST; + +LogindManager *logind_manager_skeleton_new (void); + + +G_END_DECLS + +#endif /* __LOGIND_GEN_H__ */ diff --git a/src/interfaces/logind/tmp b/src/interfaces/logind/tmp deleted file mode 100644 index c32d7ff..0000000 --- a/src/interfaces/logind/tmp +++ /dev/null @@ -1 +0,0 @@ -TODO: delete me diff --git a/src/interfaces/timedated/timedated-gen.c b/src/interfaces/timedated/timedated-gen.c new file mode 100644 index 0000000..00a812a --- /dev/null +++ b/src/interfaces/timedated/timedated-gen.c @@ -0,0 +1,2163 @@ +/* + * Generated by gdbus-codegen 2.40.0. DO NOT EDIT. + * + * The license of this code is the same as for the source it was derived from. + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include "timedated-gen.h" + +#include <string.h> +#ifdef G_OS_UNIX +# include <gio/gunixfdlist.h> +#endif + +typedef struct +{ + GDBusArgInfo parent_struct; + gboolean use_gvariant; +} _ExtendedGDBusArgInfo; + +typedef struct +{ + GDBusMethodInfo parent_struct; + const gchar *signal_name; + gboolean pass_fdlist; +} _ExtendedGDBusMethodInfo; + +typedef struct +{ + GDBusSignalInfo parent_struct; + const gchar *signal_name; +} _ExtendedGDBusSignalInfo; + +typedef struct +{ + GDBusPropertyInfo parent_struct; + const gchar *hyphen_name; + gboolean use_gvariant; +} _ExtendedGDBusPropertyInfo; + +typedef struct +{ + GDBusInterfaceInfo parent_struct; + const gchar *hyphen_name; +} _ExtendedGDBusInterfaceInfo; + +typedef struct +{ + const _ExtendedGDBusPropertyInfo *info; + guint prop_id; + GValue orig_value; /* the value before the change */ +} ChangedProperty; + +static void +_changed_property_free (ChangedProperty *data) +{ + g_value_unset (&data->orig_value); + g_free (data); +} + +static gboolean +_g_strv_equal0 (gchar **a, gchar **b) +{ + gboolean ret = FALSE; + guint n; + if (a == NULL && b == NULL) + { + ret = TRUE; + goto out; + } + if (a == NULL || b == NULL) + goto out; + if (g_strv_length (a) != g_strv_length (b)) + goto out; + for (n = 0; a[n] != NULL; n++) + if (g_strcmp0 (a[n], b[n]) != 0) + goto out; + ret = TRUE; +out: + return ret; +} + +static gboolean +_g_variant_equal0 (GVariant *a, GVariant *b) +{ + gboolean ret = FALSE; + if (a == NULL && b == NULL) + { + ret = TRUE; + goto out; + } + if (a == NULL || b == NULL) + goto out; + ret = g_variant_equal (a, b); +out: + return ret; +} + +G_GNUC_UNUSED static gboolean +_g_value_equal (const GValue *a, const GValue *b) +{ + gboolean ret = FALSE; + g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); + switch (G_VALUE_TYPE (a)) + { + case G_TYPE_BOOLEAN: + ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); + break; + case G_TYPE_UCHAR: + ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); + break; + case G_TYPE_INT: + ret = (g_value_get_int (a) == g_value_get_int (b)); + break; + case G_TYPE_UINT: + ret = (g_value_get_uint (a) == g_value_get_uint (b)); + break; + case G_TYPE_INT64: + ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); + break; + case G_TYPE_UINT64: + ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); + break; + case G_TYPE_DOUBLE: + { + /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ + gdouble da = g_value_get_double (a); + gdouble db = g_value_get_double (b); + ret = memcmp (&da, &db, sizeof (gdouble)) == 0; + } + break; + case G_TYPE_STRING: + ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); + break; + case G_TYPE_VARIANT: + ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); + break; + default: + if (G_VALUE_TYPE (a) == G_TYPE_STRV) + ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); + else + g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); + break; + } + return ret; +} + +/* ------------------------------------------------------------------------ + * Code for interface org.freedesktop.timedate1 + * ------------------------------------------------------------------------ + */ + +/** + * SECTION:Timedated + * @title: Timedated + * @short_description: Generated C code for the org.freedesktop.timedate1 D-Bus interface + * + * This section contains code for working with the <link linkend="gdbus-interface-org-freedesktop-timedate1.top_of_page">org.freedesktop.timedate1</link> D-Bus interface in C. + */ + +/* ---- Introspection data for org.freedesktop.timedate1 ---- */ + +static const _ExtendedGDBusArgInfo _timedated__method_info_set_time_IN_ARG_usec_utc = +{ + { + -1, + (gchar *) "usec_utc", + (gchar *) "x", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _timedated__method_info_set_time_IN_ARG_relative = +{ + { + -1, + (gchar *) "relative", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _timedated__method_info_set_time_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _timedated__method_info_set_time_IN_ARG_pointers[] = +{ + &_timedated__method_info_set_time_IN_ARG_usec_utc, + &_timedated__method_info_set_time_IN_ARG_relative, + &_timedated__method_info_set_time_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _timedated__method_info_set_time = +{ + { + -1, + (gchar *) "SetTime", + (GDBusArgInfo **) &_timedated__method_info_set_time_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-time", + FALSE +}; + +static const _ExtendedGDBusArgInfo _timedated__method_info_set_timezone_IN_ARG_timezone = +{ + { + -1, + (gchar *) "timezone", + (gchar *) "s", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _timedated__method_info_set_timezone_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _timedated__method_info_set_timezone_IN_ARG_pointers[] = +{ + &_timedated__method_info_set_timezone_IN_ARG_timezone, + &_timedated__method_info_set_timezone_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _timedated__method_info_set_timezone = +{ + { + -1, + (gchar *) "SetTimezone", + (GDBusArgInfo **) &_timedated__method_info_set_timezone_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-timezone", + FALSE +}; + +static const _ExtendedGDBusArgInfo _timedated__method_info_set_local_rtc_IN_ARG_local_rtc = +{ + { + -1, + (gchar *) "local_rtc", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _timedated__method_info_set_local_rtc_IN_ARG_fix_system = +{ + { + -1, + (gchar *) "fix_system", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _timedated__method_info_set_local_rtc_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _timedated__method_info_set_local_rtc_IN_ARG_pointers[] = +{ + &_timedated__method_info_set_local_rtc_IN_ARG_local_rtc, + &_timedated__method_info_set_local_rtc_IN_ARG_fix_system, + &_timedated__method_info_set_local_rtc_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _timedated__method_info_set_local_rtc = +{ + { + -1, + (gchar *) "SetLocalRTC", + (GDBusArgInfo **) &_timedated__method_info_set_local_rtc_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-local-rtc", + FALSE +}; + +static const _ExtendedGDBusArgInfo _timedated__method_info_set_ntp_IN_ARG_use_ntp = +{ + { + -1, + (gchar *) "use_ntp", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo _timedated__method_info_set_ntp_IN_ARG_user_interaction = +{ + { + -1, + (gchar *) "user_interaction", + (gchar *) "b", + NULL + }, + FALSE +}; + +static const _ExtendedGDBusArgInfo * const _timedated__method_info_set_ntp_IN_ARG_pointers[] = +{ + &_timedated__method_info_set_ntp_IN_ARG_use_ntp, + &_timedated__method_info_set_ntp_IN_ARG_user_interaction, + NULL +}; + +static const _ExtendedGDBusMethodInfo _timedated__method_info_set_ntp = +{ + { + -1, + (gchar *) "SetNTP", + (GDBusArgInfo **) &_timedated__method_info_set_ntp_IN_ARG_pointers, + NULL, + NULL + }, + "handle-set-ntp", + FALSE +}; + +static const _ExtendedGDBusMethodInfo * const _timedated__method_info_pointers[] = +{ + &_timedated__method_info_set_time, + &_timedated__method_info_set_timezone, + &_timedated__method_info_set_local_rtc, + &_timedated__method_info_set_ntp, + NULL +}; + +static const _ExtendedGDBusPropertyInfo _timedated__property_info_timezone = +{ + { + -1, + (gchar *) "Timezone", + (gchar *) "s", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "timezone", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _timedated__property_info_local_rtc = +{ + { + -1, + (gchar *) "LocalRTC", + (gchar *) "b", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "local-rtc", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo _timedated__property_info_ntp = +{ + { + -1, + (gchar *) "NTP", + (gchar *) "b", + G_DBUS_PROPERTY_INFO_FLAGS_READABLE, + NULL + }, + "ntp", + FALSE +}; + +static const _ExtendedGDBusPropertyInfo * const _timedated__property_info_pointers[] = +{ + &_timedated__property_info_timezone, + &_timedated__property_info_local_rtc, + &_timedated__property_info_ntp, + NULL +}; + +static const _ExtendedGDBusInterfaceInfo _timedated__interface_info = +{ + { + -1, + (gchar *) "org.freedesktop.timedate1", + (GDBusMethodInfo **) &_timedated__method_info_pointers, + NULL, + (GDBusPropertyInfo **) &_timedated__property_info_pointers, + NULL + }, + "", +}; + + +/** + * timedated__interface_info: + * + * Gets a machine-readable description of the <link linkend="gdbus-interface-org-freedesktop-timedate1.top_of_page">org.freedesktop.timedate1</link> D-Bus interface. + * + * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. + */ +GDBusInterfaceInfo * +timedated__interface_info (void) +{ + return (GDBusInterfaceInfo *) &_timedated__interface_info.parent_struct; +} + +/** + * timedated__override_properties: + * @klass: The class structure for a #GObject<!-- -->-derived class. + * @property_id_begin: The property id to assign to the first overridden property. + * + * Overrides all #GObject properties in the #Timedated interface for a concrete class. + * The properties are overridden in the order they are defined. + * + * Returns: The last property id. + */ +guint +timedated__override_properties (GObjectClass *klass, guint property_id_begin) +{ + g_object_class_override_property (klass, property_id_begin++, "timezone"); + g_object_class_override_property (klass, property_id_begin++, "local-rtc"); + g_object_class_override_property (klass, property_id_begin++, "ntp"); + return property_id_begin - 1; +} + + + +/** + * Timedated: + * + * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-timedate1.top_of_page">org.freedesktop.timedate1</link>. + */ + +/** + * TimedatedIface: + * @parent_iface: The parent interface. + * @handle_set_local_rtc: Handler for the #Timedated::handle-set-local-rtc signal. + * @handle_set_ntp: Handler for the #Timedated::handle-set-ntp signal. + * @handle_set_time: Handler for the #Timedated::handle-set-time signal. + * @handle_set_timezone: Handler for the #Timedated::handle-set-timezone signal. + * @get_local_rtc: Getter for the #Timedated:local-rtc property. + * @get_ntp: Getter for the #Timedated:ntp property. + * @get_timezone: Getter for the #Timedated:timezone property. + * + * Virtual table for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-timedate1.top_of_page">org.freedesktop.timedate1</link>. + */ + +typedef TimedatedIface TimedatedInterface; +G_DEFINE_INTERFACE (Timedated, timedated_, G_TYPE_OBJECT); + +static void +timedated__default_init (TimedatedIface *iface) +{ + /* GObject signals for incoming D-Bus method calls: */ + /** + * Timedated::handle-set-time: + * @object: A #Timedated. + * @invocation: A #GDBusMethodInvocation. + * @arg_usec_utc: Argument passed by remote caller. + * @arg_relative: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-timedate1.SetTime">SetTime()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call timedated__complete_set_time() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-time", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (TimedatedIface, handle_set_time), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 4, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_INT64, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN); + + /** + * Timedated::handle-set-timezone: + * @object: A #Timedated. + * @invocation: A #GDBusMethodInvocation. + * @arg_timezone: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-timedate1.SetTimezone">SetTimezone()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call timedated__complete_set_timezone() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-timezone", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (TimedatedIface, handle_set_timezone), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 3, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING, G_TYPE_BOOLEAN); + + /** + * Timedated::handle-set-local-rtc: + * @object: A #Timedated. + * @invocation: A #GDBusMethodInvocation. + * @arg_local_rtc: Argument passed by remote caller. + * @arg_fix_system: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-timedate1.SetLocalRTC">SetLocalRTC()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call timedated__complete_set_local_rtc() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-local-rtc", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (TimedatedIface, handle_set_local_rtc), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 4, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN); + + /** + * Timedated::handle-set-ntp: + * @object: A #Timedated. + * @invocation: A #GDBusMethodInvocation. + * @arg_use_ntp: Argument passed by remote caller. + * @arg_user_interaction: Argument passed by remote caller. + * + * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-timedate1.SetNTP">SetNTP()</link> D-Bus method. + * + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call timedated__complete_set_ntp() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * + * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run. + */ + g_signal_new ("handle-set-ntp", + G_TYPE_FROM_INTERFACE (iface), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (TimedatedIface, handle_set_ntp), + g_signal_accumulator_true_handled, + NULL, + g_cclosure_marshal_generic, + G_TYPE_BOOLEAN, + 3, + G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN); + + /* GObject properties for D-Bus properties: */ + /** + * Timedated:timezone: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-timedate1.Timezone">"Timezone"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_string ("timezone", "Timezone", "Timezone", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Timedated:local-rtc: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-timedate1.LocalRTC">"LocalRTC"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_boolean ("local-rtc", "LocalRTC", "LocalRTC", FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * Timedated:ntp: + * + * Represents the D-Bus property <link linkend="gdbus-property-org-freedesktop-timedate1.NTP">"NTP"</link>. + * + * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side. + */ + g_object_interface_install_property (iface, + g_param_spec_boolean ("ntp", "NTP", "NTP", FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); +} + +/** + * timedated__get_timezone: (skip) + * @object: A #Timedated. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-timedate1.Timezone">"Timezone"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * <warning>The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use timedated__dup_timezone() if on another thread.</warning> + * + * Returns: (transfer none): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object. + */ +const gchar * +timedated__get_timezone (Timedated *object) +{ + return TIMEDATED__GET_IFACE (object)->get_timezone (object); +} + +/** + * timedated__dup_timezone: (skip) + * @object: A #Timedated. + * + * Gets a copy of the <link linkend="gdbus-property-org-freedesktop-timedate1.Timezone">"Timezone"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: (transfer full): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). + */ +gchar * +timedated__dup_timezone (Timedated *object) +{ + gchar *value; + g_object_get (G_OBJECT (object), "timezone", &value, NULL); + return value; +} + +/** + * timedated__set_timezone: (skip) + * @object: A #Timedated. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-timedate1.Timezone">"Timezone"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +timedated__set_timezone (Timedated *object, const gchar *value) +{ + g_object_set (G_OBJECT (object), "timezone", value, NULL); +} + +/** + * timedated__get_local_rtc: (skip) + * @object: A #Timedated. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-timedate1.LocalRTC">"LocalRTC"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +gboolean +timedated__get_local_rtc (Timedated *object) +{ + return TIMEDATED__GET_IFACE (object)->get_local_rtc (object); +} + +/** + * timedated__set_local_rtc: (skip) + * @object: A #Timedated. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-timedate1.LocalRTC">"LocalRTC"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +timedated__set_local_rtc (Timedated *object, gboolean value) +{ + g_object_set (G_OBJECT (object), "local-rtc", value, NULL); +} + +/** + * timedated__get_ntp: (skip) + * @object: A #Timedated. + * + * Gets the value of the <link linkend="gdbus-property-org-freedesktop-timedate1.NTP">"NTP"</link> D-Bus property. + * + * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. + * + * Returns: The property value. + */ +gboolean +timedated__get_ntp (Timedated *object) +{ + return TIMEDATED__GET_IFACE (object)->get_ntp (object); +} + +/** + * timedated__set_ntp: (skip) + * @object: A #Timedated. + * @value: The value to set. + * + * Sets the <link linkend="gdbus-property-org-freedesktop-timedate1.NTP">"NTP"</link> D-Bus property to @value. + * + * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. + */ +void +timedated__set_ntp (Timedated *object, gboolean value) +{ + g_object_set (G_OBJECT (object), "ntp", value, NULL); +} + +/** + * timedated__call_set_time: + * @proxy: A #TimedatedProxy. + * @arg_usec_utc: Argument to pass with the method invocation. + * @arg_relative: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-timedate1.SetTime">SetTime()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call timedated__call_set_time_finish() to get the result of the operation. + * + * See timedated__call_set_time_sync() for the synchronous, blocking version of this method. + */ +void +timedated__call_set_time ( + Timedated *proxy, + gint64 arg_usec_utc, + gboolean arg_relative, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetTime", + g_variant_new ("(xbb)", + arg_usec_utc, + arg_relative, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * timedated__call_set_time_finish: + * @proxy: A #TimedatedProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to timedated__call_set_time(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with timedated__call_set_time(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +timedated__call_set_time_finish ( + Timedated *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * timedated__call_set_time_sync: + * @proxy: A #TimedatedProxy. + * @arg_usec_utc: Argument to pass with the method invocation. + * @arg_relative: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-timedate1.SetTime">SetTime()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See timedated__call_set_time() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +timedated__call_set_time_sync ( + Timedated *proxy, + gint64 arg_usec_utc, + gboolean arg_relative, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetTime", + g_variant_new ("(xbb)", + arg_usec_utc, + arg_relative, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * timedated__call_set_timezone: + * @proxy: A #TimedatedProxy. + * @arg_timezone: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-timedate1.SetTimezone">SetTimezone()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call timedated__call_set_timezone_finish() to get the result of the operation. + * + * See timedated__call_set_timezone_sync() for the synchronous, blocking version of this method. + */ +void +timedated__call_set_timezone ( + Timedated *proxy, + const gchar *arg_timezone, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetTimezone", + g_variant_new ("(sb)", + arg_timezone, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * timedated__call_set_timezone_finish: + * @proxy: A #TimedatedProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to timedated__call_set_timezone(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with timedated__call_set_timezone(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +timedated__call_set_timezone_finish ( + Timedated *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * timedated__call_set_timezone_sync: + * @proxy: A #TimedatedProxy. + * @arg_timezone: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-timedate1.SetTimezone">SetTimezone()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See timedated__call_set_timezone() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +timedated__call_set_timezone_sync ( + Timedated *proxy, + const gchar *arg_timezone, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetTimezone", + g_variant_new ("(sb)", + arg_timezone, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * timedated__call_set_local_rtc: + * @proxy: A #TimedatedProxy. + * @arg_local_rtc: Argument to pass with the method invocation. + * @arg_fix_system: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-timedate1.SetLocalRTC">SetLocalRTC()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call timedated__call_set_local_rtc_finish() to get the result of the operation. + * + * See timedated__call_set_local_rtc_sync() for the synchronous, blocking version of this method. + */ +void +timedated__call_set_local_rtc ( + Timedated *proxy, + gboolean arg_local_rtc, + gboolean arg_fix_system, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetLocalRTC", + g_variant_new ("(bbb)", + arg_local_rtc, + arg_fix_system, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * timedated__call_set_local_rtc_finish: + * @proxy: A #TimedatedProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to timedated__call_set_local_rtc(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with timedated__call_set_local_rtc(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +timedated__call_set_local_rtc_finish ( + Timedated *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * timedated__call_set_local_rtc_sync: + * @proxy: A #TimedatedProxy. + * @arg_local_rtc: Argument to pass with the method invocation. + * @arg_fix_system: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-timedate1.SetLocalRTC">SetLocalRTC()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See timedated__call_set_local_rtc() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +timedated__call_set_local_rtc_sync ( + Timedated *proxy, + gboolean arg_local_rtc, + gboolean arg_fix_system, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetLocalRTC", + g_variant_new ("(bbb)", + arg_local_rtc, + arg_fix_system, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * timedated__call_set_ntp: + * @proxy: A #TimedatedProxy. + * @arg_use_ntp: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. + * @user_data: User data to pass to @callback. + * + * Asynchronously invokes the <link linkend="gdbus-method-org-freedesktop-timedate1.SetNTP">SetNTP()</link> D-Bus method on @proxy. + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call timedated__call_set_ntp_finish() to get the result of the operation. + * + * See timedated__call_set_ntp_sync() for the synchronous, blocking version of this method. + */ +void +timedated__call_set_ntp ( + Timedated *proxy, + gboolean arg_use_ntp, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_dbus_proxy_call (G_DBUS_PROXY (proxy), + "SetNTP", + g_variant_new ("(bb)", + arg_use_ntp, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + callback, + user_data); +} + +/** + * timedated__call_set_ntp_finish: + * @proxy: A #TimedatedProxy. + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to timedated__call_set_ntp(). + * @error: Return location for error or %NULL. + * + * Finishes an operation started with timedated__call_set_ntp(). + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +timedated__call_set_ntp_finish ( + Timedated *proxy, + GAsyncResult *res, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * timedated__call_set_ntp_sync: + * @proxy: A #TimedatedProxy. + * @arg_use_ntp: Argument to pass with the method invocation. + * @arg_user_interaction: Argument to pass with the method invocation. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Synchronously invokes the <link linkend="gdbus-method-org-freedesktop-timedate1.SetNTP">SetNTP()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received. + * + * See timedated__call_set_ntp() for the asynchronous version of this method. + * + * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set. + */ +gboolean +timedated__call_set_ntp_sync ( + Timedated *proxy, + gboolean arg_use_ntp, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error) +{ + GVariant *_ret; + _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "SetNTP", + g_variant_new ("(bb)", + arg_use_ntp, + arg_user_interaction), + G_DBUS_CALL_FLAGS_NONE, + -1, + cancellable, + error); + if (_ret == NULL) + goto _out; + g_variant_get (_ret, + "()"); + g_variant_unref (_ret); +_out: + return _ret != NULL; +} + +/** + * timedated__complete_set_time: + * @object: A #Timedated. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-timedate1.SetTime">SetTime()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +timedated__complete_set_time ( + Timedated *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * timedated__complete_set_timezone: + * @object: A #Timedated. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-timedate1.SetTimezone">SetTimezone()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +timedated__complete_set_timezone ( + Timedated *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * timedated__complete_set_local_rtc: + * @object: A #Timedated. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-timedate1.SetLocalRTC">SetLocalRTC()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +timedated__complete_set_local_rtc ( + Timedated *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/** + * timedated__complete_set_ntp: + * @object: A #Timedated. + * @invocation: (transfer full): A #GDBusMethodInvocation. + * + * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-freedesktop-timedate1.SetNTP">SetNTP()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar. + * + * This method will free @invocation, you cannot use it afterwards. + */ +void +timedated__complete_set_ntp ( + Timedated *object, + GDBusMethodInvocation *invocation) +{ + g_dbus_method_invocation_return_value (invocation, + g_variant_new ("()")); +} + +/* ------------------------------------------------------------------------ */ + +/** + * TimedatedProxy: + * + * The #TimedatedProxy structure contains only private data and should only be accessed using the provided API. + */ + +/** + * TimedatedProxyClass: + * @parent_class: The parent class. + * + * Class structure for #TimedatedProxy. + */ + +struct _TimedatedProxyPrivate +{ + GData *qdata; +}; + +static void timedated__proxy_iface_init (TimedatedIface *iface); + +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 +G_DEFINE_TYPE_WITH_CODE (TimedatedProxy, timedated__proxy, G_TYPE_DBUS_PROXY, + G_ADD_PRIVATE (TimedatedProxy) + G_IMPLEMENT_INTERFACE (TIMEDATED_TYPE_, timedated__proxy_iface_init)); + +#else +G_DEFINE_TYPE_WITH_CODE (TimedatedProxy, timedated__proxy, G_TYPE_DBUS_PROXY, + G_IMPLEMENT_INTERFACE (TIMEDATED_TYPE_, timedated__proxy_iface_init)); + +#endif +static void +timedated__proxy_finalize (GObject *object) +{ + TimedatedProxy *proxy = TIMEDATED__PROXY (object); + g_datalist_clear (&proxy->priv->qdata); + G_OBJECT_CLASS (timedated__proxy_parent_class)->finalize (object); +} + +static void +timedated__proxy_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + const _ExtendedGDBusPropertyInfo *info; + GVariant *variant; + g_assert (prop_id != 0 && prop_id - 1 < 3); + info = _timedated__property_info_pointers[prop_id - 1]; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); + if (info->use_gvariant) + { + g_value_set_variant (value, variant); + } + else + { + if (variant != NULL) + g_dbus_gvariant_to_gvalue (variant, value); + } + if (variant != NULL) + g_variant_unref (variant); +} + +static void +timedated__proxy_set_property_cb (GDBusProxy *proxy, + GAsyncResult *res, + gpointer user_data) +{ + const _ExtendedGDBusPropertyInfo *info = user_data; + GError *error; + GVariant *_ret; + error = NULL; + _ret = g_dbus_proxy_call_finish (proxy, res, &error); + if (!_ret) + { + g_warning ("Error setting property '%s' on interface org.freedesktop.timedate1: %s (%s, %d)", + info->parent_struct.name, + error->message, g_quark_to_string (error->domain), error->code); + g_error_free (error); + } + else + { + g_variant_unref (_ret); + } +} + +static void +timedated__proxy_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + const _ExtendedGDBusPropertyInfo *info; + GVariant *variant; + g_assert (prop_id != 0 && prop_id - 1 < 3); + info = _timedated__property_info_pointers[prop_id - 1]; + variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); + g_dbus_proxy_call (G_DBUS_PROXY (object), + "org.freedesktop.DBus.Properties.Set", + g_variant_new ("(ssv)", "org.freedesktop.timedate1", info->parent_struct.name, variant), + G_DBUS_CALL_FLAGS_NONE, + -1, + NULL, (GAsyncReadyCallback) timedated__proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); + g_variant_unref (variant); +} + +static void +timedated__proxy_g_signal (GDBusProxy *proxy, + const gchar *sender_name G_GNUC_UNUSED, + const gchar *signal_name, + GVariant *parameters) +{ + _ExtendedGDBusSignalInfo *info; + GVariantIter iter; + GVariant *child; + GValue *paramv; + guint num_params; + guint n; + guint signal_id; + info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_timedated__interface_info.parent_struct, signal_name); + if (info == NULL) + return; + num_params = g_variant_n_children (parameters); + paramv = g_new0 (GValue, num_params + 1); + g_value_init (¶mv[0], TIMEDATED_TYPE_); + g_value_set_object (¶mv[0], proxy); + g_variant_iter_init (&iter, parameters); + n = 1; + while ((child = g_variant_iter_next_value (&iter)) != NULL) + { + _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; + if (arg_info->use_gvariant) + { + g_value_init (¶mv[n], G_TYPE_VARIANT); + g_value_set_variant (¶mv[n], child); + n++; + } + else + g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); + g_variant_unref (child); + } + signal_id = g_signal_lookup (info->signal_name, TIMEDATED_TYPE_); + g_signal_emitv (paramv, signal_id, 0, NULL); + for (n = 0; n < num_params + 1; n++) + g_value_unset (¶mv[n]); + g_free (paramv); +} + +static void +timedated__proxy_g_properties_changed (GDBusProxy *_proxy, + GVariant *changed_properties, + const gchar *const *invalidated_properties) +{ + TimedatedProxy *proxy = TIMEDATED__PROXY (_proxy); + guint n; + const gchar *key; + GVariantIter *iter; + _ExtendedGDBusPropertyInfo *info; + g_variant_get (changed_properties, "a{sv}", &iter); + while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) + { + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_timedated__interface_info.parent_struct, key); + g_datalist_remove_data (&proxy->priv->qdata, key); + if (info != NULL) + g_object_notify (G_OBJECT (proxy), info->hyphen_name); + } + g_variant_iter_free (iter); + for (n = 0; invalidated_properties[n] != NULL; n++) + { + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_timedated__interface_info.parent_struct, invalidated_properties[n]); + g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); + if (info != NULL) + g_object_notify (G_OBJECT (proxy), info->hyphen_name); + } +} + +static const gchar * +timedated__proxy_get_timezone (Timedated *object) +{ + TimedatedProxy *proxy = TIMEDATED__PROXY (object); + GVariant *variant; + const gchar *value = NULL; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "Timezone"); + if (variant != NULL) + { + value = g_variant_get_string (variant, NULL); + g_variant_unref (variant); + } + return value; +} + +static gboolean +timedated__proxy_get_local_rtc (Timedated *object) +{ + TimedatedProxy *proxy = TIMEDATED__PROXY (object); + GVariant *variant; + gboolean value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "LocalRTC"); + if (variant != NULL) + { + value = g_variant_get_boolean (variant); + g_variant_unref (variant); + } + return value; +} + +static gboolean +timedated__proxy_get_ntp (Timedated *object) +{ + TimedatedProxy *proxy = TIMEDATED__PROXY (object); + GVariant *variant; + gboolean value = 0; + variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "NTP"); + if (variant != NULL) + { + value = g_variant_get_boolean (variant); + g_variant_unref (variant); + } + return value; +} + +static void +timedated__proxy_init (TimedatedProxy *proxy) +{ +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 + proxy->priv = timedated__proxy_get_instance_private (proxy); +#else + proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TIMEDATED_TYPE__PROXY, TimedatedProxyPrivate); +#endif + + g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), timedated__interface_info ()); +} + +static void +timedated__proxy_class_init (TimedatedProxyClass *klass) +{ + GObjectClass *gobject_class; + GDBusProxyClass *proxy_class; + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = timedated__proxy_finalize; + gobject_class->get_property = timedated__proxy_get_property; + gobject_class->set_property = timedated__proxy_set_property; + + proxy_class = G_DBUS_PROXY_CLASS (klass); + proxy_class->g_signal = timedated__proxy_g_signal; + proxy_class->g_properties_changed = timedated__proxy_g_properties_changed; + + timedated__override_properties (gobject_class, 1); + +#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 + g_type_class_add_private (klass, sizeof (TimedatedProxyPrivate)); +#endif +} + +static void +timedated__proxy_iface_init (TimedatedIface *iface) +{ + iface->get_timezone = timedated__proxy_get_timezone; + iface->get_local_rtc = timedated__proxy_get_local_rtc; + iface->get_ntp = timedated__proxy_get_ntp; +} + +/** + * timedated__proxy_new: + * @connection: A #GDBusConnection. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied. + * @user_data: User data to pass to @callback. + * + * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-timedate1.top_of_page">org.freedesktop.timedate1</link>. See g_dbus_proxy_new() for more details. + * + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call timedated__proxy_new_finish() to get the result of the operation. + * + * See timedated__proxy_new_sync() for the synchronous, blocking version of this constructor. + */ +void +timedated__proxy_new ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_async_initable_new_async (TIMEDATED_TYPE__PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.freedesktop.timedate1", NULL); +} + +/** + * timedated__proxy_new_finish: + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to timedated__proxy_new(). + * @error: Return location for error or %NULL + * + * Finishes an operation started with timedated__proxy_new(). + * + * Returns: (transfer full) (type TimedatedProxy): The constructed proxy object or %NULL if @error is set. + */ +Timedated * +timedated__proxy_new_finish ( + GAsyncResult *res, + GError **error) +{ + GObject *ret; + GObject *source_object; + source_object = g_async_result_get_source_object (res); + ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); + g_object_unref (source_object); + if (ret != NULL) + return TIMEDATED_ (ret); + else + return NULL; +} + +/** + * timedated__proxy_new_sync: + * @connection: A #GDBusConnection. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL + * + * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-timedate1.top_of_page">org.freedesktop.timedate1</link>. See g_dbus_proxy_new_sync() for more details. + * + * The calling thread is blocked until a reply is received. + * + * See timedated__proxy_new() for the asynchronous version of this constructor. + * + * Returns: (transfer full) (type TimedatedProxy): The constructed proxy object or %NULL if @error is set. + */ +Timedated * +timedated__proxy_new_sync ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error) +{ + GInitable *ret; + ret = g_initable_new (TIMEDATED_TYPE__PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.freedesktop.timedate1", NULL); + if (ret != NULL) + return TIMEDATED_ (ret); + else + return NULL; +} + + +/** + * timedated__proxy_new_for_bus: + * @bus_type: A #GBusType. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: A bus name (well-known or unique). + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @callback: A #GAsyncReadyCallback to call when the request is satisfied. + * @user_data: User data to pass to @callback. + * + * Like timedated__proxy_new() but takes a #GBusType instead of a #GDBusConnection. + * + * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from. + * You can then call timedated__proxy_new_for_bus_finish() to get the result of the operation. + * + * See timedated__proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. + */ +void +timedated__proxy_new_for_bus ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data) +{ + g_async_initable_new_async (TIMEDATED_TYPE__PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.freedesktop.timedate1", NULL); +} + +/** + * timedated__proxy_new_for_bus_finish: + * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to timedated__proxy_new_for_bus(). + * @error: Return location for error or %NULL + * + * Finishes an operation started with timedated__proxy_new_for_bus(). + * + * Returns: (transfer full) (type TimedatedProxy): The constructed proxy object or %NULL if @error is set. + */ +Timedated * +timedated__proxy_new_for_bus_finish ( + GAsyncResult *res, + GError **error) +{ + GObject *ret; + GObject *source_object; + source_object = g_async_result_get_source_object (res); + ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); + g_object_unref (source_object); + if (ret != NULL) + return TIMEDATED_ (ret); + else + return NULL; +} + +/** + * timedated__proxy_new_for_bus_sync: + * @bus_type: A #GBusType. + * @flags: Flags from the #GDBusProxyFlags enumeration. + * @name: A bus name (well-known or unique). + * @object_path: An object path. + * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL + * + * Like timedated__proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. + * + * The calling thread is blocked until a reply is received. + * + * See timedated__proxy_new_for_bus() for the asynchronous version of this constructor. + * + * Returns: (transfer full) (type TimedatedProxy): The constructed proxy object or %NULL if @error is set. + */ +Timedated * +timedated__proxy_new_for_bus_sync ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error) +{ + GInitable *ret; + ret = g_initable_new (TIMEDATED_TYPE__PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.freedesktop.timedate1", NULL); + if (ret != NULL) + return TIMEDATED_ (ret); + else + return NULL; +} + + +/* ------------------------------------------------------------------------ */ + +/** + * TimedatedSkeleton: + * + * The #TimedatedSkeleton structure contains only private data and should only be accessed using the provided API. + */ + +/** + * TimedatedSkeletonClass: + * @parent_class: The parent class. + * + * Class structure for #TimedatedSkeleton. + */ + +struct _TimedatedSkeletonPrivate +{ + GValue *properties; + GList *changed_properties; + GSource *changed_properties_idle_source; + GMainContext *context; + GMutex lock; +}; + +static void +_timedated__skeleton_handle_method_call ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name, + const gchar *method_name, + GVariant *parameters, + GDBusMethodInvocation *invocation, + gpointer user_data) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (user_data); + _ExtendedGDBusMethodInfo *info; + GVariantIter iter; + GVariant *child; + GValue *paramv; + guint num_params; + guint num_extra; + guint n; + guint signal_id; + GValue return_value = G_VALUE_INIT; + info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); + g_assert (info != NULL); + num_params = g_variant_n_children (parameters); + num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); + n = 0; + g_value_init (¶mv[n], TIMEDATED_TYPE_); + g_value_set_object (¶mv[n++], skeleton); + g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); + g_value_set_object (¶mv[n++], invocation); + if (info->pass_fdlist) + { +#ifdef G_OS_UNIX + g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); + g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); +#else + g_assert_not_reached (); +#endif + } + g_variant_iter_init (&iter, parameters); + while ((child = g_variant_iter_next_value (&iter)) != NULL) + { + _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; + if (arg_info->use_gvariant) + { + g_value_init (¶mv[n], G_TYPE_VARIANT); + g_value_set_variant (¶mv[n], child); + n++; + } + else + g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); + g_variant_unref (child); + } + signal_id = g_signal_lookup (info->signal_name, TIMEDATED_TYPE_); + g_value_init (&return_value, G_TYPE_BOOLEAN); + g_signal_emitv (paramv, signal_id, 0, &return_value); + if (!g_value_get_boolean (&return_value)) + g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name); + g_value_unset (&return_value); + for (n = 0; n < num_params + num_extra; n++) + g_value_unset (¶mv[n]); + g_free (paramv); +} + +static GVariant * +_timedated__skeleton_handle_get_property ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name G_GNUC_UNUSED, + const gchar *property_name, + GError **error, + gpointer user_data) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (user_data); + GValue value = G_VALUE_INIT; + GParamSpec *pspec; + _ExtendedGDBusPropertyInfo *info; + GVariant *ret; + ret = NULL; + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_timedated__interface_info.parent_struct, property_name); + g_assert (info != NULL); + pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); + if (pspec == NULL) + { + g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); + } + else + { + g_value_init (&value, pspec->value_type); + g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); + ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); + g_value_unset (&value); + } + return ret; +} + +static gboolean +_timedated__skeleton_handle_set_property ( + GDBusConnection *connection G_GNUC_UNUSED, + const gchar *sender G_GNUC_UNUSED, + const gchar *object_path G_GNUC_UNUSED, + const gchar *interface_name G_GNUC_UNUSED, + const gchar *property_name, + GVariant *variant, + GError **error, + gpointer user_data) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (user_data); + GValue value = G_VALUE_INIT; + GParamSpec *pspec; + _ExtendedGDBusPropertyInfo *info; + gboolean ret; + ret = FALSE; + info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_timedated__interface_info.parent_struct, property_name); + g_assert (info != NULL); + pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); + if (pspec == NULL) + { + g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); + } + else + { + if (info->use_gvariant) + g_value_set_variant (&value, variant); + else + g_dbus_gvariant_to_gvalue (variant, &value); + g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); + g_value_unset (&value); + ret = TRUE; + } + return ret; +} + +static const GDBusInterfaceVTable _timedated__skeleton_vtable = +{ + _timedated__skeleton_handle_method_call, + _timedated__skeleton_handle_get_property, + _timedated__skeleton_handle_set_property, + {NULL} +}; + +static GDBusInterfaceInfo * +timedated__skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) +{ + return timedated__interface_info (); +} + +static GDBusInterfaceVTable * +timedated__skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) +{ + return (GDBusInterfaceVTable *) &_timedated__skeleton_vtable; +} + +static GVariant * +timedated__skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (_skeleton); + + GVariantBuilder builder; + guint n; + g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); + if (_timedated__interface_info.parent_struct.properties == NULL) + goto out; + for (n = 0; _timedated__interface_info.parent_struct.properties[n] != NULL; n++) + { + GDBusPropertyInfo *info = _timedated__interface_info.parent_struct.properties[n]; + if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) + { + GVariant *value; + value = _timedated__skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.freedesktop.timedate1", info->name, NULL, skeleton); + if (value != NULL) + { + g_variant_take_ref (value); + g_variant_builder_add (&builder, "{sv}", info->name, value); + g_variant_unref (value); + } + } + } +out: + return g_variant_builder_end (&builder); +} + +static gboolean _timedated__emit_changed (gpointer user_data); + +static void +timedated__skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (_skeleton); + gboolean emit_changed = FALSE; + + g_mutex_lock (&skeleton->priv->lock); + if (skeleton->priv->changed_properties_idle_source != NULL) + { + g_source_destroy (skeleton->priv->changed_properties_idle_source); + skeleton->priv->changed_properties_idle_source = NULL; + emit_changed = TRUE; + } + g_mutex_unlock (&skeleton->priv->lock); + + if (emit_changed) + _timedated__emit_changed (skeleton); +} + +static void timedated__skeleton_iface_init (TimedatedIface *iface); +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 +G_DEFINE_TYPE_WITH_CODE (TimedatedSkeleton, timedated__skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, + G_ADD_PRIVATE (TimedatedSkeleton) + G_IMPLEMENT_INTERFACE (TIMEDATED_TYPE_, timedated__skeleton_iface_init)); + +#else +G_DEFINE_TYPE_WITH_CODE (TimedatedSkeleton, timedated__skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, + G_IMPLEMENT_INTERFACE (TIMEDATED_TYPE_, timedated__skeleton_iface_init)); + +#endif +static void +timedated__skeleton_finalize (GObject *object) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (object); + guint n; + for (n = 0; n < 3; n++) + g_value_unset (&skeleton->priv->properties[n]); + g_free (skeleton->priv->properties); + g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); + if (skeleton->priv->changed_properties_idle_source != NULL) + g_source_destroy (skeleton->priv->changed_properties_idle_source); + g_main_context_unref (skeleton->priv->context); + g_mutex_clear (&skeleton->priv->lock); + G_OBJECT_CLASS (timedated__skeleton_parent_class)->finalize (object); +} + +static void +timedated__skeleton_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec G_GNUC_UNUSED) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (object); + g_assert (prop_id != 0 && prop_id - 1 < 3); + g_mutex_lock (&skeleton->priv->lock); + g_value_copy (&skeleton->priv->properties[prop_id - 1], value); + g_mutex_unlock (&skeleton->priv->lock); +} + +static gboolean +_timedated__emit_changed (gpointer user_data) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (user_data); + GList *l; + GVariantBuilder builder; + GVariantBuilder invalidated_builder; + guint num_changes; + + g_mutex_lock (&skeleton->priv->lock); + g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); + g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); + for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) + { + ChangedProperty *cp = l->data; + GVariant *variant; + const GValue *cur_value; + + cur_value = &skeleton->priv->properties[cp->prop_id - 1]; + if (!_g_value_equal (cur_value, &cp->orig_value)) + { + variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); + g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); + g_variant_unref (variant); + num_changes++; + } + } + if (num_changes > 0) + { + GList *connections, *ll; + GVariant *signal_variant; + signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "org.freedesktop.timedate1", + &builder, &invalidated_builder)); + connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); + for (ll = connections; ll != NULL; ll = ll->next) + { + GDBusConnection *connection = ll->data; + + g_dbus_connection_emit_signal (connection, + NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), + "org.freedesktop.DBus.Properties", + "PropertiesChanged", + signal_variant, + NULL); + } + g_variant_unref (signal_variant); + g_list_free_full (connections, g_object_unref); + } + else + { + g_variant_builder_clear (&builder); + g_variant_builder_clear (&invalidated_builder); + } + g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); + skeleton->priv->changed_properties = NULL; + skeleton->priv->changed_properties_idle_source = NULL; + g_mutex_unlock (&skeleton->priv->lock); + return FALSE; +} + +static void +_timedated__schedule_emit_changed (TimedatedSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) +{ + ChangedProperty *cp; + GList *l; + cp = NULL; + for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) + { + ChangedProperty *i_cp = l->data; + if (i_cp->info == info) + { + cp = i_cp; + break; + } + } + if (cp == NULL) + { + cp = g_new0 (ChangedProperty, 1); + cp->prop_id = prop_id; + cp->info = info; + skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); + g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); + g_value_copy (orig_value, &cp->orig_value); + } +} + +static void +timedated__skeleton_notify (GObject *object, + GParamSpec *pspec G_GNUC_UNUSED) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (object); + g_mutex_lock (&skeleton->priv->lock); + if (skeleton->priv->changed_properties != NULL && + skeleton->priv->changed_properties_idle_source == NULL) + { + skeleton->priv->changed_properties_idle_source = g_idle_source_new (); + g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); + g_source_set_callback (skeleton->priv->changed_properties_idle_source, _timedated__emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); + g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); + g_source_unref (skeleton->priv->changed_properties_idle_source); + } + g_mutex_unlock (&skeleton->priv->lock); +} + +static void +timedated__skeleton_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (object); + g_assert (prop_id != 0 && prop_id - 1 < 3); + g_mutex_lock (&skeleton->priv->lock); + g_object_freeze_notify (object); + if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) + { + if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL) + _timedated__schedule_emit_changed (skeleton, _timedated__property_info_pointers[prop_id - 1], prop_id, &skeleton->priv->properties[prop_id - 1]); + g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); + g_object_notify_by_pspec (object, pspec); + } + g_mutex_unlock (&skeleton->priv->lock); + g_object_thaw_notify (object); +} + +static void +timedated__skeleton_init (TimedatedSkeleton *skeleton) +{ +#if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 + skeleton->priv = timedated__skeleton_get_instance_private (skeleton); +#else + skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TIMEDATED_TYPE__SKELETON, TimedatedSkeletonPrivate); +#endif + + g_mutex_init (&skeleton->priv->lock); + skeleton->priv->context = g_main_context_ref_thread_default (); + skeleton->priv->properties = g_new0 (GValue, 3); + g_value_init (&skeleton->priv->properties[0], G_TYPE_STRING); + g_value_init (&skeleton->priv->properties[1], G_TYPE_BOOLEAN); + g_value_init (&skeleton->priv->properties[2], G_TYPE_BOOLEAN); +} + +static const gchar * +timedated__skeleton_get_timezone (Timedated *object) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (object); + const gchar *value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_string (&(skeleton->priv->properties[0])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static gboolean +timedated__skeleton_get_local_rtc (Timedated *object) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (object); + gboolean value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_boolean (&(skeleton->priv->properties[1])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static gboolean +timedated__skeleton_get_ntp (Timedated *object) +{ + TimedatedSkeleton *skeleton = TIMEDATED__SKELETON (object); + gboolean value; + g_mutex_lock (&skeleton->priv->lock); + value = g_value_get_boolean (&(skeleton->priv->properties[2])); + g_mutex_unlock (&skeleton->priv->lock); + return value; +} + +static void +timedated__skeleton_class_init (TimedatedSkeletonClass *klass) +{ + GObjectClass *gobject_class; + GDBusInterfaceSkeletonClass *skeleton_class; + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = timedated__skeleton_finalize; + gobject_class->get_property = timedated__skeleton_get_property; + gobject_class->set_property = timedated__skeleton_set_property; + gobject_class->notify = timedated__skeleton_notify; + + + timedated__override_properties (gobject_class, 1); + + skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); + skeleton_class->get_info = timedated__skeleton_dbus_interface_get_info; + skeleton_class->get_properties = timedated__skeleton_dbus_interface_get_properties; + skeleton_class->flush = timedated__skeleton_dbus_interface_flush; + skeleton_class->get_vtable = timedated__skeleton_dbus_interface_get_vtable; + +#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 + g_type_class_add_private (klass, sizeof (TimedatedSkeletonPrivate)); +#endif +} + +static void +timedated__skeleton_iface_init (TimedatedIface *iface) +{ + iface->get_timezone = timedated__skeleton_get_timezone; + iface->get_local_rtc = timedated__skeleton_get_local_rtc; + iface->get_ntp = timedated__skeleton_get_ntp; +} + +/** + * timedated__skeleton_new: + * + * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-org-freedesktop-timedate1.top_of_page">org.freedesktop.timedate1</link>. + * + * Returns: (transfer full) (type TimedatedSkeleton): The skeleton object. + */ +Timedated * +timedated__skeleton_new (void) +{ + return TIMEDATED_ (g_object_new (TIMEDATED_TYPE__SKELETON, NULL)); +} + diff --git a/src/interfaces/timedated/timedated-gen.h b/src/interfaces/timedated/timedated-gen.h new file mode 100644 index 0000000..bf45d6b --- /dev/null +++ b/src/interfaces/timedated/timedated-gen.h @@ -0,0 +1,288 @@ +/* + * Generated by gdbus-codegen 2.40.0. DO NOT EDIT. + * + * The license of this code is the same as for the source it was derived from. + */ + +#ifndef __TIMEDATED_GEN_H__ +#define __TIMEDATED_GEN_H__ + +#include <gio/gio.h> + +G_BEGIN_DECLS + + +/* ------------------------------------------------------------------------ */ +/* Declarations for org.freedesktop.timedate1 */ + +#define TIMEDATED_TYPE_ (timedated__get_type ()) +#define TIMEDATED_(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TIMEDATED_TYPE_, Timedated)) +#define TIMEDATED_IS_(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TIMEDATED_TYPE_)) +#define TIMEDATED__GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TIMEDATED_TYPE_, TimedatedIface)) + +struct _Timedated; +typedef struct _Timedated Timedated; +typedef struct _TimedatedIface TimedatedIface; + +struct _TimedatedIface +{ + GTypeInterface parent_iface; + + + gboolean (*handle_set_local_rtc) ( + Timedated *object, + GDBusMethodInvocation *invocation, + gboolean arg_local_rtc, + gboolean arg_fix_system, + gboolean arg_user_interaction); + + gboolean (*handle_set_ntp) ( + Timedated *object, + GDBusMethodInvocation *invocation, + gboolean arg_use_ntp, + gboolean arg_user_interaction); + + gboolean (*handle_set_time) ( + Timedated *object, + GDBusMethodInvocation *invocation, + gint64 arg_usec_utc, + gboolean arg_relative, + gboolean arg_user_interaction); + + gboolean (*handle_set_timezone) ( + Timedated *object, + GDBusMethodInvocation *invocation, + const gchar *arg_timezone, + gboolean arg_user_interaction); + + gboolean (*get_local_rtc) (Timedated *object); + + gboolean (*get_ntp) (Timedated *object); + + const gchar * (*get_timezone) (Timedated *object); + +}; + +GType timedated__get_type (void) G_GNUC_CONST; + +GDBusInterfaceInfo *timedated__interface_info (void); +guint timedated__override_properties (GObjectClass *klass, guint property_id_begin); + + +/* D-Bus method call completion functions: */ +void timedated__complete_set_time ( + Timedated *object, + GDBusMethodInvocation *invocation); + +void timedated__complete_set_timezone ( + Timedated *object, + GDBusMethodInvocation *invocation); + +void timedated__complete_set_local_rtc ( + Timedated *object, + GDBusMethodInvocation *invocation); + +void timedated__complete_set_ntp ( + Timedated *object, + GDBusMethodInvocation *invocation); + + + +/* D-Bus method calls: */ +void timedated__call_set_time ( + Timedated *proxy, + gint64 arg_usec_utc, + gboolean arg_relative, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean timedated__call_set_time_finish ( + Timedated *proxy, + GAsyncResult *res, + GError **error); + +gboolean timedated__call_set_time_sync ( + Timedated *proxy, + gint64 arg_usec_utc, + gboolean arg_relative, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + +void timedated__call_set_timezone ( + Timedated *proxy, + const gchar *arg_timezone, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean timedated__call_set_timezone_finish ( + Timedated *proxy, + GAsyncResult *res, + GError **error); + +gboolean timedated__call_set_timezone_sync ( + Timedated *proxy, + const gchar *arg_timezone, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + +void timedated__call_set_local_rtc ( + Timedated *proxy, + gboolean arg_local_rtc, + gboolean arg_fix_system, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean timedated__call_set_local_rtc_finish ( + Timedated *proxy, + GAsyncResult *res, + GError **error); + +gboolean timedated__call_set_local_rtc_sync ( + Timedated *proxy, + gboolean arg_local_rtc, + gboolean arg_fix_system, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + +void timedated__call_set_ntp ( + Timedated *proxy, + gboolean arg_use_ntp, + gboolean arg_user_interaction, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +gboolean timedated__call_set_ntp_finish ( + Timedated *proxy, + GAsyncResult *res, + GError **error); + +gboolean timedated__call_set_ntp_sync ( + Timedated *proxy, + gboolean arg_use_ntp, + gboolean arg_user_interaction, + GCancellable *cancellable, + GError **error); + + + +/* D-Bus property accessors: */ +const gchar *timedated__get_timezone (Timedated *object); +gchar *timedated__dup_timezone (Timedated *object); +void timedated__set_timezone (Timedated *object, const gchar *value); + +gboolean timedated__get_local_rtc (Timedated *object); +void timedated__set_local_rtc (Timedated *object, gboolean value); + +gboolean timedated__get_ntp (Timedated *object); +void timedated__set_ntp (Timedated *object, gboolean value); + + +/* ---- */ + +#define TIMEDATED_TYPE__PROXY (timedated__proxy_get_type ()) +#define TIMEDATED__PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TIMEDATED_TYPE__PROXY, TimedatedProxy)) +#define TIMEDATED__PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TIMEDATED_TYPE__PROXY, TimedatedProxyClass)) +#define TIMEDATED__PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TIMEDATED_TYPE__PROXY, TimedatedProxyClass)) +#define TIMEDATED_IS__PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TIMEDATED_TYPE__PROXY)) +#define TIMEDATED_IS__PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TIMEDATED_TYPE__PROXY)) + +typedef struct _TimedatedProxy TimedatedProxy; +typedef struct _TimedatedProxyClass TimedatedProxyClass; +typedef struct _TimedatedProxyPrivate TimedatedProxyPrivate; + +struct _TimedatedProxy +{ + /*< private >*/ + GDBusProxy parent_instance; + TimedatedProxyPrivate *priv; +}; + +struct _TimedatedProxyClass +{ + GDBusProxyClass parent_class; +}; + +GType timedated__proxy_get_type (void) G_GNUC_CONST; + +void timedated__proxy_new ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +Timedated *timedated__proxy_new_finish ( + GAsyncResult *res, + GError **error); +Timedated *timedated__proxy_new_sync ( + GDBusConnection *connection, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error); + +void timedated__proxy_new_for_bus ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +Timedated *timedated__proxy_new_for_bus_finish ( + GAsyncResult *res, + GError **error); +Timedated *timedated__proxy_new_for_bus_sync ( + GBusType bus_type, + GDBusProxyFlags flags, + const gchar *name, + const gchar *object_path, + GCancellable *cancellable, + GError **error); + + +/* ---- */ + +#define TIMEDATED_TYPE__SKELETON (timedated__skeleton_get_type ()) +#define TIMEDATED__SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TIMEDATED_TYPE__SKELETON, TimedatedSkeleton)) +#define TIMEDATED__SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TIMEDATED_TYPE__SKELETON, TimedatedSkeletonClass)) +#define TIMEDATED__SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TIMEDATED_TYPE__SKELETON, TimedatedSkeletonClass)) +#define TIMEDATED_IS__SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TIMEDATED_TYPE__SKELETON)) +#define TIMEDATED_IS__SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TIMEDATED_TYPE__SKELETON)) + +typedef struct _TimedatedSkeleton TimedatedSkeleton; +typedef struct _TimedatedSkeletonClass TimedatedSkeletonClass; +typedef struct _TimedatedSkeletonPrivate TimedatedSkeletonPrivate; + +struct _TimedatedSkeleton +{ + /*< private >*/ + GDBusInterfaceSkeleton parent_instance; + TimedatedSkeletonPrivate *priv; +}; + +struct _TimedatedSkeletonClass +{ + GDBusInterfaceSkeletonClass parent_class; +}; + +GType timedated__skeleton_get_type (void) G_GNUC_CONST; + +Timedated *timedated__skeleton_new (void); + + +G_END_DECLS + +#endif /* __TIMEDATED_GEN_H__ */ diff --git a/src/interfaces/timedated/tmp b/src/interfaces/timedated/tmp deleted file mode 100644 index c32d7ff..0000000 --- a/src/interfaces/timedated/tmp +++ /dev/null @@ -1 +0,0 @@ -TODO: delete me |