
javax.jms.Destination Maven / Gradle / Ivy
Show all versions of ow2-jms-2.0-spec Show documentation
/**
* Copyright 2013 ScalAgent Distributed Technologies
*
* Licensed 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.
* ---------------------------------------------------------------------
* $Id: Destination.java 6347 2013-03-13 08:52:02Z tachker $
* ---------------------------------------------------------------------
*/
package javax.jms;
/**
* A {@code Destination} is a JMS administered object that encapsulates a
* Joram's specific address. It is created by an administrator and later used by
* JMS clients. Normally the JMS clients find administered objects by looking
* them up in a JNDI namespace.
*
* Joram MOM Model
*
* Server side, a destination is a component receiving messages from producers
* and answering to consuming requests from consumers. A destination might
* either be a “queue� or a “topic�:
*
* - Queue: each messages is read only by a single client.
* - Topic: All clients that have previously subscribed to this topic are
* notified of the corresponding message.
*
* A destination allows clients to perform operations according to their access
* rights. A client set as a READER will be able to request messages from the
* destination (either as a subscriber to a topic, or as a receiver or browser
* on a queue). A client set as a WRITER will be able to send messages to the
* destination.
*
* A destination provides methods to add and remove Interceptors, an interceptor
* is an object handling each message sent to the destination. Interceptors can
* read and also modify the messages. This enables filtering, transformation or
* content enrichment, for example adding a property into the message. Also
* Interceptors can stop the Interceptor chain by simply returning false to
* their intercept method invocation, in this case the transmission of the
* message is stopped.
*
* @see javax.jms.Queue
* @see javax.jms.Topic
*
* @version JMS 2.0
* @since JMS 1.0
*
*/
public interface Destination {
}