GDBusObjectSkeleton

GDBusObjectSkeleton — Service-side D-Bus object

Synopsis

#include <gio/gio.h>

                    GDBusObjectSkeleton;
struct              GDBusObjectSkeletonClass;
GDBusObjectSkeleton * g_dbus_object_skeleton_new        (const gchar *object_path);
void                g_dbus_object_skeleton_flush        (GDBusObjectSkeleton *object);
void                g_dbus_object_skeleton_add_interface
                                                        (GDBusObjectSkeleton *object,
                                                         GDBusInterfaceSkeleton *interface_);
void                g_dbus_object_skeleton_remove_interface
                                                        (GDBusObjectSkeleton *object,
                                                         GDBusInterfaceSkeleton *interface_);
void                g_dbus_object_skeleton_remove_interface_by_name
                                                        (GDBusObjectSkeleton *object,
                                                         const gchar *interface_name);
void                g_dbus_object_skeleton_set_object_path
                                                        (GDBusObjectSkeleton *object,
                                                         const gchar *object_path);

Object Hierarchy

  GObject
   +----GDBusObjectSkeleton

Implemented Interfaces

GDBusObjectSkeleton implements GDBusObject.

Properties

  "g-object-path"            gchar*                : Read / Write / Construct

Signals

  "authorize-method"                               : Run Last

Description

A GDBusObjectSkeleton instance is essentially a group of D-Bus interfaces. The set of exported interfaces on the object may be dynamic and change at runtime.

This type is intended to be used with GDBusObjectManager.

Details

GDBusObjectSkeleton

typedef struct _GDBusObjectSkeleton GDBusObjectSkeleton;

The GDBusObjectSkeleton structure contains private data and should only be accessed using the provided API.

Since 2.30


struct GDBusObjectSkeletonClass

struct GDBusObjectSkeletonClass {
  GObjectClass parent_class;

  /* Signals */
  gboolean (*authorize_method) (GDBusObjectSkeleton       *object,
                                GDBusInterfaceSkeleton    *interface_,
                                GDBusMethodInvocation *invocation);
};

Class structure for GDBusObjectSkeleton.

GObjectClass parent_class;

The parent class.

authorize_method ()

Signal class handler for the "authorize-method" signal.

Since 2.30


g_dbus_object_skeleton_new ()

GDBusObjectSkeleton * g_dbus_object_skeleton_new        (const gchar *object_path);

Creates a new GDBusObjectSkeleton.

object_path :

An object path.

Returns :

A GDBusObjectSkeleton. Free with g_object_unref().

Since 2.30


g_dbus_object_skeleton_flush ()

void                g_dbus_object_skeleton_flush        (GDBusObjectSkeleton *object);

This method simply calls g_dbus_interface_skeleton_flush() on all interfaces belonging to object. See that method for when flushing is useful.

object :

A GDBusObjectSkeleton.

Since 2.30


g_dbus_object_skeleton_add_interface ()

void                g_dbus_object_skeleton_add_interface
                                                        (GDBusObjectSkeleton *object,
                                                         GDBusInterfaceSkeleton *interface_);

Adds interface_ to object.

If object already contains a GDBusInterfaceSkeleton with the same interface name, it is removed before interface_ is added.

Note that object takes its own reference on interface_ and holds it until removed.

object :

A GDBusObjectSkeleton.

interface_ :

A GDBusInterfaceSkeleton.

Since 2.30


g_dbus_object_skeleton_remove_interface ()

void                g_dbus_object_skeleton_remove_interface
                                                        (GDBusObjectSkeleton *object,
                                                         GDBusInterfaceSkeleton *interface_);

Removes interface_ from object.

object :

A GDBusObjectSkeleton.

interface_ :

A GDBusInterfaceSkeleton.

Since 2.30


g_dbus_object_skeleton_remove_interface_by_name ()

void                g_dbus_object_skeleton_remove_interface_by_name
                                                        (GDBusObjectSkeleton *object,
                                                         const gchar *interface_name);

Removes the GDBusInterface with interface_name from object.

If no D-Bus interface of the given interface exists, this function does nothing.

object :

A GDBusObjectSkeleton.

interface_name :

A D-Bus interface name.

Since 2.30


g_dbus_object_skeleton_set_object_path ()

void                g_dbus_object_skeleton_set_object_path
                                                        (GDBusObjectSkeleton *object,
                                                         const gchar *object_path);

Sets the object path for object.

object :

A GDBusObjectSkeleton.

object_path :

A valid D-Bus object path.

Since 2.30

Property Details

The "g-object-path" property

  "g-object-path"            gchar*                : Read / Write / Construct

The object path where the object is exported.

Default value: NULL

Since 2.30

Signal Details

The "authorize-method" signal

gboolean            user_function                      (GDBusObjectSkeleton    *object,
                                                        GDBusInterfaceSkeleton *interface,
                                                        GDBusMethodInvocation  *invocation,
                                                        gpointer                user_data)       : Run Last

Emitted when a method is invoked by a remote caller and used to determine if the method call is authorized.

This signal is like GDBusInterfaceSkeleton's "g-authorize-method" signal, except that it is for the enclosing object.

The default class handler just returns TRUE.

object :

The GDBusObjectSkeleton emitting the signal.

interface :

The GDBusInterfaceSkeleton that invocation is for.

invocation :

A GDBusMethodInvocation.

user_data :

user data set when the signal handler was connected.

Returns :

TRUE if the call is authorized, FALSE otherwise.

Since 2.30