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

Side by Side Diff: chrome/browser/chromeos/gdata/gdata_cache_metadata.h

Issue 10581038: chromeos: Stop returning scoped_ptr from GDataCache::GetCacheEntry (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: _ Created 8 years, 6 months 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 | Annotate | Revision Log
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 #ifndef CHROME_BROWSER_CHROMEOS_GDATA_GDATA_CACHE_METADATA_H_ 5 #ifndef CHROME_BROWSER_CHROMEOS_GDATA_GDATA_CACHE_METADATA_H_
6 #define CHROME_BROWSER_CHROMEOS_GDATA_GDATA_CACHE_METADATA_H_ 6 #define CHROME_BROWSER_CHROMEOS_GDATA_GDATA_CACHE_METADATA_H_
7 #pragma once 7 #pragma once
8 8
9 #include "base/file_path.h" 9 #include "base/file_path.h"
10 #include "base/gtest_prod_util.h" 10 #include "base/gtest_prod_util.h"
(...skipping 25 matching lines...) Expand all
36 // Updates cache map with entry corresponding to |resource_id|. 36 // Updates cache map with entry corresponding to |resource_id|.
37 // Creates new entry if it doesn't exist, otherwise update the entry. 37 // Creates new entry if it doesn't exist, otherwise update the entry.
38 virtual void UpdateCache(const std::string& resource_id, 38 virtual void UpdateCache(const std::string& resource_id,
39 const std::string& md5, 39 const std::string& md5,
40 GDataCache::CacheSubDirectoryType subdir, 40 GDataCache::CacheSubDirectoryType subdir,
41 int cache_state) = 0; 41 int cache_state) = 0;
42 42
43 // Removes entry corresponding to |resource_id| from cache map. 43 // Removes entry corresponding to |resource_id| from cache map.
44 virtual void RemoveFromCache(const std::string& resource_id) = 0; 44 virtual void RemoveFromCache(const std::string& resource_id) = 0;
45 45
46 // Returns the cache entry for file corresponding to |resource_id| and |md5| 46 // Gets the cache entry for file corresponding to |resource_id| and |md5|
47 // if entry exists in cache map. Otherwise, returns NULL. 47 // and returns true if entry exists in cache map. Otherwise, returns false.
48 // |md5| can be empty if only matching |resource_id| is desired, which may 48 // |md5| can be empty if only matching |resource_id| is desired, which may
49 // happen when looking for pinned entries where symlinks' filenames have no 49 // happen when looking for pinned entries where symlinks' filenames have no
50 // extension and hence no md5. 50 // extension and hence no md5.
51 virtual scoped_ptr<GDataCache::CacheEntry> GetCacheEntry( 51 virtual bool GetCacheEntry(const std::string& resource_id,
52 const std::string& resource_id, 52 const std::string& md5,
53 const std::string& md5) = 0; 53 GDataCache::CacheEntry* entry) = 0;
54 54
55 // Removes temporary files (files in CACHE_TYPE_TMP) from the cache map. 55 // Removes temporary files (files in CACHE_TYPE_TMP) from the cache map.
56 virtual void RemoveTemporaryFiles() = 0; 56 virtual void RemoveTemporaryFiles() = 0;
57 57
58 // Iterates over all the cache entries synchronously. |callback| is called 58 // Iterates over all the cache entries synchronously. |callback| is called
59 // on each cache entry. 59 // on each cache entry.
60 virtual void Iterate(const IterateCallback& callback) = 0; 60 virtual void Iterate(const IterateCallback& callback) = 0;
61 61
62 protected: 62 protected:
63 // Checks whether the current thread is on the right sequenced worker pool 63 // Checks whether the current thread is on the right sequenced worker pool
(...skipping 17 matching lines...) Expand all
81 81
82 // Initializes the data. 82 // Initializes the data.
83 void Initialize(const std::vector<FilePath>& cache_paths); 83 void Initialize(const std::vector<FilePath>& cache_paths);
84 84
85 // GDataCacheMetadata overrides: 85 // GDataCacheMetadata overrides:
86 virtual void UpdateCache(const std::string& resource_id, 86 virtual void UpdateCache(const std::string& resource_id,
87 const std::string& md5, 87 const std::string& md5,
88 GDataCache::CacheSubDirectoryType subdir, 88 GDataCache::CacheSubDirectoryType subdir,
89 int cache_state) OVERRIDE; 89 int cache_state) OVERRIDE;
90 virtual void RemoveFromCache(const std::string& resource_id) OVERRIDE; 90 virtual void RemoveFromCache(const std::string& resource_id) OVERRIDE;
91 virtual scoped_ptr<GDataCache::CacheEntry> GetCacheEntry( 91 virtual bool GetCacheEntry(const std::string& resource_id,
92 const std::string& resource_id, 92 const std::string& md5,
93 const std::string& md5) OVERRIDE; 93 GDataCache::CacheEntry* entry) OVERRIDE;
94 virtual void RemoveTemporaryFiles() OVERRIDE; 94 virtual void RemoveTemporaryFiles() OVERRIDE;
95 virtual void Iterate(const IterateCallback& callback) OVERRIDE; 95 virtual void Iterate(const IterateCallback& callback) OVERRIDE;
96 96
97 private: 97 private:
98 friend class GDataCacheMetadataMapTest; 98 friend class GDataCacheMetadataMapTest;
99 FRIEND_TEST_ALL_PREFIXES(GDataCacheMetadataMapTest, RemoveTemporaryFilesTest); 99 FRIEND_TEST_ALL_PREFIXES(GDataCacheMetadataMapTest, RemoveTemporaryFilesTest);
100 100
101 // A map table of cache file's resource id to its CacheEntry* entry. 101 // A map table of cache file's resource id to its CacheEntry* entry.
102 typedef std::map<std::string, GDataCache::CacheEntry> CacheMap; 102 typedef std::map<std::string, GDataCache::CacheEntry> CacheMap;
103 103
104 // Scans cache subdirectory and build or update |cache_map| 104 // Scans cache subdirectory and build or update |cache_map|
105 // with found file blobs or symlinks. 105 // with found file blobs or symlinks.
106 void ScanCacheDirectory(const std::vector<FilePath>& cache_paths, 106 void ScanCacheDirectory(const std::vector<FilePath>& cache_paths,
107 GDataCache::CacheSubDirectoryType sub_dir_type, 107 GDataCache::CacheSubDirectoryType sub_dir_type,
108 CacheMap* cache_map); 108 CacheMap* cache_map);
109 109
110 // Returns true if |md5| matches the one in |cache_entry| with some 110 // Returns true if |md5| matches the one in |cache_entry| with some
111 // exceptions. See the function definition for details. 111 // exceptions. See the function definition for details.
112 static bool CheckIfMd5Matches(const std::string& md5, 112 static bool CheckIfMd5Matches(const std::string& md5,
113 const GDataCache::CacheEntry& cache_entry); 113 const GDataCache::CacheEntry& cache_entry);
114 114
115 CacheMap cache_map_; 115 CacheMap cache_map_;
116 116
117 DISALLOW_COPY_AND_ASSIGN(GDataCacheMetadataMap); 117 DISALLOW_COPY_AND_ASSIGN(GDataCacheMetadataMap);
118 }; 118 };
119 119
120 } // namespace gdata 120 } // namespace gdata
121 121
122 #endif // CHROME_BROWSER_CHROMEOS_GDATA_GDATA_CACHE_METADATA_H_ 122 #endif // CHROME_BROWSER_CHROMEOS_GDATA_GDATA_CACHE_METADATA_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698