Fledex.Scheduler.Job (Fledex_Scheduler v0.1.0)
View SourceA job that determines the behaviour of scheduler. Instead of calling
Fledex.Scheduler.run_at/2, Fledex.Scheduler.run_in/2, and Fledex.Scheduler.run_every you
can specify your job and use Fledex.Scheduler.run_job/2
Summary
Types
@type schedule() :: Crontab.CronExpression.t() | {pos_integer(), unit()}
@type t() :: %Fledex.Scheduler.Job{ context: map(), func: task() | nil, name: GenServer.name() | nil, opts: keyword(), schedule: schedule() | nil }
@type task() :: (-> any()) | (DateTime.t() -> any())
@type unit() ::
:milliseconds
| :ms
| :seconds
| :sec
| :s
| :minutes
| :min
| :m
| :hours
| :h
| :weeks
| :w
Functions
@spec new() :: t()
@spec new( GenServer.name(), task(), Crontab.CronExpression.t() | {pos_integer(), unit()}, map(), keyword() ) :: t()
@spec set_name(t(), GenServer.name()) :: t()
@spec set_schedule(t(), Crontab.CronExpression.t()) :: t()