lib/connection/utils.rb in stomp-1.3.0 vs lib/connection/utils.rb in stomp-1.3.1
- old
+ new
@@ -114,11 +114,13 @@
@failure = nil
begin
used_socket = open_socket() # sets @closed = false if OK
# Open is complete
connect(used_socket)
- @logger.on_connected(log_params)
+ if @logger && @logger.respond_to?(:on_connected)
+ @logger.on_connected(log_params)
+ end
@connection_attempts = 0
rescue
@failure = $!
used_socket = nil
@closed = true
@@ -128,17 +130,20 @@
# Catch errors which are:
# a) emitted from corrupted 1.1+ 'connect' (caller programming error)
# b) should never be retried
raise if @failure.is_a?(Stomp::Error::ProtocolError11p)
- # on_connectfail may raise
- begin
- @logger.on_connectfail(log_params)
- rescue Exception => aex
- raise if aex.is_a?(Stomp::Error::LoggerConnectionError)
+ if @logger && @logger.respond_to?(:on_connectfail)
+ # on_connectfail may raise
+ begin
+ @logger.on_connectfail(log_params)
+ rescue Exception => aex
+ raise if aex.is_a?(Stomp::Error::LoggerConnectionError)
+ end
+ else
+ $stderr.print "connect to #{@host} failed: #{$!} will retry(##{@connection_attempts}) in #{@reconnect_delay}\n"
end
- $stderr.print "connect to #{@host} failed: #{$!} will retry(##{@connection_attempts}) in #{@reconnect_delay}\n"
raise Stomp::Error::MaxReconnectAttempts if max_reconnect_attempts?
sleep(@reconnect_delay)
@connection_attempts += 1
@@ -230,11 +235,14 @@
raise
rescue
@failure = $!
raise unless @reliable
errstr = "receive failed: #{$!}"
- @logger.on_miscerr(log_params, "es_oldrecv: " + errstr)
- $stderr.print errstr
+ if @logger && @logger.respond_to?(:on_miscerr)
+ @logger.on_miscerr(log_params, "es_oldrecv: " + errstr)
+ else
+ $stderr.print errstr
+ end
# !!! This initiates a re-connect !!!
_reconn_prep()
end
end