Here are the examples of the java api org.springframework.expression.MethodResolver taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.
9 Examples
19
Source : StandardEvaluationContext.java
with MIT License
from Vip-Augus
with MIT License
from Vip-Augus
public boolean removeMethodResolver(MethodResolver methodResolver) {
return initMethodResolvers().remove(methodResolver);
}
19
Source : StandardEvaluationContext.java
with MIT License
from Vip-Augus
with MIT License
from Vip-Augus
public void addMethodResolver(MethodResolver resolver) {
addBeforeDefault(initMethodResolvers(), resolver);
}
19
Source : MethodReference.java
with MIT License
from Vip-Augus
with MIT License
from Vip-Augus
private MethodExecutor findAccessorForMethod(List<TypeDescriptor> argumentTypes, Object targetObject, EvaluationContext evaluationContext) throws SpelEvaluationException {
AccessException accessException = null;
List<MethodResolver> methodResolvers = evaluationContext.getMethodResolvers();
for (MethodResolver methodResolver : methodResolvers) {
try {
MethodExecutor methodExecutor = methodResolver.resolve(evaluationContext, targetObject, this.name, argumentTypes);
if (methodExecutor != null) {
return methodExecutor;
}
} catch (AccessException ex) {
accessException = ex;
break;
}
}
String method = FormatHelper.formatMethodForMessage(this.name, argumentTypes);
String clreplacedName = FormatHelper.formatClreplacedNameForMessage(targetObject instanceof Clreplaced ? ((Clreplaced<?>) targetObject) : targetObject.getClreplaced());
if (accessException != null) {
throw new SpelEvaluationException(getStartPosition(), accessException, SpelMessage.PROBLEM_LOCATING_METHOD, method, clreplacedName);
} else {
throw new SpelEvaluationException(getStartPosition(), SpelMessage.METHOD_NOT_FOUND, method, clreplacedName);
}
}
19
Source : MethodInvocationTests.java
with Apache License 2.0
from SourceHot
with Apache License 2.0
from SourceHot
@Test
public void testAddingMethodResolvers() {
StandardEvaluationContext ctx = new StandardEvaluationContext();
// reflective method accessor is the only one by default
List<MethodResolver> methodResolvers = ctx.getMethodResolvers();
replacedertThat(methodResolvers.size()).isEqualTo(1);
MethodResolver dummy = new DummyMethodResolver();
ctx.addMethodResolver(dummy);
replacedertThat(ctx.getMethodResolvers().size()).isEqualTo(2);
List<MethodResolver> copy = new ArrayList<>();
copy.addAll(ctx.getMethodResolvers());
replacedertThat(ctx.removeMethodResolver(dummy)).isTrue();
replacedertThat(ctx.removeMethodResolver(dummy)).isFalse();
replacedertThat(ctx.getMethodResolvers().size()).isEqualTo(1);
ctx.setMethodResolvers(copy);
replacedertThat(ctx.getMethodResolvers().size()).isEqualTo(2);
}
19
Source : StandardEvaluationContext.java
with Apache License 2.0
from langtianya
with Apache License 2.0
from langtianya
public boolean removeMethodResolver(MethodResolver methodResolver) {
ensureMethodResolversInitialized();
return this.methodResolvers.remove(methodResolver);
}
19
Source : StandardEvaluationContext.java
with Apache License 2.0
from langtianya
with Apache License 2.0
from langtianya
public void addMethodResolver(MethodResolver resolver) {
ensureMethodResolversInitialized();
this.methodResolvers.add(this.methodResolvers.size() - 1, resolver);
}
19
Source : MethodReference.java
with Apache License 2.0
from langtianya
with Apache License 2.0
from langtianya
private MethodExecutor findAccessorForMethod(String name, List<TypeDescriptor> argumentTypes, Object targetObject, EvaluationContext evaluationContext) throws SpelEvaluationException {
List<MethodResolver> methodResolvers = evaluationContext.getMethodResolvers();
if (methodResolvers != null) {
for (MethodResolver methodResolver : methodResolvers) {
try {
MethodExecutor methodExecutor = methodResolver.resolve(evaluationContext, targetObject, name, argumentTypes);
if (methodExecutor != null) {
return methodExecutor;
}
} catch (AccessException ex) {
throw new SpelEvaluationException(getStartPosition(), ex, SpelMessage.PROBLEM_LOCATING_METHOD, name, targetObject.getClreplaced());
}
}
}
throw new SpelEvaluationException(getStartPosition(), SpelMessage.METHOD_NOT_FOUND, FormatHelper.formatMethodForMessage(name, argumentTypes), FormatHelper.formatClreplacedNameForMessage(targetObject instanceof Clreplaced ? ((Clreplaced<?>) targetObject) : targetObject.getClreplaced()));
}
18
Source : MethodInvocationTests.java
with MIT License
from Vip-Augus
with MIT License
from Vip-Augus
@Test
public void testAddingMethodResolvers() {
StandardEvaluationContext ctx = new StandardEvaluationContext();
// reflective method accessor is the only one by default
List<MethodResolver> methodResolvers = ctx.getMethodResolvers();
replacedertEquals(1, methodResolvers.size());
MethodResolver dummy = new DummyMethodResolver();
ctx.addMethodResolver(dummy);
replacedertEquals(2, ctx.getMethodResolvers().size());
List<MethodResolver> copy = new ArrayList<>();
copy.addAll(ctx.getMethodResolvers());
replacedertTrue(ctx.removeMethodResolver(dummy));
replacedertFalse(ctx.removeMethodResolver(dummy));
replacedertEquals(1, ctx.getMethodResolvers().size());
ctx.setMethodResolvers(copy);
replacedertEquals(2, ctx.getMethodResolvers().size());
}
18
Source : MethodInvocationTests.java
with Apache License 2.0
from langtianya
with Apache License 2.0
from langtianya
@Test
public void testAddingMethodResolvers() {
StandardEvaluationContext ctx = new StandardEvaluationContext();
// reflective method accessor is the only one by default
List<MethodResolver> methodResolvers = ctx.getMethodResolvers();
replacedertEquals(1, methodResolvers.size());
MethodResolver dummy = new DummyMethodResolver();
ctx.addMethodResolver(dummy);
replacedertEquals(2, ctx.getMethodResolvers().size());
List<MethodResolver> copy = new ArrayList<MethodResolver>();
copy.addAll(ctx.getMethodResolvers());
replacedertTrue(ctx.removeMethodResolver(dummy));
replacedertFalse(ctx.removeMethodResolver(dummy));
replacedertEquals(1, ctx.getMethodResolvers().size());
ctx.setMethodResolvers(copy);
replacedertEquals(2, ctx.getMethodResolvers().size());
}