Module: Mongo::Timeout Private
- Defined in:
- lib/mongo/timeout.rb
This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.
Class Method Summary collapse
-
.timeout(sec, klass = nil, message = nil, &block) ⇒ Object
private
A wrapper around Ruby core's Timeout::timeout method that provides a standardized API for calling it.
Class Method Details
.timeout(sec, klass = nil, message = nil, &block) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
A wrapper around Ruby core's Timeout::timeout method that provides a standardized API for calling it.
29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/mongo/timeout.rb', line 29 def timeout(sec, klass = nil, = nil, &block) # provide a default error class if the message is present; otherwise, # the message will be interpreted as the error class, if klass is nil klass ||= ::Timeout::Error if # Jruby Timeout::timeout method does not support passing nil arguments. # Remove the nil arguments before passing them along to the core # Timeout::timeout method. optional_args = [ klass, ].compact ::Timeout.timeout(sec, *optional_args, &block) end |