use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct WorkerDefinition {
#[serde(rename = "id", skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "name", skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "version", skip_serializing_if = "Option::is_none")]
pub version: Option<String>,
#[serde(rename = "description", skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(rename = "dataTypeList", skip_serializing_if = "Option::is_none")]
pub data_type_list: Option<Vec<String>>,
#[serde(rename = "author", skip_serializing_if = "Option::is_none")]
pub author: Option<String>,
#[serde(rename = "url", skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
#[serde(rename = "license", skip_serializing_if = "Option::is_none")]
pub license: Option<String>,
#[serde(rename = "baseConfig", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub base_config: Option<Option<String>>,
#[serde(rename = "configurationItems", skip_serializing_if = "Option::is_none")]
pub configuration_items: Option<Vec<models::ConfigurationDefinitionItem>>,
#[serde(rename = "dockerImage", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub docker_image: Option<Option<String>>,
#[serde(rename = "command", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub command: Option<Option<String>>,
}
impl WorkerDefinition {
pub fn new() -> WorkerDefinition {
WorkerDefinition {
id: None,
name: None,
version: None,
description: None,
data_type_list: None,
author: None,
url: None,
license: None,
base_config: None,
configuration_items: None,
docker_image: None,
command: None,
}
}
}