diff options
author | n-peugnet <n.peugnet@free.fr> | 2022-10-06 19:27:24 +0200 |
---|---|---|
committer | n-peugnet <n.peugnet@free.fr> | 2022-10-06 19:27:24 +0200 |
commit | d911b207f49e936b3e992200796110f0749ed150 (patch) | |
tree | 96d20ebb4d074a4c1755e21cb316a52d584daee3 /lib/connectiondata.h | |
parent | 8ad8a74152c5701b6ca1f9a00487ba9257a439b4 (diff) | |
parent | 56c2f2e2b809b9077393eb617828f33d144f5634 (diff) | |
download | libquotient-d911b207f49e936b3e992200796110f0749ed150.tar.gz libquotient-d911b207f49e936b3e992200796110f0749ed150.zip |
New upstream version 0.7.0
Diffstat (limited to 'lib/connectiondata.h')
-rw-r--r-- | lib/connectiondata.h | 87 |
1 files changed, 40 insertions, 47 deletions
diff --git a/lib/connectiondata.h b/lib/connectiondata.h index 7a2f2e90..75fc332f 100644 --- a/lib/connectiondata.h +++ b/lib/connectiondata.h @@ -1,55 +1,48 @@ -/****************************************************************************** - * Copyright (C) 2015 Felix Rohrbach <kde@fxrh.de> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ +// SPDX-FileCopyrightText: 2015 Felix Rohrbach <kde@fxrh.de> +// SPDX-FileCopyrightText: 2016 Kitsune Ral <Kitsune-Ral@users.sf.net> +// SPDX-License-Identifier: LGPL-2.1-or-later #pragma once +#include "util.h" + #include <QtCore/QUrl> -#include <memory> +#include <chrono> class QNetworkAccessManager; -namespace QMatrixClient -{ - class ConnectionData - { - public: - explicit ConnectionData(QUrl baseUrl); - virtual ~ConnectionData(); - - QByteArray accessToken() const; - QUrl baseUrl() const; - const QString& deviceId() const; - - QNetworkAccessManager* nam() const; - void setBaseUrl(QUrl baseUrl); - void setToken(QByteArray accessToken); - void setHost( QString host ); - void setPort( int port ); - void setDeviceId(const QString& deviceId); - - QString lastEvent() const; - void setLastEvent( QString identifier ); - - QByteArray generateTxnId() const; - - private: - struct Private; - std::unique_ptr<Private> d; - }; -} // namespace QMatrixClient +namespace Quotient { +class BaseJob; + +class ConnectionData { +public: + explicit ConnectionData(QUrl baseUrl); + virtual ~ConnectionData(); + + void submit(BaseJob* job); + void limitRate(std::chrono::milliseconds nextCallAfter); + + QByteArray accessToken() const; + QUrl baseUrl() const; + const QString& deviceId() const; + const QString& userId() const; + bool needsToken(const QString& requestName) const; + QNetworkAccessManager* nam() const; + + void setBaseUrl(QUrl baseUrl); + void setToken(QByteArray accessToken); + void setDeviceId(const QString& deviceId); + void setUserId(const QString& userId); + void setNeedsToken(const QString& requestName); + + QString lastEvent() const; + void setLastEvent(QString identifier); + + QByteArray generateTxnId() const; + +private: + class Private; + ImplPtr<Private> d; +}; +} // namespace Quotient |