KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > presumo > jms > client > JmsQueueSession


1 /**
2  * This file is part of Presumo.
3  *
4  * Presumo is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * Presumo is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with Presumo; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17  *
18  *
19  * Copyright 2001 Dan Greff
20  */

21 package com.presumo.jms.client;
22
23 import javax.jms.QueueSession JavaDoc;
24 import javax.jms.JMSException JavaDoc;
25 import javax.jms.InvalidDestinationException JavaDoc;
26 import javax.jms.Queue JavaDoc;
27 import javax.jms.QueueBrowser JavaDoc;
28 import javax.jms.QueueReceiver JavaDoc;
29 import javax.jms.QueueSender JavaDoc;
30 import javax.jms.TemporaryQueue JavaDoc;
31
32 import com.presumo.jms.resources.Resources;
33 import com.presumo.jms.router.Router;
34 import com.presumo.util.log.Logger;
35 import com.presumo.util.log.LoggerFactory;
36
37 /**
38  * @see javax.jms.QueueSession
39  */

40 public final class JmsQueueSession extends JmsSession
41   implements QueueSession JavaDoc
42 {
43
44     /////////////////////////////////////////////////////////////////////////
45
// Constructors //
46
/////////////////////////////////////////////////////////////////////////
47

48   public JmsQueueSession(Router router,
49                          boolean transacted,
50                          int acknowledgeMode,
51                          JmsConnection connx)
52       throws JMSException JavaDoc
53   {
54     super(router, transacted, acknowledgeMode, connx);
55     
56     logger.entry("JmsQueueSession");
57     logger.exit("JmsQueueSession");
58   }
59     
60
61
62     /////////////////////////////////////////////////////////////////////////
63
// Public Methods //
64
/////////////////////////////////////////////////////////////////////////
65

66      
67   public Queue JavaDoc createQueue(String JavaDoc queueName) throws JMSException JavaDoc
68   {
69     logger.entry("createQueue");
70     
71     JmsQueue retval = new JmsQueue(queueName);
72  
73     logger.exit("createTopic");
74     return retval;
75   }
76
77    
78   public QueueReceiver JavaDoc createReceiver(Queue JavaDoc queue)
79     throws JMSException JavaDoc
80   {
81     logger.entry("createReceiver", queue);
82     
83     QueueReceiver JavaDoc r = createReceiver(queue, null);
84
85     logger.exit("createReceiver", r);
86     return r;
87   }
88   
89
90   public QueueReceiver JavaDoc createReceiver(Queue JavaDoc queue,
91                                       String JavaDoc messageSelector)
92     throws JMSException JavaDoc
93   {
94     logger.entry("createReceiver", queue, messageSelector);
95     
96     JmsQueueReceiver r = null;
97
98     if (! (queue instanceof JmsQueue)) throw new
99       InvalidDestinationException JavaDoc("Queue must be from this implementation");
100     if (closed) throw new
101       IllegalStateException JavaDoc("Operation attempted on a closed object");
102     
103     r = new JmsQueueReceiver(this, messageSelector, (JmsQueue) queue, false);
104     
105     logger.exit("createReceiver", r);
106     return r;
107   }
108
109   public QueueBrowser JavaDoc createBrowser(Queue JavaDoc queue)
110     throws JMSException JavaDoc
111   {
112     logger.entry("createBrowser", queue);
113
114     QueueBrowser JavaDoc b = createBrowser(queue, null);
115
116     logger.exit("createQueueBrowser", b);
117     return b;
118   }
119   
120
121   public QueueBrowser JavaDoc createBrowser(Queue JavaDoc queue,
122                                     String JavaDoc messageSelector)
123     throws JMSException JavaDoc
124   {
125     logger.entry("createBrowser", queue, messageSelector);
126
127     if (! (queue instanceof JmsQueue)) throw new
128       InvalidDestinationException JavaDoc("Queue must be from this implementation");
129     if (closed) throw new
130       IllegalStateException JavaDoc("Operation attempted on a closed object");
131     
132     JmsQueueReceiver r = null;
133     r = new JmsQueueReceiver(this, messageSelector, (JmsQueue) queue, false);
134     QueueBrowser JavaDoc b = new JmsQueueBrowser(r);
135     
136     logger.exit("createBrowser", b);
137     return b;
138   }
139
140
141   public QueueSender JavaDoc createSender(Queue JavaDoc queue)
142     throws JMSException JavaDoc
143   {
144     logger.entry("createSender", queue);
145     
146     if (! (queue instanceof JmsQueue)) throw new
147         InvalidDestinationException JavaDoc("Queue must be from this implementation");
148     if (closed) throw new
149         IllegalStateException JavaDoc("Operation attempted on a closed object");
150
151     QueueSender JavaDoc qs = new JmsQueueSender(this, (JmsQueue) queue);
152     
153     logger.exit("createSender", qs);
154     return qs;
155   }
156
157
158   /**
159    * Not Implemented.
160    */

161   public TemporaryQueue JavaDoc createTemporaryQueue() throws JMSException JavaDoc
162   {
163     throw new JMSException JavaDoc("Operation not implemented");
164   }
165   
166   ////////////////////////////// Misc stuff ////////////////////////////////
167

168   private static Logger logger =
169     LoggerFactory.getLogger(JmsTopicSession.class, Resources.getBundle());
170
171   ///////////////////////////////////////////////////////////////////////////
172

173 }
174
175
176
Popular Tags