orvanta_api/models/
data_migration_run_summary.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct DataMigrationRunSummary {
17 #[serde(rename = "id")]
18 pub id: i64,
19 #[serde(rename = "job_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
21 pub job_id: Option<Option<String>>,
22 #[serde(rename = "created_by")]
23 pub created_by: String,
24 #[serde(rename = "created_at")]
25 pub created_at: String,
26 #[serde(rename = "started_at")]
27 pub started_at: String,
28 #[serde(rename = "updated_at")]
30 pub updated_at: String,
31 #[serde(rename = "completed_at", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
32 pub completed_at: Option<Option<String>>,
33 #[serde(rename = "status")]
34 pub status: Status,
35 #[serde(rename = "source_resource_path")]
36 pub source_resource_path: String,
37 #[serde(rename = "target_resource_path")]
38 pub target_resource_path: String,
39 #[serde(rename = "source_table")]
40 pub source_table: String,
41 #[serde(rename = "target_table")]
42 pub target_table: String,
43 #[serde(rename = "rows_migrated")]
45 pub rows_migrated: i64,
46 #[serde(rename = "batches")]
47 pub batches: i32,
48 #[serde(rename = "conflict_mode")]
49 pub conflict_mode: models::ConflictMode,
50 #[serde(rename = "resume_count")]
52 pub resume_count: i32,
53 #[serde(rename = "has_checkpoint")]
55 pub has_checkpoint: bool,
56 #[serde(rename = "has_pending_batch")]
58 pub has_pending_batch: bool,
59 #[serde(rename = "failed")]
61 pub failed: bool,
62}
63
64impl DataMigrationRunSummary {
65 pub fn new(id: i64, created_by: String, created_at: String, started_at: String, updated_at: String, status: Status, source_resource_path: String, target_resource_path: String, source_table: String, target_table: String, rows_migrated: i64, batches: i32, conflict_mode: models::ConflictMode, resume_count: i32, has_checkpoint: bool, has_pending_batch: bool, failed: bool) -> DataMigrationRunSummary {
67 DataMigrationRunSummary {
68 id,
69 job_id: None,
70 created_by,
71 created_at,
72 started_at,
73 updated_at,
74 completed_at: None,
75 status,
76 source_resource_path,
77 target_resource_path,
78 source_table,
79 target_table,
80 rows_migrated,
81 batches,
82 conflict_mode,
83 resume_count,
84 has_checkpoint,
85 has_pending_batch,
86 failed,
87 }
88 }
89}
90#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
92pub enum Status {
93 #[serde(rename = "running")]
94 Running,
95 #[serde(rename = "completed")]
96 Completed,
97 #[serde(rename = "failed")]
98 Failed,
99 #[serde(rename = "cancelled")]
100 Cancelled,
101}
102
103impl Default for Status {
104 fn default() -> Status {
105 Self::Running
106 }
107}
108