Index: net/disk_cache/flash/cache_entry.h |
diff --git a/net/disk_cache/flash/cache_entry.h b/net/disk_cache/flash/cache_entry.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..1075c7c01c893a1accd8c5d8862a5459dbd2c1f8 |
--- /dev/null |
+++ b/net/disk_cache/flash/cache_entry.h |
@@ -0,0 +1,66 @@ |
+// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef NET_DISK_CACHE_FLASH_LOG_ENTRY_H_ |
+#define NET_DISK_CACHE_FLASH_LOG_ENTRY_H_ |
+ |
+#include <vector> |
+ |
+#include "base/basictypes.h" |
+#include "base/gtest_prod_util.h" |
+#include "net/base/net_export.h" |
+#include "net/disk_cache/flash/format.h" |
+ |
+namespace net { |
+class IOBuffer; |
+}; |
+ |
+namespace disk_cache { |
+ |
+class LogStructuredStore; |
+ |
+class NET_EXPORT_PRIVATE CacheEntry { |
+ public: |
+ explicit CacheEntry(LogStructuredStore* store); |
+ CacheEntry(LogStructuredStore* store, int32 id); |
+ ~CacheEntry(); |
+ |
+ bool Init(); |
+ bool Close(); |
+ |
+ int32 id() const; |
+ int32 GetDataSize(int index) const; |
+ |
+ int ReadData(int index, int offset, net::IOBuffer* buf, int buf_len); |
+ int WriteData(int index, int offset, net::IOBuffer* buf, int buf_len); |
+ |
+ private: |
+ bool OnDisk() const; |
+ bool ValidStream(int stream_index) const; |
+ int32 Size() const; |
+ bool Save(); |
+ bool LazyRead(int index); |
+ |
+ LogStructuredStore* store_; |
+ int32 id_; |
+ |
+ struct Stream { |
rvargas (doing something else)
2012/11/28 03:12:56
types go before methods
agayev
2012/11/29 16:14:43
Done.
|
+ Stream() : offset(0), insync(false) {} |
rvargas (doing something else)
2012/11/28 03:12:56
cannot be inline
agayev
2012/11/29 16:14:43
Done.
|
+ int offset; |
+ std::vector<char> data; |
+ bool insync; |
rvargas (doing something else)
2012/11/28 03:12:56
insync?
agayev
2012/11/29 16:14:43
Means in sync with the store.
rvargas (doing something else)
2012/11/29 20:32:36
Then, at the very least it should be in_sync (but
|
+ }; |
+ |
+ Stream streams_[kFlashCacheEntryNumStreams]; |
+ |
+ bool init_; |
+ bool closed_; |
+ bool modified_; |
+ |
+ DISALLOW_COPY_AND_ASSIGN(CacheEntry); |
+}; |
+ |
+} // namespace disk_cache |
+ |
+#endif // NET_DISK_CACHE_FLASH_LOG_ENTRY_H_ |