| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/storage_partition_impl_map.h" | 5 #include "content/browser/storage_partition_impl_map.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 75 scoped_refptr<Stream> stream = | 75 scoped_refptr<Stream> stream = |
| 76 stream_context_->registry()->GetStream(request->url()); | 76 stream_context_->registry()->GetStream(request->url()); |
| 77 if (stream.get()) | 77 if (stream.get()) |
| 78 return new StreamURLRequestJob(request, network_delegate, stream); | 78 return new StreamURLRequestJob(request, network_delegate, stream); |
| 79 | 79 |
| 80 if (!blob_protocol_handler_) { | 80 if (!blob_protocol_handler_) { |
| 81 // Construction is deferred because 'this' is constructed on | 81 // Construction is deferred because 'this' is constructed on |
| 82 // the main thread but we want blob_protocol_handler_ constructed | 82 // the main thread but we want blob_protocol_handler_ constructed |
| 83 // on the IO thread. | 83 // on the IO thread. |
| 84 blob_protocol_handler_.reset(new storage::BlobProtocolHandler( | 84 blob_protocol_handler_.reset(new storage::BlobProtocolHandler( |
| 85 blob_storage_context_->context(), | 85 blob_storage_context_->context(), file_system_context_.get(), |
| 86 file_system_context_.get(), | 86 BrowserThread::GetTaskRunnerForThread(BrowserThread::FILE).get())); |
| 87 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::FILE) | |
| 88 .get())); | |
| 89 } | 87 } |
| 90 return blob_protocol_handler_->MaybeCreateJob(request, network_delegate); | 88 return blob_protocol_handler_->MaybeCreateJob(request, network_delegate); |
| 91 } | 89 } |
| 92 | 90 |
| 93 private: | 91 private: |
| 94 const scoped_refptr<ChromeBlobStorageContext> blob_storage_context_; | 92 const scoped_refptr<ChromeBlobStorageContext> blob_storage_context_; |
| 95 const scoped_refptr<StreamContext> stream_context_; | 93 const scoped_refptr<StreamContext> stream_context_; |
| 96 const scoped_refptr<storage::FileSystemContext> file_system_context_; | 94 const scoped_refptr<storage::FileSystemContext> file_system_context_; |
| 97 mutable std::unique_ptr<storage::BlobProtocolHandler> blob_protocol_handler_; | 95 mutable std::unique_ptr<storage::BlobProtocolHandler> blob_protocol_handler_; |
| 98 DISALLOW_COPY_AND_ASSIGN(BlobProtocolHandler); | 96 DISALLOW_COPY_AND_ASSIGN(BlobProtocolHandler); |
| (...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 609 | 607 |
| 610 // We do not call InitializeURLRequestContext() for media contexts because, | 608 // We do not call InitializeURLRequestContext() for media contexts because, |
| 611 // other than the HTTP cache, the media contexts share the same backing | 609 // other than the HTTP cache, the media contexts share the same backing |
| 612 // objects as their associated "normal" request context. Thus, the previous | 610 // objects as their associated "normal" request context. Thus, the previous |
| 613 // call serves to initialize the media request context for this storage | 611 // call serves to initialize the media request context for this storage |
| 614 // partition as well. | 612 // partition as well. |
| 615 } | 613 } |
| 616 } | 614 } |
| 617 | 615 |
| 618 } // namespace content | 616 } // namespace content |
| OLD | NEW |