Service-side Account interfaces

Service-side Account interfaces — GInterfaces for Telepathy Account objects

Synopsis

#include <telepathy-glib/telepathy-glib-dbus.h>

                    TpSvcAccount;
                    TpSvcAccountClass;
void                tp_svc_account_emit_account_property_changed
                                                        (gpointer instance,
                                                         GHashTable *arg_Properties);
void                tp_svc_account_emit_removed         (gpointer instance);
void                (*tp_svc_account_reconnect_impl)    (TpSvcAccount *self,
                                                         DBusGMethodInvocation *context);
void                tp_svc_account_return_from_reconnect
                                                        (DBusGMethodInvocation *context);
void                tp_svc_account_implement_reconnect  (TpSvcAccountClass *klass,
                                                         tp_svc_account_reconnect_impl impl);
void                (*tp_svc_account_remove_impl)       (TpSvcAccount *self,
                                                         DBusGMethodInvocation *context);
void                tp_svc_account_return_from_remove   (DBusGMethodInvocation *context);
void                tp_svc_account_implement_remove     (TpSvcAccountClass *klass,
                                                         tp_svc_account_remove_impl impl);
void                (*tp_svc_account_update_parameters_impl)
                                                        (TpSvcAccount *self,
                                                         GHashTable *in_Set,
                                                         const gchar **in_Unset,
                                                         DBusGMethodInvocation *context);
void                tp_svc_account_return_from_update_parameters
                                                        (DBusGMethodInvocation *context,
                                                         const gchar **out_Reconnect_Required);
void                tp_svc_account_implement_update_parameters
                                                        (TpSvcAccountClass *klass,
                                                         tp_svc_account_update_parameters_impl impl);


                    TpSvcAccountInterfaceAvatar1;
                    TpSvcAccountInterfaceAvatar1Class;
void                tp_svc_account_interface_avatar1_emit_avatar_changed
                                                        (gpointer instance);


                    TpSvcAccountInterfaceStorage1;
                    TpSvcAccountInterfaceStorage1Class;


                    TpSvcAccountInterfaceAddressing1;
                    TpSvcAccountInterfaceAddressing1Class;
void                tp_svc_account_interface_addressing1_implement_set_uri_scheme_association
                                                        (TpSvcAccountInterfaceAddressing1Class *klass,
                                                         tp_svc_account_interface_addressing1_set_uri_scheme_association_impl impl);
void                tp_svc_account_interface_addressing1_return_from_set_uri_scheme_association
                                                        (DBusGMethodInvocation *context);
void                (*tp_svc_account_interface_addressing1_set_uri_scheme_association_impl)
                                                        (TpSvcAccountInterfaceAddressing1 *self,
                                                         const gchar *in_URI_Scheme,
                                                         gboolean in_Association,
                                                         DBusGMethodInvocation *context);

Object Hierarchy

  GInterface
   +----TpSvcAccount
  GInterface
   +----TpSvcAccountInterfaceAvatar1
  GInterface
   +----TpSvcAccountInterfaceStorage1
  GInterface
   +----TpSvcAccountInterfaceAddressing1

Signals

  "account-property-changed"                       : Has Details
  "removed"                                        : Has Details
  "avatar-changed"                                 : Has Details

Description

These interfaces (auto-generated from the Telepathy spec) make it easier to export objects implementing the Telepathy Account and its optional interfaces, with the correct method and signal signatures, and emit signals from those objects in a type-safe way.

You don't need these interfaces unless you're implementing a Telepathy AccountManager, such as Mission Control.

Details

TpSvcAccount

typedef struct _TpSvcAccount TpSvcAccount;

Dummy typedef representing any implementation of this interface.


TpSvcAccountClass

typedef struct _TpSvcAccountClass TpSvcAccountClass;

The class of TpSvcAccount.

In a full implementation of this interface (i.e. all methods implemented), the interface initialization function used in G_IMPLEMENT_INTERFACE() would typically look like this:

static void
implement_account (gpointer klass,
    gpointer unused G_GNUC_UNUSED)
{
#define IMPLEMENT(x) tp_svc_account_implement_##x (\
  klass, my_object_##x)
  IMPLEMENT (remove);
  IMPLEMENT (update_parameters);
  IMPLEMENT (reconnect);
#undef IMPLEMENT
}


tp_svc_account_emit_account_property_changed ()

void                tp_svc_account_emit_account_property_changed
                                                        (gpointer instance,
                                                         GHashTable *arg_Properties);

Type-safe wrapper around g_signal_emit to emit the AccountPropertyChanged signal on interface im.telepathy.v1.Account.

instance :

The object implementing this interface

arg_Properties :

GHashTable * (FIXME, generate documentation)

tp_svc_account_emit_removed ()

void                tp_svc_account_emit_removed         (gpointer instance);

Type-safe wrapper around g_signal_emit to emit the Removed signal on interface im.telepathy.v1.Account.

instance :

The object implementing this interface

tp_svc_account_reconnect_impl ()

void                (*tp_svc_account_reconnect_impl)    (TpSvcAccount *self,
                                                         DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method Reconnect on interface im.telepathy.v1.Account.

self :

The object implementing this interface

context :

Used to return values or throw an error

tp_svc_account_return_from_reconnect ()

void                tp_svc_account_return_from_reconnect
                                                        (DBusGMethodInvocation *context);

Return successfully by calling dbus_g_method_return(). This inline function exists only to provide type-safety.

context :

The D-Bus method invocation context

tp_svc_account_implement_reconnect ()

void                tp_svc_account_implement_reconnect  (TpSvcAccountClass *klass,
                                                         tp_svc_account_reconnect_impl impl);

Register an implementation for the Reconnect method in the vtable of an implementation of this interface. To be called from the interface init function.

klass :

A class whose instances implement this interface

impl :

A callback used to implement the Reconnect D-Bus method

tp_svc_account_remove_impl ()

void                (*tp_svc_account_remove_impl)       (TpSvcAccount *self,
                                                         DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method Remove on interface im.telepathy.v1.Account.

self :

The object implementing this interface

context :

Used to return values or throw an error

tp_svc_account_return_from_remove ()

void                tp_svc_account_return_from_remove   (DBusGMethodInvocation *context);

Return successfully by calling dbus_g_method_return(). This inline function exists only to provide type-safety.

context :

The D-Bus method invocation context

tp_svc_account_implement_remove ()

void                tp_svc_account_implement_remove     (TpSvcAccountClass *klass,
                                                         tp_svc_account_remove_impl impl);

Register an implementation for the Remove method in the vtable of an implementation of this interface. To be called from the interface init function.

klass :

A class whose instances implement this interface

impl :

A callback used to implement the Remove D-Bus method

tp_svc_account_update_parameters_impl ()

void                (*tp_svc_account_update_parameters_impl)
                                                        (TpSvcAccount *self,
                                                         GHashTable *in_Set,
                                                         const gchar **in_Unset,
                                                         DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method UpdateParameters on interface im.telepathy.v1.Account.

self :

The object implementing this interface

in_Set :

GHashTable * (FIXME, generate documentation)

in_Unset :

const gchar ** (FIXME, generate documentation)

context :

Used to return values or throw an error

tp_svc_account_return_from_update_parameters ()

void                tp_svc_account_return_from_update_parameters
                                                        (DBusGMethodInvocation *context,
                                                         const gchar **out_Reconnect_Required);

Return successfully by calling dbus_g_method_return(). This inline function exists only to provide type-safety.

context :

The D-Bus method invocation context

out_Reconnect_Required :

const gchar ** (FIXME, generate documentation)

tp_svc_account_implement_update_parameters ()

void                tp_svc_account_implement_update_parameters
                                                        (TpSvcAccountClass *klass,
                                                         tp_svc_account_update_parameters_impl impl);

Register an implementation for the UpdateParameters method in the vtable of an implementation of this interface. To be called from the interface init function.

klass :

A class whose instances implement this interface

impl :

A callback used to implement the UpdateParameters D-Bus method

TpSvcAccountInterfaceAvatar1

typedef struct _TpSvcAccountInterfaceAvatar1 TpSvcAccountInterfaceAvatar1;

Dummy typedef representing any implementation of this interface.


TpSvcAccountInterfaceAvatar1Class

typedef struct _TpSvcAccountInterfaceAvatar1Class TpSvcAccountInterfaceAvatar1Class;

The class of TpSvcAccountInterfaceAvatar1. This interface has no D-Bus methods, so an implementation can typically pass NULL to G_IMPLEMENT_INTERFACE() as the interface initialization function.


tp_svc_account_interface_avatar1_emit_avatar_changed ()

void                tp_svc_account_interface_avatar1_emit_avatar_changed
                                                        (gpointer instance);

Type-safe wrapper around g_signal_emit to emit the AvatarChanged signal on interface im.telepathy.v1.Account.Interface.Avatar1.

instance :

The object implementing this interface

TpSvcAccountInterfaceStorage1

typedef struct _TpSvcAccountInterfaceStorage1 TpSvcAccountInterfaceStorage1;

Dummy typedef representing any implementation of this interface.


TpSvcAccountInterfaceStorage1Class

typedef struct _TpSvcAccountInterfaceStorage1Class TpSvcAccountInterfaceStorage1Class;

The class of TpSvcAccountInterfaceStorage1. This interface has no D-Bus methods, so an implementation can typically pass NULL to G_IMPLEMENT_INTERFACE() as the interface initialization function.


TpSvcAccountInterfaceAddressing1

typedef struct _TpSvcAccountInterfaceAddressing1 TpSvcAccountInterfaceAddressing1;

Dummy typedef representing any implementation of this interface.


TpSvcAccountInterfaceAddressing1Class

typedef struct _TpSvcAccountInterfaceAddressing1Class TpSvcAccountInterfaceAddressing1Class;

The class of TpSvcAccountInterfaceAddressing1.

In a full implementation of this interface (i.e. all methods implemented), the interface initialization function used in G_IMPLEMENT_INTERFACE() would typically look like this:

static void
implement_account_interface_addressing1 (gpointer klass,
    gpointer unused G_GNUC_UNUSED)
{
#define IMPLEMENT(x) tp_svc_account_interface_addressing1_implement_##x (\
  klass, my_object_##x)
  IMPLEMENT (set_uri_scheme_association);
#undef IMPLEMENT
}


tp_svc_account_interface_addressing1_implement_set_uri_scheme_association ()

void                tp_svc_account_interface_addressing1_implement_set_uri_scheme_association
                                                        (TpSvcAccountInterfaceAddressing1Class *klass,
                                                         tp_svc_account_interface_addressing1_set_uri_scheme_association_impl impl);

Register an implementation for the SetURISchemeAssociation method in the vtable of an implementation of this interface. To be called from the interface init function.

klass :

A class whose instances implement this interface

impl :

A callback used to implement the SetURISchemeAssociation D-Bus method

tp_svc_account_interface_addressing1_return_from_set_uri_scheme_association ()

void                tp_svc_account_interface_addressing1_return_from_set_uri_scheme_association
                                                        (DBusGMethodInvocation *context);

Return successfully by calling dbus_g_method_return(). This inline function exists only to provide type-safety.

context :

The D-Bus method invocation context

tp_svc_account_interface_addressing1_set_uri_scheme_association_impl ()

void                (*tp_svc_account_interface_addressing1_set_uri_scheme_association_impl)
                                                        (TpSvcAccountInterfaceAddressing1 *self,
                                                         const gchar *in_URI_Scheme,
                                                         gboolean in_Association,
                                                         DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method SetURISchemeAssociation on interface im.telepathy.v1.Account.Interface.Addressing1.

self :

The object implementing this interface

in_URI_Scheme :

const gchar * (FIXME, generate documentation)

in_Association :

gboolean (FIXME, generate documentation)

context :

Used to return values or throw an error

Signal Details

The "account-property-changed" signal

void                user_function                      (TpSvcAccount *self,
                                                        gpointer      user_data)      : Has Details

The AccountPropertyChanged D-Bus signal is emitted whenever this GObject signal is.

self :

an object

arg_Properties :

GHashTable * (FIXME, generate documentation)

user_data :

user data set when the signal handler was connected.

The "removed" signal

void                user_function                      (TpSvcAccount *self,
                                                        gpointer      user_data)      : Has Details

The Removed D-Bus signal is emitted whenever this GObject signal is.

self :

an object

user_data :

user data set when the signal handler was connected.

The "avatar-changed" signal

void                user_function                      (TpSvcAccountInterfaceAvatar1 *self,
                                                        gpointer                      user_data)      : Has Details

The AvatarChanged D-Bus signal is emitted whenever this GObject signal is.

self :

an object

user_data :

user data set when the signal handler was connected.