package org.pentaho.platform.api.usersettings; import org.pentaho.platform.api.usersettings.pojo.IUserSetting; import java.util.List; @Deprecated /** * This interface only exists to extend the IUserSettingService to support getting settings for any user by username * not just for the current session's user. It should be folded back into the IUserSettingService * at the next major release * * @deprecated This is only here to extend the IUserSettingService capabilities until these methods can be folded in. */ public interface IAnyUserSettingService extends IUserSettingService { /** * Deletes all user settings for a specified username * @param username username to remove the setting from * @throws SecurityException if the active user does not have the appropriate credentials to perform this operation */ void deleteUserSettings( String username ) throws SecurityException; /** * Gets a list of all user settings for a specified username * @param username username to get the setting for * @return * @throws SecurityException if the active user does not have the appropriate credentials to perform this operation */ List<IUserSetting> getUserSettings( String username ) throws SecurityException; /** * Gets a particular user setting for a specified username * @param username username to get the setting for * @param settingName name of the interested setting * @param defaultValue default value if none found * @return * @throws SecurityException if the active user does not have the appropriate credentials to perform this operation */ IUserSetting getUserSetting( String username, String settingName, String defaultValue ) throws SecurityException; /** * Sets a user setting for a specified username * @param username username to get the setting for * @param settingName name of the setting * @param settingValue value of the setting * @throws SecurityException if the active user does not have the appropriate credentials to perform this operation */ void setUserSetting( String username, String settingName, String settingValue ) throws SecurityException; }