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

Side by Side Diff: chrome/browser/sync_file_system/drive_backend/local_to_remote_syncer.cc

Issue 87463002: Only re-enable remote service if the task used the network. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased Created 7 years 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 | Annotate | Revision Log
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/sync_file_system/drive_backend/local_to_remote_syncer.h " 5 #include "chrome/browser/sync_file_system/drive_backend/local_to_remote_syncer.h "
6 6
7 #include "base/callback.h" 7 #include "base/callback.h"
8 #include "base/location.h" 8 #include "base/location.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/sequenced_task_runner.h" 10 #include "base/sequenced_task_runner.h"
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 // Non-conflicting local folder creation to existing remote folder. 261 // Non-conflicting local folder creation to existing remote folder.
262 DCHECK_EQ(FILE_KIND_FOLDER, synced_details.file_kind()); 262 DCHECK_EQ(FILE_KIND_FOLDER, synced_details.file_kind());
263 callback.Run(SYNC_STATUS_OK); 263 callback.Run(SYNC_STATUS_OK);
264 } 264 }
265 265
266 void LocalToRemoteSyncer::DeleteRemoteFile( 266 void LocalToRemoteSyncer::DeleteRemoteFile(
267 const SyncStatusCallback& callback) { 267 const SyncStatusCallback& callback) {
268 DCHECK(remote_file_tracker_); 268 DCHECK(remote_file_tracker_);
269 DCHECK(remote_file_tracker_->has_synced_details()); 269 DCHECK(remote_file_tracker_->has_synced_details());
270 270
271 set_used_network(true);
271 drive_service()->DeleteResource( 272 drive_service()->DeleteResource(
272 remote_file_tracker_->file_id(), 273 remote_file_tracker_->file_id(),
273 remote_file_tracker_->synced_details().etag(), 274 remote_file_tracker_->synced_details().etag(),
274 base::Bind(&LocalToRemoteSyncer::DidDeleteRemoteFile, 275 base::Bind(&LocalToRemoteSyncer::DidDeleteRemoteFile,
275 weak_ptr_factory_.GetWeakPtr(), 276 weak_ptr_factory_.GetWeakPtr(),
276 callback)); 277 callback));
277 } 278 }
278 279
279 void LocalToRemoteSyncer::DidDeleteRemoteFile( 280 void LocalToRemoteSyncer::DidDeleteRemoteFile(
280 const SyncStatusCallback& callback, 281 const SyncStatusCallback& callback,
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
313 314
314 void LocalToRemoteSyncer::DidGetMD5ForUpload( 315 void LocalToRemoteSyncer::DidGetMD5ForUpload(
315 const SyncStatusCallback& callback, 316 const SyncStatusCallback& callback,
316 const std::string& local_file_md5) { 317 const std::string& local_file_md5) {
317 if (local_file_md5 == remote_file_tracker_->synced_details().md5()) { 318 if (local_file_md5 == remote_file_tracker_->synced_details().md5()) {
318 // Local file is not changed. 319 // Local file is not changed.
319 callback.Run(SYNC_STATUS_OK); 320 callback.Run(SYNC_STATUS_OK);
320 return; 321 return;
321 } 322 }
322 323
324 set_used_network(true);
323 drive_uploader()->UploadExistingFile( 325 drive_uploader()->UploadExistingFile(
324 remote_file_tracker_->file_id(), 326 remote_file_tracker_->file_id(),
325 local_path_, 327 local_path_,
326 "application/octet_stream", 328 "application/octet_stream",
327 remote_file_tracker_->synced_details().etag(), 329 remote_file_tracker_->synced_details().etag(),
328 base::Bind(&LocalToRemoteSyncer::DidUploadExistingFile, 330 base::Bind(&LocalToRemoteSyncer::DidUploadExistingFile,
329 weak_ptr_factory_.GetWeakPtr(), 331 weak_ptr_factory_.GetWeakPtr(),
330 callback), 332 callback),
331 google_apis::ProgressCallback()); 333 google_apis::ProgressCallback());
332 } 334 }
(...skipping 11 matching lines...) Expand all
344 UpdateRemoteMetadata(callback); 346 UpdateRemoteMetadata(callback);
345 return; 347 return;
346 } 348 }
347 349
348 callback.Run(GDataErrorCodeToSyncStatusCode(error)); 350 callback.Run(GDataErrorCodeToSyncStatusCode(error));
349 } 351 }
350 352
351 void LocalToRemoteSyncer::UpdateRemoteMetadata( 353 void LocalToRemoteSyncer::UpdateRemoteMetadata(
352 const SyncStatusCallback& callback) { 354 const SyncStatusCallback& callback) {
353 DCHECK(remote_file_tracker_); 355 DCHECK(remote_file_tracker_);
356 set_used_network(true);
354 drive_service()->GetResourceEntry( 357 drive_service()->GetResourceEntry(
355 remote_file_tracker_->file_id(), 358 remote_file_tracker_->file_id(),
356 base::Bind(&LocalToRemoteSyncer::DidGetRemoteMetadata, 359 base::Bind(&LocalToRemoteSyncer::DidGetRemoteMetadata,
357 weak_ptr_factory_.GetWeakPtr(), 360 weak_ptr_factory_.GetWeakPtr(),
358 callback, 361 callback,
359 metadata_database()->GetLargestKnownChangeID())); 362 metadata_database()->GetLargestKnownChangeID()));
360 } 363 }
361 364
362 void LocalToRemoteSyncer::DidGetRemoteMetadata( 365 void LocalToRemoteSyncer::DidGetRemoteMetadata(
363 const SyncStatusCallback& callback, 366 const SyncStatusCallback& callback,
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
398 callback.Run(status); 401 callback.Run(status);
399 return; 402 return;
400 } 403 }
401 404
402 CreateRemoteFolder(callback); 405 CreateRemoteFolder(callback);
403 } 406 }
404 407
405 void LocalToRemoteSyncer::UploadNewFile(const SyncStatusCallback& callback) { 408 void LocalToRemoteSyncer::UploadNewFile(const SyncStatusCallback& callback) {
406 DCHECK(remote_parent_folder_tracker_); 409 DCHECK(remote_parent_folder_tracker_);
407 410
411 set_used_network(true);
408 base::FilePath title = fileapi::VirtualPath::BaseName(target_path_); 412 base::FilePath title = fileapi::VirtualPath::BaseName(target_path_);
409 drive_uploader()->UploadNewFile( 413 drive_uploader()->UploadNewFile(
410 remote_parent_folder_tracker_->file_id(), 414 remote_parent_folder_tracker_->file_id(),
411 local_path_, 415 local_path_,
412 title.AsUTF8Unsafe(), 416 title.AsUTF8Unsafe(),
413 GetMimeTypeFromTitle(title), 417 GetMimeTypeFromTitle(title),
414 base::Bind(&LocalToRemoteSyncer::DidUploadNewFile, 418 base::Bind(&LocalToRemoteSyncer::DidUploadNewFile,
415 weak_ptr_factory_.GetWeakPtr(), 419 weak_ptr_factory_.GetWeakPtr(),
416 callback, 420 callback,
417 metadata_database()->GetLargestKnownChangeID()), 421 metadata_database()->GetLargestKnownChangeID()),
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
548 drive::DriveUploaderInterface* LocalToRemoteSyncer::drive_uploader() { 552 drive::DriveUploaderInterface* LocalToRemoteSyncer::drive_uploader() {
549 return sync_context_->GetDriveUploader(); 553 return sync_context_->GetDriveUploader();
550 } 554 }
551 555
552 MetadataDatabase* LocalToRemoteSyncer::metadata_database() { 556 MetadataDatabase* LocalToRemoteSyncer::metadata_database() {
553 return sync_context_->GetMetadataDatabase(); 557 return sync_context_->GetMetadataDatabase();
554 } 558 }
555 559
556 } // namespace drive_backend 560 } // namespace drive_backend
557 } // namespace sync_file_system 561 } // namespace sync_file_system
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698