Sha256: 38c1a46ba90443e7bb4e1cb2d6d250dbacb9ec83d68dab82809c4b86810322f2
Contents?: true
Size: 1.23 KB
Versions: 4
Compression:
Stored size: 1.23 KB
Contents
# frozen_string_literal: true module PgEventstore class EventsProcessorHandlers include Extensions::CallbackHandlersExtension class << self # @param callbacks [PgEventstore::Callbacks] # @param handler [#call] # @param raw_events [Array<Hash>] # @return [void] def process_event(callbacks, handler, raw_events) raw_event = raw_events.shift return sleep 0.5 if raw_event.nil? callbacks.run_callbacks(:process, Utils.original_global_position(raw_event)) do handler.call(raw_event) end rescue raw_events.unshift(raw_event) raise end # @param callbacks [PgEventstore::Callbacks] # @param error [StandardError] # @return [void] def after_runner_died(callbacks, error) callbacks.run_callbacks(:error, error) end # @param callbacks [PgEventstore::Callbacks] # @return [void] def before_runner_restored(callbacks) callbacks.run_callbacks(:restart) end # @param callbacks [PgEventstore::Callbacks] # @param state [String] # @return [void] def change_state(callbacks, state) callbacks.run_callbacks(:change_state, state) end end end end
Version data entries
4 entries across 4 versions & 1 rubygems