コード例 #1
0
 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();
     }
   }
 }
コード例 #2
0
  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();
    }
  }
コード例 #3
0
  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();
    }
  }