Roll src/third_party/WebKit 8b42d1d:744641d (svn 186770:186771)
[chromium-blink-merge.git] / chrome / browser / chromeos / fileapi / external_file_protocol_handler.h
blobd05a90bad40f4b6ae98fc93891c4afdda54d81c1
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.
5 #ifndef CHROME_BROWSER_CHROMEOS_FILEAPI_EXTERNAL_FILE_PROTOCOL_HANDLER_H_
6 #define CHROME_BROWSER_CHROMEOS_FILEAPI_EXTERNAL_FILE_PROTOCOL_HANDLER_H_
8 #include "base/basictypes.h"
9 #include "net/url_request/url_request_job_factory.h"
11 namespace base {
12 class SequencedTaskRunner;
13 } // namespace base
15 namespace chromeos {
17 class ExternalFileProtocolHandler
18 : public net::URLRequestJobFactory::ProtocolHandler {
19 public:
20 explicit ExternalFileProtocolHandler(void* profile_id);
21 virtual ~ExternalFileProtocolHandler();
23 // Creates URLRequestJobs for drive:// URLs.
24 virtual net::URLRequestJob* MaybeCreateJob(
25 net::URLRequest* request,
26 net::NetworkDelegate* network_delegate) const override;
28 private:
29 // The profile for processing Drive accesses. Should not be NULL.
30 void* profile_id_;
32 DISALLOW_COPY_AND_ASSIGN(ExternalFileProtocolHandler);
35 } // namespace chromeos
37 #endif // CHROME_BROWSER_CHROMEOS_FILEAPI_EXTERNAL_FILE_PROTOCOL_HANDLER_H_