class RxRuby::AsyncLockObserver

Public Class Methods

new(observer, gate) click to toggle source
Calls superclass method RxRuby::ObserverBase::new
# File lib/rx_ruby/core/async_lock_observer.rb, line 33
def initialize(observer, gate)
  @observer = observer
  @gate = gate

  config = ObserverConfiguration.new
  config.on_next(&method(:on_next_core))
  config.on_error(&method(:on_error_core))
  config.on_completed(&method(:on_completed_core))

  super(config)
end

Public Instance Methods

on_completed_core() click to toggle source
# File lib/rx_ruby/core/async_lock_observer.rb, line 29
def on_completed_core
  @gate.wait { @observer.on_completed }
end
on_error_core(error) click to toggle source
# File lib/rx_ruby/core/async_lock_observer.rb, line 25
def on_error_core(error)
  @gate.wait { @observer.on_error error }
end
on_next_core(value) click to toggle source
# File lib/rx_ruby/core/async_lock_observer.rb, line 21
def on_next_core(value)
  @gate.wait { @observer.on_next value }
end