Single flow and multiple flow services

Services that use the message warehouse can be of either of two types:
Single flow
A single-flow service consists of a single message flow that processes messages completely without storing them for further processing. Such a message flow gets a message from its input queue, processes it, and puts it to its final destination queue. The processing of FTM SWIFT message flows is transactional, and the results of the transaction are not visible until the transaction was committed by the message broker. For this reason, a single-flow service needs to put a message into the message warehouse only once. Typically, it does this after processing has completed, so that the most recent version of the message is stored.
Multiple flow
A multiple-flow service processes messages using more than one message flow. For example, when some of the processing is dependent on a certain condition being fulfilled (such as a timer event expiring), it might be necessary to divide the processing into two message flows:
  • One that does initial processing, stores the partially processed message in a database, and initiates the condition for further processing. This flow stores the message in the message warehouse and sets its status.
  • One that is triggered by the condition, retrieves the partially processed message, and continues processing it. This flow contains a message warehouse update node (DniMwhUpdate), which updates the message content and status.