Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(54)

Side by Side Diff: content/browser/webui/web_ui_url_loader_factory.cc

Issue 2867693004: Snapshot of all changes to get jumbo in blink and content.
Patch Set: Exclude certain files from jumbo because of a Windows problem Created 3 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « content/browser/webrtc/webrtc_eventlog_host.cc ('k') | content/child/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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 #include "content/browser/webui/web_ui_url_loader_factory.h" 5 #include "content/browser/webui/web_ui_url_loader_factory.h"
6 6
7 #include <map> 7 #include <map>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/lazy_instance.h" 10 #include "base/lazy_instance.h"
(...skipping 21 matching lines...) Expand all
32 #include "mojo/public/cpp/bindings/binding_set.h" 32 #include "mojo/public/cpp/bindings/binding_set.h"
33 #include "third_party/zlib/google/compression_utils.h" 33 #include "third_party/zlib/google/compression_utils.h"
34 #include "ui/base/template_expressions.h" 34 #include "ui/base/template_expressions.h"
35 35
36 namespace content { 36 namespace content {
37 37
38 namespace { 38 namespace {
39 39
40 class WebUIURLLoaderFactory; 40 class WebUIURLLoaderFactory;
41 base::LazyInstance<std::map<int, std::unique_ptr<WebUIURLLoaderFactory>>>::Leaky 41 base::LazyInstance<std::map<int, std::unique_ptr<WebUIURLLoaderFactory>>>::Leaky
42 g_factories = LAZY_INSTANCE_INITIALIZER; 42 g_webui_url_loader_factories = LAZY_INSTANCE_INITIALIZER;
43 43
44 void CallOnError(mojom::URLLoaderClientPtrInfo client_info, int error_code) { 44 void CallOnError(mojom::URLLoaderClientPtrInfo client_info, int error_code) {
45 mojom::URLLoaderClientPtr client; 45 mojom::URLLoaderClientPtr client;
46 client.Bind(std::move(client_info)); 46 client.Bind(std::move(client_info));
47 47
48 ResourceRequestCompletionStatus status; 48 ResourceRequestCompletionStatus status;
49 status.error_code = error_code; 49 status.error_code = error_code;
50 client->OnComplete(status); 50 client->OnComplete(status);
51 } 51 }
52 52
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
266 client.PassInterface(), 266 client.PassInterface(),
267 storage_partition_->browser_context()->GetResourceContext())); 267 storage_partition_->browser_context()->GetResourceContext()));
268 } 268 }
269 269
270 void Clone(mojom::URLLoaderFactoryRequest request) override { 270 void Clone(mojom::URLLoaderFactoryRequest request) override {
271 loader_factory_bindings_.AddBinding(this, std::move(request)); 271 loader_factory_bindings_.AddBinding(this, std::move(request));
272 } 272 }
273 273
274 // FrameTreeNode::Observer implementation: 274 // FrameTreeNode::Observer implementation:
275 void OnFrameTreeNodeDestroyed(FrameTreeNode* node) override { 275 void OnFrameTreeNodeDestroyed(FrameTreeNode* node) override {
276 g_factories.Get().erase(frame_tree_node_id_); 276 g_webui_url_loader_factories.Get().erase(frame_tree_node_id_);
277 } 277 }
278 278
279 private: 279 private:
280 int frame_tree_node_id_; 280 int frame_tree_node_id_;
281 StoragePartitionImpl* storage_partition_; 281 StoragePartitionImpl* storage_partition_;
282 mojo::BindingSet<mojom::URLLoaderFactory> loader_factory_bindings_; 282 mojo::BindingSet<mojom::URLLoaderFactory> loader_factory_bindings_;
283 283
284 DISALLOW_COPY_AND_ASSIGN(WebUIURLLoaderFactory); 284 DISALLOW_COPY_AND_ASSIGN(WebUIURLLoaderFactory);
285 }; 285 };
286 286
287 } // namespace 287 } // namespace
288 288
289 mojom::URLLoaderFactoryPtr CreateWebUIURLLoader(FrameTreeNode* node) { 289 mojom::URLLoaderFactoryPtr CreateWebUIURLLoader(FrameTreeNode* node) {
290 int ftn_id = node->frame_tree_node_id(); 290 int ftn_id = node->frame_tree_node_id();
291 if (g_factories.Get()[ftn_id].get() == nullptr) 291 if (g_webui_url_loader_factories.Get()[ftn_id].get() == nullptr)
292 g_factories.Get()[ftn_id] = base::MakeUnique<WebUIURLLoaderFactory>(node); 292 g_webui_url_loader_factories.Get()[ftn_id] = base::MakeUnique<WebUIURLLoader Factory>(node);
293 return g_factories.Get()[ftn_id]->CreateBinding(); 293 return g_webui_url_loader_factories.Get()[ftn_id]->CreateBinding();
294 } 294 }
295 295
296 } // namespace content 296 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/webrtc/webrtc_eventlog_host.cc ('k') | content/child/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698