List of usage examples for org.springframework.context.support AbstractMessageSource AbstractMessageSource
AbstractMessageSource
From source file:net.solarnetwork.node.runtime.JobSettingSpecifierProvider.java
/** * Construct with settings UID.//from w w w . j a v a 2 s . c o m * * @param settingUID * the setting UID * @param source * a message source */ public JobSettingSpecifierProvider(String settingUID, MessageSource source) { super(); this.settingUID = settingUID; this.messageSource = source; if (source == null || !hasMessage(source, "title")) { messages.put("title", new MessageFormat(titleValue(settingUID))); } AbstractMessageSource msgSource = new AbstractMessageSource() { @Override protected MessageFormat resolveCode(String code, Locale locale) { return messages.get(code); } }; msgSource.setParentMessageSource(source); this.messageSource = msgSource; }
From source file:net.sourceforge.vulcan.spring.DelegatingResourceBundleMessageSourceTest.java
public void testDisablesUseCodeAsMessageOptionInChildren() throws Exception { final AbstractMessageSource src = new AbstractMessageSource() { @Override/*from w ww . j a va 2 s .c o m*/ public void setUseCodeAsDefaultMessage(boolean useCodeAsDefaultMessage) { super.setUseCodeAsDefaultMessage(useCodeAsDefaultMessage); DelegatingResourceBundleMessageSourceTest.this.useCodeAsDefaultMessage = useCodeAsDefaultMessage; } @Override protected String getMessageInternal(String code, Object[] args, Locale locale) { return null; } @Override protected MessageFormat resolveCode(String code, Locale locale) { return null; } }; MockApplicationContext child = new MockApplicationContext() { @Override public boolean containsBeanDefinition(String name) { if (AbstractApplicationContext.MESSAGE_SOURCE_BEAN_NAME.equals(name)) { return true; } return super.containsBean(name); } @Override public Object getBean(String name) throws BeansException { return this.getBean(name, null); } @Override public Object getBean(String name, @SuppressWarnings("rawtypes") Class cls) throws BeansException { if (AbstractApplicationContext.MESSAGE_SOURCE_BEAN_NAME.equals(name)) { return src; } return super.getBean(name); } }; src.setUseCodeAsDefaultMessage(true); child.refresh(); assertTrue(useCodeAsDefaultMessage); source.setUseCodeAsDefaultMessage(false); source.addDelegate(child); try { source.getMessage("no.such.message", null, null); fail("should have thrown exception"); } catch (NoSuchMessageException e) { } assertFalse(useCodeAsDefaultMessage); source.setUseCodeAsDefaultMessage(true); assertEquals("no.such.message", source.getMessage("no.such.message", null, null)); assertEquals("no.such.message", source.getMessageInternal("no.such.message", null, null)); }
From source file:com.jaspersoft.jasperserver.war.themes.ThemeCache.java
private HierarchicalTheme createTheme(String tenantQualifiedThemeName) { String sep = configurationBean.getUserNameSeparator(); int sepPos = tenantQualifiedThemeName.indexOf(sep); String themeName = (sepPos > 0) ? tenantQualifiedThemeName.substring(0, sepPos) : tenantQualifiedThemeName; String themeFolder = configurationBean.getThemeFolderName() + "/" + themeName; if (sepPos > 0) { // tenant theme String tenantId = tenantQualifiedThemeName.substring(sepPos + 1); Tenant tenant = tenantService.getTenant(null, tenantId); String tenantFolder = tenant.getTenantFolderUri(); themeFolder = tenantFolder + themeFolder; }//from www.j a va 2 s .c om FilterCriteria filterCriteria = FilterCriteria.createFilter(FileResource.class); filterCriteria.addFilterElement(FilterCriteria.createAncestorFolderFilter(themeFolder)); ExecutionContext executionContext = JasperServerUtil.getExecutionContext(); ResourceLookup[] lookups = repositoryService.findResource(executionContext, filterCriteria); final String uid = getNewUID(); ThemeMessageSource themeMessageSource = new ThemeMessageSource(); if (lookups != null) { int k = themeFolder.length() + 1; for (int i = 0; i < lookups.length; i++) { ResourceLookup rlu = lookups[i]; String relPath = rlu.getURIString().substring(k); Date lastModified = rlu.getUpdateDate(); FileResourceData frd = repositoryService.getResourceData(executionContext, rlu.getURIString()); byte[] data = frd.getData(); ThemeResource themeResource = new ThemeResource(lastModified, data); String webLink = configurationBean.getThemeServletPrefix() + "/" + uid + "/" + relPath; resourceMap.put(webLink, themeResource); themeMessageSource.addMessage(relPath, webLink); } } HierarchicalTheme theme = new RepositoryFolderTheme(tenantQualifiedThemeName, null, new AbstractMessageSource() { @Override protected MessageFormat resolveCode(String code, Locale locale) { return new MessageFormat( configurationBean.getThemeServletPrefix() + "/" + uid + "/" + code); } }); themeMap.put(tenantQualifiedThemeName, theme); uid2name.put(uid, tenantQualifiedThemeName); name2uid.put(tenantQualifiedThemeName, uid); return theme; }
From source file:org.sipfoundry.sipxconfig.alarm.AlarmConfigurationTest.java
@Test public void testGenerateAlarmServer() throws Exception { AlarmConfiguration c = new AlarmConfiguration(); c.setMessageSource(new AbstractMessageSource() { protected MessageFormat resolveCode(String arg0, Locale arg1) { return new MessageFormat(arg0); }//from w ww .j a v a 2 s . c om }); AlarmServer server = new AlarmServer(); server.setAlarmNotificationEnabled(true); String host = "post.example.org"; StringWriter actual = new StringWriter(); AlarmGroup g1 = new AlarmGroup(); g1.setName("g1"); g1.setEmailAddresses(Arrays.asList("e1@example.org", "e2@example.org")); AlarmGroup g2 = new AlarmGroup(); g2.setName("g2"); List<AlarmGroup> groups = Arrays.asList(g1, g2); Alarm a1 = new Alarm(new AlarmDefinition("a1")); Alarm a2 = new Alarm(new AlarmDefinition("a2")); a1.setGroupName(g1.getName()); a2.setGroupName(g2.getName()); List<Alarm> alarms = Arrays.asList(a1, a2); Address smtp = new Address(MailManager.SMTP, "mail.example.org"); c.writeEmailHandlerConfig(actual, alarms, groups, server, host, smtp, Locale.ENGLISH); InputStream expected = getClass().getResourceAsStream("expected-sipxtrap-handler.yaml"); assertEquals(IOUtils.toString(expected), actual.toString()); }