public final String resolveMessage( final ITemplateContext context, final Class<?> origin, final String key, final Object[] messageParameters, final boolean performTemplateBasedResolution, final boolean performOriginBasedResolution, final boolean performDefaultBasedResolution) { Validate.notNull(context, "Context cannot be null"); Validate.notNull(context.getLocale(), "Locale in context cannot be null"); Validate.notNull(key, "Message key cannot be null"); final Locale locale = context.getLocale(); /* * FIRST STEP: Look for the message using template-based resolution * * Note that resolution is top-down, this is, starts at the first-level template (the one being executed) * and only if a key is not found will try resolving for nested templates in the order they have been nested. * * This allows container templates to override the messages defined in fragments, which will act as defaults. */ if (performTemplateBasedResolution) { for (final TemplateData templateData : context.getTemplateStack()) { final String template = templateData.getTemplate(); final ITemplateResource templateResource = templateData.getTemplateResource(); final boolean templateCacheable = templateData.getValidity().isCacheable(); Map<String, String> messagesForLocaleForTemplate; // We will ONLY cache messages for cacheable templates. This should adequately control cache growth
this.standardMessageResolver.resolveMessage(context, origin, key, messageParameters, false, true, true); if (message != null) { return message;
this.standardMessageResolver.resolveMessage(context, origin, key, messageParameters, false, true, true); if (message != null) { return message;
this.standardMessageResolver.resolveMessage(context, origin, key, messageParameters, false, true, true); if (message != null) { return message;
this.standardMessageResolver.resolveMessage(context, origin, key, messageParameters, false, true, true); if (message != null) { return message;
this.standardMessageResolver.resolveMessage(context, origin, key, messageParameters, false, true, true); if (message != null) { return message;
message = this.standardMessageResolver.resolveMessage(null, origin, key, messageParameters); if (message != null) { return message;
message = this.standardMessageResolver.resolveMessage(null, origin, key, messageParameters); if (message != null) { return message;