ONOS-6833: UiPreferencesService: augment to include getPreferences(username, prefsKey)
Change-Id: I583ba8cb4b49d32cc94313143ee9b152d87b1086
diff --git a/core/api/src/main/java/org/onosproject/ui/UiPreferencesService.java b/core/api/src/main/java/org/onosproject/ui/UiPreferencesService.java
index 5ddd70b..7a4ccf3 100644
--- a/core/api/src/main/java/org/onosproject/ui/UiPreferencesService.java
+++ b/core/api/src/main/java/org/onosproject/ui/UiPreferencesService.java
@@ -42,12 +42,22 @@
Map<String, ObjectNode> getPreferences(String userName);
/**
+ * Returns the named preference for the specified user.
+ * If no such preferences exist, null will be returned.
+ *
+ * @param username user name
+ * @param key preference key
+ * @return named preference
+ */
+ ObjectNode getPreference(String username, String key);
+
+ /**
* Sets the named preference for the specified user.
*
- * @param userName user name
- * @param preference name of the user preference
- * @param value preference value
+ * @param username user name
+ * @param key preference key
+ * @param value preference value
*/
- void setPreference(String userName, String preference, ObjectNode value);
+ void setPreference(String username, String key, ObjectNode value);
}
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java b/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java
index 7895751..5ef4724 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java
@@ -348,17 +348,22 @@
}
@Override
- public Map<String, ObjectNode> getPreferences(String userName) {
+ public Map<String, ObjectNode> getPreferences(String username) {
ImmutableMap.Builder<String, ObjectNode> builder = ImmutableMap.builder();
prefs.entrySet().stream()
- .filter(e -> e.getKey().startsWith(userName + SLASH))
+ .filter(e -> e.getKey().startsWith(username + SLASH))
.forEach(e -> builder.put(keyName(e.getKey()), e.getValue()));
return builder.build();
}
@Override
- public void setPreference(String userName, String preference, ObjectNode value) {
- prefs.put(key(userName, preference), value);
+ public ObjectNode getPreference(String username, String key) {
+ return prefs.get(key(username, key));
+ }
+
+ @Override
+ public void setPreference(String username, String key, ObjectNode value) {
+ prefs.put(key(username, key), value);
}
// =====================================================================