X-Git-Url: https://uglyman.kremlin.cc/gitweb/gitweb.cgi?p=systembsd.git;a=blobdiff_plain;f=src%2Finterfaces%2Fhostnamed%2Fhostnamed-gen.c;h=480ff72de154e4e61d16c228d19e073d655059d4;hp=20269470f3747c9d6589129ad722ee5607f6175d;hb=b63d30e3b9cceb0a33045bec2050f5d2598fe583;hpb=76b67a1868f8e9f47121d87819147ac157889432 diff --git a/src/interfaces/hostnamed/hostnamed-gen.c b/src/interfaces/hostnamed/hostnamed-gen.c index 2026947..480ff72 100644 --- a/src/interfaces/hostnamed/hostnamed-gen.c +++ b/src/interfaces/hostnamed/hostnamed-gen.c @@ -3172,567 +3172,3 @@ hostname1_skeleton_new (void) return HOSTNAME1 (g_object_new (TYPE_HOSTNAME1_SKELETON, NULL)); } -/* ------------------------------------------------------------------------ - * Code for Object, ObjectProxy and ObjectSkeleton - * ------------------------------------------------------------------------ - */ - -/** - * SECTION:Object - * @title: Object - * @short_description: Specialized GDBusObject types - * - * This section contains the #Object, #ObjectProxy, and #ObjectSkeleton types which make it easier to work with objects implementing generated types for D-Bus interfaces. - */ - -/** - * Object: - * - * The #Object type is a specialized container of interfaces. - */ - -/** - * ObjectIface: - * @parent_iface: The parent interface. - * - * Virtual table for the #Object interface. - */ - -typedef ObjectIface ObjectInterface; -G_DEFINE_INTERFACE_WITH_CODE (Object, object, G_TYPE_OBJECT, g_type_interface_add_prerequisite (g_define_type_id, G_TYPE_DBUS_OBJECT)); - -static void -object_default_init (ObjectIface *iface) -{ - /** - * Object:hostname1: - * - * The #Hostname1 instance corresponding to the D-Bus interface org.freedesktop.hostname1, if any. - * - * Connect to the #GObject::notify signal to get informed of property changes. - */ - g_object_interface_install_property (iface, g_param_spec_object ("hostname1", "hostname1", "hostname1", TYPE_HOSTNAME1, G_PARAM_READWRITE|G_PARAM_STATIC_STRINGS)); - -} - -/** - * object_get_hostname1: - * @object: A #Object. - * - * Gets the #Hostname1 instance for the D-Bus interface org.freedesktop.hostname1 on @object, if any. - * - * Returns: (transfer full): A #Hostname1 that must be freed with g_object_unref() or %NULL if @object does not implement the interface. - */ -Hostname1 *object_get_hostname1 (Object *object) -{ - GDBusInterface *ret; - ret = g_dbus_object_get_interface (G_DBUS_OBJECT (object), "org.freedesktop.hostname1"); - if (ret == NULL) - return NULL; - return HOSTNAME1 (ret); -} - - -/** - * object_peek_hostname1: (skip) - * @object: A #Object. - * - * Like object_get_hostname1() but doesn't increase the reference count on the returned object. - * - * It is not safe to use the returned object if you are on another thread than the one where the #GDBusObjectManagerClient or #GDBusObjectManagerServer for @object is running. - * - * Returns: (transfer none): A #Hostname1 or %NULL if @object does not implement the interface. Do not free the returned object, it is owned by @object. - */ -Hostname1 *object_peek_hostname1 (Object *object) -{ - GDBusInterface *ret; - ret = g_dbus_object_get_interface (G_DBUS_OBJECT (object), "org.freedesktop.hostname1"); - if (ret == NULL) - return NULL; - g_object_unref (ret); - return HOSTNAME1 (ret); -} - - -static void -object_notify (GDBusObject *object, GDBusInterface *interface) -{ - _ExtendedGDBusInterfaceInfo *info = (_ExtendedGDBusInterfaceInfo *) g_dbus_interface_get_info (interface); - /* info can be NULL if the other end is using a D-Bus interface we don't know - * anything about, for example old generated code in this process talking to - * newer generated code in the other process. */ - if (info != NULL) - g_object_notify (G_OBJECT (object), info->hyphen_name); -} - -/** - * ObjectProxy: - * - * The #ObjectProxy structure contains only private data and should only be accessed using the provided API. - */ - -/** - * ObjectProxyClass: - * @parent_class: The parent class. - * - * Class structure for #ObjectProxy. - */ - -static void -object_proxy__object_iface_init (ObjectIface *iface G_GNUC_UNUSED) -{ -} - -static void -object_proxy__g_dbus_object_iface_init (GDBusObjectIface *iface) -{ - iface->interface_added = object_notify; - iface->interface_removed = object_notify; -} - - -G_DEFINE_TYPE_WITH_CODE (ObjectProxy, object_proxy, G_TYPE_DBUS_OBJECT_PROXY, - G_IMPLEMENT_INTERFACE (TYPE_OBJECT, object_proxy__object_iface_init) - G_IMPLEMENT_INTERFACE (G_TYPE_DBUS_OBJECT, object_proxy__g_dbus_object_iface_init)); - -static void -object_proxy_init (ObjectProxy *object G_GNUC_UNUSED) -{ -} - -static void -object_proxy_set_property (GObject *gobject, - guint prop_id, - const GValue *value G_GNUC_UNUSED, - GParamSpec *pspec) -{ - G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec); -} - -static void -object_proxy_get_property (GObject *gobject, - guint prop_id, - GValue *value, - GParamSpec *pspec) -{ - ObjectProxy *object = OBJECT_PROXY (gobject); - GDBusInterface *interface; - - switch (prop_id) - { - case 1: - interface = g_dbus_object_get_interface (G_DBUS_OBJECT (object), "org.freedesktop.hostname1"); - g_value_take_object (value, interface); - break; - - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec); - break; - } -} - -static void -object_proxy_class_init (ObjectProxyClass *klass) -{ - GObjectClass *gobject_class = G_OBJECT_CLASS (klass); - - gobject_class->set_property = object_proxy_set_property; - gobject_class->get_property = object_proxy_get_property; - - g_object_class_override_property (gobject_class, 1, "hostname1"); -} - -/** - * object_proxy_new: - * @connection: A #GDBusConnection. - * @object_path: An object path. - * - * Creates a new proxy object. - * - * Returns: (transfer full): The proxy object. - */ -ObjectProxy * -object_proxy_new (GDBusConnection *connection, - const gchar *object_path) -{ - g_return_val_if_fail (G_IS_DBUS_CONNECTION (connection), NULL); - g_return_val_if_fail (g_variant_is_object_path (object_path), NULL); - return OBJECT_PROXY (g_object_new (TYPE_OBJECT_PROXY, "g-connection", connection, "g-object-path", object_path, NULL)); -} - -/** - * ObjectSkeleton: - * - * The #ObjectSkeleton structure contains only private data and should only be accessed using the provided API. - */ - -/** - * ObjectSkeletonClass: - * @parent_class: The parent class. - * - * Class structure for #ObjectSkeleton. - */ - -static void -object_skeleton__object_iface_init (ObjectIface *iface G_GNUC_UNUSED) -{ -} - - -static void -object_skeleton__g_dbus_object_iface_init (GDBusObjectIface *iface) -{ - iface->interface_added = object_notify; - iface->interface_removed = object_notify; -} - -G_DEFINE_TYPE_WITH_CODE (ObjectSkeleton, object_skeleton, G_TYPE_DBUS_OBJECT_SKELETON, - G_IMPLEMENT_INTERFACE (TYPE_OBJECT, object_skeleton__object_iface_init) - G_IMPLEMENT_INTERFACE (G_TYPE_DBUS_OBJECT, object_skeleton__g_dbus_object_iface_init)); - -static void -object_skeleton_init (ObjectSkeleton *object G_GNUC_UNUSED) -{ -} - -static void -object_skeleton_set_property (GObject *gobject, - guint prop_id, - const GValue *value, - GParamSpec *pspec) -{ - ObjectSkeleton *object = OBJECT_SKELETON (gobject); - GDBusInterfaceSkeleton *interface; - - switch (prop_id) - { - case 1: - interface = g_value_get_object (value); - if (interface != NULL) - { - g_warn_if_fail (IS_HOSTNAME1 (interface)); - g_dbus_object_skeleton_add_interface (G_DBUS_OBJECT_SKELETON (object), interface); - } - else - { - g_dbus_object_skeleton_remove_interface_by_name (G_DBUS_OBJECT_SKELETON (object), "org.freedesktop.hostname1"); - } - break; - - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec); - break; - } -} - -static void -object_skeleton_get_property (GObject *gobject, - guint prop_id, - GValue *value, - GParamSpec *pspec) -{ - ObjectSkeleton *object = OBJECT_SKELETON (gobject); - GDBusInterface *interface; - - switch (prop_id) - { - case 1: - interface = g_dbus_object_get_interface (G_DBUS_OBJECT (object), "org.freedesktop.hostname1"); - g_value_take_object (value, interface); - break; - - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec); - break; - } -} - -static void -object_skeleton_class_init (ObjectSkeletonClass *klass) -{ - GObjectClass *gobject_class = G_OBJECT_CLASS (klass); - - gobject_class->set_property = object_skeleton_set_property; - gobject_class->get_property = object_skeleton_get_property; - - g_object_class_override_property (gobject_class, 1, "hostname1"); -} - -/** - * object_skeleton_new: - * @object_path: An object path. - * - * Creates a new skeleton object. - * - * Returns: (transfer full): The skeleton object. - */ -ObjectSkeleton * -object_skeleton_new (const gchar *object_path) -{ - g_return_val_if_fail (g_variant_is_object_path (object_path), NULL); - return OBJECT_SKELETON (g_object_new (TYPE_OBJECT_SKELETON, "g-object-path", object_path, NULL)); -} - -/** - * object_skeleton_set_hostname1: - * @object: A #ObjectSkeleton. - * @interface_: (allow-none): A #Hostname1 or %NULL to clear the interface. - * - * Sets the #Hostname1 instance for the D-Bus interface org.freedesktop.hostname1 on @object. - */ -void object_skeleton_set_hostname1 (ObjectSkeleton *object, Hostname1 *interface_) -{ - g_object_set (G_OBJECT (object), "hostname1", interface_, NULL); -} - - -/* ------------------------------------------------------------------------ - * Code for ObjectManager client - * ------------------------------------------------------------------------ - */ - -/** - * SECTION:ObjectManagerClient - * @title: ObjectManagerClient - * @short_description: Generated GDBusObjectManagerClient type - * - * This section contains a #GDBusObjectManagerClient that uses object_manager_client_get_proxy_type() as the #GDBusProxyTypeFunc. - */ - -/** - * ObjectManagerClient: - * - * The #ObjectManagerClient structure contains only private data and should only be accessed using the provided API. - */ - -/** - * ObjectManagerClientClass: - * @parent_class: The parent class. - * - * Class structure for #ObjectManagerClient. - */ - -G_DEFINE_TYPE (ObjectManagerClient, object_manager_client, G_TYPE_DBUS_OBJECT_MANAGER_CLIENT); - -static void -object_manager_client_init (ObjectManagerClient *manager G_GNUC_UNUSED) -{ -} - -static void -object_manager_client_class_init (ObjectManagerClientClass *klass G_GNUC_UNUSED) -{ -} - -/** - * object_manager_client_get_proxy_type: - * @manager: A #GDBusObjectManagerClient. - * @object_path: The object path of the remote object (unused). - * @interface_name: (allow-none): Interface name of the remote object or %NULL to get the object proxy #GType. - * @user_data: User data (unused). - * - * A #GDBusProxyTypeFunc that maps @interface_name to the generated #GDBusObjectProxy- and #GDBusProxy-derived types. - * - * Returns: A #GDBusProxy-derived #GType if @interface_name is not %NULL, otherwise the #GType for #ObjectProxy. - */ -GType -object_manager_client_get_proxy_type (GDBusObjectManagerClient *manager G_GNUC_UNUSED, const gchar *object_path G_GNUC_UNUSED, const gchar *interface_name, gpointer user_data G_GNUC_UNUSED) -{ - static gsize once_init_value = 0; - static GHashTable *lookup_hash; - GType ret; - - if (interface_name == NULL) - return TYPE_OBJECT_PROXY; - if (g_once_init_enter (&once_init_value)) - { - lookup_hash = g_hash_table_new (g_str_hash, g_str_equal); - g_hash_table_insert (lookup_hash, (gpointer) "org.freedesktop.hostname1", GSIZE_TO_POINTER (TYPE_HOSTNAME1_PROXY)); - g_once_init_leave (&once_init_value, 1); - } - ret = (GType) GPOINTER_TO_SIZE (g_hash_table_lookup (lookup_hash, interface_name)); - if (ret == (GType) 0) - ret = G_TYPE_DBUS_PROXY; - return ret; -} - -/** - * object_manager_client_new: - * @connection: A #GDBusConnection. - * @flags: Flags from the #GDBusObjectManagerClientFlags 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 #GDBusObjectManagerClient using object_manager_client_get_proxy_type() as the #GDBusProxyTypeFunc. See g_dbus_object_manager_client_new() for more details. - * - * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from. - * You can then call object_manager_client_new_finish() to get the result of the operation. - * - * See object_manager_client_new_sync() for the synchronous, blocking version of this constructor. - */ -void -object_manager_client_new ( - GDBusConnection *connection, - GDBusObjectManagerClientFlags flags, - const gchar *name, - const gchar *object_path, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data) -{ - g_async_initable_new_async (TYPE_OBJECT_MANAGER_CLIENT, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "flags", flags, "name", name, "connection", connection, "object-path", object_path, "get-proxy-type-func", object_manager_client_get_proxy_type, NULL); -} - -/** - * object_manager_client_new_finish: - * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to object_manager_client_new(). - * @error: Return location for error or %NULL - * - * Finishes an operation started with object_manager_client_new(). - * - * Returns: (transfer full) (type ObjectManagerClient): The constructed object manager client or %NULL if @error is set. - */ -GDBusObjectManager * -object_manager_client_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 G_DBUS_OBJECT_MANAGER (ret); - else - return NULL; -} - -/** - * object_manager_client_new_sync: - * @connection: A #GDBusConnection. - * @flags: Flags from the #GDBusObjectManagerClientFlags 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 #GDBusObjectManagerClient using object_manager_client_get_proxy_type() as the #GDBusProxyTypeFunc. See g_dbus_object_manager_client_new_sync() for more details. - * - * The calling thread is blocked until a reply is received. - * - * See object_manager_client_new() for the asynchronous version of this constructor. - * - * Returns: (transfer full) (type ObjectManagerClient): The constructed object manager client or %NULL if @error is set. - */ -GDBusObjectManager * -object_manager_client_new_sync ( - GDBusConnection *connection, - GDBusObjectManagerClientFlags flags, - const gchar *name, - const gchar *object_path, - GCancellable *cancellable, - GError **error) -{ - GInitable *ret; - ret = g_initable_new (TYPE_OBJECT_MANAGER_CLIENT, cancellable, error, "flags", flags, "name", name, "connection", connection, "object-path", object_path, "get-proxy-type-func", object_manager_client_get_proxy_type, NULL); - if (ret != NULL) - return G_DBUS_OBJECT_MANAGER (ret); - else - return NULL; -} - - -/** - * object_manager_client_new_for_bus: - * @bus_type: A #GBusType. - * @flags: Flags from the #GDBusObjectManagerClientFlags 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 object_manager_client_new() but takes a #GBusType instead of a #GDBusConnection. - * - * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from. - * You can then call object_manager_client_new_for_bus_finish() to get the result of the operation. - * - * See object_manager_client_new_for_bus_sync() for the synchronous, blocking version of this constructor. - */ -void -object_manager_client_new_for_bus ( - GBusType bus_type, - GDBusObjectManagerClientFlags flags, - const gchar *name, - const gchar *object_path, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data) -{ - g_async_initable_new_async (TYPE_OBJECT_MANAGER_CLIENT, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "flags", flags, "name", name, "bus-type", bus_type, "object-path", object_path, "get-proxy-type-func", object_manager_client_get_proxy_type, NULL); -} - -/** - * object_manager_client_new_for_bus_finish: - * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to object_manager_client_new_for_bus(). - * @error: Return location for error or %NULL - * - * Finishes an operation started with object_manager_client_new_for_bus(). - * - * Returns: (transfer full) (type ObjectManagerClient): The constructed object manager client or %NULL if @error is set. - */ -GDBusObjectManager * -object_manager_client_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 G_DBUS_OBJECT_MANAGER (ret); - else - return NULL; -} - -/** - * object_manager_client_new_for_bus_sync: - * @bus_type: A #GBusType. - * @flags: Flags from the #GDBusObjectManagerClientFlags 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 object_manager_client_new_sync() but takes a #GBusType instead of a #GDBusConnection. - * - * The calling thread is blocked until a reply is received. - * - * See object_manager_client_new_for_bus() for the asynchronous version of this constructor. - * - * Returns: (transfer full) (type ObjectManagerClient): The constructed object manager client or %NULL if @error is set. - */ -GDBusObjectManager * -object_manager_client_new_for_bus_sync ( - GBusType bus_type, - GDBusObjectManagerClientFlags flags, - const gchar *name, - const gchar *object_path, - GCancellable *cancellable, - GError **error) -{ - GInitable *ret; - ret = g_initable_new (TYPE_OBJECT_MANAGER_CLIENT, cancellable, error, "flags", flags, "name", name, "bus-type", bus_type, "object-path", object_path, "get-proxy-type-func", object_manager_client_get_proxy_type, NULL); - if (ret != NULL) - return G_DBUS_OBJECT_MANAGER (ret); - else - return NULL; -} - -