Method: Beetle::Message#setup

Defined in:
lib/beetle/message.rb

#setup(opts) ⇒ Object

:nodoc:



73
74
75
76
77
78
79
80
81
82
83
84
# File 'lib/beetle/message.rb', line 73

def setup(opts) #:nodoc:
  @server           = opts[:server]
  @timeout          = opts[:timeout]    || DEFAULT_HANDLER_TIMEOUT.to_i
  @delay            = (opts[:delay]     || DEFAULT_HANDLER_EXECUTION_ATTEMPTS_DELAY).ceil
  @attempts_limit   = opts[:attempts]   || DEFAULT_HANDLER_EXECUTION_ATTEMPTS
  @exceptions_limit = opts[:exceptions] || DEFAULT_EXCEPTION_LIMIT
  @attempts_limit   = @exceptions_limit + 1 if @attempts_limit <= @exceptions_limit
  @retry_on         = opts[:retry_on] || nil
  @store            = opts[:store]
  max_delay         = opts[:max_delay] || @delay
  @max_delay        = max_delay.ceil if max_delay >= 2*@delay
end