apalis_workflow/id_generator.rs
1use apalis_core::task::task_id::RandomId;
2
3pub trait GenerateId {
4 fn generate() -> Self;
5}
6
7#[cfg(feature = "uuid")]
8impl GenerateId for uuid::Uuid {
9 fn generate() -> Self {
10 uuid::Uuid::new_v4()
11 }
12}
13
14#[cfg(feature = "ulid")]
15impl GenerateId for ulid::Ulid {
16 fn generate() -> Self {
17 ulid::Ulid::new()
18 }
19}
20
21impl GenerateId for RandomId {
22 fn generate() -> Self {
23 RandomId::default()
24 }
25}