Using Quartz to trigger events in Mule

This posts shows how to use Quartz to trigger events in Mule.
Simple Trigger

Simple triggers allows you to execute a component repeatedly after a number of miliseconds. This component will be triggered 20 seconds after the application starts (startDelay=20000) and then every 10 seconds (repeatInterval=10000)

<global-endpoints>
  <endpoint name="quartz.in" address="quartz:/myService">
    <properties>
      <property name="repeatInterval" value="10000" />
      <property name="startDelay" value="20000" />
      <property name="payloadClassName" value="java.lang.String" />
    </properties>
  </endpoint>
</global-endpoints>

<mule-descriptor name="sampleComponent"
	inboundEndpoint="quartz.in"
	implementation="demo.mule.example7.SampleComponent"/>

Cron Trigger

Cron trigger allows us to execute a component based on a cron trigger (more information on cron triggers can be found here ). This component will be triggered every day at 8:00.

<global-endpoints>
  <endpoint name="quartz.in" address="quartz:/myService">
    <properties>
      <property name="cronExpression" value="0 00 08 * * ?" />
    </properties>
  </endpoint>
</global-endpoints>

<mule-descriptor name="sampleComponent"
	inboundEndpoint="quartz.in"
	implementation="demo.mule.SampleComponent"/>

One Response to “Using Quartz to trigger events in Mule”

  1. Harinath Mallepally Says:

    Hi, I am looking at errror handling scenario, can you please help.

    Here is my requirement.

    There will be FTP\JDBC inbound end point that will be configured but the polling frequency is a big number say monthly once.

    In case, if FTP is down, when Mule event is generated, we need to wait for another 1 month to re try the same right?

    Is there any way to trigger the mule event to start inbound ftp request again?

    thanks
    Harinath

Leave a Reply