OLD | NEW |
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 "chrome/browser/sync_file_system/drive_file_sync_client.h" | 5 #include "chrome/browser/sync_file_system/drive_file_sync_client.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <functional> | 8 #include <functional> |
9 #include <sstream> | 9 #include <sstream> |
10 #include <string> | 10 #include <string> |
11 | 11 |
12 #include "base/string_util.h" | 12 #include "base/string_util.h" |
13 #include "base/utf_string_conversions.h" | 13 #include "base/utf_string_conversions.h" |
14 #include "base/values.h" | 14 #include "base/values.h" |
| 15 #include "chrome/browser/google_apis/drive_api_parser.h" |
15 #include "chrome/browser/google_apis/drive_uploader.h" | 16 #include "chrome/browser/google_apis/drive_uploader.h" |
16 #include "chrome/browser/google_apis/gdata_wapi_service.h" | 17 #include "chrome/browser/google_apis/gdata_wapi_service.h" |
17 #include "chrome/browser/google_apis/gdata_wapi_url_generator.h" | 18 #include "chrome/browser/google_apis/gdata_wapi_url_generator.h" |
18 #include "chrome/browser/profiles/profile.h" | 19 #include "chrome/browser/profiles/profile.h" |
19 #include "chrome/browser/sync_file_system/drive_file_sync_util.h" | 20 #include "chrome/browser/sync_file_system/drive_file_sync_util.h" |
20 #include "chrome/common/extensions/extension.h" | 21 #include "chrome/common/extensions/extension.h" |
21 #include "extensions/common/constants.h" | 22 #include "extensions/common/constants.h" |
22 #include "net/base/escape.h" | 23 #include "net/base/escape.h" |
23 #include "net/base/mime_util.h" | 24 #include "net/base/mime_util.h" |
24 | 25 |
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
272 | 273 |
273 if (error == google_apis::HTTP_FOUND) { | 274 if (error == google_apis::HTTP_FOUND) { |
274 error = google_apis::HTTP_CREATED; | 275 error = google_apis::HTTP_CREATED; |
275 } | 276 } |
276 callback.Run(error, entry->resource_id()); | 277 callback.Run(error, entry->resource_id()); |
277 } | 278 } |
278 | 279 |
279 void DriveFileSyncClient::GetLargestChangeStamp( | 280 void DriveFileSyncClient::GetLargestChangeStamp( |
280 const ChangeStampCallback& callback) { | 281 const ChangeStampCallback& callback) { |
281 DCHECK(CalledOnValidThread()); | 282 DCHECK(CalledOnValidThread()); |
282 DVLOG(2) << "Getting largest changestamp"; | 283 DVLOG(2) << "Getting largest change id"; |
283 | 284 |
284 drive_service_->GetAccountMetadata( | 285 drive_service_->GetAboutResource( |
285 base::Bind(&DriveFileSyncClient::DidGetAccountMetadata, | 286 base::Bind(&DriveFileSyncClient::DidGetAboutResource, |
286 AsWeakPtr(), callback)); | 287 AsWeakPtr(), callback)); |
287 } | 288 } |
288 | 289 |
289 void DriveFileSyncClient::GetResourceEntry( | 290 void DriveFileSyncClient::GetResourceEntry( |
290 const std::string& resource_id, | 291 const std::string& resource_id, |
291 const ResourceEntryCallback& callback) { | 292 const ResourceEntryCallback& callback) { |
292 DCHECK(CalledOnValidThread()); | 293 DCHECK(CalledOnValidThread()); |
293 DVLOG(2) << "Getting ResourceEntry for: " << resource_id; | 294 DVLOG(2) << "Getting ResourceEntry for: " << resource_id; |
294 | 295 |
295 drive_service_->GetResourceEntry( | 296 drive_service_->GetResourceEntry( |
296 resource_id, | 297 resource_id, |
297 base::Bind(&DriveFileSyncClient::DidGetResourceEntry, | 298 base::Bind(&DriveFileSyncClient::DidGetResourceEntry, |
298 AsWeakPtr(), callback)); | 299 AsWeakPtr(), callback)); |
299 } | 300 } |
300 | 301 |
301 void DriveFileSyncClient::DidGetAccountMetadata( | 302 void DriveFileSyncClient::DidGetAboutResource( |
302 const ChangeStampCallback& callback, | 303 const ChangeStampCallback& callback, |
303 google_apis::GDataErrorCode error, | 304 google_apis::GDataErrorCode error, |
304 scoped_ptr<google_apis::AccountMetadata> metadata) { | 305 scoped_ptr<google_apis::AboutResource> about_resource) { |
305 DCHECK(CalledOnValidThread()); | 306 DCHECK(CalledOnValidThread()); |
306 | 307 |
307 int64 largest_changestamp = 0; | 308 int64 largest_change_id = 0; |
308 if (error == google_apis::HTTP_SUCCESS) { | 309 if (error == google_apis::HTTP_SUCCESS) { |
309 DCHECK(metadata); | 310 DCHECK(about_resource); |
310 largest_changestamp = metadata->largest_changestamp(); | 311 largest_change_id = about_resource->largest_change_id(); |
311 DVLOG(2) << "Got largest changestamp: " << largest_changestamp; | 312 DVLOG(2) << "Got largest change id: " << largest_change_id; |
312 } else { | 313 } else { |
313 DVLOG(2) << "Error on getting largest changestamp: " << error; | 314 DVLOG(2) << "Error on getting largest change id: " << error; |
314 } | 315 } |
315 | 316 |
316 callback.Run(error, largest_changestamp); | 317 callback.Run(error, largest_change_id); |
317 } | 318 } |
318 | 319 |
319 void DriveFileSyncClient::SearchFilesInDirectory( | 320 void DriveFileSyncClient::SearchFilesInDirectory( |
320 const std::string& directory_resource_id, | 321 const std::string& directory_resource_id, |
321 const std::string& search_query, | 322 const std::string& search_query, |
322 const ResourceListCallback& callback) { | 323 const ResourceListCallback& callback) { |
323 DCHECK(CalledOnValidThread()); | 324 DCHECK(CalledOnValidThread()); |
324 DVLOG(2) << "Searching resources in the directory [" << directory_resource_id | 325 DVLOG(2) << "Searching resources in the directory [" << directory_resource_id |
325 << "] with query [" << search_query << "]"; | 326 << "] with query [" << search_query << "]"; |
326 | 327 |
(...skipping 536 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
863 DVLOG(2) << "Error on deleting file: " << error; | 864 DVLOG(2) << "Error on deleting file: " << error; |
864 callback.Run(error); | 865 callback.Run(error); |
865 return; | 866 return; |
866 } | 867 } |
867 | 868 |
868 DVLOG(2) << "Deletion completed"; | 869 DVLOG(2) << "Deletion completed"; |
869 DeleteEntriesForEnsuringTitleUniqueness(entries.Pass(), callback); | 870 DeleteEntriesForEnsuringTitleUniqueness(entries.Pass(), callback); |
870 } | 871 } |
871 | 872 |
872 } // namespace sync_file_system | 873 } // namespace sync_file_system |
OLD | NEW |