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

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: 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 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 // Non-conflicting local folder creation to existing remote folder. 218 // Non-conflicting local folder creation to existing remote folder.
219 DCHECK_EQ(FILE_KIND_FOLDER, synced_details.file_kind()); 219 DCHECK_EQ(FILE_KIND_FOLDER, synced_details.file_kind());
220 callback.Run(SYNC_STATUS_OK); 220 callback.Run(SYNC_STATUS_OK);
221 } 221 }
222 222
223 void LocalToRemoteSyncer::DeleteRemoteFile( 223 void LocalToRemoteSyncer::DeleteRemoteFile(
224 const SyncStatusCallback& callback) { 224 const SyncStatusCallback& callback) {
225 DCHECK(remote_file_tracker_); 225 DCHECK(remote_file_tracker_);
226 DCHECK(remote_file_tracker_->has_synced_details()); 226 DCHECK(remote_file_tracker_->has_synced_details());
227 227
228 set_used_network(true);
228 drive_service()->DeleteResource( 229 drive_service()->DeleteResource(
229 remote_file_tracker_->file_id(), 230 remote_file_tracker_->file_id(),
230 remote_file_tracker_->synced_details().etag(), 231 remote_file_tracker_->synced_details().etag(),
231 base::Bind(&LocalToRemoteSyncer::DidDeleteRemoteFile, 232 base::Bind(&LocalToRemoteSyncer::DidDeleteRemoteFile,
232 weak_ptr_factory_.GetWeakPtr(), 233 weak_ptr_factory_.GetWeakPtr(),
233 callback)); 234 callback));
234 } 235 }
235 236
236 void LocalToRemoteSyncer::DidDeleteRemoteFile( 237 void LocalToRemoteSyncer::DidDeleteRemoteFile(
237 const SyncStatusCallback& callback, 238 const SyncStatusCallback& callback,
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
270 271
271 void LocalToRemoteSyncer::DidGetMD5ForUpload( 272 void LocalToRemoteSyncer::DidGetMD5ForUpload(
272 const SyncStatusCallback& callback, 273 const SyncStatusCallback& callback,
273 const std::string& local_file_md5) { 274 const std::string& local_file_md5) {
274 if (local_file_md5 == remote_file_tracker_->synced_details().md5()) { 275 if (local_file_md5 == remote_file_tracker_->synced_details().md5()) {
275 // Local file is not changed. 276 // Local file is not changed.
276 callback.Run(SYNC_STATUS_OK); 277 callback.Run(SYNC_STATUS_OK);
277 return; 278 return;
278 } 279 }
279 280
281 set_used_network(true);
280 drive_uploader()->UploadExistingFile( 282 drive_uploader()->UploadExistingFile(
281 remote_file_tracker_->file_id(), 283 remote_file_tracker_->file_id(),
282 local_path_, 284 local_path_,
283 "application/octet_stream", 285 "application/octet_stream",
284 remote_file_tracker_->synced_details().etag(), 286 remote_file_tracker_->synced_details().etag(),
285 base::Bind(&LocalToRemoteSyncer::DidUploadExistingFile, 287 base::Bind(&LocalToRemoteSyncer::DidUploadExistingFile,
286 weak_ptr_factory_.GetWeakPtr(), 288 weak_ptr_factory_.GetWeakPtr(),
287 callback), 289 callback),
288 google_apis::ProgressCallback()); 290 google_apis::ProgressCallback());
289 } 291 }
(...skipping 11 matching lines...) Expand all
301 UpdateRemoteMetadata(callback); 303 UpdateRemoteMetadata(callback);
302 return; 304 return;
303 } 305 }
304 306
305 callback.Run(GDataErrorCodeToSyncStatusCode(error)); 307 callback.Run(GDataErrorCodeToSyncStatusCode(error));
306 } 308 }
307 309
308 void LocalToRemoteSyncer::UpdateRemoteMetadata( 310 void LocalToRemoteSyncer::UpdateRemoteMetadata(
309 const SyncStatusCallback& callback) { 311 const SyncStatusCallback& callback) {
310 DCHECK(remote_file_tracker_); 312 DCHECK(remote_file_tracker_);
313 set_used_network(true);
311 drive_service()->GetResourceEntry( 314 drive_service()->GetResourceEntry(
312 remote_file_tracker_->file_id(), 315 remote_file_tracker_->file_id(),
313 base::Bind(&LocalToRemoteSyncer::DidGetRemoteMetadata, 316 base::Bind(&LocalToRemoteSyncer::DidGetRemoteMetadata,
314 weak_ptr_factory_.GetWeakPtr(), 317 weak_ptr_factory_.GetWeakPtr(),
315 callback, 318 callback,
316 metadata_database()->GetLargestKnownChangeID())); 319 metadata_database()->GetLargestKnownChangeID()));
317 } 320 }
318 321
319 void LocalToRemoteSyncer::DidGetRemoteMetadata( 322 void LocalToRemoteSyncer::DidGetRemoteMetadata(
320 const SyncStatusCallback& callback, 323 const SyncStatusCallback& callback,
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
355 callback.Run(status); 358 callback.Run(status);
356 return; 359 return;
357 } 360 }
358 361
359 CreateRemoteFolder(callback); 362 CreateRemoteFolder(callback);
360 } 363 }
361 364
362 void LocalToRemoteSyncer::UploadNewFile(const SyncStatusCallback& callback) { 365 void LocalToRemoteSyncer::UploadNewFile(const SyncStatusCallback& callback) {
363 DCHECK(remote_parent_folder_tracker_); 366 DCHECK(remote_parent_folder_tracker_);
364 367
368 set_used_network(true);
365 base::FilePath title = fileapi::VirtualPath::BaseName(url_.path()); 369 base::FilePath title = fileapi::VirtualPath::BaseName(url_.path());
366 drive_uploader()->UploadNewFile( 370 drive_uploader()->UploadNewFile(
367 remote_parent_folder_tracker_->file_id(), 371 remote_parent_folder_tracker_->file_id(),
368 local_path_, 372 local_path_,
369 title.AsUTF8Unsafe(), 373 title.AsUTF8Unsafe(),
370 GetMimeTypeFromTitle(title), 374 GetMimeTypeFromTitle(title),
371 base::Bind(&LocalToRemoteSyncer::DidUploadNewFile, 375 base::Bind(&LocalToRemoteSyncer::DidUploadNewFile,
372 weak_ptr_factory_.GetWeakPtr(), 376 weak_ptr_factory_.GetWeakPtr(),
373 callback, 377 callback,
374 metadata_database()->GetLargestKnownChangeID()), 378 metadata_database()->GetLargestKnownChangeID()),
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
440 drive::DriveUploaderInterface* LocalToRemoteSyncer::drive_uploader() { 444 drive::DriveUploaderInterface* LocalToRemoteSyncer::drive_uploader() {
441 return sync_context_->GetDriveUploader(); 445 return sync_context_->GetDriveUploader();
442 } 446 }
443 447
444 MetadataDatabase* LocalToRemoteSyncer::metadata_database() { 448 MetadataDatabase* LocalToRemoteSyncer::metadata_database() {
445 return sync_context_->GetMetadataDatabase(); 449 return sync_context_->GetMetadataDatabase();
446 } 450 }
447 451
448 } // namespace drive_backend 452 } // namespace drive_backend
449 } // namespace sync_file_system 453 } // namespace sync_file_system
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698