File tree Expand file tree Collapse file tree
fluent/func/src/main/java/io/serverlessworkflow/fluent/func
lambda/src/test/java/io/serverless/workflow/impl/executors/func
fluent/spec/src/main/java/io/serverlessworkflow/fluent/spec Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1616package io .serverlessworkflow .fluent .func ;
1717
1818import io .serverlessworkflow .api .types .Set ;
19- import io .serverlessworkflow .api .types .SetTask ;
2019import io .serverlessworkflow .api .types .func .MapSetTaskConfiguration ;
2120import io .serverlessworkflow .fluent .func .spi .ConditionalTaskBuilder ;
2221import io .serverlessworkflow .fluent .spec .SetTaskBuilder ;
2524public class FuncSetTaskBuilder extends SetTaskBuilder
2625 implements ConditionalTaskBuilder <FuncSetTaskBuilder > {
2726
28- private final SetTask task ;
29-
30- FuncSetTaskBuilder () {
31- this .task = new SetTask ();
32- this .setTask (task );
33- }
34-
3527 public FuncSetTaskBuilder expr (Map <String , Object > map ) {
3628 if (this .task .getSet () == null ) {
3729 this .task .setSet (new Set ());
3830 }
3931 this .task .getSet ().withSetTaskConfiguration (new MapSetTaskConfiguration (map ));
4032 return this ;
4133 }
42-
43- @ Override
44- public SetTask build () {
45- return this .task ;
46- }
4734}
Original file line number Diff line number Diff line change 2525import io .serverlessworkflow .impl .WorkflowApplication ;
2626import io .serverlessworkflow .impl .WorkflowDefinition ;
2727import io .serverlessworkflow .impl .WorkflowInstance ;
28+ import io .serverlessworkflow .impl .WorkflowModel ;
29+ import io .serverlessworkflow .impl .jackson .JsonUtils ;
30+
2831import java .util .Collection ;
2932import java .util .List ;
3033import java .util .Map ;
@@ -131,4 +134,21 @@ void set_with_map() {
131134 assertEquals (Map .of ("message" , "hello world!" ), output );
132135 }
133136 }
137+
138+ @ Test
139+ void set_with_string () {
140+ try (WorkflowApplication app = WorkflowApplication .builder ().build ()) {
141+ Workflow workflow =
142+ FuncWorkflowBuilder .workflow ()
143+ .tasks (f -> f .set (s -> s .expr ("{message:\" hello world!\" }" )))
144+ .build ();
145+
146+ WorkflowDefinition workflowDefinition = app .workflowDefinition (workflow );
147+
148+ WorkflowModel model =
149+ workflowDefinition .instance (Map .of ()).start ().join ();
150+
151+ assertEquals (JsonUtils .mapper ().createObjectNode ().put ("message" , "hello world!" ), model .asJavaObject ());
152+ }
153+ }
134154}
Original file line number Diff line number Diff line change 2121
2222public class SetTaskBuilder extends TaskBaseBuilder <SetTaskBuilder > {
2323
24- private final SetTask task ;
24+ protected final SetTask task ;
2525 private final SetTaskConfiguration setTaskConfiguration ;
2626
2727 public SetTaskBuilder () {
You can’t perform that action at this time.
0 commit comments