class ActiveEvent::EventSourceServer::Status
Public Class Methods
new()
click to toggle source
# File lib/active_event/event_source_server.rb, line 54 def initialize @waiters = {} end
Public Instance Methods
event=(event)
click to toggle source
# File lib/active_event/event_source_server.rb, line 70 def event=(event) @event_id = event cvs = [] @waiters.delete_if { |event_id, cv| (event_id <= event) && (cvs << cv) } cvs.map &:broadcast end
fail_on_error()
click to toggle source
# File lib/active_event/event_source_server.rb, line 77 def fail_on_error fail ProjectionException, @error, @backtrace if @error end
set_error(error, backtrace)
click to toggle source
# File lib/active_event/event_source_server.rb, line 66 def set_error(error, backtrace) @error, @backtrace = error, backtrace if error || backtrace end
waiter(event)
click to toggle source
# File lib/active_event/event_source_server.rb, line 58 def waiter(event) if event > @event_id @waiters[event] ||= ConditionVariable.new else UnconditionalVariable end end