| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_backend_v1/api_util.h" | 5 #include "chrome/browser/sync_file_system/drive_backend_v1/api_util.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> |
| (...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 333 DCHECK(!resource_id.empty()); | 333 DCHECK(!resource_id.empty()); |
| 334 parent_type = PARENT_TYPE_ROOT_OR_EMPTY; | 334 parent_type = PARENT_TYPE_ROOT_OR_EMPTY; |
| 335 } else { | 335 } else { |
| 336 resource_id = parent_resource_id; | 336 resource_id = parent_resource_id; |
| 337 } | 337 } |
| 338 std::string title(directory_name); | 338 std::string title(directory_name); |
| 339 google_apis::ResourceEntry* entry = GetDocumentByTitleAndParent( | 339 google_apis::ResourceEntry* entry = GetDocumentByTitleAndParent( |
| 340 feed->entries(), title, resource_id, parent_type); | 340 feed->entries(), title, resource_id, parent_type); |
| 341 if (!entry) { | 341 if (!entry) { |
| 342 DVLOG(2) << "Directory not found. Creating: " << directory_name; | 342 DVLOG(2) << "Directory not found. Creating: " << directory_name; |
| 343 drive_service_->AddNewDirectory(resource_id, | 343 drive_service_->AddNewDirectory( |
| 344 directory_name, | 344 resource_id, |
| 345 base::Bind(&APIUtil::DidCreateDirectory, | 345 directory_name, |
| 346 AsWeakPtr(), | 346 drive::DriveServiceInterface::AddNewDirectoryOptions(), |
| 347 parent_resource_id, | 347 base::Bind(&APIUtil::DidCreateDirectory, |
| 348 title, | 348 AsWeakPtr(), |
| 349 callback)); | 349 parent_resource_id, |
| 350 title, |
| 351 callback)); |
| 350 return; | 352 return; |
| 351 } | 353 } |
| 352 DVLOG(2) << "Found Drive directory."; | 354 DVLOG(2) << "Found Drive directory."; |
| 353 | 355 |
| 354 // TODO(tzik): Handle error. | 356 // TODO(tzik): Handle error. |
| 355 DCHECK_EQ(google_apis::ENTRY_KIND_FOLDER, entry->kind()); | 357 DCHECK_EQ(google_apis::ENTRY_KIND_FOLDER, entry->kind()); |
| 356 DCHECK_EQ(directory_name, entry->title()); | 358 DCHECK_EQ(directory_name, entry->title()); |
| 357 | 359 |
| 358 if (entry->title() == GetSyncRootDirectoryName()) | 360 if (entry->title() == GetSyncRootDirectoryName()) |
| 359 EnsureSyncRootIsNotInMyDrive(entry->resource_id()); | 361 EnsureSyncRootIsNotInMyDrive(entry->resource_id()); |
| (...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 560 } | 562 } |
| 561 | 563 |
| 562 void APIUtil::CreateDirectory(const std::string& parent_resource_id, | 564 void APIUtil::CreateDirectory(const std::string& parent_resource_id, |
| 563 const std::string& title, | 565 const std::string& title, |
| 564 const ResourceIdCallback& callback) { | 566 const ResourceIdCallback& callback) { |
| 565 DCHECK(CalledOnValidThread()); | 567 DCHECK(CalledOnValidThread()); |
| 566 // TODO(kinuko): This will call EnsureTitleUniqueness and will delete | 568 // TODO(kinuko): This will call EnsureTitleUniqueness and will delete |
| 567 // directories if there're duplicated directories. This must be ok | 569 // directories if there're duplicated directories. This must be ok |
| 568 // for current design but we'll need to merge directories when we support | 570 // for current design but we'll need to merge directories when we support |
| 569 // 'real' directories. | 571 // 'real' directories. |
| 570 drive_service_->AddNewDirectory(parent_resource_id, | 572 drive_service_->AddNewDirectory( |
| 571 title, | 573 parent_resource_id, |
| 572 base::Bind(&APIUtil::DidCreateDirectory, | 574 title, |
| 573 AsWeakPtr(), | 575 drive::DriveServiceInterface::AddNewDirectoryOptions(), |
| 574 parent_resource_id, | 576 base::Bind(&APIUtil::DidCreateDirectory, |
| 575 title, | 577 AsWeakPtr(), |
| 576 callback)); | 578 parent_resource_id, |
| 579 title, |
| 580 callback)); |
| 577 } | 581 } |
| 578 | 582 |
| 579 void APIUtil::DeleteFile(const std::string& resource_id, | 583 void APIUtil::DeleteFile(const std::string& resource_id, |
| 580 const std::string& remote_file_md5, | 584 const std::string& remote_file_md5, |
| 581 const GDataErrorCallback& callback) { | 585 const GDataErrorCallback& callback) { |
| 582 DCHECK(CalledOnValidThread()); | 586 DCHECK(CalledOnValidThread()); |
| 583 DVLOG(2) << "Deleting file: " << resource_id; | 587 DVLOG(2) << "Deleting file: " << resource_id; |
| 584 | 588 |
| 585 // Load actual remote_file_md5 to check for conflict before deletion. | 589 // Load actual remote_file_md5 to check for conflict before deletion. |
| 586 if (!remote_file_md5.empty()) { | 590 if (!remote_file_md5.empty()) { |
| (...skipping 540 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1127 } | 1131 } |
| 1128 | 1132 |
| 1129 std::string APIUtil::GetRootResourceId() const { | 1133 std::string APIUtil::GetRootResourceId() const { |
| 1130 if (IsDriveAPIDisabled()) | 1134 if (IsDriveAPIDisabled()) |
| 1131 return drive_service_->GetRootResourceId(); | 1135 return drive_service_->GetRootResourceId(); |
| 1132 return root_resource_id_; | 1136 return root_resource_id_; |
| 1133 } | 1137 } |
| 1134 | 1138 |
| 1135 } // namespace drive_backend | 1139 } // namespace drive_backend |
| 1136 } // namespace sync_file_system | 1140 } // namespace sync_file_system |
| OLD | NEW |