Chromium Code Reviews| Index: chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| diff --git a/chrome/browser/sync_file_system/drive_backend/metadata_database.cc b/chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| index f61b49496d7919923cb9bab7764800ff70815d8e..9a3ab3a889af888ae0e5b8113d3f59a561c03e66 100644 |
| --- a/chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| +++ b/chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| @@ -719,8 +719,6 @@ void MetadataDatabase::PopulateInitialData( |
| const ScopedVector<google_apis::FileResource>& app_root_folders, |
| const SyncStatusCallback& callback) { |
| DCHECK(worker_sequence_checker_.CalledOnValidSequencedThread()); |
| - DCHECK(index_->tracker_by_id_.empty()); |
| - DCHECK(index_->metadata_by_id_.empty()); |
| scoped_ptr<leveldb::WriteBatch> batch(new leveldb::WriteBatch); |
| service_metadata_->set_largest_change_id(largest_change_id); |
| @@ -1467,8 +1465,7 @@ bool MetadataDatabase::HasDirtyTracker() const { |
| size_t MetadataDatabase::CountDirtyTracker() const { |
| DCHECK(worker_sequence_checker_.CalledOnValidSequencedThread()); |
| - return index_->dirty_trackers_.size() + |
| - index_->demoted_dirty_trackers_.size(); |
| + return index_->CountDirtyTracker(); |
| } |
| bool MetadataDatabase::GetMultiParentFileTrackers(std::string* file_id_out, |
| @@ -1494,12 +1491,12 @@ bool MetadataDatabase::GetMultiParentFileTrackers(std::string* file_id_out, |
| size_t MetadataDatabase::CountFileMetadata() const { |
| DCHECK(worker_sequence_checker_.CalledOnValidSequencedThread()); |
| - return index_->metadata_by_id_.size(); |
| + return index_->CountFileMetadata(); |
| } |
| size_t MetadataDatabase::CountFileTracker() const { |
| DCHECK(worker_sequence_checker_.CalledOnValidSequencedThread()); |
| - return index_->tracker_by_id_.size(); |
| + return index_->CountFileTracker(); |
| } |
| bool MetadataDatabase::GetConflictingTrackers(TrackerIDSet* trackers_out) { |
| @@ -1976,13 +1973,15 @@ scoped_ptr<base::ListValue> MetadataDatabase::DumpTrackers() { |
| trackers->Append(metadata); |
| // Append tracker data. |
| - for (MetadataDatabaseIndex::TrackerByID::const_iterator itr = |
| - index_->tracker_by_id_.begin(); |
| - itr != index_->tracker_by_id_.end(); ++itr) { |
| - const FileTracker& tracker = *itr->second; |
| + std::vector<int64> tracker_ids(index_->GetAllTrackerIDs()); |
| + for (std::vector<int64>::const_iterator itr = tracker_ids.begin(); |
| + itr != tracker_ids.end(); ++itr) { |
| + const int64 tracker_id = *itr; |
| + const FileTracker& tracker = *(index_->GetFileTracker(tracker_id)); |
|
tzik
2014/06/19 06:23:11
Could you change this type to FileTracker* and add
peria
2014/06/19 06:30:55
Done.
|
| + |
| base::DictionaryValue* dict = new base::DictionaryValue; |
| base::FilePath path = BuildDisplayPathForTracker(tracker); |
| - dict->SetString("tracker_id", base::Int64ToString(tracker.tracker_id())); |
| + dict->SetString("tracker_id", base::Int64ToString(tracker_id)); |
| dict->SetString("path", path.AsUTF8Unsafe()); |
| dict->SetString("file_id", tracker.file_id()); |
| TrackerKind tracker_kind = tracker.tracker_kind(); |
| @@ -2031,15 +2030,16 @@ scoped_ptr<base::ListValue> MetadataDatabase::DumpMetadata() { |
| files->Append(metadata); |
| // Append metadata data. |
| - for (MetadataDatabaseIndex::MetadataByID::const_iterator itr = |
| - index_->metadata_by_id_.begin(); |
| - itr != index_->metadata_by_id_.end(); ++itr) { |
| - const FileMetadata& file = *itr->second; |
| + std::vector<std::string> metadata_ids(index_->GetAllMetadataIDs()); |
| + for (std::vector<std::string>::const_iterator itr = metadata_ids.begin(); |
| + itr != metadata_ids.end(); ++itr) { |
| + const std::string& file_id = *itr; |
| + const FileMetadata *file = index_->GetFileMetadata(file_id); |
|
tzik
2014/06/19 06:23:11
ditto.
peria
2014/06/19 06:30:55
Done.
|
| base::DictionaryValue* dict = new base::DictionaryValue; |
| - dict->SetString("file_id", file.file_id()); |
| - if (file.has_details()) { |
| - const FileDetails& details = file.details(); |
| + dict->SetString("file_id", file_id); |
| + if (file->has_details()) { |
| + const FileDetails& details = file->details(); |
| dict->SetString("title", details.title()); |
| dict->SetString("type", FileKindToString(details.file_kind())); |
| dict->SetString("md5", details.md5()); |