summaryrefslogtreecommitdiffstats
path: root/src/oauth/qoauth1signature.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/oauth/qoauth1signature.cpp')
-rw-r--r--src/oauth/qoauth1signature.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/oauth/qoauth1signature.cpp b/src/oauth/qoauth1signature.cpp
index 46d8874..aec2de3 100644
--- a/src/oauth/qoauth1signature.cpp
+++ b/src/oauth/qoauth1signature.cpp
@@ -126,6 +126,14 @@ QByteArray QOAuth1SignaturePrivate::signatureBaseString() const
case QOAuth1Signature::HttpRequestMethod::Delete:
base.append("DELETE");
break;
+ case QOAuth1Signature::HttpRequestMethod::Custom:
+ if (!customVerb.isEmpty()) {
+ base.append(customVerb);
+ } else {
+ qCCritical(loggingCategory, "QOAuth1Signature: HttpRequestMethod::Custom requires "
+ "the verb to be set via setCustomMethodString");
+ }
+ break;
default:
qCCritical(loggingCategory, "QOAuth1Signature: HttpRequestMethod not supported");
}
@@ -244,6 +252,37 @@ void QOAuth1Signature::setHttpRequestMethod(QOAuth1Signature::HttpRequestMethod
}
/*!
+ \since 5.13
+
+ Returns the custom method string.
+
+ \sa httpRequestMethod()
+*/
+QByteArray QOAuth1Signature::customMethodString() const
+{
+ return d->customVerb;
+}
+
+/*!
+ \since 5.13
+
+ Sets a custom request method. Will set the httpRequestMethod
+ to QOAuth1Signature::HttpRequestMethod::Custom and store the
+ \a verb to use it for the generation of the signature.
+
+ \note Using this method is required when working with custom verbs.
+ Setting only the request method will fail, as the signure needs to
+ know the actual verb.
+
+ \sa setHttpRequestMethod(), HttpRequestMethod
+*/
+void QOAuth1Signature::setCustomMethodString(const QByteArray &verb)
+{
+ d->method = QOAuth1Signature::HttpRequestMethod::Custom;
+ d->customVerb = verb;
+}
+
+/*!
Returns the URL.
*/
QUrl QOAuth1Signature::url() const