class ActiveEvent::SSE

Public Class Methods

new(io) click to toggle source
# File lib/active_event/sse.rb, line 5
def initialize(io)
  @io = io
end

Public Instance Methods

close() click to toggle source
# File lib/active_event/sse.rb, line 22
def close
  @io.close
end
data(data) click to toggle source
# File lib/active_event/sse.rb, line 13
def data(data)
  data.each_pair do |key, value|
    (value + "\n").split("\n", -1)[0..-2].each do |v|
      @io.write "#{key}: #{v}\n"
    end
  end
  @io.write "\n"
end
event(event, data = nil, options = {}) click to toggle source
# File lib/active_event/sse.rb, line 9
def event(event, data = nil, options = {})
  self.data options.merge(event: event, data: JSON.dump(data))
end