OLD | NEW |
| (Empty) |
1 // Copyright 2015 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. | |
4 | |
5 #include "components/cronet/android/cronet_in_memory_pref_store.h" | |
6 | |
7 #include <utility> | |
8 | |
9 #include "base/logging.h" | |
10 #include "base/values.h" | |
11 | |
12 CronetInMemoryPrefStore::CronetInMemoryPrefStore() {} | |
13 | |
14 CronetInMemoryPrefStore::~CronetInMemoryPrefStore() {} | |
15 | |
16 bool CronetInMemoryPrefStore::GetValue(const std::string& key, | |
17 const base::Value** value) const { | |
18 return prefs_.GetValue(key, value); | |
19 } | |
20 | |
21 std::unique_ptr<base::DictionaryValue> CronetInMemoryPrefStore::GetValues() | |
22 const { | |
23 return prefs_.AsDictionaryValue(); | |
24 } | |
25 | |
26 bool CronetInMemoryPrefStore::GetMutableValue(const std::string& key, | |
27 base::Value** value) { | |
28 return prefs_.GetValue(key, value); | |
29 } | |
30 | |
31 void CronetInMemoryPrefStore::AddObserver(PrefStore::Observer* observer) { | |
32 observers_.AddObserver(observer); | |
33 } | |
34 | |
35 void CronetInMemoryPrefStore::RemoveObserver(PrefStore::Observer* observer) { | |
36 observers_.RemoveObserver(observer); | |
37 } | |
38 | |
39 bool CronetInMemoryPrefStore::HasObservers() const { | |
40 return observers_.might_have_observers(); | |
41 } | |
42 | |
43 bool CronetInMemoryPrefStore::IsInitializationComplete() const { | |
44 return true; | |
45 } | |
46 | |
47 void CronetInMemoryPrefStore::SetValue(const std::string& key, | |
48 std::unique_ptr<base::Value> value, | |
49 uint32_t flags) { | |
50 DCHECK(value); | |
51 if (prefs_.SetValue(key, std::move(value))) | |
52 ReportValueChanged(key, flags); | |
53 } | |
54 | |
55 void CronetInMemoryPrefStore::SetValueSilently( | |
56 const std::string& key, | |
57 std::unique_ptr<base::Value> value, | |
58 uint32_t flags) { | |
59 prefs_.SetValue(key, std::move(value)); | |
60 } | |
61 | |
62 void CronetInMemoryPrefStore::RemoveValue(const std::string& key, | |
63 uint32_t flags) { | |
64 if (prefs_.RemoveValue(key)) | |
65 ReportValueChanged(key, flags); | |
66 } | |
67 | |
68 bool CronetInMemoryPrefStore::ReadOnly() const { | |
69 return false; | |
70 } | |
71 | |
72 PersistentPrefStore::PrefReadError | |
73 CronetInMemoryPrefStore::GetReadError() const { | |
74 return PersistentPrefStore::PREF_READ_ERROR_NONE; | |
75 } | |
76 | |
77 PersistentPrefStore::PrefReadError CronetInMemoryPrefStore::ReadPrefs() { | |
78 return PersistentPrefStore::PREF_READ_ERROR_NONE; | |
79 } | |
80 | |
81 void CronetInMemoryPrefStore::ReadPrefsAsync( | |
82 ReadErrorDelegate* error_delegate_raw) { | |
83 } | |
84 | |
85 void CronetInMemoryPrefStore::ReportValueChanged(const std::string& key, | |
86 uint32_t flags) { | |
87 for (Observer& observer : observers_) | |
88 observer.OnPrefValueChanged(key); | |
89 } | |
OLD | NEW |