Skip to main content

openapi_service_fabric/models/
deploy_service_package_to_node_description.rs

1/*
2 * Service Fabric Client APIs
3 *
4 * Service Fabric REST Client APIs allows management of Service Fabric clusters, applications and services.
5 *
6 * The version of the OpenAPI document: 8.2
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// DeployServicePackageToNodeDescription : Defines description for downloading packages associated with a service manifest to image cache on a Service Fabric node.
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct DeployServicePackageToNodeDescription {
17    /// The name of the service manifest.
18    #[serde(rename = "ServiceManifestName")]
19    pub service_manifest_name: String,
20    /// The application type name as defined in the application manifest.
21    #[serde(rename = "ApplicationTypeName")]
22    pub application_type_name: String,
23    /// The version of the application type as defined in the application manifest.
24    #[serde(rename = "ApplicationTypeVersion")]
25    pub application_type_version: String,
26    /// The name of a Service Fabric node.
27    #[serde(rename = "NodeName")]
28    pub node_name: String,
29    /// List of package sharing policy information.
30    #[serde(
31        rename = "PackageSharingPolicy",
32        skip_serializing_if = "Option::is_none"
33    )]
34    pub package_sharing_policy: Option<Vec<models::PackageSharingPolicyInfo>>,
35}
36
37impl DeployServicePackageToNodeDescription {
38    /// Defines description for downloading packages associated with a service manifest to image cache on a Service Fabric node.
39    pub fn new(
40        service_manifest_name: String,
41        application_type_name: String,
42        application_type_version: String,
43        node_name: String,
44    ) -> DeployServicePackageToNodeDescription {
45        DeployServicePackageToNodeDescription {
46            service_manifest_name,
47            application_type_name,
48            application_type_version,
49            node_name,
50            package_sharing_policy: None,
51        }
52    }
53}