1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef FetchUtils_h
6#define FetchUtils_h
7
8#include "wtf/Forward.h"
9
10namespace blink {
11
12class HTTPHeaderMap;
13
14class FetchUtils {
15public:
16    static bool isSimpleMethod(const String& method);
17    static bool isSimpleHeader(const AtomicString& name, const AtomicString& value);
18    static bool isSimpleRequest(const String& method, const HTTPHeaderMap&);
19    static bool isForbiddenMethod(const String& method);
20    static bool isUsefulMethod(const String& method) { return !isForbiddenMethod(method); }
21    static bool isForbiddenHeaderName(const String& name);
22    static bool isForbiddenResponseHeaderName(const String& name);
23    static bool isSimpleOrForbiddenRequest(const String& method, const HTTPHeaderMap&);
24
25private:
26    FetchUtils(); // = delete;
27};
28
29} // namespace blink
30
31#endif
32