class Dynflow::Connectors::Direct

Public Class Methods

new(world = nil) click to toggle source
# File lib/dynflow/connectors/direct.rb, line 49
def initialize(world = nil)
  @core = Core.spawn('connector-direct-core', self)
  start_listening(world) if world
end

Public Instance Methods

prune_undeliverable_envelopes(_world) click to toggle source
# File lib/dynflow/connectors/direct.rb, line 71
def prune_undeliverable_envelopes(_world)
  # This is a noop
  0
end
send(envelope) click to toggle source
# File lib/dynflow/connectors/direct.rb, line 66
def send(envelope)
  Telemetry.with_instance { |t| t.increment_counter(:dynflow_connector_envelopes, 1, :world => envelope.sender_id) }
  @core.ask([:handle_envelope, envelope])
end
start_listening(world) click to toggle source
# File lib/dynflow/connectors/direct.rb, line 54
def start_listening(world)
  @core.ask([:start_listening, world])
end
stop_listening(world, timeout = nil) click to toggle source
# File lib/dynflow/connectors/direct.rb, line 62
def stop_listening(world, timeout = nil)
  @core.ask([:stop_listening, world]).wait(timeout)
end
stop_receiving_new_work(world, timeout = nil) click to toggle source
# File lib/dynflow/connectors/direct.rb, line 58
def stop_receiving_new_work(world, timeout = nil)
  @core.ask([:stop_receiving_new_work, world]).wait(timeout)
end