Home | History | Annotate | Download | only in browser
      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_BROWSER_EXTENSION_PROTOCOLS_H_
      6 #define EXTENSIONS_BROWSER_EXTENSION_PROTOCOLS_H_
      7 
      8 #include <string>
      9 
     10 #include "net/url_request/url_request_job_factory.h"
     11 
     12 namespace base {
     13 class Time;
     14 }
     15 
     16 namespace net {
     17 class HttpResponseHeaders;
     18 }
     19 
     20 namespace extensions {
     21 
     22 class InfoMap;
     23 
     24 // Builds HTTP headers for an extension request. Hashes the time to avoid
     25 // exposing the exact user installation time of the extension.
     26 net::HttpResponseHeaders* BuildHttpHeaders(
     27     const std::string& content_security_policy,
     28     bool send_cors_header,
     29     const base::Time& last_modified_time);
     30 
     31 // Creates the handlers for the chrome-extension:// scheme. Pass true for
     32 // |is_incognito| only for incognito profiles and not for Chrome OS guest mode
     33 // profiles.
     34 net::URLRequestJobFactory::ProtocolHandler* CreateExtensionProtocolHandler(
     35     bool is_incognito,
     36     InfoMap* extension_info_map);
     37 
     38 }  // namespace extensions
     39 
     40 #endif  // EXTENSIONS_BROWSER_EXTENSION_PROTOCOLS_H_
     41