INT-1727 modified doResolveScriptVariables(..) method of DefaultScriptVariableSource to include a Message as an argument

This commit is contained in:
Oleg Zhurakousky
2011-01-29 12:05:28 -05:00
parent fc00a926c0
commit c0ec30b3ce
4 changed files with 6 additions and 5 deletions

View File

@@ -62,7 +62,7 @@ public class DefaultScriptVariableSource implements BeanFactoryAware, ScriptVari
} }
} }
// custom logic // custom logic
this.doResolveScriptVariables(scriptVariables); this.doResolveScriptVariables(scriptVariables, message);
return scriptVariables; return scriptVariables;
} }
/** /**
@@ -71,7 +71,7 @@ public class DefaultScriptVariableSource implements BeanFactoryAware, ScriptVari
* *
* @param variables * @param variables
*/ */
protected void doResolveScriptVariables(Map<String, Object> variables){ protected void doResolveScriptVariables(Map<String, Object> variables, Message<?> message){
} }
} }

View File

@@ -17,6 +17,7 @@ import java.util.Map;
import org.springframework.context.Lifecycle; import org.springframework.context.Lifecycle;
import org.springframework.core.annotation.AnnotationUtils; import org.springframework.core.annotation.AnnotationUtils;
import org.springframework.integration.Message;
import org.springframework.integration.config.AbstractSimpleMessageHandlerFactoryBean; import org.springframework.integration.config.AbstractSimpleMessageHandlerFactoryBean;
import org.springframework.integration.core.MessageHandler; import org.springframework.integration.core.MessageHandler;
import org.springframework.integration.groovy.DefaultScriptVariableSource; import org.springframework.integration.groovy.DefaultScriptVariableSource;
@@ -57,7 +58,7 @@ public class GroovyControlBusFactoryBean extends AbstractSimpleMessageHandlerFac
private class ManagedBeansScriptVariableSource extends DefaultScriptVariableSource { private class ManagedBeansScriptVariableSource extends DefaultScriptVariableSource {
@Override @Override
protected void doResolveScriptVariables(Map<String, Object> variables){ protected void doResolveScriptVariables(Map<String, Object> variables, Message<?> message){
if (this.beanFactory != null){ if (this.beanFactory != null){
for (String name : this.beanFactory.getBeanDefinitionNames()) { for (String name : this.beanFactory.getBeanDefinitionNames()) {
Object bean = this.beanFactory.getBean(name); Object bean = this.beanFactory.getBean(name);

View File

@@ -72,7 +72,7 @@ public class GroovyScriptExecutingMessageProcessorTests {
ScriptSource scriptSource = new ResourceScriptSource(resource); ScriptSource scriptSource = new ResourceScriptSource(resource);
Object result = null; Object result = null;
class CustomScriptVariableSource extends DefaultScriptVariableSource{ class CustomScriptVariableSource extends DefaultScriptVariableSource{
protected void doResolveScriptVariables(Map<String, Object> variables){ protected void doResolveScriptVariables(Map<String, Object> variables, Message<?> message){
variables.put("date", System.nanoTime()); variables.put("date", System.nanoTime());
} }
} }

View File

@@ -128,7 +128,7 @@ public class GroovyServiceActivatorTests {
} }
public static class SampleScriptVariSource extends DefaultScriptVariableSource{ public static class SampleScriptVariSource extends DefaultScriptVariableSource{
protected void doResolveScriptVariables(Map<String, Object> variables){ protected void doResolveScriptVariables(Map<String, Object> variables, Message<?> message){
variables.put("foo", "foo"); variables.put("foo", "foo");
variables.put("bar", "bar"); variables.put("bar", "bar");
variables.put("date", new Date()); variables.put("date", new Date());