summaryrefslogtreecommitdiffstats
path: root/components/sync_driver/data_type_manager_impl.h
diff options
context:
space:
mode:
authortim@chromium.org <tim@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-10 04:02:18 +0000
committertim@chromium.org <tim@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-10 04:02:18 +0000
commit52463b22418f030cb1f1719aba0da6cdff995f07 (patch)
tree989b58d1e484af033cc3543754861c7f0dd9058e /components/sync_driver/data_type_manager_impl.h
parent8ef88526142dfa56ce9d3e82fbea4b4536ed2774 (diff)
downloadchromium_src-52463b22418f030cb1f1719aba0da6cdff995f07.zip
chromium_src-52463b22418f030cb1f1719aba0da6cdff995f07.tar.gz
chromium_src-52463b22418f030cb1f1719aba0da6cdff995f07.tar.bz2
sync: cut a few profile deps from DataTypeControllers.
- UserShare: previously the DTC would query PSS::GetUserShare whenever it decided it needed it, implicitly abiding by the rule that GetUserShare shall not be called until backend initialization is complete (implicit because the DTC knows nothing about backend init in theory, but we had carefully ordered things to work). Instead, we now pass it deterministically as soon as the share becomes available via an explicit call to the DTC (which the PSS already tracks). - DeactivateDataType: Changes the precondition to DTC::Stop such that it expects the backend has already been informed to stop routing changes for its type. The Deactivate call can be done safely up front by the DataTypeManager (which also handles ActivateDataType). - Profile: [Non]UIDataTypeController doesn't need a profile, so push that dep down to the subclasses in browser/ that require it. - ProfileSyncComponentsFactory: the DTCs should now be able to use SyncApiComponentFactory interface exclusively. Also rename ModelAssociationResultProcessor -> ModelAssociationManagerDelegate. BUG=339726 R=haitaol@chromium.org Review URL: https://codereview.chromium.org/317453002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@275935 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components/sync_driver/data_type_manager_impl.h')
-rw-r--r--components/sync_driver/data_type_manager_impl.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/components/sync_driver/data_type_manager_impl.h b/components/sync_driver/data_type_manager_impl.h
index bdfd67c..461ae6b 100644
--- a/components/sync_driver/data_type_manager_impl.h
+++ b/components/sync_driver/data_type_manager_impl.h
@@ -37,7 +37,7 @@ class FailedDataTypesHandler;
typedef std::queue<syncer::ModelTypeSet> TypeSetPriorityList;
class DataTypeManagerImpl : public DataTypeManager,
- public ModelAssociationResultProcessor {
+ public ModelAssociationManagerDelegate {
public:
DataTypeManagerImpl(
const base::Closure& unrecoverable_error_method,
@@ -62,12 +62,13 @@ class DataTypeManagerImpl : public DataTypeManager,
virtual void Stop() OVERRIDE;
virtual State state() const OVERRIDE;
- // |ModelAssociationResultProcessor| implementation.
+ // |ModelAssociationManagerDelegate| implementation.
virtual void OnSingleDataTypeAssociationDone(
syncer::ModelType type,
const syncer::DataTypeAssociationStats& association_stats) OVERRIDE;
virtual void OnModelAssociationDone(
const DataTypeManager::ConfigureResult& result) OVERRIDE;
+ virtual void OnSingleDataTypeWillStop(syncer::ModelType type) OVERRIDE;
// Used by unit tests. TODO(sync) : This would go away if we made
// this class be able to do Dependency injection. crbug.com/129212.