00001
00002
00003
00004
00005
00006
00007
00008 #ifndef IN_TP_QT_HEADER
00009 #error IN_TP_QT_HEADER
00010 #endif
00011
00012 #include <TelepathyQt/Types>
00013
00014 #include <QtGlobal>
00015
00016 #include <QString>
00017 #include <QObject>
00018 #include <QVariant>
00019
00020 #include <QDBusPendingReply>
00021
00022 #include <TelepathyQt/AbstractInterface>
00023 #include <TelepathyQt/DBusProxy>
00024 #include <TelepathyQt/Global>
00025
00026 namespace Tp
00027 {
00028 class PendingVariant;
00029 class PendingOperation;
00030 }
00031
00032 namespace Tp
00033 {
00034 namespace Client
00035 {
00036
00044 class TP_QT_EXPORT AccountInterface : public Tp::AbstractInterface
00045 {
00046 Q_OBJECT
00047
00048 public:
00055 static inline QLatin1String staticInterfaceName()
00056 {
00057 return QLatin1String("org.freedesktop.Telepathy.Account");
00058 }
00059
00067 AccountInterface(
00068 const QString& busName,
00069 const QString& objectPath,
00070 QObject* parent = 0
00071 );
00072
00081 AccountInterface(
00082 const QDBusConnection& connection,
00083 const QString& busName,
00084 const QString& objectPath,
00085 QObject* parent = 0
00086 );
00087
00094 AccountInterface(Tp::DBusProxy *proxy);
00095
00105 inline Tp::PendingVariant *requestPropertyInterfaces() const
00106 {
00107 return internalRequestProperty(QLatin1String("Interfaces"));
00108 }
00109
00123 inline Tp::PendingVariant *requestPropertyDisplayName() const
00124 {
00125 return internalRequestProperty(QLatin1String("DisplayName"));
00126 }
00127
00141 inline Tp::PendingOperation *setPropertyDisplayName(QString newValue)
00142 {
00143 return internalSetProperty(QLatin1String("DisplayName"), QVariant::fromValue(newValue));
00144 }
00145
00158 inline Tp::PendingVariant *requestPropertyIcon() const
00159 {
00160 return internalRequestProperty(QLatin1String("Icon"));
00161 }
00162
00175 inline Tp::PendingOperation *setPropertyIcon(QString newValue)
00176 {
00177 return internalSetProperty(QLatin1String("Icon"), QVariant::fromValue(newValue));
00178 }
00179
00199 inline Tp::PendingVariant *requestPropertyValid() const
00200 {
00201 return internalRequestProperty(QLatin1String("Valid"));
00202 }
00203
00242 inline Tp::PendingVariant *requestPropertyEnabled() const
00243 {
00244 return internalRequestProperty(QLatin1String("Enabled"));
00245 }
00246
00285 inline Tp::PendingOperation *setPropertyEnabled(bool newValue)
00286 {
00287 return internalSetProperty(QLatin1String("Enabled"), QVariant::fromValue(newValue));
00288 }
00289
00307 inline Tp::PendingVariant *requestPropertyNickname() const
00308 {
00309 return internalRequestProperty(QLatin1String("Nickname"));
00310 }
00311
00329 inline Tp::PendingOperation *setPropertyNickname(QString newValue)
00330 {
00331 return internalSetProperty(QLatin1String("Nickname"), QVariant::fromValue(newValue));
00332 }
00333
00378 inline Tp::PendingVariant *requestPropertyService() const
00379 {
00380 return internalRequestProperty(QLatin1String("Service"));
00381 }
00382
00427 inline Tp::PendingOperation *setPropertyService(QString newValue)
00428 {
00429 return internalSetProperty(QLatin1String("Service"), QVariant::fromValue(newValue));
00430 }
00431
00451 inline Tp::PendingVariant *requestPropertyParameters() const
00452 {
00453 return internalRequestProperty(QLatin1String("Parameters"));
00454 }
00455
00487 inline Tp::PendingVariant *requestPropertyAutomaticPresence() const
00488 {
00489 return internalRequestProperty(QLatin1String("AutomaticPresence"));
00490 }
00491
00523 inline Tp::PendingOperation *setPropertyAutomaticPresence(Tp::SimplePresence newValue)
00524 {
00525 return internalSetProperty(QLatin1String("AutomaticPresence"), QVariant::fromValue(newValue));
00526 }
00527
00543 inline Tp::PendingVariant *requestPropertyConnectAutomatically() const
00544 {
00545 return internalRequestProperty(QLatin1String("ConnectAutomatically"));
00546 }
00547
00563 inline Tp::PendingOperation *setPropertyConnectAutomatically(bool newValue)
00564 {
00565 return internalSetProperty(QLatin1String("ConnectAutomatically"), QVariant::fromValue(newValue));
00566 }
00567
00589 inline Tp::PendingVariant *requestPropertyConnection() const
00590 {
00591 return internalRequestProperty(QLatin1String("Connection"));
00592 }
00593
00611 inline Tp::PendingVariant *requestPropertyConnectionStatus() const
00612 {
00613 return internalRequestProperty(QLatin1String("ConnectionStatus"));
00614 }
00615
00628 inline Tp::PendingVariant *requestPropertyConnectionStatusReason() const
00629 {
00630 return internalRequestProperty(QLatin1String("ConnectionStatusReason"));
00631 }
00632
00663 inline Tp::PendingVariant *requestPropertyConnectionError() const
00664 {
00665 return internalRequestProperty(QLatin1String("ConnectionError"));
00666 }
00667
00692 inline Tp::PendingVariant *requestPropertyConnectionErrorDetails() const
00693 {
00694 return internalRequestProperty(QLatin1String("ConnectionErrorDetails"));
00695 }
00696
00711 inline Tp::PendingVariant *requestPropertyCurrentPresence() const
00712 {
00713 return internalRequestProperty(QLatin1String("CurrentPresence"));
00714 }
00715
00743 inline Tp::PendingVariant *requestPropertyRequestedPresence() const
00744 {
00745 return internalRequestProperty(QLatin1String("RequestedPresence"));
00746 }
00747
00775 inline Tp::PendingOperation *setPropertyRequestedPresence(Tp::SimplePresence newValue)
00776 {
00777 return internalSetProperty(QLatin1String("RequestedPresence"), QVariant::fromValue(newValue));
00778 }
00779
00821 inline Tp::PendingVariant *requestPropertyChangingPresence() const
00822 {
00823 return internalRequestProperty(QLatin1String("ChangingPresence"));
00824 }
00825
00863 inline Tp::PendingVariant *requestPropertyNormalizedName() const
00864 {
00865 return internalRequestProperty(QLatin1String("NormalizedName"));
00866 }
00867
00882 inline Tp::PendingVariant *requestPropertyHasBeenOnline() const
00883 {
00884 return internalRequestProperty(QLatin1String("HasBeenOnline"));
00885 }
00886
00893 Tp::PendingVariantMap *requestAllProperties() const
00894 {
00895 return internalRequestAllProperties();
00896 }
00897
00898 public Q_SLOTS:
00909 inline QDBusPendingReply<> Remove(int timeout = -1)
00910 {
00911 if (!invalidationReason().isEmpty()) {
00912 return QDBusPendingReply<>(QDBusMessage::createError(
00913 invalidationReason(),
00914 invalidationMessage()
00915 ));
00916 }
00917
00918 QDBusMessage callMessage = QDBusMessage::createMethodCall(this->service(), this->path(),
00919 this->staticInterfaceName(), QLatin1String("Remove"));
00920 return this->connection().asyncCall(callMessage, timeout);
00921 }
00922
00993 inline QDBusPendingReply<QStringList> UpdateParameters(const QVariantMap& set, const QStringList& unset, int timeout = -1)
00994 {
00995 if (!invalidationReason().isEmpty()) {
00996 return QDBusPendingReply<QStringList>(QDBusMessage::createError(
00997 invalidationReason(),
00998 invalidationMessage()
00999 ));
01000 }
01001
01002 QDBusMessage callMessage = QDBusMessage::createMethodCall(this->service(), this->path(),
01003 this->staticInterfaceName(), QLatin1String("UpdateParameters"));
01004 callMessage << QVariant::fromValue(set) << QVariant::fromValue(unset);
01005 return this->connection().asyncCall(callMessage, timeout);
01006 }
01007
01049 inline QDBusPendingReply<> Reconnect(int timeout = -1)
01050 {
01051 if (!invalidationReason().isEmpty()) {
01052 return QDBusPendingReply<>(QDBusMessage::createError(
01053 invalidationReason(),
01054 invalidationMessage()
01055 ));
01056 }
01057
01058 QDBusMessage callMessage = QDBusMessage::createMethodCall(this->service(), this->path(),
01059 this->staticInterfaceName(), QLatin1String("Reconnect"));
01060 return this->connection().asyncCall(callMessage, timeout);
01061 }
01062
01063 Q_SIGNALS:
01073 void Removed();
01074
01089 void AccountPropertyChanged(const QVariantMap& properties);
01090
01091 protected:
01092 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01093 };
01094
01102 class TP_QT_EXPORT AccountInterfaceAddressingInterface : public Tp::AbstractInterface
01103 {
01104 Q_OBJECT
01105
01106 public:
01113 static inline QLatin1String staticInterfaceName()
01114 {
01115 return QLatin1String("org.freedesktop.Telepathy.Account.Interface.Addressing");
01116 }
01117
01125 AccountInterfaceAddressingInterface(
01126 const QString& busName,
01127 const QString& objectPath,
01128 QObject* parent = 0
01129 );
01130
01139 AccountInterfaceAddressingInterface(
01140 const QDBusConnection& connection,
01141 const QString& busName,
01142 const QString& objectPath,
01143 QObject* parent = 0
01144 );
01145
01152 AccountInterfaceAddressingInterface(Tp::DBusProxy *proxy);
01153
01161 explicit AccountInterfaceAddressingInterface(const Tp::Client::AccountInterface& mainInterface);
01162
01170 AccountInterfaceAddressingInterface(const Tp::Client::AccountInterface& mainInterface, QObject* parent);
01171
01190 inline Tp::PendingVariant *requestPropertyURISchemes() const
01191 {
01192 return internalRequestProperty(QLatin1String("URISchemes"));
01193 }
01194
01201 Tp::PendingVariantMap *requestAllProperties() const
01202 {
01203 return internalRequestAllProperties();
01204 }
01205
01206 public Q_SLOTS:
01227 inline QDBusPendingReply<> SetURISchemeAssociation(const QString& URIScheme, bool association, int timeout = -1)
01228 {
01229 if (!invalidationReason().isEmpty()) {
01230 return QDBusPendingReply<>(QDBusMessage::createError(
01231 invalidationReason(),
01232 invalidationMessage()
01233 ));
01234 }
01235
01236 QDBusMessage callMessage = QDBusMessage::createMethodCall(this->service(), this->path(),
01237 this->staticInterfaceName(), QLatin1String("SetURISchemeAssociation"));
01238 callMessage << QVariant::fromValue(URIScheme) << QVariant::fromValue(association);
01239 return this->connection().asyncCall(callMessage, timeout);
01240 }
01241
01242 protected:
01243 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01244 };
01245
01253 class TP_QT_EXPORT AccountInterfaceAvatarInterface : public Tp::AbstractInterface
01254 {
01255 Q_OBJECT
01256
01257 public:
01264 static inline QLatin1String staticInterfaceName()
01265 {
01266 return QLatin1String("org.freedesktop.Telepathy.Account.Interface.Avatar");
01267 }
01268
01276 AccountInterfaceAvatarInterface(
01277 const QString& busName,
01278 const QString& objectPath,
01279 QObject* parent = 0
01280 );
01281
01290 AccountInterfaceAvatarInterface(
01291 const QDBusConnection& connection,
01292 const QString& busName,
01293 const QString& objectPath,
01294 QObject* parent = 0
01295 );
01296
01303 AccountInterfaceAvatarInterface(Tp::DBusProxy *proxy);
01304
01312 explicit AccountInterfaceAvatarInterface(const Tp::Client::AccountInterface& mainInterface);
01313
01321 AccountInterfaceAvatarInterface(const Tp::Client::AccountInterface& mainInterface, QObject* parent);
01322
01336 inline Tp::PendingVariant *requestPropertyAvatar() const
01337 {
01338 return internalRequestProperty(QLatin1String("Avatar"));
01339 }
01340
01354 inline Tp::PendingOperation *setPropertyAvatar(Tp::Avatar newValue)
01355 {
01356 return internalSetProperty(QLatin1String("Avatar"), QVariant::fromValue(newValue));
01357 }
01358
01365 Tp::PendingVariantMap *requestAllProperties() const
01366 {
01367 return internalRequestAllProperties();
01368 }
01369
01370 Q_SIGNALS:
01379 void AvatarChanged();
01380
01381 protected:
01382 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01383 };
01384
01392 class TP_QT_EXPORT AccountInterfaceStorageInterface : public Tp::AbstractInterface
01393 {
01394 Q_OBJECT
01395
01396 public:
01403 static inline QLatin1String staticInterfaceName()
01404 {
01405 return QLatin1String("org.freedesktop.Telepathy.Account.Interface.Storage");
01406 }
01407
01415 AccountInterfaceStorageInterface(
01416 const QString& busName,
01417 const QString& objectPath,
01418 QObject* parent = 0
01419 );
01420
01429 AccountInterfaceStorageInterface(
01430 const QDBusConnection& connection,
01431 const QString& busName,
01432 const QString& objectPath,
01433 QObject* parent = 0
01434 );
01435
01442 AccountInterfaceStorageInterface(Tp::DBusProxy *proxy);
01443
01451 explicit AccountInterfaceStorageInterface(const Tp::Client::AccountInterface& mainInterface);
01452
01460 AccountInterfaceStorageInterface(const Tp::Client::AccountInterface& mainInterface, QObject* parent);
01461
01480 inline Tp::PendingVariant *requestPropertyStorageProvider() const
01481 {
01482 return internalRequestProperty(QLatin1String("StorageProvider"));
01483 }
01484
01512 inline Tp::PendingVariant *requestPropertyStorageIdentifier() const
01513 {
01514 return internalRequestProperty(QLatin1String("StorageIdentifier"));
01515 }
01516
01549 inline Tp::PendingVariant *requestPropertyStorageSpecificInformation() const
01550 {
01551 return internalRequestProperty(QLatin1String("StorageSpecificInformation"));
01552 }
01553
01570 inline Tp::PendingVariant *requestPropertyStorageRestrictions() const
01571 {
01572 return internalRequestProperty(QLatin1String("StorageRestrictions"));
01573 }
01574
01581 Tp::PendingVariantMap *requestAllProperties() const
01582 {
01583 return internalRequestAllProperties();
01584 }
01585
01586 protected:
01587 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01588 };
01589 }
01590 }
01591 Q_DECLARE_METATYPE(Tp::Client::AccountInterface*)
01592 Q_DECLARE_METATYPE(Tp::Client::AccountInterfaceAddressingInterface*)
01593 Q_DECLARE_METATYPE(Tp::Client::AccountInterfaceAvatarInterface*)
01594 Q_DECLARE_METATYPE(Tp::Client::AccountInterfaceStorageInterface*)