Prerequisites • Exercise 1 • Exercise 1.1 • Exercise 2 • Exercise 3 • Exercise 4 • Exercise 5 • Exercise 6
Different execution paths in a process based on the state of process variables can be achieved using Exclusive Gateways. In Exercise 5 we will examine how this can be implemented by modifying the dsfdev_dicProcess
.
In order to solve this exercise, you should have solved Exercise 4 and read the topics on Exclusive Gateways and Conditions.
Solutions to this exercise are found on the branch solutions/exercise-5
.
- In the
DicTask
class, create a boolean variable which decides whether thedsfdev_cosProcess
should be started based on the start Task's input parametertutorial-input
. - Add the boolean variable to the process execution variables, storing the decision.
- Add an exclusive gateway to the
dsfdev_dicProcess
model and two outgoing sequence flows - the first starting processdsfdev_dicProcess
, the second stopping processdsfdev_dicProcess
without starting processdsfdev_cosProcess
. - Add condition expressions to each outgoing sequence flow based on the previously stored execution variable.
Execute a maven build of the dsf-process-tutorial
parent module via:
mvn clean install -Pexercise-5
Verify that the build was successful and no test failures occurred.
To verify the dsfdev_dicProcess
and dsfdev_cosProcess
es can be executed successfully, we need to deploy them into DSF instances and execute the dsfdev_dicProcess
. The maven install
build is configured to create a process jar file with all necessary resources and copy the jar to the appropriate locations of the docker dev setup.
-
Start the DSF FHIR server for the
Test_DIC
organization in a console at location.../dsf-process-tutorial/dev-setup
:docker-compose up dic-fhir
Verify the DSF FHIR server started successfully.
-
Start the DSF BPE server for the
Test_DIC
organization in a second console at location.../dsf-process-tutorial/dev-setup
:docker-compose up dic-bpe
Verify the DSF BPE server started successfully and deployed the
dsfdev_dicProcess
. -
Start the DSF FHIR server for the
Test_COS
organization in a third at location.../dsf-process-tutorial/dev-setup
:docker-compose up cos-fhir
Verify the DSF FHIR server started successfully.
-
Start the DSF BPE server for the
Test_COS
organization in a fourth console at location.../dsf-process-tutorial/dev-setup
:docker-compose up cos-bpe
Verify the DSF BPE server started successfully and deployed the
dsfdev_cosProcess
. -
Start the
dsfdev_dicProcess
by posting a specific FHIR Task resource to the DSF FHIR server of theTest_DIC
organization using either cURL or the DSF FHIR server's web interface. Check out Starting A Process Via Task Resources again if you are unsure.Verify that the
dsfdev_dicProcess
was executed successfully by theTest_DIC
DSF BPE server and possibly thedsfdev_cosProcess
by theTest_COS
DSF BPE server, depending on whether decision of your algorithm based on the input parameter allowed to start thedsfdev_dicProcess
.
Prerequisites • Exercise 1 • Exercise 1.1 • Exercise 2 • Exercise 3 • Exercise 4 • Exercise 5 • Exercise 6