Skip to content

Node.js library to convert unix or linux CRON syntax to Quartz Scheduler

License

Notifications You must be signed in to change notification settings

lirantal/cron-to-quartz

Repository files navigation

view on npm view on npm npm module downloads Build Status Coverage Status Known Vulnerabilities Security Responsible Disclosure

cron-to-quartz

cron-to-quartz

Node.js JavaScript library to convert unix or linux CRON syntax to Quartz Scheduler

Install

Pre-requisite

  • Node.js

As a dependency of another project

Install the module as a dependency in your project so you can easily require it and use it as a library

yarn add cron-to-quartz

As a library to use

To use the cron-to-quartz as a library to work with and explore, you should clone the repository and install required modules.

  • Note: the node.js grunt task runner is required as a build tool for the library
git clone https://github.com/lirantal/cron-to-quartz.git
cd cron-to-quartz
yarn install

You can then run the test suite:

yarn run test

Usage

In your NodeJS projects, simply require this library:

var C2Q = require("../index.js");

Then you can just query the C2Q object with any cron notation as seen in the following examples:

var quartz = C2Q.getQuartz("@hourly");
var quartz = C2Q.getQuartz("0 0,12 1 */2 *");
var quartz = C2Q.getQuartz("00 11,13 * * *");

Special cases

The Quartz Scheduler isn't fully compatible with the CRON notation, so while CRON allows logical OR expressions, Quartz doesn't do that. For this reason, if you provide such CRON syntax, then the C2Q object will yield an array of 2 values:

var quartz = C2Q.getQuartz("0 4 15-21 * 1");

Resources

CronMaker is an online web-based utility to help build and test expressions that are compatible with the Quartz open source schedule. cron.guru is an online web-based utility to translate a valid Linux CRON expression to an actual human readable schedule Quartz Scheduler Developer Guide

Author

Liran Tal [email protected]