diff options
Diffstat (limited to 'src/oauth')
| -rw-r--r-- | src/oauth/qabstractoauth.cpp | 10 | ||||
| -rw-r--r-- | src/oauth/qabstractoauth_p.h | 1 | ||||
| -rw-r--r-- | src/oauth/qoauth2authorizationcodeflow.cpp | 8 |
3 files changed, 16 insertions, 3 deletions
diff --git a/src/oauth/qabstractoauth.cpp b/src/oauth/qabstractoauth.cpp index bb7c16c..70a8ed8 100644 --- a/src/oauth/qabstractoauth.cpp +++ b/src/oauth/qabstractoauth.cpp @@ -285,6 +285,16 @@ QByteArray QAbstractOAuthPrivate::generateRandomString(quint8 length) return ba; } +void QAbstractOAuthPrivate::setExtraTokens(const QVariantMap &tokens) +{ + if (extraTokens == tokens) + return; + Q_Q(QAbstractOAuth); + extraTokens = tokens; + emit q->extraTokensChanged(extraTokens); +} + +// ### Qt 7 remove when removing HTTP method support (QTBUG-124329) QByteArray QAbstractOAuthPrivate::convertParameters(const QVariantMap ¶meters) { QByteArray data; diff --git a/src/oauth/qabstractoauth_p.h b/src/oauth/qabstractoauth_p.h index 621a1ee..ce97ee0 100644 --- a/src/oauth/qabstractoauth_p.h +++ b/src/oauth/qabstractoauth_p.h @@ -50,6 +50,7 @@ public: QNetworkAccessManager *networkAccessManager(); void setStatus(QAbstractOAuth::Status status); static QByteArray generateRandomString(quint8 length); + void setExtraTokens(const QVariantMap &tokens); const QLoggingCategory loggingCategory; QString clientIdentifier; diff --git a/src/oauth/qoauth2authorizationcodeflow.cpp b/src/oauth/qoauth2authorizationcodeflow.cpp index d979aae..63337be 100644 --- a/src/oauth/qoauth2authorizationcodeflow.cpp +++ b/src/oauth/qoauth2authorizationcodeflow.cpp @@ -113,7 +113,7 @@ void QOAuth2AuthorizationCodeFlowPrivate::_q_handleCallback(const QVariantMap &d QVariantMap copy(data); copy.remove(Key::code); - extraTokens = copy; + setExtraTokens(copy); q->requestAccessToken(code); } @@ -163,7 +163,9 @@ void QOAuth2AuthorizationCodeFlowPrivate::_q_accessTokenRequestFinished(const QV copy.remove(Key::refreshToken); copy.remove(Key::scope); copy.remove(Key::tokenType); - extraTokens.insert(copy); + QVariantMap newExtraTokens = extraTokens; + newExtraTokens.insert(copy); + setExtraTokens(newExtraTokens); setStatus(QAbstractOAuth::Status::Granted); } @@ -383,7 +385,7 @@ QUrl QOAuth2AuthorizationCodeFlow::buildAuthenticateUrl(const QMultiMap<QString, connect(d->replyHandler.data(), &QAbstractOAuthReplyHandler::callbackReceived, this, &QOAuth2AuthorizationCodeFlow::authorizationCallbackReceived, Qt::UniqueConnection); setStatus(QAbstractOAuth::Status::NotAuthenticated); - qCDebug(d->loggingCategory, "Generated URL: %s", qPrintable(url.toString())); + qCDebug(d->loggingCategory, "Authorization URL generated"); return url; } |
