use serde::{Deserialize, Serialize};
#[allow(unused_imports)]
use super::*;
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct ExploitAttemptEventContent {
#[serde(rename = "type")]
pub r#type: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub exploit_detection_log_content: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub exploit_object_store_location: Option<String>,
}
pub struct ExploitAttemptEventContentRequired {
pub r#type: String,
}
impl ExploitAttemptEventContent {
pub fn new(required: ExploitAttemptEventContentRequired) -> Self {
Self {
r#type: required.r#type,
exploit_detection_log_content: None,
exploit_object_store_location: None,
}
}
pub fn set_exploit_detection_log_content(mut self, value: Option<String>) -> Self {
self.exploit_detection_log_content = value;
self
}
pub fn set_exploit_object_store_location(mut self, value: Option<String>) -> Self {
self.exploit_object_store_location = value;
self
}
pub fn set_type(mut self, value: String) -> Self {
self.r#type = value;
self
}
pub fn with_exploit_detection_log_content(mut self, value: impl Into<String>) -> Self {
self.exploit_detection_log_content = Some(value.into());
self
}
pub fn with_exploit_object_store_location(mut self, value: impl Into<String>) -> Self {
self.exploit_object_store_location = Some(value.into());
self
}
}