EIPinCPI – Recipient List

December 15, 2019 Bhalchandra Wadekar

This week, we’ll study yet another variation of Message Router known as Recipient List.

When do I use this pattern?

A Recipient List is used when the input message needs to be sent to multiple receivers based on a condition. For example, in the Dynamic Router blog, different types of IDocs were routed to different integration flows based on their IDoc Type. Now, based on the IDoc type, the message could be sent to multiple receivers.

Recipient List in CPI

In CPI, Recipient List can be implemented using a combination of Dynamic Router implementation and Parallel Multicast component.

Integration Flow

In the Dynamic Router blog, we saw how to receive IDoc and then redirect it to another flow using ProcessDirect based on the IDoc Type.

In the second part of this integration, individual IDoc of a given IDoc Type is handled. Here, we can send a single IDoc to multiple parties. For example, consider that Customer Master information is required in Customer Relationship Management software as well as the Order Management System.

Here, Parallel Multicast component is used to send customer master information to CRM and OMS simultaneously.

In this implementation, the receivers have been determined based on the Data Type. The Data Type is determined dynamically, however, the receivers have to be hard-coded in the second flow. For a completely dynamic implementation of Recipient List, refer to Alexander Bundschuh‘s blog on Recipient List.

Conclusion

Recipient List is used when multiple receivers need to receive a copy of a single message based on a condition. In CPI, Recipient List can be implemented using a combination of a Router and a Parallel Multicast.

References/Further Readings

Hope this helps,
Bala

About the Author

Bhalchandra Wadekar

Bhalchandra Wadekar is an Integration Enthusiast who authored the Enterprise Integration Patterns in SAP Cloud Platform Integration (#EIPinCPI) series on SAP Blog Community. He is a fan of integration from API Management and Open Connectors to Message Based Integration and Data Integration.

More Content by Bhalchandra Wadekar
Previous Article
EIPinCPI – Dynamic Router
EIPinCPI – Dynamic Router

Next Article
EIPinCPI – Message Router
EIPinCPI – Message Router