protected void updateMultiValuedKeys(ActionRequest actionRequest) { String settingsId = getSettingsId(actionRequest); SettingsDescriptor settingsDescriptor = SettingsFactoryUtil.getSettingsDescriptor(settingsId); Set<String> multiValuedKeys = settingsDescriptor.getMultiValuedKeys(); for (String multiValuedKey : multiValuedKeys) { String multiValuedValue = getParameter( actionRequest, multiValuedKey); if (multiValuedValue != null) { setPreference( actionRequest, multiValuedKey, StringUtil.split(multiValuedValue)); } } }
protected void storeSettings( ActionRequest actionRequest, ThemeDisplay themeDisplay) throws IOException, SettingsException, ValidatorException { Settings settings = SettingsFactoryUtil.getSettings( new CompanyServiceSettingsLocator( themeDisplay.getCompanyId(), getSettingsId())); ModifiableSettings modifiableSettings = settings.getModifiableSettings(); SettingsDescriptor settingsDescriptor = SettingsFactoryUtil.getSettingsDescriptor(getSettingsId()); for (String name : settingsDescriptor.getAllKeys()) { String value = getString(actionRequest, name); if (value.equals(Portal.TEMP_OBFUSCATION_VALUE)) { continue; } String oldValue = settings.getValue(name, null); if (!value.equals(oldValue)) { modifiableSettings.setValue(name, value); } } modifiableSettings.store(); }
protected void storeSettings( ActionRequest actionRequest, ThemeDisplay themeDisplay) throws IOException, SettingsException, ValidatorException { Settings settings = SettingsFactoryUtil.getSettings( new CompanyServiceSettingsLocator( themeDisplay.getCompanyId(), getSettingsId())); ModifiableSettings modifiableSettings = settings.getModifiableSettings(); SettingsDescriptor settingsDescriptor = SettingsFactoryUtil.getSettingsDescriptor(getSettingsId()); for (String name : settingsDescriptor.getAllKeys()) { String value = getString(actionRequest, name); if (value.equals(Portal.TEMP_OBFUSCATION_VALUE)) { continue; } String oldValue = settings.getValue(name, null); if (!value.equals(oldValue)) { modifiableSettings.setValue(name, value); } } modifiableSettings.store(); }