File indexing completed on 2025-03-09 04:52:25
0001 /* 0002 * This file is part of LibKGAPI library 0003 * 0004 * SPDX-FileCopyrightText: 2013 Daniel Vrátil <dvratil@redhat.com> 0005 * 0006 * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0007 */ 0008 0009 #pragma once 0010 0011 #include "job.h" 0012 #include "kgapicore_export.h" 0013 0014 namespace KGAPI2 0015 { 0016 0017 /** 0018 * @internal 0019 * 0020 * Exported, but not publicly available! 0021 */ 0022 class KGAPICORE_EXPORT NewTokensFetchJob : public KGAPI2::Job 0023 { 0024 Q_OBJECT 0025 0026 public: 0027 explicit NewTokensFetchJob(const QString &tmpToken, const QString &apiKey, const QString &secretKey, int localPort, QObject *parent = nullptr); 0028 ~NewTokensFetchJob() override; 0029 0030 [[nodiscard]] QString accessToken() const; 0031 [[nodiscard]] QString refreshToken() const; 0032 [[nodiscard]] qulonglong expiresIn() const; 0033 0034 protected: 0035 void start() override; 0036 void handleReply(const QNetworkReply *reply, const QByteArray &rawData) override; 0037 void dispatchRequest(QNetworkAccessManager *accessManager, const QNetworkRequest &request, const QByteArray &data, const QString &contentType) override; 0038 0039 private: 0040 class Private; 0041 Private *const d; 0042 friend class Private; 0043 }; 0044 0045 } // namespace KGAPI2