1
2
3
4
5
6
7
8
9
10
11 package org.mule.transport.jms;
12
13 import java.io.Serializable;
14
15 import javax.jms.BytesMessage;
16 import javax.jms.Destination;
17 import javax.jms.JMSException;
18 import javax.jms.MapMessage;
19 import javax.jms.Message;
20 import javax.jms.MessageConsumer;
21 import javax.jms.MessageListener;
22 import javax.jms.MessageProducer;
23 import javax.jms.ObjectMessage;
24 import javax.jms.Queue;
25 import javax.jms.QueueBrowser;
26 import javax.jms.QueueReceiver;
27 import javax.jms.QueueSender;
28 import javax.jms.QueueSession;
29 import javax.jms.Session;
30 import javax.jms.StreamMessage;
31 import javax.jms.TemporaryQueue;
32 import javax.jms.TemporaryTopic;
33 import javax.jms.TextMessage;
34 import javax.jms.Topic;
35 import javax.jms.TopicPublisher;
36 import javax.jms.TopicSession;
37 import javax.jms.TopicSubscriber;
38
39 import org.apache.commons.logging.Log;
40 import org.apache.commons.logging.LogFactory;
41
42 public class ReusableSessionWrapper implements QueueSession, TopicSession
43 {
44 protected transient Log logger = LogFactory.getLog(getClass());
45
46 private Session delegateSession;
47 private QueueSession queueSession;
48 private TopicSession topicSession;
49
50 ReusableSessionWrapper(Session delegateSession)
51 {
52 this.delegateSession = delegateSession;
53 if (delegateSession instanceof QueueSession)
54 {
55 this.queueSession = (QueueSession) delegateSession;
56 }
57 if (delegateSession instanceof TopicSession)
58 {
59 this.topicSession = (TopicSession) delegateSession;
60 }
61 }
62
63 @Override
64 public BytesMessage createBytesMessage() throws JMSException
65 {
66 return delegateSession.createBytesMessage();
67 }
68
69 @Override
70 public MapMessage createMapMessage() throws JMSException
71 {
72 return delegateSession.createMapMessage();
73 }
74
75 @Override
76 public Message createMessage() throws JMSException
77 {
78 return delegateSession.createMessage();
79 }
80
81 @Override
82 public ObjectMessage createObjectMessage() throws JMSException
83 {
84 return delegateSession.createObjectMessage();
85 }
86
87 @Override
88 public ObjectMessage createObjectMessage(Serializable object) throws JMSException
89 {
90 return delegateSession.createObjectMessage(object);
91 }
92
93 @Override
94 public StreamMessage createStreamMessage() throws JMSException
95 {
96 return delegateSession.createStreamMessage();
97 }
98
99 @Override
100 public TextMessage createTextMessage() throws JMSException
101 {
102 return delegateSession.createTextMessage();
103 }
104
105 @Override
106 public TextMessage createTextMessage(String text) throws JMSException
107 {
108 return delegateSession.createTextMessage(text);
109 }
110
111 @Override
112 public boolean getTransacted() throws JMSException
113 {
114 return delegateSession.getTransacted();
115 }
116
117 @Override
118 public int getAcknowledgeMode() throws JMSException
119 {
120 return delegateSession.getAcknowledgeMode();
121 }
122
123 @Override
124 public void commit() throws JMSException
125 {
126 delegateSession.commit();
127 }
128
129 @Override
130 public void rollback() throws JMSException
131 {
132 delegateSession.rollback();
133 }
134
135 @Override
136 public void close() throws JMSException
137 {
138
139 }
140
141 @Override
142 public void recover() throws JMSException
143 {
144 delegateSession.recover();
145 }
146
147 @Override
148 public MessageListener getMessageListener() throws JMSException
149 {
150 return delegateSession.getMessageListener();
151 }
152
153 @Override
154 public void setMessageListener(MessageListener listener) throws JMSException
155 {
156 delegateSession.setMessageListener(listener);
157 }
158
159 @Override
160 public void run()
161 {
162 delegateSession.run();
163 }
164
165 @Override
166 public MessageProducer createProducer(Destination destination) throws JMSException
167 {
168 return delegateSession.createProducer(destination);
169 }
170
171 @Override
172 public MessageConsumer createConsumer(Destination destination) throws JMSException
173 {
174 return delegateSession.createConsumer(destination);
175 }
176
177 @Override
178 public MessageConsumer createConsumer(Destination destination, String messageSelector) throws JMSException
179 {
180 return delegateSession.createConsumer(destination, messageSelector);
181 }
182
183 @Override
184 public MessageConsumer createConsumer(Destination destination, String messageSelector, boolean NoLocal) throws JMSException
185 {
186 return delegateSession.createConsumer(destination, messageSelector, NoLocal);
187 }
188
189 @Override
190 public Queue createQueue(String queueName) throws JMSException
191 {
192 return delegateSession.createQueue(queueName);
193 }
194
195 @Override
196 public QueueReceiver createReceiver(Queue queue) throws JMSException
197 {
198 return queueSession.createReceiver(queue);
199 }
200
201 @Override
202 public QueueReceiver createReceiver(Queue queue, String messageSelector) throws JMSException
203 {
204 return queueSession.createReceiver(queue,messageSelector);
205 }
206
207 @Override
208 public QueueSender createSender(Queue queue) throws JMSException
209 {
210 return queueSession.createSender(queue);
211 }
212
213 @Override
214 public Topic createTopic(String topicName) throws JMSException
215 {
216 return delegateSession.createTopic(topicName);
217 }
218
219
220
221 @Override
222 public TopicSubscriber createDurableSubscriber(Topic topic, String name) throws JMSException
223 {
224 return delegateSession.createDurableSubscriber(topic, name);
225 }
226
227 @Override
228 public TopicSubscriber createDurableSubscriber(Topic topic, String name, String messageSelector, boolean noLocal) throws JMSException
229 {
230 return delegateSession.createDurableSubscriber(topic, name, messageSelector, noLocal);
231 }
232
233 @Override
234 public TopicSubscriber createSubscriber(Topic topic) throws JMSException
235 {
236 return topicSession.createSubscriber(topic);
237 }
238
239 @Override
240 public TopicSubscriber createSubscriber(Topic topic, String messageSelector, boolean noLocal) throws JMSException
241 {
242 return topicSession.createSubscriber(topic, messageSelector, noLocal);
243 }
244
245 @Override
246 public TopicPublisher createPublisher(Topic topic) throws JMSException
247 {
248 return topicSession.createPublisher(topic);
249 }
250
251 @Override
252 public QueueBrowser createBrowser(Queue queue) throws JMSException
253 {
254 return delegateSession.createBrowser(queue);
255 }
256
257 @Override
258 public QueueBrowser createBrowser(Queue queue, String messageSelector) throws JMSException
259 {
260 return delegateSession.createBrowser(queue, messageSelector);
261 }
262
263 @Override
264 public TemporaryQueue createTemporaryQueue() throws JMSException
265 {
266 return delegateSession.createTemporaryQueue();
267 }
268
269 @Override
270 public TemporaryTopic createTemporaryTopic() throws JMSException
271 {
272 return delegateSession.createTemporaryTopic();
273 }
274
275 @Override
276 public void unsubscribe(String name) throws JMSException
277 {
278 delegateSession.unsubscribe(name);
279 }
280 }