@Test public void testLocaleEditor() { PropertyEditor localeEditor = new LocaleEditor(); localeEditor.setAsText("en_CA"); assertEquals(Locale.CANADA, localeEditor.getValue()); assertEquals("en_CA", localeEditor.getAsText()); localeEditor = new LocaleEditor(); assertEquals("", localeEditor.getAsText()); }
@Override public String getAsText() { Object value = getValue(); return (value != null ? value.toString() : ""); }
@Override public void setAsText(String text) { setValue(StringUtils.parseLocaleString(text)); }
/** * Sets the locale used in SOAP fault. * @param locale */ public SoapFault locale(String locale) { LocaleEditor localeEditor = new LocaleEditor(); localeEditor.setAsText(locale); this.locale = (Locale) localeEditor.getValue(); return this; }
@DwrPermission(anonymous = true) public void setLocale(String locale) { WebContext webContext = WebContextFactory.get(); LocaleResolver localeResolver = new SessionLocaleResolver(); LocaleEditor localeEditor = new LocaleEditor(); localeEditor.setAsText(locale); localeResolver.setLocale(webContext.getHttpServletRequest(), webContext.getHttpServletResponse(), (Locale) localeEditor.getValue()); }
@Override public void setAsText(String text) throws IllegalArgumentException { if (!StringUtils.hasLength(text)) { setValue(null); } else { String[] tokens = StringUtils.commaDelimitedListToStringArray(text); if (tokens.length < FAULT_STRING_INDEX) { throw new IllegalArgumentException("Invalid amount of comma delimited values in [" + text + "]: SoapFaultDefinitionEditor requires at least 1"); } SoapFaultDefinition definition = new SoapFaultDefinition(); QNameEditor qNameEditor = new QNameEditor(); qNameEditor.setAsText(tokens[FAULT_CODE_INDEX].trim()); definition.setFaultCode((QName) qNameEditor.getValue()); if (tokens.length > 1) { definition.setFaultStringOrReason(tokens[FAULT_STRING_INDEX].trim()); if (tokens.length > 2) { LocaleEditor localeEditor = new LocaleEditor(); localeEditor.setAsText(tokens[FAULT_STRING_LOCALE_INDEX].trim()); definition.setLocale((Locale) localeEditor.getValue()); } } setValue(definition); } }
this.defaultEditors.put(InputStream.class, new InputStreamEditor()); this.defaultEditors.put(InputSource.class, new InputSourceEditor()); this.defaultEditors.put(Locale.class, new LocaleEditor()); this.defaultEditors.put(Path.class, new PathEditor()); this.defaultEditors.put(Pattern.class, new PatternEditor());
@Override public String getAsText() { Object value = getValue(); return (value != null ? value.toString() : ""); }
@Override public void setAsText(String text) { setValue(StringUtils.parseLocaleString(text)); }
@Override public void setAsText(String text) throws IllegalArgumentException { if (!StringUtils.hasLength(text)) { setValue(null); } else { String[] tokens = StringUtils.commaDelimitedListToStringArray(text); if (tokens.length < FAULT_STRING_INDEX) { throw new IllegalArgumentException("Invalid amount of comma delimited values in [" + text + "]: SoapFaultDefinitionEditor requires at least 1"); } SoapFaultDefinition definition = new SoapFaultDefinition(); QNameEditor qNameEditor = new QNameEditor(); qNameEditor.setAsText(tokens[FAULT_CODE_INDEX].trim()); definition.setFaultCode((QName) qNameEditor.getValue()); if (tokens.length > 1) { definition.setFaultStringOrReason(tokens[FAULT_STRING_INDEX].trim()); if (tokens.length > 2) { LocaleEditor localeEditor = new LocaleEditor(); localeEditor.setAsText(tokens[FAULT_STRING_LOCALE_INDEX].trim()); definition.setLocale((Locale) localeEditor.getValue()); } } setValue(definition); } }
this.defaultEditors.put(InputStream.class, new InputStreamEditor()); this.defaultEditors.put(InputSource.class, new InputSourceEditor()); this.defaultEditors.put(Locale.class, new LocaleEditor()); this.defaultEditors.put(Path.class, new PathEditor()); this.defaultEditors.put(Pattern.class, new PatternEditor());
@Override public String getAsText() { Object value = getValue(); return (value != null ? value.toString() : ""); }
@Override public void setAsText(String text) { setValue(StringUtils.parseLocaleString(text)); }
@Override public void setAsText(String text) throws IllegalArgumentException { if (!StringUtils.hasLength(text)) { setValue(null); } else { String[] tokens = StringUtils.commaDelimitedListToStringArray(text); if (tokens.length < FAULT_STRING_INDEX) { throw new IllegalArgumentException("Invalid amount of comma delimited values in [" + text + "]: SoapFaultDefinitionEditor requires at least 1"); } SoapFaultDefinition definition = new SoapFaultDefinition(); QNameEditor qNameEditor = new QNameEditor(); qNameEditor.setAsText(tokens[FAULT_CODE_INDEX].trim()); definition.setFaultCode((QName) qNameEditor.getValue()); if (tokens.length > 1) { definition.setFaultStringOrReason(tokens[FAULT_STRING_INDEX].trim()); if (tokens.length > 2) { LocaleEditor localeEditor = new LocaleEditor(); localeEditor.setAsText(tokens[FAULT_STRING_LOCALE_INDEX].trim()); definition.setLocale((Locale) localeEditor.getValue()); } } setValue(definition); } }
this.defaultEditors.put(InputStream.class, new InputStreamEditor()); this.defaultEditors.put(InputSource.class, new InputSourceEditor()); this.defaultEditors.put(Locale.class, new LocaleEditor()); this.defaultEditors.put(Pattern.class, new PatternEditor()); this.defaultEditors.put(Properties.class, new PropertiesEditor());
@Override public String getAsText() { Object value = getValue(); return (value != null ? value.toString() : ""); }
@Override public void setAsText(String text) { setValue(StringUtils.parseLocaleString(text)); }
@Override public void setAsText(String text) throws IllegalArgumentException { if (!StringUtils.hasLength(text)) { setValue(null); } else { String[] tokens = StringUtils.commaDelimitedListToStringArray(text); if (tokens.length < FAULT_STRING_INDEX) { throw new IllegalArgumentException("Invalid amount of comma delimited values in [" + text + "]: SoapFaultDefinitionEditor requires at least 1"); } SoapFaultDefinition definition = new SoapFaultDefinition(); QNameEditor qNameEditor = new QNameEditor(); qNameEditor.setAsText(tokens[FAULT_CODE_INDEX].trim()); definition.setFaultCode((QName) qNameEditor.getValue()); if (tokens.length > 1) { definition.setFaultStringOrReason(tokens[FAULT_STRING_INDEX].trim()); if (tokens.length > 2) { LocaleEditor localeEditor = new LocaleEditor(); localeEditor.setAsText(tokens[FAULT_STRING_LOCALE_INDEX].trim()); definition.setLocale((Locale) localeEditor.getValue()); } } setValue(definition); } }
import org.springframework.web.servlet.support.RequestContextUtils import org.springframework.beans.propertyeditors.LocaleEditor def localeResolver = RequestContextUtils.getLocaleResolver(request) def localeEditor = new LocaleEditor() localeEditor.setAsText(params.lang) localeResolver?.setLocale(request, response, localeEditor.value)
public String getAsText() { Object value = getValue(); return (value != null ? value.toString() : ""); }