Class: Synapse::ProcessManager::WiringProcess

Inherits:
Process
  • Object
show all
Includes:
Wiring::MessageWiring
Defined in:
lib/synapse/process_manager/wiring/process.rb

Overview

Process that has the wiring DSL built-in

Examples:

class OrderProcess < WiringProcess
  wire OrderCreatedEvent, correlate: :order_id, start: true, to: :on_create
  wire OrderFinishedEvent, correlate: :order_id, finish: true, to: :on_finish
end

Instance Attribute Summary

Attributes inherited from Process

#active, #correlations, #id

Instance Method Summary collapse

Methods inherited from Process

#initialize

Constructor Details

This class inherits a constructor from Synapse::ProcessManager::Process

Instance Method Details

#handle(event) ⇒ undefined

Parameters:

  • event (EventMessage)

Returns:

  • (undefined)


15
16
17
18
19
20
21
22
23
24
# File 'lib/synapse/process_manager/wiring/process.rb', line 15

def handle(event)
  return unless @active

  wire = wire_registry.wire_for event.payload_type

  return unless wire

  invoke_wire event, wire
  finish if wire.options[:finish]
end