class ReactiveObservers::DatabaseAdapters::AbstractAdapter

Public Class Methods

new(configuration, klasses) click to toggle source
# File lib/reactive_observers/database_adapters/abstract_adapter.rb, line 6
def initialize(configuration, klasses)
  @configuration = configuration
  @klasses = klasses
end

Public Instance Methods

start_listening() click to toggle source
# File lib/reactive_observers/database_adapters/abstract_adapter.rb, line 11
def start_listening
  @klasses.each { |klass| create_listening_job_for klass }
end
stop_listening() click to toggle source
# File lib/reactive_observers/database_adapters/abstract_adapter.rb, line 15
def stop_listening
  @klasses.each { |klass| stop_listening_job_for klass }
end

Private Instance Methods

create_listening_job_for(klass) click to toggle source
# File lib/reactive_observers/database_adapters/abstract_adapter.rb, line 21
def create_listening_job_for(klass)
  raise NotImplementedError
end
process_notification_for(data, klass) click to toggle source
# File lib/reactive_observers/database_adapters/abstract_adapter.rb, line 29
def process_notification_for(data, klass)
  klass.observer_listener_services.each { |service| klass.method(service).call data }
end
stop_listening_job_for(klass) click to toggle source
# File lib/reactive_observers/database_adapters/abstract_adapter.rb, line 25
def stop_listening_job_for(klass)
  raise NotImplementedError
end