Chromium Code Reviews| Index: components/sync/driver/glue/sync_backend_host_impl.cc |
| diff --git a/components/sync/driver/glue/sync_backend_host_impl.cc b/components/sync/driver/glue/sync_backend_host_impl.cc |
| index 6f98bf66eb473bebcb4fa8562dc0340dbf03fcdc..0c8c435d24ec9bc47d9995187e0faf31e6bcc577 100644 |
| --- a/components/sync/driver/glue/sync_backend_host_impl.cc |
| +++ b/components/sync/driver/glue/sync_backend_host_impl.cc |
| @@ -23,12 +23,12 @@ |
| #include "components/sync/driver/glue/sync_backend_registrar.h" |
| #include "components/sync/driver/sync_client.h" |
| #include "components/sync/driver/sync_driver_switches.h" |
| -#include "components/sync/driver/sync_frontend.h" |
| #include "components/sync/engine/activation_context.h" |
| #include "components/sync/engine/engine_components_factory.h" |
| #include "components/sync/engine/engine_components_factory_impl.h" |
| #include "components/sync/engine/events/protocol_event.h" |
| #include "components/sync/engine/net/http_bridge.h" |
| +#include "components/sync/engine/sync_engine_host.h" |
| #include "components/sync/engine/sync_manager_factory.h" |
| #include "components/sync/engine/sync_string_conversions.h" |
| #include "components/sync/syncable/base_transaction.h" |
| @@ -50,24 +50,20 @@ SyncBackendHostImpl::SyncBackendHostImpl( |
| const base::FilePath& sync_folder) |
| : sync_client_(sync_client), |
| name_(name), |
| - initialized_(false), |
| sync_prefs_(sync_prefs), |
| - frontend_(nullptr), |
| - cached_passphrase_type_(PassphraseType::IMPLICIT_PASSPHRASE), |
| invalidator_(invalidator), |
| - invalidation_handler_registered_(false), |
| weak_ptr_factory_(this) { |
| core_ = new SyncBackendHostCore(name_, sync_folder, |
| weak_ptr_factory_.GetWeakPtr()); |
| } |
| SyncBackendHostImpl::~SyncBackendHostImpl() { |
| - DCHECK(!core_.get() && !frontend_) << "Must call Shutdown before destructor."; |
| + DCHECK(!core_.get() && !host_) << "Must call Shutdown before destructor."; |
| DCHECK(!registrar_.get()); |
| } |
| void SyncBackendHostImpl::Initialize( |
| - SyncFrontend* frontend, |
| + SyncEngineHost* host, |
| scoped_refptr<base::SingleThreadTaskRunner> sync_task_runner, |
| const WeakHandle<JsEventHandler>& event_handler, |
| const GURL& sync_service_url, |
| @@ -88,8 +84,8 @@ void SyncBackendHostImpl::Initialize( |
| name_, base::Bind(&SyncClient::CreateModelWorkerForGroup, |
| base::Unretained(sync_client_))); |
| - DCHECK(frontend); |
| - frontend_ = frontend; |
| + DCHECK(host); |
| + host_ = host; |
| std::vector<scoped_refptr<ModelSafeWorker>> workers; |
| registrar_->GetWorkers(&workers); |
| @@ -168,7 +164,7 @@ void SyncBackendHostImpl::SetEncryptionPassphrase(const std::string& passphrase, |
| // We should never be called with an empty passphrase. |
| DCHECK(!passphrase.empty()); |
| - // This should only be called by the frontend. |
| + // This should only be called by the host. |
|
skym
2016/12/02 20:54:54
Do we really need this comment? This isn't verifyi
maxbogue
2016/12/02 23:59:27
Removed it. They aren't allowed to be called from
|
| DCHECK(thread_checker_.CalledOnValidThread()); |
|
skym
2016/12/02 20:54:54
Is it just me, or is it a bit odd that these Calle
maxbogue
2016/12/02 23:59:27
No you're right. Moved to the top.
|
| // SetEncryptionPassphrase should never be called if we are currently |
| @@ -193,7 +189,7 @@ bool SyncBackendHostImpl::SetDecryptionPassphrase( |
| // We should never be called with an empty passphrase. |
| DCHECK(!passphrase.empty()); |
| - // This should only be called by the frontend. |
| + // This should only be called by the host. |
|
skym
2016/12/02 20:54:54
Same
maxbogue
2016/12/02 23:59:27
Done.
|
| DCHECK(thread_checker_.CalledOnValidThread()); |
|
skym
2016/12/02 20:54:54
Same
maxbogue
2016/12/02 23:59:27
Done.
|
| // This should only be called when we have cached pending keys. |
| @@ -228,8 +224,8 @@ void SyncBackendHostImpl::StopSyncingForShutdown() { |
| // Stop getting messages from the sync thread. |
| weak_ptr_factory_.InvalidateWeakPtrs(); |
| - // Immediately stop sending messages to the frontend. |
| - frontend_ = nullptr; |
| + // Immediately stop sending messages to the host. |
| + host_ = nullptr; |
| registrar_->RequestWorkerStopOnUIThread(); |
| @@ -237,9 +233,9 @@ void SyncBackendHostImpl::StopSyncingForShutdown() { |
| } |
| void SyncBackendHostImpl::Shutdown(ShutdownReason reason) { |
| - // StopSyncingForShutdown() (which nulls out |frontend_|) should be |
| + // StopSyncingForShutdown() (which nulls out |host_|) should be |
| // called first. |
| - DCHECK(!frontend_); |
| + DCHECK(!host_); |
| if (invalidation_handler_registered_) { |
| if (reason == DISABLE_SYNC) { |
| @@ -541,7 +537,7 @@ void SyncBackendHostImpl::AddExperimentalTypes() { |
| CHECK(initialized()); |
| Experiments experiments; |
| if (core_->sync_manager()->ReceivedExperiment(&experiments)) |
| - frontend_->OnExperimentsChanged(experiments); |
| + host_->OnExperimentsChanged(experiments); |
| } |
| void SyncBackendHostImpl::HandleInitializationSuccessOnFrontendLoop( |
| @@ -566,17 +562,17 @@ void SyncBackendHostImpl::HandleInitializationSuccessOnFrontendLoop( |
| // Now that we've downloaded the control types, we can see if there are any |
| // experimental types to enable. This should be done before we inform |
| - // the frontend to ensure they're visible in the customize screen. |
| + // the host to ensure they're visible in the customize screen. |
| AddExperimentalTypes(); |
| - frontend_->OnBackendInitialized(js_backend, debug_info_listener, cache_guid, |
| - true); |
| + host_->OnBackendInitialized(js_backend, debug_info_listener, cache_guid, |
| + true); |
| } |
| void SyncBackendHostImpl::HandleInitializationFailureOnFrontendLoop() { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| - frontend_->OnBackendInitialized(WeakHandle<JsBackend>(), |
| - WeakHandle<DataTypeDebugInfoListener>(), "", |
| - false); |
| + host_->OnBackendInitialized(WeakHandle<JsBackend>(), |
| + WeakHandle<DataTypeDebugInfoListener>(), "", |
| + false); |
| } |
| void SyncBackendHostImpl::HandleSyncCycleCompletedOnFrontendLoop( |
| @@ -596,7 +592,7 @@ void SyncBackendHostImpl::HandleSyncCycleCompletedOnFrontendLoop( |
| AddExperimentalTypes(); |
| if (initialized()) |
| - frontend_->OnSyncCycleCompleted(); |
| + host_->OnSyncCycleCompleted(); |
| } |
| void SyncBackendHostImpl::RetryConfigurationOnFrontendLoop( |
| @@ -618,13 +614,13 @@ void SyncBackendHostImpl::PersistEncryptionBootstrapToken( |
| void SyncBackendHostImpl::HandleActionableErrorEventOnFrontendLoop( |
| const SyncProtocolError& sync_error) { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| - frontend_->OnActionableError(sync_error); |
| + host_->OnActionableError(sync_error); |
| } |
| void SyncBackendHostImpl::HandleMigrationRequestedOnFrontendLoop( |
| ModelTypeSet types) { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| - frontend_->OnMigrationNeededForTypes(types); |
| + host_->OnMigrationNeededForTypes(types); |
| } |
| void SyncBackendHostImpl::OnInvalidatorStateChange(InvalidatorState state) { |
| @@ -664,26 +660,26 @@ void SyncBackendHostImpl::NotifyPassphraseRequired( |
| // Update our cache of the cryptographer's pending keys. |
| cached_pending_keys_ = pending_keys; |
| - frontend_->OnPassphraseRequired(reason, pending_keys); |
| + host_->OnPassphraseRequired(reason, pending_keys); |
| } |
| void SyncBackendHostImpl::NotifyPassphraseAccepted() { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| // Clear our cache of the cryptographer's pending keys. |
| cached_pending_keys_.clear_blob(); |
| - frontend_->OnPassphraseAccepted(); |
| + host_->OnPassphraseAccepted(); |
| } |
| void SyncBackendHostImpl::NotifyEncryptedTypesChanged( |
| ModelTypeSet encrypted_types, |
| bool encrypt_everything) { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| - frontend_->OnEncryptedTypesChanged(encrypted_types, encrypt_everything); |
| + host_->OnEncryptedTypesChanged(encrypted_types, encrypt_everything); |
| } |
| void SyncBackendHostImpl::NotifyEncryptionComplete() { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| - frontend_->OnEncryptionComplete(); |
| + host_->OnEncryptionComplete(); |
| } |
| void SyncBackendHostImpl::HandlePassphraseTypeChangedOnFrontendLoop( |
| @@ -698,42 +694,46 @@ void SyncBackendHostImpl::HandlePassphraseTypeChangedOnFrontendLoop( |
| void SyncBackendHostImpl::HandleLocalSetPassphraseEncryptionOnFrontendLoop( |
| const SyncEncryptionHandler::NigoriState& nigori_state) { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| - frontend_->OnLocalSetPassphraseEncryption(nigori_state); |
| + host_->OnLocalSetPassphraseEncryption(nigori_state); |
| } |
| void SyncBackendHostImpl::HandleConnectionStatusChangeOnFrontendLoop( |
| ConnectionStatus status) { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| - |
| DVLOG(1) << "Connection status changed: " << ConnectionStatusToString(status); |
| - frontend_->OnConnectionStatusChange(status); |
| + host_->OnConnectionStatusChange(status); |
| } |
| void SyncBackendHostImpl::HandleProtocolEventOnFrontendLoop( |
| std::unique_ptr<ProtocolEvent> event) { |
| - frontend_->OnProtocolEvent(*event); |
| + DCHECK(thread_checker_.CalledOnValidThread()); |
| + host_->OnProtocolEvent(*event); |
| } |
| void SyncBackendHostImpl::HandleDirectoryCommitCountersUpdatedOnFrontendLoop( |
| ModelType type, |
| const CommitCounters& counters) { |
| - frontend_->OnDirectoryTypeCommitCounterUpdated(type, counters); |
| + DCHECK(thread_checker_.CalledOnValidThread()); |
| + host_->OnDirectoryTypeCommitCounterUpdated(type, counters); |
| } |
| void SyncBackendHostImpl::HandleDirectoryUpdateCountersUpdatedOnFrontendLoop( |
| ModelType type, |
| const UpdateCounters& counters) { |
| - frontend_->OnDirectoryTypeUpdateCounterUpdated(type, counters); |
| + DCHECK(thread_checker_.CalledOnValidThread()); |
| + host_->OnDirectoryTypeUpdateCounterUpdated(type, counters); |
| } |
| void SyncBackendHostImpl::HandleDirectoryStatusCountersUpdatedOnFrontendLoop( |
| ModelType type, |
| const StatusCounters& counters) { |
| - frontend_->OnDatatypeStatusCounterUpdated(type, counters); |
| + DCHECK(thread_checker_.CalledOnValidThread()); |
| + host_->OnDatatypeStatusCounterUpdated(type, counters); |
| } |
| void SyncBackendHostImpl::UpdateInvalidationVersions( |
| const std::map<ModelType, int64_t>& invalidation_versions) { |
| + DCHECK(thread_checker_.CalledOnValidThread()); |
| sync_prefs_->UpdateInvalidationVersions(invalidation_versions); |
| } |