Service-side Account interfaces

Service-side Account interfaces — GInterfaces for Telepathy Account objects

Synopsis

#include <telepathy-glib/svc-account.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);


                    TpSvcAccountInterfaceAvatar;
                    TpSvcAccountInterfaceAvatarClass;
void                tp_svc_account_interface_avatar_emit_avatar_changed
                                                        (gpointer instance);

Object Hierarchy

  GInterface
   +----TpSvcAccount
  GInterface
   +----TpSvcAccountInterfaceAvatar

Signals

  "account-property-changed"                       : Run Last / Has Details
  "removed"                                        : Run Last / Has Details
  "avatar-changed"                                 : Run Last / 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 org.freedesktop.Telepathy.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 org.freedesktop.Telepathy.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 org.freedesktop.Telepathy.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 org.freedesktop.Telepathy.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 org.freedesktop.Telepathy.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

TpSvcAccountInterfaceAvatar

typedef struct _TpSvcAccountInterfaceAvatar TpSvcAccountInterfaceAvatar;

Dummy typedef representing any implementation of this interface.


TpSvcAccountInterfaceAvatarClass

typedef struct _TpSvcAccountInterfaceAvatarClass TpSvcAccountInterfaceAvatarClass;

The class of TpSvcAccountInterfaceAvatar. 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_avatar_emit_avatar_changed ()

void                tp_svc_account_interface_avatar_emit_avatar_changed
                                                        (gpointer instance);

Type-safe wrapper around g_signal_emit to emit the AvatarChanged signal on interface org.freedesktop.Telepathy.Account.Interface.Avatar.

instance :

The object implementing this interface

Signal Details

The "account-property-changed" signal

void                user_function                      (TpSvcAccount *arg_Properties,
                                                        gpointer      user_data)           : Run Last / Has Details

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

arg_Properties :

GHashTable * (FIXME, generate documentation)

user_data :

user data set when the signal handler was connected.

The "removed" signal

void                user_function                      (TpSvcAccount *arg0,
                                                        gpointer      user_data)      : Run Last / Has Details

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

user_data :

user data set when the signal handler was connected.

The "avatar-changed" signal

void                user_function                      (TpSvcAccountInterfaceAvatar *arg0,
                                                        gpointer                     user_data)      : Run Last / Has Details

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

user_data :

user data set when the signal handler was connected.