use serde::{Deserialize, Serialize}; /*
                                      * Compute Engine API
                                      *
                                      * Creates and runs virtual machines on Google Cloud Platform.
                                      *
                                      * The version of the OpenAPI document: v1
                                      *
                                      * Generated by: https://openapi-generator.tech
                                      */

#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct InstanceGroupManagersSetTargetPoolsRequest {
    /// The fingerprint of the target pools information. Use this optional property to prevent conflicts when multiple users change the target pools settings concurrently. Obtain the fingerprint with the instanceGroupManagers.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.
    #[serde(rename = "fingerprint", skip_serializing_if = "Option::is_none")]
    pub fingerprint: Option<String>,
    /// The list of target pool URLs that instances in this managed instance group belong to. The managed instance group applies these target pools to all of the instances in the group. Existing instances and new instances in the group all receive these target pool settings.
    #[serde(rename = "targetPools", skip_serializing_if = "Option::is_none")]
    pub target_pools: Option<Vec<String>>,
}

impl InstanceGroupManagersSetTargetPoolsRequest {
    pub fn new() -> InstanceGroupManagersSetTargetPoolsRequest {
        InstanceGroupManagersSetTargetPoolsRequest {
            fingerprint: None,
            target_pools: None,
        }
    }
}
