@temporalio/core-bridge 1.5.2 → 1.7.0
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.
- package/Cargo.lock +304 -112
- package/lib/index.d.ts +8 -6
- package/lib/index.js.map +1 -1
- package/package.json +9 -4
- package/releases/aarch64-apple-darwin/index.node +0 -0
- package/releases/aarch64-unknown-linux-gnu/index.node +0 -0
- package/releases/x86_64-apple-darwin/index.node +0 -0
- package/releases/x86_64-pc-windows-msvc/index.node +0 -0
- package/releases/x86_64-unknown-linux-gnu/index.node +0 -0
- package/sdk-core/.buildkite/docker/Dockerfile +2 -2
- package/sdk-core/.buildkite/docker/docker-compose.yaml +1 -1
- package/sdk-core/.buildkite/pipeline.yml +2 -4
- package/sdk-core/.cargo/config.toml +5 -2
- package/sdk-core/.github/workflows/heavy.yml +29 -0
- package/sdk-core/Cargo.toml +1 -1
- package/sdk-core/README.md +20 -10
- package/sdk-core/client/src/lib.rs +215 -39
- package/sdk-core/client/src/metrics.rs +17 -8
- package/sdk-core/client/src/raw.rs +4 -4
- package/sdk-core/client/src/retry.rs +32 -20
- package/sdk-core/core/Cargo.toml +25 -12
- package/sdk-core/core/src/abstractions/take_cell.rs +28 -0
- package/sdk-core/core/src/abstractions.rs +204 -14
- package/sdk-core/core/src/core_tests/activity_tasks.rs +143 -50
- package/sdk-core/core/src/core_tests/child_workflows.rs +6 -5
- package/sdk-core/core/src/core_tests/determinism.rs +165 -2
- package/sdk-core/core/src/core_tests/local_activities.rs +431 -43
- package/sdk-core/core/src/core_tests/queries.rs +34 -16
- package/sdk-core/core/src/core_tests/workers.rs +8 -5
- package/sdk-core/core/src/core_tests/workflow_tasks.rs +588 -55
- package/sdk-core/core/src/ephemeral_server/mod.rs +113 -12
- package/sdk-core/core/src/internal_flags.rs +155 -0
- package/sdk-core/core/src/lib.rs +16 -9
- package/sdk-core/core/src/protosext/mod.rs +1 -1
- package/sdk-core/core/src/replay/mod.rs +16 -27
- package/sdk-core/core/src/telemetry/log_export.rs +1 -1
- package/sdk-core/core/src/telemetry/metrics.rs +69 -35
- package/sdk-core/core/src/telemetry/mod.rs +60 -21
- package/sdk-core/core/src/telemetry/prometheus_server.rs +19 -13
- package/sdk-core/core/src/test_help/mod.rs +73 -14
- package/sdk-core/core/src/worker/activities/activity_heartbeat_manager.rs +119 -160
- package/sdk-core/core/src/worker/activities/activity_task_poller_stream.rs +89 -0
- package/sdk-core/core/src/worker/activities/local_activities.rs +379 -129
- package/sdk-core/core/src/worker/activities.rs +350 -175
- package/sdk-core/core/src/worker/client/mocks.rs +22 -2
- package/sdk-core/core/src/worker/client.rs +18 -2
- package/sdk-core/core/src/worker/mod.rs +183 -64
- package/sdk-core/core/src/worker/workflow/bridge.rs +1 -3
- package/sdk-core/core/src/worker/workflow/driven_workflow.rs +3 -5
- package/sdk-core/core/src/worker/workflow/history_update.rs +916 -277
- package/sdk-core/core/src/worker/workflow/machines/activity_state_machine.rs +216 -183
- package/sdk-core/core/src/worker/workflow/machines/cancel_external_state_machine.rs +9 -12
- package/sdk-core/core/src/worker/workflow/machines/cancel_workflow_state_machine.rs +7 -9
- package/sdk-core/core/src/worker/workflow/machines/child_workflow_state_machine.rs +160 -87
- package/sdk-core/core/src/worker/workflow/machines/complete_workflow_state_machine.rs +13 -14
- package/sdk-core/core/src/worker/workflow/machines/continue_as_new_workflow_state_machine.rs +7 -9
- package/sdk-core/core/src/worker/workflow/machines/fail_workflow_state_machine.rs +14 -17
- package/sdk-core/core/src/worker/workflow/machines/local_activity_state_machine.rs +242 -110
- package/sdk-core/core/src/worker/workflow/machines/mod.rs +27 -19
- package/sdk-core/core/src/worker/workflow/machines/modify_workflow_properties_state_machine.rs +9 -11
- package/sdk-core/core/src/worker/workflow/machines/patch_state_machine.rs +321 -206
- package/sdk-core/core/src/worker/workflow/machines/signal_external_state_machine.rs +13 -18
- package/sdk-core/core/src/worker/workflow/machines/timer_state_machine.rs +20 -29
- package/sdk-core/core/src/worker/workflow/machines/transition_coverage.rs +2 -2
- package/sdk-core/core/src/worker/workflow/machines/upsert_search_attributes_state_machine.rs +257 -51
- package/sdk-core/core/src/worker/workflow/machines/workflow_machines/local_acts.rs +6 -17
- package/sdk-core/core/src/worker/workflow/machines/workflow_machines.rs +310 -150
- package/sdk-core/core/src/worker/workflow/machines/workflow_task_state_machine.rs +17 -20
- package/sdk-core/core/src/worker/workflow/managed_run/managed_wf_test.rs +31 -15
- package/sdk-core/core/src/worker/workflow/managed_run.rs +1052 -380
- package/sdk-core/core/src/worker/workflow/mod.rs +598 -390
- package/sdk-core/core/src/worker/workflow/run_cache.rs +40 -57
- package/sdk-core/core/src/worker/workflow/wft_extraction.rs +137 -0
- package/sdk-core/core/src/worker/workflow/wft_poller.rs +1 -4
- package/sdk-core/core/src/worker/workflow/workflow_stream/saved_wf_inputs.rs +117 -0
- package/sdk-core/core/src/worker/workflow/workflow_stream/tonic_status_serde.rs +24 -0
- package/sdk-core/core/src/worker/workflow/workflow_stream.rs +469 -718
- package/sdk-core/core-api/Cargo.toml +2 -1
- package/sdk-core/core-api/src/errors.rs +1 -34
- package/sdk-core/core-api/src/lib.rs +19 -9
- package/sdk-core/core-api/src/telemetry.rs +4 -6
- package/sdk-core/core-api/src/worker.rs +19 -1
- package/sdk-core/etc/deps.svg +115 -140
- package/sdk-core/etc/regen-depgraph.sh +5 -0
- package/sdk-core/fsm/rustfsm_procmacro/src/lib.rs +86 -61
- package/sdk-core/fsm/rustfsm_trait/src/lib.rs +29 -71
- package/sdk-core/histories/ends_empty_wft_complete.bin +0 -0
- package/sdk-core/histories/evict_while_la_running_no_interference-16_history.bin +0 -0
- package/sdk-core/histories/old_change_marker_format.bin +0 -0
- package/sdk-core/protos/api_upstream/.github/CODEOWNERS +2 -1
- package/sdk-core/protos/api_upstream/Makefile +6 -6
- package/sdk-core/protos/api_upstream/build/go.mod +7 -0
- package/sdk-core/protos/api_upstream/build/go.sum +5 -0
- package/sdk-core/protos/api_upstream/build/tools.go +29 -0
- package/sdk-core/protos/api_upstream/go.mod +6 -0
- package/sdk-core/protos/api_upstream/temporal/api/batch/v1/message.proto +9 -2
- package/sdk-core/protos/api_upstream/temporal/api/command/v1/message.proto +7 -26
- package/sdk-core/protos/api_upstream/temporal/api/common/v1/message.proto +13 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/batch_operation.proto +3 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/command_type.proto +3 -7
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/common.proto +3 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/event_type.proto +8 -8
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/failed_cause.proto +25 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/namespace.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/query.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/reset.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/schedule.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/task_queue.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/update.proto +24 -19
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/workflow.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/errordetails/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/failure/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/filter/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/history/v1/message.proto +49 -26
- package/sdk-core/protos/api_upstream/temporal/api/namespace/v1/message.proto +4 -2
- package/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/request_response.proto +5 -2
- package/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/service.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/protocol/v1/message.proto +57 -0
- package/sdk-core/protos/api_upstream/temporal/api/query/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/replication/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/schedule/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/sdk/v1/task_complete_metadata.proto +63 -0
- package/sdk-core/protos/api_upstream/temporal/api/taskqueue/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/update/v1/message.proto +71 -6
- package/sdk-core/protos/api_upstream/temporal/api/version/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/workflow/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/request_response.proto +64 -28
- package/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/service.proto +4 -4
- package/sdk-core/protos/local/temporal/sdk/core/activity_result/activity_result.proto +7 -8
- package/sdk-core/protos/local/temporal/sdk/core/activity_task/activity_task.proto +10 -7
- package/sdk-core/protos/local/temporal/sdk/core/child_workflow/child_workflow.proto +19 -30
- package/sdk-core/protos/local/temporal/sdk/core/common/common.proto +1 -0
- package/sdk-core/protos/local/temporal/sdk/core/core_interface.proto +1 -0
- package/sdk-core/protos/local/temporal/sdk/core/external_data/external_data.proto +8 -0
- package/sdk-core/protos/local/temporal/sdk/core/workflow_activation/workflow_activation.proto +67 -60
- package/sdk-core/protos/local/temporal/sdk/core/workflow_commands/workflow_commands.proto +85 -84
- package/sdk-core/protos/local/temporal/sdk/core/workflow_completion/workflow_completion.proto +9 -3
- package/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/request_response.proto +2 -2
- package/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/service.proto +2 -2
- package/sdk-core/sdk/Cargo.toml +5 -4
- package/sdk-core/sdk/src/lib.rs +108 -26
- package/sdk-core/sdk/src/workflow_context/options.rs +7 -1
- package/sdk-core/sdk/src/workflow_context.rs +24 -17
- package/sdk-core/sdk/src/workflow_future.rs +16 -15
- package/sdk-core/sdk-core-protos/Cargo.toml +5 -2
- package/sdk-core/sdk-core-protos/build.rs +36 -2
- package/sdk-core/sdk-core-protos/src/history_builder.rs +138 -106
- package/sdk-core/sdk-core-protos/src/history_info.rs +10 -1
- package/sdk-core/sdk-core-protos/src/lib.rs +272 -87
- package/sdk-core/sdk-core-protos/src/task_token.rs +12 -2
- package/sdk-core/test-utils/Cargo.toml +3 -1
- package/sdk-core/test-utils/src/canned_histories.rs +106 -296
- package/sdk-core/test-utils/src/histfetch.rs +1 -1
- package/sdk-core/test-utils/src/lib.rs +82 -23
- package/sdk-core/test-utils/src/wf_input_saver.rs +50 -0
- package/sdk-core/test-utils/src/workflows.rs +29 -0
- package/sdk-core/tests/fuzzy_workflow.rs +130 -0
- package/sdk-core/tests/{load_tests.rs → heavy_tests.rs} +125 -51
- package/sdk-core/tests/integ_tests/ephemeral_server_tests.rs +25 -3
- package/sdk-core/tests/integ_tests/heartbeat_tests.rs +10 -5
- package/sdk-core/tests/integ_tests/metrics_tests.rs +218 -16
- package/sdk-core/tests/integ_tests/polling_tests.rs +4 -47
- package/sdk-core/tests/integ_tests/queries_tests.rs +5 -128
- package/sdk-core/tests/integ_tests/visibility_tests.rs +83 -25
- package/sdk-core/tests/integ_tests/workflow_tests/activities.rs +161 -72
- package/sdk-core/tests/integ_tests/workflow_tests/cancel_external.rs +1 -0
- package/sdk-core/tests/integ_tests/workflow_tests/cancel_wf.rs +6 -13
- package/sdk-core/tests/integ_tests/workflow_tests/child_workflows.rs +80 -3
- package/sdk-core/tests/integ_tests/workflow_tests/continue_as_new.rs +6 -2
- package/sdk-core/tests/integ_tests/workflow_tests/determinism.rs +3 -10
- package/sdk-core/tests/integ_tests/workflow_tests/local_activities.rs +94 -200
- package/sdk-core/tests/integ_tests/workflow_tests/modify_wf_properties.rs +2 -4
- package/sdk-core/tests/integ_tests/workflow_tests/patches.rs +34 -28
- package/sdk-core/tests/integ_tests/workflow_tests/replay.rs +76 -7
- package/sdk-core/tests/integ_tests/workflow_tests/resets.rs +1 -0
- package/sdk-core/tests/integ_tests/workflow_tests/signals.rs +18 -14
- package/sdk-core/tests/integ_tests/workflow_tests/stickyness.rs +6 -20
- package/sdk-core/tests/integ_tests/workflow_tests/timers.rs +10 -21
- package/sdk-core/tests/integ_tests/workflow_tests/upsert_search_attrs.rs +7 -8
- package/sdk-core/tests/integ_tests/workflow_tests.rs +13 -14
- package/sdk-core/tests/main.rs +3 -13
- package/sdk-core/tests/runner.rs +75 -36
- package/sdk-core/tests/wf_input_replay.rs +32 -0
- package/src/conversions.rs +14 -8
- package/src/runtime.rs +9 -8
- package/ts/index.ts +8 -6
- package/sdk-core/bridge-ffi/Cargo.toml +0 -24
- package/sdk-core/bridge-ffi/LICENSE.txt +0 -23
- package/sdk-core/bridge-ffi/build.rs +0 -25
- package/sdk-core/bridge-ffi/include/sdk-core-bridge.h +0 -224
- package/sdk-core/bridge-ffi/src/lib.rs +0 -746
- package/sdk-core/bridge-ffi/src/wrappers.rs +0 -221
- package/sdk-core/protos/local/temporal/sdk/core/bridge/bridge.proto +0 -210
- package/sdk-core/sdk/src/conversions.rs +0 -8
|
@@ -18,9 +18,9 @@ mod workflow_task_state_machine;
|
|
|
18
18
|
#[cfg(test)]
|
|
19
19
|
mod transition_coverage;
|
|
20
20
|
|
|
21
|
-
pub(crate) use workflow_machines::
|
|
21
|
+
pub(crate) use workflow_machines::WorkflowMachines;
|
|
22
22
|
|
|
23
|
-
use crate::telemetry::VecDisplayer;
|
|
23
|
+
use crate::{telemetry::VecDisplayer, worker::workflow::WFMachinesError};
|
|
24
24
|
use activity_state_machine::ActivityMachine;
|
|
25
25
|
use cancel_external_state_machine::CancelExternalMachine;
|
|
26
26
|
use cancel_workflow_state_machine::CancelWorkflowMachine;
|
|
@@ -73,7 +73,7 @@ enum Machines {
|
|
|
73
73
|
///
|
|
74
74
|
/// Formerly known as `EntityStateMachine` in Java.
|
|
75
75
|
#[enum_dispatch::enum_dispatch(Machines)]
|
|
76
|
-
trait TemporalStateMachine
|
|
76
|
+
trait TemporalStateMachine {
|
|
77
77
|
fn handle_command(
|
|
78
78
|
&mut self,
|
|
79
79
|
command_type: CommandType,
|
|
@@ -88,8 +88,7 @@ trait TemporalStateMachine: Send {
|
|
|
88
88
|
/// to update the overall state of the workflow. EX: To issue outgoing WF activations.
|
|
89
89
|
fn handle_event(
|
|
90
90
|
&mut self,
|
|
91
|
-
event:
|
|
92
|
-
has_next_event: bool,
|
|
91
|
+
event: HistEventData,
|
|
93
92
|
) -> Result<Vec<MachineResponse>, WFMachinesError>;
|
|
94
93
|
|
|
95
94
|
/// Attempt to cancel the command associated with this state machine, if it is cancellable
|
|
@@ -108,9 +107,9 @@ trait TemporalStateMachine: Send {
|
|
|
108
107
|
|
|
109
108
|
impl<SM> TemporalStateMachine for SM
|
|
110
109
|
where
|
|
111
|
-
SM: StateMachine + WFMachinesAdapter + Cancellable + OnEventWrapper + Clone +
|
|
112
|
-
<SM as StateMachine>::Event: TryFrom<
|
|
113
|
-
WFMachinesError: From<<<SM as StateMachine>::Event as TryFrom<
|
|
110
|
+
SM: StateMachine + WFMachinesAdapter + Cancellable + OnEventWrapper + Clone + 'static,
|
|
111
|
+
<SM as StateMachine>::Event: TryFrom<HistEventData> + TryFrom<CommandType> + Display,
|
|
112
|
+
WFMachinesError: From<<<SM as StateMachine>::Event as TryFrom<HistEventData>>::Error>,
|
|
114
113
|
<SM as StateMachine>::Command: Debug + Display,
|
|
115
114
|
<SM as StateMachine>::State: Display,
|
|
116
115
|
<SM as StateMachine>::Error: Into<WFMachinesError> + 'static + Send + Sync,
|
|
@@ -152,21 +151,19 @@ where
|
|
|
152
151
|
|
|
153
152
|
fn handle_event(
|
|
154
153
|
&mut self,
|
|
155
|
-
|
|
156
|
-
has_next_event: bool,
|
|
154
|
+
event_dat: HistEventData,
|
|
157
155
|
) -> Result<Vec<MachineResponse>, WFMachinesError> {
|
|
158
156
|
trace!(
|
|
159
|
-
event = %event,
|
|
157
|
+
event = %event_dat.event,
|
|
160
158
|
machine_name = %self.name(),
|
|
161
159
|
state = %self.state(),
|
|
162
160
|
"handling event"
|
|
163
161
|
);
|
|
164
162
|
let event_info = EventInfo {
|
|
165
|
-
event_id: event.event_id,
|
|
166
|
-
event_type: event.event_type(),
|
|
167
|
-
has_next_event,
|
|
163
|
+
event_id: event_dat.event.event_id,
|
|
164
|
+
event_type: event_dat.event.event_type(),
|
|
168
165
|
};
|
|
169
|
-
let converted_event: <Self as StateMachine>::Event =
|
|
166
|
+
let converted_event: <Self as StateMachine>::Event = event_dat.try_into()?;
|
|
170
167
|
|
|
171
168
|
match OnEventWrapper::on_event_mut(self, converted_event) {
|
|
172
169
|
Ok(c) => process_machine_commands(self, c, Some(event_info)),
|
|
@@ -217,7 +214,7 @@ where
|
|
|
217
214
|
<SM as StateMachine>::State: Display,
|
|
218
215
|
{
|
|
219
216
|
if !commands.is_empty() {
|
|
220
|
-
|
|
217
|
+
trace!(commands=%commands.display(), state=%machine.state(),
|
|
221
218
|
machine_name=%TemporalStateMachine::name(machine), "Machine produced commands");
|
|
222
219
|
}
|
|
223
220
|
let mut machine_responses = vec![];
|
|
@@ -245,11 +242,22 @@ trait WFMachinesAdapter: StateMachine {
|
|
|
245
242
|
fn matches_event(&self, event: &HistoryEvent) -> bool;
|
|
246
243
|
}
|
|
247
244
|
|
|
245
|
+
/// Wraps a history event with extra relevant data that a machine might care about while the event
|
|
246
|
+
/// is being applied to it.
|
|
247
|
+
#[derive(Debug, derive_more::Display)]
|
|
248
|
+
#[display(fmt = "{event}")]
|
|
249
|
+
struct HistEventData {
|
|
250
|
+
event: HistoryEvent,
|
|
251
|
+
/// Is the current workflow task under replay or not during application of this event?
|
|
252
|
+
replaying: bool,
|
|
253
|
+
/// Is the current workflow task the last task in history?
|
|
254
|
+
current_task_is_last_in_history: bool,
|
|
255
|
+
}
|
|
256
|
+
|
|
248
257
|
#[derive(Debug, Copy, Clone)]
|
|
249
258
|
struct EventInfo {
|
|
250
259
|
event_id: i64,
|
|
251
260
|
event_type: EventType,
|
|
252
|
-
has_next_event: bool,
|
|
253
261
|
}
|
|
254
262
|
|
|
255
263
|
trait Cancellable: StateMachine {
|
|
@@ -270,7 +278,7 @@ trait Cancellable: StateMachine {
|
|
|
270
278
|
}
|
|
271
279
|
}
|
|
272
280
|
|
|
273
|
-
/// We need to wrap calls to [StateMachine::
|
|
281
|
+
/// We need to wrap calls to [StateMachine::on_event] to track coverage, or anything else
|
|
274
282
|
/// we'd like to do on every call.
|
|
275
283
|
pub(crate) trait OnEventWrapper: StateMachine
|
|
276
284
|
where
|
|
@@ -287,7 +295,7 @@ where
|
|
|
287
295
|
#[cfg(test)]
|
|
288
296
|
let converted_event_str = event.to_string();
|
|
289
297
|
|
|
290
|
-
let res = StateMachine::
|
|
298
|
+
let res = StateMachine::on_event(self, event);
|
|
291
299
|
if res.is_ok() {
|
|
292
300
|
#[cfg(test)]
|
|
293
301
|
add_coverage(
|
package/sdk-core/core/src/worker/workflow/machines/modify_workflow_properties_state_machine.rs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
use super::{
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
use super::{workflow_machines::MachineResponse, NewMachineWithCommand};
|
|
2
|
+
use crate::worker::workflow::{
|
|
3
|
+
machines::{Cancellable, EventInfo, HistEventData, WFMachinesAdapter},
|
|
4
|
+
WFMachinesError,
|
|
4
5
|
};
|
|
5
|
-
use
|
|
6
|
-
use rustfsm::{fsm, TransitionResult};
|
|
6
|
+
use rustfsm::{fsm, StateMachine, TransitionResult};
|
|
7
7
|
use temporal_sdk_core_protos::{
|
|
8
8
|
coresdk::workflow_commands::ModifyWorkflowProperties,
|
|
9
9
|
temporal::api::{
|
|
@@ -28,10 +28,7 @@ fsm! {
|
|
|
28
28
|
pub(super) fn modify_workflow_properties(
|
|
29
29
|
lang_cmd: ModifyWorkflowProperties,
|
|
30
30
|
) -> NewMachineWithCommand {
|
|
31
|
-
let sm = ModifyWorkflowPropertiesMachine {
|
|
32
|
-
state: Created {}.into(),
|
|
33
|
-
shared_state: (),
|
|
34
|
-
};
|
|
31
|
+
let sm = ModifyWorkflowPropertiesMachine::from_parts(Created {}.into(), ());
|
|
35
32
|
let cmd = Command {
|
|
36
33
|
command_type: CommandType::ModifyWorkflowProperties as i32,
|
|
37
34
|
attributes: Some(lang_cmd.into()),
|
|
@@ -74,10 +71,11 @@ impl WFMachinesAdapter for ModifyWorkflowPropertiesMachine {
|
|
|
74
71
|
|
|
75
72
|
impl Cancellable for ModifyWorkflowPropertiesMachine {}
|
|
76
73
|
|
|
77
|
-
impl TryFrom<
|
|
74
|
+
impl TryFrom<HistEventData> for ModifyWorkflowPropertiesMachineEvents {
|
|
78
75
|
type Error = WFMachinesError;
|
|
79
76
|
|
|
80
|
-
fn try_from(e:
|
|
77
|
+
fn try_from(e: HistEventData) -> Result<Self, Self::Error> {
|
|
78
|
+
let e = e.event;
|
|
81
79
|
match e.event_type() {
|
|
82
80
|
EventType::WorkflowPropertiesModified => {
|
|
83
81
|
Ok(ModifyWorkflowPropertiesMachineEvents::CommandRecorded)
|