| Home · All Classes · All Namespaces · Modules · Functions · Files

file-transfer-channel-creation-properties.h

    00001
    00023 #ifndef _TelepathyQt_file_transfer_channel_creation_properties_h_HEADER_GUARD_
    00024 #define _TelepathyQt_file_transfer_channel_creation_properties_h_HEADER_GUARD_
    00025
    00026 #ifndef IN_TP_QT_HEADER
    00027 #error IN_TP_QT_HEADER
    00028 #endif
    00029
    00030 #include <TelepathyQt/Constants>
    00031 #include <TelepathyQt/Global>
    00032
    00033 #include <QDateTime>
    00034 #include <QMetaType>
    00035 #include <QSharedDataPointer>
    00036 #include <QString>
    00037
    00038 namespace Tp
    00039 {
    00040
    00041 class TP_QT_EXPORT FileTransferChannelCreationProperties
    00042 {
    00043 public:
    00044     FileTransferChannelCreationProperties();
    00045     FileTransferChannelCreationProperties(const QString &suggestedFileName,
    00046             const QString &contentType, qulonglong size);
    00047     FileTransferChannelCreationProperties(const QString &path,
    00048             const QString &contentType);
    00049     FileTransferChannelCreationProperties(
    00050             const FileTransferChannelCreationProperties &other);
    00051     ~FileTransferChannelCreationProperties();
    00052
    00053     bool isValid() const { return mPriv.constData() != 0; }
    00054
    00055     FileTransferChannelCreationProperties &operator=(
    00056             const FileTransferChannelCreationProperties &other);
    00057     bool operator==(const FileTransferChannelCreationProperties &other) const;
    00058
    00059     FileTransferChannelCreationProperties &setContentHash(
    00060             FileHashType contentHashType, const QString &contentHash);
    00061     FileTransferChannelCreationProperties &setDescription(
    00062             const QString &description);
    00063     FileTransferChannelCreationProperties &setLastModificationTime(
    00064             const QDateTime &lastModificationTime);
    00065     FileTransferChannelCreationProperties &setUri(const QString &uri);
    00066
    00067     /* mandatory parameters */
    00068     QString suggestedFileName() const;
    00069     QString contentType() const;
    00070     qulonglong size() const;
    00071
    00072     /* optional parameters */
    00073     bool hasContentHash() const;
    00074     FileHashType contentHashType() const;
    00075     QString contentHash() const;
    00076
    00077     bool hasDescription() const;
    00078     QString description() const;
    00079
    00080     bool hasLastModificationTime() const;
    00081     QDateTime lastModificationTime() const;
    00082
    00083     bool hasUri() const;
    00084     QString uri() const;
    00085
    00086 private:
    00087     struct Private;
    00088     friend struct Private;
    00089     QSharedDataPointer<Private> mPriv;
    00090 };
    00091
    00092 } // Tp
    00093
    00094 Q_DECLARE_METATYPE(Tp::FileTransferChannelCreationProperties);
    00095
    00096 #endif