List<Token> tokens = null;
if ( cachingEnabled ) {
tokens = tokenizedParameterMessages.get( resolvedMessage );
}
if ( tokens == null ) {
TokenCollector tokenCollector = new TokenCollector( resolvedMessage, InterpolationTermType.PARAMETER );
tokens = tokenCollector.getTokenList();
if ( cachingEnabled ) {
tokenizedParameterMessages.putIfAbsent( resolvedMessage, tokens );
}
}
resolvedMessage = interpolateExpression(
new TokenIterator( tokens ),
context,
locale
);
// resolve EL expressions (step 5)
tokens = null;
if ( cachingEnabled ) {
tokens = tokenizedELMessages.get( resolvedMessage );
}
if ( tokens == null ) {
TokenCollector tokenCollector = new TokenCollector( resolvedMessage, InterpolationTermType.EL );
tokens = tokenCollector.getTokenList();
if ( cachingEnabled ) {
tokenizedELMessages.putIfAbsent( resolvedMessage, tokens );
}
}