OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef COMPONENTS_DOM_DISTILLER_CONTENT_DOM_DISTILLER_VIEWER_SOURCE_H_ | 5 #ifndef COMPONENTS_DOM_DISTILLER_CONTENT_DOM_DISTILLER_VIEWER_SOURCE_H_ |
6 #define COMPONENTS_DOM_DISTILLER_CONTENT_DOM_DISTILLER_VIEWER_SOURCE_H_ | 6 #define COMPONENTS_DOM_DISTILLER_CONTENT_DOM_DISTILLER_VIEWER_SOURCE_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
11 #include "base/compiler_specific.h" | 11 #include "base/compiler_specific.h" |
12 #include "content/public/browser/url_data_source.h" | 12 #include "content/public/browser/url_data_source.h" |
13 | 13 |
14 namespace dom_distiller { | 14 namespace dom_distiller { |
15 | 15 |
16 class DomDistillerServiceInterface; | 16 class DomDistillerServiceInterface; |
17 class DomDistillerViewerSourceTest; | 17 class DomDistillerViewerSourceTest; |
18 class ViewerHandle; | 18 class ViewerHandle; |
19 class ViewRequestDelegate; | 19 class ViewRequestDelegate; |
20 | 20 |
21 // Serves HTML and resources for viewing distilled articles. | 21 // Serves HTML and resources for viewing distilled articles. |
22 class DomDistillerViewerSource : public content::URLDataSource { | 22 class DomDistillerViewerSource : public content::URLDataSource { |
23 public: | 23 public: |
24 DomDistillerViewerSource(DomDistillerServiceInterface* dom_distiller_service, | 24 DomDistillerViewerSource(DomDistillerServiceInterface* dom_distiller_service, |
25 const std::string& scheme); | 25 const std::string& scheme); |
26 virtual ~DomDistillerViewerSource(); | 26 ~DomDistillerViewerSource() override; |
27 | 27 |
28 class RequestViewerHandle; | 28 class RequestViewerHandle; |
29 | 29 |
30 // Overridden from content::URLDataSource: | 30 // Overridden from content::URLDataSource: |
31 virtual std::string GetSource() const override; | 31 std::string GetSource() const override; |
32 virtual void StartDataRequest( | 32 void StartDataRequest( |
33 const std::string& path, | 33 const std::string& path, |
34 int render_process_id, | 34 int render_process_id, |
35 int render_frame_id, | 35 int render_frame_id, |
36 const content::URLDataSource::GotDataCallback& callback) override; | 36 const content::URLDataSource::GotDataCallback& callback) override; |
37 virtual std::string GetMimeType(const std::string& path) const override; | 37 std::string GetMimeType(const std::string& path) const override; |
38 virtual bool ShouldServiceRequest( | 38 bool ShouldServiceRequest(const net::URLRequest* request) const override; |
39 const net::URLRequest* request) const override; | 39 void WillServiceRequest(const net::URLRequest* request, |
40 virtual void WillServiceRequest(const net::URLRequest* request, | 40 std::string* path) const override; |
41 std::string* path) const override; | 41 std::string GetContentSecurityPolicyObjectSrc() const override; |
42 virtual std::string GetContentSecurityPolicyObjectSrc() const override; | |
43 | 42 |
44 private: | 43 private: |
45 friend class DomDistillerViewerSourceTest; | 44 friend class DomDistillerViewerSourceTest; |
46 | 45 |
47 // The scheme this URLDataSource is hosted under. | 46 // The scheme this URLDataSource is hosted under. |
48 std::string scheme_; | 47 std::string scheme_; |
49 | 48 |
50 // The service which contains all the functionality needed to interact with | 49 // The service which contains all the functionality needed to interact with |
51 // the list of articles. | 50 // the list of articles. |
52 DomDistillerServiceInterface* dom_distiller_service_; | 51 DomDistillerServiceInterface* dom_distiller_service_; |
53 | 52 |
54 DISALLOW_COPY_AND_ASSIGN(DomDistillerViewerSource); | 53 DISALLOW_COPY_AND_ASSIGN(DomDistillerViewerSource); |
55 }; | 54 }; |
56 | 55 |
57 } // namespace dom_distiller | 56 } // namespace dom_distiller |
58 | 57 |
59 #endif // COMPONENTS_DOM_DISTILLER_CONTENT_DOM_DISTILLER_VIEWER_SOURCE_H_ | 58 #endif // COMPONENTS_DOM_DISTILLER_CONTENT_DOM_DISTILLER_VIEWER_SOURCE_H_ |
OLD | NEW |