All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.googlenative.compute.alpha.outputs.AutoscalingPolicyScaleInControlResponse Maven / Gradle / Ivy

// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.googlenative.compute.alpha.outputs;

import com.pulumi.core.annotations.CustomType;
import com.pulumi.googlenative.compute.alpha.outputs.FixedOrPercentResponse;
import java.lang.Integer;
import java.util.Objects;

@CustomType
public final class AutoscalingPolicyScaleInControlResponse {
    /**
     * @return Maximum allowed number (or %) of VMs that can be deducted from the peak recommendation during the window autoscaler looks at when computing recommendations. Possibly all these VMs can be deleted at once so user service needs to be prepared to lose that many VMs in one step.
     * 
     */
    private FixedOrPercentResponse maxScaledInReplicas;
    /**
     * @return How far back autoscaling looks when computing recommendations to include directives regarding slower scale in, as described above.
     * 
     */
    private Integer timeWindowSec;

    private AutoscalingPolicyScaleInControlResponse() {}
    /**
     * @return Maximum allowed number (or %) of VMs that can be deducted from the peak recommendation during the window autoscaler looks at when computing recommendations. Possibly all these VMs can be deleted at once so user service needs to be prepared to lose that many VMs in one step.
     * 
     */
    public FixedOrPercentResponse maxScaledInReplicas() {
        return this.maxScaledInReplicas;
    }
    /**
     * @return How far back autoscaling looks when computing recommendations to include directives regarding slower scale in, as described above.
     * 
     */
    public Integer timeWindowSec() {
        return this.timeWindowSec;
    }

    public static Builder builder() {
        return new Builder();
    }

    public static Builder builder(AutoscalingPolicyScaleInControlResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private FixedOrPercentResponse maxScaledInReplicas;
        private Integer timeWindowSec;
        public Builder() {}
        public Builder(AutoscalingPolicyScaleInControlResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.maxScaledInReplicas = defaults.maxScaledInReplicas;
    	      this.timeWindowSec = defaults.timeWindowSec;
        }

        @CustomType.Setter
        public Builder maxScaledInReplicas(FixedOrPercentResponse maxScaledInReplicas) {
            this.maxScaledInReplicas = Objects.requireNonNull(maxScaledInReplicas);
            return this;
        }
        @CustomType.Setter
        public Builder timeWindowSec(Integer timeWindowSec) {
            this.timeWindowSec = Objects.requireNonNull(timeWindowSec);
            return this;
        }
        public AutoscalingPolicyScaleInControlResponse build() {
            final var o = new AutoscalingPolicyScaleInControlResponse();
            o.maxScaledInReplicas = maxScaledInReplicas;
            o.timeWindowSec = timeWindowSec;
            return o;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy