1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "chrome/browser/sync/glue/proxy_data_type_controller.h"
7 namespace browser_sync {
9 ProxyDataTypeController::ProxyDataTypeController(syncer::ModelType type)
10 : state_(NOT_RUNNING),
12 DCHECK(syncer::ProxyTypes().Has(type_));
15 ProxyDataTypeController::~ProxyDataTypeController() {
18 void ProxyDataTypeController::LoadModels(
19 const ModelLoadCallback& model_load_callback) {
20 state_ = MODEL_LOADED;
21 model_load_callback.Run(type(), syncer::SyncError());
24 void ProxyDataTypeController::StartAssociating(
25 const StartCallback& start_callback) {
26 syncer::SyncMergeResult local_merge_result(type_);
27 syncer::SyncMergeResult syncer_merge_result(type_);
29 start_callback.Run(DataTypeController::OK,
34 void ProxyDataTypeController::Stop() {
38 syncer::ModelType ProxyDataTypeController::type() const {
39 DCHECK(syncer::ProxyTypes().Has(type_));
43 syncer::ModelSafeGroup ProxyDataTypeController::model_safe_group() const {
44 DCHECK(syncer::ProxyTypes().Has(type_));
45 return syncer::GROUP_PASSIVE;
48 std::string ProxyDataTypeController::name() const {
50 return syncer::ModelTypeToString(type());
53 DataTypeController::State ProxyDataTypeController::state() const {
57 void ProxyDataTypeController::OnSingleDatatypeUnrecoverableError(
58 const tracked_objects::Location& from_here, const std::string& message) {
62 void ProxyDataTypeController::OnModelLoaded() {
66 } // namespace browser_sync