Message Queue, v4.5.1 API Specification

## javax.jms
Interface TopicConnection

All Superinterfaces:
  Connection

All Known Subinterfaces:
  TopicConnection, XATopicConnection

    public interface TopicConnection

extends Connection

A `TopicConnection` object is an active connection to a publish/subscribe JMS provider. A client uses a `TopicConnection` object to create one or more `TopicSession` objects for producing and consuming messages.

A `TopicConnection` can be used to create a `TopicSession`, from which specialized topic-related objects can be created. A more general, and recommended approach is to use the `Connection` object.

The `TopicConnection` object should be used to support existing code.

See Also:
  `Connection`, `ConnectionFactory`, `TopicConnectionFactory`

Method Summary
`ConnectionConsumer` `createConnectionConsumer(Topic topic, String messageSelector, ServerSessionPool sessionPool, int maxMessages)` Creates a connection consumer for this connection (optional operation).
`ConnectionConsumer` `createDurableConnectionConsumer(Topic topic, String subscriptionName, String messageSelector, ServerSessionPool sessionPool, int maxMessages)` Create a durable connection consumer for this connection (optional operation).
`TopicSession` `createTopicSession(boolean transacted, int acknowledgeMode)` Creates a `TopicSession` object.

Methods inherited from interface javax.jms.Connection
`close, createConnectionConsumer, createSession, getClientID, getExceptionListener, getMetaData, setClientID, setExceptionListener, start, stop`

Method Detail

### createTopicSession

    TopicSession createTopicSession(boolean transacted,
                                    int acknowledgeMode)
                                    throws JMSException

  Creates a `TopicSession` object.

  Parameters:
    `transacted` - indicates whether the session is transacted
    `acknowledgeMode` - indicates whether the consumer or the client will acknowledge any messages it receives; ignored if the session is transacted. Legal values are `Session.AUTO_ACKNOWLEDGE`, `Session.CLIENT_ACKNOWLEDGE`, and `Session.DUPS_OK_ACKNOWLEDGE`.
  Returns:
    a newly created topic session
  Throws:
    `JMSException` - if the `TopicConnection` object fails to create a session due to some internal error or lack of support for the specific transaction and acknowledgement mode.
  See Also:
    `Session.AUTO_ACKNOWLEDGE`, `Session.CLIENT_ACKNOWLEDGE`, `Session.DUPS_OK_ACKNOWLEDGE`

### createConnectionConsumer

    ConnectionConsumer createConnectionConsumer(Topic topic,
                                                String messageSelector,
                                                ServerSessionPool sessionPool,
                                                int maxMessages)
                                                throws JMSException

  Creates a connection consumer for this connection (optional operation). This is an expert facility not used by regular JMS clients.

  Parameters:
    `topic` - the topic to access
    `messageSelector` - only messages with properties matching the message selector expression are delivered. A value of null or an empty string indicates that there is no message selector for the message consumer.
    `sessionPool` - the server session pool to associate with this connection consumer
    `maxMessages` - the maximum number of messages that can be assigned to a server session at one time
  Returns:
    the connection consumer
  Throws:
    `JMSException` - if the `TopicConnection` object fails to create a connection consumer due to some internal error or invalid arguments for `sessionPool` and `messageSelector`.
    `InvalidDestinationException` - if an invalid topic is specified.
    `InvalidSelectorException` - if the message selector is invalid.
  See Also:
    `ConnectionConsumer`

### createDurableConnectionConsumer

    ConnectionConsumer createDurableConnectionConsumer(Topic topic,
                                                       String subscriptionName,
                                                       String messageSelector,
                                                       ServerSessionPool sessionPool,
                                                       int maxMessages)
                                                       throws JMSException

  Create a durable connection consumer for this connection (optional operation). This is an expert facility not used by regular JMS clients.

  Specified by:
    `createDurableConnectionConsumer` in interface `Connection`
  Parameters:
    `topic` - the topic to access
    `subscriptionName` - durable subscription name
    `messageSelector` - only messages with properties matching the message selector expression are delivered. A value of null or an empty string indicates that there is no message selector for the message consumer.
    `sessionPool` - the server session pool to associate with this durable connection consumer
    `maxMessages` - the maximum number of messages that can be assigned to a server session at one time
  Returns:
    the durable connection consumer
  Throws:
    `JMSException` - if the `TopicConnection` object fails to create a connection consumer due to some internal error or invalid arguments for `sessionPool` and `messageSelector`.
    `InvalidDestinationException` - if an invalid topic is specified.
    `InvalidSelectorException` - if the message selector is invalid.
  See Also:
    `ConnectionConsumer`

Message Queue, v4.5.1 API Specification

Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.