pub enum ScheduleKind {
Cron,
RunOnce,
Manual,
}Expand description
How a Job becomes due for enqueue.
| Variant | Due via tick? | Required fields | Typical trigger |
|---|---|---|---|
Self::Cron | Yes | cron_expr (+ optional timezone) | Recurring schedules |
Self::RunOnce | Yes | next_run_at or run_once_at | One-shot deferred work |
Self::Manual | No | — | CoordinatorService::run_now or HTTP POST /jobs/run_now |
Persist via coordinator upsert; cron next-fire is computed there when
schedule_kind == Cron. See the chronon facade getting-started §5.
§Examples
use chronon_core::{Job, ScheduleKind};
let mut cron = Job::new("nightly", "cleanup");
cron.schedule_kind = ScheduleKind::Cron;
cron.cron_expr = Some("0 2 * * *".into());
cron.timezone = Some("UTC".into());
let mut once = Job::new("migrate-once", "migrate");
once.schedule_kind = ScheduleKind::RunOnce;
once.next_run_at = Some(chrono::Utc::now());
let mut manual = Job::new("cleanup-now", "cleanup");
manual.schedule_kind = ScheduleKind::Manual;
assert_eq!(manual.schedule_kind, ScheduleKind::Manual);Variants§
Cron
Recurring cron schedule — set Job::cron_expr and optional Job::timezone.
RunOnce
One-time execution when Job::next_run_at / Job::run_once_at is due.
Manual
Never due for the tick loop — enqueue only via run_now (in-process or HTTP).
Trait Implementations§
Source§impl Clone for ScheduleKind
impl Clone for ScheduleKind
Source§fn clone(&self) -> ScheduleKind
fn clone(&self) -> ScheduleKind
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ScheduleKind
impl Debug for ScheduleKind
Source§impl Default for ScheduleKind
impl Default for ScheduleKind
Source§fn default() -> ScheduleKind
fn default() -> ScheduleKind
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ScheduleKind
impl<'de> Deserialize<'de> for ScheduleKind
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ScheduleKind
Source§impl PartialEq for ScheduleKind
impl PartialEq for ScheduleKind
Source§impl Serialize for ScheduleKind
impl Serialize for ScheduleKind
impl StructuralPartialEq for ScheduleKind
Auto Trait Implementations§
impl Freeze for ScheduleKind
impl RefUnwindSafe for ScheduleKind
impl Send for ScheduleKind
impl Sync for ScheduleKind
impl Unpin for ScheduleKind
impl UnsafeUnpin for ScheduleKind
impl UnwindSafe for ScheduleKind
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more