Class: Temporal::Client::Serializer::ScheduleActivity

Inherits:
Base
  • Object
show all
Includes:
Temporal::Concerns::Payloads
Defined in:
lib/temporal/client/serializer/schedule_activity.rb

Instance Method Summary collapse

Methods included from Temporal::Concerns::Payloads

#from_details_payloads, #from_payload, #from_payloads, #from_result_payloads, #from_signal_payloads, #to_details_payloads, #to_payload, #to_payloads, #to_result_payloads, #to_signal_payloads

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from Temporal::Client::Serializer::Base

Instance Method Details

#to_protoObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/temporal/client/serializer/schedule_activity.rb', line 11

def to_proto
  Temporal::Api::Command::V1::Command.new(
    command_type: Temporal::Api::Enums::V1::CommandType::COMMAND_TYPE_SCHEDULE_ACTIVITY_TASK,
    schedule_activity_task_command_attributes:
      Temporal::Api::Command::V1::ScheduleActivityTaskCommandAttributes.new(
        activity_id: object.activity_id.to_s,
        activity_type: Temporal::Api::Common::V1::ActivityType.new(name: object.activity_type),
        input: to_payloads(object.input),
        namespace: object.namespace,
        task_queue: Temporal::Api::TaskQueue::V1::TaskQueue.new(name: object.task_queue),
        schedule_to_close_timeout: object.timeouts[:schedule_to_close],
        schedule_to_start_timeout: object.timeouts[:schedule_to_start],
        start_to_close_timeout: object.timeouts[:start_to_close],
        heartbeat_timeout: object.timeouts[:heartbeat],
        retry_policy: Temporal::Client::Serializer::RetryPolicy.new(object.retry_policy).to_proto,
        header: serialize_headers(object.headers)
      )
  )
end