Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / base / prefs / pref_registry_simple.cc
blob93c268686d50dd93c23299c5c47f9a0f7ca0d396
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
3 // found in the LICENSE file.
5 #include "base/prefs/pref_registry_simple.h"
7 #include "base/files/file_path.h"
8 #include "base/strings/string_number_conversions.h"
9 #include "base/values.h"
11 PrefRegistrySimple::PrefRegistrySimple() {
14 PrefRegistrySimple::~PrefRegistrySimple() {
17 void PrefRegistrySimple::RegisterBooleanPref(const std::string& path,
18 bool default_value) {
19 RegisterPrefAndNotify(path, new base::FundamentalValue(default_value),
20 NO_REGISTRATION_FLAGS);
23 void PrefRegistrySimple::RegisterIntegerPref(const std::string& path,
24 int default_value) {
25 RegisterPrefAndNotify(path, new base::FundamentalValue(default_value),
26 NO_REGISTRATION_FLAGS);
29 void PrefRegistrySimple::RegisterDoublePref(const std::string& path,
30 double default_value) {
31 RegisterPrefAndNotify(path, new base::FundamentalValue(default_value),
32 NO_REGISTRATION_FLAGS);
35 void PrefRegistrySimple::RegisterStringPref(const std::string& path,
36 const std::string& default_value) {
37 RegisterPrefAndNotify(path, new base::StringValue(default_value),
38 NO_REGISTRATION_FLAGS);
41 void PrefRegistrySimple::RegisterFilePathPref(
42 const std::string& path,
43 const base::FilePath& default_value) {
44 RegisterPrefAndNotify(path, new base::StringValue(default_value.value()),
45 NO_REGISTRATION_FLAGS);
48 void PrefRegistrySimple::RegisterListPref(const std::string& path) {
49 RegisterPrefAndNotify(path, new base::ListValue(), NO_REGISTRATION_FLAGS);
52 void PrefRegistrySimple::RegisterListPref(const std::string& path,
53 base::ListValue* default_value) {
54 RegisterPrefAndNotify(path, default_value, NO_REGISTRATION_FLAGS);
57 void PrefRegistrySimple::RegisterDictionaryPref(const std::string& path) {
58 RegisterPrefAndNotify(path, new base::DictionaryValue(),
59 NO_REGISTRATION_FLAGS);
62 void PrefRegistrySimple::RegisterDictionaryPref(
63 const std::string& path,
64 base::DictionaryValue* default_value) {
65 RegisterPrefAndNotify(path, default_value, NO_REGISTRATION_FLAGS);
68 void PrefRegistrySimple::RegisterInt64Pref(const std::string& path,
69 int64 default_value) {
70 RegisterPrefAndNotify(
71 path, new base::StringValue(base::Int64ToString(default_value)),
72 NO_REGISTRATION_FLAGS);
75 void PrefRegistrySimple::RegisterUint64Pref(const std::string& path,
76 uint64 default_value) {
77 RegisterPrefAndNotify(
78 path, new base::StringValue(base::Uint64ToString(default_value)),
79 NO_REGISTRATION_FLAGS);
82 void PrefRegistrySimple::RegisterBooleanPref(const std::string& path,
83 bool default_value,
84 uint32 flags) {
85 RegisterPrefAndNotify(path, new base::FundamentalValue(default_value), flags);
88 void PrefRegistrySimple::RegisterIntegerPref(const std::string& path,
89 int default_value,
90 uint32 flags) {
91 RegisterPrefAndNotify(path, new base::FundamentalValue(default_value), flags);
94 void PrefRegistrySimple::RegisterDoublePref(const std::string& path,
95 double default_value,
96 uint32 flags) {
97 RegisterPrefAndNotify(path, new base::FundamentalValue(default_value), flags);
100 void PrefRegistrySimple::RegisterStringPref(const std::string& path,
101 const std::string& default_value,
102 uint32 flags) {
103 RegisterPrefAndNotify(path, new base::StringValue(default_value), flags);
106 void PrefRegistrySimple::RegisterFilePathPref(
107 const std::string& path,
108 const base::FilePath& default_value,
109 uint32 flags) {
110 RegisterPrefAndNotify(path, new base::StringValue(default_value.value()),
111 flags);
114 void PrefRegistrySimple::RegisterListPref(const std::string& path,
115 uint32 flags) {
116 RegisterPrefAndNotify(path, new base::ListValue(), flags);
119 void PrefRegistrySimple::RegisterListPref(const std::string& path,
120 base::ListValue* default_value,
121 uint32 flags) {
122 RegisterPrefAndNotify(path, default_value, flags);
125 void PrefRegistrySimple::RegisterDictionaryPref(const std::string& path,
126 uint32 flags) {
127 RegisterPrefAndNotify(path, new base::DictionaryValue(), flags);
130 void PrefRegistrySimple::RegisterDictionaryPref(
131 const std::string& path,
132 base::DictionaryValue* default_value,
133 uint32 flags) {
134 RegisterPrefAndNotify(path, default_value, flags);
137 void PrefRegistrySimple::RegisterInt64Pref(const std::string& path,
138 int64 default_value,
139 uint32 flags) {
140 RegisterPrefAndNotify(
141 path, new base::StringValue(base::Int64ToString(default_value)), flags);
144 void PrefRegistrySimple::RegisterUint64Pref(const std::string& path,
145 uint64 default_value,
146 uint32 flags) {
147 RegisterPrefAndNotify(
148 path, new base::StringValue(base::Uint64ToString(default_value)), flags);
151 void PrefRegistrySimple::OnPrefRegistered(const std::string& path,
152 base::Value* default_value,
153 uint32 flags) {
156 void PrefRegistrySimple::RegisterPrefAndNotify(const std::string& path,
157 base::Value* default_value,
158 uint32 flags) {
159 RegisterPreference(path, default_value, flags);
160 OnPrefRegistered(path, default_value, flags);