Service-side Connection Manager interface

Service-side Connection Manager interface — GInterface for Telepathy ConnectionManager objects

Synopsis

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

                    TpSvcConnectionManager;
                    TpSvcConnectionManagerClass;
void                (*tp_svc_connection_manager_request_connection_impl)
                                                        (TpSvcConnectionManager *self,
                                                         const gchar *in_Protocol,
                                                         GHashTable *in_Parameters,
                                                         DBusGMethodInvocation *context);
void                tp_svc_connection_manager_implement_request_connection
                                                        (TpSvcConnectionManagerClass *klass,
                                                         tp_svc_connection_manager_request_connection_impl impl);
void                tp_svc_connection_manager_return_from_request_connection
                                                        (DBusGMethodInvocation *context,
                                                         const gchar *out_Bus_Name,
                                                         const gchar *out_Object_Path);
void                tp_svc_connection_manager_emit_new_connection
                                                        (gpointer instance,
                                                         const gchar *arg_Bus_Name,
                                                         const gchar *arg_Object_Path,
                                                         const gchar *arg_Protocol);

Object Hierarchy

  GInterface
   +----TpSvcConnectionManager

Known Implementations

TpSvcConnectionManager is implemented by TpBaseConnectionManager.

Signals

  "new-connection"                                 : Has Details

Description

The TpSvcConnectionManager interface (auto-generated from the Telepathy spec) makes it easier to export an object implementing the Telepathy ConnectionManager interface, with the correct method and signal signatures, and emit signals from that object in a type-safe way.

Details

TpSvcConnectionManager

typedef struct _TpSvcConnectionManager TpSvcConnectionManager;

Dummy typedef representing any implementation of this interface.


TpSvcConnectionManagerClass

typedef struct _TpSvcConnectionManagerClass TpSvcConnectionManagerClass;

The class of TpSvcConnectionManager.

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


tp_svc_connection_manager_request_connection_impl ()

void                (*tp_svc_connection_manager_request_connection_impl)
                                                        (TpSvcConnectionManager *self,
                                                         const gchar *in_Protocol,
                                                         GHashTable *in_Parameters,
                                                         DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method RequestConnection on interface im.telepathy1.ConnectionManager.

self :

The object implementing this interface

in_Protocol :

const gchar * (FIXME, generate documentation)

in_Parameters :

GHashTable * (FIXME, generate documentation)

context :

Used to return values or throw an error

tp_svc_connection_manager_implement_request_connection ()

void                tp_svc_connection_manager_implement_request_connection
                                                        (TpSvcConnectionManagerClass *klass,
                                                         tp_svc_connection_manager_request_connection_impl impl);

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

tp_svc_connection_manager_return_from_request_connection ()

void                tp_svc_connection_manager_return_from_request_connection
                                                        (DBusGMethodInvocation *context,
                                                         const gchar *out_Bus_Name,
                                                         const gchar *out_Object_Path);

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_Bus_Name :

const gchar * (FIXME, generate documentation)

out_Object_Path :

const gchar * (FIXME, generate documentation)

tp_svc_connection_manager_emit_new_connection ()

void                tp_svc_connection_manager_emit_new_connection
                                                        (gpointer instance,
                                                         const gchar *arg_Bus_Name,
                                                         const gchar *arg_Object_Path,
                                                         const gchar *arg_Protocol);

Type-safe wrapper around g_signal_emit to emit the NewConnection signal on interface im.telepathy1.ConnectionManager.

instance :

The object implementing this interface

arg_Bus_Name :

const gchar * (FIXME, generate documentation)

arg_Object_Path :

const gchar * (FIXME, generate documentation)

arg_Protocol :

const gchar * (FIXME, generate documentation)

Signal Details

The "new-connection" signal

void                user_function                      (TpSvcConnectionManager *self,
                                                        gchar                  *arg_Bus_Name,
                                                        DBusGObjectPath        *arg_Object_Path,
                                                        gchar                  *arg_Protocol,
                                                        gpointer                user_data)            : Has Details

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

self :

an object

arg_Bus_Name :

const gchar * (FIXME, generate documentation)

arg_Object_Path :

const gchar * (FIXME, generate documentation)

arg_Protocol :

const gchar * (FIXME, generate documentation)

user_data :

user data set when the signal handler was connected.

See Also

TpBaseConnection