Module: HTTPX::Plugins::StreamBidi::ConnectionMethods

Defined in:
lib/httpx/plugins/stream_bidi.rb

Overview

overrides the declaration of @write_buffer, which is now a thread-safe buffer responding to the same API.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#signal=(value) ⇒ Object (writeonly)

Sets the attribute signal

Parameters:

  • value

    the value to set the attribute signal to.



363
364
365
# File 'lib/httpx/plugins/stream_bidi.rb', line 363

def signal=(value)
  @signal = value
end

Instance Method Details

#callObject



382
383
384
385
386
# File 'lib/httpx/plugins/stream_bidi.rb', line 382

def call
  return super unless @options.stream && (error = @signal.error)

  on_error(error)
end

#initializeObject



365
366
367
368
369
370
371
# File 'lib/httpx/plugins/stream_bidi.rb', line 365

def initialize(*)
  super

  return unless @options.stream

  @write_buffer = BidiBuffer.new(@options.buffer_size)
end

#interestsObject

rebuffers the @write_buffer before calculating interests.



374
375
376
377
378
379
380
# File 'lib/httpx/plugins/stream_bidi.rb', line 374

def interests
  return super unless @options.stream

  @write_buffer.rebuffer

  super
end