package org.infosec.ismp.servicecheck; import java.io.Serializable; import java.text.SimpleDateFormat; import java.util.Date; import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.MapMessage; import javax.jms.Message; import javax.jms.Session; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jms.core.JmsTemplate; import org.springframework.jms.core.MessageCreator; public class ServiceCheckMessageSend { private JmsTemplate jmsTemplate; private Destination destination; private SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public void springSend(final Serializable object) throws Exception { jmsTemplate.send(destination, new MessageCreator(){ @Override public Message createMessage(Session session) throws JMSException { MapMessage msg =session.createMapMessage(); ServiceCheckModel model = (ServiceCheckModel)object; msg.setString("nodeid", model.getNodeid()); msg.setString("ipAddr", model.getIpAddr()); msg.setString("serviceType", model.getType()); msg.setString("pingStatus", model.getPingStatus()); msg.setDouble("responseTime", model.getResponseTime()); msg.setString("pingTime", format.format(new Date())); return msg; } }); } @Autowired(required=true) public void setJmsTemplate(JmsTemplate jmsTemplate) { this.jmsTemplate = jmsTemplate; } public void setDestination( Destination destination) { this.destination = destination; } }