Support IntermediateCatchEvent 47/25847/1
authorLvbo163 <lv.bo163@zte.com.cn>
Fri, 8 Dec 2017 06:08:41 +0000 (14:08 +0800)
committerLvbo163 <lv.bo163@zte.com.cn>
Fri, 8 Dec 2017 06:08:41 +0000 (14:08 +0800)
Add support for BPMN IntermediateCatchEvent

Issue-ID: SDC-740

Change-Id: Ib8abda18dfc146fffcf5edb396554f6efc106c61
Signed-off-by: Lvbo163 <lv.bo163@zte.com.cn>
sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/model/IntermediateCatchEvent.java [new file with mode: 0644]
sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/model/TimerEventDefinition.java [new file with mode: 0644]
sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/parser/Bpmn4ToscaJsonParser.java
sdc-workflow-designer-server/src/main/resources/bpmn-templates/bpmn_element_intermediateCatchEvent_template.xml [new file with mode: 0644]

diff --git a/sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/model/IntermediateCatchEvent.java b/sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/model/IntermediateCatchEvent.java
new file mode 100644 (file)
index 0000000..ae6260c
--- /dev/null
@@ -0,0 +1,25 @@
+/**\r
+ * Copyright (c) 2017 ZTE Corporation.\r
+ * All rights reserved. This program and the accompanying materials\r
+ * are made available under the Apache License, Version 2.0\r
+ * and the Eclipse Public License v1.0 which both accompany this distribution,\r
+ * and are available at http://www.eclipse.org/legal/epl-v10.html\r
+ * and http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Contributors:\r
+ *     ZTE - initial API and implementation and/or initial documentation\r
+ */\r
+package org.onap.sdc.workflowdesigner.model;\r
+\r
+public class IntermediateCatchEvent extends Element {\r
+    private TimerEventDefinition timerEventDefinition;\r
+\r
+    public TimerEventDefinition getTimerEventDefinition() {\r
+        return timerEventDefinition;\r
+    }\r
+\r
+    public void setTimerEventDefinition(TimerEventDefinition timerEventDefinition) {\r
+        this.timerEventDefinition = timerEventDefinition;\r
+    }\r
+\r
+}\r
diff --git a/sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/model/TimerEventDefinition.java b/sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/model/TimerEventDefinition.java
new file mode 100644 (file)
index 0000000..c7b4b82
--- /dev/null
@@ -0,0 +1,52 @@
+/**\r
+ * Copyright (c) 2017 ZTE Corporation.\r
+ * All rights reserved. This program and the accompanying materials\r
+ * are made available under the Apache License, Version 2.0\r
+ * and the Eclipse Public License v1.0 which both accompany this distribution,\r
+ * and are available at http://www.eclipse.org/legal/epl-v10.html\r
+ * and http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Contributors:\r
+ *     ZTE - initial API and implementation and/or initial documentation\r
+ */\r
+package org.onap.sdc.workflowdesigner.model;\r
+\r
+public class TimerEventDefinition {\r
+    private String type;\r
+    private String timeDuration;\r
+    private String timeDate;\r
+    private String timeCycle;\r
+\r
+    public String getType() {\r
+        return type;\r
+    }\r
+\r
+    public void setType(String type) {\r
+        this.type = type;\r
+    }\r
+\r
+    public String getTimeDuration() {\r
+        return timeDuration;\r
+    }\r
+\r
+    public void setTimeDuration(String timeDuration) {\r
+        this.timeDuration = timeDuration;\r
+    }\r
+\r
+    public String getTimeDate() {\r
+        return timeDate;\r
+    }\r
+\r
+    public void setTimeDate(String timeDate) {\r
+        this.timeDate = timeDate;\r
+    }\r
+\r
+    public String getTimeCycle() {\r
+        return timeCycle;\r
+    }\r
+\r
+    public void setTimeCycle(String timeCycle) {\r
+        this.timeCycle = timeCycle;\r
+    }\r
+\r
+}\r
index 390dc0b..dafe83f 100644 (file)
@@ -21,6 +21,7 @@ import java.util.List;
 import org.onap.sdc.workflowdesigner.model.DataObject;\r
 import org.onap.sdc.workflowdesigner.model.Element;\r
 import org.onap.sdc.workflowdesigner.model.EndEvent;\r
+import org.onap.sdc.workflowdesigner.model.IntermediateCatchEvent;\r
 import org.onap.sdc.workflowdesigner.model.Parameter;\r
 import org.onap.sdc.workflowdesigner.model.Process;\r
 import org.onap.sdc.workflowdesigner.model.SequenceFlow;\r
@@ -130,6 +131,9 @@ public class Bpmn4ToscaJsonParser {
         case "endEvent":\r
             element = MAPPER.readValue(jsonObject, EndEvent.class);\r
             break;\r
+        case "intermediateCatchEvent":\r
+            element = MAPPER.readValue(jsonObject, IntermediateCatchEvent.class);\r
+            break;\r
         default:\r
             log.warn("Ignoring node: type '" + nodeType + "' is unkown");\r
             return null;\r
diff --git a/sdc-workflow-designer-server/src/main/resources/bpmn-templates/bpmn_element_intermediateCatchEvent_template.xml b/sdc-workflow-designer-server/src/main/resources/bpmn-templates/bpmn_element_intermediateCatchEvent_template.xml
new file mode 100644 (file)
index 0000000..ee2365e
--- /dev/null
@@ -0,0 +1,6 @@
+\r
+<intermediateCatchEvent id="${element.id}" name="${element.name}">\r
+       <timerEventDefinition>\r
+        <timeDuration><![CDATA[${element.timerEventDefinition.timeDuration}]]></timeDuration>\r
+      </timerEventDefinition>\r
+</intermediateCatchEvent>\r