// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "sync/sessions/sync_session_context.h" #include "sync/sessions/debug_info_getter.h" #include "sync/util/extensions_activity.h" namespace syncer { namespace sessions { SyncSessionContext::SyncSessionContext( ServerConnectionManager* connection_manager, syncable::Directory* directory, ExtensionsActivity* extensions_activity, const std::vector& listeners, DebugInfoGetter* debug_info_getter, ModelTypeRegistry* model_type_registry, bool keystore_encryption_enabled, bool client_enabled_pre_commit_update_avoidance, const std::string& invalidator_client_id) : connection_manager_(connection_manager), directory_(directory), extensions_activity_(extensions_activity), notifications_enabled_(false), max_commit_batch_size_(kDefaultMaxCommitBatchSize), debug_info_getter_(debug_info_getter), model_type_registry_(model_type_registry), keystore_encryption_enabled_(keystore_encryption_enabled), invalidator_client_id_(invalidator_client_id), server_enabled_pre_commit_update_avoidance_(false), client_enabled_pre_commit_update_avoidance_( client_enabled_pre_commit_update_avoidance) { std::vector::const_iterator it; for (it = listeners.begin(); it != listeners.end(); ++it) listeners_.AddObserver(*it); } SyncSessionContext::~SyncSessionContext() { } ModelTypeSet SyncSessionContext::GetEnabledTypes() const { return model_type_registry_->GetEnabledTypes(); } void SyncSessionContext::SetRoutingInfo( const ModelSafeRoutingInfo& routing_info) { model_type_registry_->SetEnabledDirectoryTypes(routing_info); } } // namespace sessions } // namespace syncer