Class: Ecco::EventListener

Inherits:
Object
  • Object
show all
Includes:
comcom.githubcom.github.shyikocom.github.shyiko.mysqlcom.github.shyiko.mysql.binlogcom.github.shyiko.mysql.binlog.BinaryLogClientcom.github.shyiko.mysql.binlog.BinaryLogClient::EventListener
Defined in:
lib/ecco/event_listener.rb

Direct Known Subclasses

RowEventListener, SaveEventListener

Constant Summary collapse

WRITE_EVENTS =
{ EventType::WRITE_ROWS => "WRITE_ROWS", EventType::EXT_WRITE_ROWS => "WRITE_ROWS" }
UPDATE_EVENTS =
{ EventType::UPDATE_ROWS => "UPDATE_ROWS", EventType::EXT_UPDATE_ROWS => "UPDATE_ROWS" }
DELETE_EVENTS =
{ EventType::DELETE_ROWS => "DELETE_ROWS" , EventType::EXT_DELETE_ROWS => "DELETE_ROWS" }
QUERY_EVENTS =
{ EventType::QUERY => "QUERY"}
ROTATE_EVENTS =
{ EventType::ROTATE => "ROTATE"}
TABLE_EVENT =
EventType::TABLE_MAP

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client, events_of_interest) ⇒ EventListener

Returns a new instance of EventListener.



16
17
18
19
20
21
22
23
# File 'lib/ecco/event_listener.rb', line 16

def initialize(client, events_of_interest)
  @client = client

  @events_of_interest = events_of_interest.reduce(&:merge)
  @accepted_events = @events_of_interest.keys

  @callback = Proc.new {}
end

Instance Attribute Details

#callback=(value) ⇒ Object (writeonly)

Sets the attribute callback

Parameters:

  • value

    the value to set the attribute callback to.



14
15
16
# File 'lib/ecco/event_listener.rb', line 14

def callback=(value)
  @callback = value
end

Instance Method Details

#accepted_eventsObject



29
30
31
# File 'lib/ecco/event_listener.rb', line 29

def accepted_events
  @accepted_events
end

#event_type_to_string(type) ⇒ Object



33
34
35
# File 'lib/ecco/event_listener.rb', line 33

def event_type_to_string(type)
  @events_of_interest.fetch(type)
end

#on_event(event) ⇒ Object

Raises:

  • (NotImplementedError)


25
26
27
# File 'lib/ecco/event_listener.rb', line 25

def on_event(event)
  raise NotImplementedError
end