Module: Stomp
- Defined in:
- lib/stomp.rb,
lib/stomp/codec.rb,
lib/client/utils.rb,
lib/stomp/client.rb,
lib/stomp/errors.rb,
lib/stomp/message.rb,
lib/stomp/version.rb,
lib/connection/utf8.rb,
lib/stomp/constants.rb,
lib/stomp/sslparams.rb,
lib/connection/netio.rb,
lib/connection/utils.rb,
lib/stomp/connection.rb,
lib/stomp/null_logger.rb,
lib/connection/heartbeats.rb
Defined Under Namespace
Modules: Error, Version Classes: Client, Connection, HeaderCodec, Message, NullLogger, SSLParams
Constant Summary collapse
- CMD_CONNECT =
Client generated frames
"CONNECT"- CMD_STOMP =
"STOMP"- CMD_DISCONNECT =
"DISCONNECT"- CMD_SEND =
"SEND"- CMD_SUBSCRIBE =
"SUBSCRIBE"- CMD_UNSUBSCRIBE =
"UNSUBSCRIBE"- CMD_ACK =
"ACK"- CMD_NACK =
"NACK"- CMD_BEGIN =
"BEGIN"- CMD_COMMIT =
"COMMIT"- CMD_ABORT =
"ABORT"- CMD_CONNECTED =
Server generated names
"CONNECTED"- CMD_MESSAGE =
"MESSAGE"- CMD_RECEIPT =
"RECEIPT"- CMD_ERROR =
"ERROR"- SPL_10 =
Protocols
"1.0"- SPL_11 =
"1.1"- SPL_12 =
"1.2"- SUPPORTED =
Stomp 1.0 and 1.1
[SPL_10, SPL_11, SPL_12]
- UTF8 =
1.9 Encoding Name
"UTF-8"- NULL =
Octet 0
"\0"- NL =
New line
"\n"- NL_ASCII =
0x0a- LF =
Line Feed (New Line)
"\n"- LF_ASCII =
0x0a- CR =
New line
"\r"- CR_ASCII =
0x0d- BACK_SLASH =
Back Slash
"\\"- BACK_SLASH_ASCII =
0x5c- LITERAL_COLON =
Literal colon
":"- COLON_ASCII =
0x3a- LITERAL_C =
Literal letter c
"c"- C_ASCII =
0x63- LITERAL_N =
Literal letter n
"n"- N_ASCII =
0x6e- ENCODE_VALUES =
Codec from/to values.
[ "\\\\\\\\", "\\", # encoded, decoded "\\" + "n", "\n", "\\" + "r", "\r", "\\c", ":", ]
- DECODE_VALUES =
[ "\\\\", "\\", # encoded, decoded "\\" + "n", "\n", "\\" + "r", "\r", "\\c", ":", ]
- DEFAULT_CIPHERS =
A fairly safe and generally supported ciphers list.
[ ["AES128-GCM-SHA256","TLSv1/SSLv3",128,128], ["AES128-SHA256","TLSv1/SSLv3",128,128], ["AES128-SHA","TLSv1/SSLv3",128,128], ["AES256-GCM-SHA384","TLSv1/SSLv3",256,256], ["AES256-SHA256","TLSv1/SSLv3",256,256], ["AES256-SHA","TLSv1/SSLv3",256,256], ["CAMELLIA128-SHA","TLSv1/SSLv3",128,128], ["CAMELLIA256-SHA","TLSv1/SSLv3",256,256], ["DES-CBC3-SHA","TLSv1/SSLv3",168,168], ["DES-CBC-SHA","TLSv1/SSLv3",56,56], ["DHE-DSS-AES128-GCM-SHA256","TLSv1/SSLv3",128,128], ["DHE-DSS-AES128-SHA256","TLSv1/SSLv3",128,128], ["DHE-DSS-AES128-SHA","TLSv1/SSLv3",128,128], ["DHE-DSS-AES256-GCM-SHA384","TLSv1/SSLv3",256,256], ["DHE-DSS-AES256-SHA256","TLSv1/SSLv3",256,256], ["DHE-DSS-AES256-SHA","TLSv1/SSLv3",256,256], ["DHE-DSS-CAMELLIA128-SHA","TLSv1/SSLv3",128,128], ["DHE-DSS-CAMELLIA256-SHA","TLSv1/SSLv3",256,256], ["DHE-DSS-SEED-SHA","TLSv1/SSLv3",128,128], ["DHE-RSA-AES128-GCM-SHA256","TLSv1/SSLv3",128,128], ["DHE-RSA-AES128-SHA256","TLSv1/SSLv3",128,128], ["DHE-RSA-AES128-SHA","TLSv1/SSLv3",128,128], ["DHE-RSA-AES256-GCM-SHA384","TLSv1/SSLv3",256,256], ["DHE-RSA-AES256-SHA256","TLSv1/SSLv3",256,256], ["DHE-RSA-AES256-SHA","TLSv1/SSLv3",256,256], ["DHE-RSA-CAMELLIA128-SHA","TLSv1/SSLv3",128,128], ["DHE-RSA-CAMELLIA256-SHA","TLSv1/SSLv3",256,256], ["DHE-RSA-SEED-SHA","TLSv1/SSLv3",128,128], ["ECDH-ECDSA-AES128-GCM-SHA256","TLSv1/SSLv3",128,128], ["ECDH-ECDSA-AES128-SHA256","TLSv1/SSLv3",128,128], ["ECDH-ECDSA-AES128-SHA","TLSv1/SSLv3",128,128], ["ECDH-ECDSA-AES256-GCM-SHA384","TLSv1/SSLv3",256,256], ["ECDH-ECDSA-AES256-SHA384","TLSv1/SSLv3",256,256], ["ECDH-ECDSA-AES256-SHA","TLSv1/SSLv3",256,256], ["ECDH-ECDSA-DES-CBC3-SHA","TLSv1/SSLv3",168,168], ["ECDH-ECDSA-RC4-SHA","TLSv1/SSLv3",128,128], ["ECDHE-ECDSA-AES128-GCM-SHA256","TLSv1/SSLv3",128,128], ["ECDHE-ECDSA-AES128-SHA256","TLSv1/SSLv3",128,128], ["ECDHE-ECDSA-AES128-SHA","TLSv1/SSLv3",128,128], ["ECDHE-ECDSA-AES256-GCM-SHA384","TLSv1/SSLv3",256,256], ["ECDHE-ECDSA-AES256-SHA384","TLSv1/SSLv3",256,256], ["ECDHE-ECDSA-AES256-SHA","TLSv1/SSLv3",256,256], ["ECDHE-ECDSA-DES-CBC3-SHA","TLSv1/SSLv3",168,168], ["ECDHE-ECDSA-RC4-SHA","TLSv1/SSLv3",128,128], ["ECDHE-RSA-AES128-GCM-SHA256","TLSv1/SSLv3",128,128], ["ECDHE-RSA-AES128-SHA256","TLSv1/SSLv3",128,128], ["ECDHE-RSA-AES128-SHA","TLSv1/SSLv3",128,128], ["ECDHE-RSA-AES256-GCM-SHA384","TLSv1/SSLv3",256,256], ["ECDHE-RSA-AES256-SHA384","TLSv1/SSLv3",256,256], ["ECDHE-RSA-AES256-SHA","TLSv1/SSLv3",256,256], ["ECDHE-RSA-DES-CBC3-SHA","TLSv1/SSLv3",168,168], ["ECDHE-RSA-RC4-SHA","TLSv1/SSLv3",128,128], ["ECDH-RSA-AES128-GCM-SHA256","TLSv1/SSLv3",128,128], ["ECDH-RSA-AES128-SHA256","TLSv1/SSLv3",128,128], ["ECDH-RSA-AES128-SHA","TLSv1/SSLv3",128,128], ["ECDH-RSA-AES256-GCM-SHA384","TLSv1/SSLv3",256,256], ["ECDH-RSA-AES256-SHA384","TLSv1/SSLv3",256,256], ["ECDH-RSA-AES256-SHA","TLSv1/SSLv3",256,256], ["ECDH-RSA-DES-CBC3-SHA","TLSv1/SSLv3",168,168], ["ECDH-RSA-RC4-SHA","TLSv1/SSLv3",128,128], ["EDH-DSS-DES-CBC3-SHA","TLSv1/SSLv3",168,168], ["EDH-DSS-DES-CBC-SHA", "TLSv1/SSLv3", 56, 56], ["EDH-DSS-DES-CBC-SHA","TLSv1/SSLv3",56,56], ["EDH-RSA-DES-CBC3-SHA","TLSv1/SSLv3",168,168], ["EDH-RSA-DES-CBC-SHA","TLSv1/SSLv3",56,56], ["EXP-DES-CBC-SHA","TLSv1/SSLv3",40,56], ["EXP-EDH-DSS-DES-CBC-SHA","TLSv1/SSLv3",40,56], ["EXP-EDH-RSA-DES-CBC-SHA","TLSv1/SSLv3",40,56], ["EXP-RC2-CBC-MD5","TLSv1/SSLv3",40,128], ["EXP-RC4-MD5", "TLSv1/SSLv3", 40, 128], ["PSK-3DES-EDE-CBC-SHA","TLSv1/SSLv3",168,168], ["PSK-AES128-CBC-SHA","TLSv1/SSLv3",128,128], ["PSK-AES256-CBC-SHA","TLSv1/SSLv3",256,256], ["PSK-RC4-SHA","TLSv1/SSLv3",128,128], ["RC4-MD5","TLSv1/SSLv3",128,128], ["RC4-SHA","TLSv1/SSLv3",128,128], ["SEED-SHA","TLSv1/SSLv3",128,128], ["SRP-DSS-3DES-EDE-CBC-SHA","TLSv1/SSLv3",168,168], ["SRP-DSS-AES-128-CBC-SHA","TLSv1/SSLv3",128,128], ["SRP-DSS-AES-256-CBC-SHA","TLSv1/SSLv3",256,256], ["SRP-RSA-3DES-EDE-CBC-SHA","TLSv1/SSLv3",168,168], ["SRP-RSA-AES-128-CBC-SHA","TLSv1/SSLv3",128,128], ["SRP-RSA-AES-256-CBC-SHA","TLSv1/SSLv3",256,256], ]
- URL_REPAT =
stomp URL regex pattern, for e.g. login:passcode@host:port or host:port
'((([\w~!@#$%^&*()\-+=.?:<>,.]*\w):([\w~!@#$%^&*()\-+=.?:<>,.]*))?@)?([\w\.\-]+):(\d+)'- FAILOVER_REGEX =
Failover URL regex, for e.g. failover:(stomp+ssl://login1:passcode1@remotehost1:61612,stomp://login2:passcode2@remotehost2:61613)
/^failover:(\/\/)?\(stomp(\+ssl)?:\/\/#{URL_REPAT}(,stomp(\+ssl)?:\/\/#{URL_REPAT})*\)(\?(.*))?$/