OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/prefs/pref_service_syncable_builder.h" | 5 #include "chrome/browser/prefs/pref_service_syncable_builder.h" |
6 | 6 |
7 #include "base/prefs/default_pref_store.h" | 7 #include "base/prefs/default_pref_store.h" |
8 #include "chrome/browser/policy/configuration_policy_pref_store.h" | 8 #include "chrome/browser/policy/configuration_policy_pref_store.h" |
9 #include "chrome/browser/policy/policy_service.h" | 9 #include "chrome/browser/policy/policy_service.h" |
10 #include "chrome/browser/prefs/command_line_pref_store.h" | 10 #include "chrome/browser/prefs/command_line_pref_store.h" |
11 #include "chrome/browser/prefs/pref_notifier_impl.h" | 11 #include "chrome/browser/prefs/pref_notifier_impl.h" |
| 12 #include "chrome/browser/prefs/pref_registry_simple.h" |
12 #include "chrome/browser/prefs/pref_service_syncable.h" | 13 #include "chrome/browser/prefs/pref_service_syncable.h" |
13 #include "chrome/browser/prefs/pref_value_store.h" | 14 #include "chrome/browser/prefs/pref_value_store.h" |
14 | 15 |
15 PrefServiceSyncableBuilder::PrefServiceSyncableBuilder() { | 16 PrefServiceSyncableBuilder::PrefServiceSyncableBuilder() { |
16 } | 17 } |
17 | 18 |
18 PrefServiceSyncableBuilder::~PrefServiceSyncableBuilder() { | 19 PrefServiceSyncableBuilder::~PrefServiceSyncableBuilder() { |
19 } | 20 } |
20 | 21 |
21 #if defined(ENABLE_CONFIGURATION_POLICY) | 22 #if defined(ENABLE_CONFIGURATION_POLICY) |
(...skipping 12 matching lines...) Expand all Loading... |
34 } | 35 } |
35 #endif | 36 #endif |
36 | 37 |
37 PrefServiceSyncableBuilder& | 38 PrefServiceSyncableBuilder& |
38 PrefServiceSyncableBuilder::WithCommandLine(CommandLine* command_line) { | 39 PrefServiceSyncableBuilder::WithCommandLine(CommandLine* command_line) { |
39 WithCommandLinePrefs(new CommandLinePrefStore(command_line)); | 40 WithCommandLinePrefs(new CommandLinePrefStore(command_line)); |
40 return *this; | 41 return *this; |
41 } | 42 } |
42 | 43 |
43 PrefServiceSyncable* PrefServiceSyncableBuilder::CreateSyncable() { | 44 PrefServiceSyncable* PrefServiceSyncableBuilder::CreateSyncable() { |
44 DefaultPrefStore* default_pref_store = new DefaultPrefStore(); | 45 // TODO(joi): Switch to accepting a PrefRegistrySyncable parameter. |
| 46 scoped_refptr<PrefRegistry> pref_registry = new PrefRegistrySimple(); |
45 PrefNotifierImpl* pref_notifier = new PrefNotifierImpl(); | 47 PrefNotifierImpl* pref_notifier = new PrefNotifierImpl(); |
46 PrefServiceSyncable* pref_service = new PrefServiceSyncable( | 48 PrefServiceSyncable* pref_service = new PrefServiceSyncable( |
47 pref_notifier, | 49 pref_notifier, |
48 new PrefValueStore( | 50 new PrefValueStore( |
49 managed_prefs_.get(), | 51 managed_prefs_.get(), |
50 extension_prefs_.get(), | 52 extension_prefs_.get(), |
51 command_line_prefs_.get(), | 53 command_line_prefs_.get(), |
52 user_prefs_.get(), | 54 user_prefs_.get(), |
53 recommended_prefs_.get(), | 55 recommended_prefs_.get(), |
54 default_pref_store, | 56 pref_registry->defaults(), |
55 pref_notifier), | 57 pref_notifier), |
56 user_prefs_.get(), | 58 user_prefs_.get(), |
57 default_pref_store, | 59 pref_registry.get(), |
58 read_error_callback_, | 60 read_error_callback_, |
59 async_); | 61 async_); |
60 ResetDefaultState(); | 62 ResetDefaultState(); |
61 return pref_service; | 63 return pref_service; |
62 } | 64 } |
OLD | NEW |