1 /***
2 *
3 * Copyright 2004 Protique Ltd
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 **/
18
19 package org.codehaus.activemq.message;
20
21 import javax.jms.JMSException;
22 import javax.jms.TemporaryQueue;
23
24
25 /***
26 * A <CODE>TemporaryQueue</CODE> object is a unique <CODE>Queue</CODE> object
27 * created for the duration of a <CODE>Connection</CODE>. It is a
28 * system-defined queue that can be consumed only by the
29 * <CODE>Connection</CODE> that created it.
30 * <p/>
31 * <P>A <CODE>TemporaryQueue</CODE> object can be created at either the
32 * <CODE>Session</CODE> or <CODE>QueueSession</CODE> level. Creating it at the
33 * <CODE>Session</CODE> level allows to the <CODE>TemporaryQueue</CODE> to
34 * participate in transactions with objects from the Pub/Sub domain.
35 * If it is created at the <CODE>QueueSession</CODE>, it will only
36 * be able participate in transactions with objects from the PTP domain.
37 *
38 * @see javax.jms.Session#createTemporaryQueue()
39 * @see javax.jms.QueueSession#createTemporaryQueue()
40 */
41
42 public class ActiveMQTemporaryQueue extends ActiveMQQueue implements TemporaryQueue {
43
44 /***
45 * Default constructor for an ActiveMQTemporaryQueue Destination
46 */
47 public ActiveMQTemporaryQueue() {
48 super();
49 }
50
51 /***
52 * Construct a named ActiveMQTemporaryQueue Destination
53 *
54 * @param name
55 */
56
57 public ActiveMQTemporaryQueue(String name) {
58 super(name);
59 }
60
61 /***
62 * Deletes this temporary queue. If there are existing receivers
63 * still using it, a <CODE>JMSException</CODE> will be thrown.
64 *
65 * @throws JMSException if the JMS provider fails to delete the
66 * temporary queue due to some internal error.
67 */
68
69 public void delete() throws JMSException {
70 }
71
72 /***
73 * @return Returns the Destination type
74 */
75
76 public int getDestinationType() {
77 return ACTIVEMQ_TEMPORARY_QUEUE;
78 }
79 }