public javax.jms.Message receive(String destination, long timeout) throws javax.jms.JMSException { ReceiveDispatcher dispatcher = null; try { dispatcher = new ReceiveDispatcher(this.connection, destination); Message msg = dispatcher.receive(timeout); return msg; } finally { if (dispatcher != null) { dispatcher.stop(); } } }
public void setMessageListener(String destination, javax.jms.MessageListener listener) throws javax.jms.JMSException { ReceiveDispatcher dispatcher = null; try { dispatcher = new ReceiveDispatcher(this.connection, destination); if (listener instanceof JMSMessageListener) { JMSMessageListener temp = (JMSMessageListener) listener; temp.setReceivor(dispatcher); } dispatcher.setMessageListener(listener); tempdispatcher.add(dispatcher); } finally { dispatcher = null; // dispatcher.stop(); } }
public void stop() { if (this.tempdispatcher.size() > 0) { for (ReceiveDispatcher dispatcher : this.tempdispatcher) { try { dispatcher.stop(); } catch (Exception e) { e.printStackTrace(); } } } if (this.requestDispatcher != null) { this.requestDispatcher.stop(); } // if(this.responseDispatcher != null) // { // this.responseDispatcher.stop(); // } if (this.connection != null) try { connection.stop(); } catch (Exception e) { e.printStackTrace(); } // try // { // // connection.setClientID(null); // } // catch(Exception e) // { // e.printStackTrace(); // } try { this.connection.close(); } catch (JMSException e) { e.printStackTrace(); } }