Example usage for org.springframework.context.support AbstractMessageSource AbstractMessageSource

List of usage examples for org.springframework.context.support AbstractMessageSource AbstractMessageSource

Introduction

In this page you can find the example usage for org.springframework.context.support AbstractMessageSource AbstractMessageSource.

Prototype

AbstractMessageSource

Source Link

Usage

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());
}