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

Side by Side Diff: net/disk_cache/disk_cache.h

Issue 1535363003: Switch to standard integer types in net/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: stddef Created 5 years 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 | « net/disk_cache/cache_creator.cc ('k') | net/disk_cache/disk_cache_test_base.h » ('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 (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 // Defines the public interface of the disk cache. For more details see 5 // Defines the public interface of the disk cache. For more details see
6 // http://dev.chromium.org/developers/design-documents/network-stack/disk-cache 6 // http://dev.chromium.org/developers/design-documents/network-stack/disk-cache
7 7
8 #ifndef NET_DISK_CACHE_DISK_CACHE_H_ 8 #ifndef NET_DISK_CACHE_DISK_CACHE_H_
9 #define NET_DISK_CACHE_DISK_CACHE_H_ 9 #define NET_DISK_CACHE_DISK_CACHE_H_
10 10
11 #include <stdint.h>
12
11 #include <string> 13 #include <string>
12 #include <vector> 14 #include <vector>
13 15
14 #include "base/basictypes.h"
15 #include "base/memory/ref_counted.h" 16 #include "base/memory/ref_counted.h"
16 #include "base/memory/scoped_ptr.h" 17 #include "base/memory/scoped_ptr.h"
17 #include "base/strings/string_split.h" 18 #include "base/strings/string_split.h"
18 #include "base/time/time.h" 19 #include "base/time/time.h"
19 #include "net/base/cache_type.h" 20 #include "net/base/cache_type.h"
20 #include "net/base/completion_callback.h" 21 #include "net/base/completion_callback.h"
21 #include "net/base/net_export.h" 22 #include "net/base/net_export.h"
22 23
23 namespace base { 24 namespace base {
24 class FilePath; 25 class FilePath;
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 // operations so the callbacks are not invoked, possibly leaving the work 92 // operations so the callbacks are not invoked, possibly leaving the work
92 // half way (for instance, dooming just a few entries). Note that pending IO 93 // half way (for instance, dooming just a few entries). Note that pending IO
93 // for a given Entry (as opposed to the Backend) will still generate a 94 // for a given Entry (as opposed to the Backend) will still generate a
94 // callback from within this method. 95 // callback from within this method.
95 virtual ~Backend() {} 96 virtual ~Backend() {}
96 97
97 // Returns the type of this cache. 98 // Returns the type of this cache.
98 virtual net::CacheType GetCacheType() const = 0; 99 virtual net::CacheType GetCacheType() const = 0;
99 100
100 // Returns the number of entries in the cache. 101 // Returns the number of entries in the cache.
101 virtual int32 GetEntryCount() const = 0; 102 virtual int32_t GetEntryCount() const = 0;
102 103
103 // Opens an existing entry. Upon success, |entry| holds a pointer to an Entry 104 // Opens an existing entry. Upon success, |entry| holds a pointer to an Entry
104 // object representing the specified disk cache entry. When the entry pointer 105 // object representing the specified disk cache entry. When the entry pointer
105 // is no longer needed, its Close method should be called. The return value is 106 // is no longer needed, its Close method should be called. The return value is
106 // a net error code. If this method returns ERR_IO_PENDING, the |callback| 107 // a net error code. If this method returns ERR_IO_PENDING, the |callback|
107 // will be invoked when the entry is available. The pointer to receive the 108 // will be invoked when the entry is available. The pointer to receive the
108 // |entry| must remain valid until the operation completes. 109 // |entry| must remain valid until the operation completes.
109 virtual int OpenEntry(const std::string& key, Entry** entry, 110 virtual int OpenEntry(const std::string& key, Entry** entry,
110 const CompletionCallback& callback) = 0; 111 const CompletionCallback& callback) = 0;
111 112
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 // Returns the key associated with this cache entry. 181 // Returns the key associated with this cache entry.
181 virtual std::string GetKey() const = 0; 182 virtual std::string GetKey() const = 0;
182 183
183 // Returns the time when this cache entry was last used. 184 // Returns the time when this cache entry was last used.
184 virtual base::Time GetLastUsed() const = 0; 185 virtual base::Time GetLastUsed() const = 0;
185 186
186 // Returns the time when this cache entry was last modified. 187 // Returns the time when this cache entry was last modified.
187 virtual base::Time GetLastModified() const = 0; 188 virtual base::Time GetLastModified() const = 0;
188 189
189 // Returns the size of the cache data with the given index. 190 // Returns the size of the cache data with the given index.
190 virtual int32 GetDataSize(int index) const = 0; 191 virtual int32_t GetDataSize(int index) const = 0;
191 192
192 // Copies cached data into the given buffer of length |buf_len|. Returns the 193 // Copies cached data into the given buffer of length |buf_len|. Returns the
193 // number of bytes read or a network error code. If this function returns 194 // number of bytes read or a network error code. If this function returns
194 // ERR_IO_PENDING, the completion callback will be called on the current 195 // ERR_IO_PENDING, the completion callback will be called on the current
195 // thread when the operation completes, and a reference to |buf| will be 196 // thread when the operation completes, and a reference to |buf| will be
196 // retained until the callback is called. Note that as long as the function 197 // retained until the callback is called. Note that as long as the function
197 // does not complete immediately, the callback will always be invoked, even 198 // does not complete immediately, the callback will always be invoked, even
198 // after Close has been called; in other words, the caller may close this 199 // after Close has been called; in other words, the caller may close this
199 // entry without having to wait for all the callbacks, and still rely on the 200 // entry without having to wait for all the callbacks, and still rely on the
200 // cleanup performed from the callback code. 201 // cleanup performed from the callback code.
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 // requirement includes the case when an entry is closed while some operation 254 // requirement includes the case when an entry is closed while some operation
254 // is in progress and another object is instantiated; any IO operation will 255 // is in progress and another object is instantiated; any IO operation will
255 // fail while the previous operation is still in-flight. In order to deal with 256 // fail while the previous operation is still in-flight. In order to deal with
256 // this requirement, the caller could either wait until the operation 257 // this requirement, the caller could either wait until the operation
257 // completes before closing the entry, or call CancelSparseIO() before closing 258 // completes before closing the entry, or call CancelSparseIO() before closing
258 // the entry, and call ReadyForSparseIO() on the new entry and wait for the 259 // the entry, and call ReadyForSparseIO() on the new entry and wait for the
259 // callback before issuing new operations. 260 // callback before issuing new operations.
260 261
261 // Behaves like ReadData() except that this method is used to access sparse 262 // Behaves like ReadData() except that this method is used to access sparse
262 // entries. 263 // entries.
263 virtual int ReadSparseData(int64 offset, IOBuffer* buf, int buf_len, 264 virtual int ReadSparseData(int64_t offset,
265 IOBuffer* buf,
266 int buf_len,
264 const CompletionCallback& callback) = 0; 267 const CompletionCallback& callback) = 0;
265 268
266 // Behaves like WriteData() except that this method is used to access sparse 269 // Behaves like WriteData() except that this method is used to access sparse
267 // entries. |truncate| is not part of this interface because a sparse entry 270 // entries. |truncate| is not part of this interface because a sparse entry
268 // is not expected to be reused with new data. To delete the old data and 271 // is not expected to be reused with new data. To delete the old data and
269 // start again, or to reduce the total size of the stream data (which implies 272 // start again, or to reduce the total size of the stream data (which implies
270 // that the content has changed), the whole entry should be doomed and 273 // that the content has changed), the whole entry should be doomed and
271 // re-created. 274 // re-created.
272 virtual int WriteSparseData(int64 offset, IOBuffer* buf, int buf_len, 275 virtual int WriteSparseData(int64_t offset,
276 IOBuffer* buf,
277 int buf_len,
273 const CompletionCallback& callback) = 0; 278 const CompletionCallback& callback) = 0;
274 279
275 // Returns information about the currently stored portion of a sparse entry. 280 // Returns information about the currently stored portion of a sparse entry.
276 // |offset| and |len| describe a particular range that should be scanned to 281 // |offset| and |len| describe a particular range that should be scanned to
277 // find out if it is stored or not. |start| will contain the offset of the 282 // find out if it is stored or not. |start| will contain the offset of the
278 // first byte that is stored within this range, and the return value is the 283 // first byte that is stored within this range, and the return value is the
279 // minimum number of consecutive stored bytes. Note that it is possible that 284 // minimum number of consecutive stored bytes. Note that it is possible that
280 // this entry has stored more than the returned value. This method returns a 285 // this entry has stored more than the returned value. This method returns a
281 // net error code whenever the request cannot be completed successfully. If 286 // net error code whenever the request cannot be completed successfully. If
282 // this method returns ERR_IO_PENDING, the |callback| will be invoked when the 287 // this method returns ERR_IO_PENDING, the |callback| will be invoked when the
283 // operation completes, and |start| must remain valid until that point. 288 // operation completes, and |start| must remain valid until that point.
284 virtual int GetAvailableRange(int64 offset, int len, int64* start, 289 virtual int GetAvailableRange(int64_t offset,
290 int len,
291 int64_t* start,
285 const CompletionCallback& callback) = 0; 292 const CompletionCallback& callback) = 0;
286 293
287 // Returns true if this entry could be a sparse entry or false otherwise. This 294 // Returns true if this entry could be a sparse entry or false otherwise. This
288 // is a quick test that may return true even if the entry is not really 295 // is a quick test that may return true even if the entry is not really
289 // sparse. This method doesn't modify the state of this entry (it will not 296 // sparse. This method doesn't modify the state of this entry (it will not
290 // create sparse tracking data). GetAvailableRange or ReadSparseData can be 297 // create sparse tracking data). GetAvailableRange or ReadSparseData can be
291 // used to perform a definitive test of whether an existing entry is sparse or 298 // used to perform a definitive test of whether an existing entry is sparse or
292 // not, but that method may modify the current state of the entry (making it 299 // not, but that method may modify the current state of the entry (making it
293 // sparse, for instance). The purpose of this method is to test an existing 300 // sparse, for instance). The purpose of this method is to test an existing
294 // entry, but without generating actual IO to perform a thorough check. 301 // entry, but without generating actual IO to perform a thorough check.
(...skipping 29 matching lines...) Expand all
324 entry->Close(); 331 entry->Close();
325 } 332 }
326 }; 333 };
327 334
328 // Automatically closes an entry when it goes out of scope. 335 // Automatically closes an entry when it goes out of scope.
329 typedef scoped_ptr<Entry, EntryDeleter> ScopedEntryPtr; 336 typedef scoped_ptr<Entry, EntryDeleter> ScopedEntryPtr;
330 337
331 } // namespace disk_cache 338 } // namespace disk_cache
332 339
333 #endif // NET_DISK_CACHE_DISK_CACHE_H_ 340 #endif // NET_DISK_CACHE_DISK_CACHE_H_
OLDNEW
« no previous file with comments | « net/disk_cache/cache_creator.cc ('k') | net/disk_cache/disk_cache_test_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698