Interface ClientSession

  • All Superinterfaces:
    AutoCloseable, XAResource

    public interface ClientSession
    extends XAResource, AutoCloseable
    A ClientSession is a single-threaded parent object required for producing and consuming messages.

    Only a single thread may be used to operate on the session and its child producers and consumers, other than close() methods which may be called from another thread. Setting a MessageHandler on a consumer renders the session, and all its child producers and consumers, to be dedicated to the session-wide handler delivery thread of control.

    • Field Detail

      • JMS_SESSION_IDENTIFIER_PROPERTY

        static final String JMS_SESSION_IDENTIFIER_PROPERTY
        This is used to identify a ClientSession as used by the JMS Layer The JMS Layer will add this through Meta-data, so the server or management layers can identify session created over core API purely or through the JMS Layer
        See Also:
        Constant Field Values
      • JMS_SESSION_CLIENT_ID_PROPERTY

        static final String JMS_SESSION_CLIENT_ID_PROPERTY
        Just like JMS_SESSION_IDENTIFIER_PROPERTY this is used to identify the ClientID over JMS Session. However this is only used when the JMS Session.clientID is set (which is optional). With this property management tools and the server can identify the jms-client-id used over JMS
        See Also:
        Constant Field Values
    • Method Detail

      • start

        ClientSession start()
                     throws ActiveMQException
        Starts the session. The session must be started before ClientConsumers created by the session can consume messages from the queue.
        Throws:
        ActiveMQException - if an exception occurs while starting the session
      • stop

        void stop()
           throws ActiveMQException
        Stops the session. ClientConsumers created by the session can not consume messages when the session is stopped.
        Throws:
        ActiveMQException - if an exception occurs while stopping the session
      • isClosed

        boolean isClosed()
        Returns whether the session is closed or not.
        Returns:
        true if the session is closed, false else
      • addFailureListener

        void addFailureListener​(SessionFailureListener listener)
        Adds a FailureListener to the session which is notified if a failure occurs on the session.
        Parameters:
        listener - the listener to add
      • removeFailureListener

        boolean removeFailureListener​(SessionFailureListener listener)
        Removes a FailureListener to the session.
        Parameters:
        listener - the listener to remove
        Returns:
        true if the listener was removed, false else
      • addFailoverListener

        void addFailoverListener​(FailoverEventListener listener)
        Adds a FailoverEventListener to the session which is notified if a failover event occurs on the session.
        Parameters:
        listener - the listener to add
      • removeFailoverListener

        boolean removeFailoverListener​(FailoverEventListener listener)
        Removes a FailoverEventListener to the session.
        Parameters:
        listener - the listener to remove
        Returns:
        true if the listener was removed, false else
      • getVersion

        int getVersion()
        Returns the server's incrementingVersion.
        Returns:
        the server's incrementingVersion
      • createQueue

        void createQueue​(QueueConfiguration queueConfiguration)
                  throws ActiveMQException
        This method creates a queue based on the QueueConfiguration input. See QueueConfiguration for more details on configuration specifics.

        Some static defaults will be enforced for properties which are not set on the QueueConfiguration:

        Some dynamic defaults will be enforced via address-settings for the corresponding unset properties:

        • exclusive
        • groupRebalance
        • groupBuckets
        • groupFirstKey
        • lastValue
        • lastValueKey
        • nonDestructive
        • consumersBeforeDispatch
        • delayBeforeDispatch
        • ringSize
        • routingType
        • autoCreateAddress
        • autoDelete (only set if queue was auto-created)
        • autoDeleteDelay
        • autoDeleteMessageCount

        Parameters:
        queueConfiguration - the configuration to use when creating the queue
        Throws:
        ActiveMQException
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         SimpleString queueName,
                         boolean durable)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        durable - whether the queue is durable or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createSharedQueue

        @Deprecated
        void createSharedQueue​(SimpleString address,
                               SimpleString queueName,
                               boolean durable)
                        throws ActiveMQException
        Deprecated.
        Creates a transient queue. A queue that will exist as long as there are consumers. When the last consumer is closed the queue will be deleted

        Notice: you will get an exception if the address or the filter doesn't match to an already existent queue

        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        durable - if the queue is durable
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createSharedQueue

        @Deprecated
        void createSharedQueue​(SimpleString address,
                               SimpleString queueName,
                               SimpleString filter,
                               boolean durable)
                        throws ActiveMQException
        Deprecated.
        Creates a transient queue. A queue that will exist as long as there are consumers. When the last consumer is closed the queue will be deleted

        Notice: you will get an exception if the address or the filter doesn't match to an already existent queue

        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        filter - whether the queue is durable or not
        durable - if the queue is durable
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(String address,
                         String queueName,
                         boolean durable)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        durable - whether the queue is durable or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(String address,
                         String queueName)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue non-durable queue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         SimpleString queueName)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue non-durable queue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         SimpleString queueName,
                         SimpleString filter,
                         boolean durable)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(String address,
                         String queueName,
                         String filter,
                         boolean durable)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporaryqueue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        durable - whether the queue is durable or not
        filter - only messages which match this filter will be put in the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         SimpleString queueName,
                         SimpleString filter,
                         boolean durable,
                         boolean autoCreated)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        autoCreated - whether to mark this queue as autoCreated or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(String address,
                         String queueName,
                         String filter,
                         boolean durable,
                         boolean autoCreated)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporaryqueue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        autoCreated - whether to mark this queue as autoCreated or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createTemporaryQueue

        @Deprecated
        void createTemporaryQueue​(SimpleString address,
                                  SimpleString queueName)
                           throws ActiveMQException
        Deprecated.
        Creates a temporary queue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createTemporaryQueue

        @Deprecated
        void createTemporaryQueue​(String address,
                                  String queueName)
                           throws ActiveMQException
        Deprecated.
        Creates a temporary queue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createTemporaryQueue

        @Deprecated
        void createTemporaryQueue​(SimpleString address,
                                  SimpleString queueName,
                                  SimpleString filter)
                           throws ActiveMQException
        Deprecated.
        Creates a temporary queue with a filter.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createTemporaryQueue

        @Deprecated
        void createTemporaryQueue​(String address,
                                  String queueName,
                                  String filter)
                           throws ActiveMQException
        Deprecated.
        Creates a temporary queue with a filter.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         RoutingType routingType,
                         SimpleString queueName,
                         boolean durable)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        durable - whether the queue is durable or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createSharedQueue

        @Deprecated
        void createSharedQueue​(SimpleString address,
                               RoutingType routingType,
                               SimpleString queueName,
                               boolean durable)
                        throws ActiveMQException
        Deprecated.
        Creates a transient queue. A queue that will exist as long as there are consumers. When the last consumer is closed the queue will be deleted

        Notice: you will get an exception if the address or the filter doesn't match to an already existent queue

        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        durable - if the queue is durable
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createSharedQueue

        @Deprecated
        void createSharedQueue​(SimpleString address,
                               RoutingType routingType,
                               SimpleString queueName,
                               SimpleString filter,
                               boolean durable)
                        throws ActiveMQException
        Deprecated.
        Creates a transient queue. A queue that will exist as long as there are consumers. When the last consumer is closed the queue will be deleted

        Notice: you will get an exception if the address or the filter doesn't match to an already existent queue

        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - whether the queue is durable or not
        durable - if the queue is durable
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createSharedQueue

        @Deprecated
        void createSharedQueue​(SimpleString address,
                               RoutingType routingType,
                               SimpleString queueName,
                               SimpleString filter,
                               boolean durable,
                               Integer maxConsumers,
                               Boolean purgeOnNoConsumers,
                               Boolean exclusive,
                               Boolean lastValue)
                        throws ActiveMQException
        Deprecated.
        Creates Shared queue. A queue that will exist as long as there are consumers or is durable.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - whether the queue is durable or not
        durable - if the queue is durable
        maxConsumers - how many concurrent consumers will be allowed on this queue
        purgeOnNoConsumers - whether to delete the contents of the queue when the last consumer disconnects
        exclusive - if the queue is exclusive queue
        lastValue - if the queue is last value queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createSharedQueue

        @Deprecated
        void createSharedQueue​(SimpleString address,
                               SimpleString queueName,
                               QueueAttributes queueAttributes)
                        throws ActiveMQException
        Deprecated.
        Creates Shared queue. A queue that will exist as long as there are consumers or is durable.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        queueAttributes - attributes for the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(String address,
                         RoutingType routingType,
                         String queueName,
                         boolean durable)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        durable - whether the queue is durable or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(String address,
                         RoutingType routingType,
                         String queueName)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue non-durable queue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         RoutingType routingType,
                         SimpleString queueName)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue non-durable queue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         RoutingType routingType,
                         SimpleString queueName,
                         SimpleString filter,
                         boolean durable)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(String address,
                         RoutingType routingType,
                         String queueName,
                         String filter,
                         boolean durable)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporaryqueue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         RoutingType routingType,
                         SimpleString queueName,
                         SimpleString filter,
                         boolean durable,
                         boolean autoCreated)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        autoCreated - whether to mark this queue as autoCreated or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         RoutingType routingType,
                         SimpleString queueName,
                         SimpleString filter,
                         boolean durable,
                         boolean autoCreated,
                         int maxConsumers,
                         boolean purgeOnNoConsumers)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        autoCreated - whether to mark this queue as autoCreated or not
        maxConsumers - how many concurrent consumers will be allowed on this queue
        purgeOnNoConsumers - whether to delete the contents of the queue when the last consumer disconnects
        Throws:
        ActiveMQException
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         RoutingType routingType,
                         SimpleString queueName,
                         SimpleString filter,
                         boolean durable,
                         boolean autoCreated,
                         int maxConsumers,
                         boolean purgeOnNoConsumers,
                         Boolean exclusive,
                         Boolean lastValue)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        autoCreated - whether to mark this queue as autoCreated or not
        maxConsumers - how many concurrent consumers will be allowed on this queue
        purgeOnNoConsumers - whether to delete the contents of the queue when the last consumer disconnects
        exclusive - whether the queue should be exclusive
        lastValue - whether the queue should be lastValue
        Throws:
        ActiveMQException
      • createQueue

        @Deprecated
        void createQueue​(SimpleString address,
                         SimpleString queueName,
                         boolean autoCreated,
                         QueueAttributes queueAttributes)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporary queue.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        autoCreated - whether to mark this queue as autoCreated or not
        queueAttributes - attributes for the queue
        Throws:
        ActiveMQException
      • createQueue

        @Deprecated
        void createQueue​(String address,
                         RoutingType routingType,
                         String queueName,
                         String filter,
                         boolean durable,
                         boolean autoCreated)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporaryqueue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        autoCreated - whether to mark this queue as autoCreated or not
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createQueue

        @Deprecated
        void createQueue​(String address,
                         RoutingType routingType,
                         String queueName,
                         String filter,
                         boolean durable,
                         boolean autoCreated,
                         int maxConsumers,
                         boolean purgeOnNoConsumers)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporaryqueue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        autoCreated - whether to mark this queue as autoCreated or not
        maxConsumers - how many concurrent consumers will be allowed on this queue
        purgeOnNoConsumers - whether to delete the contents of the queue when the last consumer disconnects
        Throws:
        ActiveMQException
      • createQueue

        @Deprecated
        void createQueue​(String address,
                         RoutingType routingType,
                         String queueName,
                         String filter,
                         boolean durable,
                         boolean autoCreated,
                         int maxConsumers,
                         boolean purgeOnNoConsumers,
                         Boolean exclusive,
                         Boolean lastValue)
                  throws ActiveMQException
        Deprecated.
        Creates a non-temporaryqueue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        durable - whether the queue is durable or not
        autoCreated - whether to mark this queue as autoCreated or not
        maxConsumers - how many concurrent consumers will be allowed on this queue
        purgeOnNoConsumers - whether to delete the contents of the queue when the last consumer disconnects
        exclusive - whether the queue should be exclusive
        lastValue - whether the queue should be lastValue
        Throws:
        ActiveMQException
      • createTemporaryQueue

        @Deprecated
        void createTemporaryQueue​(SimpleString address,
                                  RoutingType routingType,
                                  SimpleString queueName)
                           throws ActiveMQException
        Deprecated.
        Creates a temporary queue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createTemporaryQueue

        @Deprecated
        void createTemporaryQueue​(String address,
                                  RoutingType routingType,
                                  String queueName)
                           throws ActiveMQException
        Deprecated.
        Creates a temporary queue.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createTemporaryQueue

        @Deprecated
        void createTemporaryQueue​(SimpleString address,
                                  RoutingType routingType,
                                  SimpleString queueName,
                                  SimpleString filter,
                                  int maxConsumers,
                                  boolean purgeOnNoConsumers,
                                  Boolean exclusive,
                                  Boolean lastValue)
                           throws ActiveMQException
        Deprecated.
        Creates a temporary queue with a filter.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        maxConsumers - how many concurrent consumers will be allowed on this queue
        purgeOnNoConsumers - whether to delete the contents of the queue when the last consumer disconnects
        exclusive - if the queue is exclusive queue
        lastValue - if the queue is last value queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createTemporaryQueue

        @Deprecated
        void createTemporaryQueue​(SimpleString address,
                                  SimpleString queueName,
                                  QueueAttributes queueAttributes)
                           throws ActiveMQException
        Deprecated.
        Creates a temporary queue with a filter.
        Parameters:
        address - the queue will be bound to this address
        queueName - the name of the queue
        queueAttributes - attributes for the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createTemporaryQueue

        @Deprecated
        void createTemporaryQueue​(SimpleString address,
                                  RoutingType routingType,
                                  SimpleString queueName,
                                  SimpleString filter)
                           throws ActiveMQException
        Deprecated.
        Creates a temporary queue with a filter.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • createTemporaryQueue

        @Deprecated
        void createTemporaryQueue​(String address,
                                  RoutingType routingType,
                                  String queueName,
                                  String filter)
                           throws ActiveMQException
        Deprecated.
        Creates a temporary queue with a filter.
        Parameters:
        address - the queue will be bound to this address
        routingType - the routing type for this queue, MULTICAST or ANYCAST
        queueName - the name of the queue
        filter - only messages which match this filter will be put in the queue
        Throws:
        ActiveMQException - in an exception occurs while creating the queue
      • deleteQueue

        void deleteQueue​(SimpleString queueName)
                  throws ActiveMQException
        Deletes the queue.
        Parameters:
        queueName - the name of the queue to delete
        Throws:
        ActiveMQException - if there is no queue for the given name or if the queue has consumers
      • deleteQueue

        void deleteQueue​(String queueName)
                  throws ActiveMQException
        Deletes the queue.
        Parameters:
        queueName - the name of the queue to delete
        Throws:
        ActiveMQException - if there is no queue for the given name or if the queue has consumers
      • createConsumer

        ClientConsumer createConsumer​(SimpleString queueName)
                               throws ActiveMQException
        Creates a ClientConsumer to consume message from the queue with the given name.
        Parameters:
        queueName - name of the queue to consume messages from
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(String queueName)
                               throws ActiveMQException
        Creates a ClientConsumer to consume messages from the queue with the given name.
        Parameters:
        queueName - name of the queue to consume messages from
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(SimpleString queueName,
                                      SimpleString filter)
                               throws ActiveMQException
        Creates a ClientConsumer to consume messages matching the filter from the queue with the given name.
        Parameters:
        queueName - name of the queue to consume messages from
        filter - only messages which match this filter will be consumed
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(String queueName,
                                      String filter)
                               throws ActiveMQException
        Creates a ClientConsumer to consume messages matching the filter from the queue with the given name.
        Parameters:
        queueName - name of the queue to consume messages from
        filter - only messages which match this filter will be consumed
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(SimpleString queueName,
                                      boolean browseOnly)
                               throws ActiveMQException
        Creates a ClientConsumer to consume or browse messages from the queue with the given name.

        If browseOnly is true, the ClientConsumer will receive the messages from the queue but they will not be consumed (the messages will remain in the queue). Note that paged messages will not be in the queue, and will therefore not be visible if browseOnly is true.

        If browseOnly is false, the ClientConsumer will behave like consume the messages from the queue and the messages will effectively be removed from the queue.

        Parameters:
        queueName - name of the queue to consume messages from
        browseOnly - whether the ClientConsumer will only browse the queue or consume messages.
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(String queueName,
                                      boolean browseOnly)
                               throws ActiveMQException
        Creates a ClientConsumer to consume or browse messages from the queue with the given name.

        If browseOnly is true, the ClientConsumer will receive the messages from the queue but they will not be consumed (the messages will remain in the queue). Note that paged messages will not be in the queue, and will therefore not be visible if browseOnly is true.

        If browseOnly is false, the ClientConsumer will behave like consume the messages from the queue and the messages will effectively be removed from the queue.

        Parameters:
        queueName - name of the queue to consume messages from
        browseOnly - whether the ClientConsumer will only browse the queue or consume messages.
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(String queueName,
                                      String filter,
                                      boolean browseOnly)
                               throws ActiveMQException
        Creates a ClientConsumer to consume or browse messages matching the filter from the queue with the given name.

        If browseOnly is true, the ClientConsumer will receive the messages from the queue but they will not be consumed (the messages will remain in the queue). Note that paged messages will not be in the queue, and will therefore not be visible if browseOnly is true.

        If browseOnly is false, the ClientConsumer will behave like consume the messages from the queue and the messages will effectively be removed from the queue.

        Parameters:
        queueName - name of the queue to consume messages from
        filter - only messages which match this filter will be consumed
        browseOnly - whether the ClientConsumer will only browse the queue or consume messages.
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(SimpleString queueName,
                                      SimpleString filter,
                                      boolean browseOnly)
                               throws ActiveMQException
        Creates a ClientConsumer to consume or browse messages matching the filter from the queue with the given name.

        If browseOnly is true, the ClientConsumer will receive the messages from the queue but they will not be consumed (the messages will remain in the queue). Note that paged messages will not be in the queue, and will therefore not be visible if browseOnly is true.

        If browseOnly is false, the ClientConsumer will behave like consume the messages from the queue and the messages will effectively be removed from the queue.

        Parameters:
        queueName - name of the queue to consume messages from
        filter - only messages which match this filter will be consumed
        browseOnly - whether the ClientConsumer will only browse the queue or consume messages.
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(SimpleString queueName,
                                      SimpleString filter,
                                      int priority,
                                      boolean browseOnly)
                               throws ActiveMQException
        Creates a ClientConsumer to consume or browse messages matching the filter from the queue with the given name.

        If browseOnly is true, the ClientConsumer will receive the messages from the queue but they will not be consumed (the messages will remain in the queue). Note that paged messages will not be in the queue, and will therefore not be visible if browseOnly is true.

        If browseOnly is false, the ClientConsumer will behave like consume the messages from the queue and the messages will effectively be removed from the queue.

        Parameters:
        queueName - name of the queue to consume messages from
        filter - only messages which match this filter will be consumed
        priority - the consumer priority
        browseOnly - whether the ClientConsumer will only browse the queue or consume messages.
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(SimpleString queueName,
                                      SimpleString filter,
                                      int windowSize,
                                      int maxRate,
                                      boolean browseOnly)
                               throws ActiveMQException
        Creates a ClientConsumer to consume or browse messages matching the filter from the queue with the given name.

        If browseOnly is true, the ClientConsumer will receive the messages from the queue but they will not be consumed (the messages will remain in the queue). Note that paged messages will not be in the queue, and will therefore not be visible if browseOnly is true.

        If browseOnly is false, the ClientConsumer will behave like consume the messages from the queue and the messages will effectively be removed from the queue.

        Parameters:
        queueName - name of the queue to consume messages from
        filter - only messages which match this filter will be consumed
        windowSize - the consumer window size
        maxRate - the maximum rate to consume messages
        browseOnly - whether the ClientConsumer will only browse the queue or consume messages.
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(SimpleString queueName,
                                      SimpleString filter,
                                      int priority,
                                      int windowSize,
                                      int maxRate,
                                      boolean browseOnly)
                               throws ActiveMQException
        Creates a ClientConsumer to consume or browse messages matching the filter from the queue with the given name.

        If browseOnly is true, the ClientConsumer will receive the messages from the queue but they will not be consumed (the messages will remain in the queue). Note that paged messages will not be in the queue, and will therefore not be visible if browseOnly is true.

        If browseOnly is false, the ClientConsumer will behave like consume the messages from the queue and the messages will effectively be removed from the queue.

        Parameters:
        queueName - name of the queue to consume messages from
        filter - only messages which match this filter will be consumed
        priority - the consumer priority
        windowSize - the consumer window size
        maxRate - the maximum rate to consume messages
        browseOnly - whether the ClientConsumer will only browse the queue or consume messages.
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createConsumer

        ClientConsumer createConsumer​(String queueName,
                                      String filter,
                                      int windowSize,
                                      int maxRate,
                                      boolean browseOnly)
                               throws ActiveMQException
        Creates a ClientConsumer to consume or browse messages matching the filter from the queue with the given name.

        If browseOnly is true, the ClientConsumer will receive the messages from the queue but they will not be consumed (the messages will remain in the queue). Note that paged messages will not be in the queue, and will therefore not be visible if browseOnly is true.

        If browseOnly is false, the ClientConsumer will behave like consume the messages from the queue and the messages will effectively be removed from the queue.

        Parameters:
        queueName - name of the queue to consume messages from
        filter - only messages which match this filter will be consumed
        windowSize - the consumer window size
        maxRate - the maximum rate to consume messages
        browseOnly - whether the ClientConsumer will only browse the queue or consume messages.
        Returns:
        a ClientConsumer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientConsumer
      • createProducer

        ClientProducer createProducer​(SimpleString address)
                               throws ActiveMQException
        Creates a producer which sends messages to the given address
        Parameters:
        address - the address to send messages to
        Returns:
        a ClientProducer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientProducer
      • createProducer

        ClientProducer createProducer​(String address)
                               throws ActiveMQException
        Creates a producer which sends messages to the given address
        Parameters:
        address - the address to send messages to
        Returns:
        a ClientProducer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientProducer
      • createProducer

        ClientProducer createProducer​(SimpleString address,
                                      int rate)
                               throws ActiveMQException
        Creates a producer which sends messages to the given address
        Parameters:
        address - the address to send messages to
        rate - the producer rate
        Returns:
        a ClientProducer
        Throws:
        ActiveMQException - if an exception occurs while creating the ClientProducer
      • createMessage

        ClientMessage createMessage​(boolean durable)
        Creates a ClientMessage.
        Parameters:
        durable - whether the created message is durable or not
        Returns:
        a ClientMessage
      • createMessage

        ClientMessage createMessage​(byte type,
                                    boolean durable)
        Creates a ClientMessage.
        Parameters:
        type - type of the message
        durable - whether the created message is durable or not
        Returns:
        a ClientMessage
      • createMessage

        ClientMessage createMessage​(byte type,
                                    boolean durable,
                                    long expiration,
                                    long timestamp,
                                    byte priority)
        Creates a ClientMessage.
        Parameters:
        type - type of the message
        durable - whether the created message is durable or not
        expiration - the message expiration
        timestamp - the message timestamp
        priority - the message priority (between 0 and 9 inclusive)
        Returns:
        a ClientMessage
      • addressQuery

        ClientSession.AddressQuery addressQuery​(SimpleString address)
                                         throws ActiveMQException
        Queries information on a binding.
        Parameters:
        address - the address of the biding to query
        Returns:
        an AddressQuery containing information on the binding attached to the given address
        Throws:
        ActiveMQException - if an exception occurs while querying the binding
      • getXAResource

        XAResource getXAResource()
        Returns the XAResource associated to the session.
        Returns:
        the XAResource associated to the session
      • isXA

        boolean isXA()
        Return true if the session supports XA, false else.
        Returns:
        true if the session supports XA, false else.
      • commit

        void commit()
             throws ActiveMQException
        Commits the current transaction, blocking.
        Throws:
        ActiveMQException - if an exception occurs while committing the transaction
      • commit

        void commit​(boolean block)
             throws ActiveMQException
        Commits the current transaction.
        Parameters:
        block - if the commit will be blocking or not.
        Throws:
        ActiveMQException - if an exception occurs while committing the transaction
      • rollback

        void rollback()
               throws ActiveMQException
        Rolls back the current transaction.
        Throws:
        ActiveMQException - if an exception occurs while rolling back the transaction
      • rollback

        void rollback​(boolean considerLastMessageAsDelivered)
               throws ActiveMQException
        Rolls back the current transaction.
        Parameters:
        considerLastMessageAsDelivered - the first message on deliveringMessage Buffer is considered as delivered
        Throws:
        ActiveMQException - if an exception occurs while rolling back the transaction
      • isRollbackOnly

        boolean isRollbackOnly()
        Returns true if the current transaction has been flagged to rollback, false else.
        Returns:
        true if the current transaction has been flagged to rollback, false else.
      • isAutoCommitSends

        boolean isAutoCommitSends()
        Returns whether the session will automatically commit its transaction every time a message is sent by a ClientProducer created by this session, false else
        Returns:
        true if the session automatically commit its transaction every time a message is sent, false else
      • isAutoCommitAcks

        boolean isAutoCommitAcks()
        Returns whether the session will automatically commit its transaction every time a message is acknowledged by a ClientConsumer created by this session, false else
        Returns:
        true if the session automatically commit its transaction every time a message is acknowledged, false else
      • isBlockOnAcknowledge

        boolean isBlockOnAcknowledge()
        Returns whether the ClientConsumer created by the session will block when they acknowledge a message.
        Returns:
        true if the session's ClientConsumer block when they acknowledge a message, false else
      • setSendAcknowledgementHandler

        ClientSession setSendAcknowledgementHandler​(SendAcknowledgementHandler handler)
        Sets a SendAcknowledgementHandler for this session.
        Parameters:
        handler - a SendAcknowledgementHandler
        Returns:
        this ClientSession
      • addUniqueMetaData

        void addUniqueMetaData​(String key,
                               String data)
                        throws ActiveMQException
        Attach any metadata to the session. Throws an exception if there's already a metadata available. You can use this metadata to ensure that there is no other session with the same meta-data you are passing as an argument. This is useful to simulate unique client-ids, where you may want to avoid multiple instances of your client application connected.
        Throws:
        ActiveMQException
      • getSessionFactory

        ClientSessionFactory getSessionFactory()
        Return the sessionFactory used to created this Session.
        Returns: