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 "net/http/http_cache.h" | 5 #include "net/http/http_cache.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 | 10 |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
69 // static | 69 // static |
70 HttpCache::BackendFactory* HttpCache::DefaultBackend::InMemory(int max_bytes) { | 70 HttpCache::BackendFactory* HttpCache::DefaultBackend::InMemory(int max_bytes) { |
71 return new DefaultBackend(MEMORY_CACHE, net::CACHE_BACKEND_DEFAULT, | 71 return new DefaultBackend(MEMORY_CACHE, net::CACHE_BACKEND_DEFAULT, |
72 base::FilePath(), max_bytes, NULL); | 72 base::FilePath(), max_bytes, NULL); |
73 } | 73 } |
74 | 74 |
75 int HttpCache::DefaultBackend::CreateBackend( | 75 int HttpCache::DefaultBackend::CreateBackend( |
76 NetLog* net_log, disk_cache::Backend** backend, | 76 NetLog* net_log, disk_cache::Backend** backend, |
77 const CompletionCallback& callback) { | 77 const CompletionCallback& callback) { |
78 DCHECK_GE(max_bytes_, 0); | 78 DCHECK_GE(max_bytes_, 0); |
79 return disk_cache::CreateCacheBackend(type_, backend_type_, path_, max_bytes_, | 79 return disk_cache::CreateCacheBackend(type_, |
80 true, thread_, net_log, backend, | 80 backend_type_, |
| 81 path_, |
| 82 max_bytes_, |
| 83 true, |
| 84 thread_.get(), |
| 85 net_log, |
| 86 backend, |
81 callback); | 87 callback); |
82 } | 88 } |
83 | 89 |
84 //----------------------------------------------------------------------------- | 90 //----------------------------------------------------------------------------- |
85 | 91 |
86 HttpCache::ActiveEntry::ActiveEntry(disk_cache::Entry* entry) | 92 HttpCache::ActiveEntry::ActiveEntry(disk_cache::Entry* entry) |
87 : disk_entry(entry), | 93 : disk_entry(entry), |
88 writer(NULL), | 94 writer(NULL), |
89 will_process_pending_queue(false), | 95 will_process_pending_queue(false), |
90 doomed(false) { | 96 doomed(false) { |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
235 verified_ = true; | 241 verified_ = true; |
236 if (result != OK) | 242 if (result != OK) |
237 return SelfDestroy(); | 243 return SelfDestroy(); |
238 | 244 |
239 const HttpResponseInfo* response_info = transaction_->GetResponseInfo(); | 245 const HttpResponseInfo* response_info = transaction_->GetResponseInfo(); |
240 DCHECK(response_info->was_cached); | 246 DCHECK(response_info->was_cached); |
241 if (response_info->response_time != expected_response_time_) | 247 if (response_info->response_time != expected_response_time_) |
242 return SelfDestroy(); | 248 return SelfDestroy(); |
243 | 249 |
244 result = transaction_->WriteMetadata( | 250 result = transaction_->WriteMetadata( |
245 buf_, buf_len_, | 251 buf_.get(), |
| 252 buf_len_, |
246 base::Bind(&MetadataWriter::OnIOComplete, base::Unretained(this))); | 253 base::Bind(&MetadataWriter::OnIOComplete, base::Unretained(this))); |
247 if (result != ERR_IO_PENDING) | 254 if (result != ERR_IO_PENDING) |
248 SelfDestroy(); | 255 SelfDestroy(); |
249 } | 256 } |
250 | 257 |
251 void HttpCache::MetadataWriter::SelfDestroy() { | 258 void HttpCache::MetadataWriter::SelfDestroy() { |
252 delete this; | 259 delete this; |
253 } | 260 } |
254 | 261 |
255 void HttpCache::MetadataWriter::OnIOComplete(int result) { | 262 void HttpCache::MetadataWriter::OnIOComplete(int result) { |
(...skipping 876 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1132 building_backend_ = false; | 1139 building_backend_ = false; |
1133 DeletePendingOp(pending_op); | 1140 DeletePendingOp(pending_op); |
1134 } | 1141 } |
1135 | 1142 |
1136 // The cache may be gone when we return from the callback. | 1143 // The cache may be gone when we return from the callback. |
1137 if (!item->DoCallback(result, backend)) | 1144 if (!item->DoCallback(result, backend)) |
1138 item->NotifyTransaction(result, NULL); | 1145 item->NotifyTransaction(result, NULL); |
1139 } | 1146 } |
1140 | 1147 |
1141 } // namespace net | 1148 } // namespace net |
OLD | NEW |