com.sun.messaging.jms

## Interface Connection

All Superinterfaces:
  Connection

    public interface Connection
    extends Connection

This interafce provides the following API for the MQ applications:

1. Provide API to create a MQ NO_ACKNOWLEDGE session.

2. Provide API to set the connection event listener.

3. Provide API to query broker adress and HA state.

### Method Summary

Methods
`Session` `createSession(int acknowledgeMode)` Creates a `Session` object.
`String` `getBrokerAddress()` Get the broker's address that the connection is connected (related) to.
`boolean` `isConnectedToHABroker()` Get the current connection state.
`void` `removeConsumerEventListener(Destination dest)` Remove a MQ consumer event listener from the current connection.
`void` `setConsumerEventListener(Destination dest, EventListener listener)` Set consumer event listener on a destination to the current connection.
`void` `setEventListener(EventListener listener)` Set MQ connection event listener to the current connection.

### Methods inherited from interface javax.jms.Connection

`close, createConnectionConsumer, createDurableConnectionConsumer, createSession, getClientID, getExceptionListener, getMetaData, setClientID, setExceptionListener, start, stop`

### Method Detail

#### createSession

    Session createSession(int acknowledgeMode)
                          throws JMSException

Creates a `Session` object.

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

#### setEventListener

    void setEventListener(EventListener listener)
                          throws JMSException

Set MQ connection event listener to the current connection.

Parameters:
  `listener` - EventListener
Throws:
  `JMSException`
  `JMSException`

#### setConsumerEventListener

    void setConsumerEventListener(Destination dest,
                                EventListener listener)
                                  throws JMSException

Set consumer event listener on a destination to the current connection.

Parameters:
  `dest` - the destination on which consumer event is interested
  `listener` - EventListener
Throws:
  `JMSException`
  `JMSException`
Since:
  4.5

#### removeConsumerEventListener

    void removeConsumerEventListener(Destination dest)
                                     throws JMSException

Remove a MQ consumer event listener from the current connection.

Parameters:
  `dest` - the destination on which addConsumerEventListener() was called previously
  `listener` - EventListener
Throws:
  `JMSException`
  `JMSException`
Since:
  4.5

#### getBrokerAddress

    String getBrokerAddress()

Get the broker's address that the connection is connected (related) to.

Returns:
  the broker's address that the connection is connected (related) to.

#### isConnectedToHABroker

    boolean isConnectedToHABroker()

Get the current connection state.

Returns:
  true if the connection is connected to a HA broker. false if not connected to a HA broker.