User: pkendall
  Date: 01/07/31 20:09:25

  Modified:    src/main/org/jbossmq/server ClientConsumer.java
  Log:
  Fix start/stop connection
  
  Revision  Changes    Path
  1.15      +17 -2     jbossmq/src/main/org/jbossmq/server/ClientConsumer.java
  
  Index: ClientConsumer.java
  ===================================================================
  RCS file: /cvsroot/jboss/jbossmq/src/main/org/jbossmq/server/ClientConsumer.java,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- ClientConsumer.java       2001/07/30 09:23:23     1.14
  +++ ClientConsumer.java       2001/08/01 03:09:25     1.15
  @@ -31,7 +31,7 @@
    *
    *   @author Hiram Chirino ([EMAIL PROTECTED])
    * 
  - *   @version $Revision: 1.14 $
  + *   @version $Revision: 1.15 $
    */
   public class ClientConsumer implements Runnable {
   
  @@ -109,6 +109,9 @@
        {
                cat.debug("Queueing outbound message: "+message);
   
  +             if( !enabled )
  +                     return;
  +
                LinkedList l = (LinkedList)destinationSubscriptions.get( 
message.getJMSDestination() );
                if( l == null )
                        throw new JMSException("No subscription found for that 
destination.");
  @@ -238,7 +241,7 @@
                if( queue == null )
                        throw new JMSException("The subscription's destination does 
not exist");
   
  -             if( req.subscription.actsLikeAQueue ) {
  +             if( enabled && req.subscription.actsLikeAQueue ) {
                        SpyMessage message = req.dest.receiveNoWait(req.subscription);
   
                        if( message != null ) {
  @@ -340,6 +343,9 @@
   
                cat.debug(""+this+"->scanExclusiveQueue(queue="+queue+")");
                
  +             if( !enabled )
  +                     return false;
  +
                Iterator i = queue.messages.iterator();
                while( i.hasNext() ) {
                        
  @@ -391,6 +397,15 @@
        public void setEnabled(boolean enabled) {
                cat.debug(""+this+"->setEnabled(enabled="+enabled+")");
                this.enabled = enabled;
  +             if(enabled){
  +                     // queues might be waiting for messages.
  +                     for(Iterator it = 
destinationSubscriptions.keySet().iterator();it.hasNext();){
  +                             SpyDestination destination = (SpyDestination) 
it.next();
  +                             JMSDestination dest = 
server.getJMSDestination(destination);
  +                             if(dest != null)
  +                                     dest.notifyMessageAvailable();
  +                     }
  +             }
        }
   
        public String toString() {
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to