From c17e1bd685fd46fe8664ef2bc19e82d1a84a79c3 Mon Sep 17 00:00:00 2001 From: Oleg Zhurakousky Date: Wed, 27 Oct 2010 18:12:26 -0400 Subject: [PATCH] INT-1471, more polishing --- ...AbstractInboundTwitterEndpointSupport.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/inbound/AbstractInboundTwitterEndpointSupport.java b/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/inbound/AbstractInboundTwitterEndpointSupport.java index 33f64533de..1aed6458eb 100644 --- a/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/inbound/AbstractInboundTwitterEndpointSupport.java +++ b/spring-integration-twitter/src/main/java/org/springframework/integration/twitter/inbound/AbstractInboundTwitterEndpointSupport.java @@ -24,7 +24,6 @@ import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.ScheduledFuture; import org.springframework.beans.factory.BeanFactory; -import org.springframework.context.SmartLifecycle; import org.springframework.integration.Message; import org.springframework.integration.context.IntegrationContextUtils; import org.springframework.integration.core.MessageSource; @@ -36,6 +35,7 @@ import org.springframework.integration.store.SimpleMetadataStore; import org.springframework.integration.support.MessageBuilder; import org.springframework.integration.twitter.oauth.OAuthConfiguration; import org.springframework.util.Assert; +import org.springframework.util.StringUtils; import twitter4j.DirectMessage; import twitter4j.Status; @@ -56,7 +56,7 @@ import twitter4j.Twitter; */ @SuppressWarnings("rawtypes") public abstract class AbstractInboundTwitterEndpointSupport extends AbstractEndpoint - implements MessageSource, SmartLifecycle, TrackableComponent { + implements MessageSource, TrackableComponent { private volatile MetadataStore metadataStore; @@ -114,9 +114,18 @@ public abstract class AbstractInboundTwitterEndpointSupport extends AbstractE this.metadataStore = new SimpleMetadataStore(); } } - Assert.hasText(this.getComponentName(), "Inbound Twitter adapter must have a name"); - this.metadataKey = this.getComponentType() + "." + this.getComponentName() - + "." + this.configuration.getConsumerKey(); + StringBuilder metadataKeyBuilder = new StringBuilder(); + if (StringUtils.hasText(this.getComponentType())) { + metadataKeyBuilder.append(this.getComponentType() + "."); + } + if (StringUtils.hasText(this.getComponentName())) { + metadataKeyBuilder.append(this.getComponentName() + "."); + } + else if (logger.isWarnEnabled()) { + logger.warn(this.getClass().getSimpleName() + " has no name. MetadataStore key might not be unique."); + } + metadataKeyBuilder.append(this.configuration.getConsumerKey()); + this.metadataKey = metadataKeyBuilder.toString(); } @SuppressWarnings("unchecked")