Skip to content

Commit b142fc5

Browse files
authored
Merge pull request #107 from tsurdilo/addversionstuff
adding spec version and version to subflowref
2 parents a07c08c + ff9bd67 commit b142fc5

File tree

130 files changed

+147
-6
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

130 files changed

+147
-6
lines changed

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

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,10 @@ public SubFlowRef deserialize(JsonParser jp,
6767
subflowRef.setWorkflowId(node.get("workflowId").asText());
6868
}
6969

70+
if (node.get("version") != null) {
71+
subflowRef.setVersion(node.get("version").asText());
72+
}
73+
7074
return subflowRef;
7175
}
7276
}

api/src/main/java/io/serverlessworkflow/api/serializers/SubFlowRefSerializer.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ public void serialize(SubFlowRef subflowRef,
3939

4040
if (subflowRef != null) {
4141
if ((subflowRef.getWorkflowId() == null || subflowRef.getWorkflowId().isEmpty())
42-
&& subflowRef.isWaitForCompletion()) {
42+
&& subflowRef.isWaitForCompletion()
43+
&& (subflowRef.getVersion() == null || subflowRef.getVersion().isEmpty())) {
4344
gen.writeString(subflowRef.getWorkflowId());
4445
} else {
4546
gen.writeStartObject();
@@ -52,6 +53,10 @@ public void serialize(SubFlowRef subflowRef,
5253
gen.writeBooleanField("waitForCompletion", false);
5354
}
5455

56+
if (subflowRef.getVersion() != null && subflowRef.getVersion().length() > 0) {
57+
gen.writeStringField("version", subflowRef.getVersion());
58+
}
59+
5560
gen.writeEndObject();
5661
}
5762
}

api/src/main/java/io/serverlessworkflow/api/serializers/WorkflowSerializer.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -87,9 +87,9 @@ public void serialize(Workflow workflow,
8787
gen.writeObjectField("start", workflow.getStart());
8888
}
8989

90-
if (workflow.getSchemaVersion() != null && !workflow.getSchemaVersion().isEmpty()) {
91-
gen.writeStringField("schemaVersion",
92-
workflow.getSchemaVersion());
90+
if (workflow.getSpecVersion() != null && !workflow.getSpecVersion().isEmpty()) {
91+
gen.writeStringField("specVersion",
92+
workflow.getSpecVersion());
9393
}
9494

9595
if (workflow.getExtensions() != null && !workflow.getExpressionLang().isEmpty()) {

api/src/main/resources/schema/functions/subflowref.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@
1010
"workflowId": {
1111
"type": "string",
1212
"description": "Unique id of the sub-workflow to be invoked"
13+
},
14+
"version": {
15+
"type": "string",
16+
"description": "Version of the sub-workflow to be invoked",
17+
"minLength": 1
1318
}
1419
},
1520
"required": [

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
"$ref": "start/start.json",
3636
"description": "Defines workflow start"
3737
},
38-
"schemaVersion": {
38+
"specVersion": {
3939
"type": "string",
4040
"description": "Serverless Workflow schema version"
4141
},

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -499,6 +499,7 @@ public void testSubFlowRef(String workflowLocation) {
499499
SubFlowRef secondSubflowRef = secondAction.getSubFlowRef();
500500
assertEquals("subflowrefworkflowid", secondSubflowRef.getWorkflowId());
501501
assertFalse(secondSubflowRef.isWaitForCompletion());
502+
assertEquals("1.0", secondSubflowRef.getVersion());
502503

503504
}
504505
}

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"id": "applicantrequest",
33
"version": "1.0",
4+
"specVersion": "0.7",
45
"name": "Applicant Request Decision Workflow",
56
"description": "Determine if applicant request is valid",
67
"start": "CheckApplication",

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
id: applicantrequest
22
version: '1.0'
3+
specVersion: '0.7'
34
name: Applicant Request Decision Workflow
45
description: Determine if applicant request is valid
56
start: CheckApplication

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
"id": "booklending",
33
"name": "Book Lending Workflow",
44
"version": "1.0",
5+
"specVersion": "0.7",
56
"start": "Book Lending Request",
67
"states": [
78
{

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
id: booklending
22
name: Book Lending Workflow
33
version: '1.0'
4+
specVersion: '0.7'
45
start: Book Lending Request
56
states:
67
- name: Book Lending Request

0 commit comments

Comments
 (0)