| 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/chromeos/drive/file_system/copy_operation.h" | 5 #include "chrome/browser/chromeos/drive/file_system/copy_operation.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/file_util.h" | 9 #include "base/file_util.h" |
| 10 #include "base/task_runner_util.h" | 10 #include "base/task_runner_util.h" |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 111 break; | 111 break; |
| 112 case FILE_ERROR_NOT_FOUND: | 112 case FILE_ERROR_NOT_FOUND: |
| 113 break; | 113 break; |
| 114 default: | 114 default: |
| 115 return error; | 115 return error; |
| 116 } | 116 } |
| 117 | 117 |
| 118 // If the cache file is not present and the entry exists on the server, | 118 // If the cache file is not present and the entry exists on the server, |
| 119 // server side copy should be used. | 119 // server side copy should be used. |
| 120 FileCacheEntry cache_entry; | 120 FileCacheEntry cache_entry; |
| 121 cache->GetCacheEntry(params->src_entry.local_id(), &cache_entry); | 121 error = cache->GetCacheEntry(params->src_entry.local_id(), &cache_entry); |
| 122 if (error != FILE_ERROR_OK && error != FILE_ERROR_NOT_FOUND) |
| 123 return error; |
| 122 if (!cache_entry.is_present() && !params->src_entry.resource_id().empty()) { | 124 if (!cache_entry.is_present() && !params->src_entry.resource_id().empty()) { |
| 123 *should_copy_on_server = true; | 125 *should_copy_on_server = true; |
| 124 return FILE_ERROR_OK; | 126 return FILE_ERROR_OK; |
| 125 } | 127 } |
| 126 | 128 |
| 127 // Copy locally. | 129 // Copy locally. |
| 128 ResourceEntry entry; | 130 ResourceEntry entry; |
| 129 const int64 now = base::Time::Now().ToInternalValue(); | 131 const int64 now = base::Time::Now().ToInternalValue(); |
| 130 entry.set_title(params->dest_file_path.BaseName().AsUTF8Unsafe()); | 132 entry.set_title(params->dest_file_path.BaseName().AsUTF8Unsafe()); |
| 131 entry.set_parent_local_id(params->parent_entry.local_id()); | 133 entry.set_parent_local_id(params->parent_entry.local_id()); |
| (...skipping 448 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 580 | 582 |
| 581 if (error == FILE_ERROR_OK) { | 583 if (error == FILE_ERROR_OK) { |
| 582 observer_->OnDirectoryChangedByOperation(remote_dest_path.DirName()); | 584 observer_->OnDirectoryChangedByOperation(remote_dest_path.DirName()); |
| 583 observer_->OnEntryUpdatedByOperation(*local_id); | 585 observer_->OnEntryUpdatedByOperation(*local_id); |
| 584 } | 586 } |
| 585 callback.Run(error); | 587 callback.Run(error); |
| 586 } | 588 } |
| 587 | 589 |
| 588 } // namespace file_system | 590 } // namespace file_system |
| 589 } // namespace drive | 591 } // namespace drive |
| OLD | NEW |