OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 CHROME_BROWSER_DOM_UI_CHROME_URL_DATA_MANAGER_H_ | 5 #ifndef CHROME_BROWSER_DOM_UI_CHROME_URL_DATA_MANAGER_H_ |
6 #define CHROME_BROWSER_DOM_UI_CHROME_URL_DATA_MANAGER_H_ | 6 #define CHROME_BROWSER_DOM_UI_CHROME_URL_DATA_MANAGER_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <map> | 9 #include <map> |
10 #include <string> | 10 #include <string> |
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
121 static net::URLRequestJob* Factory(net::URLRequest* request, | 121 static net::URLRequestJob* Factory(net::URLRequest* request, |
122 const std::string& scheme); | 122 const std::string& scheme); |
123 | 123 |
124 private: | 124 private: |
125 friend class URLRequestChromeJob; | 125 friend class URLRequestChromeJob; |
126 friend struct DefaultSingletonTraits<ChromeURLDataManager>; | 126 friend struct DefaultSingletonTraits<ChromeURLDataManager>; |
127 | 127 |
128 ChromeURLDataManager(); | 128 ChromeURLDataManager(); |
129 ~ChromeURLDataManager(); | 129 ~ChromeURLDataManager(); |
130 | 130 |
| 131 // Releases a data source. Must be called on the UI thread so |source| is |
| 132 // deleted in that thread. |
| 133 void ReleaseDataSource(scoped_refptr<DataSource> source); |
| 134 |
131 // Parse a URL into the components used to resolve its request. | 135 // Parse a URL into the components used to resolve its request. |
132 static void URLToRequest(const GURL& url, | 136 static void URLToRequest(const GURL& url, |
133 std::string* source, | 137 std::string* source, |
134 std::string* path); | 138 std::string* path); |
135 | 139 |
136 // Translate a chrome resource URL into a local file path if there is one. | 140 // Translate a chrome resource URL into a local file path if there is one. |
137 // Returns false if there is no file handler for this URL | 141 // Returns false if there is no file handler for this URL |
138 static bool URLToFilePath(const GURL& url, FilePath* file_path); | 142 static bool URLToFilePath(const GURL& url, FilePath* file_path); |
139 | 143 |
140 // Called by the job when it's starting up. | 144 // Called by the job when it's starting up. |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 DISABLE_RUNNABLE_METHOD_REFCOUNT(ChromeURLDataManager); | 179 DISABLE_RUNNABLE_METHOD_REFCOUNT(ChromeURLDataManager); |
176 | 180 |
177 // Register our special URL handler under our special URL scheme. | 181 // Register our special URL handler under our special URL scheme. |
178 // Must be done once at startup. | 182 // Must be done once at startup. |
179 void RegisterURLRequestChromeJob(); | 183 void RegisterURLRequestChromeJob(); |
180 | 184 |
181 // Undoes the registration done by RegisterURLRequestChromeJob. | 185 // Undoes the registration done by RegisterURLRequestChromeJob. |
182 void UnregisterURLRequestChromeJob(); | 186 void UnregisterURLRequestChromeJob(); |
183 | 187 |
184 #endif // CHROME_BROWSER_DOM_UI_CHROME_URL_DATA_MANAGER_H_ | 188 #endif // CHROME_BROWSER_DOM_UI_CHROME_URL_DATA_MANAGER_H_ |
OLD | NEW |