package com.jthink.skyeye.data.rabbitmq.service; import com.jthink.skyeye.base.constant.Constants; import com.jthink.skyeye.base.dto.MailDto; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Arrays; /** * JThink@JThink * * @author JThink * @version 0.0.1 * @desc 封装monitor-center需要的rabbit操作 * @date 2016-11-23 09:03:16 */ @Service public class RabbitmqService { @Autowired private RabbitTemplate rabbitTemplate; public MailDto getMessage() { Object object = this.rabbitTemplate.receiveAndConvert(); if (object != null) { return (MailDto) object; } return null; } public void sendMessage(String info, String mail) { this.rabbitTemplate.convertAndSend(this.buildMailDto(info, mail)); } /** * 构造mailDto * @param info * @param mail * @return */ private MailDto buildMailDto(String info, String mail) { MailDto mailDto = new MailDto(); mailDto.setTo(Arrays.asList(mail.split(Constants.COMMA))); mailDto.setContent(info); mailDto.setSubject(Constants.MONITOR_MAIL_SUBJECT); return mailDto; } }