NAME
Net::STOMP::Client::Connection - Connection support for Net::STOMP::Client
DESCRIPTION
This module provides connection establishment support (plain TCP and SSL) as well as URI handling.
It is used internally by Net::STOMP::Client and should not be directly used elsewhere.
FUNCTIONS
This module provides the following function (which is not exported):
SSL
When creating an object with Net::STOMP::Client's new() method, if you supply some socket options (via sockopts
) with a name starting with SSL_
or if you supply a URI (via uri
) with a scheme containg ssl
then IO::Socket::SSL will be used to create the socket instead of IO::Socket::IP and the communication with the server will then go through SSL.
Here are the most commonly used SSL socket options:
- SSL_ca_path
-
path to a directory containing several trusted certificates as separate files as well as an index of the certificates
- SSL_key_file
-
path of your RSA private key
- SSL_cert_file
-
path of your certificate
- SSL_passwd_cb
-
subroutine that should return the password required to decrypt your private key
For more information, see IO::Socket::SSL.
FAILOVER
The uri
option of Net::STOMP::Client's new() method can be given a complex URI indicating some kind of failover, for instance: failover:(tcp://msg01:6163,tcp://msg02:6163)
.
The given URI must use the ActiveMQ failover syntax (see http://activemq.apache.org/failover-transport-reference.html) and only some options are supported, namely: backOffMultiplier
, initialReconnectDelay
, maxReconnectAttempts
, maxReconnectDelay
, randomize
and useExponentialBackOff
.
When specified, these failover options will be used only inside the new() method (so at the TCP connection level) and not elsewhere. If the broker later fails during the STOMP interaction, it is up to the program author, knowing the logic of his code, to perform the appropriate recovery actions and eventually reconnect, using again the new() method.
SEE ALSO
IO::Socket::IP, IO::Socket::SSL, Net::STOMP::Client.
AUTHOR
Lionel Cons http://cern.ch/lionel.cons
Copyright (C) CERN 2010-2021