| 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/media_galleries/linux/mtp_device_task_helper.h" | 5 #include "chrome/browser/media_galleries/linux/mtp_device_task_helper.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/numerics/safe_conversions.h" | 10 #include "base/numerics/safe_conversions.h" |
| (...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 131 return HandleDeviceError(request.error_callback, | 131 return HandleDeviceError(request.error_callback, |
| 132 base::File::FILE_ERROR_FAILED); | 132 base::File::FILE_ERROR_FAILED); |
| 133 } | 133 } |
| 134 | 134 |
| 135 GetMediaTransferProtocolManager()->GetFileInfo( | 135 GetMediaTransferProtocolManager()->GetFileInfo( |
| 136 device_handle_, request.file_id, | 136 device_handle_, request.file_id, |
| 137 base::Bind(&MTPDeviceTaskHelper::OnGetFileInfoToReadBytes, | 137 base::Bind(&MTPDeviceTaskHelper::OnGetFileInfoToReadBytes, |
| 138 weak_ptr_factory_.GetWeakPtr(), request)); | 138 weak_ptr_factory_.GetWeakPtr(), request)); |
| 139 } | 139 } |
| 140 | 140 |
| 141 void MTPDeviceTaskHelper::RenameObject( |
| 142 const uint32 object_id, |
| 143 const std::string& new_name, |
| 144 const RenameObjectSuccessCallback& success_callback, |
| 145 const ErrorCallback& error_callback) { |
| 146 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
| 147 |
| 148 GetMediaTransferProtocolManager()->RenameObject( |
| 149 device_handle_, object_id, new_name, |
| 150 base::Bind(&MTPDeviceTaskHelper::OnRenameObject, |
| 151 weak_ptr_factory_.GetWeakPtr(), success_callback, |
| 152 error_callback)); |
| 153 } |
| 154 |
| 141 // TODO(yawano) storage_name is not used, delete it. | 155 // TODO(yawano) storage_name is not used, delete it. |
| 142 void MTPDeviceTaskHelper::CopyFileFromLocal( | 156 void MTPDeviceTaskHelper::CopyFileFromLocal( |
| 143 const std::string& storage_name, | 157 const std::string& storage_name, |
| 144 const int source_file_descriptor, | 158 const int source_file_descriptor, |
| 145 const uint32 parent_id, | 159 const uint32 parent_id, |
| 146 const std::string& file_name, | 160 const std::string& file_name, |
| 147 const CopyFileFromLocalSuccessCallback& success_callback, | 161 const CopyFileFromLocalSuccessCallback& success_callback, |
| 148 const ErrorCallback& error_callback) { | 162 const ErrorCallback& error_callback) { |
| 149 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); | 163 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
| 150 | 164 |
| (...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 291 | 305 |
| 292 CHECK_LE(base::checked_cast<int>(data.length()), request.buf_len); | 306 CHECK_LE(base::checked_cast<int>(data.length()), request.buf_len); |
| 293 std::copy(data.begin(), data.end(), request.buf->data()); | 307 std::copy(data.begin(), data.end(), request.buf->data()); |
| 294 | 308 |
| 295 content::BrowserThread::PostTask(content::BrowserThread::IO, | 309 content::BrowserThread::PostTask(content::BrowserThread::IO, |
| 296 FROM_HERE, | 310 FROM_HERE, |
| 297 base::Bind(request.success_callback, | 311 base::Bind(request.success_callback, |
| 298 file_info, data.length())); | 312 file_info, data.length())); |
| 299 } | 313 } |
| 300 | 314 |
| 315 void MTPDeviceTaskHelper::OnRenameObject( |
| 316 const RenameObjectSuccessCallback& success_callback, |
| 317 const ErrorCallback& error_callback, |
| 318 const bool error) const { |
| 319 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
| 320 if (error) { |
| 321 content::BrowserThread::PostTask( |
| 322 content::BrowserThread::IO, FROM_HERE, |
| 323 base::Bind(error_callback, base::File::FILE_ERROR_FAILED)); |
| 324 return; |
| 325 } |
| 326 |
| 327 content::BrowserThread::PostTask(content::BrowserThread::IO, FROM_HERE, |
| 328 success_callback); |
| 329 } |
| 330 |
| 301 void MTPDeviceTaskHelper::OnCopyFileFromLocal( | 331 void MTPDeviceTaskHelper::OnCopyFileFromLocal( |
| 302 const CopyFileFromLocalSuccessCallback& success_callback, | 332 const CopyFileFromLocalSuccessCallback& success_callback, |
| 303 const ErrorCallback& error_callback, | 333 const ErrorCallback& error_callback, |
| 304 const bool error) const { | 334 const bool error) const { |
| 305 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); | 335 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
| 306 if (error) { | 336 if (error) { |
| 307 content::BrowserThread::PostTask( | 337 content::BrowserThread::PostTask( |
| 308 content::BrowserThread::IO, FROM_HERE, | 338 content::BrowserThread::IO, FROM_HERE, |
| 309 base::Bind(error_callback, base::File::FILE_ERROR_FAILED)); | 339 base::Bind(error_callback, base::File::FILE_ERROR_FAILED)); |
| 310 return; | 340 return; |
| 311 } | 341 } |
| 312 | 342 |
| 313 content::BrowserThread::PostTask(content::BrowserThread::IO, FROM_HERE, | 343 content::BrowserThread::PostTask(content::BrowserThread::IO, FROM_HERE, |
| 314 base::Bind(success_callback)); | 344 success_callback); |
| 315 } | 345 } |
| 316 | 346 |
| 317 void MTPDeviceTaskHelper::OnDeleteObject( | 347 void MTPDeviceTaskHelper::OnDeleteObject( |
| 318 const DeleteObjectSuccessCallback& success_callback, | 348 const DeleteObjectSuccessCallback& success_callback, |
| 319 const ErrorCallback& error_callback, | 349 const ErrorCallback& error_callback, |
| 320 const bool error) const { | 350 const bool error) const { |
| 321 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); | 351 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
| 322 if (error) { | 352 if (error) { |
| 323 content::BrowserThread::PostTask( | 353 content::BrowserThread::PostTask( |
| 324 content::BrowserThread::IO, FROM_HERE, | 354 content::BrowserThread::IO, FROM_HERE, |
| 325 base::Bind(error_callback, base::File::FILE_ERROR_FAILED)); | 355 base::Bind(error_callback, base::File::FILE_ERROR_FAILED)); |
| 326 return; | 356 return; |
| 327 } | 357 } |
| 328 | 358 |
| 329 content::BrowserThread::PostTask(content::BrowserThread::IO, FROM_HERE, | 359 content::BrowserThread::PostTask(content::BrowserThread::IO, FROM_HERE, |
| 330 base::Bind(success_callback)); | 360 base::Bind(success_callback)); |
| 331 } | 361 } |
| 332 | 362 |
| 333 void MTPDeviceTaskHelper::HandleDeviceError( | 363 void MTPDeviceTaskHelper::HandleDeviceError( |
| 334 const ErrorCallback& error_callback, | 364 const ErrorCallback& error_callback, |
| 335 base::File::Error error) const { | 365 base::File::Error error) const { |
| 336 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); | 366 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
| 337 content::BrowserThread::PostTask(content::BrowserThread::IO, | 367 content::BrowserThread::PostTask(content::BrowserThread::IO, |
| 338 FROM_HERE, | 368 FROM_HERE, |
| 339 base::Bind(error_callback, error)); | 369 base::Bind(error_callback, error)); |
| 340 } | 370 } |
| OLD | NEW |