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 EXTENSIONS_COMMON_PERMISSIONS_PERMISSION_MESSAGE_UTIL_H_
6#define EXTENSIONS_COMMON_PERMISSIONS_PERMISSION_MESSAGE_UTIL_H_
7
8#include <set>
9#include <string>
10
11namespace extensions {
12class PermissionMessage;
13class PermissionSet;
14class URLPatternSet;
15}
16
17namespace permission_message_util {
18
19// Creates the corresponding permission message for a list of hosts.
20// The messages change depending on what hosts are present.
21extensions::PermissionMessage CreateFromHostList(
22    const std::set<std::string>& hosts);
23
24std::set<std::string> GetDistinctHosts(
25    const extensions::URLPatternSet& host_patterns,
26    bool include_rcd,
27    bool exclude_file_scheme);
28
29}  // namespace permission_message_util
30
31#endif  // EXTENSIONS_COMMON_PERMISSIONS_PERMISSION_MESSAGE_UTIL_H_
32