12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file.
42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/prefs/pref_registry_simple.h"
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/files/file_path.h"
8868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "base/strings/string_number_conversions.h"
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/values.h"
102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)PrefRegistrySimple::PrefRegistrySimple() {
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)PrefRegistrySimple::~PrefRegistrySimple() {
152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void PrefRegistrySimple::RegisterBooleanPref(const char* path,
182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                                             bool default_value) {
195d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  RegisterPreference(path, new base::FundamentalValue(default_value));
202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void PrefRegistrySimple::RegisterIntegerPref(const char* path,
232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                                             int default_value) {
245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  RegisterPreference(path, new base::FundamentalValue(default_value));
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void PrefRegistrySimple::RegisterDoublePref(const char* path,
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                                            double default_value) {
295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  RegisterPreference(path, new base::FundamentalValue(default_value));
302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void PrefRegistrySimple::RegisterStringPref(const char* path,
332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                                            const std::string& default_value) {
345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  RegisterPreference(path, new base::StringValue(default_value));
352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void PrefRegistrySimple::RegisterFilePathPref(
382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    const char* path,
392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    const base::FilePath& default_value) {
405d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  RegisterPreference(path, new base::StringValue(default_value.value()));
412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void PrefRegistrySimple::RegisterListPref(const char* path) {
442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RegisterPreference(path, new base::ListValue());
452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void PrefRegistrySimple::RegisterListPref(const char* path,
482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                                          base::ListValue* default_value) {
492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RegisterPreference(path, default_value);
502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void PrefRegistrySimple::RegisterDictionaryPref(const char* path) {
532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RegisterPreference(path, new base::DictionaryValue());
542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void PrefRegistrySimple::RegisterDictionaryPref(
572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    const char* path,
582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    base::DictionaryValue* default_value) {
592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RegisterPreference(path, default_value);
602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void PrefRegistrySimple::RegisterInt64Pref(const char* path,
632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                                           int64 default_value) {
642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RegisterPreference(
655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      path, new base::StringValue(base::Int64ToString(default_value)));
662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
67