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 // This file declares a HttpTransactionFactory implementation that can be | 5 // This file declares a HttpTransactionFactory implementation that can be |
6 // layered on top of another HttpTransactionFactory to add HTTP caching. The | 6 // layered on top of another HttpTransactionFactory to add HTTP caching. The |
7 // caching logic follows RFC 2616 (any exceptions are called out in the code). | 7 // caching logic follows RFC 2616 (any exceptions are called out in the code). |
8 // | 8 // |
9 // The HttpCache takes a disk_cache::Backend as a parameter, and uses that for | 9 // The HttpCache takes a disk_cache::Backend as a parameter, and uses that for |
10 // the cache storage. | 10 // the cache storage. |
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
199 kResponseInfoIndex = 0, | 199 kResponseInfoIndex = 0, |
200 kResponseContentIndex, | 200 kResponseContentIndex, |
201 kMetadataIndex, | 201 kMetadataIndex, |
202 | 202 |
203 // Must remain at the end of the enum. | 203 // Must remain at the end of the enum. |
204 kNumCacheEntryDataIndices | 204 kNumCacheEntryDataIndices |
205 }; | 205 }; |
206 friend class ViewCacheHelper; | 206 friend class ViewCacheHelper; |
207 | 207 |
208 private: | 208 private: |
| 209 friend class HttpCacheTransactionTest; |
| 210 |
209 // Types -------------------------------------------------------------------- | 211 // Types -------------------------------------------------------------------- |
210 | 212 |
211 class MetadataWriter; | 213 class MetadataWriter; |
212 class Transaction; | 214 class Transaction; |
213 class WorkItem; | 215 class WorkItem; |
214 friend class Transaction; | 216 friend class Transaction; |
215 friend class InfiniteCache; | 217 friend class InfiniteCache; |
216 struct PendingOp; // Info for an entry under construction. | 218 struct PendingOp; // Info for an entry under construction. |
217 | 219 |
218 typedef std::list<Transaction*> TransactionList; | 220 typedef std::list<Transaction*> TransactionList; |
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
395 scoped_ptr<PlaybackCacheMap> playback_cache_map_; | 397 scoped_ptr<PlaybackCacheMap> playback_cache_map_; |
396 | 398 |
397 InfiniteCache infinite_cache_; | 399 InfiniteCache infinite_cache_; |
398 | 400 |
399 DISALLOW_COPY_AND_ASSIGN(HttpCache); | 401 DISALLOW_COPY_AND_ASSIGN(HttpCache); |
400 }; | 402 }; |
401 | 403 |
402 } // namespace net | 404 } // namespace net |
403 | 405 |
404 #endif // NET_HTTP_HTTP_CACHE_H_ | 406 #endif // NET_HTTP_HTTP_CACHE_H_ |
OLD | NEW |