Chromium Code Reviews| Index: chrome/browser/google_apis/fake_drive_service.cc |
| diff --git a/chrome/browser/google_apis/fake_drive_service.cc b/chrome/browser/google_apis/fake_drive_service.cc |
| index 168d02f8ec591c07a9ca78d97b621fe4043ee19a..f3cf3644e1ce13fef3f4c89a446916f7833c15ae 100644 |
| --- a/chrome/browser/google_apis/fake_drive_service.cc |
| +++ b/chrome/browser/google_apis/fake_drive_service.cc |
| @@ -17,7 +17,8 @@ using content::BrowserThread; |
| namespace google_apis { |
| FakeDriveService::FakeDriveService() |
| - : resource_id_count_(0) { |
| + : resource_id_count_(0), |
| + offline_(false) { |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| } |
| @@ -108,6 +109,16 @@ void FakeDriveService::GetResourceList( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<ResourceList> null; |
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, |
| + base::Bind(callback, |
| + GDATA_NO_CONNECTION, |
| + base::Passed(&null))); |
| + return; |
| + } |
| + |
| scoped_ptr<ResourceList> resource_list = |
| ResourceList::CreateFrom(*resource_list_value_); |
| MessageLoop::current()->PostTask( |
| @@ -123,6 +134,16 @@ void FakeDriveService::GetResourceEntry( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<ResourceEntry> null; |
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, |
| + base::Bind(callback, |
| + GDATA_NO_CONNECTION, |
| + base::Passed(&null))); |
| + return; |
| + } |
| + |
| base::DictionaryValue* entry = FindEntryByResourceId(resource_id); |
| if (entry) { |
| scoped_ptr<ResourceEntry> resource_entry = |
| @@ -144,6 +165,15 @@ void FakeDriveService::GetAccountMetadata( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<AccountMetadataFeed> null; |
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, |
| + base::Bind(callback, |
| + GDATA_NO_CONNECTION, |
| + base::Passed(&null))); |
| + return; |
| + } |
| scoped_ptr<AccountMetadataFeed> account_metadata = |
| AccountMetadataFeed::CreateFrom(*account_metadata_value_); |
| MessageLoop::current()->PostTask( |
| @@ -158,6 +188,16 @@ void FakeDriveService::GetApplicationInfo( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<base::Value> null; |
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, |
| + base::Bind(callback, |
| + GDATA_NO_CONNECTION, |
| + base::Passed(&null))); |
| + return; |
| + } |
| + |
| scoped_ptr<base::Value> copied_app_info_value( |
| app_info_value_->DeepCopy()); |
| MessageLoop::current()->PostTask( |
| @@ -174,6 +214,13 @@ void FakeDriveService::DeleteResource( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<base::Value> null; |
|
kinaba
2013/01/10 04:33:54
not used.
satorux1
2013/01/10 04:41:33
Done.
|
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, base::Bind(callback, GDATA_NO_CONNECTION)); |
| + return; |
| + } |
| + |
| base::DictionaryValue* resource_list_dict = NULL; |
| base::ListValue* entries = NULL; |
| // Go through entries and remove the one that matches |edit_url|. |
| @@ -226,6 +273,16 @@ void FakeDriveService::DownloadFile( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!download_action_callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<base::Value> null; |
|
kinaba
2013/01/10 04:33:54
ditto.
satorux1
2013/01/10 04:41:33
Done.
|
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, |
| + base::Bind(download_action_callback, |
| + GDATA_NO_CONNECTION, |
| + FilePath())); |
| + return; |
| + } |
| + |
| base::DictionaryValue* entry = FindEntryByContentUrl(content_url); |
| if (!entry) { |
| base::MessageLoopProxy::current()->PostTask( |
| @@ -257,6 +314,16 @@ void FakeDriveService::CopyHostedDocument( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<ResourceEntry> null; |
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, |
| + base::Bind(callback, |
| + GDATA_NO_CONNECTION, |
| + base::Passed(&null))); |
| + return; |
| + } |
| + |
| base::DictionaryValue* resource_list_dict = NULL; |
| base::ListValue* entries = NULL; |
| // Go through entries and copy the one that matches |resource_id|. |
| @@ -320,6 +387,13 @@ void FakeDriveService::RenameResource( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<ResourceEntry> null; |
|
kinaba
2013/01/10 04:33:54
ditto.
satorux1
2013/01/10 04:41:33
Done.
|
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, base::Bind(callback, GDATA_NO_CONNECTION)); |
| + return; |
| + } |
| + |
| base::DictionaryValue* entry = FindEntryByEditUrl(edit_url); |
| if (entry) { |
| entry->SetString("title.$t", |
| @@ -340,6 +414,13 @@ void FakeDriveService::AddResourceToDirectory( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<ResourceEntry> null; |
|
kinaba
2013/01/10 04:33:54
ditto.
satorux1
2013/01/10 04:41:33
Done.
|
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, base::Bind(callback, GDATA_NO_CONNECTION)); |
| + return; |
| + } |
| + |
| base::DictionaryValue* entry = FindEntryByEditUrl(edit_url); |
| if (entry) { |
| base::ListValue* links = NULL; |
| @@ -381,6 +462,13 @@ void FakeDriveService::RemoveResourceFromDirectory( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<ResourceEntry> null; |
|
kinaba
2013/01/10 04:33:54
ditto.
satorux1
2013/01/10 04:41:33
Done.
|
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, base::Bind(callback, GDATA_NO_CONNECTION)); |
| + return; |
| + } |
| + |
| base::DictionaryValue* entry = FindEntryByResourceId(resource_id); |
| if (entry) { |
| base::ListValue* links = NULL; |
| @@ -414,6 +502,16 @@ void FakeDriveService::AddNewDirectory( |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| DCHECK(!callback.is_null()); |
| + if (offline_) { |
| + scoped_ptr<ResourceEntry> null; |
| + MessageLoop::current()->PostTask( |
| + FROM_HERE, |
| + base::Bind(callback, |
| + GDATA_NO_CONNECTION, |
| + base::Passed(&null))); |
| + return; |
| + } |
| + |
| // If the parent content URL is not empty, the parent should exist. |
| if (!parent_content_url.is_empty()) { |
| base::DictionaryValue* parent_entry = |
| @@ -590,6 +688,8 @@ base::DictionaryValue* FakeDriveService::FindEntryByContentUrl( |
| } |
| std::string FakeDriveService::GetNewResourceId() { |
| + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| + |
| ++resource_id_count_; |
| return base::StringPrintf("resource_id_%d", resource_id_count_); |
| } |