Index: chrome/browser/sync/glue/sync_backend_host.h |
diff --git a/chrome/browser/sync/glue/sync_backend_host.h b/chrome/browser/sync/glue/sync_backend_host.h |
index 1f7d8c163e092d1dea31918b8b9bed36e684787d..7e6ee22e713c1b18640ff0ab4915c6cf2f84f933 100644 |
--- a/chrome/browser/sync/glue/sync_backend_host.h |
+++ b/chrome/browser/sync/glue/sync_backend_host.h |
@@ -21,8 +21,6 @@ |
#include "base/timer.h" |
#include "chrome/browser/sync/engine/configure_reason.h" |
#include "chrome/browser/sync/engine/model_safe_worker.h" |
-#include "chrome/browser/sync/engine/syncapi.h" |
-#include "chrome/browser/sync/glue/data_type_controller.h" |
#include "chrome/browser/sync/glue/ui_model_worker.h" |
#include "chrome/browser/sync/js/js_backend.h" |
#include "chrome/browser/sync/notifier/sync_notifier_factory.h" |
@@ -46,7 +44,6 @@ struct SyncSessionSnapshot; |
} |
class ChangeProcessor; |
-class DataTypeController; |
class JsEventHandler; |
// SyncFrontend is the interface used by SyncBackendHost to communicate with |
@@ -133,7 +130,7 @@ class SyncBackendHost : public browser_sync::ModelSafeWorkerRegistrar { |
void Initialize(SyncFrontend* frontend, |
const WeakHandle<JsEventHandler>& event_handler, |
const GURL& service_url, |
- const syncable::ModelTypeSet& types, |
+ const syncable::ModelTypeSet& initial_types, |
const sync_api::SyncCredentials& credentials, |
bool delete_sync_data_folder); |
@@ -160,11 +157,11 @@ class SyncBackendHost : public browser_sync::ModelSafeWorkerRegistrar { |
// Changes the set of data types that are currently being synced. |
// The ready_task will be run when all of the requested data types |
- // are up-to-date and ready for activation. The task will cancelled |
- // upon shutdown. The method takes ownership of the task pointer. |
+ // are up-to-date and ready for activation. The task will be |
+ // cancelled upon shutdown. |
virtual void ConfigureDataTypes( |
- const DataTypeController::TypeMap& data_type_controllers, |
- const syncable::ModelTypeSet& types, |
+ const syncable::ModelTypeSet& types_to_add, |
+ const syncable::ModelTypeSet& types_to_remove, |
sync_api::ConfigureReason reason, |
base::Callback<void(bool)> ready_task, |
bool enable_nigori); |
@@ -186,12 +183,12 @@ class SyncBackendHost : public browser_sync::ModelSafeWorkerRegistrar { |
// be called synchronously with the data type's model association so |
// no changes are dropped between model association and change |
// processor activation. |
- void ActivateDataType(DataTypeController* data_type_controller, |
- ChangeProcessor* change_processor); |
+ void ActivateDataType( |
+ syncable::ModelType type, ModelSafeGroup group, |
+ ChangeProcessor* change_processor); |
// Deactivates change processing for the given data type. |
- void DeactivateDataType(DataTypeController* data_type_controller, |
- ChangeProcessor* change_processor); |
+ void DeactivateDataType(syncable::ModelType type); |
// Asks the server to clear all data associated with ChromeSync. |
virtual bool RequestClearServerData(); |
@@ -357,7 +354,8 @@ class SyncBackendHost : public browser_sync::ModelSafeWorkerRegistrar { |
void DoShutdown(bool stopping_sync); |
// Posts a config request on the sync thread. |
- virtual void DoRequestConfig(const syncable::ModelTypeBitSet& added_types, |
+ virtual void DoRequestConfig( |
+ const syncable::ModelTypeBitSet& types_to_config, |
sync_api::ConfigureReason reason); |
// Start the configuration mode. |
@@ -408,9 +406,6 @@ class SyncBackendHost : public browser_sync::ModelSafeWorkerRegistrar { |
virtual ~Core(); |
- // Return change processor for a particular model (return NULL on failure). |
- ChangeProcessor* GetProcessor(syncable::ModelType modeltype); |
- |
// Invoked when initialization of syncapi is complete and we can start |
// our timer. |
// This must be called from the thread on which SaveChanges is intended to |
@@ -458,9 +453,6 @@ class SyncBackendHost : public browser_sync::ModelSafeWorkerRegistrar { |
void FinishConfigureDataTypesOnFrontendLoop(); |
- // Return true if a model lives on the current thread. |
- bool IsCurrentThreadSafeForModel(syncable::ModelType model_type); |
- |
Profile* profile_; |
// Our parent SyncBackendHost |
@@ -528,26 +520,34 @@ class SyncBackendHost : public browser_sync::ModelSafeWorkerRegistrar { |
// The set of types that we are waiting to be initially synced in a |
// configuration cycle. |
- syncable::ModelTypeSet initial_types; |
+ syncable::ModelTypeSet types_to_add; |
// Additional details about which types were added. |
- syncable::ModelTypeBitSet added_types; |
+ syncable::ModelTypeSet added_types; |
sync_api::ConfigureReason reason; |
}; |
UIModelWorker* ui_worker(); |
- // Helper function for ConfigureDataTypes() that fills in |state| |
- // and |deleted_type|. Does not take ownership of routing_info|. |
+ // Return change processor for a particular model (return NULL on failure). |
+ ChangeProcessor* GetProcessor(syncable::ModelType modeltype); |
+ |
+ // Like GetProcessor(), but |registrar_lock_| must already be |
+ // held. |
+ ChangeProcessor* GetProcessorUnsafe(syncable::ModelType modeltype); |
+ |
+ // Return true if a model lives on the current thread. |
+ bool IsCurrentThreadSafeForModel(syncable::ModelType model_type) const; |
+ |
+ // Helper function for ConfigureDataTypes() that fills in |state|. |
+ // Does not take ownership of |routing_info|. |
static void GetPendingConfigModeState( |
- const DataTypeController::TypeMap& data_type_controllers, |
- const syncable::ModelTypeSet& types, |
+ const syncable::ModelTypeSet& types_to_add, |
+ const syncable::ModelTypeSet& types_to_remove, |
base::Callback<void(bool)> ready_task, |
ModelSafeRoutingInfo* routing_info, |
sync_api::ConfigureReason reason, |
- bool nigori_enabled, |
- PendingConfigureDataTypesState* state, |
- bool* deleted_type); |
+ PendingConfigureDataTypesState* state); |
// For convenience, checks if initialization state is INITIALIZED. |
bool initialized() const { return initialization_state_ == INITIALIZED; } |