-
Notifications
You must be signed in to change notification settings - Fork 0
Notify
Figure 1: Notify As part of the Synchronization Services the Notify Service is the counterpart of the Await Service. It is used to notify another awaiting process.
To insert a Notify object into a Workflow, drag the Notify symbol out of the icon bar.
The Notify Service expects two Input Parameters. The first one called Correlation ID is used for identification (i.e. corresponding Await and Notify objects must have the same Correlation ID). The value may be any non-null String.
Please note: Each Notify can only wake up one corresponding Await. It is not possible to continue multiple awaiting processes with one Notify call. That means: The Correlation ID should be unique for the duration of the Await Notify pair being active. If it is found not to be unique the call returns an exception.
Please note: Notify events remain in the system persistently (beyond a server reboot) until they are consumed by an appropriate Await or until their timeout has been reached (default: 2 minutes, configurable via Xyna Property xyna.xprc.synchronization.answer.default_timeout
). This is meant only for the case that the Notify is called before the corresponding Await waits for it.
The second Input Parameter called Synchronization Answer may contain a message, to be transferred to the awaiting process. The original Data Type of this parameter is Any Type and xprc.synchronization.SynchronizationAnswer is its Default Type. Instead of using the Default Type, you may change or remove the Expected Type to transfer different types of messages.
Please note: Whatever Expected Type is used for the Synchronization Answer, the corresponding Await should use the same one to avoid a type mismatch.
Please note: During the modeling of Workflows which use the Synchronization Service, care has to be taken that no deadlocks are created (e.g. both Workflows wait for one another's notification).