| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 module prefs.mojom; | 5 module prefs.mojom; |
| 6 | 6 |
| 7 import "mojo/common/values.mojom"; | 7 import "mojo/common/values.mojom"; |
| 8 | 8 |
| 9 const string kServiceName = "preferences"; | 9 const string kServiceName = "preferences"; |
| 10 | 10 |
| 11 // Used for the creation of a PreferencesManager and to ensure that the |
| 12 // PreferencesObserver is bound at creation time. |
| 13 interface PreferencesFactory { |
| 14 // Creates a PreferencesManager bound to the provided |observer|. |
| 15 Create(PreferencesObserver observer, PreferencesManager& manager); |
| 16 }; |
| 17 |
| 11 // Used to subscribe to preference changes within PreferenceManager. After | 18 // Used to subscribe to preference changes within PreferenceManager. After |
| 12 // requesting to observe, the current values for all requested keys are sent. | 19 // requesting to observe, the current values for all requested keys are sent. |
| 13 interface PreferencesObserver { | 20 interface PreferencesObserver { |
| 14 OnPreferencesChanged(mojo.common.mojom.DictionaryValue preferences); | 21 OnPreferencesChanged(mojo.common.mojom.DictionaryValue preferences); |
| 15 }; | 22 }; |
| 16 | 23 |
| 17 // Manages actual read/write of preference data. Accepts observers who subscribe | 24 // Manages actual read/write of preference data. Accepts observers who subscribe |
| 18 // to preferences, notifying them of changes. | 25 // to preferences, notifying them of changes. |
| 19 interface PreferencesManager { | 26 interface PreferencesManager { |
| 20 AddObserver(PreferencesObserver client); | |
| 21 SetPreferences(mojo.common.mojom.DictionaryValue preferences); | 27 SetPreferences(mojo.common.mojom.DictionaryValue preferences); |
| 22 Subscribe(array<string> preferences); | 28 Subscribe(array<string> preferences); |
| 23 }; | 29 }; |
| OLD | NEW |