29 lines
949 B
Plaintext
29 lines
949 B
Plaintext
package demo.mq;
|
|
|
|
import org.apache.rocketmq.spring.core.RocketMQTemplate;
|
|
import org.springframework.messaging.Message;
|
|
import org.springframework.messaging.support.MessageBuilder;
|
|
|
|
public class DutyImNoticeProducer {
|
|
private RocketMQTemplate rocketMQTemplate;
|
|
public static final String MQ_TOPIC = "duty-im-notice-topic";
|
|
|
|
public void addMq(DutyImNotice message, long timestamp) {
|
|
String uniqueKey = message.getTenantId() + "_" + message.getId();
|
|
Message<DutyImNotice> mqMessage = MessageBuilder.withPayload(message)
|
|
.setHeader("KEYS", uniqueKey)
|
|
.setHeader("executeTime", timestamp)
|
|
.build();
|
|
rocketMQTemplate.asyncSend(MQ_TOPIC, mqMessage);
|
|
}
|
|
|
|
public void convertSend(DutyImNotice message) {
|
|
rocketMQTemplate.convertAndSend(MQ_TOPIC, message);
|
|
}
|
|
|
|
public void sendJson(DutyImNotice message) {
|
|
String body = JSON.toJSONString(message);
|
|
rocketMQTemplate.syncSend(MQ_TOPIC, body);
|
|
}
|
|
}
|