fastcomments_sdk/client/src/models/
pub_sub_comment_base.rs

1/*
2 * fastcomments
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 0.0.0
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::client::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct PubSubCommentBase {
16    #[serde(rename = "_id")]
17    pub _id: String,
18    #[serde(rename = "tenantId")]
19    pub tenant_id: String,
20    #[serde(rename = "userId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
21    pub user_id: Option<Option<String>>,
22    #[serde(rename = "urlId")]
23    pub url_id: String,
24    #[serde(rename = "commenterName")]
25    pub commenter_name: String,
26    #[serde(rename = "commenterLink", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
27    pub commenter_link: Option<Option<String>>,
28    #[serde(rename = "commentHTML")]
29    pub comment_html: String,
30    #[serde(rename = "comment")]
31    pub comment: String,
32    #[serde(rename = "parentId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
33    pub parent_id: Option<Option<String>>,
34    #[serde(rename = "votes", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
35    pub votes: Option<Option<i32>>,
36    #[serde(rename = "votesUp", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
37    pub votes_up: Option<Option<i32>>,
38    #[serde(rename = "votesDown", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
39    pub votes_down: Option<Option<i32>>,
40    #[serde(rename = "verified")]
41    pub verified: bool,
42    #[serde(rename = "avatarSrc", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
43    pub avatar_src: Option<Option<String>>,
44    #[serde(rename = "hasImages", skip_serializing_if = "Option::is_none")]
45    pub has_images: Option<bool>,
46    #[serde(rename = "hasLinks", skip_serializing_if = "Option::is_none")]
47    pub has_links: Option<bool>,
48    #[serde(rename = "isByAdmin", skip_serializing_if = "Option::is_none")]
49    pub is_by_admin: Option<bool>,
50    #[serde(rename = "isByModerator", skip_serializing_if = "Option::is_none")]
51    pub is_by_moderator: Option<bool>,
52    #[serde(rename = "isPinned", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
53    pub is_pinned: Option<Option<bool>>,
54    #[serde(rename = "isLocked", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
55    pub is_locked: Option<Option<bool>>,
56    #[serde(rename = "displayLabel", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
57    pub display_label: Option<Option<String>>,
58    #[serde(rename = "rating", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
59    pub rating: Option<Option<f64>>,
60    #[serde(rename = "badges", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
61    pub badges: Option<Option<Vec<models::CommentUserBadgeInfo>>>,
62    #[serde(rename = "viewCount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
63    pub view_count: Option<Option<i64>>,
64    #[serde(rename = "isDeleted", skip_serializing_if = "Option::is_none")]
65    pub is_deleted: Option<bool>,
66    #[serde(rename = "isDeletedUser", skip_serializing_if = "Option::is_none")]
67    pub is_deleted_user: Option<bool>,
68    #[serde(rename = "isSpam", skip_serializing_if = "Option::is_none")]
69    pub is_spam: Option<bool>,
70    #[serde(rename = "anonUserId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
71    pub anon_user_id: Option<Option<String>>,
72    #[serde(rename = "feedbackIds", skip_serializing_if = "Option::is_none")]
73    pub feedback_ids: Option<Vec<String>>,
74    #[serde(rename = "flagCount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
75    pub flag_count: Option<Option<i32>>,
76    #[serde(rename = "domain", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
77    pub domain: Option<Option<String>>,
78    #[serde(rename = "url")]
79    pub url: String,
80    #[serde(rename = "pageTitle", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
81    pub page_title: Option<Option<String>>,
82    #[serde(rename = "expireAt", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
83    pub expire_at: Option<Option<String>>,
84    #[serde(rename = "reviewed", skip_serializing_if = "Option::is_none")]
85    pub reviewed: Option<bool>,
86    #[serde(rename = "hasCode", skip_serializing_if = "Option::is_none")]
87    pub has_code: Option<bool>,
88    #[serde(rename = "approved")]
89    pub approved: bool,
90    #[serde(rename = "locale", deserialize_with = "Option::deserialize")]
91    pub locale: Option<String>,
92    #[serde(rename = "isBannedUser", skip_serializing_if = "Option::is_none")]
93    pub is_banned_user: Option<bool>,
94    #[serde(rename = "groupIds", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
95    pub group_ids: Option<Option<Vec<String>>>,
96}
97
98impl PubSubCommentBase {
99    pub fn new(_id: String, tenant_id: String, url_id: String, commenter_name: String, comment_html: String, comment: String, verified: bool, url: String, approved: bool, locale: Option<String>) -> PubSubCommentBase {
100        PubSubCommentBase {
101            _id,
102            tenant_id,
103            user_id: None,
104            url_id,
105            commenter_name,
106            commenter_link: None,
107            comment_html,
108            comment,
109            parent_id: None,
110            votes: None,
111            votes_up: None,
112            votes_down: None,
113            verified,
114            avatar_src: None,
115            has_images: None,
116            has_links: None,
117            is_by_admin: None,
118            is_by_moderator: None,
119            is_pinned: None,
120            is_locked: None,
121            display_label: None,
122            rating: None,
123            badges: None,
124            view_count: None,
125            is_deleted: None,
126            is_deleted_user: None,
127            is_spam: None,
128            anon_user_id: None,
129            feedback_ids: None,
130            flag_count: None,
131            domain: None,
132            url,
133            page_title: None,
134            expire_at: None,
135            reviewed: None,
136            has_code: None,
137            approved,
138            locale,
139            is_banned_user: None,
140            group_ids: None,
141        }
142    }
143}
144