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_builder.h" | 5 #include "chrome/browser/prefs/pref_service_builder.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/prefs/default_pref_store.h" | 8 #include "base/prefs/default_pref_store.h" |
9 #include "base/prefs/json_pref_store.h" | 9 #include "base/prefs/json_pref_store.h" |
10 #include "chrome/browser/prefs/pref_notifier_impl.h" | 10 #include "chrome/browser/prefs/pref_notifier_impl.h" |
| 11 #include "chrome/browser/prefs/pref_registrar_simple.h" |
11 #include "chrome/browser/prefs/pref_service.h" | 12 #include "chrome/browser/prefs/pref_service.h" |
12 #include "chrome/browser/prefs/pref_service_simple.h" | 13 |
13 #include "chrome/browser/prefs/pref_value_store.h" | 14 #include "chrome/browser/prefs/pref_value_store.h" |
14 | 15 |
15 namespace { | 16 namespace { |
16 | 17 |
17 // Do-nothing default implementation. | 18 // Do-nothing default implementation. |
18 void DoNothingHandleReadError(PersistentPrefStore::PrefReadError error) { | 19 void DoNothingHandleReadError(PersistentPrefStore::PrefReadError error) { |
19 } | 20 } |
20 | 21 |
21 } // namespace | 22 } // namespace |
22 | 23 |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 base::SequencedTaskRunner* task_runner) { | 66 base::SequencedTaskRunner* task_runner) { |
66 user_prefs_ = new JsonPrefStore(prefs_file, task_runner); | 67 user_prefs_ = new JsonPrefStore(prefs_file, task_runner); |
67 return *this; | 68 return *this; |
68 } | 69 } |
69 | 70 |
70 PrefServiceBuilder& PrefServiceBuilder::WithAsync(bool async) { | 71 PrefServiceBuilder& PrefServiceBuilder::WithAsync(bool async) { |
71 async_ = async; | 72 async_ = async; |
72 return *this; | 73 return *this; |
73 } | 74 } |
74 | 75 |
75 PrefServiceSimple* PrefServiceBuilder::CreateSimple() { | 76 PrefService* PrefServiceBuilder::CreateSimple() { |
76 DefaultPrefStore* default_pref_store = new DefaultPrefStore(); | 77 DefaultPrefStore* default_pref_store = new DefaultPrefStore(); |
77 PrefNotifierImpl* pref_notifier = new PrefNotifierImpl(); | 78 PrefNotifierImpl* pref_notifier = new PrefNotifierImpl(); |
78 PrefServiceSimple* pref_service = new PrefServiceSimple( | 79 PrefService* pref_service = new PrefService( |
79 pref_notifier, | 80 pref_notifier, |
80 new PrefValueStore( | 81 new PrefValueStore( |
81 managed_prefs_.get(), | 82 managed_prefs_.get(), |
82 extension_prefs_.get(), | 83 extension_prefs_.get(), |
83 command_line_prefs_.get(), | 84 command_line_prefs_.get(), |
84 user_prefs_.get(), | 85 user_prefs_.get(), |
85 recommended_prefs_.get(), | 86 recommended_prefs_.get(), |
86 default_pref_store, | 87 default_pref_store, |
87 pref_notifier), | 88 pref_notifier), |
88 user_prefs_.get(), | 89 user_prefs_.get(), |
89 default_pref_store, | 90 default_pref_store, |
90 read_error_callback_, | 91 read_error_callback_, |
91 async_); | 92 async_); |
92 ResetDefaultState(); | 93 ResetDefaultState(); |
93 return pref_service; | 94 return pref_service; |
94 } | 95 } |
95 | 96 |
96 void PrefServiceBuilder::ResetDefaultState() { | 97 void PrefServiceBuilder::ResetDefaultState() { |
97 managed_prefs_ = NULL; | 98 managed_prefs_ = NULL; |
98 extension_prefs_ = NULL; | 99 extension_prefs_ = NULL; |
99 command_line_prefs_ = NULL; | 100 command_line_prefs_ = NULL; |
100 user_prefs_ = NULL; | 101 user_prefs_ = NULL; |
101 recommended_prefs_ = NULL; | 102 recommended_prefs_ = NULL; |
102 read_error_callback_ = base::Bind(&DoNothingHandleReadError); | 103 read_error_callback_ = base::Bind(&DoNothingHandleReadError); |
103 async_ = false; | 104 async_ = false; |
104 } | 105 } |
OLD | NEW |