While working with MuleSoft, we would often like to pause process execution for while and continue later. Normally in Java, we can use the sleep() method to achieve that. But with Mule, the Groovy component has the answer.
Sample Use Case
Let's consider a flow where a file component will poll files from a particular location and will push them to specified target location. We would like to hold the file for a particular interval (say three seconds) and then push it outbound.
We can achieve that by using the Groovy component, followed by implementating the sleep method within it.
1. First, create a Mule project followed by a flow-apstartFlow1.
2. Add and configure the file component as inbound and outbound. Add a Groovy component between the two file components:
3. Add a script in the Groovy configuration:
4. Save and run the application.
5. The console log will contain the message specified in the script:
Note: I have used Mule runtime 3.8 while taking the screenshots.
So, with that, we have seen that the Groovy component is useful for implementing some custom business requirements.