Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.rabbitmq.client
Interface Connection

All Superinterfaces:
  ShutdownNotifier

All Known Implementing Classes:
  AMQConnection

    public interface Connection

extends ShutdownNotifier

Public API: Interface to an AMQ connection. See the see the spec for details.

To connect to a broker, fill in a `ConnectionFactory` and use a `ConnectionFactory` as follows:

     ConnectionFactory factory = new ConnectionFactory();
     factory.setHost(hostName);
     factory.setPort(portNumber);
     factory.setVirtualHost(virtualHost);
     factory.setUsername(username);
     factory.setPassword(password);
     Connection conn = factory.newConnection();

     // Then open a channel:

     Channel channel = conn.createChannel();

Or, more compactly:

     ConnectionFactory factory = new ConnectionFactory();
     factory.setUri("amqp://username:password@hostName:portNumber/virtualHost");
     Connection conn = factory.newConnection();
     Channel channel = conn.createChannel()

Current implementations are thread-safe for code at the client API level, and in fact thread-safe internally except for code within RPC calls.

Method Summary
`void` | `abort()` Abort this connection and all its channels with the `AMQP.REPLY_SUCCESS` close code and message 'OK'.
`void` | `abort(int timeout)` Abort this connection and all its channels with the `AMQP.REPLY_SUCCESS` close code and message 'OK'.
`void` | `abort(int closeCode, java.lang.String closeMessage)` Abort this connection and all its channels.
`void` | `abort(int closeCode, java.lang.String closeMessage, int timeout)` Abort this connection and all its channels.
`void` | `close()` Close this connection and all its channels with the `AMQP.REPLY_SUCCESS` close code and message 'OK'.
`void` | `close(int timeout)` Close this connection and all its channels with the `AMQP.REPLY_SUCCESS` close code and message 'OK'.
`void` | `close(int closeCode, java.lang.String closeMessage)` Close this connection and all its channels.
`void` | `close(int closeCode, java.lang.String closeMessage, int timeout)` Close this connection and all its channels.
`Channel` | `createChannel()` Create a new channel, using an internally allocated channel number.
`Channel` | `createChannel(int channelNumber)` Create a new channel, using the specified channel number if possible.
`java.net.InetAddress` | `getAddress()` Retrieve the host.
`int` | `getChannelMax()` Get the negotiated maximum channel number.
`java.util.Map<java.lang.String,java.lang.Object>` | `getClientProperties()` Get a copy of the map of client properties sent to the server
`int` | `getFrameMax()` Get the negotiated maximum frame size.
`int` | `getHeartbeat()` Get the negotiated heartbeat interval.
`int` | `getPort()` Retrieve the port number.
`java.util.Map<java.lang.String,java.lang.Object>` | `getServerProperties()` Retrieve the server properties.

Methods inherited from interface com.rabbitmq.client.ShutdownNotifier
`addShutdownListener, getCloseReason, isOpen, notifyListeners, removeShutdownListener`

Method Detail

### getAddress

    java.net.InetAddress getAddress()

  Retrieve the host.

  Returns:
    the hostname of the peer we're connected to.

### getPort

    int getPort()

  Retrieve the port number.

  Returns:
    the port number of the peer we're connected to.

### getChannelMax

    int getChannelMax()

  Get the negotiated maximum channel number. Usable channel numbers range from 1 to this number, inclusive.

  Returns:
    the maximum channel number permitted for this connection.

### getFrameMax

    int getFrameMax()

  Get the negotiated maximum frame size.

  Returns:
    the maximum frame size, in octets; zero if unlimited

### getHeartbeat

    int getHeartbeat()

  Get the negotiated heartbeat interval.

  Returns:
    the heartbeat interval, in seconds; zero if none

### getClientProperties

    java.util.Map<java.lang.String,java.lang.Object> getClientProperties()

  Get a copy of the map of client properties sent to the server

  Returns:
    a copy of the map of client properties

### getServerProperties

    java.util.Map<java.lang.String,java.lang.Object> getServerProperties()

  Retrieve the server properties.

  Returns:
    a map of the server properties. This typically includes the product name and version of the server.

### createChannel

    Channel createChannel()
                          throws java.io.IOException

  Create a new channel, using an internally allocated channel number.

  Returns:
    a new channel descriptor, or null if none is available
  Throws:
    `java.io.IOException` - if an I/O problem is encountered

### createChannel

    Channel createChannel(int channelNumber)
                          throws java.io.IOException

  Create a new channel, using the specified channel number if possible.

  Parameters:
    `channelNumber` - the channel number to allocate
  Returns:
    a new channel descriptor, or null if this channel number is already in use
  Throws:
    `java.io.IOException` - if an I/O problem is encountered

### close

    void close()
               throws java.io.IOException

  Close this connection and all its channels with the `AMQP.REPLY_SUCCESS` close code and message 'OK'. Waits for all the close operations to complete.

  Throws:
    `java.io.IOException` - if an I/O problem is encountered

### close

    void close(int closeCode,
               java.lang.String closeMessage)
               throws java.io.IOException

  Close this connection and all its channels. Waits for all the close operations to complete.

  Parameters:
    `closeCode` - the close code (See under "Reply Codes" in the AMQP specification)
    `closeMessage` - a message indicating the reason for closing the connection
  Throws:
    `java.io.IOException` - if an I/O problem is encountered

### close

    void close(int timeout)
               throws java.io.IOException

  Close this connection and all its channels with the `AMQP.REPLY_SUCCESS` close code and message 'OK'. This method behaves in a similar way as `close()`, with the only difference that it waits with a provided timeout for all the close operations to complete. When timeout is reached the socket is forced to close.

  Parameters:
    `timeout` - timeout (in milliseconds) for completing all the close-related operations, use -1 for infinity
  Throws:
    `java.io.IOException` - if an I/O problem is encountered

### close

    void close(int closeCode,
               java.lang.String closeMessage,
               int timeout)
               throws java.io.IOException

  Close this connection and all its channels. Waits with the given timeout for all the close operations to complete. When timeout is reached the socket is forced to close.

  Parameters:
    `closeCode` - the close code (See under "Reply Codes" in the AMQP specification)
    `closeMessage` - a message indicating the reason for closing the connection
    `timeout` - timeout (in milliseconds) for completing all the close-related operations, use -1 for infinity
  Throws:
    `java.io.IOException` - if an I/O problem is encountered

### abort

    void abort()

  Abort this connection and all its channels with the `AMQP.REPLY_SUCCESS` close code and message 'OK'. Forces the connection to close. Any encountered exceptions in the close operations are silently discarded.

### abort

    void abort(int closeCode,
               java.lang.String closeMessage)

  Abort this connection and all its channels. Forces the connection to close and waits for all the close operations to complete. Any encountered exceptions in the close operations are silently discarded.

  Parameters:
    `closeCode` - the close code (See under "Reply Codes" in the AMQP specification)
    `closeMessage` - a message indicating the reason for closing the connection

### abort

    void abort(int timeout)

  Abort this connection and all its channels with the `AMQP.REPLY_SUCCESS` close code and message 'OK'. This method behaves in a similar way as `abort()`, with the only difference that it waits with a provided timeout for all the close operations to complete. When timeout is reached the socket is forced to close.

  Parameters:
    `timeout` - timeout (in milliseconds) for completing all the close-related operations, use -1 for infinity

### abort

    void abort(int closeCode,
               java.lang.String closeMessage,
               int timeout)

  Abort this connection and all its channels. Forces the connection to close and waits with the given timeout for all the close operations to complete. When timeout is reached the socket is forced to close. Any encountered exceptions in the close operations are silently discarded.

  Parameters:
    `closeCode` - the close code (See under "Reply Codes" in the AMQP specification)
    `closeMessage` - a message indicating the reason for closing the connection
    `timeout` - timeout (in milliseconds) for completing all the close-related operations, use -1 for infinity

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD