OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/sync/glue/preference_data_type_controller.h" | 5 #include "chrome/browser/sync/glue/preference_data_type_controller.h" |
6 | 6 |
7 #include "base/metrics/histogram.h" | 7 #include "base/metrics/histogram.h" |
8 #include "chrome/browser/profiles/profile.h" | 8 #include "chrome/browser/profiles/profile.h" |
9 #include "chrome/browser/sync/api/syncable_service.h" | 9 #include "chrome/browser/sync/api/syncable_service.h" |
| 10 #include "chrome/browser/sync/glue/generic_change_processor.h" |
10 #include "chrome/browser/sync/profile_sync_factory.h" | 11 #include "chrome/browser/sync/profile_sync_factory.h" |
11 | 12 |
12 namespace browser_sync { | 13 namespace browser_sync { |
13 | 14 |
14 PreferenceDataTypeController::PreferenceDataTypeController( | 15 PreferenceDataTypeController::PreferenceDataTypeController( |
15 ProfileSyncFactory* profile_sync_factory, | 16 ProfileSyncFactory* profile_sync_factory, |
16 Profile* profile, | 17 Profile* profile, |
17 ProfileSyncService* sync_service) | 18 ProfileSyncService* sync_service) |
18 : FrontendDataTypeController(profile_sync_factory, | 19 : FrontendDataTypeController(profile_sync_factory, |
19 profile, | 20 profile, |
20 sync_service) { | 21 sync_service) { |
21 } | 22 } |
22 | 23 |
23 PreferenceDataTypeController::~PreferenceDataTypeController() { | 24 PreferenceDataTypeController::~PreferenceDataTypeController() { |
24 } | 25 } |
25 | 26 |
26 syncable::ModelType PreferenceDataTypeController::type() const { | 27 syncable::ModelType PreferenceDataTypeController::type() const { |
27 return syncable::PREFERENCES; | 28 return syncable::PREFERENCES; |
28 } | 29 } |
29 | 30 |
30 void PreferenceDataTypeController::CreateSyncComponents() { | 31 void PreferenceDataTypeController::CreateSyncComponents() { |
31 ProfileSyncFactory::SyncComponents sync_components = | 32 ProfileSyncFactory::SyncComponents sync_components = |
32 profile_sync_factory_->CreatePreferenceSyncComponents(sync_service_, | 33 profile_sync_factory_->CreatePreferenceSyncComponents(sync_service_, |
33 this); | 34 this); |
34 set_model_associator(sync_components.model_associator); | 35 set_model_associator(sync_components.model_associator); |
35 generic_change_processor_.reset(static_cast<GenericChangeProcessor*>( | 36 set_change_processor(sync_components.change_processor); |
36 sync_components.change_processor)); | |
37 } | |
38 | |
39 GenericChangeProcessor* PreferenceDataTypeController::change_processor() const { | |
40 return generic_change_processor_.get(); | |
41 } | 37 } |
42 | 38 |
43 void PreferenceDataTypeController::RecordUnrecoverableError( | 39 void PreferenceDataTypeController::RecordUnrecoverableError( |
44 const tracked_objects::Location& from_here, | 40 const tracked_objects::Location& from_here, |
45 const std::string& message) { | 41 const std::string& message) { |
46 UMA_HISTOGRAM_COUNTS("Sync.PreferenceRunFailures", 1); | 42 UMA_HISTOGRAM_COUNTS("Sync.PreferenceRunFailures", 1); |
47 } | 43 } |
48 | 44 |
49 void PreferenceDataTypeController::RecordAssociationTime(base::TimeDelta time) { | 45 void PreferenceDataTypeController::RecordAssociationTime(base::TimeDelta time) { |
50 UMA_HISTOGRAM_TIMES("Sync.PreferenceAssociationTime", time); | 46 UMA_HISTOGRAM_TIMES("Sync.PreferenceAssociationTime", time); |
51 } | 47 } |
52 | 48 |
53 void PreferenceDataTypeController::RecordStartFailure(StartResult result) { | 49 void PreferenceDataTypeController::RecordStartFailure(StartResult result) { |
54 UMA_HISTOGRAM_ENUMERATION("Sync.PreferenceStartFailures", | 50 UMA_HISTOGRAM_ENUMERATION("Sync.PreferenceStartFailures", |
55 result, | 51 result, |
56 MAX_START_RESULT); | 52 MAX_START_RESULT); |
57 } | 53 } |
58 | 54 |
59 } // namespace browser_sync | 55 } // namespace browser_sync |
OLD | NEW |