Module: SubZero::Socket::Sender
- Included in:
- SubZero::Socket
- Defined in:
- lib/sub_zero/socket/sender.rb
Instance Method Summary collapse
Instance Method Details
#call(request) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/sub_zero/socket/sender.rb', line 5 def call request response = nil t = request..fetch(:timeout, 1000) / 1000.0 ::Timeout.timeout t do context do |c| socket c do |s| s, request response = (s, request) end end end response rescue ::Timeout::Error raise SubZero::Socket::TimeoutError, "call timeout after #{t}ms" end |