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 ;
2830import java .util .Collection ;
2931import java .util .List ;
3032import java .util .Map ;
@@ -131,4 +133,22 @@ void set_with_map() {
131133 assertEquals (Map .of ("message" , "hello world!" ), output );
132134 }
133135 }
136+
137+ @ Test
138+ void set_with_string () {
139+ try (WorkflowApplication app = WorkflowApplication .builder ().build ()) {
140+ Workflow workflow =
141+ FuncWorkflowBuilder .workflow ()
142+ .tasks (f -> f .set (s -> s .expr ("{message:\" hello world!\" }" )))
143+ .build ();
144+
145+ WorkflowDefinition workflowDefinition = app .workflowDefinition (workflow );
146+
147+ WorkflowModel model = workflowDefinition .instance (Map .of ()).start ().join ();
148+
149+ assertEquals (
150+ JsonUtils .mapper ().createObjectNode ().put ("message" , "hello world!" ),
151+ 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