public MessageSender(String broker, String topicName) { //Create connection try { sonicSender = new SonicCommunicator(topicName, broker); cf = sonicSender.GetConnectionFactory(); conn = cf.createConnection(); session = (Session)conn.createSession(false, Sonic.Jms.SessionMode.AUTO_ACKNOWLEDGE); } catch (JMSException jmse) { throw new Exception("Unable to establish connection to MQ." + jmse.Message + " / " + jmse.InnerException); } Console.WriteLine("Create Session: " + session.ToString()); //create the topic try { topic = session.createTopic(topicName); publisher = session.createProducer(topic); tempTopic = session.createTemporaryTopic(); subscriber = session.createConsumer(tempTopic); conn.start(); } catch (JMSException jmse) { throw new Exception("Unable to create topic." + jmse.Message + " / " + jmse.InnerException); } }
public static Message Consume(Connection connection, string queueName) { _session = (Session)connection.createSession(false, SessionMode.AUTO_ACKNOWLEDGE); var receiveQueue = _session.createQueue(queueName); var consumer = _session.createConsumer(receiveQueue); var response = consumer.receive(); return response; }
public void Close() { if (_connection == null) return; _connection.stop(); _connection.close(); if(_session!=null)_session.close(); if(_messageProducer!=null)_messageProducer.close(); if(_messageConsumer!=null)_messageConsumer.close(); _connection = null; }
public virtual void EnsureOpenConnection() { if (_connection == null) { _connection = GetConnectionFactory().createConnection(); _session = (Sonic.Jms.Ext.Session)_connection.createSession(true, Sonic.Jms.SessionMode.AUTO_ACKNOWLEDGE); _topic = _session.createTopic(_topicName); _replier = _session.createProducer(null); _connection.setExceptionListener(this); _connection.start(); } }
private void EnsureOpenConnection() { if (_connection != null) return; _connection = GetNewConnectionFactory().createConnection(); _session = (Sonic.Jms.Ext.Session)_connection.createSession(true, SessionMode.AUTO_ACKNOWLEDGE); _topic = _session.createTopic(_topicName); _messageProducer = _session.createProducer(null); _messageConsumer = _session.createConsumer(_topic); _connection.setExceptionListener(this); _connection.start(); }