require 'sqreen/ecosystem/dispatch_table' module Sqreen module Ecosystem module ModuleApi module SignalProducer # for injection # callable taking no arguments and generating a tracing id attr_writer :tracing_id_producer private def create_tracing_id @tracing_id_producer.call end # @param [Sqreen::Kit::Signals::Signal] signal def submit_signal(signal) DispatchTable.consume_signal.call(signal) end end end end end