Bug 1638513 - P1 extract parsing method, r=valentin,necko-reviewers

Differential Revision: https://phabricator.services.mozilla.com/D78829
This commit is contained in:
Junior Hsu 2020-06-09 18:19:42 +00:00
Родитель 1caaeaae5f
Коммит b7d7ea4350
2 изменённых файлов: 25 добавлений и 15 удалений

Просмотреть файл

@ -276,22 +276,29 @@ bool nsHttpRequestHead::IsHTTPS() {
void nsHttpRequestHead::SetMethod(const nsACString& method) {
RecursiveMutexAutoLock mon(mRecursiveMutex);
mParsedMethod = kMethod_Custom;
mMethod = method;
if (!strcmp(mMethod.get(), "GET")) {
mParsedMethod = kMethod_Get;
} else if (!strcmp(mMethod.get(), "POST")) {
mParsedMethod = kMethod_Post;
} else if (!strcmp(mMethod.get(), "OPTIONS")) {
mParsedMethod = kMethod_Options;
} else if (!strcmp(mMethod.get(), "CONNECT")) {
mParsedMethod = kMethod_Connect;
} else if (!strcmp(mMethod.get(), "HEAD")) {
mParsedMethod = kMethod_Head;
} else if (!strcmp(mMethod.get(), "PUT")) {
mParsedMethod = kMethod_Put;
} else if (!strcmp(mMethod.get(), "TRACE")) {
mParsedMethod = kMethod_Trace;
ParseMethod(mMethod, mParsedMethod);
}
// static
void nsHttpRequestHead::ParseMethod(const nsCString& aRawMethod,
ParsedMethodType& aParsedMethod) {
aParsedMethod = kMethod_Custom;
if (!strcmp(aRawMethod.get(), "GET")) {
aParsedMethod = kMethod_Get;
} else if (!strcmp(aRawMethod.get(), "POST")) {
aParsedMethod = kMethod_Post;
} else if (!strcmp(aRawMethod.get(), "OPTIONS")) {
aParsedMethod = kMethod_Options;
} else if (!strcmp(aRawMethod.get(), "CONNECT")) {
aParsedMethod = kMethod_Connect;
} else if (!strcmp(aRawMethod.get(), "HEAD")) {
aParsedMethod = kMethod_Head;
} else if (!strcmp(aRawMethod.get(), "PUT")) {
aParsedMethod = kMethod_Put;
} else if (!strcmp(aRawMethod.get(), "TRACE")) {
aParsedMethod = kMethod_Trace;
}
}

Просмотреть файл

@ -102,6 +102,9 @@ class nsHttpRequestHead {
kMethod_Trace
};
static void ParseMethod(const nsCString& aRawMethod,
ParsedMethodType& aParsedMethod);
ParsedMethodType ParsedMethod();
bool EqualsMethod(ParsedMethodType aType);
bool IsGet() { return EqualsMethod(kMethod_Get); }