Job.apex

  • Docs
  • Tutorials
Docs Menu
  • Job
  • Job Methods
    • Constructors
    • Common Methods
    • Cron Expression Job Methods
    • Repeating Job Methods
  • Jobs Methods

Repeating Job Methods Guide

Repeating Job Methods

startAt

Start the repeating job at the datetime.

new Job('test', R.debug).startAt(Datetime.now()).afterMinutes(30).repeatOnce().schedule();
// Schedule a run-once job that starts now, triggered after 30 mins

startNow

Start the repeating job now.

new Job('test', R.debug).startNow().afterMinutes(30).repeatOnce().schedule();
// Schedule a run-once job that starts now, triggered after 30 mins

afterSeconds

Repeating after N seconds.

new Job('test', R.debug).startNow().afterSeconds(30).repeatOnce().schedule();
// Schedule a run-once job that starts now, triggered after 30 seconds

afterMinutes

Repeating after N minutes.

new Job('test', R.debug).startNow().afterMinutes(30).repeatOnce().schedule();
// Schedule a run-once job that starts now, triggered after 30 minutes

afterHours

Repeating after N hours.

new Job('test', R.debug).startNow().afterHours(10).repeatOnce().schedule();
// Schedule a run-once job that starts now, triggered after 10 hours

afterDays

Repeating after N days.

new Job('test', R.debug).startNow().afterDays(10).repeatOnce().schedule();
// Schedule a run-once job that starts now, triggered after 10 days

afterMonths

Repeating after N months.

new Job('test', R.debug).startNow().afterMonths(10).repeatOnce().schedule();
// Schedule a run-once job that starts now, triggered after 10 months.

afterYears

Repeating after N years.

new Job('test', R.debug).startNow().afterYears(10).repeatOnce().schedule();
// Schedule a run-once job that starts now, triggered after 10 years

afterTime

Repeating after N milliseconds.

new Job('test', R.debug).startNow().afterTime(10000).repeatOnce().schedule();
// Schedule a run-once job that starts now, triggered after 10000 milliseconds

after

Repeating after the time returned by the afterFunc.

new Job('test', R.debug).startNow().after(R.multiply.apply(1000)).repeatOnce().schedule();
// Schedule a run-once job that starts now, triggered after 0s, 1s, 2s ...

repeat

Repeat max count.

new Job('test', R.debug).startNow().afterMinutes(30).repeat(3).schedule();
// Schedule a job that starts now, triggered after 30 minutes, for 3 times

repeatOnce

Repeat only once.

new Job('test', R.debug).startNow().afterMinutes(30).repeatOnce().schedule();
// Schedule a job that starts now, triggered after 30 minutes, for only 1 time

repeatForever

Repeat forever.

new Job('test', R.debug).startNow().afterMinutes(30).repeatForever().schedule();
// Schedule a job that starts now, triggered after 30 minutes, running forever

repeatUntil

Repeat until func is satisfied. The func takes the current repeating number, and returns a Boolean. Returning true indicates that the repeating is finished.

new Job('test', R.debug).startNow().afterMinutes(30).repeatUntil(R.equals.apply(2)).schedule();
// Schedule a job that starts now, triggered after 30 minutes until repeating count reaches 2

repeatUntil

Repeat until the end datetime.

new Job('test', R.debug).startNow().afterMinutes(30).repeatUntil(Datetime.newInstance(2018, 10, 1)).schedule();
// Schedule a job that starts now, triggered after 30 minutes, repeating until 2018/10/01

usingRepeat

Check if the job is using repeating pattern.

isRepeatSet

Check if the job has set repeating.

getNextDatetime

Get the next triggered datetime of the job. Only available for repeating pattern job.

Contribute on Github! Edit this section.