diff --git a/contact-center/app/pom.xml b/contact-center/app/pom.xml index f791962f..4b8e5216 100644 --- a/contact-center/app/pom.xml +++ b/contact-center/app/pom.xml @@ -34,9 +34,8 @@ - org.apache.activemq - activemq-pool - + org.messaginghub + pooled-jms diff --git a/contact-center/app/src/main/java/com/chatopera/cc/activemq/BrokerPublisher.java b/contact-center/app/src/main/java/com/chatopera/cc/activemq/BrokerPublisher.java index 928e2a47..f72b8dbf 100644 --- a/contact-center/app/src/main/java/com/chatopera/cc/activemq/BrokerPublisher.java +++ b/contact-center/app/src/main/java/com/chatopera/cc/activemq/BrokerPublisher.java @@ -12,24 +12,26 @@ package com.chatopera.cc.activemq; import com.alibaba.fastjson.JSONObject; +import lombok.RequiredArgsConstructor; import org.apache.activemq.ScheduledMessage; import org.apache.activemq.command.ActiveMQTopic; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jms.core.JmsTemplate; +import org.springframework.lang.NonNull; import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; import java.util.Map; @Component +@RequiredArgsConstructor public class BrokerPublisher { final static private Logger logger = LoggerFactory.getLogger(BrokerPublisher.class); - @Autowired - private JmsTemplate jmsTemplate; + @NonNull + private final JmsTemplate jmsTemplate; @PostConstruct public void setup() { @@ -40,9 +42,7 @@ public class BrokerPublisher { /** * 时延消息 * - * @param destination - * @param payload - * @param delay available by delayed seconds + * @param delay available by delayed seconds */ public void send(final String destination, final String payload, final boolean isTopic, final int delay) { try { @@ -64,11 +64,6 @@ public class BrokerPublisher { } } - /** - * @param destination - * @param payload - * @param isTopic - */ public void send(final String destination, final String payload, boolean isTopic) { try { if (isTopic) { @@ -77,7 +72,7 @@ public class BrokerPublisher { // 默认为Queue jmsTemplate.convertAndSend(destination, payload); } - logger.debug("[send] send succ, dest {}, payload {}", destination, payload); + logger.debug("[send] send success, dest {}, payload {}", destination, payload); } catch (Exception e) { logger.warn("[send] error happens.", e); } @@ -104,4 +99,4 @@ public class BrokerPublisher { send(destination, obj.toJSONString()); } -} \ No newline at end of file +} diff --git a/contact-center/app/src/main/java/com/chatopera/cc/config/ActiveMQConfigure.java b/contact-center/app/src/main/java/com/chatopera/cc/config/ActiveMQConfigure.java index 02236ec2..c01e12c7 100644 --- a/contact-center/app/src/main/java/com/chatopera/cc/config/ActiveMQConfigure.java +++ b/contact-center/app/src/main/java/com/chatopera/cc/config/ActiveMQConfigure.java @@ -10,6 +10,7 @@ */ package com.chatopera.cc.config; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.jms.annotation.EnableJms; @@ -25,7 +26,7 @@ public class ActiveMQConfigure { // topic模式的ListenerContainer @Bean @SuppressWarnings("SpringJavaAutowiringInspection") - public JmsListenerContainerFactory jmsListenerContainerTopic(ConnectionFactory connectionFactory) { + public JmsListenerContainerFactory jmsListenerContainerTopic(@Qualifier("jmsConnectionFactory") ConnectionFactory connectionFactory) { DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory(); factory.setConnectionFactory(connectionFactory); factory.setPubSubDomain(true); @@ -34,7 +35,7 @@ public class ActiveMQConfigure { // queue模式的ListenerContainer @Bean - public JmsListenerContainerFactory jmsListenerContainerQueue(ConnectionFactory connectionFactory) { + public JmsListenerContainerFactory jmsListenerContainerQueue(@Qualifier("jmsConnectionFactory") ConnectionFactory connectionFactory) { DefaultJmsListenerContainerFactory bean = new DefaultJmsListenerContainerFactory(); bean.setConnectionFactory(connectionFactory); return bean;