diff options
-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; |