Browse Source
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4 50f2f4bb-b051-0410-bef5-90022cba6387pull/1/head
14 changed files with 92 additions and 310 deletions
@ -1,66 +0,0 @@ |
|||||||
/* |
|
||||||
* Copyright 2004-2008 the original author or authors. |
|
||||||
* |
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
||||||
* you may not use this file except in compliance with the License. |
|
||||||
* You may obtain a copy of the License at |
|
||||||
* |
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
* |
|
||||||
* Unless required by applicable law or agreed to in writing, software |
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS, |
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
||||||
* See the License for the specific language governing permissions and |
|
||||||
* limitations under the License. |
|
||||||
*/ |
|
||||||
package org.springframework.binding.expression; |
|
||||||
|
|
||||||
/** |
|
||||||
* Indicates an expression evaluation failed. |
|
||||||
* |
|
||||||
* @author Keith Donald |
|
||||||
*/ |
|
||||||
public class EvaluationException extends RuntimeException { |
|
||||||
|
|
||||||
private Class contextClass; |
|
||||||
|
|
||||||
private String expressionString; |
|
||||||
|
|
||||||
/** |
|
||||||
* Creates a new evaluation exception. |
|
||||||
* @param contextClass the class of object upon which evaluation was attempted |
|
||||||
* @param expressionString the string form of the expression that failed to evaluate |
|
||||||
* @param message the exception message |
|
||||||
*/ |
|
||||||
public EvaluationException(Class contextClass, String expressionString, String message) { |
|
||||||
this(contextClass, expressionString, message, null); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Creates a new evaluation exception. |
|
||||||
* @param contextClass the class of object upon which evaluation was attempted |
|
||||||
* @param expressionString the string form of the expression that failed to evaluate |
|
||||||
* @param message the exception message |
|
||||||
* @param cause the underlying cause of this evaluation exception |
|
||||||
*/ |
|
||||||
public EvaluationException(Class contextClass, String expressionString, String message, Throwable cause) { |
|
||||||
super(message, cause); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* The class of object upon which evaluation was attempted and failed. |
|
||||||
* @return the context class
|
|
||||||
*/ |
|
||||||
public Class getContextClass() { |
|
||||||
return contextClass; |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* The string form of the expression that failed to evaluate against an instance of the the context class. |
|
||||||
* @return the expression string |
|
||||||
*/ |
|
||||||
public String getExpressionString() { |
|
||||||
return expressionString; |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
||||||
@ -1,95 +0,0 @@ |
|||||||
/* |
|
||||||
* Copyright 2004-2008 the original author or authors. |
|
||||||
* |
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
||||||
* you may not use this file except in compliance with the License. |
|
||||||
* You may obtain a copy of the License at |
|
||||||
* |
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
* |
|
||||||
* Unless required by applicable law or agreed to in writing, software |
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS, |
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
||||||
* See the License for the specific language governing permissions and |
|
||||||
* limitations under the License. |
|
||||||
*/ |
|
||||||
package org.springframework.binding.expression; |
|
||||||
|
|
||||||
/** |
|
||||||
* An expression variable. |
|
||||||
* @author Keith Donald |
|
||||||
*/ |
|
||||||
public class ExpressionVariable { |
|
||||||
|
|
||||||
private String name; |
|
||||||
|
|
||||||
private String valueExpression; |
|
||||||
|
|
||||||
private ParserContext parserContext; |
|
||||||
|
|
||||||
/** |
|
||||||
* Creates a new expression variable. |
|
||||||
* @param name the name of the variable, acting as an convenient alias (required) |
|
||||||
* @param valueExpression the value expression (required) |
|
||||||
*/ |
|
||||||
public ExpressionVariable(String name, String valueExpression) { |
|
||||||
init(name, valueExpression, null); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Creates a new expression variable with a populated parser context. |
|
||||||
* @param name the name of the variable, acting as an convenient alias (required) |
|
||||||
* @param valueExpression the value expression (required) |
|
||||||
* @param parserContext the parser context to use to parse the value expression (optional) |
|
||||||
*/ |
|
||||||
public ExpressionVariable(String name, String valueExpression, ParserContext parserContext) { |
|
||||||
init(name, valueExpression, parserContext); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Returns the variable name. |
|
||||||
* @return the variable name |
|
||||||
*/ |
|
||||||
public String getName() { |
|
||||||
return name; |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Returns the expression that will be evaluated when the variable is referenced by its name in another expression. |
|
||||||
* @return the expression value. |
|
||||||
*/ |
|
||||||
public String getValueExpression() { |
|
||||||
return valueExpression; |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Returns the parser context to use to parse the variable's value expression. |
|
||||||
* @return the value expression parser context |
|
||||||
*/ |
|
||||||
public ParserContext getParserContext() { |
|
||||||
return parserContext; |
|
||||||
} |
|
||||||
|
|
||||||
public boolean equals(Object o) { |
|
||||||
if (!(o instanceof ExpressionVariable)) { |
|
||||||
return false; |
|
||||||
} |
|
||||||
ExpressionVariable var = (ExpressionVariable) o; |
|
||||||
return name.equals(var.name); |
|
||||||
} |
|
||||||
|
|
||||||
public int hashCode() { |
|
||||||
return name.hashCode(); |
|
||||||
} |
|
||||||
|
|
||||||
public String toString() { |
|
||||||
return "[Expression Variable '" + name + "']"; |
|
||||||
} |
|
||||||
|
|
||||||
private void init(String name, String valueExpression, ParserContext parserContext) { |
|
||||||
this.name = name; |
|
||||||
this.valueExpression = valueExpression; |
|
||||||
this.parserContext = parserContext; |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
||||||
@ -1,56 +0,0 @@ |
|||||||
/* |
|
||||||
* Copyright 2004-2008 the original author or authors. |
|
||||||
* |
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
||||||
* you may not use this file except in compliance with the License. |
|
||||||
* You may obtain a copy of the License at |
|
||||||
* |
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
* |
|
||||||
* Unless required by applicable law or agreed to in writing, software |
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS, |
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
||||||
* See the License for the specific language governing permissions and |
|
||||||
* limitations under the License. |
|
||||||
*/ |
|
||||||
package org.springframework.binding.expression; |
|
||||||
|
|
||||||
/** |
|
||||||
* Base class for exceptions thrown during expression parsing. |
|
||||||
* |
|
||||||
* @author Keith Donald |
|
||||||
*/ |
|
||||||
public class ParserException extends RuntimeException { |
|
||||||
|
|
||||||
/** |
|
||||||
* The expression string that could not be parsed. |
|
||||||
*/ |
|
||||||
private String expressionString; |
|
||||||
|
|
||||||
/** |
|
||||||
* Creates a new expression parsing exception. |
|
||||||
* @param expressionString the expression string that could not be parsed |
|
||||||
* @param cause the underlying cause of this exception |
|
||||||
*/ |
|
||||||
public ParserException(String expressionString, Throwable cause) { |
|
||||||
this(expressionString, "Unable to parse expression string '" + expressionString + "'", cause); |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Creates a new expression parsing exception. |
|
||||||
* @param expressionString the expression string that could not be parsed |
|
||||||
* @param message a descriptive message |
|
||||||
* @param cause the underlying cause of this exception |
|
||||||
*/ |
|
||||||
public ParserException(String expressionString, String message, Throwable cause) { |
|
||||||
super(message, cause); |
|
||||||
this.expressionString = expressionString; |
|
||||||
} |
|
||||||
|
|
||||||
/** |
|
||||||
* Returns the expression string that could not be parsed. |
|
||||||
*/ |
|
||||||
public Object getExpressionString() { |
|
||||||
return expressionString; |
|
||||||
} |
|
||||||
} |
|
||||||
@ -1,36 +0,0 @@ |
|||||||
/* |
|
||||||
* Copyright 2004-2008 the original author or authors. |
|
||||||
* |
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
||||||
* you may not use this file except in compliance with the License. |
|
||||||
* You may obtain a copy of the License at |
|
||||||
* |
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
* |
|
||||||
* Unless required by applicable law or agreed to in writing, software |
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS, |
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
||||||
* See the License for the specific language governing permissions and |
|
||||||
* limitations under the License. |
|
||||||
*/ |
|
||||||
package org.springframework.binding.expression; |
|
||||||
|
|
||||||
/** |
|
||||||
* An evaluation exception indicating a expression that references a property failed to evaluate because the property |
|
||||||
* could not be found. |
|
||||||
* @author Keith Donald |
|
||||||
*/ |
|
||||||
public class PropertyNotFoundException extends EvaluationException { |
|
||||||
|
|
||||||
/** |
|
||||||
* Creates a new property not found exception |
|
||||||
* @param contextClass the class of object upon which property evaluation was attempted |
|
||||||
* @param property the property that could not be found |
|
||||||
* @param cause root cause of the failure |
|
||||||
*/ |
|
||||||
public PropertyNotFoundException(Class contextClass, String property, Throwable cause) { |
|
||||||
super(contextClass, property, "Property '" + property + "' not found on context of class [" |
|
||||||
+ contextClass.getName() + "]", cause); |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
||||||
@ -1,7 +0,0 @@ |
|||||||
<html> |
|
||||||
<body> |
|
||||||
<p> |
|
||||||
Core expression language abstraction for parsing and evaluating expressions. |
|
||||||
</p> |
|
||||||
</body> |
|
||||||
</html> |
|
||||||
@ -1,7 +0,0 @@ |
|||||||
<html> |
|
||||||
<body> |
|
||||||
<p> |
|
||||||
The Spring Data Binding framework, an internal library used by Spring Web Flow. |
|
||||||
</p> |
|
||||||
</body> |
|
||||||
</html> |
|
||||||
Loading…
Reference in new issue