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
01270 inline Tp::PendingVariant *requestPropertyURISchemes() const
01271 {
01272 return internalRequestProperty(QLatin1String("URISchemes"));
01273 }
01274
01281 Tp::PendingVariantMap *requestAllProperties() const
01282 {
01283 return internalRequestAllProperties();
01284 }
01285
01286 public Q_SLOTS:
01307 inline QDBusPendingReply<> SetURISchemeAssociation(const QString& URIScheme, bool association, int timeout = -1)
01308 {
01309 if (!invalidationReason().isEmpty()) {
01310 return QDBusPendingReply<>(QDBusMessage::createError(
01311 invalidationReason(),
01312 invalidationMessage()
01313 ));
01314 }
01315
01316 QDBusMessage callMessage = QDBusMessage::createMethodCall(this->service(), this->path(),
01317 this->staticInterfaceName(), QLatin1String("SetURISchemeAssociation"));
01318 callMessage << QVariant::fromValue(URIScheme) << QVariant::fromValue(association);
01319 return this->connection().asyncCall(callMessage, timeout);
01320 }
01321
01322 protected:
01323 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01324 };
01325
01333 class TP_QT_EXPORT AccountInterfaceAvatarInterface : public Tp::AbstractInterface
01334 {
01335 Q_OBJECT
01336
01337 public:
01344 static inline QLatin1String staticInterfaceName()
01345 {
01346 return QLatin1String("org.freedesktop.Telepathy.Account.Interface.Avatar");
01347 }
01348
01356 AccountInterfaceAvatarInterface(
01357 const QString& busName,
01358 const QString& objectPath,
01359 QObject* parent = 0
01360 );
01361
01370 AccountInterfaceAvatarInterface(
01371 const QDBusConnection& connection,
01372 const QString& busName,
01373 const QString& objectPath,
01374 QObject* parent = 0
01375 );
01376
01383 AccountInterfaceAvatarInterface(Tp::DBusProxy *proxy);
01384
01392 explicit AccountInterfaceAvatarInterface(const Tp::Client::AccountInterface& mainInterface);
01393
01401 AccountInterfaceAvatarInterface(const Tp::Client::AccountInterface& mainInterface, QObject* parent);
01402
01416 inline Tp::PendingVariant *requestPropertyAvatar() const
01417 {
01418 return internalRequestProperty(QLatin1String("Avatar"));
01419 }
01420
01434 inline Tp::PendingOperation *setPropertyAvatar(Tp::Avatar newValue)
01435 {
01436 return internalSetProperty(QLatin1String("Avatar"), QVariant::fromValue(newValue));
01437 }
01438
01445 Tp::PendingVariantMap *requestAllProperties() const
01446 {
01447 return internalRequestAllProperties();
01448 }
01449
01450 Q_SIGNALS:
01459 void AvatarChanged();
01460
01461 protected:
01462 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01463 };
01464
01472 class TP_QT_EXPORT AccountInterfaceStorageInterface : public Tp::AbstractInterface
01473 {
01474 Q_OBJECT
01475
01476 public:
01483 static inline QLatin1String staticInterfaceName()
01484 {
01485 return QLatin1String("org.freedesktop.Telepathy.Account.Interface.Storage");
01486 }
01487
01495 AccountInterfaceStorageInterface(
01496 const QString& busName,
01497 const QString& objectPath,
01498 QObject* parent = 0
01499 );
01500
01509 AccountInterfaceStorageInterface(
01510 const QDBusConnection& connection,
01511 const QString& busName,
01512 const QString& objectPath,
01513 QObject* parent = 0
01514 );
01515
01522 AccountInterfaceStorageInterface(Tp::DBusProxy *proxy);
01523
01531 explicit AccountInterfaceStorageInterface(const Tp::Client::AccountInterface& mainInterface);
01532
01540 AccountInterfaceStorageInterface(const Tp::Client::AccountInterface& mainInterface, QObject* parent);
01541
01560 inline Tp::PendingVariant *requestPropertyStorageProvider() const
01561 {
01562 return internalRequestProperty(QLatin1String("StorageProvider"));
01563 }
01564
01592 inline Tp::PendingVariant *requestPropertyStorageIdentifier() const
01593 {
01594 return internalRequestProperty(QLatin1String("StorageIdentifier"));
01595 }
01596
01629 inline Tp::PendingVariant *requestPropertyStorageSpecificInformation() const
01630 {
01631 return internalRequestProperty(QLatin1String("StorageSpecificInformation"));
01632 }
01633
01650 inline Tp::PendingVariant *requestPropertyStorageRestrictions() const
01651 {
01652 return internalRequestProperty(QLatin1String("StorageRestrictions"));
01653 }
01654
01661 Tp::PendingVariantMap *requestAllProperties() const
01662 {
01663 return internalRequestAllProperties();
01664 }
01665
01666 protected:
01667 virtual void invalidate(Tp::DBusProxy *, const QString &, const QString &);
01668 };
01669 }
01670 }
01671 Q_DECLARE_METATYPE(Tp::Client::AccountInterface*)
01672 Q_DECLARE_METATYPE(Tp::Client::AccountInterfaceAddressingInterface*)
01673 Q_DECLARE_METATYPE(Tp::Client::AccountInterfaceAvatarInterface*)
01674 Q_DECLARE_METATYPE(Tp::Client::AccountInterfaceStorageInterface*)