List of usage examples for org.springframework.integration.handler ExpressionEvaluatingMessageProcessor processMessage
@Override
public T processMessage(Message<?> message)
From source file:org.springframework.integration.handler.ExpressionEvaluatingMessageProcessorTests.java
@SuppressWarnings({ "rawtypes", "unchecked" }) @Test//from ww w.j av a2s.c o m public void testProcessMessage() { Expression expression = expressionParser.parseExpression("payload"); ExpressionEvaluatingMessageProcessor processor = new ExpressionEvaluatingMessageProcessor(expression); processor.setBeanFactory(mock(BeanFactory.class)); assertEquals("foo", processor.processMessage(new GenericMessage<String>("foo"))); }
From source file:org.springframework.integration.handler.ExpressionEvaluatingMessageProcessorTests.java
@SuppressWarnings({ "rawtypes", "unchecked" }) @Test//from www .j a v a 2s. co m public void testProcessMessageWithParameterCoercion() throws Exception { @SuppressWarnings("unused") class TestTarget { public String stringify(int number) { return number + ""; } } Expression expression = expressionParser.parseExpression("#target.stringify(payload)"); ExpressionEvaluatingMessageProcessor processor = new ExpressionEvaluatingMessageProcessor(expression); processor.setBeanFactory(mock(BeanFactory.class)); processor.afterPropertiesSet(); EvaluationContext evaluationContext = TestUtils.getPropertyValue(processor, "evaluationContext", EvaluationContext.class); evaluationContext.setVariable("target", new TestTarget()); assertEquals("2", processor.processMessage(new GenericMessage<String>("2"))); }
From source file:org.springframework.integration.handler.ExpressionEvaluatingMessageProcessorTests.java
@SuppressWarnings({ "rawtypes", "unchecked" }) @Test// www. j av a 2s . c o m public void testProcessMessageWithVoidResult() throws Exception { @SuppressWarnings("unused") class TestTarget { public void ping(String input) { } } Expression expression = expressionParser.parseExpression("#target.ping(payload)"); ExpressionEvaluatingMessageProcessor processor = new ExpressionEvaluatingMessageProcessor(expression); processor.setBeanFactory(mock(BeanFactory.class)); processor.afterPropertiesSet(); EvaluationContext evaluationContext = TestUtils.getPropertyValue(processor, "evaluationContext", EvaluationContext.class); evaluationContext.setVariable("target", new TestTarget()); assertEquals(null, processor.processMessage(new GenericMessage<String>("2"))); }
From source file:org.springframework.integration.handler.ExpressionEvaluatingMessageProcessorTests.java
@SuppressWarnings({ "rawtypes", "unchecked" }) @Test//from w w w. j a v a 2 s . c o m public void testProcessMessageWithParameterCoercionToNonPrimitive() throws Exception { class TestTarget { @SuppressWarnings("unused") public String find(Resource[] resources) { return Arrays.asList(resources).toString(); } } Expression expression = expressionParser.parseExpression("#target.find(payload)"); ExpressionEvaluatingMessageProcessor processor = new ExpressionEvaluatingMessageProcessor(expression); ConfigurableListableBeanFactory beanFactory = new GenericApplicationContext().getBeanFactory(); processor.setBeanFactory(beanFactory); IntegrationEvaluationContextFactoryBean factoryBean = new IntegrationEvaluationContextFactoryBean(); factoryBean.setBeanFactory(beanFactory); beanFactory.registerSingleton(IntegrationContextUtils.INTEGRATION_EVALUATION_CONTEXT_BEAN_NAME, factoryBean.getObject()); processor.afterPropertiesSet(); EvaluationContext evaluationContext = TestUtils.getPropertyValue(processor, "evaluationContext", EvaluationContext.class); evaluationContext.setVariable("target", new TestTarget()); String result = (String) processor.processMessage(new GenericMessage<String>("classpath*:*.properties")); assertTrue("Wrong result: " + result, result.contains("log4j.properties")); }
From source file:org.springframework.integration.handler.ExpressionEvaluatingMessageProcessorTests.java
@SuppressWarnings({ "rawtypes", "unchecked" }) @Test/*www .j ava2 s .c o m*/ public void testProcessMessageWithDollarInBrackets() { Expression expression = expressionParser.parseExpression("headers['$foo_id']"); ExpressionEvaluatingMessageProcessor processor = new ExpressionEvaluatingMessageProcessor(expression); processor.setBeanFactory(mock(BeanFactory.class)); Message<String> message = MessageBuilder.withPayload("foo").setHeader("$foo_id", "abc").build(); assertEquals("abc", processor.processMessage(message)); }
From source file:org.springframework.integration.handler.ExpressionEvaluatingMessageProcessorTests.java
@SuppressWarnings({ "rawtypes", "unchecked" }) @Test/*from w ww . j a v a 2s . c o m*/ public void testProcessMessageWithDollarPropertyAccess() { Expression expression = expressionParser.parseExpression("headers.$foo_id"); ExpressionEvaluatingMessageProcessor processor = new ExpressionEvaluatingMessageProcessor(expression); processor.setBeanFactory(mock(BeanFactory.class)); Message<String> message = MessageBuilder.withPayload("foo").setHeader("$foo_id", "xyz").build(); assertEquals("xyz", processor.processMessage(message)); }
From source file:org.springframework.integration.handler.ExpressionEvaluatingMessageProcessorTests.java
@SuppressWarnings({ "rawtypes", "unchecked" }) @Test/*from w w w .j ava 2 s . c o m*/ public void testProcessMessageWithStaticKey() { Expression expression = expressionParser.parseExpression("headers[headers.ID]"); ExpressionEvaluatingMessageProcessor processor = new ExpressionEvaluatingMessageProcessor(expression); processor.setBeanFactory(mock(BeanFactory.class)); GenericMessage<String> message = new GenericMessage<String>("foo"); assertEquals(message.getHeaders().getId(), processor.processMessage(message)); }
From source file:org.springframework.integration.handler.ExpressionEvaluatingMessageProcessorTests.java
@SuppressWarnings({ "rawtypes", "unchecked" }) @Test/*from ww w . j a va 2 s . c o m*/ public void testProcessMessageWithBeanAsMethodArgument() throws Exception { StaticApplicationContext context = new StaticApplicationContext(); BeanDefinition beanDefinition = new RootBeanDefinition(String.class); beanDefinition.getConstructorArgumentValues().addGenericArgumentValue("bar"); context.registerBeanDefinition("testString", beanDefinition); context.registerBeanDefinition(IntegrationContextUtils.INTEGRATION_EVALUATION_CONTEXT_BEAN_NAME, new RootBeanDefinition(IntegrationEvaluationContextFactoryBean.class)); Expression expression = expressionParser.parseExpression("payload.concat(@testString)"); ExpressionEvaluatingMessageProcessor processor = new ExpressionEvaluatingMessageProcessor(expression); processor.setBeanFactory(context); processor.afterPropertiesSet(); GenericMessage<String> message = new GenericMessage<String>("foo"); assertEquals("foobar", processor.processMessage(message)); }
From source file:org.springframework.integration.handler.ExpressionEvaluatingMessageProcessorTests.java
@SuppressWarnings({ "rawtypes", "unchecked" }) @Test/*w w w.j a v a 2 s .c o m*/ public void testProcessMessageWithMethodCallOnBean() throws Exception { StaticApplicationContext context = new StaticApplicationContext(); BeanDefinition beanDefinition = new RootBeanDefinition(String.class); beanDefinition.getConstructorArgumentValues().addGenericArgumentValue("bar"); context.registerBeanDefinition(IntegrationContextUtils.INTEGRATION_EVALUATION_CONTEXT_BEAN_NAME, new RootBeanDefinition(IntegrationEvaluationContextFactoryBean.class)); context.registerBeanDefinition("testString", beanDefinition); Expression expression = expressionParser.parseExpression("@testString.concat(payload)"); ExpressionEvaluatingMessageProcessor processor = new ExpressionEvaluatingMessageProcessor(expression); processor.setBeanFactory(context); processor.afterPropertiesSet(); GenericMessage<String> message = new GenericMessage<String>("foo"); assertEquals("barfoo", processor.processMessage(message)); }
From source file:org.springframework.integration.handler.ExpressionEvaluatingMessageProcessorTests.java
@SuppressWarnings({ "rawtypes", "unchecked" }) @Test/*from w w w . ja v a 2s . c o m*/ public void testProcessMessageBadExpression() { expected.expect(new TypeSafeMatcher<Exception>(Exception.class) { private Throwable cause; @Override public boolean matchesSafely(Exception item) { logger.debug(item); cause = item.getCause(); return cause instanceof EvaluationException; } public void describeTo(Description description) { description.appendText("cause to be EvaluationException but was ").appendValue(cause); } }); Expression expression = expressionParser.parseExpression("payload.fixMe()"); ExpressionEvaluatingMessageProcessor processor = new ExpressionEvaluatingMessageProcessor(expression); processor.setBeanFactory(mock(BeanFactory.class)); assertEquals("foo", processor.processMessage(new GenericMessage<String>("foo"))); }