| /* |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| */ |
| package org.apache.qpid.jms; |
| |
| import javax.jms.Destination; |
| import javax.jms.JMSException; |
| import javax.jms.MessageConsumer; |
| import javax.jms.MessageProducer; |
| import javax.jms.QueueSession; |
| import javax.jms.TopicSession; |
| |
| |
| public interface Session extends TopicSession, QueueSession |
| { |
| /** |
| * Indicates that no client acknowledgements are required. Broker assumes that once it has delivered |
| * a message packet successfully it is acknowledged. |
| */ |
| static final int NO_ACKNOWLEDGE = 257; |
| |
| /** |
| * Pre acknowledge means that an ack is sent per message but sent before user code has processed |
| * the message (i.e. before the onMessage() call or the receive() method has returned). |
| */ |
| static final int PRE_ACKNOWLEDGE = 258; |
| |
| MessageConsumer createConsumer(Destination destination, |
| int prefetch, |
| boolean noLocal, |
| boolean exclusive, |
| String selector) throws JMSException; |
| |
| MessageConsumer createConsumer(Destination destination, |
| int prefetchHigh, |
| int prefetchLow, |
| boolean noLocal, |
| boolean exclusive, |
| String selector) throws JMSException; |
| |
| /** |
| * @return the prefetch value used by default for consumers created on this session. |
| */ |
| int getDefaultPrefetch(); |
| |
| /** |
| * @return the High water prefetch value used by default for consumers created on this session. |
| */ |
| int getDefaultPrefetchHigh(); |
| |
| /** |
| * @return the Low water prefetch value used by default for consumers created on this session. |
| */ |
| int getDefaultPrefetchLow(); |
| |
| /** |
| * Create a producer |
| * @param destination |
| * @param mandatory the value of the mandatory flag used by default on the producer |
| * @param immediate the value of the immediate flag used by default on the producer |
| * @return |
| * @throws JMSException |
| */ |
| MessageProducer createProducer(Destination destination, boolean mandatory, boolean immediate) |
| throws JMSException; |
| |
| /** |
| * Create a producer |
| * @param destination |
| * @param immediate the value of the immediate flag used by default on the producer |
| * @return |
| * @throws JMSException |
| */ |
| MessageProducer createProducer(Destination destination, boolean immediate) |
| throws JMSException; |
| |
| String getTemporaryTopicExchangeName(); |
| |
| String getDefaultQueueExchangeName(); |
| |
| String getDefaultTopicExchangeName(); |
| |
| String getTemporaryQueueExchangeName(); |
| |
| ListMessage createListMessage() throws JMSException; |
| |
| /** |
| * Deletes the queue identified by the given name. If the queue does not exist |
| * a JMSException with error code 404 will be thrown and this Session will be closed. |
| * |
| * @param queueName name of the queue |
| * |
| * @throws JMSException |
| */ |
| void deleteQueue(String queueName) throws JMSException; |
| |
| /** |
| * Deletes the exchange identified by the given name. If the exchange does not exist |
| * a JMSException with error code 404 will be thrown and this Session will be closed. |
| * |
| * @param exchangeName name of the exchange |
| * |
| * @throws JMSException |
| */ |
| void deleteExchange(String exchangeName) throws JMSException; |
| } |