Tp::BaseConnection Class Reference

| Home · All Classes · All Namespaces · Modules · Functions · Files

Public Types | Signals | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
Tp::BaseConnection Class Reference
Connection service implementation

Base class for Connection implementations. More...

`#include <TelepathyQt/BaseConnection>`

Inherits Tp::DBusService.

## Public Types
typedef Callback2 < BaseChannelPtr, const QVariantMap &, DBusError * > | CreateChannelCallback
typedef Callback1< void, DBusError * > | ConnectCallback
typedef Callback3< QStringList, uint, const Tp::UIntList &, DBusError * > | InspectHandlesCallback
typedef Callback3 < Tp::UIntList, uint, const QStringList &, DBusError * > | RequestHandlesCallback

## Signals
void | disconnected ()
Signals inherited from Tp::Object
void | propertyChanged (const QString &propertyName)

## Public Member Functions
virtual | ~BaseConnection ()
QString | cmName () const
QString | protocolName () const
QVariantMap | parameters () const
QVariantMap | immutableProperties () const
uint | selfHandle () const
void | setSelfHandle (uint selfHandle)
QString | selfID () const
void | setSelfID (const QString &selfID)
void | setSelfContact (uint selfHandle, const QString &selfID)
uint | status () const
void | setStatus (uint newStatus, uint reason)
void | setCreateChannelCallback (const CreateChannelCallback &cb)
BaseChannelPtr | createChannel (const QVariantMap &request, bool suppressHandler, DBusError *error)
void | setConnectCallback (const ConnectCallback &cb)
void | setInspectHandlesCallback (const InspectHandlesCallback &cb)
QStringList | inspectHandles (uint handleType, const Tp::UIntList &handles, DBusError *error)
void | setRequestHandlesCallback (const RequestHandlesCallback &cb)
Tp::UIntList | requestHandles (uint handleType, const QStringList &identifiers, DBusError *error)
Tp::ChannelInfoList | channelsInfo ()
Tp::ChannelDetailsList | channelsDetails ()
BaseChannelPtr | ensureChannel (const QVariantMap &request, bool &yours, bool suppressHandler, DBusError *error)
void | addChannel (BaseChannelPtr channel, bool suppressHandler=false)
QList < AbstractConnectionInterfacePtr > | interfaces () const
AbstractConnectionInterfacePtr | interface (const QString &interfaceName) const
bool | plugInterface (const AbstractConnectionInterfacePtr &interface)
bool | registerObject (DBusError *error=NULL)
virtual QString | uniqueName () const
Public Member Functions inherited from Tp::DBusService
| DBusService (const QDBusConnection &dbusConnection)
virtual | ~DBusService ()
QDBusConnection | dbusConnection () const
QString | busName () const
QString | objectPath () const
DBusObject * | dbusObject () const
bool | isRegistered () const
Public Member Functions inherited from Tp::Object
virtual | ~Object ()
Public Member Functions inherited from Tp::RefCounted
| RefCounted ()
virtual | ~RefCounted ()

## Static Public Member Functions
static BaseConnectionPtr | create (const QString &cmName, const QString &protocolName, const QVariantMap &parameters, const QDBusConnection &dbusConnection=QDBusConnection::sessionBus())
template<typename BaseConnectionSubclass >
static SharedPtr < BaseConnectionSubclass > | create (const QString &cmName, const QString &protocolName, const QVariantMap &parameters, const QDBusConnection &dbusConnection=QDBusConnection::sessionBus())

## Protected Member Functions
| BaseConnection (const QDBusConnection &dbusConnection, const QString &cmName, const QString &protocolName, const QVariantMap &parameters)
virtual bool | registerObject (const QString &busName, const QString &objectPath, DBusError *error)
virtual bool | matchChannel (const Tp::BaseChannelPtr &channel, const QVariantMap &request, Tp::DBusError *error)
Protected Member Functions inherited from Tp::Object
| Object ()
void | notify (const char *propertyName)

## Detailed Description

Base class for Connection implementations.

## Member Typedef Documentation

typedef Callback2<BaseChannelPtr, const QVariantMap &, DBusError*> Tp::BaseConnection::CreateChannelCallback

typedef Callback1<void, DBusError*> Tp::BaseConnection::ConnectCallback

typedef Callback3<QStringList, uint, const Tp::UIntList &, DBusError*> Tp::BaseConnection::InspectHandlesCallback

typedef Callback3<Tp::UIntList, uint, const QStringList &, DBusError*> Tp::BaseConnection::RequestHandlesCallback

## Constructor & Destructor Documentation

Tp::BaseConnection::~BaseConnection | ( |  | ) |
| virtual

Class destructor.

Tp::BaseConnection::BaseConnection | ( | const QDBusConnection & | dbusConnection,
|  | const QString & | cmName,
|  | const QString & | protocolName,
|  | const QVariantMap & | parameters
| ) |  |
| protected

Construct a BaseConnection.

Parameters

  dbusConnection | The D-Bus connection that will be used by this object.
  cmName | The name of the connection manager associated with this connection.
  protocolName | The name of the protocol associated with this connection.
  parameters | The parameters of this connection.

## Member Function Documentation

static BaseConnectionPtr Tp::BaseConnection::create | ( | const QString & | cmName,
|  | const QString & | protocolName,
|  | const QVariantMap & | parameters,
|  | const QDBusConnection & | dbusConnection = `QDBusConnection::sessionBus()`
| ) |  |
| inlinestatic

template<typename BaseConnectionSubclass >

static SharedPtr<BaseConnectionSubclass> Tp::BaseConnection::create | ( | const QString & | cmName,
|  | const QString & | protocolName,
|  | const QVariantMap & | parameters,
|  | const QDBusConnection & | dbusConnection = `QDBusConnection::sessionBus()`
| ) |  |
| inlinestatic

QString Tp::BaseConnection::cmName | ( |  | ) | const

Return the name of the connection manager associated with this connection.

Returns
  The name of the connection manager associated with this connection.

QString Tp::BaseConnection::protocolName | ( |  | ) | const

Return the name of the protocol associated with this connection.

Returns
  The name of the protocol associated with this connection.

QVariantMap Tp::BaseConnection::parameters | ( |  | ) | const

Return the parameters of this connection.

Returns
  The parameters of this connection.

QVariantMap Tp::BaseConnection::immutableProperties | ( |  | ) | const
| virtual

Return the immutable properties of this connection object.

Immutable properties cannot change after the object has been registered on the bus with registerObject().

Returns
  The immutable properties of this connection object.

Implements Tp::DBusService.

uint Tp::BaseConnection::selfHandle | ( |  | ) | const

void Tp::BaseConnection::setSelfHandle | ( | uint | selfHandle | ) |

QString Tp::BaseConnection::selfID | ( |  | ) | const

void Tp::BaseConnection::setSelfID | ( | const QString & | selfID | ) |

void Tp::BaseConnection::setSelfContact | ( | uint | selfHandle,
|  | const QString & | selfID
| ) |  |

uint Tp::BaseConnection::status | ( |  | ) | const

void Tp::BaseConnection::setStatus | ( | uint | newStatus,
|  | uint | reason
| ) |  |

void Tp::BaseConnection::setCreateChannelCallback | ( | const CreateChannelCallback & | cb | ) |

Tp::BaseChannelPtr Tp::BaseConnection::createChannel | ( | const QVariantMap & | request,
|  | bool | suppressHandler,
|  | DBusError * | error
| ) |  |

void Tp::BaseConnection::setConnectCallback | ( | const ConnectCallback & | cb | ) |

void Tp::BaseConnection::setInspectHandlesCallback | ( | const InspectHandlesCallback & | cb | ) |

QStringList Tp::BaseConnection::inspectHandles | ( | uint | handleType,
|  | const Tp::UIntList & | handles,
|  | DBusError * | error
| ) |  |

void Tp::BaseConnection::setRequestHandlesCallback | ( | const RequestHandlesCallback & | cb | ) |

Tp::UIntList Tp::BaseConnection::requestHandles | ( | uint | handleType,
|  | const QStringList & | identifiers,
|  | DBusError * | error
| ) |  |

Tp::ChannelInfoList Tp::BaseConnection::channelsInfo | ( |  | ) |

Tp::ChannelDetailsList Tp::BaseConnection::channelsDetails | ( |  | ) |

Tp::BaseChannelPtr Tp::BaseConnection::ensureChannel | ( | const QVariantMap & | request,
|  | bool & | yours,
|  | bool | suppressHandler,
|  | DBusError * | error
| ) |  |

Return a new or exists channel, satisfying the given request.

This method iterate over exist channels to find the one satisfying the request. If there is no suitable channel, then new channel with given request details will be created. This method uses the matchChannel() method to check whether there exists a channel which confirms with the request.

If error is passed, any error that may occur will be stored there.

Parameters

  request | A dictionary containing the desirable properties.
  yours | A returning argument. `true` if returned channel is a new one and `false` otherwise.
  suppressHandler | An option to suppress handler in case of a new channel creation.
  error | A pointer to an empty DBusError where any possible error will be stored.

Returns
  A pointer to a channel, satisfying the given request.

See Also
  matchChannel()

void Tp::BaseConnection::addChannel | ( | BaseChannelPtr | channel,
|  | bool | suppressHandler = `false`
| ) |  |

QList< AbstractConnectionInterfacePtr > Tp::BaseConnection::interfaces | ( |  | ) | const

Return a list of interfaces that have been plugged into this Protocol D-Bus object with plugInterface().

This property is immutable and cannot change after this Protocol object has been registered on the bus with registerObject().

Returns
  A list containing all the Protocol interface implementation objects.

See Also
  plugInterface(), interface()

AbstractConnectionInterfacePtr Tp::BaseConnection::interface | ( | const QString & | interfaceName | ) | const

Return a pointer to the interface with the given name.

Parameters

  interfaceName | The D-Bus name of the interface, ex. TP_QT_IFACE_CONNECTION_INTERFACE_ADDRESSING.

Returns
  A pointer to the AbstractConnectionInterface object that implements the D-Bus interface with the given name, or a null pointer if such an interface has not been plugged into this object.

See Also
  plugInterface(), interfaces()

bool Tp::BaseConnection::plugInterface | ( | const AbstractConnectionInterfacePtr & | interface | ) |

Plug a new interface into this Connection D-Bus object.

This property is immutable and cannot change after this Protocol object has been registered on the bus with registerObject().

Parameters

  interface | An AbstractConnectionInterface instance that implements the interface that is to be plugged.

Returns
  `true` on success or `false` otherwise

See Also
  interfaces(), interface()

bool Tp::BaseConnection::registerObject | ( | DBusError * | error = `NULL` | ) |

Register this connection object on the bus.

If error is passed, any D-Bus error that may occur will be stored there.

Parameters

  error | A pointer to an empty DBusError where any possible D-Bus error will be stored.

Returns
  `true` on success and `false` if there was an error or this connection object is already registered.

See Also
  isRegistered()

QString Tp::BaseConnection::uniqueName | ( |  | ) | const
| virtual

Return a unique name for this connection.

Returns
  A unique name for this connection.

void Tp::BaseConnection::disconnected | ( |  | ) |
| signal

Emitted when this connection has been disconnected.

bool Tp::BaseConnection::registerObject | ( | const QString & | busName,
|  | const QString & | objectPath,
|  | DBusError * | error
| ) |  |
| protectedvirtual

Reimplemented from DBusService.

Reimplemented from Tp::DBusService.

bool Tp::BaseConnection::matchChannel | ( | const Tp::BaseChannelPtr & | channel,
|  | const QVariantMap & | request,
|  | Tp::DBusError * | error
| ) |  |
| protectedvirtual

Check channel on conformity with request.

This virtual method is used to check if a channel satisfying the given request. It is warranted, that the type of the channel meets the requested type.

The default implementation compares TargetHandleType and TargetHandle/TargetID. If error is passed, any error that may occur will be stored there.

Parameters

  channel | A pointer to a channel to be checked.
  request | A dictionary containing the desirable properties.
  error | A pointer to an empty DBusError where any possible error will be stored.

Returns
  `true` if channel match the request and `false` otherwise.

See Also
  ensureChannel()