简体   繁体   中英

WSO2 EI/ESB: For loop implementation

I want to implement a simple " for loop " in WSO2 Integration Studio.

For example:

I am implementing a bus-route API. Every bus has 10 different stops. I want to fetch the 10 stops from the back-end service. A normal for-loop for this would be:

for(i=0;i<10;i++)
{
    //back-end call
    <call>
       <endpoint>
          <http method="get" uri-template="https://backend.com/city+i"/>
       </endpoint>
    </call>
}

NOTE: In the above for loop, the back-end call has path parameter like city which should be iterated as city1, city2, city3,..... city9.

How do I implement this in WSO2 EI/ESB Integration Studio?

One simple way would be to define a sample payload with the numbers inside an array and iterate through it. (This would work if the number of the iterations are predefined) For eg: [{"value": 1},{"value":2},{"value": 3}, ... ]

Or else you can write a custom class mediator and implement your logic.

Also there is a fun way to implement a while loop with the help of database. http://bsenduran.blogspot.com/2017/08/while-loop-in-wso2-esb.html?m=1

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM