Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(357)

Side by Side Diff: chrome/browser/media_galleries/linux/mtp_device_task_helper.cc

Issue 1007173003: Implement MoveFileLocal (with rename operation). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698