Class ConnectionOptions
- All Implemented Interfaces:
Cloneable
Connection
created from them.-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
static final long
static final long
static final long
static final int
static final NextReceiverPolicy
static final long
static final long
static final long
static final long
-
Constructor Summary
ConstructorDescriptionCreate a newConnectionOptions
instance configured with default configuration settings.ConnectionOptions
(ConnectionOptions options) Creates aConnectionOptions
instance that is a copy of the given instance. -
Method Summary
Modifier and TypeMethodDescriptionint
channelMax
(int channelMax) Configure the channel maximum value for the newConnection
created with these options.clone()
long
closeTimeout
(long closeTimeout) Configures the timeout used when awaiting a response from the remote that a request to close a resource such as aConnection
,Session
,Sender
orReceiver
h as been honored.closeTimeout
(long timeout, TimeUnit units) Configures the timeout used when awaiting a response from the remote that a request to close a resource such as aConnection
,Session
,Sender
orReceiver
h as been honored.connectedHandler
(BiConsumer<Connection, ConnectionEvent> connectedHandler) Configures a handler that will be notified when aConnection
has established.protected ConnectionOptions
copyInto
(ConnectionOptions other) Copy all options from thisConnectionOptions
instance into the instance provided.Configures the default next receiver policy for this connection and any session that is created without specifying user defined session default options.String[]
desiredCapabilities
(String... desiredCapabilities) Sets the collection of capabilities to request from the remote for a newConnection
created using theseConnectionOptions
.disconnectedHandler
(BiConsumer<Connection, DisconnectionEvent> disconnectedHandler) Configures a handler that will be notified when the connection has failed and cannot be recovered should reconnect be enabled.long
drainTimeout
(long drainTimeout) Sets the drain timeout (in milliseconds) after which aReceiver
request to drain link credit is considered failed and the request will be marked as such.drainTimeout
(long timeout, TimeUnit units) Sets the drain timeout value after which aReceiver
request to drain link credit is considered failed and the request will be marked as such.long
idleTimeout
(long idleTimeout) Sets the idle timeout (in milliseconds) after which the connection will be closed if the peer has not send any data.idleTimeout
(long timeout, TimeUnit units) Sets the idle timeout value after which the connection will be closed if the peer has not send any data.interruptedHandler
(BiConsumer<Connection, DisconnectionEvent> interruptedHandler) Configures a handler that will be notified when the currentConnection
experiences an interruption.int
maxFrameSize
(int maxFrameSize) Sets the max frame size (in bytes), values of -1 indicates to use the client selected default.String[]
offeredCapabilities
(String... offeredCapabilities) Sets the collection of capabilities to offer to the remote from a newConnection
created using theseConnectionOptions
.long
openTimeout
(long openTimeout) Configures the timeout used when awaiting a response from the remote that a request to open a resource such as aConnection
,Session
,Sender
orReceiver
has been honored.openTimeout
(long timeout, TimeUnit units) Configures the timeout used when awaiting a response from the remote that a request to open a resource such as aConnection
,Session
,Sender
orReceiver
has been honored.password()
Sets the password used when performing connection authentication.properties
(Map<String, Object> properties) Sets aMap
of properties to convey to the remote when a newConnection
is created from theseConnectionOptions
.reconnectedHandler
(BiConsumer<Connection, ConnectionEvent> reconnectedHandler) Configures a handler that will be notified when aConnection
that has previously experienced and interruption has been reconnected to a remote based on the reconnection configuration.boolean
reconnectEnabled
(boolean reconnectEnabled) Controls if the connection will attempt to reconnect if unable to connect immediately or if an existing connection fails (default is disabled).long
requestTimeout
(long requestTimeout) Configures the timeout used when awaiting a response from the remote that a request to perform some action such as starting a new transaction.requestTimeout
(long timeout, TimeUnit units) Configures the timeout used when awaiting a response from the remote that a request to perform some action such as starting a new transaction.long
sendTimeout
(long sendTimeout) Configures the timeout used when awaiting a send operation to complete.sendTimeout
(long timeout, TimeUnit units) Configures the timeout used when awaiting a send operation to complete.boolean
sslEnabled
(boolean sslEnabled) Controls if the connection will attempt to connect using a secure IO layer or not.boolean
traceFrames
(boolean traceFrames) Configure if the newly created connection should enabled AMQP frame tracing to the system output.user()
Sets the user name used when performing connection authentication.virtualHost
(String virtualHost) The virtual host value to provide to the remote when creating a newConnection
.
-
Field Details
-
DEFAULT_DESIRED_CAPABILITIES
-
INFINITE
public static final long INFINITE- See Also:
-
DEFAULT_OPEN_TIMEOUT
public static final long DEFAULT_OPEN_TIMEOUT- See Also:
-
DEFAULT_CLOSE_TIMEOUT
public static final long DEFAULT_CLOSE_TIMEOUT- See Also:
-
DEFAULT_SEND_TIMEOUT
public static final long DEFAULT_SEND_TIMEOUT- See Also:
-
DEFAULT_REQUEST_TIMEOUT
public static final long DEFAULT_REQUEST_TIMEOUT- See Also:
-
DEFAULT_IDLE_TIMEOUT
public static final long DEFAULT_IDLE_TIMEOUT- See Also:
-
DEFAULT_DRAIN_TIMEOUT
public static final long DEFAULT_DRAIN_TIMEOUT- See Also:
-
DEFAULT_CHANNEL_MAX
public static final int DEFAULT_CHANNEL_MAX- See Also:
-
DEFAULT_MAX_FRAME_SIZE
public static final int DEFAULT_MAX_FRAME_SIZE- See Also:
-
DEFAULT_NEXT_RECEIVER_POLICY
-
-
Constructor Details
-
ConnectionOptions
public ConnectionOptions()Create a newConnectionOptions
instance configured with default configuration settings. -
ConnectionOptions
Creates aConnectionOptions
instance that is a copy of the given instance.- Parameters:
options
- TheConnectionOptions
instance whose configuration should be copied to this one.
-
-
Method Details
-
clone
-
copyInto
Copy all options from thisConnectionOptions
instance into the instance provided.- Parameters:
other
- the target of this copy operation.- Returns:
- the
ConnectionOptions
instance that was given.
-
closeTimeout
public long closeTimeout()- Returns:
- the timeout used when awaiting a response from the remote when a resource is closed.
-
closeTimeout
Configures the timeout used when awaiting a response from the remote that a request to close a resource such as aConnection
,Session
,Sender
orReceiver
h as been honored.- Parameters:
closeTimeout
- Timeout value in milliseconds to wait for a remote response.- Returns:
- this
ConnectionOptions
instance.
-
closeTimeout
Configures the timeout used when awaiting a response from the remote that a request to close a resource such as aConnection
,Session
,Sender
orReceiver
h as been honored.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
ConnectionOptions
instance.
-
openTimeout
public long openTimeout()- Returns:
- the timeout used when awaiting a response from the remote when a resource is opened.
-
openTimeout
Configures the timeout used when awaiting a response from the remote that a request to open a resource such as aConnection
,Session
,Sender
orReceiver
has been honored.- Parameters:
openTimeout
- Timeout value in milliseconds to wait for a remote response.- Returns:
- this
ConnectionOptions
instance.
-
openTimeout
Configures the timeout used when awaiting a response from the remote that a request to open a resource such as aConnection
,Session
,Sender
orReceiver
has been honored.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
ConnectionOptions
instance.
-
sendTimeout
public long sendTimeout()- Returns:
- the timeout used when awaiting a response from the remote when a resource is message send.
-
sendTimeout
Configures the timeout used when awaiting a send operation to complete. A send will block if the remote has not granted theSender
or theSession
credit to do so, if the send blocks for longer than this timeout the send call will fail with anClientSendTimedOutException
exception to indicate that the send did not complete.- Parameters:
sendTimeout
- Timeout value in milliseconds to wait for a remote response.- Returns:
- this
ConnectionOptions
instance.
-
sendTimeout
Configures the timeout used when awaiting a send operation to complete. A send will block if the remote has not granted theSender
or theSession
credit to do so, if the send blocks for longer than this timeout the send call will fail with anClientSendTimedOutException
exception to indicate that the send did not complete.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
ConnectionOptions
instance.
-
requestTimeout
public long requestTimeout()- Returns:
- the timeout used when awaiting a response from the remote when a resource makes a request.
-
requestTimeout
Configures the timeout used when awaiting a response from the remote that a request to perform some action such as starting a new transaction. If the remote does not respond within the configured timeout the resource making the request will mark it as failed and return an error to the request initiator usually in the form of aClientOperationTimedOutException
.- Parameters:
requestTimeout
- Timeout value in milliseconds to wait for a remote response.- Returns:
- this
ConnectionOptions
instance.
-
requestTimeout
Configures the timeout used when awaiting a response from the remote that a request to perform some action such as starting a new transaction. If the remote does not respond within the configured timeout the resource making the request will mark it as failed and return an error to the request initiator usually in the form of aClientOperationTimedOutException
.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
ConnectionOptions
instance.
-
channelMax
public int channelMax()- Returns:
- the configured or default channel max value for create
Connection
instances.
-
channelMax
Configure the channel maximum value for the newConnection
created with these options.The channel max value controls how many
Session
instances can be created by a given Connection, the default value is 65535.- Parameters:
channelMax
- The channel max value to assign to newly createdConnection
instances.- Returns:
- this
ConnectionOptions
instance.
-
maxFrameSize
public int maxFrameSize()- Returns:
- the configure maximum frame size value for newly create
Connection
instances.
-
maxFrameSize
Sets the max frame size (in bytes), values of -1 indicates to use the client selected default.- Parameters:
maxFrameSize
- the frame size in bytes.- Returns:
- this
ConnectionOptions
instance.
-
idleTimeout
public long idleTimeout()- Returns:
- the configured idle timeout value that will be sent to the remote.
-
idleTimeout
Sets the idle timeout (in milliseconds) after which the connection will be closed if the peer has not send any data. The provided value will be halved before being transmitted as our advertised idle-timeout in the AMQPOpen
frame.- Parameters:
idleTimeout
- the timeout in milliseconds.- Returns:
- this
ConnectionOptions
instance.
-
idleTimeout
Sets the idle timeout value after which the connection will be closed if the peer has not send any data. The provided value will be halved before being transmitted as our advertised idle-timeout in the AMQPOpen
frame.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
ConnectionOptions
instance.
-
drainTimeout
public long drainTimeout()- Returns:
- the configured drain timeout value that will use to fail a pending drain request.
-
drainTimeout
Sets the drain timeout (in milliseconds) after which aReceiver
request to drain link credit is considered failed and the request will be marked as such.- Parameters:
drainTimeout
- the drainTimeout to use for receiver links.- Returns:
- this
ConnectionOptions
instance.
-
drainTimeout
Sets the drain timeout value after which aReceiver
request to drain link credit is considered failed and the request will be marked as such.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
ConnectionOptions
instance.
-
offeredCapabilities
- Returns:
- the offeredCapabilities that have been configured.
-
offeredCapabilities
Sets the collection of capabilities to offer to the remote from a newConnection
created using theseConnectionOptions
. The offered capabilities advertise to the remote capabilities that thisConnection
supports.- Parameters:
offeredCapabilities
- the offeredCapabilities to set on a newConnection
.- Returns:
- this
ConnectionOptions
instance.
-
desiredCapabilities
- Returns:
- the desiredCapabilities that have been configured.
-
desiredCapabilities
Sets the collection of capabilities to request from the remote for a newConnection
created using theseConnectionOptions
. The desired capabilities inform the remote peer of the various capabilities the newConnection
requires and the remote should return those that it supports in its offered capabilities.- Parameters:
desiredCapabilities
- the desiredCapabilities to set on a newConnection
.- Returns:
- this
ConnectionOptions
instance.
-
properties
- Returns:
- the properties that have been configured.
-
properties
Sets aMap
of properties to convey to the remote when a newConnection
is created from theseConnectionOptions
.- Parameters:
properties
- the properties to set- Returns:
- this
ConnectionOptions
instance.
-
virtualHost
- Returns:
- the virtual host value configured.
-
virtualHost
The virtual host value to provide to the remote when creating a newConnection
.A value of
null
signifies that the client should send the host value used to connect to the remote in the SASLInit and Open performatives, otherwise the value provided is sent unless empty string is provided in which case no AMQP host value is sent in either the SASLInit or the Open performative allowing the remote to select from a configured default.- Parameters:
virtualHost
- the virtual host to set- Returns:
- this
ConnectionOptions
instance.
-
user
- Returns:
- the user name that is configured for new
Connection
instances.
-
user
Sets the user name used when performing connection authentication.- Parameters:
user
- the user to set- Returns:
- this
ConnectionOptions
instance.
-
password
- Returns:
- the password that is configured for new
Connection
instances.
-
password
Sets the password used when performing connection authentication.- Parameters:
password
- the password to set- Returns:
- this
ConnectionOptions
instance.
-
transportOptions
- Returns:
- the transport options that will be used for the
Connection
.
-
sslOptions
- Returns:
- the SSL options that will be used for the
Connection
.
-
saslOptions
- Returns:
- the SASL options that will be used for the
Connection
.
-
reconnectEnabled
public boolean reconnectEnabled()- Returns:
- true if reconnection support has been enabled for this connection.
-
reconnectEnabled
Controls if the connection will attempt to reconnect if unable to connect immediately or if an existing connection fails (default is disabled).This option enables or disables reconnection to a remote peer after IO errors or remote forcibly closing the connection. To control specifics of the reconnection configuration for the
Connection
the values must be updated in theReconnectOptions
configuration prior to creating the connection.- Parameters:
reconnectEnabled
- Controls if reconnection is enabled or not for the associatedConnection
.- Returns:
- this options instance.
-
reconnectOptions
- Returns:
- the reconnection options that will be used for the
Connection
.
-
traceFrames
Configure if the newly created connection should enabled AMQP frame tracing to the system output.- Parameters:
traceFrames
- true if frame tracing on this connection should be enabled.- Returns:
- this
ConnectionOptions
instance.
-
traceFrames
public boolean traceFrames()- Returns:
- true if the connection is configured to perform frame tracing.
-
sslEnabled
public boolean sslEnabled()- Returns:
- true if SSL support has been enabled for this connection.
-
sslEnabled
Controls if the connection will attempt to connect using a secure IO layer or not.This option enables or disables SSL encryption when connecting to a remote peer. To control specifics of the SSL configuration for the
Connection
the values must be updated in theSslOptions
configuration prior to creating the connection.- Parameters:
sslEnabled
- Is SSL encryption enabled for theConnection
.- Returns:
- this
ConnectionOptions
instance.
-
defaultNextReceiverPolicy
- Returns:
- the configured default next receiver policy for the connection.
-
defaultNextReceiverPolicy
Configures the default next receiver policy for this connection and any session that is created without specifying user defined session default options.- Parameters:
policy
- The next receiver policy to assign as the default.- Returns:
- this
ConnectionOptions
instance.
-
disconnectedHandler
- Returns:
- the connection failed handler currently registered.
-
disconnectedHandler
public ConnectionOptions disconnectedHandler(BiConsumer<Connection, DisconnectionEvent> disconnectedHandler) Configures a handler that will be notified when the connection has failed and cannot be recovered should reconnect be enabled. Once notified of the failure theConnection
is no longer operable and theConnection
APIs will throw an exception to indicate that the connection has failed. The client application should close a failedConnection
once it becomes aware of the failure to ensure all connection resources are cleaned up properly.- Parameters:
disconnectedHandler
- the connection failed handler to notify when the connection fails for any reason.- Returns:
- this
ConnectionOptions
instance. - See Also:
-
connectedHandler
- Returns:
- the connection established handler that is currently registered
-
connectedHandler
Configures a handler that will be notified when aConnection
has established. This handler is called for each connection event when reconnection is enabled unless areconnectedHandler
is configured in which case this handler is only notified on the first connection to a remote.- Parameters:
connectedHandler
- the connection established handler to assign to theseConnectionOptions
.- Returns:
- this
ConnectionOptions
instance. - See Also:
-
interruptedHandler
- Returns:
- the connection interrupted handler that is currently registered
-
interruptedHandler
public ConnectionOptions interruptedHandler(BiConsumer<Connection, DisconnectionEvent> interruptedHandler) Configures a handler that will be notified when the currentConnection
experiences an interruption. TheConnection
will only signal this handler when the reconnection feature is enabled and will follow this event either with a notification that the connection has been restored (if a handler is registered), or with a notification that the connection has failed if the reconnection configuration places limits on the the number of reconnection attempts.- Parameters:
interruptedHandler
- the connection interrupted handler to assign to theseConnectionOptions
.- Returns:
- this
ReconnectOptions
instance. - See Also:
-
reconnectedHandler
- Returns:
- the connection restored handler that is currently registered
-
reconnectedHandler
public ConnectionOptions reconnectedHandler(BiConsumer<Connection, ConnectionEvent> reconnectedHandler) Configures a handler that will be notified when aConnection
that has previously experienced and interruption has been reconnected to a remote based on the reconnection configuration.- Parameters:
reconnectedHandler
- the connection restored handler to assign to theseConnectionOptions
.- Returns:
- this
ReconnectOptions
instance. - See Also:
-