Chromium Code Reviews| Index: sync/sessions/sync_session_context.h |
| diff --git a/sync/sessions/sync_session_context.h b/sync/sessions/sync_session_context.h |
| index 5995ab151dbcbba209872310ce532fcfa3030da7..cbd807b7a775790823f1fb43bfc8059179f813f5 100644 |
| --- a/sync/sessions/sync_session_context.h |
| +++ b/sync/sessions/sync_session_context.h |
| @@ -15,25 +15,19 @@ |
| #ifndef SYNC_SESSIONS_SYNC_SESSION_CONTEXT_H_ |
| #define SYNC_SESSIONS_SYNC_SESSION_CONTEXT_H_ |
| -#include <map> |
| #include <string> |
| -#include <vector> |
| -#include "base/stl_util.h" |
| #include "sync/base/sync_export.h" |
| -#include "sync/engine/sync_directory_commit_contributor.h" |
| -#include "sync/engine/sync_directory_update_handler.h" |
| +#include "sync/engine/model_type_registry.h" |
| #include "sync/engine/sync_engine_event.h" |
| -#include "sync/engine/syncer_types.h" |
| #include "sync/engine/traffic_recorder.h" |
| -#include "sync/internal_api/public/engine/model_safe_worker.h" |
| -#include "sync/protocol/sync.pb.h" |
| #include "sync/sessions/debug_info_getter.h" |
| namespace syncer { |
| class ExtensionsActivity; |
| class ServerConnectionManager; |
| +class ModelTypeRegistry; |
|
Nicolas Zea
2014/01/04 02:09:34
nit: abc order
rlarocque
2014/01/06 20:03:33
Done.
|
| namespace syncable { |
| class Directory; |
| @@ -49,11 +43,11 @@ class SYNC_EXPORT_PRIVATE SyncSessionContext { |
| public: |
| SyncSessionContext(ServerConnectionManager* connection_manager, |
| syncable::Directory* directory, |
| - const std::vector<ModelSafeWorker*>& workers, |
| ExtensionsActivity* extensions_activity, |
| const std::vector<SyncEngineEventListener*>& listeners, |
| DebugInfoGetter* debug_info_getter, |
| TrafficRecorder* traffic_recorder, |
| + ModelTypeRegistry* model_type_registry, |
| bool keystore_encryption_enabled, |
| bool client_enabled_pre_commit_update_avoidance, |
| const std::string& invalidator_client_id); |
| @@ -71,15 +65,7 @@ class SYNC_EXPORT_PRIVATE SyncSessionContext { |
| return enabled_types_; |
| } |
| - void set_routing_info(const ModelSafeRoutingInfo& routing_info); |
| - |
| - UpdateHandlerMap* update_handler_map() { |
| - return &update_handler_map_; |
| - } |
| - |
| - CommitContributorMap* commit_contributor_map() { |
| - return &commit_contributor_map_; |
| - } |
| + void SetRoutingInfo(const ModelSafeRoutingInfo& routing_info); |
| ExtensionsActivity* extensions_activity() { |
| return extensions_activity_.get(); |
| @@ -141,6 +127,14 @@ class SYNC_EXPORT_PRIVATE SyncSessionContext { |
| server_enabled_pre_commit_update_avoidance_ = value; |
| } |
| + UpdaterList* updater_list() { |
| + return model_type_registry_->updater_list(); |
| + } |
| + |
| + CommitterList* committer_list() { |
| + return model_type_registry_->committer_list(); |
| + } |
| + |
| private: |
| // Rather than force clients to set and null-out various context members, we |
| // extend our encapsulation boundary to scoped helpers that take care of this |
| @@ -156,25 +150,6 @@ class SYNC_EXPORT_PRIVATE SyncSessionContext { |
| // set_routing_info(). |
| ModelTypeSet enabled_types_; |
| - // A map of 'update handlers', one for each enabled type. |
| - // This must be kept in sync with the routing info. Our temporary solution to |
| - // that problem is to initialize this map in set_routing_info(). |
| - UpdateHandlerMap update_handler_map_; |
| - |
| - // Deleter for the |update_handler_map_|. |
| - STLValueDeleter<UpdateHandlerMap> update_handler_deleter_; |
| - |
| - // A map of 'commit contributors', one for each enabled type. |
| - // This must be kept in sync with the routing info. Our temporary solution to |
| - // that problem is to initialize this map in set_routing_info(). |
| - CommitContributorMap commit_contributor_map_; |
| - |
| - // Deleter for the |commit_contributor_map_|. |
| - STLValueDeleter<CommitContributorMap> commit_contributor_deleter_; |
| - |
| - // The set of ModelSafeWorkers. Used to execute tasks of various threads. |
| - std::map<ModelSafeGroup, scoped_refptr<ModelSafeWorker> > workers_; |
| - |
| // We use this to stuff extensions activity into CommitMessages so the server |
| // can correlate commit traffic with extension-related bookmark mutations. |
| scoped_refptr<ExtensionsActivity> extensions_activity_; |
| @@ -195,6 +170,8 @@ class SYNC_EXPORT_PRIVATE SyncSessionContext { |
| TrafficRecorder* traffic_recorder_; |
| + ModelTypeRegistry* model_type_registry_; |
| + |
| // Satus information to be sent up to the server. |
| sync_pb::ClientStatus client_status_; |