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

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

Issue 318353002: [SyncFS] Create SyncWorkerInterface (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix build errors Created 6 years, 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/sync_worker.h" 5 #include "chrome/browser/sync_file_system/drive_backend/sync_worker.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/memory/weak_ptr.h"
11 #include "base/threading/sequenced_worker_pool.h"
12 #include "base/values.h"
13 #include "chrome/browser/drive/drive_api_service.h"
14 #include "chrome/browser/drive/drive_notification_manager.h"
15 #include "chrome/browser/drive/drive_notification_manager_factory.h"
16 #include "chrome/browser/drive/drive_service_interface.h" 10 #include "chrome/browser/drive/drive_service_interface.h"
17 #include "chrome/browser/drive/drive_uploader.h"
18 #include "chrome/browser/extensions/extension_service.h" 11 #include "chrome/browser/extensions/extension_service.h"
19 #include "chrome/browser/profiles/profile.h"
20 #include "chrome/browser/signin/profile_oauth2_token_service_factory.h"
21 #include "chrome/browser/signin/signin_manager_factory.h"
22 #include "chrome/browser/sync_file_system/drive_backend/callback_helper.h" 12 #include "chrome/browser/sync_file_system/drive_backend/callback_helper.h"
23 #include "chrome/browser/sync_file_system/drive_backend/conflict_resolver.h" 13 #include "chrome/browser/sync_file_system/drive_backend/conflict_resolver.h"
24 #include "chrome/browser/sync_file_system/drive_backend/drive_backend_constants. h" 14 #include "chrome/browser/sync_file_system/drive_backend/drive_backend_constants. h"
25 #include "chrome/browser/sync_file_system/drive_backend/list_changes_task.h" 15 #include "chrome/browser/sync_file_system/drive_backend/list_changes_task.h"
26 #include "chrome/browser/sync_file_system/drive_backend/local_to_remote_syncer.h " 16 #include "chrome/browser/sync_file_system/drive_backend/local_to_remote_syncer.h "
27 #include "chrome/browser/sync_file_system/drive_backend/metadata_database.h" 17 #include "chrome/browser/sync_file_system/drive_backend/metadata_database.h"
28 #include "chrome/browser/sync_file_system/drive_backend/register_app_task.h" 18 #include "chrome/browser/sync_file_system/drive_backend/register_app_task.h"
29 #include "chrome/browser/sync_file_system/drive_backend/remote_change_processor_ on_worker.h" 19 #include "chrome/browser/sync_file_system/drive_backend/remote_change_processor_ on_worker.h"
30 #include "chrome/browser/sync_file_system/drive_backend/remote_change_processor_ wrapper.h"
31 #include "chrome/browser/sync_file_system/drive_backend/remote_to_local_syncer.h " 20 #include "chrome/browser/sync_file_system/drive_backend/remote_to_local_syncer.h "
32 #include "chrome/browser/sync_file_system/drive_backend/sync_engine_context.h" 21 #include "chrome/browser/sync_file_system/drive_backend/sync_engine_context.h"
33 #include "chrome/browser/sync_file_system/drive_backend/sync_engine_initializer. h" 22 #include "chrome/browser/sync_file_system/drive_backend/sync_engine_initializer. h"
34 #include "chrome/browser/sync_file_system/drive_backend/sync_task.h" 23 #include "chrome/browser/sync_file_system/drive_backend/sync_task.h"
35 #include "chrome/browser/sync_file_system/drive_backend/uninstall_app_task.h" 24 #include "chrome/browser/sync_file_system/drive_backend/uninstall_app_task.h"
36 #include "chrome/browser/sync_file_system/file_status_observer.h"
37 #include "chrome/browser/sync_file_system/logger.h" 25 #include "chrome/browser/sync_file_system/logger.h"
38 #include "chrome/browser/sync_file_system/syncable_file_system_util.h" 26 #include "chrome/browser/sync_file_system/syncable_file_system_util.h"
39 #include "components/signin/core/browser/profile_oauth2_token_service.h"
40 #include "components/signin/core/browser/signin_manager.h"
41 #include "content/public/browser/browser_thread.h"
42 #include "extensions/browser/extension_system.h"
43 #include "extensions/browser/extension_system_provider.h"
44 #include "extensions/browser/extensions_browser_client.h"
45 #include "extensions/common/extension.h"
46 #include "google_apis/drive/drive_api_url_generator.h"
47 #include "google_apis/drive/gdata_wapi_url_generator.h"
48 #include "webkit/common/blob/scoped_file.h"
49 #include "webkit/common/fileapi/file_system_util.h" 27 #include "webkit/common/fileapi/file_system_util.h"
50 28
51 namespace sync_file_system { 29 namespace sync_file_system {
52 30
53 class RemoteChangeProcessor; 31 class RemoteChangeProcessor;
54 32
55 namespace drive_backend { 33 namespace drive_backend {
56 34
57 namespace { 35 namespace {
58 36
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after
284 MetadataDatabase* metadata_db = GetMetadataDatabase(); 262 MetadataDatabase* metadata_db = GetMetadataDatabase();
285 if (metadata_db && metadata_db->HasLowPriorityDirtyTracker()) { 263 if (metadata_db && metadata_db->HasLowPriorityDirtyTracker()) {
286 metadata_db->PromoteLowerPriorityTrackersToNormal(); 264 metadata_db->PromoteLowerPriorityTrackersToNormal();
287 FOR_EACH_OBSERVER( 265 FOR_EACH_OBSERVER(
288 Observer, 266 Observer,
289 observers_, 267 observers_,
290 OnPendingFileListUpdated(metadata_db->CountDirtyTracker())); 268 OnPendingFileListUpdated(metadata_db->CountDirtyTracker()));
291 } 269 }
292 } 270 }
293 271
294 SyncStatusCode SyncWorker::SetDefaultConflictResolutionPolicy(
295 ConflictResolutionPolicy policy) {
296 DCHECK(sequence_checker_.CalledOnValidSequencedThread());
297
298 default_conflict_resolution_policy_ = policy;
299 return SYNC_STATUS_OK;
300 }
301
302 SyncStatusCode SyncWorker::SetConflictResolutionPolicy(
303 const GURL& origin,
304 ConflictResolutionPolicy policy) {
305 NOTIMPLEMENTED();
306 default_conflict_resolution_policy_ = policy;
307 return SYNC_STATUS_OK;
308 }
309
310 ConflictResolutionPolicy SyncWorker::GetDefaultConflictResolutionPolicy()
311 const {
312 return default_conflict_resolution_policy_;
313 }
314
315 ConflictResolutionPolicy SyncWorker::GetConflictResolutionPolicy(
316 const GURL& origin) const {
317 NOTIMPLEMENTED();
318 return default_conflict_resolution_policy_;
319 }
320
321 void SyncWorker::ApplyLocalChange( 272 void SyncWorker::ApplyLocalChange(
322 const FileChange& local_change, 273 const FileChange& local_change,
323 const base::FilePath& local_path, 274 const base::FilePath& local_path,
324 const SyncFileMetadata& local_metadata, 275 const SyncFileMetadata& local_metadata,
325 const fileapi::FileSystemURL& url, 276 const fileapi::FileSystemURL& url,
326 const SyncStatusCallback& callback) { 277 const SyncStatusCallback& callback) {
327 DCHECK(sequence_checker_.CalledOnValidSequencedThread()); 278 DCHECK(sequence_checker_.CalledOnValidSequencedThread());
328 279
329 LocalToRemoteSyncer* syncer = new LocalToRemoteSyncer( 280 LocalToRemoteSyncer* syncer = new LocalToRemoteSyncer(
330 context_.get(), local_metadata, local_change, local_path, url); 281 context_.get(), local_metadata, local_change, local_path, url);
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
444 MetadataDatabase* SyncWorker::GetMetadataDatabase() { 395 MetadataDatabase* SyncWorker::GetMetadataDatabase() {
445 DCHECK(sequence_checker_.CalledOnValidSequencedThread()); 396 DCHECK(sequence_checker_.CalledOnValidSequencedThread());
446 return context_->GetMetadataDatabase(); 397 return context_->GetMetadataDatabase();
447 } 398 }
448 399
449 SyncTaskManager* SyncWorker::GetSyncTaskManager() { 400 SyncTaskManager* SyncWorker::GetSyncTaskManager() {
450 DCHECK(sequence_checker_.CalledOnValidSequencedThread()); 401 DCHECK(sequence_checker_.CalledOnValidSequencedThread());
451 return task_manager_.get(); 402 return task_manager_.get();
452 } 403 }
453 404
454 void SyncWorker::AddObserver(Observer* observer) {
455 observers_.AddObserver(observer);
456 }
457
458 void SyncWorker::DetachFromSequence() { 405 void SyncWorker::DetachFromSequence() {
459 context_->DetachFromSequence(); 406 context_->DetachFromSequence();
460 sequence_checker_.DetachFromSequence(); 407 sequence_checker_.DetachFromSequence();
461 } 408 }
462 409
410 void SyncWorker::AddObserver(Observer* observer) {
411 observers_.AddObserver(observer);
412 }
413
414 void SyncWorker::SetHasRefreshToken(bool has_refresh_token) {
415 has_refresh_token_ = has_refresh_token;
416 }
417
463 void SyncWorker::DoDisableApp(const std::string& app_id, 418 void SyncWorker::DoDisableApp(const std::string& app_id,
464 const SyncStatusCallback& callback) { 419 const SyncStatusCallback& callback) {
465 DCHECK(sequence_checker_.CalledOnValidSequencedThread()); 420 DCHECK(sequence_checker_.CalledOnValidSequencedThread());
466 421
467 if (GetMetadataDatabase()) { 422 if (GetMetadataDatabase()) {
468 GetMetadataDatabase()->DisableApp(app_id, callback); 423 GetMetadataDatabase()->DisableApp(app_id, callback);
469 } else { 424 } else {
470 context_->GetUITaskRunner()->PostTask( 425 context_->GetUITaskRunner()->PostTask(
471 FROM_HERE, base::Bind(callback, SYNC_STATUS_OK)); 426 FROM_HERE, base::Bind(callback, SYNC_STATUS_OK));
472 } 427 }
(...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after
787 "Service state changed: %d->%d: %s", 742 "Service state changed: %d->%d: %s",
788 old_state, GetCurrentState(), description.c_str()); 743 old_state, GetCurrentState(), description.c_str());
789 744
790 FOR_EACH_OBSERVER( 745 FOR_EACH_OBSERVER(
791 Observer, observers_, 746 Observer, observers_,
792 UpdateServiceState(GetCurrentState(), description)); 747 UpdateServiceState(GetCurrentState(), description));
793 } 748 }
794 749
795 } // namespace drive_backend 750 } // namespace drive_backend
796 } // namespace sync_file_system 751 } // namespace sync_file_system
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698