Class: Temporalio::Internal::Worker::WorkflowInstance::InboundImplementation

Inherits:
Worker::Interceptor::Workflow::Inbound show all
Defined in:
lib/temporalio/internal/worker/workflow_instance/inbound_implementation.rb

Overview

Root implementation of the inbound interceptor.

Instance Attribute Summary

Attributes inherited from Worker::Interceptor::Workflow::Inbound

#next_interceptor

Instance Method Summary collapse

Constructor Details

#initialize(instance) ⇒ InboundImplementation

Returns a new instance of InboundImplementation.



13
14
15
16
# File 'lib/temporalio/internal/worker/workflow_instance/inbound_implementation.rb', line 13

def initialize(instance)
  super(nil) # steep:ignore
  @instance = instance
end

Instance Method Details

#execute(input) ⇒ Object



22
23
24
# File 'lib/temporalio/internal/worker/workflow_instance/inbound_implementation.rb', line 22

def execute(input)
  @instance.instance.execute(*input.args)
end

#handle_query(input) ⇒ Object



30
31
32
# File 'lib/temporalio/internal/worker/workflow_instance/inbound_implementation.rb', line 30

def handle_query(input)
  invoke_handler(input.query, input)
end

#handle_signal(input) ⇒ Object



26
27
28
# File 'lib/temporalio/internal/worker/workflow_instance/inbound_implementation.rb', line 26

def handle_signal(input)
  invoke_handler(input.signal, input)
end

#handle_update(input) ⇒ Object



38
39
40
# File 'lib/temporalio/internal/worker/workflow_instance/inbound_implementation.rb', line 38

def handle_update(input)
  invoke_handler(input.update, input)
end

#init(outbound) ⇒ Object



18
19
20
# File 'lib/temporalio/internal/worker/workflow_instance/inbound_implementation.rb', line 18

def init(outbound)
  @instance.context._outbound = outbound
end

#validate_update(input) ⇒ Object



34
35
36
# File 'lib/temporalio/internal/worker/workflow_instance/inbound_implementation.rb', line 34

def validate_update(input)
  invoke_handler(input.update, input, to_invoke: input.definition.validator_to_invoke)
end