temporalio 0.0.1 → 0.1.0

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