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
00381 inline Tp::PendingVariant *requestPropertyService() const
00382 {
00383 return internalRequestProperty(QLatin1String("Service"));
00384 }
00385
00433 inline Tp::PendingOperation *setPropertyService(QString newValue)
00434 {
00435 return internalSetProperty(QLatin1String("Service"), QVariant::fromValue(newValue));
00436 }
00437
00457 inline Tp::PendingVariant *requestPropertyParameters() const
00458 {
00459 return internalRequestProperty(QLatin1String("Parameters"));
00460 }
00461
00493 inline Tp::PendingVariant *requestPropertyAutomaticPresence() const
00494 {
00495 return internalRequestProperty(QLatin1String("AutomaticPresence"));
00496 }
00497
00529 inline Tp::PendingOperation *setPropertyAutomaticPresence(Tp::SimplePresence newValue)
00530 {
00531 return internalSetProperty(QLatin1String("AutomaticPresence"), QVariant::fromValue(newValue));
00532 }
00533
00549 inline Tp::PendingVariant *requestPropertyConnectAutomatically() const
00550 {
00551 return internalRequestProperty(QLatin1String("ConnectAutomatically"));
00552 }
00553
00569 inline Tp::PendingOperation *setPropertyConnectAutomatically(bool newValue)
00570 {
00571 return internalSetProperty(QLatin1String("ConnectAutomatically"), QVariant::fromValue(newValue));
00572 }
00573
00595 inline Tp::PendingVariant *requestPropertyConnection() const
00596 {
00597 return internalRequestProperty(QLatin1String("Connection"));
00598 }
00599
00617 inline Tp::PendingVariant *requestPropertyConnectionStatus() const
00618 {
00619 return internalRequestProperty(QLatin1String("ConnectionStatus"));
00620 }
00621
00634 inline Tp::PendingVariant *requestPropertyConnectionStatusReason() const
00635 {
00636 return internalRequestProperty(QLatin1String("ConnectionStatusReason"));
00637 }
00638
00669 inline Tp::PendingVariant *requestPropertyConnectionError() const
00670 {
00671 return internalRequestProperty(QLatin1String("ConnectionError"));
00672 }
00673
00698 inline Tp::PendingVariant *requestPropertyConnectionErrorDetails() const
00699 {
00700 return internalRequestProperty(QLatin1String("ConnectionErrorDetails"));
00701 }
00702
00717 inline Tp::PendingVariant *requestPropertyCurrentPresence() const
00718 {
00719 return internalRequestProperty(QLatin1String("CurrentPresence"));
00720 }
00721
00749 inline Tp::PendingVariant *requestPropertyRequestedPresence() const
00750 {
00751 return internalRequestProperty(QLatin1String("RequestedPresence"));
00752 }
00753
00781 inline Tp::PendingOperation *setPropertyRequestedPresence(Tp::SimplePresence newValue)
00782 {
00783 return internalSetProperty(QLatin1String("RequestedPresence"), QVariant::fromValue(newValue));
00784 }
00785
00827 inline Tp::PendingVariant *requestPropertyChangingPresence() const
00828 {
00829 return internalRequestProperty(QLatin1String("ChangingPresence"));
00830 }
00831
00869 inline Tp::PendingVariant *requestPropertyNormalizedName() const
00870 {
00871 return internalRequestProperty(QLatin1String("NormalizedName"));
00872 }
00873
00888 inline Tp::PendingVariant *requestPropertyHasBeenOnline() const
00889 {
00890 return internalRequestProperty(QLatin1String("HasBeenOnline"));
00891 }
00892
00925 inline Tp::PendingVariant *requestPropertySupersedes() const
00926 {
00927 return internalRequestProperty(QLatin1String("Supersedes"));
00928 }
00929
00962 inline Tp::PendingOperation *setPropertySupersedes(Tp::ObjectPathList newValue)
00963 {
00964 return internalSetProperty(QLatin1String("Supersedes"), QVariant::fromValue(newValue));
00965 }
00966
00973 Tp::PendingVariantMap *requestAllProperties() const
00974 {
00975 return internalRequestAllProperties();
00976 }
00977
00978 public Q_SLOTS:
00989 inline QDBusPendingReply<> Remove(int timeout = -1)
00990 {
00991 if (!invalidationReason().isEmpty()) {
00992 return QDBusPendingReply<>(QDBusMessage::createError(
00993 invalidationReason(),
00994 invalidationMessage()
00995 ));
00996 }
00997
00998 QDBusMessage callMessage = QDBusMessage::createMethodCall(this->service(), this->path(),
00999 this->staticInterfaceName(), QLatin1String("Remove"));
01000 return this->connection().asyncCall(callMessage, timeout);
01001 }
01002
01073 inline QDBusPendingReply<QStringList> UpdateParameters(const QVariantMap& set, const QStringList& unset, int timeout = -1)
01074 {
01075 if (!invalidationReason().isEmpty()) {
01076 return QDBusPendingReply<QStringList>(QDBusMessage::createError(
01077 invalidationReason(),
01078 invalidationMessage()
01079 ));
01080 }
01081
01082 QDBusMessage callMessage = QDBusMessage::createMethodCall(this->service(), this->path(),
01083 this->staticInterfaceName(), QLatin1String("UpdateParameters"));
01084 callMessage << QVariant::fromValue(set) << QVariant::fromValue(unset);
01085 return this->connection().asyncCall(callMessage, timeout);
01086 }
01087
01129 inline QDBusPendingReply<> Reconnect(int timeout = -1)
01130 {
01131 if (!invalidationReason().isEmpty()) {
01132 return QDBusPendingReply<>(QDBusMessage::createError(
01133 invalidationReason(),
01134 invalidationMessage()
01135 ));
01136 }
01137
01138 QDBusMessage callMessage = QDBusMessage::createMethodCall(this->service(), this->path(),
01139 this->staticInterfaceName(), QLatin1String("Reconnect"));
01140 return this->connection().asyncCall(callMessage, timeout);
01141 }
01142
01143 Q_SIGNALS:
01153 void Removed();
01154
01169 void AccountPropertyChanged(const QVariantMap& properties);
01170
01171 protected:
01172 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01173 };
01174
01182 class TP_QT_EXPORT AccountInterfaceAddressingInterface : public Tp::AbstractInterface
01183 {
01184 Q_OBJECT
01185
01186 public:
01193 static inline QLatin1String staticInterfaceName()
01194 {
01195 return QLatin1String("org.freedesktop.Telepathy.Account.Interface.Addressing");
01196 }
01197
01205 AccountInterfaceAddressingInterface(
01206 const QString& busName,
01207 const QString& objectPath,
01208 QObject* parent = 0
01209 );
01210
01219 AccountInterfaceAddressingInterface(
01220 const QDBusConnection& connection,
01221 const QString& busName,
01222 const QString& objectPath,
01223 QObject* parent = 0
01224 );
01225
01232 AccountInterfaceAddressingInterface(Tp::DBusProxy *proxy);
01233
01241 explicit AccountInterfaceAddressingInterface(const Tp::Client::AccountInterface& mainInterface);
01242
01250 AccountInterfaceAddressingInterface(const Tp::Client::AccountInterface& mainInterface, QObject* parent);
01251
01272 inline Tp::PendingVariant *requestPropertyURISchemes() const
01273 {
01274 return internalRequestProperty(QLatin1String("URISchemes"));
01275 }
01276
01283 Tp::PendingVariantMap *requestAllProperties() const
01284 {
01285 return internalRequestAllProperties();
01286 }
01287
01288 public Q_SLOTS:
01309 inline QDBusPendingReply<> SetURISchemeAssociation(const QString& URIScheme, bool association, int timeout = -1)
01310 {
01311 if (!invalidationReason().isEmpty()) {
01312 return QDBusPendingReply<>(QDBusMessage::createError(
01313 invalidationReason(),
01314 invalidationMessage()
01315 ));
01316 }
01317
01318 QDBusMessage callMessage = QDBusMessage::createMethodCall(this->service(), this->path(),
01319 this->staticInterfaceName(), QLatin1String("SetURISchemeAssociation"));
01320 callMessage << QVariant::fromValue(URIScheme) << QVariant::fromValue(association);
01321 return this->connection().asyncCall(callMessage, timeout);
01322 }
01323
01324 protected:
01325 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01326 };
01327
01335 class TP_QT_EXPORT AccountInterfaceAvatarInterface : public Tp::AbstractInterface
01336 {
01337 Q_OBJECT
01338
01339 public:
01346 static inline QLatin1String staticInterfaceName()
01347 {
01348 return QLatin1String("org.freedesktop.Telepathy.Account.Interface.Avatar");
01349 }
01350
01358 AccountInterfaceAvatarInterface(
01359 const QString& busName,
01360 const QString& objectPath,
01361 QObject* parent = 0
01362 );
01363
01372 AccountInterfaceAvatarInterface(
01373 const QDBusConnection& connection,
01374 const QString& busName,
01375 const QString& objectPath,
01376 QObject* parent = 0
01377 );
01378
01385 AccountInterfaceAvatarInterface(Tp::DBusProxy *proxy);
01386
01394 explicit AccountInterfaceAvatarInterface(const Tp::Client::AccountInterface& mainInterface);
01395
01403 AccountInterfaceAvatarInterface(const Tp::Client::AccountInterface& mainInterface, QObject* parent);
01404
01418 inline Tp::PendingVariant *requestPropertyAvatar() const
01419 {
01420 return internalRequestProperty(QLatin1String("Avatar"));
01421 }
01422
01436 inline Tp::PendingOperation *setPropertyAvatar(Tp::Avatar newValue)
01437 {
01438 return internalSetProperty(QLatin1String("Avatar"), QVariant::fromValue(newValue));
01439 }
01440
01447 Tp::PendingVariantMap *requestAllProperties() const
01448 {
01449 return internalRequestAllProperties();
01450 }
01451
01452 Q_SIGNALS:
01461 void AvatarChanged();
01462
01463 protected:
01464 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01465 };
01466
01474 class TP_QT_EXPORT AccountInterfaceStorageInterface : public Tp::AbstractInterface
01475 {
01476 Q_OBJECT
01477
01478 public:
01485 static inline QLatin1String staticInterfaceName()
01486 {
01487 return QLatin1String("org.freedesktop.Telepathy.Account.Interface.Storage");
01488 }
01489
01497 AccountInterfaceStorageInterface(
01498 const QString& busName,
01499 const QString& objectPath,
01500 QObject* parent = 0
01501 );
01502
01511 AccountInterfaceStorageInterface(
01512 const QDBusConnection& connection,
01513 const QString& busName,
01514 const QString& objectPath,
01515 QObject* parent = 0
01516 );
01517
01524 AccountInterfaceStorageInterface(Tp::DBusProxy *proxy);
01525
01533 explicit AccountInterfaceStorageInterface(const Tp::Client::AccountInterface& mainInterface);
01534
01542 AccountInterfaceStorageInterface(const Tp::Client::AccountInterface& mainInterface, QObject* parent);
01543
01562 inline Tp::PendingVariant *requestPropertyStorageProvider() const
01563 {
01564 return internalRequestProperty(QLatin1String("StorageProvider"));
01565 }
01566
01594 inline Tp::PendingVariant *requestPropertyStorageIdentifier() const
01595 {
01596 return internalRequestProperty(QLatin1String("StorageIdentifier"));
01597 }
01598
01631 inline Tp::PendingVariant *requestPropertyStorageSpecificInformation() const
01632 {
01633 return internalRequestProperty(QLatin1String("StorageSpecificInformation"));
01634 }
01635
01652 inline Tp::PendingVariant *requestPropertyStorageRestrictions() const
01653 {
01654 return internalRequestProperty(QLatin1String("StorageRestrictions"));
01655 }
01656
01663 Tp::PendingVariantMap *requestAllProperties() const
01664 {
01665 return internalRequestAllProperties();
01666 }
01667
01668 protected:
01669 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01670 };
01671 }
01672 }
01673 Q_DECLARE_METATYPE(Tp::Client::AccountInterface*)
01674 Q_DECLARE_METATYPE(Tp::Client::AccountInterfaceAddressingInterface*)
01675 Q_DECLARE_METATYPE(Tp::Client::AccountInterfaceAvatarInterface*)
01676 Q_DECLARE_METATYPE(Tp::Client::AccountInterfaceStorageInterface*)