Skip to content

Commit 9b8a3a3

Browse files
zhaohai666zh378814
andauthored
[ISSUE #685] Support configuring multiple topics in rocketmq-v5-client-spring-boot-starter
Co-authored-by: zh378814 <[email protected]>
1 parent d57e78c commit 9b8a3a3

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

rocketmq-v5-client-spring-boot/src/main/java/org/apache/rocketmq/client/autoconfigure/ExtTemplateResetConfiguration.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -114,10 +114,9 @@ private ProducerBuilder createProducer(ExtProducerResetConfiguration annotation)
114114
ClientConfiguration clientConfiguration = RocketMQUtil.createClientConfiguration(accessKey, secretKey,
115115
endpoints, Duration.ofSeconds(requestTimeout), sslEnabled, namespace);
116116
final ClientServiceProvider provider = ClientServiceProvider.loadService();
117-
ProducerBuilder producerBuilder = provider.newProducerBuilder()
117+
return provider.newProducerBuilder()
118118
.setClientConfiguration(clientConfiguration).setMaxAttempts(annotation.maxAttempts())
119-
.setTopics(topic);
120-
return producerBuilder;
119+
.setTopics(topic.split(RocketMQAutoConfiguration.COMMA));
121120
}
122121

123122
}

rocketmq-v5-client-spring-boot/src/main/java/org/apache/rocketmq/client/autoconfigure/RocketMQAutoConfiguration.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ public class RocketMQAutoConfiguration implements ApplicationContextAware {
5959
public static final String ROCKETMQ_TEMPLATE_DEFAULT_GLOBAL_NAME = "rocketMQClientTemplate";
6060
public static final String PRODUCER_BUILDER_BEAN_NAME = "producerBuilder";
6161
public static final String SIMPLE_CONSUMER_BUILDER_BEAN_NAME = "simpleConsumerBuilder";
62+
public static final String COMMA = ",";
6263
private ApplicationContext applicationContext;
6364

6465
@Override
@@ -87,7 +88,7 @@ public ProducerBuilder producerBuilder(RocketMQProperties rocketMQProperties) {
8788
if (StringUtils.hasLength(topic)) {
8889
// Set the topic name(s), which is optional but recommended. It makes producer could prefetch the topic
8990
// route before message publishing.
90-
producerBuilder.setTopics(rocketMQProducer.getTopic());
91+
producerBuilder.setTopics(rocketMQProducer.getTopic().split(COMMA));
9192
}
9293
log.info(String.format("a producer init on proxy %s", endPoints));
9394
return producerBuilder;

0 commit comments

Comments
 (0)