1 package com.ubermq.jms.client.impl; 2 3 import EDU.oswego.cs.dl.util.concurrent.*; 4 import com.ubermq.jms.client.*; 5 import com.ubermq.jms.common.datagram.*; 6 import com.ubermq.kernel.*; 7 import com.ubermq.kernel.overflow.*; 8 import java.io.*; 9 10 final class QueueReceiver 11 extends AbstractConsumer 12 implements javax.jms.QueueReceiver 13 { 14 private static int BOUNDED_BUFFER_SIZE = Integer.valueOf(Configurator.getProperty(ClientConfig.SUB_BOUNDED_BUFFER_SIZE, "50")).intValue(); 16 17 20 private final javax.jms.Queue q; 21 22 public QueueReceiver(javax.jms.Queue q, 23 String selector, 24 Session qs) 25 throws javax.jms.JMSException 26 { 27 super(qs, 28 selector, 29 qs.conn.delivery, 30 new BoundedPriorityQueue(BOUNDED_BUFFER_SIZE)); 31 this.q = q; 32 33 qs.conn.getClientProcessor().startQueue(q.getQueueName(), 35 selector, 36 this); 37 } 38 39 public void close() 40 throws javax.jms.JMSException 41 { 42 super.close(); 43 44 getClientProcessor().stopQueue(q.getQueueName(), this); 46 } 47 48 public javax.jms.Queue getQueue() 49 throws javax.jms.JMSException 50 { 51 return q; 52 } 53 } 54 | Popular Tags |