diff options
author | hidehiko@chromium.org <hidehiko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-08-28 14:19:55 +0000 |
---|---|---|
committer | hidehiko@chromium.org <hidehiko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-08-28 14:19:55 +0000 |
commit | 8319c0517fd553a10adda6c094ad266143960f93 (patch) | |
tree | 2650e7bfd6c78823ecf338708263d71d19a2c518 /chrome/browser/drive | |
parent | 4ca7cf0f7d89ca46da868cf90ce07d78f5cc2194 (diff) | |
download | chromium_src-8319c0517fd553a10adda6c094ad266143960f93.zip chromium_src-8319c0517fd553a10adda6c094ad266143960f93.tar.gz chromium_src-8319c0517fd553a10adda6c094ad266143960f93.tar.bz2 |
Deprecates ContinueGetResourceList and introduces GetRemaining{File,Change}List.
On Drive API v2, ResourceList in GData WAPI is split into two, FileList and
ChangeList. This CL is the preparation to use Drive API v2 classes.
Note that this is also the preparation to fetch feeds with only fields we're
interested in.
The new methods are not yet used from production. It'll be done in a separate
CLs.
BUG=277253
TEST=Ran unit_tests
Review URL: https://chromiumcodereview.appspot.com/23450009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@220020 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/drive')
-rw-r--r-- | chrome/browser/drive/drive_api_service.cc | 24 | ||||
-rw-r--r-- | chrome/browser/drive/drive_api_service.h | 6 | ||||
-rw-r--r-- | chrome/browser/drive/drive_service_interface.h | 23 | ||||
-rw-r--r-- | chrome/browser/drive/dummy_drive_service.cc | 8 | ||||
-rw-r--r-- | chrome/browser/drive/dummy_drive_service.h | 6 | ||||
-rw-r--r-- | chrome/browser/drive/fake_drive_service.cc | 20 | ||||
-rw-r--r-- | chrome/browser/drive/fake_drive_service.h | 6 | ||||
-rw-r--r-- | chrome/browser/drive/fake_drive_service_unittest.cc | 36 | ||||
-rw-r--r-- | chrome/browser/drive/gdata_wapi_service.cc | 22 | ||||
-rw-r--r-- | chrome/browser/drive/gdata_wapi_service.h | 6 |
10 files changed, 139 insertions, 18 deletions
diff --git a/chrome/browser/drive/drive_api_service.cc b/chrome/browser/drive/drive_api_service.cc index c4281ae..4eded6e 100644 --- a/chrome/browser/drive/drive_api_service.cc +++ b/chrome/browser/drive/drive_api_service.cc @@ -441,6 +441,30 @@ CancelCallback DriveAPIService::ContinueGetResourceList( callback))); } +CancelCallback DriveAPIService::GetRemainingChangeList( + const std::string& page_token, + const GetResourceListCallback& callback) { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); + DCHECK(!page_token.empty()); + DCHECK(!callback.is_null()); + + // Currently page_token is a URL. + // TODO(hidehiko): Use actual page token. + return ContinueGetResourceList(GURL(page_token), callback); +} + +CancelCallback DriveAPIService::GetRemainingFileList( + const std::string& page_token, + const GetResourceListCallback& callback) { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); + DCHECK(!page_token.empty()); + DCHECK(!callback.is_null()); + + // Currently page_token is a URL. + // TODO(hidehiko): Use actual page token. + return ContinueGetResourceList(GURL(page_token), callback); +} + CancelCallback DriveAPIService::GetResourceEntry( const std::string& resource_id, const GetResourceEntryCallback& callback) { diff --git a/chrome/browser/drive/drive_api_service.h b/chrome/browser/drive/drive_api_service.h index 253e42f..299aed4 100644 --- a/chrome/browser/drive/drive_api_service.h +++ b/chrome/browser/drive/drive_api_service.h @@ -93,6 +93,12 @@ class DriveAPIService : public DriveServiceInterface, virtual google_apis::CancelCallback ContinueGetResourceList( const GURL& override_url, const google_apis::GetResourceListCallback& callback) OVERRIDE; + virtual google_apis::CancelCallback GetRemainingChangeList( + const std::string& page_token, + const google_apis::GetResourceListCallback& callback) OVERRIDE; + virtual google_apis::CancelCallback GetRemainingFileList( + const std::string& page_token, + const google_apis::GetResourceListCallback& callback) OVERRIDE; virtual google_apis::CancelCallback GetResourceEntry( const std::string& resource_id, const google_apis::GetResourceEntryCallback& callback) OVERRIDE; diff --git a/chrome/browser/drive/drive_service_interface.h b/chrome/browser/drive/drive_service_interface.h index 2013a60..d9fa83e 100644 --- a/chrome/browser/drive/drive_service_interface.h +++ b/chrome/browser/drive/drive_service_interface.h @@ -135,6 +135,9 @@ class DriveServiceInterface { int64 start_changestamp, const google_apis::GetResourceListCallback& callback) = 0; + // THIS METHOD IS DEPRECATED. NEW CLIENTS SHOULD USE GetRemainingChangeList() + // or GetRemainingFileList(). + // // Requests returning GetResourceList may be paged. In such a case, // a URL to fetch remaining result is returned. The URL can be used for this // method. |callback| will be called upon completion. @@ -145,6 +148,26 @@ class DriveServiceInterface { const GURL& override_url, const google_apis::GetResourceListCallback& callback) = 0; + // The result of GetChangeList() and GetAllResourceList() may be paged. + // In such a case, a page token to fetch remaining result is returned. + // The page token can be used for this method. |callback| will be called upon + // completion. + // + // |page_token| must not be empty. |callback| must not be null. + virtual google_apis::CancelCallback GetRemainingChangeList( + const std::string& page_token, + const google_apis::GetResourceListCallback& callback) = 0; + + // The result of GetResourceListInDirectory(), Search() and SearchByTitle() + // may be paged. In such a case, a page token to fetch remaining result is + // returned. The page token can be used for this method. |callback| will be + // called upon completion. + // + // |page_token| must not be empty. |callback| must not be null. + virtual google_apis::CancelCallback GetRemainingFileList( + const std::string& page_token, + const google_apis::GetResourceListCallback& callback) = 0; + // Fetches single entry metadata from server. The entry's resource id equals // |resource_id|. // Upon completion, invokes |callback| with results on the calling thread. diff --git a/chrome/browser/drive/dummy_drive_service.cc b/chrome/browser/drive/dummy_drive_service.cc index f89c2b0..9db0daa 100644 --- a/chrome/browser/drive/dummy_drive_service.cc +++ b/chrome/browser/drive/dummy_drive_service.cc @@ -78,6 +78,14 @@ CancelCallback DummyDriveService::ContinueGetResourceList( const GURL& override_url, const GetResourceListCallback& callback) { return CancelCallback(); } +CancelCallback DummyDriveService::GetRemainingChangeList( + const std::string& page_token, + const GetResourceListCallback& callback) { return CancelCallback(); } + +CancelCallback DummyDriveService::GetRemainingFileList( + const std::string& page_token, + const GetResourceListCallback& callback) { return CancelCallback(); } + CancelCallback DummyDriveService::GetResourceEntry( const std::string& resource_id, const GetResourceEntryCallback& callback) { return CancelCallback(); } diff --git a/chrome/browser/drive/dummy_drive_service.h b/chrome/browser/drive/dummy_drive_service.h index f23d456..24daeed 100644 --- a/chrome/browser/drive/dummy_drive_service.h +++ b/chrome/browser/drive/dummy_drive_service.h @@ -49,6 +49,12 @@ class DummyDriveService : public DriveServiceInterface { virtual google_apis::CancelCallback ContinueGetResourceList( const GURL& override_url, const google_apis::GetResourceListCallback& callback) OVERRIDE; + virtual google_apis::CancelCallback GetRemainingChangeList( + const std::string& page_token, + const google_apis::GetResourceListCallback& callback) OVERRIDE; + virtual google_apis::CancelCallback GetRemainingFileList( + const std::string& page_token, + const google_apis::GetResourceListCallback& callback) OVERRIDE; virtual google_apis::CancelCallback GetResourceEntry( const std::string& resource_id, const google_apis::GetResourceEntryCallback& callback) OVERRIDE; diff --git a/chrome/browser/drive/fake_drive_service.cc b/chrome/browser/drive/fake_drive_service.cc index 8a05f7a..26cc58c 100644 --- a/chrome/browser/drive/fake_drive_service.cc +++ b/chrome/browser/drive/fake_drive_service.cc @@ -456,6 +456,26 @@ CancelCallback FakeDriveService::ContinueGetResourceList( return CancelCallback(); } +CancelCallback FakeDriveService::GetRemainingChangeList( + const std::string& page_token, + const GetResourceListCallback& callback) { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); + DCHECK(!page_token.empty()); + DCHECK(!callback.is_null()); + + return ContinueGetResourceList(GURL(page_token), callback); +} + +CancelCallback FakeDriveService::GetRemainingFileList( + const std::string& page_token, + const GetResourceListCallback& callback) { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); + DCHECK(!page_token.empty()); + DCHECK(!callback.is_null()); + + return ContinueGetResourceList(GURL(page_token), callback); +} + CancelCallback FakeDriveService::GetResourceEntry( const std::string& resource_id, const GetResourceEntryCallback& callback) { diff --git a/chrome/browser/drive/fake_drive_service.h b/chrome/browser/drive/fake_drive_service.h index e35e6dd..12a7448 100644 --- a/chrome/browser/drive/fake_drive_service.h +++ b/chrome/browser/drive/fake_drive_service.h @@ -124,6 +124,12 @@ class FakeDriveService : public DriveServiceInterface { virtual google_apis::CancelCallback ContinueGetResourceList( const GURL& override_url, const google_apis::GetResourceListCallback& callback) OVERRIDE; + virtual google_apis::CancelCallback GetRemainingChangeList( + const std::string& page_token, + const google_apis::GetResourceListCallback& callback) OVERRIDE; + virtual google_apis::CancelCallback GetRemainingFileList( + const std::string& page_token, + const google_apis::GetResourceListCallback& callback) OVERRIDE; virtual google_apis::CancelCallback GetResourceEntry( const std::string& resource_id, const google_apis::GetResourceEntryCallback& callback) OVERRIDE; diff --git a/chrome/browser/drive/fake_drive_service_unittest.cc b/chrome/browser/drive/fake_drive_service_unittest.cc index efbf716..3c69648 100644 --- a/chrome/browser/drive/fake_drive_service_unittest.cc +++ b/chrome/browser/drive/fake_drive_service_unittest.cc @@ -463,7 +463,7 @@ TEST_F(FakeDriveServiceTest, GetChangeList_DeletedEntry) { EXPECT_EQ(1, fake_service_.change_list_load_count()); } -TEST_F(FakeDriveServiceTest, ContinueGetResourceList_GetAllResourceList) { +TEST_F(FakeDriveServiceTest, GetRemainingChangeList_GetAllResourceList) { ASSERT_TRUE(fake_service_.LoadResourceListForWapi( "gdata/root_feed.json")); fake_service_.set_default_max_results(6); @@ -491,8 +491,8 @@ TEST_F(FakeDriveServiceTest, ContinueGetResourceList_GetAllResourceList) { error = GDATA_OTHER_ERROR; resource_list.reset(); - fake_service_.ContinueGetResourceList( - next_url, + fake_service_.GetRemainingChangeList( + next_url.spec(), test_util::CreateCopyResultCallback(&error, &resource_list)); base::RunLoop().RunUntilIdle(); @@ -509,8 +509,8 @@ TEST_F(FakeDriveServiceTest, ContinueGetResourceList_GetAllResourceList) { error = GDATA_OTHER_ERROR; resource_list.reset(); - fake_service_.ContinueGetResourceList( - next_url, + fake_service_.GetRemainingChangeList( + next_url.spec(), test_util::CreateCopyResultCallback(&error, &resource_list)); base::RunLoop().RunUntilIdle(); @@ -522,7 +522,7 @@ TEST_F(FakeDriveServiceTest, ContinueGetResourceList_GetAllResourceList) { } TEST_F(FakeDriveServiceTest, - ContinueGetResourceList_GetResourceListInDirectory) { + GetRemainingFileList_GetResourceListInDirectory) { ASSERT_TRUE(fake_service_.LoadResourceListForWapi( "gdata/root_feed.json")); fake_service_.set_default_max_results(3); @@ -551,8 +551,8 @@ TEST_F(FakeDriveServiceTest, error = GDATA_OTHER_ERROR; resource_list.reset(); - fake_service_.ContinueGetResourceList( - next_url, + fake_service_.GetRemainingFileList( + next_url.spec(), test_util::CreateCopyResultCallback(&error, &resource_list)); base::RunLoop().RunUntilIdle(); @@ -569,8 +569,8 @@ TEST_F(FakeDriveServiceTest, error = GDATA_OTHER_ERROR; resource_list.reset(); - fake_service_.ContinueGetResourceList( - next_url, + fake_service_.GetRemainingFileList( + next_url.spec(), test_util::CreateCopyResultCallback(&error, &resource_list)); base::RunLoop().RunUntilIdle(); @@ -581,7 +581,7 @@ TEST_F(FakeDriveServiceTest, EXPECT_EQ(1, fake_service_.directory_load_count()); } -TEST_F(FakeDriveServiceTest, ContinueGetResourceList_Search) { +TEST_F(FakeDriveServiceTest, GetRemainingFileList_Search) { ASSERT_TRUE(fake_service_.LoadResourceListForWapi( "gdata/root_feed.json")); fake_service_.set_default_max_results(2); @@ -609,8 +609,8 @@ TEST_F(FakeDriveServiceTest, ContinueGetResourceList_Search) { error = GDATA_OTHER_ERROR; resource_list.reset(); - fake_service_.ContinueGetResourceList( - next_url, + fake_service_.GetRemainingFileList( + next_url.spec(), test_util::CreateCopyResultCallback(&error, &resource_list)); base::RunLoop().RunUntilIdle(); @@ -620,7 +620,7 @@ TEST_F(FakeDriveServiceTest, ContinueGetResourceList_Search) { EXPECT_EQ(2U, resource_list->entries().size()); } -TEST_F(FakeDriveServiceTest, ContinueGetResourceList_GetChangeList) { +TEST_F(FakeDriveServiceTest, GetRemainingChangeList_GetChangeList) { ASSERT_TRUE(fake_service_.LoadResourceListForWapi( "gdata/root_feed.json")); fake_service_.set_default_max_results(2); @@ -661,8 +661,8 @@ TEST_F(FakeDriveServiceTest, ContinueGetResourceList_GetChangeList) { error = GDATA_OTHER_ERROR; resource_list.reset(); - fake_service_.ContinueGetResourceList( - next_url, + fake_service_.GetRemainingChangeList( + next_url.spec(), test_util::CreateCopyResultCallback(&error, &resource_list)); base::RunLoop().RunUntilIdle(); @@ -679,8 +679,8 @@ TEST_F(FakeDriveServiceTest, ContinueGetResourceList_GetChangeList) { error = GDATA_OTHER_ERROR; resource_list.reset(); - fake_service_.ContinueGetResourceList( - next_url, + fake_service_.GetRemainingChangeList( + next_url.spec(), test_util::CreateCopyResultCallback(&error, &resource_list)); base::RunLoop().RunUntilIdle(); diff --git a/chrome/browser/drive/gdata_wapi_service.cc b/chrome/browser/drive/gdata_wapi_service.cc index e16dc6f..a6b375a 100644 --- a/chrome/browser/drive/gdata_wapi_service.cc +++ b/chrome/browser/drive/gdata_wapi_service.cc @@ -294,6 +294,28 @@ CancelCallback GDataWapiService::ContinueGetResourceList( callback)); } +CancelCallback GDataWapiService::GetRemainingChangeList( + const std::string& page_token, + const GetResourceListCallback& callback) { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); + DCHECK(!page_token.empty()); + DCHECK(!callback.is_null()); + + // The page token for the GData WAPI is an URL. + return ContinueGetResourceList(GURL(page_token), callback); +} + +CancelCallback GDataWapiService::GetRemainingFileList( + const std::string& page_token, + const GetResourceListCallback& callback) { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); + DCHECK(!page_token.empty()); + DCHECK(!callback.is_null()); + + // The page token for the GData WAPI is an URL. + return ContinueGetResourceList(GURL(page_token), callback); +} + CancelCallback GDataWapiService::GetResourceEntry( const std::string& resource_id, const GetResourceEntryCallback& callback) { diff --git a/chrome/browser/drive/gdata_wapi_service.h b/chrome/browser/drive/gdata_wapi_service.h index c4f61d5..b605b5d 100644 --- a/chrome/browser/drive/gdata_wapi_service.h +++ b/chrome/browser/drive/gdata_wapi_service.h @@ -89,6 +89,12 @@ class GDataWapiService : public DriveServiceInterface, virtual google_apis::CancelCallback ContinueGetResourceList( const GURL& override_url, const google_apis::GetResourceListCallback& callback) OVERRIDE; + virtual google_apis::CancelCallback GetRemainingChangeList( + const std::string& page_token, + const google_apis::GetResourceListCallback& callback) OVERRIDE; + virtual google_apis::CancelCallback GetRemainingFileList( + const std::string& page_token, + const google_apis::GetResourceListCallback& callback) OVERRIDE; virtual google_apis::CancelCallback GetResourceEntry( const std::string& resource_id, const google_apis::GetResourceEntryCallback& callback) OVERRIDE; |