forked from qt-creator/qt-creator
Axivion: Reuse AxivionPluginPrivate::m_apiToken field in fetchHtmlRecipe
Change-Id: I6bb37678000ba755d65b0275c4350815a9047880 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -317,29 +317,22 @@ constexpr char s_jsonContentType[] = "application/json";
|
|||||||
|
|
||||||
static Group fetchHtmlRecipe(const QUrl &url, const std::function<void(const QByteArray &)> &handler)
|
static Group fetchHtmlRecipe(const QUrl &url, const std::function<void(const QByteArray &)> &handler)
|
||||||
{
|
{
|
||||||
struct StorageData
|
|
||||||
{
|
|
||||||
QByteArray credentials;
|
|
||||||
};
|
|
||||||
|
|
||||||
const Storage<StorageData> storage;
|
|
||||||
|
|
||||||
// TODO: Refactor so that it's a common code with fetchDataRecipe().
|
// TODO: Refactor so that it's a common code with fetchDataRecipe().
|
||||||
const auto onCredentialSetup = [storage] {
|
const auto onQuerySetup = [url](NetworkQuery &query) {
|
||||||
storage->credentials = QByteArrayLiteral("AxToken ") + settings().server.token.toUtf8();
|
if (dd->m_serverAccess == ServerAccess::Unknown)
|
||||||
};
|
return SetupResult::StopWithError; // TODO: start authorizationRecipe()?
|
||||||
|
|
||||||
const auto onQuerySetup = [storage, url](NetworkQuery &query) {
|
|
||||||
QNetworkRequest request(url);
|
QNetworkRequest request(url);
|
||||||
request.setRawHeader("Accept", s_htmlContentType);
|
request.setRawHeader("Accept", s_htmlContentType);
|
||||||
request.setRawHeader("Authorization", storage->credentials);
|
if (dd->m_serverAccess == ServerAccess::WithAuthorization && dd->m_apiToken)
|
||||||
|
request.setRawHeader("Authorization", "AxToken " + *dd->m_apiToken);
|
||||||
const QByteArray ua = "Axivion" + QCoreApplication::applicationName().toUtf8() +
|
const QByteArray ua = "Axivion" + QCoreApplication::applicationName().toUtf8() +
|
||||||
"Plugin/" + QCoreApplication::applicationVersion().toUtf8();
|
"Plugin/" + QCoreApplication::applicationVersion().toUtf8();
|
||||||
request.setRawHeader("X-Axivion-User-Agent", ua);
|
request.setRawHeader("X-Axivion-User-Agent", ua);
|
||||||
query.setRequest(request);
|
query.setRequest(request);
|
||||||
query.setNetworkAccessManager(&dd->m_networkAccessManager);
|
query.setNetworkAccessManager(&dd->m_networkAccessManager);
|
||||||
|
return SetupResult::Continue;
|
||||||
};
|
};
|
||||||
|
|
||||||
const auto onQueryDone = [url, handler](const NetworkQuery &query, DoneWith doneWith) {
|
const auto onQueryDone = [url, handler](const NetworkQuery &query, DoneWith doneWith) {
|
||||||
QNetworkReply *reply = query.reply();
|
QNetworkReply *reply = query.reply();
|
||||||
const int statusCode = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
|
const int statusCode = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
|
||||||
@@ -356,14 +349,7 @@ static Group fetchHtmlRecipe(const QUrl &url, const std::function<void(const QBy
|
|||||||
}
|
}
|
||||||
return DoneResult::Error;
|
return DoneResult::Error;
|
||||||
};
|
};
|
||||||
|
return {NetworkQueryTask(onQuerySetup, onQueryDone)};
|
||||||
const Group recipe {
|
|
||||||
storage,
|
|
||||||
Sync(onCredentialSetup),
|
|
||||||
NetworkQueryTask(onQuerySetup, onQueryDone),
|
|
||||||
};
|
|
||||||
|
|
||||||
return recipe;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename DtoType>
|
template <typename DtoType>
|
||||||
|
|||||||
Reference in New Issue
Block a user