summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhidehiko@chromium.org <hidehiko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-09-09 12:51:56 +0000
committerhidehiko@chromium.org <hidehiko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-09-09 12:51:56 +0000
commit63bcb55f7f380f08b9e5e9a6099d6b5d73c5bdcf (patch)
treec8bd85935940ef7ac4e17b418015e43bcbdf8d51
parent9ac667eef08da90d2fa46a28c55b44126c6d3bf9 (diff)
downloadchromium_src-63bcb55f7f380f08b9e5e9a6099d6b5d73c5bdcf.zip
chromium_src-63bcb55f7f380f08b9e5e9a6099d6b5d73c5bdcf.tar.gz
chromium_src-63bcb55f7f380f08b9e5e9a6099d6b5d73c5bdcf.tar.bz2
Use "Files: list" for full fetch.
According to some investigation, "Files: list" should be faster than "Changes: list". We can use this because we extract change list id from "About: get" API. BUG=287602 TEST=Ran unit_tests and tested manually. WIP Review URL: https://chromiumcodereview.appspot.com/23958006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@222016 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/chromeos/drive/change_list_loader.cc8
-rw-r--r--chrome/browser/drive/drive_api_service.cc11
2 files changed, 8 insertions, 11 deletions
diff --git a/chrome/browser/chromeos/drive/change_list_loader.cc b/chrome/browser/chromeos/drive/change_list_loader.cc
index a537ff9..119a50a 100644
--- a/chrome/browser/chromeos/drive/change_list_loader.cc
+++ b/chrome/browser/chromeos/drive/change_list_loader.cc
@@ -58,12 +58,12 @@ class FullFeedFetcher : public ChangeListLoader::FeedFetcher {
// This is full resource list fetch.
scheduler_->GetAllResourceList(
- base::Bind(&FullFeedFetcher::OnChangeListFetched,
+ base::Bind(&FullFeedFetcher::OnFileListFetched,
weak_ptr_factory_.GetWeakPtr(), callback));
}
private:
- void OnChangeListFetched(
+ void OnFileListFetched(
const FeedFetcherCallback& callback,
google_apis::GDataErrorCode status,
scoped_ptr<google_apis::ResourceList> resource_list) {
@@ -89,9 +89,9 @@ class FullFeedFetcher : public ChangeListLoader::FeedFetcher {
GURL next_url;
if (resource_list->GetNextFeedURL(&next_url) && !next_url.is_empty()) {
// There is the remaining result so fetch it.
- scheduler_->GetRemainingChangeList(
+ scheduler_->GetRemainingFileList(
next_url,
- base::Bind(&FullFeedFetcher::OnChangeListFetched,
+ base::Bind(&FullFeedFetcher::OnFileListFetched,
weak_ptr_factory_.GetWeakPtr(), callback));
return;
}
diff --git a/chrome/browser/drive/drive_api_service.cc b/chrome/browser/drive/drive_api_service.cc
index 435fcb8..dbc7325 100644
--- a/chrome/browser/drive/drive_api_service.cc
+++ b/chrome/browser/drive/drive_api_service.cc
@@ -319,15 +319,12 @@ CancelCallback DriveAPIService::GetAllResourceList(
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
DCHECK(!callback.is_null());
- // The simplest way to fetch the all resources list looks files.list method,
- // but it seems impossible to know the returned list's changestamp.
- // Thus, instead, we use changes.list method with includeDeleted=false here.
- // The returned list should contain only resources currently existing.
- ChangesListRequest* request = new ChangesListRequest(
+ FilesListRequest* request = new FilesListRequest(
sender_.get(), url_generator_,
- base::Bind(&ConvertChangeListToResourceListOnBlockingPoolAndRun,
+ base::Bind(&ConvertFileListToResourceListOnBlockingPoolAndRun,
blocking_task_runner_, callback));
- request->set_include_deleted(false);
+ request->set_max_results(kMaxNumFilesResourcePerRequest);
+ request->set_q("trashed = false"); // Exclude trashed files.
return sender_->StartRequestWithRetry(request);
}