OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/sync_file_system/drive_backend/metadata_database_index.
h" | 5 #include "chrome/browser/sync_file_system/drive_backend/metadata_database_index.
h" |
6 | 6 |
7 #include "base/metrics/histogram.h" | 7 #include "base/metrics/histogram.h" |
8 #include "base/strings/string_number_conversions.h" | 8 #include "base/strings/string_number_conversions.h" |
9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
10 #include "base/threading/thread_restrictions.h" | 10 #include "base/threading/thread_restrictions.h" |
(...skipping 381 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
392 | 392 |
393 void MetadataDatabaseIndex::DemoteDirtyTracker(int64 tracker_id) { | 393 void MetadataDatabaseIndex::DemoteDirtyTracker(int64 tracker_id) { |
394 if (dirty_trackers_.erase(tracker_id)) | 394 if (dirty_trackers_.erase(tracker_id)) |
395 demoted_dirty_trackers_.insert(tracker_id); | 395 demoted_dirty_trackers_.insert(tracker_id); |
396 } | 396 } |
397 | 397 |
398 bool MetadataDatabaseIndex::HasDemotedDirtyTracker() const { | 398 bool MetadataDatabaseIndex::HasDemotedDirtyTracker() const { |
399 return !demoted_dirty_trackers_.empty(); | 399 return !demoted_dirty_trackers_.empty(); |
400 } | 400 } |
401 | 401 |
402 void MetadataDatabaseIndex::PromoteDemotedDirtyTrackers() { | 402 void MetadataDatabaseIndex::PromoteDemotedDirtyTracker(int64 tracker_id) { |
| 403 if (demoted_dirty_trackers_.erase(tracker_id) == 1) |
| 404 dirty_trackers_.insert(tracker_id); |
| 405 } |
| 406 |
| 407 bool MetadataDatabaseIndex::PromoteDemotedDirtyTrackers() { |
| 408 bool promoted = !demoted_dirty_trackers_.empty(); |
403 dirty_trackers_.insert(demoted_dirty_trackers_.begin(), | 409 dirty_trackers_.insert(demoted_dirty_trackers_.begin(), |
404 demoted_dirty_trackers_.end()); | 410 demoted_dirty_trackers_.end()); |
405 demoted_dirty_trackers_.clear(); | 411 demoted_dirty_trackers_.clear(); |
| 412 return promoted; |
406 } | 413 } |
407 | 414 |
408 size_t MetadataDatabaseIndex::CountDirtyTracker() const { | 415 size_t MetadataDatabaseIndex::CountDirtyTracker() const { |
409 return dirty_trackers_.size() + demoted_dirty_trackers_.size(); | 416 return dirty_trackers_.size() + demoted_dirty_trackers_.size(); |
410 } | 417 } |
411 | 418 |
412 size_t MetadataDatabaseIndex::CountFileMetadata() const { | 419 size_t MetadataDatabaseIndex::CountFileMetadata() const { |
413 return metadata_by_id_.size(); | 420 return metadata_by_id_.size(); |
414 } | 421 } |
415 | 422 |
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
733 | 740 |
734 DVLOG(3) << " Remove from dirty_trackers_: " << tracker_id; | 741 DVLOG(3) << " Remove from dirty_trackers_: " << tracker_id; |
735 dirty_trackers_.erase(tracker_id); | 742 dirty_trackers_.erase(tracker_id); |
736 | 743 |
737 demoted_dirty_trackers_.erase(tracker_id); | 744 demoted_dirty_trackers_.erase(tracker_id); |
738 } | 745 } |
739 } | 746 } |
740 | 747 |
741 } // namespace drive_backend | 748 } // namespace drive_backend |
742 } // namespace sync_file_system | 749 } // namespace sync_file_system |
OLD | NEW |