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 5ddd70b64f..7a4ccf34d1 100644 --- a/core/api/src/main/java/org/onosproject/ui/UiPreferencesService.java +++ b/core/api/src/main/java/org/onosproject/ui/UiPreferencesService.java @@ -41,13 +41,23 @@ public interface UiPreferencesService { */ Map 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 7895751ecf..5ef4724281 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 @@ public class UiExtensionManager } @Override - public Map getPreferences(String userName) { + public Map getPreferences(String username) { ImmutableMap.Builder 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); } // =====================================================================