Service-side Client interfaces

Service-side Client interfaces — interfaces used to be an Observer, Approver and Handler

Synopsis

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

                    TpSvcClient;
                    TpSvcClientClass;

                    TpSvcClientApprover;
                    TpSvcClientApproverClass;
void                tp_svc_client_approver_return_from_add_dispatch_operation
                                                        (DBusGMethodInvocation *context);
void                (*tp_svc_client_approver_add_dispatch_operation_impl)
                                                        (TpSvcClientApprover *self,
                                                         const GPtrArray *in_Channels,
                                                         const gchar *in_DispatchOperation,
                                                         GHashTable *in_Properties,
                                                         DBusGMethodInvocation *context);
void                tp_svc_client_approver_implement_add_dispatch_operation
                                                        (TpSvcClientApproverClass *klass,
                                                         tp_svc_client_approver_add_dispatch_operation_impl impl);

                    TpSvcClientHandler;
                    TpSvcClientHandlerClass;
void                tp_svc_client_handler_return_from_handle_channels
                                                        (DBusGMethodInvocation *context);
void                (*tp_svc_client_handler_handle_channels_impl)
                                                        (TpSvcClientHandler *self,
                                                         const gchar *in_Account,
                                                         const gchar *in_Connection,
                                                         const GPtrArray *in_Channels,
                                                         const GPtrArray *in_Requests_Satisfied,
                                                         guint64 in_User_Action_Time,
                                                         GHashTable *in_Handler_Info,
                                                         DBusGMethodInvocation *context);
void                tp_svc_client_handler_implement_handle_channels
                                                        (TpSvcClientHandlerClass *klass,
                                                         tp_svc_client_handler_handle_channels_impl impl);
                    TpSvcClientInterfaceRequests;
                    TpSvcClientInterfaceRequestsClass;
void                tp_svc_client_interface_requests_return_from_add_request
                                                        (DBusGMethodInvocation *context);
void                (*tp_svc_client_interface_requests_add_request_impl)
                                                        (TpSvcClientInterfaceRequests *self,
                                                         const gchar *in_Request,
                                                         GHashTable *in_Properties,
                                                         DBusGMethodInvocation *context);
void                tp_svc_client_interface_requests_implement_add_request
                                                        (TpSvcClientInterfaceRequestsClass *klass,
                                                         tp_svc_client_interface_requests_add_request_impl impl);
void                tp_svc_client_interface_requests_return_from_remove_request
                                                        (DBusGMethodInvocation *context);
void                (*tp_svc_client_interface_requests_remove_request_impl)
                                                        (TpSvcClientInterfaceRequests *self,
                                                         const gchar *in_Request,
                                                         const gchar *in_Error,
                                                         const gchar *in_Message,
                                                         DBusGMethodInvocation *context);
void                tp_svc_client_interface_requests_implement_remove_request
                                                        (TpSvcClientInterfaceRequestsClass *klass,
                                                         tp_svc_client_interface_requests_remove_request_impl impl);

                    TpSvcClientObserver;
                    TpSvcClientObserverClass;
void                tp_svc_client_observer_return_from_observe_channels
                                                        (DBusGMethodInvocation *context);
void                (*tp_svc_client_observer_observe_channels_impl)
                                                        (TpSvcClientObserver *self,
                                                         const gchar *in_Account,
                                                         const gchar *in_Connection,
                                                         const GPtrArray *in_Channels,
                                                         const gchar *in_Dispatch_Operation,
                                                         const GPtrArray *in_Requests_Satisfied,
                                                         GHashTable *in_Observer_Info,
                                                         DBusGMethodInvocation *context);
void                tp_svc_client_observer_implement_observe_channels
                                                        (TpSvcClientObserverClass *klass,
                                                         tp_svc_client_observer_observe_channels_impl impl);

Object Hierarchy

  GInterface
   +----TpSvcClient
  GInterface
   +----TpSvcClientApprover
  GInterface
   +----TpSvcClientHandler
  GInterface
   +----TpSvcClientInterfaceRequests
  GInterface
   +----TpSvcClientObserver

Known Implementations

TpSvcClient is implemented by TpBaseClient, TpSimpleApprover, TpSimpleHandler and TpSimpleObserver.

TpSvcClientApprover is implemented by TpBaseClient, TpSimpleApprover, TpSimpleHandler and TpSimpleObserver.

TpSvcClientHandler is implemented by TpBaseClient, TpSimpleApprover, TpSimpleHandler and TpSimpleObserver.

TpSvcClientInterfaceRequests is implemented by TpBaseClient, TpSimpleApprover, TpSimpleHandler and TpSimpleObserver.

TpSvcClientObserver is implemented by TpBaseClient, TpSimpleApprover, TpSimpleHandler and TpSimpleObserver.

Description

These interfaces (auto-generated from the telepathy spec) make it easier to export the objects used to implement a Telepathy client.

Clients such as loggers, new message notification windows and chat UIs should implement some or all of the Client types (Observer, Approver and/or Handler): see telepathy-spec for details.

Details

TpSvcClient

typedef struct _TpSvcClient TpSvcClient;

Dummy typedef representing any implementation of this interface.


TpSvcClientClass

typedef struct _TpSvcClientClass TpSvcClientClass;

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


TpSvcClientApprover

typedef struct _TpSvcClientApprover TpSvcClientApprover;

Dummy typedef representing any implementation of this interface.


TpSvcClientApproverClass

typedef struct _TpSvcClientApproverClass TpSvcClientApproverClass;

The class of TpSvcClientApprover.

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_client_approver (gpointer klass,
    gpointer unused G_GNUC_UNUSED)
{
#define IMPLEMENT(x) tp_svc_client_approver_implement_##x (\
  klass, my_object_##x)
  IMPLEMENT (add_dispatch_operation);
#undef IMPLEMENT
}


tp_svc_client_approver_return_from_add_dispatch_operation ()

void                tp_svc_client_approver_return_from_add_dispatch_operation
                                                        (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_client_approver_add_dispatch_operation_impl ()

void                (*tp_svc_client_approver_add_dispatch_operation_impl)
                                                        (TpSvcClientApprover *self,
                                                         const GPtrArray *in_Channels,
                                                         const gchar *in_DispatchOperation,
                                                         GHashTable *in_Properties,
                                                         DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method AddDispatchOperation on interface org.freedesktop.Telepathy.Client.Approver.

self :

The object implementing this interface

in_Channels :

const GPtrArray * (FIXME, generate documentation)

in_DispatchOperation :

const gchar * (FIXME, generate documentation)

in_Properties :

GHashTable * (FIXME, generate documentation)

context :

Used to return values or throw an error

tp_svc_client_approver_implement_add_dispatch_operation ()

void                tp_svc_client_approver_implement_add_dispatch_operation
                                                        (TpSvcClientApproverClass *klass,
                                                         tp_svc_client_approver_add_dispatch_operation_impl impl);

Register an implementation for the AddDispatchOperation 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 AddDispatchOperation D-Bus method

TpSvcClientHandler

typedef struct _TpSvcClientHandler TpSvcClientHandler;

Dummy typedef representing any implementation of this interface.


TpSvcClientHandlerClass

typedef struct _TpSvcClientHandlerClass TpSvcClientHandlerClass;

The class of TpSvcClientHandler.

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_client_handler (gpointer klass,
    gpointer unused G_GNUC_UNUSED)
{
#define IMPLEMENT(x) tp_svc_client_handler_implement_##x (\
  klass, my_object_##x)
  IMPLEMENT (handle_channels);
#undef IMPLEMENT
}


tp_svc_client_handler_return_from_handle_channels ()

void                tp_svc_client_handler_return_from_handle_channels
                                                        (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_client_handler_handle_channels_impl ()

void                (*tp_svc_client_handler_handle_channels_impl)
                                                        (TpSvcClientHandler *self,
                                                         const gchar *in_Account,
                                                         const gchar *in_Connection,
                                                         const GPtrArray *in_Channels,
                                                         const GPtrArray *in_Requests_Satisfied,
                                                         guint64 in_User_Action_Time,
                                                         GHashTable *in_Handler_Info,
                                                         DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method HandleChannels on interface org.freedesktop.Telepathy.Client.Handler.

self :

The object implementing this interface

in_Account :

const gchar * (FIXME, generate documentation)

in_Connection :

const gchar * (FIXME, generate documentation)

in_Channels :

const GPtrArray * (FIXME, generate documentation)

in_Requests_Satisfied :

const GPtrArray * (FIXME, generate documentation)

in_User_Action_Time :

guint64 (FIXME, generate documentation)

in_Handler_Info :

GHashTable * (FIXME, generate documentation)

context :

Used to return values or throw an error

tp_svc_client_handler_implement_handle_channels ()

void                tp_svc_client_handler_implement_handle_channels
                                                        (TpSvcClientHandlerClass *klass,
                                                         tp_svc_client_handler_handle_channels_impl impl);

Register an implementation for the HandleChannels 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 HandleChannels D-Bus method

TpSvcClientInterfaceRequests

typedef struct _TpSvcClientInterfaceRequests TpSvcClientInterfaceRequests;

Dummy typedef representing any implementation of this interface.


TpSvcClientInterfaceRequestsClass

typedef struct _TpSvcClientInterfaceRequestsClass TpSvcClientInterfaceRequestsClass;

The class of TpSvcClientInterfaceRequests.

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_client_interface_requests (gpointer klass,
    gpointer unused G_GNUC_UNUSED)
{
#define IMPLEMENT(x) tp_svc_client_interface_requests_implement_##x (\
  klass, my_object_##x)
  IMPLEMENT (add_request);
  IMPLEMENT (remove_request);
#undef IMPLEMENT
}


tp_svc_client_interface_requests_return_from_add_request ()

void                tp_svc_client_interface_requests_return_from_add_request
                                                        (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_client_interface_requests_add_request_impl ()

void                (*tp_svc_client_interface_requests_add_request_impl)
                                                        (TpSvcClientInterfaceRequests *self,
                                                         const gchar *in_Request,
                                                         GHashTable *in_Properties,
                                                         DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method AddRequest on interface org.freedesktop.Telepathy.Client.Interface.Requests.

self :

The object implementing this interface

in_Request :

const gchar * (FIXME, generate documentation)

in_Properties :

GHashTable * (FIXME, generate documentation)

context :

Used to return values or throw an error

tp_svc_client_interface_requests_implement_add_request ()

void                tp_svc_client_interface_requests_implement_add_request
                                                        (TpSvcClientInterfaceRequestsClass *klass,
                                                         tp_svc_client_interface_requests_add_request_impl impl);

Register an implementation for the AddRequest 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 AddRequest D-Bus method

tp_svc_client_interface_requests_return_from_remove_request ()

void                tp_svc_client_interface_requests_return_from_remove_request
                                                        (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_client_interface_requests_remove_request_impl ()

void                (*tp_svc_client_interface_requests_remove_request_impl)
                                                        (TpSvcClientInterfaceRequests *self,
                                                         const gchar *in_Request,
                                                         const gchar *in_Error,
                                                         const gchar *in_Message,
                                                         DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method RemoveRequest on interface org.freedesktop.Telepathy.Client.Interface.Requests.

self :

The object implementing this interface

in_Request :

const gchar * (FIXME, generate documentation)

in_Error :

const gchar * (FIXME, generate documentation)

in_Message :

const gchar * (FIXME, generate documentation)

context :

Used to return values or throw an error

tp_svc_client_interface_requests_implement_remove_request ()

void                tp_svc_client_interface_requests_implement_remove_request
                                                        (TpSvcClientInterfaceRequestsClass *klass,
                                                         tp_svc_client_interface_requests_remove_request_impl impl);

Register an implementation for the RemoveRequest 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 RemoveRequest D-Bus method

TpSvcClientObserver

typedef struct _TpSvcClientObserver TpSvcClientObserver;

Dummy typedef representing any implementation of this interface.


TpSvcClientObserverClass

typedef struct _TpSvcClientObserverClass TpSvcClientObserverClass;

The class of TpSvcClientObserver.

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_client_observer (gpointer klass,
    gpointer unused G_GNUC_UNUSED)
{
#define IMPLEMENT(x) tp_svc_client_observer_implement_##x (\
  klass, my_object_##x)
  IMPLEMENT (observe_channels);
#undef IMPLEMENT
}


tp_svc_client_observer_return_from_observe_channels ()

void                tp_svc_client_observer_return_from_observe_channels
                                                        (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_client_observer_observe_channels_impl ()

void                (*tp_svc_client_observer_observe_channels_impl)
                                                        (TpSvcClientObserver *self,
                                                         const gchar *in_Account,
                                                         const gchar *in_Connection,
                                                         const GPtrArray *in_Channels,
                                                         const gchar *in_Dispatch_Operation,
                                                         const GPtrArray *in_Requests_Satisfied,
                                                         GHashTable *in_Observer_Info,
                                                         DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method ObserveChannels on interface org.freedesktop.Telepathy.Client.Observer.

self :

The object implementing this interface

in_Account :

const gchar * (FIXME, generate documentation)

in_Connection :

const gchar * (FIXME, generate documentation)

in_Channels :

const GPtrArray * (FIXME, generate documentation)

in_Dispatch_Operation :

const gchar * (FIXME, generate documentation)

in_Requests_Satisfied :

const GPtrArray * (FIXME, generate documentation)

in_Observer_Info :

GHashTable * (FIXME, generate documentation)

context :

Used to return values or throw an error

tp_svc_client_observer_implement_observe_channels ()

void                tp_svc_client_observer_implement_observe_channels
                                                        (TpSvcClientObserverClass *klass,
                                                         tp_svc_client_observer_observe_channels_impl impl);

Register an implementation for the ObserveChannels 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 ObserveChannels D-Bus method