Cleaning up after Keith. :)
This commit is contained in:
@@ -23,6 +23,17 @@ package org.springframework.binding.expression;
|
||||
*/
|
||||
public interface ExpressionParser {
|
||||
|
||||
/**
|
||||
* Is the provided expression string an "eval" expression: meaning an expression that validates to a dynamic value,
|
||||
* and not a literal expression? "Eval" expressions are normally enclosed in delimiters like #{}, where literal
|
||||
* expressions are not delimited.
|
||||
*
|
||||
* TODO - candidate for removal in a future milestone: is this really needed?
|
||||
* @param string the string
|
||||
* @return true if the expression is an eval expression string, false otherwise.
|
||||
*/
|
||||
public boolean isEvalExpressionString(String string);
|
||||
|
||||
/**
|
||||
* Parse the provided expression string, returning an expression evaluator capable of evaluating it.
|
||||
* @param expressionString the parseable expression string; cannot be null
|
||||
|
||||
@@ -22,6 +22,16 @@ import org.springframework.binding.expression.ParserException;
|
||||
*/
|
||||
public class ELExpressionParser implements ExpressionParser {
|
||||
|
||||
/**
|
||||
* The expression prefix.
|
||||
*/
|
||||
private static final String EXPRESSION_PREFIX = "#{";
|
||||
|
||||
/**
|
||||
* The expression suffix.
|
||||
*/
|
||||
private static final String EXPRESSION_SUFFIX = "}";
|
||||
|
||||
/**
|
||||
* The ExpressionFactory for constructing EL expressions
|
||||
*/
|
||||
@@ -45,6 +55,10 @@ public class ELExpressionParser implements ExpressionParser {
|
||||
this.contextFactories.put(expressionTargetType, contextFactory);
|
||||
}
|
||||
|
||||
public boolean isEvalExpressionString(String expressionString) {
|
||||
return expressionString.startsWith(EXPRESSION_PREFIX) && expressionString.endsWith(EXPRESSION_SUFFIX);
|
||||
}
|
||||
|
||||
public Expression parseExpression(String expressionString, Class expressionTargetType,
|
||||
Class expectedEvaluationResultType, ExpressionVariable[] expressionVariables) throws ParserException {
|
||||
if (expectedEvaluationResultType == null) {
|
||||
|
||||
@@ -80,6 +80,10 @@ public abstract class AbstractExpressionParser implements ExpressionParser {
|
||||
this.expressionSuffix = expressionSuffix;
|
||||
}
|
||||
|
||||
public boolean isEvalExpressionString(String string) {
|
||||
return string.startsWith(expressionPrefix) && string.endsWith(expressionSuffix);
|
||||
}
|
||||
|
||||
public Expression parseExpression(String expressionString, Class expressionTargetType,
|
||||
Class expectedEvaluationResultType, ExpressionVariable[] expressionVariables) throws ParserException {
|
||||
Assert.notNull(expressionString, "The expression string to parse is required");
|
||||
|
||||
@@ -29,8 +29,7 @@ import javax.faces.context.ResponseWriter;
|
||||
import javax.faces.render.RenderKit;
|
||||
|
||||
import org.springframework.binding.message.Message;
|
||||
import org.springframework.binding.message.MessageResolver;
|
||||
import org.springframework.binding.message.Messages;
|
||||
import org.springframework.binding.message.MessageBuilder;
|
||||
import org.springframework.binding.message.Severity;
|
||||
import org.springframework.context.MessageSource;
|
||||
import org.springframework.util.ClassUtils;
|
||||
@@ -75,7 +74,7 @@ public class FlowFacesContext extends FacesContext {
|
||||
* Translates a FacesMessage to an SWF Message and adds it to the current MessageContext
|
||||
*/
|
||||
public void addMessage(String clientId, FacesMessage message) {
|
||||
MessageResolver messageResolver;
|
||||
MessageBuilder builder = new MessageBuilder();
|
||||
StringBuffer msgText = new StringBuffer();
|
||||
if (StringUtils.hasText(message.getSummary())) {
|
||||
msgText.append(message.getSummary());
|
||||
@@ -87,13 +86,13 @@ public class FlowFacesContext extends FacesContext {
|
||||
}
|
||||
|
||||
if (message.getSeverity() == FacesMessage.SEVERITY_INFO) {
|
||||
messageResolver = Messages.text(source, msgText.toString(), Severity.INFO);
|
||||
builder.source(source).defaultText(msgText.toString()).info();
|
||||
} else if (message.getSeverity() == FacesMessage.SEVERITY_WARN) {
|
||||
messageResolver = Messages.text(source, msgText.toString(), Severity.WARNING);
|
||||
builder.source(source).defaultText(msgText.toString()).warning();
|
||||
} else {
|
||||
messageResolver = Messages.text(source, msgText.toString(), Severity.ERROR);
|
||||
builder.source(source).defaultText(msgText.toString()).error();
|
||||
}
|
||||
context.getMessageContext().addMessage(messageResolver);
|
||||
context.getMessageContext().addMessage(builder.build());
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -54,10 +54,6 @@ public final class DefaultExpressionParserFactory {
|
||||
return getDefaultExpressionParser().isEvalExpressionString(string);
|
||||
}
|
||||
|
||||
public String parseEvalExpressionString(String string) throws ParserException {
|
||||
return getDefaultExpressionParser().parseEvalExpressionString(string);
|
||||
}
|
||||
|
||||
public Expression parseExpression(String expressionString, Class expressionTargetType,
|
||||
Class expectedEvaluationResultType, ExpressionVariable[] expressionVariables)
|
||||
throws ParserException {
|
||||
|
||||
Reference in New Issue
Block a user