From a7489909d7432e57de3c43be3612a9dce7f5843b Mon Sep 17 00:00:00 2001 From: Gary Russell Date: Sat, 12 Apr 2014 16:20:59 -0400 Subject: [PATCH] INT-2738 Add Missing `getComponentType()` Methods JIRA: https://jira.spring.io/browse/INT-2738 Add a `getComponentType()` method for all handlers, message producers, and message sources that implement `NamedComponent` (see `SPCA.getComponentType()`). Add rome as an optional dependency - STS complained because AtomFeedHttpMessageConverter has a dependency on it. --- build.gradle | 4 ++ .../inbound/AmqpInboundChannelAdapter.java | 8 ++++ .../amqp/inbound/AmqpInboundGateway.java | 9 +++- .../json/JsonToObjectTransformer.java | 5 ++ .../json/ObjectToJsonTransformer.java | 5 ++ .../transformer/ClaimCheckInTransformer.java | 4 ++ .../transformer/ClaimCheckOutTransformer.java | 5 ++ .../transformer/ContentEnricher.java | 19 ++++++-- .../integration/transformer/HeaderFilter.java | 5 ++ .../transformer/MapToObjectTransformer.java | 21 +++++---- .../transformer/ObjectToMapTransformer.java | 40 +++++++++------- .../ObjectToStringTransformer.java | 7 ++- .../ftp/gateway/FtpOutboundGateway.java | 6 ++- .../GemfireCqInboundChannelAdapterParser.java | 46 +++++++++---------- .../GemfireInboundChannelAdapterParser.java | 37 +++++++-------- .../GemfireOutboundChannelAdapterParser.java | 22 ++++----- .../CacheListeningMessageProducer.java | 6 ++- .../ContinuousQueryMessageProducer.java | 8 +++- .../outbound/CacheWritingMessageHandler.java | 22 +++++---- .../HttpRequestExecutingMessageHandler.java | 5 ++ ...nnectionEventListeningMessageProducer.java | 5 ++ .../integration/jdbc/JdbcMessageHandler.java | 9 +++- .../integration/jdbc/JdbcOutboundGateway.java | 5 ++ .../jdbc/StoredProcMessageHandler.java | 7 ++- .../jdbc/StoredProcOutboundGateway.java | 5 ++ .../NotificationPublishingMessageHandler.java | 5 ++ .../jmx/OperationInvokingMessageHandler.java | 5 ++ .../jpa/outbound/JpaOutboundGateway.java | 5 ++ .../mail/MailSendingMessageHandler.java | 6 ++- .../mongodb/inbound/MongoDbMessageSource.java | 5 ++ .../MongoDbStoringMessageHandler.java | 5 ++ ...stractMqttMessageDrivenChannelAdapter.java | 10 ++-- .../outbound/AbstractMqttMessageHandler.java | 10 ++-- .../inbound/RedisStoreMessageSource.java | 5 ++ .../redis/outbound/RedisOutboundGateway.java | 5 ++ .../RedisPublishingMessageHandler.java | 5 ++ .../RedisQueueOutboundChannelAdapter.java | 2 +- .../integration/rmi/RmiOutboundGateway.java | 7 ++- .../sftp/gateway/SftpOutboundGateway.java | 7 ++- .../ByteStreamReadingMessageSource.java | 13 ++++-- .../ByteStreamWritingMessageHandler.java | 15 ++++-- .../CharacterStreamReadingMessageSource.java | 4 +- .../CharacterStreamWritingMessageHandler.java | 5 ++ .../TcpSyslogReceivingChannelAdapter.java | 5 ++ .../UdpSyslogReceivingChannelAdapter.java | 11 +++-- .../DirectMessageSendingMessageHandler.java | 12 +++-- .../StatusUpdatingMessageHandler.java | 8 +++- .../MarshallingWebServiceOutboundGateway.java | 18 +++++--- .../ws/SimpleWebServiceOutboundGateway.java | 7 ++- .../transformer/MarshallingTransformer.java | 5 ++ .../transformer/UnmarshallingTransformer.java | 4 ++ .../xml/transformer/XPathTransformer.java | 5 ++ .../ChatMessageSendingMessageHandler.java | 11 +++-- .../PresenceSendingMessageHandler.java | 10 ++-- 54 files changed, 384 insertions(+), 146 deletions(-) diff --git a/build.gradle b/build.gradle index 4f5153ede9..212e8defc0 100644 --- a/build.gradle +++ b/build.gradle @@ -312,6 +312,10 @@ project('spring-integration-http') { dependencies { compile project(":spring-integration-core") compile "org.springframework:spring-webmvc:$springVersion" + compile("net.java.dev.rome:rome-fetcher:$romeVersion") { + optional + exclude group: 'junit' + } compile("javax.servlet:javax.servlet-api:$servletApiVersion", provided) diff --git a/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/inbound/AmqpInboundChannelAdapter.java b/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/inbound/AmqpInboundChannelAdapter.java index d3463dcf9c..aabf3b3645 100644 --- a/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/inbound/AmqpInboundChannelAdapter.java +++ b/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/inbound/AmqpInboundChannelAdapter.java @@ -66,9 +66,15 @@ public class AmqpInboundChannelAdapter extends MessageProducerSupport implements this.headerMapper = headerMapper; } + @Override + public String getComponentType() { + return "amqp:inbound-channel-adapter"; + } + @Override protected void onInit() { this.messageListenerContainer.setMessageListener(new MessageListener() { + @Override public void onMessage(Message message) { Object payload = messageConverter.fromMessage(message); Map headers = headerMapper.toHeadersFromRequest(message.getMessageProperties()); @@ -95,6 +101,7 @@ public class AmqpInboundChannelAdapter extends MessageProducerSupport implements *

* Shuts down the listener container. */ + @Override public int beforeShutdown() { this.stop(); return 0; @@ -105,6 +112,7 @@ public class AmqpInboundChannelAdapter extends MessageProducerSupport implements * {@inheritDoc} *

No-op */ + @Override public int afterShutdown() { return 0; } diff --git a/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/inbound/AmqpInboundGateway.java b/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/inbound/AmqpInboundGateway.java index 575fd00fb2..0ae8349c2b 100644 --- a/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/inbound/AmqpInboundGateway.java +++ b/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/inbound/AmqpInboundGateway.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2011 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -75,9 +75,15 @@ public class AmqpInboundGateway extends MessagingGatewaySupport { this.headerMapper = headerMapper; } + @Override + public String getComponentType() { + return "amqp:inbound-gateway"; + } + @Override protected void onInit() throws Exception { this.messageListenerContainer.setMessageListener(new MessageListener() { + @Override public void onMessage(Message message) { Object payload = amqpMessageConverter.fromMessage(message); Map headers = headerMapper.toHeadersFromRequest(message.getMessageProperties()); @@ -91,6 +97,7 @@ public class AmqpInboundGateway extends MessagingGatewaySupport { "request Message being handled by the AMQP inbound gateway."); amqpTemplate.convertAndSend(replyTo.getExchangeName(), replyTo.getRoutingKey(), reply.getPayload(), new MessagePostProcessor() { + @Override public Message postProcessMessage(Message message) throws AmqpException { MessageProperties messageProperties = message.getMessageProperties(); String contentEncoding = messageProperties.getContentEncoding(); diff --git a/spring-integration-core/src/main/java/org/springframework/integration/json/JsonToObjectTransformer.java b/spring-integration-core/src/main/java/org/springframework/integration/json/JsonToObjectTransformer.java index e7b7a71226..5dfa3b4c8a 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/json/JsonToObjectTransformer.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/json/JsonToObjectTransformer.java @@ -67,6 +67,11 @@ public class JsonToObjectTransformer extends AbstractTransformer implements Bean } } + @Override + public String getComponentType() { + return "json-to-object-transformer"; + } + @Override protected Object doTransform(Message message) throws Exception { if (this.targetClass != null) { diff --git a/spring-integration-core/src/main/java/org/springframework/integration/json/ObjectToJsonTransformer.java b/spring-integration-core/src/main/java/org/springframework/integration/json/ObjectToJsonTransformer.java index 4efeddb5ad..0652365a36 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/json/ObjectToJsonTransformer.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/json/ObjectToJsonTransformer.java @@ -86,6 +86,11 @@ public class ObjectToJsonTransformer extends AbstractTransformer { this.contentType = contentType.trim(); } + @Override + public String getComponentType() { + return "object-to-json-transformer"; + } + @Override protected Object doTransform(Message message) throws Exception { Object payload = ResultType.STRING.equals(this.resultType) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ClaimCheckInTransformer.java b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ClaimCheckInTransformer.java index df38abb5f2..17367d6ef5 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ClaimCheckInTransformer.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ClaimCheckInTransformer.java @@ -43,6 +43,10 @@ public class ClaimCheckInTransformer extends AbstractTransformer { this.messageStore = messageStore; } + @Override + public String getComponentType() { + return "claim-check-in"; + } @Override protected Object doTransform(Message message) throws Exception { diff --git a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ClaimCheckOutTransformer.java b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ClaimCheckOutTransformer.java index 9a2ec3c610..9b9fccc285 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ClaimCheckOutTransformer.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ClaimCheckOutTransformer.java @@ -54,6 +54,11 @@ public class ClaimCheckOutTransformer extends AbstractTransformer { this.removeMessage = removeMessage; } + @Override + public String getComponentType() { + return "claim-check-out"; + } + @Override protected Object doTransform(Message message) throws Exception { Assert.notNull(message, "message must not be null"); diff --git a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ContentEnricher.java b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ContentEnricher.java index 54bd42d820..2f890a7e96 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ContentEnricher.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ContentEnricher.java @@ -214,10 +214,15 @@ public class ContentEnricher extends AbstractReplyProducingMessageHandler implem this.sourceEvaluationContext = evaluationContext; } - /** - * Initializes the Content Enricher. Will instantiate an internal Gateway if - * the requestChannel is set. - */ + @Override + public String getComponentType() { + return "enricher"; + } + + /** + * Initializes the Content Enricher. Will instantiate an internal Gateway if + * the requestChannel is set. + */ @Override protected void doInit() { if (StringUtils.hasText(this.requestChannelName)) { @@ -383,6 +388,12 @@ public class ContentEnricher extends AbstractReplyProducingMessageHandler implem protected Message sendAndReceiveMessage(Object object) { return super.sendAndReceiveMessage(object); } + + @Override + public String getComponentType() { + return "enricher$gateway"; + } + } } diff --git a/spring-integration-core/src/main/java/org/springframework/integration/transformer/HeaderFilter.java b/spring-integration-core/src/main/java/org/springframework/integration/transformer/HeaderFilter.java index 3fd91884a5..2e891b1141 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/transformer/HeaderFilter.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/transformer/HeaderFilter.java @@ -45,6 +45,11 @@ public class HeaderFilter extends IntegrationObjectSupport implements Transforme this.patternMatch = patternMatch; } + @Override + public String getComponentType() { + return "header-filter"; + } + @Override public Message transform(Message message) { AbstractIntegrationMessageBuilder builder = this.getMessageBuilderFactory().fromMessage(message); diff --git a/spring-integration-core/src/main/java/org/springframework/integration/transformer/MapToObjectTransformer.java b/spring-integration-core/src/main/java/org/springframework/integration/transformer/MapToObjectTransformer.java index e88a943965..54ea3233b4 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/transformer/MapToObjectTransformer.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/transformer/MapToObjectTransformer.java @@ -62,6 +62,19 @@ public class MapToObjectTransformer extends AbstractPayloadTransformer this.targetClass = null; } + @Override + public String getComponentType() { + return "map-to-object-transformer"; + } + + @Override + protected void onInit() { + if (StringUtils.hasText(this.targetBeanName)) { + Assert.isTrue(this.getBeanFactory().isPrototype(this.targetBeanName), + "target bean [" + targetBeanName + "] must have 'prototype' scope"); + } + } + @Override protected Object transformPayload(Map payload) throws Exception { Object target = (this.targetClass != null) @@ -79,12 +92,4 @@ public class MapToObjectTransformer extends AbstractPayloadTransformer return target; } - @Override - protected void onInit() { - if (StringUtils.hasText(this.targetBeanName)) { - Assert.isTrue(this.getBeanFactory().isPrototype(this.targetBeanName), - "target bean [" + targetBeanName + "] must have 'prototype' scope"); - } - } - } diff --git a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToMapTransformer.java b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToMapTransformer.java index 5cd752fefb..e203dd249d 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToMapTransformer.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToMapTransformer.java @@ -62,6 +62,7 @@ public class ObjectToMapTransformer extends AbstractPayloadTransformer transformPayload(Object payload) throws Exception { Map result = this.jsonObjectMapper.fromJson(this.jsonObjectMapper.toJson(payload), Map.class); @@ -71,6 +72,28 @@ public class ObjectToMapTransformer extends AbstractPayloadTransformer resultMap) { + if (element instanceof Map) { + this.doFlatten(propertyPrefix, (Map) element, resultMap); + } + else if (element instanceof Collection) { + this.doProcessCollection(propertyPrefix, (Collection) element, resultMap); + } + else if (element != null && element.getClass().isArray()) { + Collection collection = CollectionUtils.arrayToList(element); + this.doProcessCollection(propertyPrefix, collection, resultMap); + } + else { + resultMap.put(propertyPrefix, element); + } + } + private Map flattenMap(Map result){ Map resultMap = new HashMap(); this.doFlatten("", result, resultMap); @@ -95,21 +118,4 @@ public class ObjectToMapTransformer extends AbstractPayloadTransformer resultMap) { - if (element instanceof Map) { - this.doFlatten(propertyPrefix, (Map) element, resultMap); - } - else if (element instanceof Collection) { - this.doProcessCollection(propertyPrefix, (Collection) element, resultMap); - } - else if (element != null && element.getClass().isArray()) { - Collection collection = CollectionUtils.arrayToList(element); - this.doProcessCollection(propertyPrefix, collection, resultMap); - } - else { - resultMap.put(propertyPrefix, element); - } - } - } diff --git a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToStringTransformer.java b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToStringTransformer.java index 3650b8e8e8..aa9ffa8f15 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToStringTransformer.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToStringTransformer.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2013 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -46,6 +46,11 @@ public class ObjectToStringTransformer extends AbstractPayloadTransformer map = parserContext.getDelegate().parseMapElement(cacheEntries,cacheWritingMessageHandler.getBeanDefinition()); cacheWritingMessageHandler.addPropertyValue(CACHE_ENTRIES_PROPERTY, map); } - + return cacheWritingMessageHandler.getBeanDefinition(); } } diff --git a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/inbound/CacheListeningMessageProducer.java b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/inbound/CacheListeningMessageProducer.java index 1caf150ff4..336a4ed79f 100644 --- a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/inbound/CacheListeningMessageProducer.java +++ b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/inbound/CacheListeningMessageProducer.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2011 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -68,6 +68,10 @@ public class CacheListeningMessageProducer extends ExpressionMessageProducerSupp this.supportedEventTypes = new HashSet(Arrays.asList(eventTypes)); } + @Override + public String getComponentType() { + return "gemfire:inbound-channel-adapter"; + } @Override protected void doStart() { diff --git a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/inbound/ContinuousQueryMessageProducer.java b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/inbound/ContinuousQueryMessageProducer.java index a833c4d674..429f5eacb1 100644 --- a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/inbound/ContinuousQueryMessageProducer.java +++ b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/inbound/ContinuousQueryMessageProducer.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2013 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -90,6 +90,11 @@ public class ContinuousQueryMessageProducer extends ExpressionMessageProducerSup this.supportedEventTypes = new HashSet(Arrays.asList(eventTypes)); } + @Override + public String getComponentType() { + return "gemfire:cq-inbound-channel-adapter"; + } + @Override protected void onInit() { super.onInit(); @@ -108,6 +113,7 @@ public class ContinuousQueryMessageProducer extends ExpressionMessageProducerSup * org.springframework.data.gemfire.listener.QueryListener#onEvent(com.gemstone * .gemfire.cache.query.CqEvent) */ + @Override public void onEvent(CqEvent event) { if (isEventSupported(event)) { if (logger.isDebugEnabled()) { diff --git a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/outbound/CacheWritingMessageHandler.java b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/outbound/CacheWritingMessageHandler.java index 0fe6e551b4..32eaaede76 100644 --- a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/outbound/CacheWritingMessageHandler.java +++ b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/outbound/CacheWritingMessageHandler.java @@ -25,9 +25,9 @@ import org.springframework.data.gemfire.GemfireCallback; import org.springframework.data.gemfire.GemfireTemplate; import org.springframework.expression.Expression; import org.springframework.expression.spel.standard.SpelExpressionParser; +import org.springframework.integration.handler.AbstractMessageHandler; import org.springframework.messaging.Message; import org.springframework.messaging.MessageHandler; -import org.springframework.integration.handler.AbstractMessageHandler; import org.springframework.util.Assert; import com.gemstone.gemfire.GemFireCheckedException; @@ -37,7 +37,7 @@ import com.gemstone.gemfire.cache.Region; /** * A {@link MessageHandler} implementation that writes to a GemFire Region. The * Message's payload must be an instance of java.util.Map. - * + * * @author Mark Fisher * @author David Turanski * @since 2.1 @@ -51,22 +51,28 @@ public class CacheWritingMessageHandler extends AbstractMessageHandler { public CacheWritingMessageHandler(Region region) { Assert.notNull(region, "region must not be null"); this.gemfireTemplate.setRegion(region); - this.gemfireTemplate.afterPropertiesSet(); + this.gemfireTemplate.afterPropertiesSet(); } - + + @Override + public String getComponentType() { + return "gemfire:outbound-channel-adapter"; + } + @Override public void handleMessageInternal(Message message) { Object payload = message.getPayload(); Map cacheValues = (cacheEntryExpressions.size() > 0)?parseCacheEntries(message):null; - + if (cacheValues == null) { Assert.isTrue(payload instanceof Map, "If cache entry expressions are not configured, then payload must be a Map"); cacheValues = (Map) payload; } final Map map = cacheValues; - + this.gemfireTemplate.execute(new GemfireCallback() { + @Override @SuppressWarnings({ "rawtypes", "unchecked" }) public Object doInGemfire(Region region) throws GemFireCheckedException, GemFireException { region.putAll(map); @@ -89,11 +95,11 @@ public class CacheWritingMessageHandler extends AbstractMessageHandler { } public void setCacheEntries(Map cacheEntries) { - + if (cacheEntryExpressions.size() > 0) { cacheEntryExpressions.clear(); } - + for (Entry cacheEntry : cacheEntries.entrySet()) { this.cacheEntryExpressions.put(new SpelExpressionParser().parseExpression(cacheEntry.getKey()), new SpelExpressionParser().parseExpression(cacheEntry.getValue())); diff --git a/spring-integration-http/src/main/java/org/springframework/integration/http/outbound/HttpRequestExecutingMessageHandler.java b/spring-integration-http/src/main/java/org/springframework/integration/http/outbound/HttpRequestExecutingMessageHandler.java index 4e0077120a..fd15951b62 100755 --- a/spring-integration-http/src/main/java/org/springframework/integration/http/outbound/HttpRequestExecutingMessageHandler.java +++ b/spring-integration-http/src/main/java/org/springframework/integration/http/outbound/HttpRequestExecutingMessageHandler.java @@ -342,6 +342,11 @@ public class HttpRequestExecutingMessageHandler extends AbstractReplyProducingMe this.transferCookies = transferCookies; } + @Override + public String getComponentType() { + return (this.expectReply ? "http:outbound-gateway" : "http:outbound-channel-adapter"); + } + @Override protected void doInit() { this.evaluationContext = ExpressionUtils.createStandardEvaluationContext(this.getBeanFactory()); diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpConnectionEventListeningMessageProducer.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpConnectionEventListeningMessageProducer.java index 3c0dfece5a..55d74f7efa 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpConnectionEventListeningMessageProducer.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpConnectionEventListeningMessageProducer.java @@ -53,6 +53,11 @@ public class TcpConnectionEventListeningMessageProducer extends MessageProducerS this.eventTypes = eventTypeSet; } + @Override + public String getComponentType() { + return "ip:tcp-connection-event-inbound-channel-adapter"; + } + @Override public void onApplicationEvent(TcpConnectionEvent event) { if (this.isRunning()) { diff --git a/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/JdbcMessageHandler.java b/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/JdbcMessageHandler.java index 2d39cf3bc9..7bf1f5620d 100644 --- a/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/JdbcMessageHandler.java +++ b/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/JdbcMessageHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at @@ -19,7 +19,6 @@ import java.util.Map; import javax.sql.DataSource; -import org.springframework.messaging.MessageHandlingException; import org.springframework.integration.MessageRejectedException; import org.springframework.integration.handler.AbstractMessageHandler; import org.springframework.jdbc.core.JdbcOperations; @@ -31,6 +30,7 @@ import org.springframework.jdbc.support.GeneratedKeyHolder; import org.springframework.jdbc.support.KeyHolder; import org.springframework.messaging.Message; import org.springframework.messaging.MessageDeliveryException; +import org.springframework.messaging.MessageHandlingException; import org.springframework.util.LinkedCaseInsensitiveMap; /** @@ -98,6 +98,11 @@ public class JdbcMessageHandler extends AbstractMessageHandler { this.sqlParameterSourceFactory = sqlParameterSourceFactory; } + @Override + public String getComponentType() { + return "jdbc:outbound-channel-adapter"; + } + /** * Executes the update, passing the message into the {@link SqlParameterSourceFactory}. */ diff --git a/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/JdbcOutboundGateway.java b/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/JdbcOutboundGateway.java index edff727226..3befbcc7e5 100644 --- a/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/JdbcOutboundGateway.java +++ b/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/JdbcOutboundGateway.java @@ -105,6 +105,11 @@ public class JdbcOutboundGateway extends AbstractReplyProducingMessageHandler im this.maxRowsPerPoll = maxRowsPerPoll; } + @Override + public String getComponentType() { + return "jdbc:outbound-gateway"; + } + @Override protected void doInit() { if (this.maxRowsPerPoll != null) { diff --git a/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcMessageHandler.java b/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcMessageHandler.java index 024daadbff..f4ce13d172 100644 --- a/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcMessageHandler.java +++ b/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcMessageHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2013 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at @@ -61,6 +61,11 @@ public class StoredProcMessageHandler extends AbstractMessageHandler implements } + @Override + public String getComponentType() { + return "jdbc:stored-proc-outbound-channel-adapter"; + } + /** * Executes the Stored procedure, delegates to executeStoredProcedure(...). * Any return values from the Stored procedure are ignored. diff --git a/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcOutboundGateway.java b/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcOutboundGateway.java index 5859394f3e..bc9797e765 100644 --- a/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcOutboundGateway.java +++ b/spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcOutboundGateway.java @@ -49,6 +49,11 @@ public class StoredProcOutboundGateway extends AbstractReplyProducingMessageHand } + @Override + public String getComponentType() { + return "jdbc:stored-proc-outbound-gateway"; + } + @Override protected Object handleRequestMessage(Message requestMessage) { diff --git a/spring-integration-jmx/src/main/java/org/springframework/integration/jmx/NotificationPublishingMessageHandler.java b/spring-integration-jmx/src/main/java/org/springframework/integration/jmx/NotificationPublishingMessageHandler.java index 220bc1f447..f3a0b0a1fa 100644 --- a/spring-integration-jmx/src/main/java/org/springframework/integration/jmx/NotificationPublishingMessageHandler.java +++ b/spring-integration-jmx/src/main/java/org/springframework/integration/jmx/NotificationPublishingMessageHandler.java @@ -93,6 +93,11 @@ public class NotificationPublishingMessageHandler extends AbstractMessageHandler this.defaultNotificationType = defaultNotificationType; } + @Override + public String getComponentType() { + return "jmx:notification-publishing-channel-adapter"; + } + @Override public final void onInit() throws Exception { Assert.isTrue(this.getBeanFactory() instanceof ListableBeanFactory, "A ListableBeanFactory is required."); diff --git a/spring-integration-jmx/src/main/java/org/springframework/integration/jmx/OperationInvokingMessageHandler.java b/spring-integration-jmx/src/main/java/org/springframework/integration/jmx/OperationInvokingMessageHandler.java index a9c87b6b37..f6769b0ee2 100644 --- a/spring-integration-jmx/src/main/java/org/springframework/integration/jmx/OperationInvokingMessageHandler.java +++ b/spring-integration-jmx/src/main/java/org/springframework/integration/jmx/OperationInvokingMessageHandler.java @@ -106,6 +106,11 @@ public class OperationInvokingMessageHandler extends AbstractReplyProducingMessa this.operationName = operationName; } + @Override + public String getComponentType() { + return "jmx:operation-invoking-channel-adapter"; + } + @Override protected void doInit() { Assert.notNull(this.server, "MBeanServer is required."); diff --git a/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/outbound/JpaOutboundGateway.java b/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/outbound/JpaOutboundGateway.java index 47e55c3645..3ef0083891 100644 --- a/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/outbound/JpaOutboundGateway.java +++ b/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/outbound/JpaOutboundGateway.java @@ -61,6 +61,11 @@ public class JpaOutboundGateway extends AbstractReplyProducingMessageHandler { } + @Override + public String getComponentType() { + return "jpa:outbound-gateway"; + } + @Override protected void doInit() { this.jpaExecutor.setBeanFactory(this.getBeanFactory()); diff --git a/spring-integration-mail/src/main/java/org/springframework/integration/mail/MailSendingMessageHandler.java b/spring-integration-mail/src/main/java/org/springframework/integration/mail/MailSendingMessageHandler.java index a51f8f083b..5530621780 100644 --- a/spring-integration-mail/src/main/java/org/springframework/integration/mail/MailSendingMessageHandler.java +++ b/spring-integration-mail/src/main/java/org/springframework/integration/mail/MailSendingMessageHandler.java @@ -20,7 +20,6 @@ import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; import org.springframework.core.io.ByteArrayResource; -import org.springframework.messaging.MessageHandlingException; import org.springframework.integration.handler.AbstractMessageHandler; import org.springframework.integration.mapping.MessageMappingException; import org.springframework.mail.MailMessage; @@ -30,6 +29,7 @@ import org.springframework.mail.javamail.MimeMailMessage; import org.springframework.mail.javamail.MimeMessageHelper; import org.springframework.messaging.Message; import org.springframework.messaging.MessageHandler; +import org.springframework.messaging.MessageHandlingException; import org.springframework.messaging.MessageHeaders; import org.springframework.util.Assert; import org.springframework.util.ObjectUtils; @@ -66,6 +66,10 @@ public class MailSendingMessageHandler extends AbstractMessageHandler { this.mailSender = mailSender; } + @Override + public String getComponentType() { + return "mail:outbound-channel-adapter"; + } @Override protected final void handleMessageInternal(Message message) { diff --git a/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/inbound/MongoDbMessageSource.java b/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/inbound/MongoDbMessageSource.java index d5781e69a4..5e60800e09 100644 --- a/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/inbound/MongoDbMessageSource.java +++ b/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/inbound/MongoDbMessageSource.java @@ -165,6 +165,11 @@ public class MongoDbMessageSource extends IntegrationObjectSupport this.mongoConverter = mongoConverter; } + @Override + public String getComponentType() { + return "mongo:inbound-channel-adapter"; + } + @Override protected void onInit() throws Exception { this.evaluationContext = diff --git a/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/outbound/MongoDbStoringMessageHandler.java b/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/outbound/MongoDbStoringMessageHandler.java index 66cdf8f24e..f32484d933 100644 --- a/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/outbound/MongoDbStoringMessageHandler.java +++ b/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/outbound/MongoDbStoringMessageHandler.java @@ -97,6 +97,11 @@ public class MongoDbStoringMessageHandler extends AbstractMessageHandler { this.collectionNameExpression = collectionNameExpression; } + @Override + public String getComponentType() { + return "mongo:outbound-channel-adapter"; + } + @Override protected void onInit() throws Exception { this.evaluationContext = diff --git a/spring-integration-mqtt/src/main/java/org/springframework/integration/mqtt/inbound/AbstractMqttMessageDrivenChannelAdapter.java b/spring-integration-mqtt/src/main/java/org/springframework/integration/mqtt/inbound/AbstractMqttMessageDrivenChannelAdapter.java index e22d7720c5..973b11095c 100644 --- a/spring-integration-mqtt/src/main/java/org/springframework/integration/mqtt/inbound/AbstractMqttMessageDrivenChannelAdapter.java +++ b/spring-integration-mqtt/src/main/java/org/springframework/integration/mqtt/inbound/AbstractMqttMessageDrivenChannelAdapter.java @@ -69,6 +69,11 @@ public abstract class AbstractMqttMessageDrivenChannelAdapter extends MessagePro return topic; } + @Override + public String getComponentType(){ + return "mqtt:inbound-channel-adapter"; + } + @Override protected void onInit() { super.onInit(); @@ -77,9 +82,4 @@ public abstract class AbstractMqttMessageDrivenChannelAdapter extends MessagePro } } - @Override - public String getComponentType(){ - return "mqtt:inbound-channel-adapter"; - } - } diff --git a/spring-integration-mqtt/src/main/java/org/springframework/integration/mqtt/outbound/AbstractMqttMessageHandler.java b/spring-integration-mqtt/src/main/java/org/springframework/integration/mqtt/outbound/AbstractMqttMessageHandler.java index 3cce15758a..601c58b693 100644 --- a/spring-integration-mqtt/src/main/java/org/springframework/integration/mqtt/outbound/AbstractMqttMessageHandler.java +++ b/spring-integration-mqtt/src/main/java/org/springframework/integration/mqtt/outbound/AbstractMqttMessageHandler.java @@ -86,6 +86,11 @@ public abstract class AbstractMqttMessageHandler extends AbstractMessageHandler return clientId; } + @Override + public String getComponentType() { + return "mqtt:outbound-channel-adapter"; + } + @Override protected void onInit() throws Exception { super.onInit(); @@ -153,9 +158,4 @@ public abstract class AbstractMqttMessageHandler extends AbstractMessageHandler protected abstract void publish(String topic, Object mqttMessage) throws Exception; - @Override - public String getComponentType() { - return "mqtt:outbound-channel-adapter"; - } - } diff --git a/spring-integration-redis/src/main/java/org/springframework/integration/redis/inbound/RedisStoreMessageSource.java b/spring-integration-redis/src/main/java/org/springframework/integration/redis/inbound/RedisStoreMessageSource.java index d62923c46e..a0e525e87c 100644 --- a/spring-integration-redis/src/main/java/org/springframework/integration/redis/inbound/RedisStoreMessageSource.java +++ b/spring-integration-redis/src/main/java/org/springframework/integration/redis/inbound/RedisStoreMessageSource.java @@ -140,6 +140,11 @@ public class RedisStoreMessageSource extends IntegrationObjectSupport return fb.getObject(); } + @Override + public String getComponentType() { + return "redis:store-inbound-channel-adapter"; + } + @Override protected void onInit() throws Exception { this.evaluationContext = diff --git a/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisOutboundGateway.java b/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisOutboundGateway.java index 203025c994..701c4daa2e 100644 --- a/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisOutboundGateway.java +++ b/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisOutboundGateway.java @@ -87,6 +87,11 @@ public class RedisOutboundGateway extends AbstractReplyProducingMessageHandler this.argumentsStrategy = argumentsStrategy; } + @Override + public String getComponentType() { + return "redis:outbound-gateway"; + } + @Override protected Object handleRequestMessage(Message requestMessage) { final String command = this.commandExpression.getValue(this.evaluationContext, requestMessage, String.class); diff --git a/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisPublishingMessageHandler.java b/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisPublishingMessageHandler.java index 16ae7d2d63..48975b6058 100644 --- a/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisPublishingMessageHandler.java +++ b/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisPublishingMessageHandler.java @@ -92,6 +92,11 @@ public class RedisPublishingMessageHandler extends AbstractMessageHandler implem this.topicExpression = topicExpression; } + @Override + public String getComponentType() { + return "redis:outbound-channel-adapter"; + } + @Override protected void onInit() throws Exception { Assert.notNull(topicExpression, "'topicExpression' must not be null."); diff --git a/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisQueueOutboundChannelAdapter.java b/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisQueueOutboundChannelAdapter.java index b6626c5825..c0ccd50904 100644 --- a/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisQueueOutboundChannelAdapter.java +++ b/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisQueueOutboundChannelAdapter.java @@ -84,7 +84,7 @@ public class RedisQueueOutboundChannelAdapter extends AbstractMessageHandler imp @Override public String getComponentType() { - return "redis:outbound-channel-adapter"; + return "redis:queue-outbound-channel-adapter"; } @Override diff --git a/spring-integration-rmi/src/main/java/org/springframework/integration/rmi/RmiOutboundGateway.java b/spring-integration-rmi/src/main/java/org/springframework/integration/rmi/RmiOutboundGateway.java index e128a6e934..20c0c8e7a6 100644 --- a/spring-integration-rmi/src/main/java/org/springframework/integration/rmi/RmiOutboundGateway.java +++ b/spring-integration-rmi/src/main/java/org/springframework/integration/rmi/RmiOutboundGateway.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2013 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -47,6 +47,11 @@ public class RmiOutboundGateway extends AbstractReplyProducingMessageHandler { this.setOutputChannel(replyChannel); } + @Override + public String getComponentType() { + return "rmi:outbound-gateway"; + } + @Override public final Object handleRequestMessage(Message message) { if (!(message.getPayload() instanceof Serializable)) { diff --git a/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/gateway/SftpOutboundGateway.java b/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/gateway/SftpOutboundGateway.java index 065a27753c..21585ee28f 100644 --- a/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/gateway/SftpOutboundGateway.java +++ b/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/gateway/SftpOutboundGateway.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2013 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -87,4 +87,9 @@ public class SftpOutboundGateway extends AbstractRemoteFileOutboundGateway { +public class ByteStreamReadingMessageSource extends IntegrationObjectSupport implements MessageSource { private BufferedInputStream stream; @@ -67,6 +69,11 @@ public class ByteStreamReadingMessageSource implements MessageSource { this.shouldTruncate = shouldTruncate; } + @Override + public String getComponentType() { + return "stream:stdin-channel-adapter(byte)"; + } + public Message receive() { try { byte[] bytes; diff --git a/spring-integration-stream/src/main/java/org/springframework/integration/stream/ByteStreamWritingMessageHandler.java b/spring-integration-stream/src/main/java/org/springframework/integration/stream/ByteStreamWritingMessageHandler.java index be7ab23e50..b61d3a822d 100644 --- a/spring-integration-stream/src/main/java/org/springframework/integration/stream/ByteStreamWritingMessageHandler.java +++ b/spring-integration-stream/src/main/java/org/springframework/integration/stream/ByteStreamWritingMessageHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2010 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,14 +23,14 @@ import java.io.OutputStream; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.springframework.messaging.Message; -import org.springframework.messaging.MessagingException; -import org.springframework.messaging.MessageHandler; import org.springframework.integration.handler.AbstractMessageHandler; +import org.springframework.messaging.Message; +import org.springframework.messaging.MessageHandler; +import org.springframework.messaging.MessagingException; /** * A {@link MessageHandler} that writes a byte array to an {@link OutputStream}. - * + * * @author Mark Fisher */ public class ByteStreamWritingMessageHandler extends AbstractMessageHandler { @@ -53,7 +53,12 @@ public class ByteStreamWritingMessageHandler extends AbstractMessageHandler { } } + @Override + public String getComponentType() { + return "stream:outbound-channel-adapter(byte)"; + } + @Override protected void handleMessageInternal(Message message) { Object payload = message.getPayload(); if (payload == null) { diff --git a/spring-integration-stream/src/main/java/org/springframework/integration/stream/CharacterStreamReadingMessageSource.java b/spring-integration-stream/src/main/java/org/springframework/integration/stream/CharacterStreamReadingMessageSource.java index ccffacac05..5c22e8db7e 100644 --- a/spring-integration-stream/src/main/java/org/springframework/integration/stream/CharacterStreamReadingMessageSource.java +++ b/spring-integration-stream/src/main/java/org/springframework/integration/stream/CharacterStreamReadingMessageSource.java @@ -31,7 +31,7 @@ import org.springframework.util.Assert; /** * A pollable source for {@link Reader Readers}. - * + * * @author Mark Fisher */ public class CharacterStreamReadingMessageSource extends IntegrationObjectSupport implements MessageSource { @@ -61,7 +61,7 @@ public class CharacterStreamReadingMessageSource extends IntegrationObjectSuppor public String getComponentType() { - return "stream:stdin-channel-adapter"; + return "stream:stdin-channel-adapter(character)"; } public Message receive() { diff --git a/spring-integration-stream/src/main/java/org/springframework/integration/stream/CharacterStreamWritingMessageHandler.java b/spring-integration-stream/src/main/java/org/springframework/integration/stream/CharacterStreamWritingMessageHandler.java index b341784519..9bbd855cd4 100644 --- a/spring-integration-stream/src/main/java/org/springframework/integration/stream/CharacterStreamWritingMessageHandler.java +++ b/spring-integration-stream/src/main/java/org/springframework/integration/stream/CharacterStreamWritingMessageHandler.java @@ -128,6 +128,11 @@ public class CharacterStreamWritingMessageHandler extends AbstractMessageHandler this.shouldAppendNewLine = shouldAppendNewLine; } + @Override + public String getComponentType() { + return "stream:outbound-channel-adapter(character)"; + } + @Override protected void handleMessageInternal(Message message) { Object payload = message.getPayload(); diff --git a/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/inbound/TcpSyslogReceivingChannelAdapter.java b/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/inbound/TcpSyslogReceivingChannelAdapter.java index 052ee62f2b..9ae37eba89 100644 --- a/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/inbound/TcpSyslogReceivingChannelAdapter.java +++ b/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/inbound/TcpSyslogReceivingChannelAdapter.java @@ -50,6 +50,11 @@ public class TcpSyslogReceivingChannelAdapter extends SyslogReceivingChannelAdap this.applicationEventPublisher = applicationEventPublisher; } + @Override + public String getComponentType() { + return "syslog:inbound-channel-adapter(tcp)"; + } + @Override protected void onInit() { super.onInit(); diff --git a/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/inbound/UdpSyslogReceivingChannelAdapter.java b/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/inbound/UdpSyslogReceivingChannelAdapter.java index fd9366ec8f..1d42b21aaf 100644 --- a/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/inbound/UdpSyslogReceivingChannelAdapter.java +++ b/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/inbound/UdpSyslogReceivingChannelAdapter.java @@ -15,11 +15,11 @@ */ package org.springframework.integration.syslog.inbound; -import org.springframework.messaging.Message; -import org.springframework.messaging.MessagingException; import org.springframework.integration.channel.DirectChannel; -import org.springframework.messaging.MessageHandler; import org.springframework.integration.ip.udp.UnicastReceivingChannelAdapter; +import org.springframework.messaging.Message; +import org.springframework.messaging.MessageHandler; +import org.springframework.messaging.MessagingException; /** * UDP implementation of a syslog inbound channel adapter. @@ -36,6 +36,11 @@ public class UdpSyslogReceivingChannelAdapter extends SyslogReceivingChannelAdap this.udpAdapter = udpAdpter; } + @Override + public String getComponentType() { + return "syslog:inbound-channel-adapter(udp)"; + } + @Override protected void onInit() { if (this.udpAdapter == null) { diff --git a/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/outbound/DirectMessageSendingMessageHandler.java b/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/outbound/DirectMessageSendingMessageHandler.java index 6cbcadefd3..30f4aff450 100644 --- a/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/outbound/DirectMessageSendingMessageHandler.java +++ b/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/outbound/DirectMessageSendingMessageHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2011 the original author or authors + * Copyright 2002-2014 the original author or authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,9 +16,9 @@ package org.springframework.integration.twitter.outbound; -import org.springframework.messaging.Message; import org.springframework.integration.handler.AbstractMessageHandler; import org.springframework.integration.twitter.core.TwitterHeaders; +import org.springframework.messaging.Message; import org.springframework.social.twitter.api.Twitter; import org.springframework.util.Assert; @@ -40,6 +40,10 @@ public class DirectMessageSendingMessageHandler extends AbstractMessageHandler { this.twitter = twitter; } + @Override + public String getComponentType() { + return "twitter:dm-outbound-channel-adapter"; + } @Override protected void handleMessageInternal(Message message) throws Exception { @@ -47,12 +51,12 @@ public class DirectMessageSendingMessageHandler extends AbstractMessageHandler { "Consider adding a transformer to the message flow in front of this adapter."); Object toUser = message.getHeaders().get(TwitterHeaders.DM_TARGET_USER_ID); Assert.isTrue(toUser instanceof String || toUser instanceof Number, - "the header '" + TwitterHeaders.DM_TARGET_USER_ID + + "the header '" + TwitterHeaders.DM_TARGET_USER_ID + "' must contain either a String (a screenname) or an number (a user ID)"); String payload = (String) message.getPayload(); if (toUser instanceof Number) { this.twitter.directMessageOperations().sendDirectMessage(((Number) toUser).longValue(), payload); - } + } else if (toUser instanceof String) { this.twitter.directMessageOperations().sendDirectMessage((String) toUser, payload); } diff --git a/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/outbound/StatusUpdatingMessageHandler.java b/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/outbound/StatusUpdatingMessageHandler.java index a9de44dbaa..ed5715e7f1 100644 --- a/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/outbound/StatusUpdatingMessageHandler.java +++ b/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/outbound/StatusUpdatingMessageHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2011 the original author or authors + * Copyright 2002-2014 the original author or authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,9 +16,9 @@ package org.springframework.integration.twitter.outbound; +import org.springframework.integration.handler.AbstractMessageHandler; import org.springframework.messaging.Message; import org.springframework.messaging.MessageHandlingException; -import org.springframework.integration.handler.AbstractMessageHandler; import org.springframework.social.twitter.api.Tweet; import org.springframework.social.twitter.api.Twitter; import org.springframework.util.Assert; @@ -40,6 +40,10 @@ public class StatusUpdatingMessageHandler extends AbstractMessageHandler { this.twitter = twitter; } + @Override + public String getComponentType() { + return "twitter:outbound-channel-adapter"; + } @Override protected void handleMessageInternal(Message message) throws Exception { diff --git a/spring-integration-ws/src/main/java/org/springframework/integration/ws/MarshallingWebServiceOutboundGateway.java b/spring-integration-ws/src/main/java/org/springframework/integration/ws/MarshallingWebServiceOutboundGateway.java index 412161cded..2a6e3579d8 100644 --- a/spring-integration-ws/src/main/java/org/springframework/integration/ws/MarshallingWebServiceOutboundGateway.java +++ b/spring-integration-ws/src/main/java/org/springframework/integration/ws/MarshallingWebServiceOutboundGateway.java @@ -76,6 +76,17 @@ public class MarshallingWebServiceOutboundGateway extends AbstractWebServiceOutb this(uri, marshaller, (WebServiceMessageFactory) null); } + @Override + protected Object doHandle(String uri, Message requestMessage, WebServiceMessageCallback requestCallback) { + Object reply = this.getWebServiceTemplate().sendAndReceive(uri, + new MarshallingRequestMessageCallback(requestCallback, requestMessage), new MarshallingResponseMessageExtractor()); + return reply; + } + + @Override + public String getComponentType() { + return "ws:outbound-gateway(marshaling)"; + } /** * Sets the provided Marshaller and Unmarshaller on this gateway's WebServiceTemplate. @@ -99,13 +110,6 @@ public class MarshallingWebServiceOutboundGateway extends AbstractWebServiceOutb this.unmarshaller = unmarshaller; } - @Override - protected Object doHandle(String uri, Message requestMessage, WebServiceMessageCallback requestCallback) { - Object reply = this.getWebServiceTemplate().sendAndReceive(uri, - new MarshallingRequestMessageCallback(requestCallback, requestMessage), new MarshallingResponseMessageExtractor()); - return reply; - } - private class MarshallingRequestMessageCallback extends RequestMessageCallback { public MarshallingRequestMessageCallback(WebServiceMessageCallback requestCallback, Message requestMessage){ diff --git a/spring-integration-ws/src/main/java/org/springframework/integration/ws/SimpleWebServiceOutboundGateway.java b/spring-integration-ws/src/main/java/org/springframework/integration/ws/SimpleWebServiceOutboundGateway.java index ec85d4bdc7..52ffdbb2fd 100644 --- a/spring-integration-ws/src/main/java/org/springframework/integration/ws/SimpleWebServiceOutboundGateway.java +++ b/spring-integration-ws/src/main/java/org/springframework/integration/ws/SimpleWebServiceOutboundGateway.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2013 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -75,6 +75,10 @@ public class SimpleWebServiceOutboundGateway extends AbstractWebServiceOutboundG this.sourceExtractor = (sourceExtractor != null) ? sourceExtractor : new DefaultSourceExtractor(); } + @Override + public String getComponentType() { + return "ws:outbound-gateway(simple)"; + } @Override protected Object doHandle(String uri, final Message requestMessage, final WebServiceMessageCallback requestCallback) { @@ -163,6 +167,7 @@ public class SimpleWebServiceOutboundGateway extends AbstractWebServiceOutboundG private static class DefaultSourceExtractor extends TransformerObjectSupport implements SourceExtractor { + @Override public DOMSource extractData(Source source) throws IOException, TransformerException { if (source instanceof DOMSource) { return (DOMSource)source; diff --git a/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/MarshallingTransformer.java b/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/MarshallingTransformer.java index 7169468c2b..8c50cc09d3 100644 --- a/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/MarshallingTransformer.java +++ b/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/MarshallingTransformer.java @@ -74,6 +74,11 @@ public class MarshallingTransformer extends AbstractTransformer { this.extractPayload = extractPayload; } + @Override + public String getComponentType() { + return "xml:marshalling-transformer"; + } + @Override public Object doTransform(Message message) { Object source = (this.extractPayload) ? message.getPayload() : message; diff --git a/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/UnmarshallingTransformer.java b/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/UnmarshallingTransformer.java index 5265410487..e078a950e5 100644 --- a/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/UnmarshallingTransformer.java +++ b/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/UnmarshallingTransformer.java @@ -81,6 +81,10 @@ public class UnmarshallingTransformer extends AbstractPayloadTransformer message) throws Exception { Node node = this.converter.convertToNode(message.getPayload()); diff --git a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/outbound/ChatMessageSendingMessageHandler.java b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/outbound/ChatMessageSendingMessageHandler.java index 87dda30bf8..73eca80c00 100644 --- a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/outbound/ChatMessageSendingMessageHandler.java +++ b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/outbound/ChatMessageSendingMessageHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2011 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,12 +18,12 @@ package org.springframework.integration.xmpp.outbound; import org.jivesoftware.smack.XMPPConnection; -import org.springframework.messaging.Message; -import org.springframework.messaging.MessageHandlingException; import org.springframework.integration.xmpp.XmppHeaders; import org.springframework.integration.xmpp.core.AbstractXmppConnectionAwareMessageHandler; import org.springframework.integration.xmpp.support.DefaultXmppHeaderMapper; import org.springframework.integration.xmpp.support.XmppHeaderMapper; +import org.springframework.messaging.Message; +import org.springframework.messaging.MessageHandlingException; import org.springframework.util.Assert; import org.springframework.util.StringUtils; @@ -54,6 +54,11 @@ public class ChatMessageSendingMessageHandler extends AbstractXmppConnectionAwar this.headerMapper = headerMapper; } + @Override + public String getComponentType() { + return "xmpp:outbound-channel-adapter"; + } + @Override protected void handleMessageInternal(Message message) throws Exception { Assert.isTrue(this.initialized, this.getComponentName() + "#" + this.getComponentType() + " must be initialized"); diff --git a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/outbound/PresenceSendingMessageHandler.java b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/outbound/PresenceSendingMessageHandler.java index a5a5ce5a5e..ecbc99b11a 100644 --- a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/outbound/PresenceSendingMessageHandler.java +++ b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/outbound/PresenceSendingMessageHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2010 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,12 +19,12 @@ package org.springframework.integration.xmpp.outbound; import org.jivesoftware.smack.XMPPConnection; import org.jivesoftware.smack.packet.Presence; -import org.springframework.messaging.Message; import org.springframework.integration.xmpp.core.AbstractXmppConnectionAwareMessageHandler; +import org.springframework.messaging.Message; import org.springframework.util.Assert; /** - * MessageHandler that publishes updated Presence values for a given XMPP connection. + * MessageHandler that publishes updated Presence values for a given XMPP connection. * * @author Josh Long * @author Oleg Zhurakousky @@ -40,6 +40,10 @@ public class PresenceSendingMessageHandler extends AbstractXmppConnectionAwareMe super(xmppConnection); } + @Override + public String getComponentType() { + return "xmpp:presence-outbound-channel-adapter"; + } @Override protected void handleMessageInternal(Message message) throws Exception {