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

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

Issue 304093002: [SyncFS] Check SyncEngine's availability (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/sync_engine.h" 5 #include "chrome/browser/sync_file_system/drive_backend/sync_engine.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/metrics/histogram.h" 10 #include "base/metrics/histogram.h"
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 public: 64 public:
65 WorkerObserver(base::SequencedTaskRunner* ui_task_runner, 65 WorkerObserver(base::SequencedTaskRunner* ui_task_runner,
66 base::WeakPtr<SyncEngine> sync_engine) 66 base::WeakPtr<SyncEngine> sync_engine)
67 : ui_task_runner_(ui_task_runner), 67 : ui_task_runner_(ui_task_runner),
68 sync_engine_(sync_engine) {} 68 sync_engine_(sync_engine) {}
69 69
70 virtual ~WorkerObserver() {} 70 virtual ~WorkerObserver() {}
71 71
72 virtual void OnPendingFileListUpdated(int item_count) OVERRIDE { 72 virtual void OnPendingFileListUpdated(int item_count) OVERRIDE {
73 if (ui_task_runner_->RunsTasksOnCurrentThread()) { 73 if (ui_task_runner_->RunsTasksOnCurrentThread()) {
74 sync_engine_->OnPendingFileListUpdated(item_count); 74 if (sync_engine_)
75 sync_engine_->OnPendingFileListUpdated(item_count);
75 return; 76 return;
76 } 77 }
77 78
78 ui_task_runner_->PostTask( 79 ui_task_runner_->PostTask(
79 FROM_HERE, 80 FROM_HERE,
80 base::Bind(&SyncEngine::OnPendingFileListUpdated, 81 base::Bind(&SyncEngine::OnPendingFileListUpdated,
81 sync_engine_, 82 sync_engine_,
82 item_count)); 83 item_count));
83 } 84 }
84 85
85 virtual void OnFileStatusChanged(const fileapi::FileSystemURL& url, 86 virtual void OnFileStatusChanged(const fileapi::FileSystemURL& url,
86 SyncFileStatus file_status, 87 SyncFileStatus file_status,
87 SyncAction sync_action, 88 SyncAction sync_action,
88 SyncDirection direction) OVERRIDE { 89 SyncDirection direction) OVERRIDE {
89 if (ui_task_runner_->RunsTasksOnCurrentThread()) { 90 if (ui_task_runner_->RunsTasksOnCurrentThread()) {
90 sync_engine_->OnFileStatusChanged( 91 if (sync_engine_)
91 url, file_status, sync_action, direction); 92 sync_engine_->OnFileStatusChanged(
93 url, file_status, sync_action, direction);
92 return; 94 return;
93 } 95 }
94 96
95 ui_task_runner_->PostTask( 97 ui_task_runner_->PostTask(
96 FROM_HERE, 98 FROM_HERE,
97 base::Bind(&SyncEngine::OnFileStatusChanged, 99 base::Bind(&SyncEngine::OnFileStatusChanged,
98 sync_engine_, 100 sync_engine_,
99 url, file_status, sync_action, direction)); 101 url, file_status, sync_action, direction));
100 } 102 }
101 103
102 virtual void UpdateServiceState(RemoteServiceState state, 104 virtual void UpdateServiceState(RemoteServiceState state,
103 const std::string& description) OVERRIDE { 105 const std::string& description) OVERRIDE {
104 if (ui_task_runner_->RunsTasksOnCurrentThread()) { 106 if (ui_task_runner_->RunsTasksOnCurrentThread()) {
105 sync_engine_->UpdateServiceState(state, description); 107 if (sync_engine_)
108 sync_engine_->UpdateServiceState(state, description);
106 return; 109 return;
107 } 110 }
108 111
109 ui_task_runner_->PostTask( 112 ui_task_runner_->PostTask(
110 FROM_HERE, 113 FROM_HERE,
111 base::Bind(&SyncEngine::UpdateServiceState, 114 base::Bind(&SyncEngine::UpdateServiceState,
112 sync_engine_, state, description)); 115 sync_engine_, state, description));
113 } 116 }
114 117
115 private: 118 private:
(...skipping 434 matching lines...) Expand 10 before | Expand all | Expand 10 after
550 tracker.tracker_kind() == TRACKER_KIND_APP_ROOT; 553 tracker.tracker_kind() == TRACKER_KIND_APP_ROOT;
551 if (is_app_enabled && !is_app_root_tracker_enabled) 554 if (is_app_enabled && !is_app_root_tracker_enabled)
552 EnableOrigin(origin, base::Bind(&EmptyStatusCallback)); 555 EnableOrigin(origin, base::Bind(&EmptyStatusCallback));
553 else if (!is_app_enabled && is_app_root_tracker_enabled) 556 else if (!is_app_enabled && is_app_root_tracker_enabled)
554 DisableOrigin(origin, base::Bind(&EmptyStatusCallback)); 557 DisableOrigin(origin, base::Bind(&EmptyStatusCallback));
555 } 558 }
556 } 559 }
557 560
558 } // namespace drive_backend 561 } // namespace drive_backend
559 } // namespace sync_file_system 562 } // namespace sync_file_system
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698