diff --git a/org.springframework.integration.security/src/test/java/org/springframework/integration/security/channel/ChannelAdapterSecurityIntegrationTests-context.xml b/org.springframework.integration.security/src/test/java/org/springframework/integration/security/channel/ChannelAdapterSecurityIntegrationTests-context.xml
index 35a983afb8..eb5d070464 100644
--- a/org.springframework.integration.security/src/test/java/org/springframework/integration/security/channel/ChannelAdapterSecurityIntegrationTests-context.xml
+++ b/org.springframework.integration.security/src/test/java/org/springframework/integration/security/channel/ChannelAdapterSecurityIntegrationTests-context.xml
@@ -24,10 +24,10 @@
-
+
-
+
-
+
\ No newline at end of file
diff --git a/org.springframework.integration.security/src/test/java/org/springframework/integration/security/channel/ChannelAdapterSecurityIntegrationTests.java b/org.springframework.integration.security/src/test/java/org/springframework/integration/security/channel/ChannelAdapterSecurityIntegrationTests.java
index 3e77c332aa..00405f60db 100644
--- a/org.springframework.integration.security/src/test/java/org/springframework/integration/security/channel/ChannelAdapterSecurityIntegrationTests.java
+++ b/org.springframework.integration.security/src/test/java/org/springframework/integration/security/channel/ChannelAdapterSecurityIntegrationTests.java
@@ -26,7 +26,7 @@ import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.integration.channel.MessageChannel;
import org.springframework.integration.message.StringMessage;
import org.springframework.integration.security.SecurityTestUtil;
-import org.springframework.integration.security.endpoint.TestTarget;
+import org.springframework.integration.security.endpoint.TestConsumer;
import org.springframework.security.AccessDeniedException;
import org.springframework.security.AuthenticationException;
import org.springframework.security.context.SecurityContext;
@@ -50,7 +50,7 @@ public class ChannelAdapterSecurityIntegrationTests extends AbstractJUnit4Spring
MessageChannel unsecuredChannelAdapter;
@Autowired
- TestTarget testTarget;
+ TestConsumer testConsumer;
@After
@@ -64,7 +64,7 @@ public class ChannelAdapterSecurityIntegrationTests extends AbstractJUnit4Spring
public void testSecuredWithPermission() {
login("bob", "bobspassword", "ROLE_ADMIN");
securedChannelAdapter.send(new StringMessage("test"));
- assertEquals("Wrong size of message list in target", 1, testTarget.sentMessages.size());
+ assertEquals("Wrong size of message list in target", 1, testConsumer.sentMessages.size());
}
@Test(expected = AccessDeniedException.class)
@@ -85,7 +85,7 @@ public class ChannelAdapterSecurityIntegrationTests extends AbstractJUnit4Spring
public void testUnsecuredAsAdmin() {
login("bob", "bobspassword", "ROLE_ADMIN");
unsecuredChannelAdapter.send(new StringMessage("test"));
- assertEquals("Wrong size of message list in target", 1, testTarget.sentMessages.size());
+ assertEquals("Wrong size of message list in target", 1, testConsumer.sentMessages.size());
}
@Test
@@ -93,14 +93,14 @@ public class ChannelAdapterSecurityIntegrationTests extends AbstractJUnit4Spring
public void testUnsecuredAsUser() {
login("bob", "bobspassword", "ROLE_USER");
unsecuredChannelAdapter.send(new StringMessage("test"));
- assertEquals("Wrong size of message list in target", 1, testTarget.sentMessages.size());
+ assertEquals("Wrong size of message list in target", 1, testConsumer.sentMessages.size());
}
@Test
@DirtiesContext
public void testUnsecuredWithoutAuthenticating() {
unsecuredChannelAdapter.send(new StringMessage("test"));
- assertEquals("Wrong size of message list in target", 1, testTarget.sentMessages.size());
+ assertEquals("Wrong size of message list in target", 1, testConsumer.sentMessages.size());
}
diff --git a/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/EndpointSecurityIntegrationTests-context.xml b/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/EndpointSecurityIntegrationTests-context.xml
index ba6b88dbcc..3684e3b701 100644
--- a/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/EndpointSecurityIntegrationTests-context.xml
+++ b/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/EndpointSecurityIntegrationTests-context.xml
@@ -24,13 +24,13 @@
-
+
-
+
diff --git a/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/EndpointSecurityIntegrationTests.java b/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/EndpointSecurityIntegrationTests.java
index fcb2a66281..6d288a1ba2 100644
--- a/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/EndpointSecurityIntegrationTests.java
+++ b/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/EndpointSecurityIntegrationTests.java
@@ -49,7 +49,7 @@ public class EndpointSecurityIntegrationTests extends AbstractJUnit4SpringContex
TestHandler testHandler;
@Autowired
- TestTarget testTarget;
+ TestConsumer testConsumer;
@After
@@ -63,7 +63,7 @@ public class EndpointSecurityIntegrationTests extends AbstractJUnit4SpringContex
login("bob", "bobspassword", "ROLE_ADMIN");
input.send(new StringMessage("test"));
assertEquals("Wrong size of message list in handler", 1, testHandler.sentMessages.size());
- assertEquals("Wrong size of message list in target", 1, testTarget.sentMessages.size());
+ assertEquals("Wrong size of message list in consumer", 1, testConsumer.sentMessages.size());
}
@Test(expected = AccessDeniedException.class)
diff --git a/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/TestTarget.java b/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/TestConsumer.java
similarity index 83%
rename from org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/TestTarget.java
rename to org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/TestConsumer.java
index f5fc27b246..17286a3e91 100644
--- a/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/TestTarget.java
+++ b/org.springframework.integration.security/src/test/java/org/springframework/integration/security/endpoint/TestConsumer.java
@@ -20,15 +20,14 @@ import java.util.ArrayList;
import java.util.List;
import org.springframework.integration.message.Message;
-import org.springframework.integration.message.MessageTarget;
+import org.springframework.integration.message.MessageConsumer;
-public class TestTarget implements MessageTarget {
+public class TestConsumer implements MessageConsumer {
public List> sentMessages = new ArrayList>();
- public boolean send(Message> message) {
+ public void onMessage(Message> message) {
sentMessages.add(message);
- return true;
}
}
diff --git a/org.springframework.integration/src/main/java/org/springframework/integration/config/ChannelAdapterParser.java b/org.springframework.integration/src/main/java/org/springframework/integration/config/ChannelAdapterParser.java
index 4f387212e5..e8c7081d13 100644
--- a/org.springframework.integration/src/main/java/org/springframework/integration/config/ChannelAdapterParser.java
+++ b/org.springframework.integration/src/main/java/org/springframework/integration/config/ChannelAdapterParser.java
@@ -29,7 +29,7 @@ import org.springframework.integration.ConfigurationException;
import org.springframework.integration.channel.DirectChannel;
import org.springframework.integration.endpoint.SourcePollingChannelAdapter;
import org.springframework.integration.endpoint.OutboundChannelAdapter;
-import org.springframework.integration.handler.MethodInvokingTarget;
+import org.springframework.integration.handler.MethodInvokingConsumer;
import org.springframework.integration.message.MethodInvokingSource;
import org.springframework.util.StringUtils;
import org.springframework.util.xml.DomUtils;
@@ -91,7 +91,7 @@ public class ChannelAdapterParser extends AbstractBeanDefinitionParser {
}
else if (StringUtils.hasText(target)) {
if (StringUtils.hasText(methodName)) {
- BeanDefinitionBuilder invokerBuilder = BeanDefinitionBuilder.genericBeanDefinition(MethodInvokingTarget.class);
+ BeanDefinitionBuilder invokerBuilder = BeanDefinitionBuilder.genericBeanDefinition(MethodInvokingConsumer.class);
invokerBuilder.addConstructorArgReference(target);
invokerBuilder.addConstructorArgValue(methodName);
target = BeanDefinitionReaderUtils.registerWithGeneratedName(invokerBuilder.getBeanDefinition(), parserContext.getRegistry());
diff --git a/org.springframework.integration/src/main/java/org/springframework/integration/config/annotation/ChannelAdapterAnnotationPostProcessor.java b/org.springframework.integration/src/main/java/org/springframework/integration/config/annotation/ChannelAdapterAnnotationPostProcessor.java
index 61dd35547e..1adb34e347 100644
--- a/org.springframework.integration/src/main/java/org/springframework/integration/config/annotation/ChannelAdapterAnnotationPostProcessor.java
+++ b/org.springframework.integration/src/main/java/org/springframework/integration/config/annotation/ChannelAdapterAnnotationPostProcessor.java
@@ -30,7 +30,7 @@ import org.springframework.integration.channel.PollableChannel;
import org.springframework.integration.endpoint.MessageEndpoint;
import org.springframework.integration.endpoint.OutboundChannelAdapter;
import org.springframework.integration.endpoint.SourcePollingChannelAdapter;
-import org.springframework.integration.handler.MethodInvokingTarget;
+import org.springframework.integration.handler.MethodInvokingConsumer;
import org.springframework.integration.message.MethodInvokingSource;
import org.springframework.integration.scheduling.PollingSchedule;
import org.springframework.integration.scheduling.Schedule;
@@ -76,8 +76,8 @@ public class ChannelAdapterAnnotationPostProcessor implements MethodAnnotationPo
endpoint = this.createInboundChannelAdapter(source, channel, pollerAnnotation);
}
else if (method.getParameterTypes().length > 0 && !hasReturnValue(method)) {
- MethodInvokingTarget target = new MethodInvokingTarget(bean, method);
- endpoint = this.createOutboundChannelAdapter(target, channel, pollerAnnotation);
+ MethodInvokingConsumer consumer = new MethodInvokingConsumer(bean, method);
+ endpoint = this.createOutboundChannelAdapter(consumer, channel, pollerAnnotation);
}
else {
throw new ConfigurationException("The @ChannelAdapter can only be applied to methods that accept no arguments but have"
@@ -104,8 +104,8 @@ public class ChannelAdapterAnnotationPostProcessor implements MethodAnnotationPo
return adapter;
}
- private OutboundChannelAdapter createOutboundChannelAdapter(MethodInvokingTarget target, MessageChannel channel, Poller pollerAnnotation) {
- OutboundChannelAdapter adapter = new OutboundChannelAdapter(target);
+ private OutboundChannelAdapter createOutboundChannelAdapter(MethodInvokingConsumer consumer, MessageChannel channel, Poller pollerAnnotation) {
+ OutboundChannelAdapter adapter = new OutboundChannelAdapter(consumer);
adapter.setInputChannel(channel);
if (channel instanceof PollableChannel) {
Schedule schedule = (pollerAnnotation != null)
diff --git a/org.springframework.integration/src/main/java/org/springframework/integration/endpoint/OutboundChannelAdapter.java b/org.springframework.integration/src/main/java/org/springframework/integration/endpoint/OutboundChannelAdapter.java
index 40b9c4d5e6..121c0022f4 100644
--- a/org.springframework.integration/src/main/java/org/springframework/integration/endpoint/OutboundChannelAdapter.java
+++ b/org.springframework.integration/src/main/java/org/springframework/integration/endpoint/OutboundChannelAdapter.java
@@ -18,32 +18,29 @@ package org.springframework.integration.endpoint;
import org.springframework.integration.channel.MessageChannel;
import org.springframework.integration.message.Message;
-import org.springframework.integration.message.MessageDeliveryException;
-import org.springframework.integration.message.MessageTarget;
+import org.springframework.integration.message.MessageConsumer;
import org.springframework.util.Assert;
/**
* A Channel Adapter implementation for connecting a {@link MessageChannel}
- * to a {@link org.springframework.integration.message.MessageTarget}.
+ * to a {@link org.springframework.integration.message.MessageConsumer}.
*
* @author Mark Fisher
*/
public class OutboundChannelAdapter extends AbstractMessageConsumingEndpoint {
- private final MessageTarget target;
+ private final MessageConsumer consumer;
- public OutboundChannelAdapter(MessageTarget target) {
- Assert.notNull(target, "target must not be null");
- this.target = target;
+ public OutboundChannelAdapter(MessageConsumer consumer) {
+ Assert.notNull(consumer, "consumer must not be null");
+ this.consumer = consumer;
}
@Override
protected void onMessageInternal(Message> message) {
- if (!this.target.send(message)) {
- throw new MessageDeliveryException(message, "failed to deliver Message to target");
- }
+ this.consumer.onMessage(message);
}
}
diff --git a/org.springframework.integration/src/main/java/org/springframework/integration/handler/MethodInvokingTarget.java b/org.springframework.integration/src/main/java/org/springframework/integration/handler/MethodInvokingConsumer.java
similarity index 58%
rename from org.springframework.integration/src/main/java/org/springframework/integration/handler/MethodInvokingTarget.java
rename to org.springframework.integration/src/main/java/org/springframework/integration/handler/MethodInvokingConsumer.java
index 1a147ba221..7ce04ac565 100644
--- a/org.springframework.integration/src/main/java/org/springframework/integration/handler/MethodInvokingTarget.java
+++ b/org.springframework.integration/src/main/java/org/springframework/integration/handler/MethodInvokingConsumer.java
@@ -19,33 +19,35 @@ package org.springframework.integration.handler;
import java.lang.reflect.Method;
import org.springframework.integration.message.Message;
+import org.springframework.integration.message.MessageConsumer;
import org.springframework.integration.message.MessageMappingMethodInvoker;
-import org.springframework.integration.message.MessageTarget;
import org.springframework.integration.message.MessagingException;
+import org.springframework.util.Assert;
/**
- * A messaging target that invokes the specified method on the provided object.
+ * A {@link MessageConsumer} that invokes the specified method on the provided object.
*
* @author Mark Fisher
*/
-public class MethodInvokingTarget extends MessageMappingMethodInvoker implements MessageTarget {
+public class MethodInvokingConsumer extends MessageMappingMethodInvoker implements MessageConsumer {
- public MethodInvokingTarget(Object object, Method method) {
+ public MethodInvokingConsumer(Object object, Method method) {
super(object, method);
+ Assert.isTrue(method.getReturnType().equals(void.class),
+ "MethodInvokingConsumer requires a void-returning method");
}
- public MethodInvokingTarget(Object object, String methodName) {
+ public MethodInvokingConsumer(Object object, String methodName) {
super(object, methodName);
}
- public boolean send(Message> message) {
+ public void onMessage(Message> message) {
Object result = this.invokeMethod(message);
if (result != null) {
- throw new MessagingException(message, "the MethodInvokingTarget method must have a void or null return, "
- + "but '" + this + "' received a non-null value: [" + result + "]");
+ throw new MessagingException(message, "the MethodInvokingConsumer method must have a void return, "
+ + "but '" + this + "' received a value: [" + result + "]");
}
- return true;
}
}
diff --git a/org.springframework.integration/src/test/java/org/springframework/integration/config/ChannelAdapterParserTests-context.xml b/org.springframework.integration/src/test/java/org/springframework/integration/config/ChannelAdapterParserTests-context.xml
index 7f45366daa..851c32d019 100644
--- a/org.springframework.integration/src/test/java/org/springframework/integration/config/ChannelAdapterParserTests-context.xml
+++ b/org.springframework.integration/src/test/java/org/springframework/integration/config/ChannelAdapterParserTests-context.xml
@@ -13,15 +13,15 @@
-
+
-
+
-
+
diff --git a/org.springframework.integration/src/test/java/org/springframework/integration/config/ChannelAdapterParserTests.java b/org.springframework.integration/src/test/java/org/springframework/integration/config/ChannelAdapterParserTests.java
index 12176278e9..cbb6312d58 100644
--- a/org.springframework.integration/src/test/java/org/springframework/integration/config/ChannelAdapterParserTests.java
+++ b/org.springframework.integration/src/test/java/org/springframework/integration/config/ChannelAdapterParserTests.java
@@ -51,18 +51,18 @@ public class ChannelAdapterParserTests extends AbstractJUnit4SpringContextTests
Object adapter = this.applicationContext.getBean(beanName + ".adapter");
assertNotNull(adapter);
assertTrue(adapter instanceof OutboundChannelAdapter);
- TestTarget target = (TestTarget) this.applicationContext.getBean("target");
- assertNull(target.getLastMessage());
+ TestConsumer consumer = (TestConsumer) this.applicationContext.getBean("consumer");
+ assertNull(consumer.getLastMessage());
Message> message = new StringMessage("test");
assertTrue(((MessageChannel) channel).send(message));
- assertNotNull(target.getLastMessage());
- assertEquals(message, target.getLastMessage());
+ assertNotNull(consumer.getLastMessage());
+ assertEquals(message, consumer.getLastMessage());
bus.stop();
}
@Test
- public void methodInvokingTarget() {
- String beanName = "methodInvokingTarget";
+ public void methodInvokingConsumer() {
+ String beanName = "methodInvokingConsumer";
Object channel = this.applicationContext.getBean(beanName);
assertTrue(channel instanceof DirectChannel);
MessageBus bus = (MessageBus) this.applicationContext.getBean(MessageBusParser.MESSAGE_BUS_BEAN_NAME);
@@ -73,10 +73,10 @@ public class ChannelAdapterParserTests extends AbstractJUnit4SpringContextTests
assertTrue(adapter instanceof OutboundChannelAdapter);
TestBean testBean = (TestBean) this.applicationContext.getBean("testBean");
assertNull(testBean.getMessage());
- Message> message = new StringMessage("target test");
+ Message> message = new StringMessage("consumer test");
assertTrue(((MessageChannel) channel).send(message));
assertNotNull(testBean.getMessage());
- assertEquals("target test", testBean.getMessage());
+ assertEquals("consumer test", testBean.getMessage());
bus.stop();
}
diff --git a/org.springframework.integration/src/test/java/org/springframework/integration/config/TestTarget.java b/org.springframework.integration/src/test/java/org/springframework/integration/config/TestConsumer.java
similarity index 84%
rename from org.springframework.integration/src/test/java/org/springframework/integration/config/TestTarget.java
rename to org.springframework.integration/src/test/java/org/springframework/integration/config/TestConsumer.java
index 7e0bad3ce4..acee93cc9d 100644
--- a/org.springframework.integration/src/test/java/org/springframework/integration/config/TestTarget.java
+++ b/org.springframework.integration/src/test/java/org/springframework/integration/config/TestConsumer.java
@@ -17,12 +17,12 @@
package org.springframework.integration.config;
import org.springframework.integration.message.Message;
-import org.springframework.integration.message.MessageTarget;
+import org.springframework.integration.message.MessageConsumer;
/**
* @author Mark Fisher
*/
-public class TestTarget implements MessageTarget {
+public class TestConsumer implements MessageConsumer {
private volatile Message> lastMessage;
@@ -31,9 +31,8 @@ public class TestTarget implements MessageTarget {
return this.lastMessage;
}
- public boolean send(Message> message) {
+ public void onMessage(Message> message) {
this.lastMessage = message;
- return true;
}
}
diff --git a/org.springframework.integration/src/test/java/org/springframework/integration/handler/MethodInvokingTargetTests.java b/org.springframework.integration/src/test/java/org/springframework/integration/handler/MethodInvokingConsumerTests.java
similarity index 80%
rename from org.springframework.integration/src/test/java/org/springframework/integration/handler/MethodInvokingTargetTests.java
rename to org.springframework.integration/src/test/java/org/springframework/integration/handler/MethodInvokingConsumerTests.java
index 8206ca0efd..8a201dd58a 100644
--- a/org.springframework.integration/src/test/java/org/springframework/integration/handler/MethodInvokingTargetTests.java
+++ b/org.springframework.integration/src/test/java/org/springframework/integration/handler/MethodInvokingConsumerTests.java
@@ -19,7 +19,6 @@ package org.springframework.integration.handler;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.SynchronousQueue;
@@ -40,29 +39,28 @@ import org.springframework.integration.message.StringMessage;
/**
* @author Mark Fisher
*/
-public class MethodInvokingTargetTests {
+public class MethodInvokingConsumerTests {
@Test
public void testValidMethod() {
- MethodInvokingTarget target = new MethodInvokingTarget(new TestSink(), "validMethod");
- target.afterPropertiesSet();
- boolean result = target.send(new GenericMessage("test"));
- assertTrue(result);
+ MethodInvokingConsumer consumer = new MethodInvokingConsumer(new TestSink(), "validMethod");
+ consumer.afterPropertiesSet();
+ consumer.onMessage(new GenericMessage("test"));
}
@Test(expected = ConfigurationException.class)
public void testInvalidMethodWithNoArgs() {
- MethodInvokingTarget target = new MethodInvokingTarget(new TestSink(), "invalidMethodWithNoArgs");
- target.afterPropertiesSet();
+ MethodInvokingConsumer consumer = new MethodInvokingConsumer(new TestSink(), "invalidMethodWithNoArgs");
+ consumer.afterPropertiesSet();
}
@Test(expected = MessagingException.class)
public void testMethodWithReturnValue() {
Message> message = new StringMessage("test");
try {
- MethodInvokingTarget target = new MethodInvokingTarget(new TestSink(), "methodWithReturnValue");
- target.afterPropertiesSet();
- target.send(message);
+ MethodInvokingConsumer consumer = new MethodInvokingConsumer(new TestSink(), "methodWithReturnValue");
+ consumer.afterPropertiesSet();
+ consumer.onMessage(message);
}
catch (MessagingException e) {
assertEquals(e.getFailedMessage(), message);
@@ -72,8 +70,8 @@ public class MethodInvokingTargetTests {
@Test(expected = ConfigurationException.class)
public void testNoMatchingMethodName() {
- MethodInvokingTarget target = new MethodInvokingTarget(new TestSink(), "noSuchMethod");
- target.afterPropertiesSet();
+ MethodInvokingConsumer consumer = new MethodInvokingConsumer(new TestSink(), "noSuchMethod");
+ consumer.afterPropertiesSet();
}
@Test
@@ -81,15 +79,15 @@ public class MethodInvokingTargetTests {
GenericApplicationContext context = new GenericApplicationContext();
SynchronousQueue queue = new SynchronousQueue();
TestBean testBean = new TestBean(queue);
- MethodInvokingTarget target = new MethodInvokingTarget(testBean, "foo");
- target.afterPropertiesSet();
+ MethodInvokingConsumer consumer = new MethodInvokingConsumer(testBean, "foo");
+ consumer.afterPropertiesSet();
QueueChannel channel = new QueueChannel();
channel.setBeanName("channel");
context.getBeanFactory().registerSingleton("channel", channel);
Message message = new GenericMessage("testing");
channel.send(message);
assertNull(queue.poll());
- ServiceActivatorEndpoint endpoint = new ServiceActivatorEndpoint(target);
+ ServiceActivatorEndpoint endpoint = new ServiceActivatorEndpoint(consumer);
endpoint.setBeanName("testEndpoint");
endpoint.setInputChannel(channel);
context.getBeanFactory().registerSingleton("testEndpoint", endpoint);