organized expression language support

This commit is contained in:
Keith Donald
2007-07-31 16:31:39 +00:00
parent c7986be1eb
commit 047ad0e46d
16 changed files with 33 additions and 22 deletions

View File

@@ -11,5 +11,7 @@
<classpathentry kind="lib" path="lib/global/spring-beans.jar" sourcepath="/spring/src"/>
<classpathentry kind="lib" path="lib/global/ognl.jar"/>
<classpathentry kind="lib" path="lib/global/spring-context.jar"/>
<classpathentry kind="lib" path="lib/global/el-api.jar"/>
<classpathentry kind="lib" path="lib/global/jboss-el.jar"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>

View File

@@ -1,4 +1,4 @@
package org.springframework.binding.expression.support;
package org.springframework.binding.expression.el;
import javax.el.ELContext;

View File

@@ -1,4 +1,4 @@
package org.springframework.binding.expression.support;
package org.springframework.binding.expression.el;
import javax.el.ArrayELResolver;
import javax.el.BeanELResolver;

View File

@@ -1,4 +1,4 @@
package org.springframework.binding.expression.support;
package org.springframework.binding.expression.el;
import java.util.ArrayList;
import java.util.Iterator;
@@ -11,7 +11,7 @@ import javax.el.FunctionMapper;
import javax.el.VariableMapper;
/**
* An {@link ELContext} implementation that is meant to aggregate the {@link ELResolver}s of preexisting
* An {@link ELContext} implementation that is meant to aggregate the {@link ELResolver}s of pre-existing
* {@link ELContext}s. Can also be used standalone if no other {@link ELContext} exists in the current environment.
*
* Note - Using this context standalone requires Java 5 or higher.

View File

@@ -1,4 +1,4 @@
package org.springframework.binding.expression.support;
package org.springframework.binding.expression.el;
import javax.el.ELContext;

View File

@@ -1,4 +1,4 @@
package org.springframework.binding.expression.support;
package org.springframework.binding.expression.el;
import javax.el.ELContext;
import javax.el.ELException;
@@ -16,9 +16,9 @@ import org.springframework.binding.expression.SettableExpression;
*/
public class ELExpression implements SettableExpression {
ELContextFactory factory;
private ELContextFactory factory;
ValueExpression expression;
private ValueExpression expression;
public ELExpression(ELContextFactory factory, ValueExpression expression) {
this.factory = factory;

View File

@@ -1,4 +1,4 @@
package org.springframework.binding.expression.support;
package org.springframework.binding.expression.el;
import javax.el.ELContext;
import javax.el.ELException;
@@ -17,7 +17,7 @@ import org.springframework.binding.expression.SettableExpression;
*
* @author Jeremy Grelle
*/
public class ELExpressionParser implements ExpressionParser {
public class JBossELExpressionParser implements ExpressionParser {
/**
* The expression prefix for deferred EL expressions.

View File

@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.binding.expression.support;
package org.springframework.binding.expression.ognl;
import java.util.Collections;
import java.util.Map;

View File

@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.binding.expression.support;
package org.springframework.binding.expression.ognl;
import ognl.Ognl;
import ognl.OgnlException;
@@ -23,6 +23,7 @@ import ognl.PropertyAccessor;
import org.springframework.binding.expression.Expression;
import org.springframework.binding.expression.ParserException;
import org.springframework.binding.expression.SettableExpression;
import org.springframework.binding.expression.support.AbstractExpressionParser;
/**
* An expression parser that parses Ognl expressions.

View File

@@ -11,6 +11,9 @@ import javax.el.VariableMapper;
import junit.framework.TestCase;
import org.springframework.binding.expression.ExpressionParser;
import org.springframework.binding.expression.el.DelegatingELContext;
import org.springframework.binding.expression.el.ELContextFactory;
import org.springframework.binding.expression.el.JBossELExpressionParser;
/**
* Tests to verify the delegation behavior of ELContextImpl.
@@ -34,7 +37,7 @@ public class ELContextDelegationTests extends TestCase {
assertEquals(Boolean.TRUE, expressionParser.parseExpression("#{bean.flag}").evaluate(null, null));
}
private class DelegatingELExpressionParser extends ELExpressionParser {
private class DelegatingELExpressionParser extends JBossELExpressionParser {
protected ELContextFactory getELContextFactory() {
ELContextFactory stubFactory = new ELContextFactory() {

View File

@@ -3,6 +3,7 @@ package org.springframework.binding.expression.support;
import java.util.HashMap;
import java.util.Map;
import org.easymock.MockControl;
import org.springframework.binding.expression.el.JBossELExpressionParser;
import junit.framework.TestCase;
@@ -14,7 +15,7 @@ import junit.framework.TestCase;
*/
public class ELMethodExpressionTests extends TestCase {
ELExpressionParser parser = new ELExpressionParser();
JBossELExpressionParser parser = new JBossELExpressionParser();
Map context;

View File

@@ -3,13 +3,14 @@ package org.springframework.binding.expression.support;
import junit.framework.TestCase;
import org.springframework.binding.expression.Expression;
import org.springframework.binding.expression.el.JBossELExpressionParser;
public class ELMethodParsingTests extends TestCase {
ELExpressionParser parser;
JBossELExpressionParser parser;
protected void setUp() throws Exception {
parser = new ELExpressionParser();
parser = new JBossELExpressionParser();
}
public void testEmptyMethod() {

View File

@@ -19,9 +19,10 @@ import junit.framework.TestCase;
import org.springframework.binding.expression.Expression;
import org.springframework.binding.expression.ParserException;
import org.springframework.binding.expression.ognl.OgnlExpressionParser;
/**
* Unit tests for {@link org.springframework.binding.expression.support.OgnlExpressionParser}.
* Unit tests for {@link org.springframework.binding.expression.ognl.OgnlExpressionParser}.
*/
public class OgnlExpressionParserTests extends TestCase {

View File

@@ -21,6 +21,8 @@ import java.util.List;
import org.springframework.binding.expression.EvaluationException;
import org.springframework.binding.expression.ExpressionParser;
import org.springframework.binding.expression.ParserException;
import org.springframework.binding.expression.el.JBossELExpressionParser;
import org.springframework.binding.expression.ognl.OgnlExpressionParser;
import junit.framework.TestCase;
import junit.framework.TestSuite;
@@ -46,9 +48,9 @@ public class SimpleExpressionTests extends TestCase {
suite.addTest(new SimpleExpressionTests("testGetValue", new BeanWrapperExpressionParser(), "$"));
suite.addTest(new SimpleExpressionTests("testSetValue", new BeanWrapperExpressionParser(), "$"));
suite.addTest(new SimpleExpressionTests("testSyntaxError", new BeanWrapperExpressionParser(), "$"));
suite.addTest(new SimpleExpressionTests("testGetValue", new ELExpressionParser(), "#"));
suite.addTest(new SimpleExpressionTests("testSetValue", new ELExpressionParser(), "#"));
suite.addTest(new SimpleExpressionTests("testSyntaxError", new ELExpressionParser(), "#"));
suite.addTest(new SimpleExpressionTests("testGetValue", new JBossELExpressionParser(), "#"));
suite.addTest(new SimpleExpressionTests("testSetValue", new JBossELExpressionParser(), "#"));
suite.addTest(new SimpleExpressionTests("testSyntaxError", new JBossELExpressionParser(), "#"));
return suite;
}

View File

@@ -19,7 +19,7 @@ import java.util.HashMap;
import junit.framework.TestCase;
import org.springframework.binding.expression.support.OgnlExpressionParser;
import org.springframework.binding.expression.ognl.OgnlExpressionParser;
/**
* Unit tests for the {@link org.springframework.binding.mapping.RequiredMapping}.

View File

@@ -20,7 +20,7 @@ import junit.framework.TestCase;
import org.springframework.binding.convert.ConversionException;
import org.springframework.binding.convert.support.DefaultConversionService;
import org.springframework.binding.convert.support.TextToExpression;
import org.springframework.binding.expression.support.OgnlExpressionParser;
import org.springframework.binding.expression.ognl.OgnlExpressionParser;
/**
* Test case for {@link TextToMethodSignature}.