coil_runtime/jobs/
types.rs1use super::super::*;
2
3#[derive(Debug, Clone, PartialEq, Eq)]
4pub struct RegisteredModuleJob {
5 pub module: String,
6 pub job: JobContract,
7}
8
9#[derive(Debug, Clone, PartialEq, Eq)]
10pub struct RegisteredEventSubscription {
11 pub module: String,
12 pub subscription: EventSubscription,
13}
14
15#[derive(Debug, Clone, PartialEq, Eq)]
16pub struct RegisteredSearchContribution {
17 pub module: String,
18 pub contribution: SearchIndexContribution,
19}
20
21#[derive(Debug, Clone, PartialEq, Eq)]
22pub struct RegisteredDataRepository {
23 pub module: String,
24 pub contribution: DataRepositoryContribution,
25}
26
27#[derive(Debug, Clone, PartialEq, Eq)]
28pub struct RegisteredReportDefinition {
29 pub module: String,
30 pub definition: ReportDefinition,
31}
32
33#[derive(Debug, Clone, PartialEq, Eq)]
34pub struct RegisteredBulkOperation {
35 pub module: String,
36 pub definition: BulkOperationDefinition,
37}
38
39#[derive(Debug, Clone, PartialEq, Eq)]
40pub struct RuntimeJobDefinition {
41 pub module: String,
42 pub contract: JobContract,
43 pub queue: JobQueueName,
44 pub retry_policy: RetryPolicy,
45}
46
47#[derive(Debug, Clone, PartialEq, Eq)]
48pub struct RuntimeEventSubscriptionDefinition {
49 pub module: String,
50 pub event_type: DomainEventType,
51 pub subscription_id: EventSubscriptionId,
52 pub handler_id: EventHandlerId,
53 pub job_name: String,
54 pub reaction_queue: JobQueueName,
55 pub retry_policy: RetryPolicy,
56 pub target_trigger: JobTriggerKind,
57 pub target_queue: JobQueueName,
58 pub description: String,
59}
60
61#[derive(Debug, Clone, PartialEq, Eq)]
62pub struct DomainEventDispatch {
63 pub event_id: DomainEventId,
64 pub event_type: DomainEventType,
65 pub enqueued_jobs: Vec<JobId>,
66}