module Etherlite::EventProvider

Public Instance Methods

parse_raw_log(_connection, _raw_log) click to toggle source
# File lib/etherlite/event_provider.rb, line 13
def parse_raw_log(_connection, _raw_log)
  event = event_by_topic[_raw_log["topics"].first]
  return nil if event.nil?
  event.decode(_connection, _raw_log)
end
parse_raw_logs(_connection, _raw_logs) click to toggle source
# File lib/etherlite/event_provider.rb, line 19
def parse_raw_logs(_connection, _raw_logs)
  _raw_logs.map { |e| parse_raw_log(_connection, e) }.reject &:nil?
end
register_contract_events(_contract_class) click to toggle source
# File lib/etherlite/event_provider.rb, line 5
def register_contract_events(_contract_class)
  _contract_class.events.each { |e| register_event e }
end
register_event(_event) click to toggle source
# File lib/etherlite/event_provider.rb, line 9
def register_event(_event)
  event_by_topic[_event.topic] = _event
end

Private Instance Methods

event_by_topic() click to toggle source
# File lib/etherlite/event_provider.rb, line 25
def event_by_topic
  @event_by_topic ||= {}
end