Skip to content

Commit ae1d508

Browse files
authored
Merge pull request #117 from tsurdilo/sleepstateup
Delay/Sleep state updates
2 parents 70f66ec + ab65e91 commit ae1d508

File tree

23 files changed

+68
-68
lines changed

23 files changed

+68
-68
lines changed

api/src/main/java/io/serverlessworkflow/api/deserializers/StateDeserializer.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,9 +80,9 @@ public State deserialize(JsonParser jp,
8080
case SWITCH:
8181
return mapper.treeToValue(node,
8282
SwitchState.class);
83-
case DELAY:
83+
case SLEEP:
8484
return mapper.treeToValue(node,
85-
DelayState.class);
85+
SleepState.class);
8686
case PARALLEL:
8787
return mapper.treeToValue(node,
8888
ParallelState.class);

api/src/main/java/io/serverlessworkflow/api/mapper/WorkflowModule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ public WorkflowModule(WorkflowPropertySource workflowPropertySource) {
6363
private void addDefaultSerializers() {
6464
addSerializer(new WorkflowSerializer());
6565
addSerializer(new EventStateSerializer());
66-
addSerializer(new DelayStateSerializer());
66+
addSerializer(new SleepStateSerializer());
6767
addSerializer(new OperationStateSerializer());
6868
addSerializer(new ParallelStateSerializer());
6969
addSerializer(new SwitchStateSerializer());

api/src/main/java/io/serverlessworkflow/api/serializers/DelayStateSerializer.java renamed to api/src/main/java/io/serverlessworkflow/api/serializers/SleepStateSerializer.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,31 +21,31 @@
2121
import com.fasterxml.jackson.databind.ser.std.StdSerializer;
2222
import com.fasterxml.jackson.databind.type.TypeFactory;
2323
import io.serverlessworkflow.api.states.DefaultState;
24-
import io.serverlessworkflow.api.states.DelayState;
24+
import io.serverlessworkflow.api.states.SleepState;
2525

2626
import java.io.IOException;
2727

28-
public class DelayStateSerializer extends StdSerializer<DelayState> {
28+
public class SleepStateSerializer extends StdSerializer<SleepState> {
2929

30-
public DelayStateSerializer() {
31-
this(DelayState.class);
30+
public SleepStateSerializer() {
31+
this(SleepState.class);
3232
}
3333

34-
protected DelayStateSerializer(Class<DelayState> t) {
34+
protected SleepStateSerializer(Class<SleepState> t) {
3535
super(t);
3636
}
3737

3838
@Override
39-
public void serialize(DelayState delayState,
39+
public void serialize(SleepState delayState,
4040
JsonGenerator gen,
4141
SerializerProvider provider) throws IOException {
4242

4343
// set defaults for delay state
44-
delayState.setType(DefaultState.Type.DELAY);
44+
delayState.setType(DefaultState.Type.SLEEP);
4545

4646
// serialize after setting default bean values...
4747
BeanSerializerFactory.instance.createSerializer(provider,
48-
TypeFactory.defaultInstance().constructType(DelayState.class)).serialize(delayState,
48+
TypeFactory.defaultInstance().constructType(SleepState.class)).serialize(delayState,
4949
gen,
5050
provider);
5151
}

api/src/main/resources/schema/states/defaultstate.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
"event",
2323
"operation",
2424
"switch",
25-
"delay",
25+
"sleep",
2626
"parallel",
2727
"subflow",
2828
"inject",
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"type": "object",
3-
"javaType": "io.serverlessworkflow.api.states.DelayState",
3+
"javaType": "io.serverlessworkflow.api.states.SleepState",
44
"javaInterfaces": [
55
"io.serverlessworkflow.api.interfaces.State"
66
],
@@ -9,9 +9,9 @@
99
"$ref": "defaultstate.json"
1010
},
1111
"properties": {
12-
"timeDelay": {
12+
"duration": {
1313
"type": "string",
14-
"description": "Amount of time (ISO 8601 format) to delay"
14+
"description": "Duration (ISO 8601 duration format) to sleep"
1515
},
1616
"usedForCompensation": {
1717
"type": "boolean",
@@ -20,6 +20,6 @@
2020
}
2121
},
2222
"required": [
23-
"timeDelay"
23+
"duration"
2424
]
2525
}

api/src/main/resources/schema/workflow.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,8 @@
9292
"existingJavaType": "io.serverlessworkflow.api.interfaces.State",
9393
"anyOf": [
9494
{
95-
"title": "Delay State",
96-
"$ref": "states/delaystate.json"
95+
"title": "Sleep State",
96+
"$ref": "states/sleepstate.json"
9797
},
9898
{
9999
"title": "Event State",

api/src/test/java/io/serverlessworkflow/api/test/WorkflowToMarkupTest.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,14 @@
2525
import io.serverlessworkflow.api.produce.ProduceEvent;
2626
import io.serverlessworkflow.api.schedule.Schedule;
2727
import io.serverlessworkflow.api.start.Start;
28-
import io.serverlessworkflow.api.states.DelayState;
28+
import io.serverlessworkflow.api.states.SleepState;
2929
import io.serverlessworkflow.api.workflow.Events;
3030
import io.serverlessworkflow.api.workflow.Functions;
3131
import org.junit.jupiter.api.Test;
3232

3333
import java.util.Arrays;
3434

35-
import static io.serverlessworkflow.api.states.DefaultState.Type.DELAY;
35+
import static io.serverlessworkflow.api.states.DefaultState.Type.SLEEP;
3636
import static org.junit.jupiter.api.Assertions.*;
3737

3838
public class WorkflowToMarkupTest {
@@ -44,22 +44,22 @@ public void testSingleState() {
4444
new Schedule().withInterval("PT1S")
4545
))
4646
.withStates(Arrays.asList(
47-
new DelayState().withName("delayState").withType(DELAY)
47+
new SleepState().withName("sleepState").withType(SLEEP)
4848
.withEnd(
4949
new End().withTerminate(true).withCompensate(true)
5050
.withProduceEvents(Arrays.asList(
5151
new ProduceEvent().withEventRef("someEvent")
5252
))
5353
)
54-
.withTimeDelay("PT1M")
54+
.withDuration("PT1M")
5555
)
5656
);
5757

5858
assertNotNull(workflow);
5959
assertNotNull(workflow.getStart());
6060
assertEquals(1, workflow.getStates().size());
6161
State state = workflow.getStates().get(0);
62-
assertTrue(state instanceof DelayState);
62+
assertTrue(state instanceof SleepState);
6363
assertNotNull(state.getEnd());
6464

6565
assertNotNull(Workflow.toJson(workflow));
@@ -78,19 +78,19 @@ public void testSingleFunction() {
7878
.withOperation("testSwaggerDef#testOperationId")))
7979
)
8080
.withStates(Arrays.asList(
81-
new DelayState().withName("delayState").withType(DELAY)
81+
new SleepState().withName("delayState").withType(SLEEP)
8282
.withEnd(
8383
new End()
8484
)
85-
.withTimeDelay("PT1M")
85+
.withDuration("PT1M")
8686
)
8787
);
8888

8989
assertNotNull(workflow);
9090
assertNotNull(workflow.getStart());
9191
assertEquals(1, workflow.getStates().size());
9292
State state = workflow.getStates().get(0);
93-
assertTrue(state instanceof DelayState);
93+
assertTrue(state instanceof SleepState);
9494
assertNotNull(workflow.getFunctions());
9595
assertEquals(1, workflow.getFunctions().getFunctionDefs().size());
9696
assertEquals("testFunction", workflow.getFunctions().getFunctionDefs().get(0).getName());
@@ -115,19 +115,19 @@ public void testSingleEvent() {
115115
.withOperation("testSwaggerDef#testOperationId")))
116116
)
117117
.withStates(Arrays.asList(
118-
new DelayState().withName("delayState").withType(DELAY)
118+
new SleepState().withName("delayState").withType(SLEEP)
119119
.withEnd(
120120
new End()
121121
)
122-
.withTimeDelay("PT1M")
122+
.withDuration("PT1M")
123123
)
124124
);
125125

126126
assertNotNull(workflow);
127127
assertNotNull(workflow.getStart());
128128
assertEquals(1, workflow.getStates().size());
129129
State state = workflow.getStates().get(0);
130-
assertTrue(state instanceof DelayState);
130+
assertTrue(state instanceof SleepState);
131131
assertNotNull(workflow.getFunctions());
132132
assertEquals(1, workflow.getFunctions().getFunctionDefs().size());
133133
assertEquals("testFunction", workflow.getFunctions().getFunctionDefs().get(0).getName());

api/src/test/resources/examples/booklending.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,9 @@
9595
"transition": "Wait two weeks"
9696
},
9797
{
98-
"name": "Wait two weeks",
99-
"type": "delay",
100-
"timeDelay": "P2W",
98+
"name": "Sleep two weeks",
99+
"type": "sleep",
100+
"duration": "P2W",
101101
"transition": "Get Book Status"
102102
},
103103
{

api/src/test/resources/examples/booklending.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ states:
5555
lender: "${ .lender }"
5656
transition: Wait two weeks
5757
- name: Wait two weeks
58-
type: delay
59-
timeDelay: P2W
58+
type: sleep
59+
duration: P2W
6060
transition: Get Book Status
6161
- name: Check Out Book
6262
type: operation

api/src/test/resources/examples/jobmonitoring.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,8 @@
6464
},
6565
{
6666
"name": "WaitForCompletion",
67-
"type": "delay",
68-
"timeDelay": "PT5S",
67+
"type": "sleep",
68+
"duration": "PT5S",
6969
"transition": "GetJobStatus"
7070
},
7171
{

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy