Platform Explorer / server 10.10

Extension point schedule

Extension allowing the registration of schedules. This is similar to a cron job sending events. Note that contrary to UNIX cron there is an additional "seconds" field in the cron expression.

A scheduler definition contains information about what event is sent, when, and under what identity.

For instance :

    <schedule id="mySchedule" jobFactoryClass="org.nuxeo.ecm.core.scheduler.DefaultEventJobFactory">
        <username>Administrator</username>
        <event>myEvent</event>
        <eventCategory>default</eventCategory>
        <!-- Every first of the month at 3am -->
        <cronExpression>0 0 3 1 * ?</cronExpression>
        <timezone>UTC</timezone>
    </schedule>

jobFactoryClass is optional and defaults to org.nuxeo.ecm.core.scheduler.DefaultEventJobFactory. timezone is optional and defaults to system default.

@see org.quartz.CronTrigger @see org.nuxeo.ecm.core.scheduler.EventJobFactory @see http://www.quartz-scheduler.org/docs/api/1.8.1/org/quartz/CronExpression.html @see http://www.quartz-scheduler.org/docs/tutorials/crontrigger.html

Contribution Descriptor

Existing Contributions

  • nuxeo-core-10.10.jar /OSGI-INF/orphanVersionsCleanup-listener-contrib.xml
    <extension point="schedule" target="org.nuxeo.ecm.core.scheduler.SchedulerService">
        <schedule id="orphanVersionsCleanup">
          <!-- cleanup every day at 1:30 AM -->
          <cronExpression>0 30 1 * * ?</cronExpression>
          <event>orphanVersionsCleanup</event>
        </schedule>
      </extension>
  • nuxeo-core-storage-sql-10.10.jar /OSGI-INF/repo-softdelete-contrib.xml
    <extension point="schedule" target="org.nuxeo.ecm.core.scheduler.SchedulerService">
        <schedule id="softDeleteCleanup">
          <event>softDeleteCleanup</event>
          <!-- cleanup every 15 minutes -->
          <cronExpression>0 0/15 * * * ?</cronExpression>
        </schedule>
      </extension>
  • nuxeo-platform-rendition-core-10.10.jar /OSGI-INF/rendition-scheduler-contrib.xml
    <extension point="schedule" target="org.nuxeo.ecm.core.scheduler.SchedulerService">
        <schedule id="storedRenditionsCleanup">
          <event>storedRenditionsCleanup</event>
          <!-- every day at 11.59 PM -->
          <cronExpression>0 59 23 * * ?</cronExpression>
        </schedule>
      </extension>
  • nuxeo-liveconnect-core-10.10.jar /OSGI-INF/liveconnect-scheduler-contrib.xml
    <extension point="schedule" target="org.nuxeo.ecm.core.scheduler.SchedulerService">
        <schedule id="blobProviderDocumentUpdate">
          <event>blobProviderDocumentUpdateEvent</event>
          <!-- cleanup every 30 sec  -->
          <!-- cronExpression>0/30 * * * * ?</cronExpression-->
          <!-- every day at 11.59 PM -->
          <cronExpression>0 0/5 * * * ?</cronExpression>
        </schedule>
      </extension>
  • nuxeo-core-cache-10.10.jar /OSGI-INF/transientstore-service.xml
    <extension point="schedule" target="org.nuxeo.ecm.core.scheduler.SchedulerService">
        <schedule id="transientStoreGC">
          <eventId>transientStoreGCStart</eventId>
          <eventCategory>default</eventCategory>
          <!-- cleanup every 15 minutes -->
          <cronExpression>0 0/15 * * * ?</cronExpression>
        </schedule>
      </extension>