gitbundle_sdk/models/
public_key_model.rs1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct PublicKeyModel {
17 #[serde(rename = "comment")]
18 pub comment: String,
19 #[serde(rename = "content")]
20 pub content: Vec<i32>,
21 #[serde(rename = "created")]
22 pub created: i64,
23 #[serde(rename = "created_by")]
24 pub created_by: i64,
25 #[serde(rename = "fingerprint")]
26 pub fingerprint: String,
27 #[serde(rename = "id")]
28 pub id: i64,
29 #[serde(rename = "name")]
30 pub name: String,
31 #[serde(rename = "type")]
32 pub r#type: String,
33 #[serde(rename = "usage")]
34 pub usage: models::PublicKeyUsage,
35 #[serde(
36 rename = "verified",
37 default,
38 with = "::serde_with::rust::double_option",
39 skip_serializing_if = "Option::is_none"
40 )]
41 pub verified: Option<Option<i64>>,
42}
43
44impl PublicKeyModel {
45 pub fn new(
46 comment: String,
47 content: Vec<i32>,
48 created: i64,
49 created_by: i64,
50 fingerprint: String,
51 id: i64,
52 name: String,
53 r#type: String,
54 usage: models::PublicKeyUsage,
55 ) -> PublicKeyModel {
56 PublicKeyModel {
57 comment,
58 content,
59 created,
60 created_by,
61 fingerprint,
62 id,
63 name,
64 r#type,
65 usage,
66 verified: None,
67 }
68 }
69}