temporalio 0.0.0 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +301 -0
  3. data/bridge/Cargo.lock +2888 -0
  4. data/bridge/Cargo.toml +27 -0
  5. data/bridge/sdk-core/ARCHITECTURE.md +76 -0
  6. data/bridge/sdk-core/Cargo.lock +2606 -0
  7. data/bridge/sdk-core/Cargo.toml +2 -0
  8. data/bridge/sdk-core/LICENSE.txt +23 -0
  9. data/bridge/sdk-core/README.md +104 -0
  10. data/bridge/sdk-core/arch_docs/diagrams/README.md +10 -0
  11. data/bridge/sdk-core/arch_docs/diagrams/sticky_queues.puml +40 -0
  12. data/bridge/sdk-core/arch_docs/diagrams/workflow_internals.svg +1 -0
  13. data/bridge/sdk-core/arch_docs/sticky_queues.md +51 -0
  14. data/bridge/sdk-core/client/Cargo.toml +40 -0
  15. data/bridge/sdk-core/client/LICENSE.txt +23 -0
  16. data/bridge/sdk-core/client/src/lib.rs +1286 -0
  17. data/bridge/sdk-core/client/src/metrics.rs +165 -0
  18. data/bridge/sdk-core/client/src/raw.rs +932 -0
  19. data/bridge/sdk-core/client/src/retry.rs +751 -0
  20. data/bridge/sdk-core/client/src/workflow_handle/mod.rs +185 -0
  21. data/bridge/sdk-core/core/Cargo.toml +116 -0
  22. data/bridge/sdk-core/core/LICENSE.txt +23 -0
  23. data/bridge/sdk-core/core/benches/workflow_replay.rs +76 -0
  24. data/bridge/sdk-core/core/src/abstractions.rs +166 -0
  25. data/bridge/sdk-core/core/src/core_tests/activity_tasks.rs +1014 -0
  26. data/bridge/sdk-core/core/src/core_tests/child_workflows.rs +221 -0
  27. data/bridge/sdk-core/core/src/core_tests/determinism.rs +107 -0
  28. data/bridge/sdk-core/core/src/core_tests/local_activities.rs +925 -0
  29. data/bridge/sdk-core/core/src/core_tests/mod.rs +100 -0
  30. data/bridge/sdk-core/core/src/core_tests/queries.rs +894 -0
  31. data/bridge/sdk-core/core/src/core_tests/replay_flag.rs +65 -0
  32. data/bridge/sdk-core/core/src/core_tests/workers.rs +259 -0
  33. data/bridge/sdk-core/core/src/core_tests/workflow_cancels.rs +124 -0
  34. data/bridge/sdk-core/core/src/core_tests/workflow_tasks.rs +2090 -0
  35. data/bridge/sdk-core/core/src/ephemeral_server/mod.rs +515 -0
  36. data/bridge/sdk-core/core/src/lib.rs +282 -0
  37. data/bridge/sdk-core/core/src/pollers/mod.rs +54 -0
  38. data/bridge/sdk-core/core/src/pollers/poll_buffer.rs +297 -0
  39. data/bridge/sdk-core/core/src/protosext/mod.rs +428 -0
  40. data/bridge/sdk-core/core/src/replay/mod.rs +215 -0
  41. data/bridge/sdk-core/core/src/retry_logic.rs +202 -0
  42. data/bridge/sdk-core/core/src/telemetry/log_export.rs +190 -0
  43. data/bridge/sdk-core/core/src/telemetry/metrics.rs +428 -0
  44. data/bridge/sdk-core/core/src/telemetry/mod.rs +407 -0
  45. data/bridge/sdk-core/core/src/telemetry/prometheus_server.rs +78 -0
  46. data/bridge/sdk-core/core/src/test_help/mod.rs +889 -0
  47. data/bridge/sdk-core/core/src/worker/activities/activity_heartbeat_manager.rs +580 -0
  48. data/bridge/sdk-core/core/src/worker/activities/local_activities.rs +1048 -0
  49. data/bridge/sdk-core/core/src/worker/activities.rs +481 -0
  50. data/bridge/sdk-core/core/src/worker/client/mocks.rs +87 -0
  51. data/bridge/sdk-core/core/src/worker/client.rs +373 -0
  52. data/bridge/sdk-core/core/src/worker/mod.rs +570 -0
  53. data/bridge/sdk-core/core/src/worker/workflow/bridge.rs +37 -0
  54. data/bridge/sdk-core/core/src/worker/workflow/driven_workflow.rs +101 -0
  55. data/bridge/sdk-core/core/src/worker/workflow/history_update.rs +532 -0
  56. data/bridge/sdk-core/core/src/worker/workflow/machines/activity_state_machine.rs +907 -0
  57. data/bridge/sdk-core/core/src/worker/workflow/machines/cancel_external_state_machine.rs +294 -0
  58. data/bridge/sdk-core/core/src/worker/workflow/machines/cancel_workflow_state_machine.rs +167 -0
  59. data/bridge/sdk-core/core/src/worker/workflow/machines/child_workflow_state_machine.rs +858 -0
  60. data/bridge/sdk-core/core/src/worker/workflow/machines/complete_workflow_state_machine.rs +136 -0
  61. data/bridge/sdk-core/core/src/worker/workflow/machines/continue_as_new_workflow_state_machine.rs +157 -0
  62. data/bridge/sdk-core/core/src/worker/workflow/machines/fail_workflow_state_machine.rs +129 -0
  63. data/bridge/sdk-core/core/src/worker/workflow/machines/local_activity_state_machine.rs +1450 -0
  64. data/bridge/sdk-core/core/src/worker/workflow/machines/mod.rs +316 -0
  65. data/bridge/sdk-core/core/src/worker/workflow/machines/modify_workflow_properties_state_machine.rs +178 -0
  66. data/bridge/sdk-core/core/src/worker/workflow/machines/patch_state_machine.rs +708 -0
  67. data/bridge/sdk-core/core/src/worker/workflow/machines/signal_external_state_machine.rs +439 -0
  68. data/bridge/sdk-core/core/src/worker/workflow/machines/timer_state_machine.rs +435 -0
  69. data/bridge/sdk-core/core/src/worker/workflow/machines/transition_coverage.rs +175 -0
  70. data/bridge/sdk-core/core/src/worker/workflow/machines/upsert_search_attributes_state_machine.rs +242 -0
  71. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_machines/local_acts.rs +96 -0
  72. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_machines.rs +1200 -0
  73. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_task_state_machine.rs +272 -0
  74. data/bridge/sdk-core/core/src/worker/workflow/managed_run/managed_wf_test.rs +198 -0
  75. data/bridge/sdk-core/core/src/worker/workflow/managed_run.rs +655 -0
  76. data/bridge/sdk-core/core/src/worker/workflow/mod.rs +1200 -0
  77. data/bridge/sdk-core/core/src/worker/workflow/run_cache.rs +145 -0
  78. data/bridge/sdk-core/core/src/worker/workflow/wft_poller.rs +88 -0
  79. data/bridge/sdk-core/core/src/worker/workflow/workflow_stream.rs +985 -0
  80. data/bridge/sdk-core/core-api/Cargo.toml +32 -0
  81. data/bridge/sdk-core/core-api/LICENSE.txt +23 -0
  82. data/bridge/sdk-core/core-api/src/errors.rs +95 -0
  83. data/bridge/sdk-core/core-api/src/lib.rs +109 -0
  84. data/bridge/sdk-core/core-api/src/telemetry.rs +147 -0
  85. data/bridge/sdk-core/core-api/src/worker.rs +148 -0
  86. data/bridge/sdk-core/etc/deps.svg +162 -0
  87. data/bridge/sdk-core/etc/dynamic-config.yaml +2 -0
  88. data/bridge/sdk-core/etc/otel-collector-config.yaml +36 -0
  89. data/bridge/sdk-core/etc/prometheus.yaml +6 -0
  90. data/bridge/sdk-core/etc/regen-depgraph.sh +5 -0
  91. data/bridge/sdk-core/fsm/Cargo.toml +18 -0
  92. data/bridge/sdk-core/fsm/LICENSE.txt +23 -0
  93. data/bridge/sdk-core/fsm/README.md +3 -0
  94. data/bridge/sdk-core/fsm/rustfsm_procmacro/Cargo.toml +27 -0
  95. data/bridge/sdk-core/fsm/rustfsm_procmacro/LICENSE.txt +23 -0
  96. data/bridge/sdk-core/fsm/rustfsm_procmacro/src/lib.rs +647 -0
  97. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/progress.rs +8 -0
  98. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/dupe_transitions_fail.rs +18 -0
  99. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/dupe_transitions_fail.stderr +12 -0
  100. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/dynamic_dest_pass.rs +41 -0
  101. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/forgot_name_fail.rs +14 -0
  102. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/forgot_name_fail.stderr +11 -0
  103. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/handler_arg_pass.rs +32 -0
  104. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/handler_pass.rs +31 -0
  105. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/medium_complex_pass.rs +46 -0
  106. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/no_handle_conversions_require_into_fail.rs +29 -0
  107. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/no_handle_conversions_require_into_fail.stderr +12 -0
  108. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/simple_pass.rs +32 -0
  109. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/struct_event_variant_fail.rs +18 -0
  110. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/struct_event_variant_fail.stderr +5 -0
  111. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_more_item_event_variant_fail.rs +11 -0
  112. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_more_item_event_variant_fail.stderr +5 -0
  113. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_zero_item_event_variant_fail.rs +11 -0
  114. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_zero_item_event_variant_fail.stderr +5 -0
  115. data/bridge/sdk-core/fsm/rustfsm_trait/Cargo.toml +14 -0
  116. data/bridge/sdk-core/fsm/rustfsm_trait/LICENSE.txt +23 -0
  117. data/bridge/sdk-core/fsm/rustfsm_trait/src/lib.rs +249 -0
  118. data/bridge/sdk-core/fsm/src/lib.rs +2 -0
  119. data/bridge/sdk-core/histories/evict_while_la_running_no_interference-23_history.bin +0 -0
  120. data/bridge/sdk-core/histories/evict_while_la_running_no_interference-85_history.bin +0 -0
  121. data/bridge/sdk-core/histories/fail_wf_task.bin +0 -0
  122. data/bridge/sdk-core/histories/timer_workflow_history.bin +0 -0
  123. data/bridge/sdk-core/integ-with-otel.sh +7 -0
  124. data/bridge/sdk-core/protos/api_upstream/README.md +9 -0
  125. data/bridge/sdk-core/protos/api_upstream/api-linter.yaml +40 -0
  126. data/bridge/sdk-core/protos/api_upstream/buf.yaml +9 -0
  127. data/bridge/sdk-core/protos/api_upstream/build/go.mod +7 -0
  128. data/bridge/sdk-core/protos/api_upstream/build/go.sum +5 -0
  129. data/bridge/sdk-core/protos/api_upstream/build/tools.go +29 -0
  130. data/bridge/sdk-core/protos/api_upstream/dependencies/gogoproto/gogo.proto +141 -0
  131. data/bridge/sdk-core/protos/api_upstream/go.mod +6 -0
  132. data/bridge/sdk-core/protos/api_upstream/temporal/api/batch/v1/message.proto +89 -0
  133. data/bridge/sdk-core/protos/api_upstream/temporal/api/command/v1/message.proto +260 -0
  134. data/bridge/sdk-core/protos/api_upstream/temporal/api/common/v1/message.proto +112 -0
  135. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/batch_operation.proto +47 -0
  136. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/command_type.proto +57 -0
  137. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/common.proto +56 -0
  138. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/event_type.proto +170 -0
  139. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/failed_cause.proto +118 -0
  140. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/interaction_type.proto +39 -0
  141. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/namespace.proto +51 -0
  142. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/query.proto +50 -0
  143. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/reset.proto +41 -0
  144. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/schedule.proto +60 -0
  145. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/task_queue.proto +59 -0
  146. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/update.proto +40 -0
  147. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/workflow.proto +122 -0
  148. data/bridge/sdk-core/protos/api_upstream/temporal/api/errordetails/v1/message.proto +108 -0
  149. data/bridge/sdk-core/protos/api_upstream/temporal/api/failure/v1/message.proto +114 -0
  150. data/bridge/sdk-core/protos/api_upstream/temporal/api/filter/v1/message.proto +56 -0
  151. data/bridge/sdk-core/protos/api_upstream/temporal/api/history/v1/message.proto +758 -0
  152. data/bridge/sdk-core/protos/api_upstream/temporal/api/interaction/v1/message.proto +87 -0
  153. data/bridge/sdk-core/protos/api_upstream/temporal/api/namespace/v1/message.proto +97 -0
  154. data/bridge/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/request_response.proto +121 -0
  155. data/bridge/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/service.proto +80 -0
  156. data/bridge/sdk-core/protos/api_upstream/temporal/api/query/v1/message.proto +61 -0
  157. data/bridge/sdk-core/protos/api_upstream/temporal/api/replication/v1/message.proto +55 -0
  158. data/bridge/sdk-core/protos/api_upstream/temporal/api/schedule/v1/message.proto +379 -0
  159. data/bridge/sdk-core/protos/api_upstream/temporal/api/taskqueue/v1/message.proto +108 -0
  160. data/bridge/sdk-core/protos/api_upstream/temporal/api/version/v1/message.proto +59 -0
  161. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflow/v1/message.proto +146 -0
  162. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/request_response.proto +1168 -0
  163. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/service.proto +415 -0
  164. data/bridge/sdk-core/protos/grpc/health/v1/health.proto +63 -0
  165. data/bridge/sdk-core/protos/local/temporal/sdk/core/activity_result/activity_result.proto +78 -0
  166. data/bridge/sdk-core/protos/local/temporal/sdk/core/activity_task/activity_task.proto +79 -0
  167. data/bridge/sdk-core/protos/local/temporal/sdk/core/child_workflow/child_workflow.proto +77 -0
  168. data/bridge/sdk-core/protos/local/temporal/sdk/core/common/common.proto +15 -0
  169. data/bridge/sdk-core/protos/local/temporal/sdk/core/core_interface.proto +30 -0
  170. data/bridge/sdk-core/protos/local/temporal/sdk/core/external_data/external_data.proto +30 -0
  171. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_activation/workflow_activation.proto +263 -0
  172. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_commands/workflow_commands.proto +304 -0
  173. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_completion/workflow_completion.proto +29 -0
  174. data/bridge/sdk-core/protos/testsrv_upstream/api-linter.yaml +38 -0
  175. data/bridge/sdk-core/protos/testsrv_upstream/buf.yaml +13 -0
  176. data/bridge/sdk-core/protos/testsrv_upstream/dependencies/gogoproto/gogo.proto +141 -0
  177. data/bridge/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/request_response.proto +63 -0
  178. data/bridge/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/service.proto +90 -0
  179. data/bridge/sdk-core/rustfmt.toml +1 -0
  180. data/bridge/sdk-core/sdk/Cargo.toml +47 -0
  181. data/bridge/sdk-core/sdk/LICENSE.txt +23 -0
  182. data/bridge/sdk-core/sdk/src/activity_context.rs +230 -0
  183. data/bridge/sdk-core/sdk/src/app_data.rs +37 -0
  184. data/bridge/sdk-core/sdk/src/interceptors.rs +50 -0
  185. data/bridge/sdk-core/sdk/src/lib.rs +794 -0
  186. data/bridge/sdk-core/sdk/src/payload_converter.rs +11 -0
  187. data/bridge/sdk-core/sdk/src/workflow_context/options.rs +295 -0
  188. data/bridge/sdk-core/sdk/src/workflow_context.rs +694 -0
  189. data/bridge/sdk-core/sdk/src/workflow_future.rs +499 -0
  190. data/bridge/sdk-core/sdk-core-protos/Cargo.toml +30 -0
  191. data/bridge/sdk-core/sdk-core-protos/LICENSE.txt +23 -0
  192. data/bridge/sdk-core/sdk-core-protos/build.rs +107 -0
  193. data/bridge/sdk-core/sdk-core-protos/src/constants.rs +7 -0
  194. data/bridge/sdk-core/sdk-core-protos/src/history_builder.rs +544 -0
  195. data/bridge/sdk-core/sdk-core-protos/src/history_info.rs +230 -0
  196. data/bridge/sdk-core/sdk-core-protos/src/lib.rs +1970 -0
  197. data/bridge/sdk-core/sdk-core-protos/src/task_token.rs +38 -0
  198. data/bridge/sdk-core/sdk-core-protos/src/utilities.rs +14 -0
  199. data/bridge/sdk-core/test-utils/Cargo.toml +36 -0
  200. data/bridge/sdk-core/test-utils/src/canned_histories.rs +1579 -0
  201. data/bridge/sdk-core/test-utils/src/histfetch.rs +28 -0
  202. data/bridge/sdk-core/test-utils/src/lib.rs +650 -0
  203. data/bridge/sdk-core/tests/integ_tests/client_tests.rs +36 -0
  204. data/bridge/sdk-core/tests/integ_tests/ephemeral_server_tests.rs +128 -0
  205. data/bridge/sdk-core/tests/integ_tests/heartbeat_tests.rs +221 -0
  206. data/bridge/sdk-core/tests/integ_tests/metrics_tests.rs +37 -0
  207. data/bridge/sdk-core/tests/integ_tests/polling_tests.rs +133 -0
  208. data/bridge/sdk-core/tests/integ_tests/queries_tests.rs +437 -0
  209. data/bridge/sdk-core/tests/integ_tests/visibility_tests.rs +93 -0
  210. data/bridge/sdk-core/tests/integ_tests/workflow_tests/activities.rs +878 -0
  211. data/bridge/sdk-core/tests/integ_tests/workflow_tests/appdata_propagation.rs +61 -0
  212. data/bridge/sdk-core/tests/integ_tests/workflow_tests/cancel_external.rs +59 -0
  213. data/bridge/sdk-core/tests/integ_tests/workflow_tests/cancel_wf.rs +58 -0
  214. data/bridge/sdk-core/tests/integ_tests/workflow_tests/child_workflows.rs +50 -0
  215. data/bridge/sdk-core/tests/integ_tests/workflow_tests/continue_as_new.rs +60 -0
  216. data/bridge/sdk-core/tests/integ_tests/workflow_tests/determinism.rs +54 -0
  217. data/bridge/sdk-core/tests/integ_tests/workflow_tests/local_activities.rs +788 -0
  218. data/bridge/sdk-core/tests/integ_tests/workflow_tests/modify_wf_properties.rs +53 -0
  219. data/bridge/sdk-core/tests/integ_tests/workflow_tests/patches.rs +113 -0
  220. data/bridge/sdk-core/tests/integ_tests/workflow_tests/replay.rs +223 -0
  221. data/bridge/sdk-core/tests/integ_tests/workflow_tests/resets.rs +93 -0
  222. data/bridge/sdk-core/tests/integ_tests/workflow_tests/signals.rs +167 -0
  223. data/bridge/sdk-core/tests/integ_tests/workflow_tests/stickyness.rs +99 -0
  224. data/bridge/sdk-core/tests/integ_tests/workflow_tests/timers.rs +131 -0
  225. data/bridge/sdk-core/tests/integ_tests/workflow_tests/upsert_search_attrs.rs +75 -0
  226. data/bridge/sdk-core/tests/integ_tests/workflow_tests.rs +597 -0
  227. data/bridge/sdk-core/tests/load_tests.rs +191 -0
  228. data/bridge/sdk-core/tests/main.rs +113 -0
  229. data/bridge/sdk-core/tests/runner.rs +93 -0
  230. data/bridge/src/connection.rs +186 -0
  231. data/bridge/src/lib.rs +239 -0
  232. data/bridge/src/runtime.rs +54 -0
  233. data/bridge/src/worker.rs +124 -0
  234. data/ext/Rakefile +9 -0
  235. data/lib/bridge.so +0 -0
  236. data/lib/gen/dependencies/gogoproto/gogo_pb.rb +14 -0
  237. data/lib/gen/temporal/api/batch/v1/message_pb.rb +50 -0
  238. data/lib/gen/temporal/api/command/v1/message_pb.rb +174 -0
  239. data/lib/gen/temporal/api/common/v1/message_pb.rb +69 -0
  240. data/lib/gen/temporal/api/enums/v1/batch_operation_pb.rb +33 -0
  241. data/lib/gen/temporal/api/enums/v1/command_type_pb.rb +39 -0
  242. data/lib/gen/temporal/api/enums/v1/common_pb.rb +42 -0
  243. data/lib/gen/temporal/api/enums/v1/event_type_pb.rb +68 -0
  244. data/lib/gen/temporal/api/enums/v1/failed_cause_pb.rb +77 -0
  245. data/lib/gen/temporal/api/enums/v1/interaction_type_pb.rb +25 -0
  246. data/lib/gen/temporal/api/enums/v1/namespace_pb.rb +37 -0
  247. data/lib/gen/temporal/api/enums/v1/query_pb.rb +31 -0
  248. data/lib/gen/temporal/api/enums/v1/reset_pb.rb +24 -0
  249. data/lib/gen/temporal/api/enums/v1/schedule_pb.rb +28 -0
  250. data/lib/gen/temporal/api/enums/v1/task_queue_pb.rb +30 -0
  251. data/lib/gen/temporal/api/enums/v1/update_pb.rb +23 -0
  252. data/lib/gen/temporal/api/enums/v1/workflow_pb.rb +89 -0
  253. data/lib/gen/temporal/api/errordetails/v1/message_pb.rb +84 -0
  254. data/lib/gen/temporal/api/failure/v1/message_pb.rb +83 -0
  255. data/lib/gen/temporal/api/filter/v1/message_pb.rb +40 -0
  256. data/lib/gen/temporal/api/history/v1/message_pb.rb +490 -0
  257. data/lib/gen/temporal/api/interaction/v1/message_pb.rb +49 -0
  258. data/lib/gen/temporal/api/namespace/v1/message_pb.rb +63 -0
  259. data/lib/gen/temporal/api/operatorservice/v1/request_response_pb.rb +85 -0
  260. data/lib/gen/temporal/api/operatorservice/v1/service_pb.rb +20 -0
  261. data/lib/gen/temporal/api/query/v1/message_pb.rb +38 -0
  262. data/lib/gen/temporal/api/replication/v1/message_pb.rb +37 -0
  263. data/lib/gen/temporal/api/schedule/v1/message_pb.rb +149 -0
  264. data/lib/gen/temporal/api/taskqueue/v1/message_pb.rb +73 -0
  265. data/lib/gen/temporal/api/version/v1/message_pb.rb +41 -0
  266. data/lib/gen/temporal/api/workflow/v1/message_pb.rb +111 -0
  267. data/lib/gen/temporal/api/workflowservice/v1/request_response_pb.rb +788 -0
  268. data/lib/gen/temporal/api/workflowservice/v1/service_pb.rb +20 -0
  269. data/lib/gen/temporal/sdk/core/activity_result/activity_result_pb.rb +58 -0
  270. data/lib/gen/temporal/sdk/core/activity_task/activity_task_pb.rb +57 -0
  271. data/lib/gen/temporal/sdk/core/bridge/bridge_pb.rb +222 -0
  272. data/lib/gen/temporal/sdk/core/child_workflow/child_workflow_pb.rb +57 -0
  273. data/lib/gen/temporal/sdk/core/common/common_pb.rb +22 -0
  274. data/lib/gen/temporal/sdk/core/core_interface_pb.rb +34 -0
  275. data/lib/gen/temporal/sdk/core/external_data/external_data_pb.rb +27 -0
  276. data/lib/gen/temporal/sdk/core/workflow_activation/workflow_activation_pb.rb +165 -0
  277. data/lib/gen/temporal/sdk/core/workflow_commands/workflow_commands_pb.rb +196 -0
  278. data/lib/gen/temporal/sdk/core/workflow_completion/workflow_completion_pb.rb +34 -0
  279. data/lib/temporalio/activity/context.rb +97 -0
  280. data/lib/temporalio/activity/info.rb +67 -0
  281. data/lib/temporalio/activity.rb +85 -0
  282. data/lib/temporalio/bridge/error.rb +8 -0
  283. data/lib/temporalio/bridge.rb +14 -0
  284. data/lib/temporalio/client/implementation.rb +340 -0
  285. data/lib/temporalio/client/workflow_handle.rb +243 -0
  286. data/lib/temporalio/client.rb +131 -0
  287. data/lib/temporalio/connection.rb +751 -0
  288. data/lib/temporalio/data_converter.rb +191 -0
  289. data/lib/temporalio/error/failure.rb +194 -0
  290. data/lib/temporalio/error/workflow_failure.rb +19 -0
  291. data/lib/temporalio/errors.rb +40 -0
  292. data/lib/temporalio/failure_converter/base.rb +26 -0
  293. data/lib/temporalio/failure_converter/basic.rb +319 -0
  294. data/lib/temporalio/failure_converter.rb +7 -0
  295. data/lib/temporalio/interceptor/chain.rb +28 -0
  296. data/lib/temporalio/interceptor/client.rb +123 -0
  297. data/lib/temporalio/payload_codec/base.rb +32 -0
  298. data/lib/temporalio/payload_converter/base.rb +24 -0
  299. data/lib/temporalio/payload_converter/bytes.rb +27 -0
  300. data/lib/temporalio/payload_converter/composite.rb +49 -0
  301. data/lib/temporalio/payload_converter/encoding_base.rb +35 -0
  302. data/lib/temporalio/payload_converter/json.rb +26 -0
  303. data/lib/temporalio/payload_converter/nil.rb +26 -0
  304. data/lib/temporalio/payload_converter.rb +14 -0
  305. data/lib/temporalio/retry_policy.rb +82 -0
  306. data/lib/temporalio/retry_state.rb +35 -0
  307. data/lib/temporalio/runtime.rb +25 -0
  308. data/lib/temporalio/timeout_type.rb +29 -0
  309. data/lib/temporalio/version.rb +3 -0
  310. data/lib/temporalio/worker/activity_runner.rb +92 -0
  311. data/lib/temporalio/worker/activity_worker.rb +138 -0
  312. data/lib/temporalio/worker/reactor.rb +46 -0
  313. data/lib/temporalio/worker/runner.rb +63 -0
  314. data/lib/temporalio/worker/sync_worker.rb +88 -0
  315. data/lib/temporalio/worker/thread_pool_executor.rb +51 -0
  316. data/lib/temporalio/worker.rb +198 -0
  317. data/lib/temporalio/workflow/execution_info.rb +54 -0
  318. data/lib/temporalio/workflow/execution_status.rb +36 -0
  319. data/lib/temporalio/workflow/id_reuse_policy.rb +36 -0
  320. data/lib/temporalio/workflow/query_reject_condition.rb +33 -0
  321. data/lib/temporalio.rb +12 -1
  322. data/lib/thermite_patch.rb +23 -0
  323. data/temporalio.gemspec +45 -0
  324. metadata +566 -9
  325. data/lib/temporal/version.rb +0 -3
  326. data/lib/temporal.rb +0 -4
  327. data/temporal.gemspec +0 -20
@@ -0,0 +1,751 @@
1
+ require 'temporal/api/workflowservice/v1/request_response_pb'
2
+ require 'temporalio/bridge'
3
+ require 'temporalio/errors'
4
+ require 'temporalio/runtime'
5
+ require 'uri'
6
+
7
+ module Temporalio
8
+ # A connection to the Temporal server.
9
+ #
10
+ # This is used to instantiate a {Temporalio::Client}. But it also can be used for a direct
11
+ # interaction with the API.
12
+ class Connection
13
+ # @api private
14
+ attr_reader :core_connection
15
+
16
+ # @param host [String] `host:port` for the Temporal server. For local development, this is
17
+ # often `"localhost:7233"`.
18
+ def initialize(host)
19
+ url = parse_url(host)
20
+ runtime = Temporalio::Runtime.instance
21
+ @core_connection = Temporalio::Bridge::Connection.connect(runtime.core_runtime, url)
22
+ end
23
+
24
+ # @param request [Temporalio::Api::WorkflowService::V1::RegisterNamespaceRequest]
25
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
26
+ # Keys here override client-level RPC metadata keys.
27
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
28
+ #
29
+ # @return [Temporalio::Api::WorkflowService::V1::RegisterNamespaceResponse]
30
+ def register_namespace(request, metadata: {}, timeout: nil)
31
+ encoded = Temporalio::Api::WorkflowService::V1::RegisterNamespaceRequest.encode(request)
32
+ response = core_connection.call(:register_namespace, encoded, metadata, timeout)
33
+
34
+ Temporalio::Api::WorkflowService::V1::RegisterNamespaceResponse.decode(response)
35
+ end
36
+
37
+ # @param request [Temporalio::Api::WorkflowService::V1::DescribeNamespaceRequest]
38
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
39
+ # Keys here override client-level RPC metadata keys.
40
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
41
+ #
42
+ # @return [Temporalio::Api::WorkflowService::V1::DescribeNamespaceResponse]
43
+ def describe_namespace(request, metadata: {}, timeout: nil)
44
+ encoded = Temporalio::Api::WorkflowService::V1::DescribeNamespaceRequest.encode(request)
45
+ response = core_connection.call(:describe_namespace, encoded, metadata, timeout)
46
+
47
+ Temporalio::Api::WorkflowService::V1::DescribeNamespaceResponse.decode(response)
48
+ end
49
+
50
+ # @param request [Temporalio::Api::WorkflowService::V1::ListNamespacesRequest]
51
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
52
+ # Keys here override client-level RPC metadata keys.
53
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
54
+ #
55
+ # @return [Temporalio::Api::WorkflowService::V1::ListNamespacesResponse]
56
+ def list_namespaces(request, metadata: {}, timeout: nil)
57
+ encoded = Temporalio::Api::WorkflowService::V1::ListNamespacesRequest.encode(request)
58
+ response = core_connection.call(:list_namespaces, encoded, metadata, timeout)
59
+
60
+ Temporalio::Api::WorkflowService::V1::ListNamespacesResponse.decode(response)
61
+ end
62
+
63
+ # @param request [Temporalio::Api::WorkflowService::V1::UpdateNamespaceRequest]
64
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
65
+ # Keys here override client-level RPC metadata keys.
66
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
67
+ #
68
+ # @return [Temporalio::Api::WorkflowService::V1::UpdateNamespaceResponse]
69
+ def update_namespace(request, metadata: {}, timeout: nil)
70
+ encoded = Temporalio::Api::WorkflowService::V1::UpdateNamespaceRequest.encode(request)
71
+ response = core_connection.call(:update_namespace, encoded, metadata, timeout)
72
+
73
+ Temporalio::Api::WorkflowService::V1::UpdateNamespaceResponse.decode(response)
74
+ end
75
+
76
+ # @param request [Temporalio::Api::WorkflowService::V1::DeprecateNamespaceRequest]
77
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
78
+ # Keys here override client-level RPC metadata keys.
79
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
80
+ #
81
+ # @return [Temporalio::Api::WorkflowService::V1::DeprecateNamespaceResponse]
82
+ def deprecate_namespace(request, metadata: {}, timeout: nil)
83
+ encoded = Temporalio::Api::WorkflowService::V1::DeprecateNamespaceRequest.encode(request)
84
+ response = core_connection.call(:deprecate_namespace, encoded, metadata, timeout)
85
+
86
+ Temporalio::Api::WorkflowService::V1::DeprecateNamespaceResponse.decode(response)
87
+ end
88
+
89
+ # @param request [Temporalio::Api::WorkflowService::V1::StartWorkflowExecutionRequest]
90
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
91
+ # Keys here override client-level RPC metadata keys.
92
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
93
+ #
94
+ # @return [Temporalio::Api::WorkflowService::V1::StartWorkflowExecutionResponse]
95
+ def start_workflow_execution(request, metadata: {}, timeout: nil)
96
+ encoded = Temporalio::Api::WorkflowService::V1::StartWorkflowExecutionRequest.encode(request)
97
+ response = core_connection.call(:start_workflow_execution, encoded, metadata, timeout)
98
+
99
+ Temporalio::Api::WorkflowService::V1::StartWorkflowExecutionResponse.decode(response)
100
+ end
101
+
102
+ # @param request [Temporalio::Api::WorkflowService::V1::GetWorkflowExecutionHistoryRequest]
103
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
104
+ # Keys here override client-level RPC metadata keys.
105
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
106
+ #
107
+ # @return [Temporalio::Api::WorkflowService::V1::GetWorkflowExecutionHistoryResponse]
108
+ def get_workflow_execution_history(request, metadata: {}, timeout: nil)
109
+ encoded = Temporalio::Api::WorkflowService::V1::GetWorkflowExecutionHistoryRequest.encode(request)
110
+ response = core_connection.call(:get_workflow_execution_history, encoded, metadata, timeout)
111
+
112
+ Temporalio::Api::WorkflowService::V1::GetWorkflowExecutionHistoryResponse.decode(response)
113
+ end
114
+
115
+ # @param request [Temporalio::Api::WorkflowService::V1::GetWorkflowExecutionHistoryReverseRequest]
116
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
117
+ # Keys here override client-level RPC metadata keys.
118
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
119
+ #
120
+ # @return [Temporalio::Api::WorkflowService::V1::GetWorkflowExecutionHistoryReverseResponse]
121
+ def get_workflow_execution_history_reverse(request, metadata: {}, timeout: nil)
122
+ encoded = Temporalio::Api::WorkflowService::V1::GetWorkflowExecutionHistoryReverseRequest.encode(request)
123
+ response = core_connection.call(:get_workflow_execution_history_reverse, encoded, metadata, timeout)
124
+
125
+ Temporalio::Api::WorkflowService::V1::GetWorkflowExecutionHistoryReverseResponse.decode(response)
126
+ end
127
+
128
+ # @param request [Temporalio::Api::WorkflowService::V1::PollWorkflowTaskQueueRequest]
129
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
130
+ # Keys here override client-level RPC metadata keys.
131
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
132
+ #
133
+ # @return [Temporalio::Api::WorkflowService::V1::PollWorkflowTaskQueueResponse]
134
+ def poll_workflow_task_queue(request, metadata: {}, timeout: nil)
135
+ encoded = Temporalio::Api::WorkflowService::V1::PollWorkflowTaskQueueRequest.encode(request)
136
+ response = core_connection.call(:poll_workflow_task_queue, encoded, metadata, timeout)
137
+
138
+ Temporalio::Api::WorkflowService::V1::PollWorkflowTaskQueueResponse.decode(response)
139
+ end
140
+
141
+ # @param request [Temporalio::Api::WorkflowService::V1::RespondWorkflowTaskCompletedRequest]
142
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
143
+ # Keys here override client-level RPC metadata keys.
144
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
145
+ #
146
+ # @return [Temporalio::Api::WorkflowService::V1::RespondWorkflowTaskCompletedResponse]
147
+ def respond_workflow_task_completed(request, metadata: {}, timeout: nil)
148
+ encoded = Temporalio::Api::WorkflowService::V1::RespondWorkflowTaskCompletedRequest.encode(request)
149
+ response = core_connection.call(:respond_workflow_task_completed, encoded, metadata, timeout)
150
+
151
+ Temporalio::Api::WorkflowService::V1::RespondWorkflowTaskCompletedResponse.decode(response)
152
+ end
153
+
154
+ # @param request [Temporalio::Api::WorkflowService::V1::RespondWorkflowTaskFailedRequest]
155
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
156
+ # Keys here override client-level RPC metadata keys.
157
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
158
+ #
159
+ # @return [Temporalio::Api::WorkflowService::V1::RespondWorkflowTaskFailedResponse]
160
+ def respond_workflow_task_failed(request, metadata: {}, timeout: nil)
161
+ encoded = Temporalio::Api::WorkflowService::V1::RespondWorkflowTaskFailedRequest.encode(request)
162
+ response = core_connection.call(:respond_workflow_task_failed, encoded, metadata, timeout)
163
+
164
+ Temporalio::Api::WorkflowService::V1::RespondWorkflowTaskFailedResponse.decode(response)
165
+ end
166
+
167
+ # @param request [Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueRequest]
168
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
169
+ # Keys here override client-level RPC metadata keys.
170
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
171
+ #
172
+ # @return [Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse]
173
+ def poll_activity_task_queue(request, metadata: {}, timeout: nil)
174
+ encoded = Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueRequest.encode(request)
175
+ response = core_connection.call(:poll_activity_task_queue, encoded, metadata, timeout)
176
+
177
+ Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse.decode(response)
178
+ end
179
+
180
+ # @param request [Temporalio::Api::WorkflowService::V1::RecordActivityTaskHeartbeatRequest]
181
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
182
+ # Keys here override client-level RPC metadata keys.
183
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
184
+ #
185
+ # @return [Temporalio::Api::WorkflowService::V1::RecordActivityTaskHeartbeatResponse]
186
+ def record_activity_task_heartbeat(request, metadata: {}, timeout: nil)
187
+ encoded = Temporalio::Api::WorkflowService::V1::RecordActivityTaskHeartbeatRequest.encode(request)
188
+ response = core_connection.call(:record_activity_task_heartbeat, encoded, metadata, timeout)
189
+
190
+ Temporalio::Api::WorkflowService::V1::RecordActivityTaskHeartbeatResponse.decode(response)
191
+ end
192
+
193
+ # @param request [Temporalio::Api::WorkflowService::V1::RecordActivityTaskHeartbeatByIdRequest]
194
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
195
+ # Keys here override client-level RPC metadata keys.
196
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
197
+ #
198
+ # @return [Temporalio::Api::WorkflowService::V1::RecordActivityTaskHeartbeatByIdResponse]
199
+ def record_activity_task_heartbeat_by_id(request, metadata: {}, timeout: nil)
200
+ encoded = Temporalio::Api::WorkflowService::V1::RecordActivityTaskHeartbeatByIdRequest.encode(request)
201
+ response = core_connection.call(:record_activity_task_heartbeat_by_id, encoded, metadata, timeout)
202
+
203
+ Temporalio::Api::WorkflowService::V1::RecordActivityTaskHeartbeatByIdResponse.decode(response)
204
+ end
205
+
206
+ # @param request [Temporalio::Api::WorkflowService::V1::RespondActivityTaskCompletedRequest]
207
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
208
+ # Keys here override client-level RPC metadata keys.
209
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
210
+ #
211
+ # @return [Temporalio::Api::WorkflowService::V1::RespondActivityTaskCompletedResponse]
212
+ def respond_activity_task_completed(request, metadata: {}, timeout: nil)
213
+ encoded = Temporalio::Api::WorkflowService::V1::RespondActivityTaskCompletedRequest.encode(request)
214
+ response = core_connection.call(:respond_activity_task_completed, encoded, metadata, timeout)
215
+
216
+ Temporalio::Api::WorkflowService::V1::RespondActivityTaskCompletedResponse.decode(response)
217
+ end
218
+
219
+ # @param request [Temporalio::Api::WorkflowService::V1::RespondActivityTaskCompletedByIdRequest]
220
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
221
+ # Keys here override client-level RPC metadata keys.
222
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
223
+ #
224
+ # @return [Temporalio::Api::WorkflowService::V1::RespondActivityTaskCompletedByIdResponse]
225
+ def respond_activity_task_completed_by_id(request, metadata: {}, timeout: nil)
226
+ encoded = Temporalio::Api::WorkflowService::V1::RespondActivityTaskCompletedByIdRequest.encode(request)
227
+ response = core_connection.call(:respond_activity_task_completed_by_id, encoded, metadata, timeout)
228
+
229
+ Temporalio::Api::WorkflowService::V1::RespondActivityTaskCompletedByIdResponse.decode(response)
230
+ end
231
+
232
+ # @param request [Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedRequest]
233
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
234
+ # Keys here override client-level RPC metadata keys.
235
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
236
+ #
237
+ # @return [Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedResponse]
238
+ def respond_activity_task_failed(request, metadata: {}, timeout: nil)
239
+ encoded = Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedRequest.encode(request)
240
+ response = core_connection.call(:respond_activity_task_failed, encoded, metadata, timeout)
241
+
242
+ Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedResponse.decode(response)
243
+ end
244
+
245
+ # @param request [Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedByIdRequest]
246
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
247
+ # Keys here override client-level RPC metadata keys.
248
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
249
+ #
250
+ # @return [Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedByIdResponse]
251
+ def respond_activity_task_failed_by_id(request, metadata: {}, timeout: nil)
252
+ encoded = Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedByIdRequest.encode(request)
253
+ response = core_connection.call(:respond_activity_task_failed_by_id, encoded, metadata, timeout)
254
+
255
+ Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedByIdResponse.decode(response)
256
+ end
257
+
258
+ # @param request [Temporalio::Api::WorkflowService::V1::RespondActivityTaskCanceledRequest]
259
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
260
+ # Keys here override client-level RPC metadata keys.
261
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
262
+ #
263
+ # @return [Temporalio::Api::WorkflowService::V1::RespondActivityTaskCanceledResponse]
264
+ def respond_activity_task_canceled(request, metadata: {}, timeout: nil)
265
+ encoded = Temporalio::Api::WorkflowService::V1::RespondActivityTaskCanceledRequest.encode(request)
266
+ response = core_connection.call(:respond_activity_task_canceled, encoded, metadata, timeout)
267
+
268
+ Temporalio::Api::WorkflowService::V1::RespondActivityTaskCanceledResponse.decode(response)
269
+ end
270
+
271
+ # @param request [Temporalio::Api::WorkflowService::V1::RespondActivityTaskCanceledByIdRequest]
272
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
273
+ # Keys here override client-level RPC metadata keys.
274
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
275
+ #
276
+ # @return [Temporalio::Api::WorkflowService::V1::RespondActivityTaskCanceledByIdResponse]
277
+ def respond_activity_task_canceled_by_id(request, metadata: {}, timeout: nil)
278
+ encoded = Temporalio::Api::WorkflowService::V1::RespondActivityTaskCanceledByIdRequest.encode(request)
279
+ response = core_connection.call(:respond_activity_task_canceled_by_id, encoded, metadata, timeout)
280
+
281
+ Temporalio::Api::WorkflowService::V1::RespondActivityTaskCanceledByIdResponse.decode(response)
282
+ end
283
+
284
+ # @param request [Temporalio::Api::WorkflowService::V1::RequestCancelWorkflowExecutionRequest]
285
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
286
+ # Keys here override client-level RPC metadata keys.
287
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
288
+ #
289
+ # @return [Temporalio::Api::WorkflowService::V1::RequestCancelWorkflowExecutionResponse]
290
+ def request_cancel_workflow_execution(request, metadata: {}, timeout: nil)
291
+ encoded = Temporalio::Api::WorkflowService::V1::RequestCancelWorkflowExecutionRequest.encode(request)
292
+ response = core_connection.call(:request_cancel_workflow_execution, encoded, metadata, timeout)
293
+
294
+ Temporalio::Api::WorkflowService::V1::RequestCancelWorkflowExecutionResponse.decode(response)
295
+ end
296
+
297
+ # @param request [Temporalio::Api::WorkflowService::V1::SignalWorkflowExecutionRequest]
298
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
299
+ # Keys here override client-level RPC metadata keys.
300
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
301
+ #
302
+ # @return [Temporalio::Api::WorkflowService::V1::SignalWorkflowExecutionResponse]
303
+ def signal_workflow_execution(request, metadata: {}, timeout: nil)
304
+ encoded = Temporalio::Api::WorkflowService::V1::SignalWorkflowExecutionRequest.encode(request)
305
+ response = core_connection.call(:signal_workflow_execution, encoded, metadata, timeout)
306
+
307
+ Temporalio::Api::WorkflowService::V1::SignalWorkflowExecutionResponse.decode(response)
308
+ end
309
+
310
+ # @param request [Temporalio::Api::WorkflowService::V1::SignalWithStartWorkflowExecutionRequest]
311
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
312
+ # Keys here override client-level RPC metadata keys.
313
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
314
+ #
315
+ # @return [Temporalio::Api::WorkflowService::V1::SignalWithStartWorkflowExecutionResponse]
316
+ def signal_with_start_workflow_execution(request, metadata: {}, timeout: nil)
317
+ encoded = Temporalio::Api::WorkflowService::V1::SignalWithStartWorkflowExecutionRequest.encode(request)
318
+ response = core_connection.call(:signal_with_start_workflow_execution, encoded, metadata, timeout)
319
+
320
+ Temporalio::Api::WorkflowService::V1::SignalWithStartWorkflowExecutionResponse.decode(response)
321
+ end
322
+
323
+ # @param request [Temporalio::Api::WorkflowService::V1::ResetWorkflowExecutionRequest]
324
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
325
+ # Keys here override client-level RPC metadata keys.
326
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
327
+ #
328
+ # @return [Temporalio::Api::WorkflowService::V1::ResetWorkflowExecutionResponse]
329
+ def reset_workflow_execution(request, metadata: {}, timeout: nil)
330
+ encoded = Temporalio::Api::WorkflowService::V1::ResetWorkflowExecutionRequest.encode(request)
331
+ response = core_connection.call(:reset_workflow_execution, encoded, metadata, timeout)
332
+
333
+ Temporalio::Api::WorkflowService::V1::ResetWorkflowExecutionResponse.decode(response)
334
+ end
335
+
336
+ # @param request [Temporalio::Api::WorkflowService::V1::TerminateWorkflowExecutionRequest]
337
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
338
+ # Keys here override client-level RPC metadata keys.
339
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
340
+ #
341
+ # @return [Temporalio::Api::WorkflowService::V1::TerminateWorkflowExecutionResponse]
342
+ def terminate_workflow_execution(request, metadata: {}, timeout: nil)
343
+ encoded = Temporalio::Api::WorkflowService::V1::TerminateWorkflowExecutionRequest.encode(request)
344
+ response = core_connection.call(:terminate_workflow_execution, encoded, metadata, timeout)
345
+
346
+ Temporalio::Api::WorkflowService::V1::TerminateWorkflowExecutionResponse.decode(response)
347
+ end
348
+
349
+ # @param request [Temporalio::Api::WorkflowService::V1::DeleteWorkflowExecutionRequest]
350
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
351
+ # Keys here override client-level RPC metadata keys.
352
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
353
+ #
354
+ # @return [Temporalio::Api::WorkflowService::V1::DeleteWorkflowExecutionResponse]
355
+ def delete_workflow_execution(request, metadata: {}, timeout: nil)
356
+ encoded = Temporalio::Api::WorkflowService::V1::DeleteWorkflowExecutionRequest.encode(request)
357
+ response = core_connection.call(:delete_workflow_execution, encoded, metadata, timeout)
358
+
359
+ Temporalio::Api::WorkflowService::V1::DeleteWorkflowExecutionResponse.decode(response)
360
+ end
361
+
362
+ # @param request [Temporalio::Api::WorkflowService::V1::ListOpenWorkflowExecutionsRequest]
363
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
364
+ # Keys here override client-level RPC metadata keys.
365
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
366
+ #
367
+ # @return [Temporalio::Api::WorkflowService::V1::ListOpenWorkflowExecutionsResponse]
368
+ def list_open_workflow_executions(request, metadata: {}, timeout: nil)
369
+ encoded = Temporalio::Api::WorkflowService::V1::ListOpenWorkflowExecutionsRequest.encode(request)
370
+ response = core_connection.call(:list_open_workflow_executions, encoded, metadata, timeout)
371
+
372
+ Temporalio::Api::WorkflowService::V1::ListOpenWorkflowExecutionsResponse.decode(response)
373
+ end
374
+
375
+ # @param request [Temporalio::Api::WorkflowService::V1::ListClosedWorkflowExecutionsRequest]
376
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
377
+ # Keys here override client-level RPC metadata keys.
378
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
379
+ #
380
+ # @return [Temporalio::Api::WorkflowService::V1::ListClosedWorkflowExecutionsResponse]
381
+ def list_closed_workflow_executions(request, metadata: {}, timeout: nil)
382
+ encoded = Temporalio::Api::WorkflowService::V1::ListClosedWorkflowExecutionsRequest.encode(request)
383
+ response = core_connection.call(:list_closed_workflow_executions, encoded, metadata, timeout)
384
+
385
+ Temporalio::Api::WorkflowService::V1::ListClosedWorkflowExecutionsResponse.decode(response)
386
+ end
387
+
388
+ # @param request [Temporalio::Api::WorkflowService::V1::ListWorkflowExecutionsRequest]
389
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
390
+ # Keys here override client-level RPC metadata keys.
391
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
392
+ #
393
+ # @return [Temporalio::Api::WorkflowService::V1::ListWorkflowExecutionsResponse]
394
+ def list_workflow_executions(request, metadata: {}, timeout: nil)
395
+ encoded = Temporalio::Api::WorkflowService::V1::ListWorkflowExecutionsRequest.encode(request)
396
+ response = core_connection.call(:list_workflow_executions, encoded, metadata, timeout)
397
+
398
+ Temporalio::Api::WorkflowService::V1::ListWorkflowExecutionsResponse.decode(response)
399
+ end
400
+
401
+ # @param request [Temporalio::Api::WorkflowService::V1::ListArchivedWorkflowExecutionsRequest]
402
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
403
+ # Keys here override client-level RPC metadata keys.
404
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
405
+ #
406
+ # @return [Temporalio::Api::WorkflowService::V1::ListArchivedWorkflowExecutionsResponse]
407
+ def list_archived_workflow_executions(request, metadata: {}, timeout: nil)
408
+ encoded = Temporalio::Api::WorkflowService::V1::ListArchivedWorkflowExecutionsRequest.encode(request)
409
+ response = core_connection.call(:list_archived_workflow_executions, encoded, metadata, timeout)
410
+
411
+ Temporalio::Api::WorkflowService::V1::ListArchivedWorkflowExecutionsResponse.decode(response)
412
+ end
413
+
414
+ # @param request [Temporalio::Api::WorkflowService::V1::ScanWorkflowExecutionsRequest]
415
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
416
+ # Keys here override client-level RPC metadata keys.
417
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
418
+ #
419
+ # @return [Temporalio::Api::WorkflowService::V1::ScanWorkflowExecutionsResponse]
420
+ def scan_workflow_executions(request, metadata: {}, timeout: nil)
421
+ encoded = Temporalio::Api::WorkflowService::V1::ScanWorkflowExecutionsRequest.encode(request)
422
+ response = core_connection.call(:scan_workflow_executions, encoded, metadata, timeout)
423
+
424
+ Temporalio::Api::WorkflowService::V1::ScanWorkflowExecutionsResponse.decode(response)
425
+ end
426
+
427
+ # @param request [Temporalio::Api::WorkflowService::V1::CountWorkflowExecutionsRequest]
428
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
429
+ # Keys here override client-level RPC metadata keys.
430
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
431
+ #
432
+ # @return [Temporalio::Api::WorkflowService::V1::CountWorkflowExecutionsResponse]
433
+ def count_workflow_executions(request, metadata: {}, timeout: nil)
434
+ encoded = Temporalio::Api::WorkflowService::V1::CountWorkflowExecutionsRequest.encode(request)
435
+ response = core_connection.call(:count_workflow_executions, encoded, metadata, timeout)
436
+
437
+ Temporalio::Api::WorkflowService::V1::CountWorkflowExecutionsResponse.decode(response)
438
+ end
439
+
440
+ # @param request [Temporalio::Api::WorkflowService::V1::GetSearchAttributesRequest]
441
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
442
+ # Keys here override client-level RPC metadata keys.
443
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
444
+ #
445
+ # @return [Temporalio::Api::WorkflowService::V1::GetSearchAttributesResponse]
446
+ def get_search_attributes(request, metadata: {}, timeout: nil)
447
+ encoded = Temporalio::Api::WorkflowService::V1::GetSearchAttributesRequest.encode(request)
448
+ response = core_connection.call(:get_search_attributes, encoded, metadata, timeout)
449
+
450
+ Temporalio::Api::WorkflowService::V1::GetSearchAttributesResponse.decode(response)
451
+ end
452
+
453
+ # @param request [Temporalio::Api::WorkflowService::V1::RespondQueryTaskCompletedRequest]
454
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
455
+ # Keys here override client-level RPC metadata keys.
456
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
457
+ #
458
+ # @return [Temporalio::Api::WorkflowService::V1::RespondQueryTaskCompletedResponse]
459
+ def respond_query_task_completed(request, metadata: {}, timeout: nil)
460
+ encoded = Temporalio::Api::WorkflowService::V1::RespondQueryTaskCompletedRequest.encode(request)
461
+ response = core_connection.call(:respond_query_task_completed, encoded, metadata, timeout)
462
+
463
+ Temporalio::Api::WorkflowService::V1::RespondQueryTaskCompletedResponse.decode(response)
464
+ end
465
+
466
+ # @param request [Temporalio::Api::WorkflowService::V1::ResetStickyTaskQueueRequest]
467
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
468
+ # Keys here override client-level RPC metadata keys.
469
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
470
+ #
471
+ # @return [Temporalio::Api::WorkflowService::V1::ResetStickyTaskQueueResponse]
472
+ def reset_sticky_task_queue(request, metadata: {}, timeout: nil)
473
+ encoded = Temporalio::Api::WorkflowService::V1::ResetStickyTaskQueueRequest.encode(request)
474
+ response = core_connection.call(:reset_sticky_task_queue, encoded, metadata, timeout)
475
+
476
+ Temporalio::Api::WorkflowService::V1::ResetStickyTaskQueueResponse.decode(response)
477
+ end
478
+
479
+ # @param request [Temporalio::Api::WorkflowService::V1::QueryWorkflowRequest]
480
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
481
+ # Keys here override client-level RPC metadata keys.
482
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
483
+ #
484
+ # @return [Temporalio::Api::WorkflowService::V1::QueryWorkflowResponse]
485
+ def query_workflow(request, metadata: {}, timeout: nil)
486
+ encoded = Temporalio::Api::WorkflowService::V1::QueryWorkflowRequest.encode(request)
487
+ response = core_connection.call(:query_workflow, encoded, metadata, timeout)
488
+
489
+ Temporalio::Api::WorkflowService::V1::QueryWorkflowResponse.decode(response)
490
+ end
491
+
492
+ # @param request [Temporalio::Api::WorkflowService::V1::DescribeWorkflowExecutionRequest]
493
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
494
+ # Keys here override client-level RPC metadata keys.
495
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
496
+ #
497
+ # @return [Temporalio::Api::WorkflowService::V1::DescribeWorkflowExecutionResponse]
498
+ def describe_workflow_execution(request, metadata: {}, timeout: nil)
499
+ encoded = Temporalio::Api::WorkflowService::V1::DescribeWorkflowExecutionRequest.encode(request)
500
+ response = core_connection.call(:describe_workflow_execution, encoded, metadata, timeout)
501
+
502
+ Temporalio::Api::WorkflowService::V1::DescribeWorkflowExecutionResponse.decode(response)
503
+ end
504
+
505
+ # @param request [Temporalio::Api::WorkflowService::V1::DescribeTaskQueueRequest]
506
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
507
+ # Keys here override client-level RPC metadata keys.
508
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
509
+ #
510
+ # @return [Temporalio::Api::WorkflowService::V1::DescribeTaskQueueResponse]
511
+ def describe_task_queue(request, metadata: {}, timeout: nil)
512
+ encoded = Temporalio::Api::WorkflowService::V1::DescribeTaskQueueRequest.encode(request)
513
+ response = core_connection.call(:describe_task_queue, encoded, metadata, timeout)
514
+
515
+ Temporalio::Api::WorkflowService::V1::DescribeTaskQueueResponse.decode(response)
516
+ end
517
+
518
+ # @param request [Temporalio::Api::WorkflowService::V1::GetClusterInfoRequest]
519
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
520
+ # Keys here override client-level RPC metadata keys.
521
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
522
+ #
523
+ # @return [Temporalio::Api::WorkflowService::V1::GetClusterInfoResponse]
524
+ def get_cluster_info(request, metadata: {}, timeout: nil)
525
+ encoded = Temporalio::Api::WorkflowService::V1::GetClusterInfoRequest.encode(request)
526
+ response = core_connection.call(:get_cluster_info, encoded, metadata, timeout)
527
+
528
+ Temporalio::Api::WorkflowService::V1::GetClusterInfoResponse.decode(response)
529
+ end
530
+
531
+ # @param request [Temporalio::Api::WorkflowService::V1::GetSystemInfoRequest]
532
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
533
+ # Keys here override client-level RPC metadata keys.
534
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
535
+ #
536
+ # @return [Temporalio::Api::WorkflowService::V1::GetSystemInfoResponse]
537
+ def get_system_info(request, metadata: {}, timeout: nil)
538
+ encoded = Temporalio::Api::WorkflowService::V1::GetSystemInfoRequest.encode(request)
539
+ response = core_connection.call(:get_system_info, encoded, metadata, timeout)
540
+
541
+ Temporalio::Api::WorkflowService::V1::GetSystemInfoResponse.decode(response)
542
+ end
543
+
544
+ # @param request [Temporalio::Api::WorkflowService::V1::ListTaskQueuePartitionsRequest]
545
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
546
+ # Keys here override client-level RPC metadata keys.
547
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
548
+ #
549
+ # @return [Temporalio::Api::WorkflowService::V1::ListTaskQueuePartitionsResponse]
550
+ def list_task_queue_partitions(request, metadata: {}, timeout: nil)
551
+ encoded = Temporalio::Api::WorkflowService::V1::ListTaskQueuePartitionsRequest.encode(request)
552
+ response = core_connection.call(:list_task_queue_partitions, encoded, metadata, timeout)
553
+
554
+ Temporalio::Api::WorkflowService::V1::ListTaskQueuePartitionsResponse.decode(response)
555
+ end
556
+
557
+ # @param request [Temporalio::Api::WorkflowService::V1::CreateScheduleRequest]
558
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
559
+ # Keys here override client-level RPC metadata keys.
560
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
561
+ #
562
+ # @return [Temporalio::Api::WorkflowService::V1::CreateScheduleResponse]
563
+ def create_schedule(request, metadata: {}, timeout: nil)
564
+ encoded = Temporalio::Api::WorkflowService::V1::CreateScheduleRequest.encode(request)
565
+ response = core_connection.call(:create_schedule, encoded, metadata, timeout)
566
+
567
+ Temporalio::Api::WorkflowService::V1::CreateScheduleResponse.decode(response)
568
+ end
569
+
570
+ # @param request [Temporalio::Api::WorkflowService::V1::DescribeScheduleRequest]
571
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
572
+ # Keys here override client-level RPC metadata keys.
573
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
574
+ #
575
+ # @return [Temporalio::Api::WorkflowService::V1::DescribeScheduleResponse]
576
+ def describe_schedule(request, metadata: {}, timeout: nil)
577
+ encoded = Temporalio::Api::WorkflowService::V1::DescribeScheduleRequest.encode(request)
578
+ response = core_connection.call(:describe_schedule, encoded, metadata, timeout)
579
+
580
+ Temporalio::Api::WorkflowService::V1::DescribeScheduleResponse.decode(response)
581
+ end
582
+
583
+ # @param request [Temporalio::Api::WorkflowService::V1::UpdateScheduleRequest]
584
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
585
+ # Keys here override client-level RPC metadata keys.
586
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
587
+ #
588
+ # @return [Temporalio::Api::WorkflowService::V1::UpdateScheduleResponse]
589
+ def update_schedule(request, metadata: {}, timeout: nil)
590
+ encoded = Temporalio::Api::WorkflowService::V1::UpdateScheduleRequest.encode(request)
591
+ response = core_connection.call(:update_schedule, encoded, metadata, timeout)
592
+
593
+ Temporalio::Api::WorkflowService::V1::UpdateScheduleResponse.decode(response)
594
+ end
595
+
596
+ # @param request [Temporalio::Api::WorkflowService::V1::PatchScheduleRequest]
597
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
598
+ # Keys here override client-level RPC metadata keys.
599
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
600
+ #
601
+ # @return [Temporalio::Api::WorkflowService::V1::PatchScheduleResponse]
602
+ def patch_schedule(request, metadata: {}, timeout: nil)
603
+ encoded = Temporalio::Api::WorkflowService::V1::PatchScheduleRequest.encode(request)
604
+ response = core_connection.call(:patch_schedule, encoded, metadata, timeout)
605
+
606
+ Temporalio::Api::WorkflowService::V1::PatchScheduleResponse.decode(response)
607
+ end
608
+
609
+ # @param request [Temporalio::Api::WorkflowService::V1::ListScheduleMatchingTimesRequest]
610
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
611
+ # Keys here override client-level RPC metadata keys.
612
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
613
+ #
614
+ # @return [Temporalio::Api::WorkflowService::V1::ListScheduleMatchingTimesResponse]
615
+ def list_schedule_matching_times(request, metadata: {}, timeout: nil)
616
+ encoded = Temporalio::Api::WorkflowService::V1::ListScheduleMatchingTimesRequest.encode(request)
617
+ response = core_connection.call(:list_schedule_matching_times, encoded, metadata, timeout)
618
+
619
+ Temporalio::Api::WorkflowService::V1::ListScheduleMatchingTimesResponse.decode(response)
620
+ end
621
+
622
+ # @param request [Temporalio::Api::WorkflowService::V1::DeleteScheduleRequest]
623
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
624
+ # Keys here override client-level RPC metadata keys.
625
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
626
+ #
627
+ # @return [Temporalio::Api::WorkflowService::V1::DeleteScheduleResponse]
628
+ def delete_schedule(request, metadata: {}, timeout: nil)
629
+ encoded = Temporalio::Api::WorkflowService::V1::DeleteScheduleRequest.encode(request)
630
+ response = core_connection.call(:delete_schedule, encoded, metadata, timeout)
631
+
632
+ Temporalio::Api::WorkflowService::V1::DeleteScheduleResponse.decode(response)
633
+ end
634
+
635
+ # @param request [Temporalio::Api::WorkflowService::V1::ListSchedulesRequest]
636
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
637
+ # Keys here override client-level RPC metadata keys.
638
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
639
+ #
640
+ # @return [Temporalio::Api::WorkflowService::V1::ListSchedulesResponse]
641
+ def list_schedules(request, metadata: {}, timeout: nil)
642
+ encoded = Temporalio::Api::WorkflowService::V1::ListSchedulesRequest.encode(request)
643
+ response = core_connection.call(:list_schedules, encoded, metadata, timeout)
644
+
645
+ Temporalio::Api::WorkflowService::V1::ListSchedulesResponse.decode(response)
646
+ end
647
+
648
+ # @param request [Temporalio::Api::WorkflowService::V1::UpdateWorkerBuildIdOrderingRequest]
649
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
650
+ # Keys here override client-level RPC metadata keys.
651
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
652
+ #
653
+ # @return [Temporalio::Api::WorkflowService::V1::UpdateWorkerBuildIdOrderingResponse]
654
+ def update_worker_build_id_ordering(request, metadata: {}, timeout: nil)
655
+ encoded = Temporalio::Api::WorkflowService::V1::UpdateWorkerBuildIdOrderingRequest.encode(request)
656
+ response = core_connection.call(:update_worker_build_id_ordering, encoded, metadata, timeout)
657
+
658
+ Temporalio::Api::WorkflowService::V1::UpdateWorkerBuildIdOrderingResponse.decode(response)
659
+ end
660
+
661
+ # @param request [Temporalio::Api::WorkflowService::V1::GetWorkerBuildIdOrderingRequest]
662
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
663
+ # Keys here override client-level RPC metadata keys.
664
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
665
+ #
666
+ # @return [Temporalio::Api::WorkflowService::V1::GetWorkerBuildIdOrderingResponse]
667
+ def get_worker_build_id_ordering(request, metadata: {}, timeout: nil)
668
+ encoded = Temporalio::Api::WorkflowService::V1::GetWorkerBuildIdOrderingRequest.encode(request)
669
+ response = core_connection.call(:get_worker_build_id_ordering, encoded, metadata, timeout)
670
+
671
+ Temporalio::Api::WorkflowService::V1::GetWorkerBuildIdOrderingResponse.decode(response)
672
+ end
673
+
674
+ # @param request [Temporalio::Api::WorkflowService::V1::UpdateWorkflowRequest]
675
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
676
+ # Keys here override client-level RPC metadata keys.
677
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
678
+ #
679
+ # @return [Temporalio::Api::WorkflowService::V1::UpdateWorkflowResponse]
680
+ def update_workflow(request, metadata: {}, timeout: nil)
681
+ encoded = Temporalio::Api::WorkflowService::V1::UpdateWorkflowRequest.encode(request)
682
+ response = core_connection.call(:update_workflow, encoded, metadata, timeout)
683
+
684
+ Temporalio::Api::WorkflowService::V1::UpdateWorkflowResponse.decode(response)
685
+ end
686
+
687
+ # @param request [Temporalio::Api::WorkflowService::V1::StartBatchOperationRequest]
688
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
689
+ # Keys here override client-level RPC metadata keys.
690
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
691
+ #
692
+ # @return [Temporalio::Api::WorkflowService::V1::StartBatchOperationResponse]
693
+ def start_batch_operation(request, metadata: {}, timeout: nil)
694
+ encoded = Temporalio::Api::WorkflowService::V1::StartBatchOperationRequest.encode(request)
695
+ response = core_connection.call(:start_batch_operation, encoded, metadata, timeout)
696
+
697
+ Temporalio::Api::WorkflowService::V1::StartBatchOperationResponse.decode(response)
698
+ end
699
+
700
+ # @param request [Temporalio::Api::WorkflowService::V1::StopBatchOperationRequest]
701
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
702
+ # Keys here override client-level RPC metadata keys.
703
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
704
+ #
705
+ # @return [Temporalio::Api::WorkflowService::V1::StopBatchOperationResponse]
706
+ def stop_batch_operation(request, metadata: {}, timeout: nil)
707
+ encoded = Temporalio::Api::WorkflowService::V1::StopBatchOperationRequest.encode(request)
708
+ response = core_connection.call(:stop_batch_operation, encoded, metadata, timeout)
709
+
710
+ Temporalio::Api::WorkflowService::V1::StopBatchOperationResponse.decode(response)
711
+ end
712
+
713
+ # @param request [Temporalio::Api::WorkflowService::V1::DescribeBatchOperationRequest]
714
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
715
+ # Keys here override client-level RPC metadata keys.
716
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
717
+ #
718
+ # @return [Temporalio::Api::WorkflowService::V1::DescribeBatchOperationResponse]
719
+ def describe_batch_operation(request, metadata: {}, timeout: nil)
720
+ encoded = Temporalio::Api::WorkflowService::V1::DescribeBatchOperationRequest.encode(request)
721
+ response = core_connection.call(:describe_batch_operation, encoded, metadata, timeout)
722
+
723
+ Temporalio::Api::WorkflowService::V1::DescribeBatchOperationResponse.decode(response)
724
+ end
725
+
726
+ # @param request [Temporalio::Api::WorkflowService::V1::ListBatchOperationsRequest]
727
+ # @param metadata [Hash<String, String>] Headers used on the RPC call.
728
+ # Keys here override client-level RPC metadata keys.
729
+ # @param timeout [Integer] Optional RPC deadline to set for each RPC call.
730
+ #
731
+ # @return [Temporalio::Api::WorkflowService::V1::ListBatchOperationsResponse]
732
+ def list_batch_operations(request, metadata: {}, timeout: nil)
733
+ encoded = Temporalio::Api::WorkflowService::V1::ListBatchOperationsRequest.encode(request)
734
+ response = core_connection.call(:list_batch_operations, encoded, metadata, timeout)
735
+
736
+ Temporalio::Api::WorkflowService::V1::ListBatchOperationsResponse.decode(response)
737
+ end
738
+
739
+ private
740
+
741
+ def parse_url(url)
742
+ # Turn this into a valid URI before parsing
743
+ uri = URI.parse(url.include?('://') ? url : "//#{url}")
744
+ raise Temporalio::Error, 'Target host as URL with scheme are not supported' if uri.scheme
745
+
746
+ # TODO: Add support for mTLS
747
+ uri.scheme = 'http'
748
+ uri.to_s
749
+ end
750
+ end
751
+ end