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 MediaListDirective_h
6#define MediaListDirective_h
7
8#include "core/frame/csp/CSPDirective.h"
9#include "platform/network/ContentSecurityPolicyParsers.h"
10#include "wtf/HashSet.h"
11#include "wtf/text/WTFString.h"
12
13namespace blink {
14
15class ContentSecurityPolicy;
16
17class MediaListDirective FINAL : public CSPDirective {
18    WTF_MAKE_NONCOPYABLE(MediaListDirective);
19public:
20    MediaListDirective(const String& name, const String& value, ContentSecurityPolicy*);
21    bool allows(const String& type);
22
23private:
24    void parse(const UChar* begin, const UChar* end);
25
26    HashSet<String> m_pluginTypes;
27};
28
29} // namespace blink
30
31#endif
32