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

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

Issue 10735049: gdata: Take GDataCache::CacheEntry as parameters (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: polish Created 8 years, 5 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 #include "chrome/browser/chromeos/gdata/gdata_cache_metadata.h" 5 #include "chrome/browser/chromeos/gdata/gdata_cache_metadata.h"
6 6
7 #include "base/file_util.h" 7 #include "base/file_util.h"
8 #include "chrome/browser/chromeos/gdata/gdata_util.h" 8 #include "chrome/browser/chromeos/gdata/gdata_util.h"
9 9
10 namespace gdata { 10 namespace gdata {
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 GDataCache::CACHE_TYPE_OUTGOING, 176 GDataCache::CACHE_TYPE_OUTGOING,
177 &cache_map_, 177 &cache_map_,
178 &outgoing_file_map); 178 &outgoing_file_map);
179 179
180 RemoveInvalidFilesFromPersistentDirectory(persistent_file_map, 180 RemoveInvalidFilesFromPersistentDirectory(persistent_file_map,
181 outgoing_file_map, 181 outgoing_file_map,
182 &cache_map_); 182 &cache_map_);
183 DVLOG(1) << "Directory scan finished"; 183 DVLOG(1) << "Directory scan finished";
184 } 184 }
185 185
186 void GDataCacheMetadataMap::UpdateCache(const std::string& resource_id, 186 void GDataCacheMetadataMap::UpdateCache(
187 const std::string& md5, 187 const std::string& resource_id,
188 int cache_state) { 188 const GDataCache::CacheEntry& cache_entry) {
189 AssertOnSequencedWorkerPool(); 189 AssertOnSequencedWorkerPool();
190 190
191 CacheMap::iterator iter = cache_map_.find(resource_id); 191 CacheMap::iterator iter = cache_map_.find(resource_id);
192 if (iter == cache_map_.end()) { // New resource, create new entry. 192 if (iter == cache_map_.end()) { // New resource, create new entry.
193 // Makes no sense to create new entry if cache state is NONE. 193 // Makes no sense to create new entry if cache state is NONE.
194 DCHECK(cache_state != GDataCache::CACHE_STATE_NONE); 194 DCHECK(cache_entry.cache_state != GDataCache::CACHE_STATE_NONE);
195 if (cache_state != GDataCache::CACHE_STATE_NONE) { 195 if (cache_entry.cache_state != GDataCache::CACHE_STATE_NONE) {
196 GDataCache::CacheEntry cache_entry(md5, cache_state);
197 cache_map_.insert(std::make_pair(resource_id, cache_entry)); 196 cache_map_.insert(std::make_pair(resource_id, cache_entry));
198 DVLOG(1) << "Added res_id=" << resource_id 197 DVLOG(1) << "Added res_id=" << resource_id
199 << ", " << cache_entry.ToString(); 198 << ", " << cache_entry.ToString();
200 } 199 }
201 } else { // Resource exists. 200 } else { // Resource exists.
202 // If cache state is NONE, delete entry from cache map. 201 // If cache state is NONE, delete entry from cache map.
203 if (cache_state == GDataCache::CACHE_STATE_NONE) { 202 if (cache_entry.cache_state == GDataCache::CACHE_STATE_NONE) {
204 DVLOG(1) << "Deleting res_id=" << resource_id 203 DVLOG(1) << "Deleting res_id=" << resource_id
205 << ", " << iter->second.ToString(); 204 << ", " << iter->second.ToString();
206 cache_map_.erase(iter); 205 cache_map_.erase(iter);
207 } else { // Otherwise, update entry in cache map. 206 } else { // Otherwise, update entry in cache map.
208 iter->second.md5 = md5; 207 iter->second.md5 = cache_entry.md5;
209 iter->second.cache_state = cache_state; 208 iter->second.cache_state = cache_entry.cache_state;
210 DVLOG(1) << "Updated res_id=" << resource_id 209 DVLOG(1) << "Updated res_id=" << resource_id
211 << ", " << iter->second.ToString(); 210 << ", " << iter->second.ToString();
212 } 211 }
213 } 212 }
214 } 213 }
215 214
216 void GDataCacheMetadataMap::RemoveFromCache(const std::string& resource_id) { 215 void GDataCacheMetadataMap::RemoveFromCache(const std::string& resource_id) {
217 AssertOnSequencedWorkerPool(); 216 AssertOnSequencedWorkerPool();
218 217
219 CacheMap::iterator iter = cache_map_.find(resource_id); 218 CacheMap::iterator iter = cache_map_.find(resource_id);
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after
408 // If the MD5 matching is not requested, don't check MD5. 407 // If the MD5 matching is not requested, don't check MD5.
409 return true; 408 return true;
410 } else if (md5 == cache_entry.md5) { 409 } else if (md5 == cache_entry.md5) {
411 // Otherwise, compare the MD5. 410 // Otherwise, compare the MD5.
412 return true; 411 return true;
413 } 412 }
414 return false; 413 return false;
415 } 414 }
416 415
417 } // namespace gdata 416 } // namespace gdata
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/gdata/gdata_cache_metadata.h ('k') | chrome/browser/chromeos/gdata/gdata_cache_metadata_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698