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

Side by Side Diff: components/drive/service/fake_drive_service.cc

Issue 2613223002: Remove ScopedVector from base::JSONValueConverter (Closed)
Patch Set: Rebase and address comments from mmenke@ Created 3 years, 11 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
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 "components/drive/service/fake_drive_service.h" 5 #include "components/drive/service/fake_drive_service.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <memory>
9 #include <string> 10 #include <string>
10 #include <utility> 11 #include <utility>
12 #include <vector>
11 13
12 #include "base/files/file_util.h" 14 #include "base/files/file_util.h"
13 #include "base/json/json_string_value_serializer.h" 15 #include "base/json/json_string_value_serializer.h"
14 #include "base/logging.h" 16 #include "base/logging.h"
15 #include "base/md5.h" 17 #include "base/md5.h"
16 #include "base/memory/ptr_util.h" 18 #include "base/memory/ptr_util.h"
17 #include "base/strings/string_number_conversions.h" 19 #include "base/strings/string_number_conversions.h"
18 #include "base/strings/string_split.h" 20 #include "base/strings/string_split.h"
19 #include "base/strings/string_tokenizer.h" 21 #include "base/strings/string_tokenizer.h"
20 #include "base/strings/string_util.h" 22 #include "base/strings/string_util.h"
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 if (!change_list) { 127 if (!change_list) {
126 callback.Run(error, std::move(file_list)); 128 callback.Run(error, std::move(file_list));
127 return; 129 return;
128 } 130 }
129 131
130 file_list.reset(new FileList); 132 file_list.reset(new FileList);
131 file_list->set_next_link(change_list->next_link()); 133 file_list->set_next_link(change_list->next_link());
132 for (size_t i = 0; i < change_list->items().size(); ++i) { 134 for (size_t i = 0; i < change_list->items().size(); ++i) {
133 const ChangeResource& entry = *change_list->items()[i]; 135 const ChangeResource& entry = *change_list->items()[i];
134 if (entry.file()) 136 if (entry.file())
135 file_list->mutable_items()->push_back(new FileResource(*entry.file())); 137 file_list->mutable_items()->push_back(
138 base::MakeUnique<FileResource>(*entry.file()));
136 } 139 }
137 callback.Run(error, std::move(file_list)); 140 callback.Run(error, std::move(file_list));
138 } 141 }
139 142
140 bool UserHasWriteAccess(google_apis::drive::PermissionRole user_permission) { 143 bool UserHasWriteAccess(google_apis::drive::PermissionRole user_permission) {
141 switch (user_permission) { 144 switch (user_permission) {
142 case google_apis::drive::PERMISSION_ROLE_OWNER: 145 case google_apis::drive::PERMISSION_ROLE_OWNER:
143 case google_apis::drive::PERMISSION_ROLE_WRITER: 146 case google_apis::drive::PERMISSION_ROLE_WRITER:
144 return true; 147 return true;
145 case google_apis::drive::PERMISSION_ROLE_READER: 148 case google_apis::drive::PERMISSION_ROLE_READER:
(...skipping 1509 matching lines...) Expand 10 before | Expand all | Expand 10 after
1655 const ChangeListCallback& callback) { 1658 const ChangeListCallback& callback) {
1656 if (offline_) { 1659 if (offline_) {
1657 base::ThreadTaskRunnerHandle::Get()->PostTask( 1660 base::ThreadTaskRunnerHandle::Get()->PostTask(
1658 FROM_HERE, base::Bind(callback, DRIVE_NO_CONNECTION, 1661 FROM_HERE, base::Bind(callback, DRIVE_NO_CONNECTION,
1659 base::Passed(std::unique_ptr<ChangeList>()))); 1662 base::Passed(std::unique_ptr<ChangeList>())));
1660 return; 1663 return;
1661 } 1664 }
1662 1665
1663 // Filter out entries per parameters like |directory_resource_id| and 1666 // Filter out entries per parameters like |directory_resource_id| and
1664 // |search_query|. 1667 // |search_query|.
1665 ScopedVector<ChangeResource> entries; 1668 std::vector<std::unique_ptr<ChangeResource>> entries;
1666 int num_entries_matched = 0; 1669 int num_entries_matched = 0;
1667 for (auto it = entries_.begin(); it != entries_.end(); ++it) { 1670 for (auto it = entries_.begin(); it != entries_.end(); ++it) {
1668 const ChangeResource& entry = it->second->change_resource; 1671 const ChangeResource& entry = it->second->change_resource;
1669 bool should_exclude = false; 1672 bool should_exclude = false;
1670 1673
1671 // If |directory_resource_id| is set, exclude the entry if it's not in 1674 // If |directory_resource_id| is set, exclude the entry if it's not in
1672 // the target directory. 1675 // the target directory.
1673 if (!directory_resource_id.empty()) { 1676 if (!directory_resource_id.empty()) {
1674 // Get the parent resource ID of the entry. 1677 // Get the parent resource ID of the entry.
1675 std::string parent_resource_id; 1678 std::string parent_resource_id;
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
1713 1716
1714 if (!should_exclude) { 1717 if (!should_exclude) {
1715 std::unique_ptr<ChangeResource> entry_copied(new ChangeResource); 1718 std::unique_ptr<ChangeResource> entry_copied(new ChangeResource);
1716 entry_copied->set_change_id(entry.change_id()); 1719 entry_copied->set_change_id(entry.change_id());
1717 entry_copied->set_file_id(entry.file_id()); 1720 entry_copied->set_file_id(entry.file_id());
1718 entry_copied->set_deleted(entry.is_deleted()); 1721 entry_copied->set_deleted(entry.is_deleted());
1719 if (entry.file()) { 1722 if (entry.file()) {
1720 entry_copied->set_file(base::MakeUnique<FileResource>(*entry.file())); 1723 entry_copied->set_file(base::MakeUnique<FileResource>(*entry.file()));
1721 } 1724 }
1722 entry_copied->set_modification_date(entry.modification_date()); 1725 entry_copied->set_modification_date(entry.modification_date());
1723 entries.push_back(entry_copied.release()); 1726 entries.push_back(std::move(entry_copied));
1724 } 1727 }
1725 } 1728 }
1726 1729
1727 std::unique_ptr<ChangeList> change_list(new ChangeList); 1730 std::unique_ptr<ChangeList> change_list(new ChangeList);
1728 if (start_changestamp > 0 && start_offset == 0) { 1731 if (start_changestamp > 0 && start_offset == 0) {
1729 change_list->set_largest_change_id(about_resource_->largest_change_id()); 1732 change_list->set_largest_change_id(about_resource_->largest_change_id());
1730 } 1733 }
1731 1734
1732 // If |max_results| is set, trim the entries if the number exceeded the max 1735 // If |max_results| is set, trim the entries if the number exceeded the max
1733 // results. 1736 // results.
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
1790 NOTREACHED(); 1793 NOTREACHED();
1791 return std::unique_ptr<BatchRequestConfiguratorInterface>(); 1794 return std::unique_ptr<BatchRequestConfiguratorInterface>();
1792 } 1795 }
1793 1796
1794 void FakeDriveService::NotifyObservers() { 1797 void FakeDriveService::NotifyObservers() {
1795 for (auto& observer : change_observers_) 1798 for (auto& observer : change_observers_)
1796 observer.OnNewChangeAvailable(); 1799 observer.OnNewChangeAvailable();
1797 } 1800 }
1798 1801
1799 } // namespace drive 1802 } // namespace drive
OLDNEW
« no previous file with comments | « components/drive/drive_app_registry.cc ('k') | components/error_page/renderer/net_error_helper_core.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698