diff options
author | Andre Moreira Magalhaes (andrunko) <andre.magalhaes@collabora.co.uk> | 2012-04-02 09:41:07 -0300 |
---|---|---|
committer | Andre Moreira Magalhaes (andrunko) <andre.magalhaes@collabora.co.uk> | 2012-04-02 10:37:20 -0300 |
commit | 6e8d06d5ce57603a327129c508dea7a8a3669781 (patch) | |
tree | f22fa9721ef904ea7086f62f50d8f485326cf801 /examples | |
parent | 8a408ee686e6a75861376bdbfbf2c2acacc8ebe0 (diff) |
cm example: Add example for BaseProtocolAddressingInterface usage.
Diffstat (limited to 'examples')
-rw-r--r-- | examples/cm/protocol.cpp | 32 | ||||
-rw-r--r-- | examples/cm/protocol.h | 9 |
2 files changed, 31 insertions, 10 deletions
diff --git a/examples/cm/protocol.cpp b/examples/cm/protocol.cpp index 1ce0b5eb..2bb825b2 100644 --- a/examples/cm/protocol.cpp +++ b/examples/cm/protocol.cpp @@ -50,6 +50,13 @@ Protocol::Protocol(const QDBusConnection &dbusConnection, const QString &name) setCreateConnectionCallback(memFun(this, &Protocol::createConnection)); setIdentifyAccountCallback(memFun(this, &Protocol::identifyAccount)); setNormalizeContactCallback(memFun(this, &Protocol::normalizeContact)); + + addrIface = BaseProtocolAddressingInterface::create(); + addrIface->setAddressableVCardFields(QStringList() << QLatin1String("x-example-vcard-field")); + addrIface->setAddressableUriSchemes(QStringList() << QLatin1String("example-uri-scheme")); + addrIface->setNormalizeVCardAddressCallback(memFun(this, &Protocol::normalizeVCardAddress)); + addrIface->setNormalizeContactUriCallback(memFun(this, &Protocol::normalizeContactUri)); + plugInterface(AbstractProtocolInterfacePtr::dynamicCast(addrIface)); } Protocol::~Protocol() @@ -58,24 +65,31 @@ Protocol::~Protocol() BaseConnectionPtr Protocol::createConnection(const QVariantMap ¶meters, Tp::DBusError *error) { - if (error) { - error->set(QLatin1String("CreateConnection.Error.Test"), QLatin1String("")); - } + error->set(QLatin1String("CreateConnection.Error.Test"), QLatin1String("")); return BaseConnectionPtr(); } QString Protocol::identifyAccount(const QVariantMap ¶meters, Tp::DBusError *error) { - if (error) { - error->set(QLatin1String("IdentifyAccount.Error.Test"), QLatin1String("")); - } + error->set(QLatin1String("IdentifyAccount.Error.Test"), QLatin1String("")); return QString(); } QString Protocol::normalizeContact(const QString &contactId, Tp::DBusError *error) { - if (error) { - error->set(QLatin1String("NormalizeContact.Error.Test"), QLatin1String("")); - } + error->set(QLatin1String("NormalizeContact.Error.Test"), QLatin1String("")); + return QString(); +} + +QString Protocol::normalizeVCardAddress(const QString &vCardField, const QString vCardAddress, + Tp::DBusError *error) +{ + error->set(QLatin1String("NormalizeVCardAddress.Error.Test"), QLatin1String("")); + return QString(); +} + +QString Protocol::normalizeContactUri(const QString &uri, Tp::DBusError *error) +{ + error->set(QLatin1String("NormalizeContactUri.Error.Test"), QLatin1String("")); return QString(); } diff --git a/examples/cm/protocol.h b/examples/cm/protocol.h index 1ce6321f..698617b7 100644 --- a/examples/cm/protocol.h +++ b/examples/cm/protocol.h @@ -34,10 +34,17 @@ public: Protocol(const QDBusConnection &dbusConnection, const QString &name); virtual ~Protocol(); -protected Q_SLOTS: +private: Tp::BaseConnectionPtr createConnection(const QVariantMap ¶meters, Tp::DBusError *error); QString identifyAccount(const QVariantMap ¶meters, Tp::DBusError *error); QString normalizeContact(const QString &contactId, Tp::DBusError *error); + + // Proto.I.Addressing + QString normalizeVCardAddress(const QString &vCardField, const QString vCardAddress, + Tp::DBusError *error); + QString normalizeContactUri(const QString &uri, Tp::DBusError *error); + + Tp::BaseProtocolAddressingInterfacePtr addrIface; }; #endif |