Skip to main content

authentik_client/models/
lifecycle_iteration.rs

1/*
2 * authentik
3 *
4 * Making authentication simple.
5 *
6 * The version of the OpenAPI document: 2026.2.0
7 * Contact: hello@goauthentik.io
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// LifecycleIteration : Mixin to validate that a valid enterprise license exists before allowing to save the object
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct LifecycleIteration {
17    #[serde(rename = "id")]
18    pub id: uuid::Uuid,
19    #[serde(rename = "content_type")]
20    pub content_type: models::ContentTypeEnum,
21    #[serde(rename = "object_id")]
22    pub object_id: String,
23    #[serde(rename = "object_verbose")]
24    pub object_verbose: String,
25    #[serde(rename = "object_admin_url")]
26    pub object_admin_url: String,
27    #[serde(rename = "state")]
28    pub state: models::LifecycleIterationStateEnum,
29    #[serde(rename = "opened_on")]
30    pub opened_on: String,
31    #[serde(rename = "grace_period_end")]
32    pub grace_period_end: String,
33    #[serde(rename = "next_review_date")]
34    pub next_review_date: String,
35    #[serde(rename = "reviews")]
36    pub reviews: Vec<models::Review>,
37    #[serde(rename = "user_can_review")]
38    pub user_can_review: bool,
39    #[serde(rename = "reviewer_groups")]
40    pub reviewer_groups: Vec<models::ReviewerGroup>,
41    #[serde(rename = "min_reviewers")]
42    pub min_reviewers: i32,
43    #[serde(rename = "reviewers")]
44    pub reviewers: Vec<models::ReviewerUser>,
45}
46
47impl LifecycleIteration {
48    /// Mixin to validate that a valid enterprise license exists before allowing to save the object
49    pub fn new(
50        id: uuid::Uuid,
51        content_type: models::ContentTypeEnum,
52        object_id: String,
53        object_verbose: String,
54        object_admin_url: String,
55        state: models::LifecycleIterationStateEnum,
56        opened_on: String,
57        grace_period_end: String,
58        next_review_date: String,
59        reviews: Vec<models::Review>,
60        user_can_review: bool,
61        reviewer_groups: Vec<models::ReviewerGroup>,
62        min_reviewers: i32,
63        reviewers: Vec<models::ReviewerUser>,
64    ) -> LifecycleIteration {
65        LifecycleIteration {
66            id,
67            content_type,
68            object_id,
69            object_verbose,
70            object_admin_url,
71            state,
72            opened_on,
73            grace_period_end,
74            next_review_date,
75            reviews,
76            user_can_review,
77            reviewer_groups,
78            min_reviewers,
79            reviewers,
80        }
81    }
82}