[telepathy-qt4/master] ClientRegistrar: Added AbstractClient the base class for all Clients.
Andre Moreira Magalhaes (andrunko)
andre.magalhaes at collabora.co.uk
Mon May 11 11:17:52 PDT 2009
---
TelepathyQt4/abstract-client.cpp | 8 ++++++++
TelepathyQt4/abstract-client.h | 11 ++++++++++-
TelepathyQt4/client-object.cpp | 16 ++++++++--------
TelepathyQt4/client-object.h | 6 +++---
TelepathyQt4/client-registrar-internal.h | 16 ++++++++--------
TelepathyQt4/client-registrar.cpp | 11 ++++++-----
TelepathyQt4/types.h | 2 +-
tests/dbus/client-handler.cpp | 10 +++++-----
8 files changed, 49 insertions(+), 31 deletions(-)
diff --git a/TelepathyQt4/abstract-client.cpp b/TelepathyQt4/abstract-client.cpp
index 59a4f02..5699bf0 100644
--- a/TelepathyQt4/abstract-client.cpp
+++ b/TelepathyQt4/abstract-client.cpp
@@ -28,6 +28,14 @@
namespace Tp
{
+AbstractClient::AbstractClient()
+{
+}
+
+AbstractClient::~AbstractClient()
+{
+}
+
struct AbstractClientHandler::Private
{
ChannelClassList channelFilter;
diff --git a/TelepathyQt4/abstract-client.h b/TelepathyQt4/abstract-client.h
index 52f2359..2f76a6d 100644
--- a/TelepathyQt4/abstract-client.h
+++ b/TelepathyQt4/abstract-client.h
@@ -39,7 +39,16 @@ namespace Tp
class PendingClientOperation;
-class AbstractClientHandler : public RefCounted
+class AbstractClient : public RefCounted
+{
+ Q_DISABLE_COPY(AbstractClient)
+
+public:
+ AbstractClient();
+ virtual ~AbstractClient();
+};
+
+class AbstractClientHandler : public virtual AbstractClient
{
Q_DISABLE_COPY(AbstractClientHandler)
diff --git a/TelepathyQt4/client-object.cpp b/TelepathyQt4/client-object.cpp
index f44a595..bc88ed1 100644
--- a/TelepathyQt4/client-object.cpp
+++ b/TelepathyQt4/client-object.cpp
@@ -28,21 +28,21 @@ namespace Tp
struct ClientObject::Private
{
- AbstractClientHandlerPtr clientHandler;
+ AbstractClientPtr client;
};
-ClientObjectPtr ClientObject::create(const AbstractClientHandlerPtr &clientHandler)
+ClientObjectPtr ClientObject::create(const AbstractClientPtr &client)
{
- if (!clientHandler) {
+ if (!client) {
return ClientObjectPtr();
}
- return ClientObjectPtr(new ClientObject(clientHandler));
+ return ClientObjectPtr(new ClientObject(client));
}
-ClientObject::ClientObject(const AbstractClientHandlerPtr &clientHandler)
+ClientObject::ClientObject(const AbstractClientPtr &client)
: mPriv(new Private)
{
- mPriv->clientHandler = clientHandler;
+ mPriv->client = client;
}
ClientObject::~ClientObject()
@@ -50,9 +50,9 @@ ClientObject::~ClientObject()
delete mPriv;
}
-AbstractClientHandlerPtr ClientObject::clientHandler() const
+AbstractClientPtr ClientObject::client() const
{
- return mPriv->clientHandler;
+ return mPriv->client;
}
} // Tp
diff --git a/TelepathyQt4/client-object.h b/TelepathyQt4/client-object.h
index 8791d6a..87a9938 100644
--- a/TelepathyQt4/client-object.h
+++ b/TelepathyQt4/client-object.h
@@ -39,13 +39,13 @@ class ClientObject : public QObject, public RefCounted
Q_DISABLE_COPY(ClientObject)
public:
- static ClientObjectPtr create(const AbstractClientHandlerPtr &clientHandler);
+ static ClientObjectPtr create(const AbstractClientPtr &clientHandler);
~ClientObject();
- AbstractClientHandlerPtr clientHandler() const;
+ AbstractClientPtr client() const;
private:
- ClientObject(const AbstractClientHandlerPtr &clientHandler);
+ ClientObject(const AbstractClientPtr &clientHandler);
struct Private;
friend struct Private;
diff --git a/TelepathyQt4/client-registrar-internal.h b/TelepathyQt4/client-registrar-internal.h
index 824b6b0..c394bea 100644
--- a/TelepathyQt4/client-registrar-internal.h
+++ b/TelepathyQt4/client-registrar-internal.h
@@ -88,7 +88,7 @@ class ClientHandlerAdaptor : public QDBusAbstractAdaptor
public:
ClientHandlerAdaptor(
const QDBusConnection &bus,
- const AbstractClientHandlerPtr &client,
+ AbstractClientHandler *client,
QObject *parent);
virtual ~ClientHandlerAdaptor();
@@ -140,7 +140,7 @@ private:
class HandleChannelsCall;
QDBusConnection mBus;
- AbstractClientHandlerPtr mClient;
+ AbstractClientHandler *mClient;
QHash<PendingClientOperation *, HandleChannelsCall *> mOperations;
QQueue<HandleChannelsCall*> mHandleChannelsQueue;
bool mProcessingHandleChannels;
@@ -154,7 +154,7 @@ class ClientHandlerAdaptor::HandleChannelsCall : public QObject
Q_OBJECT
public:
- HandleChannelsCall(const AbstractClientHandlerPtr &client,
+ HandleChannelsCall(AbstractClientHandler *client,
PendingClientOperation *op,
const QDBusObjectPath &account,
const QDBusObjectPath &connection,
@@ -183,7 +183,7 @@ private:
void setFinishedWithError(const QString &errorName,
const QString &errorMessage);
- AbstractClientHandlerPtr mClient;
+ AbstractClientHandler *mClient;
PendingClientOperation *mOperation;
QDBusObjectPath mAccountPath;
QDBusObjectPath mConnectionPath;
@@ -219,7 +219,7 @@ class ClientHandlerRequestsAdaptor : public QDBusAbstractAdaptor
public:
ClientHandlerRequestsAdaptor(const QDBusConnection &bus,
- const AbstractClientHandlerPtr &client,
+ AbstractClientHandler *client,
QObject *parent);
virtual ~ClientHandlerRequestsAdaptor();
@@ -240,7 +240,7 @@ private:
class AddRequestCall;
QDBusConnection mBus;
- AbstractClientHandlerPtr mClient;
+ AbstractClientHandler *mClient;
QQueue<AddRequestCall*> mAddRequestQueue;
bool mProcessingAddRequest;
};
@@ -250,7 +250,7 @@ class ClientHandlerRequestsAdaptor::AddRequestCall : public QObject
Q_OBJECT
public:
- AddRequestCall(const AbstractClientHandlerPtr &client,
+ AddRequestCall(AbstractClientHandler *client,
const QDBusObjectPath &request,
const QVariantMap &requestProperties,
const QDBusConnection &bus,
@@ -266,7 +266,7 @@ private Q_SLOTS:
void onChannelRequestReady(Tp::PendingOperation *op);
private:
- AbstractClientHandlerPtr mClient;
+ AbstractClientHandler *mClient;
QDBusObjectPath mRequestPath;
QVariantMap mRequestProperties;
QDBusConnection mBus;
diff --git a/TelepathyQt4/client-registrar.cpp b/TelepathyQt4/client-registrar.cpp
index 64d8497..4888c73 100644
--- a/TelepathyQt4/client-registrar.cpp
+++ b/TelepathyQt4/client-registrar.cpp
@@ -52,7 +52,7 @@ ClientAdaptor::~ClientAdaptor()
QHash<QString, QList<ClientHandlerAdaptor *> > ClientHandlerAdaptor::mAdaptorsForConnection;
ClientHandlerAdaptor::ClientHandlerAdaptor(const QDBusConnection &bus,
- const AbstractClientHandlerPtr &client,
+ AbstractClientHandler *client,
QObject *parent)
: QDBusAbstractAdaptor(parent),
mBus(bus),
@@ -148,7 +148,7 @@ void ClientHandlerAdaptor::processHandleChannelsQueue()
}
ClientHandlerAdaptor::HandleChannelsCall::HandleChannelsCall(
- const AbstractClientHandlerPtr &client,
+ AbstractClientHandler *client,
PendingClientOperation *op,
const QDBusObjectPath &account,
const QDBusObjectPath &connection,
@@ -266,7 +266,7 @@ void ClientHandlerAdaptor::HandleChannelsCall::setFinishedWithError(const QStrin
ClientHandlerRequestsAdaptor::ClientHandlerRequestsAdaptor(
const QDBusConnection &bus,
- const AbstractClientHandlerPtr &client,
+ AbstractClientHandler *client,
QObject *parent)
: QDBusAbstractAdaptor(parent),
mBus(bus),
@@ -326,7 +326,7 @@ void ClientHandlerRequestsAdaptor::onAddRequestCallFinished()
}
ClientHandlerRequestsAdaptor::AddRequestCall::AddRequestCall(
- const AbstractClientHandlerPtr &client,
+ AbstractClientHandler *client,
const QDBusObjectPath &request,
const QVariantMap &requestProperties,
const QDBusConnection &bus,
@@ -465,7 +465,8 @@ bool ClientRegistrar::registerClient(const ClientObjectPtr &client,
ClientHandlerAdaptor *clientHandlerAdaptor = 0;
ClientHandlerRequestsAdaptor *clientHandlerRequestsAdaptor = 0;
- AbstractClientHandlerPtr handler = client->clientHandler();
+ AbstractClientHandler *handler =
+ dynamic_cast<AbstractClientHandler*>(client->client().data());
QList<QDBusAbstractAdaptor *> &adaptors = mPriv->adaptorsForClient[client];
if (handler) {
diff --git a/TelepathyQt4/types.h b/TelepathyQt4/types.h
index 8238d59..8ed82fa 100644
--- a/TelepathyQt4/types.h
+++ b/TelepathyQt4/types.h
@@ -48,7 +48,7 @@ class MediaStream;
class StreamedMediaChannel;
class TextChannel;
-typedef SharedPtr<AbstractClientHandler> AbstractClientHandlerPtr;
+typedef SharedPtr<AbstractClientHandler> AbstractClientPtr;
typedef SharedPtr<Account> AccountPtr;
typedef SharedPtr<AccountManager> AccountManagerPtr;
typedef SharedPtr<Channel> ChannelPtr;
diff --git a/tests/dbus/client-handler.cpp b/tests/dbus/client-handler.cpp
index d8cf138..a8dda4c 100644
--- a/tests/dbus/client-handler.cpp
+++ b/tests/dbus/client-handler.cpp
@@ -132,11 +132,11 @@ class MyHandler : public QObject, public AbstractClientHandler
Q_OBJECT
public:
- static AbstractClientHandlerPtr create(const ChannelClassList &channelFilter,
+ static AbstractClientPtr create(const ChannelClassList &channelFilter,
bool bypassApproval = false,
bool wantsRequestNotification = false)
{
- return AbstractClientHandlerPtr(new MyHandler(channelFilter,
+ return AbstractClientPtr(new MyHandler(channelFilter,
bypassApproval, wantsRequestNotification));
}
@@ -448,7 +448,7 @@ void TestClientHandler::testRequests()
ClientInterfaceRequestsInterface *handlerRequestsIface = new ClientInterfaceRequestsInterface(bus,
mClientObject1BusName, mClientObject1Path, this);
- MyHandler *handler = dynamic_cast<MyHandler*>(mClientObject1->clientHandler().data());
+ MyHandler *handler = dynamic_cast<MyHandler*>(mClientObject1->client().data());
connect(handler,
SIGNAL(requestAdded(const Tp::ChannelRequestPtr &)),
SLOT(expectSignalEmission()));
@@ -484,7 +484,7 @@ void TestClientHandler::testHandleChannels()
// object 1
ClientHandlerInterface *handler1Iface = new ClientHandlerInterface(bus,
mClientObject1BusName, mClientObject1Path, this);
- MyHandler *handler1 = dynamic_cast<MyHandler*>(mClientObject1->clientHandler().data());
+ MyHandler *handler1 = dynamic_cast<MyHandler*>(mClientObject1->client().data());
connect(handler1,
SIGNAL(handleChannelsFinished()),
SLOT(expectSignalEmission()));
@@ -511,7 +511,7 @@ void TestClientHandler::testHandleChannels()
// object 2
ClientHandlerInterface *handler2Iface = new ClientHandlerInterface(bus,
mClientObject2BusName, mClientObject2Path, this);
- MyHandler *handler2 = dynamic_cast<MyHandler*>(mClientObject2->clientHandler().data());
+ MyHandler *handler2 = dynamic_cast<MyHandler*>(mClientObject2->client().data());
connect(handler2,
SIGNAL(handleChannelsFinished()),
SLOT(expectSignalEmission()));
--
1.5.6.5
More information about the telepathy-commits
mailing list