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

com.pulumi.kubernetes.autoscaling.v2beta1.outputs.PodsMetricSourcePatch Maven / Gradle / Ivy

There is a newer version: 4.19.0-alpha.1730750641
Show newest version
// *** 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.kubernetes.autoscaling.v2beta1.outputs;

import com.pulumi.core.annotations.CustomType;
import com.pulumi.kubernetes.meta.v1.outputs.LabelSelectorPatch;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class PodsMetricSourcePatch {
    /**
     * @return metricName is the name of the metric in question
     * 
     */
    private @Nullable String metricName;
    /**
     * @return selector is the string-encoded form of a standard kubernetes label selector for the given metric When set, it is passed as an additional parameter to the metrics server for more specific metrics scoping When unset, just the metricName will be used to gather metrics.
     * 
     */
    private @Nullable LabelSelectorPatch selector;
    /**
     * @return targetAverageValue is the target value of the average of the metric across all relevant pods (as a quantity)
     * 
     */
    private @Nullable String targetAverageValue;

    private PodsMetricSourcePatch() {}
    /**
     * @return metricName is the name of the metric in question
     * 
     */
    public Optional metricName() {
        return Optional.ofNullable(this.metricName);
    }
    /**
     * @return selector is the string-encoded form of a standard kubernetes label selector for the given metric When set, it is passed as an additional parameter to the metrics server for more specific metrics scoping When unset, just the metricName will be used to gather metrics.
     * 
     */
    public Optional selector() {
        return Optional.ofNullable(this.selector);
    }
    /**
     * @return targetAverageValue is the target value of the average of the metric across all relevant pods (as a quantity)
     * 
     */
    public Optional targetAverageValue() {
        return Optional.ofNullable(this.targetAverageValue);
    }

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

    public static Builder builder(PodsMetricSourcePatch defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable String metricName;
        private @Nullable LabelSelectorPatch selector;
        private @Nullable String targetAverageValue;
        public Builder() {}
        public Builder(PodsMetricSourcePatch defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.metricName = defaults.metricName;
    	      this.selector = defaults.selector;
    	      this.targetAverageValue = defaults.targetAverageValue;
        }

        @CustomType.Setter
        public Builder metricName(@Nullable String metricName) {

            this.metricName = metricName;
            return this;
        }
        @CustomType.Setter
        public Builder selector(@Nullable LabelSelectorPatch selector) {

            this.selector = selector;
            return this;
        }
        @CustomType.Setter
        public Builder targetAverageValue(@Nullable String targetAverageValue) {

            this.targetAverageValue = targetAverageValue;
            return this;
        }
        public PodsMetricSourcePatch build() {
            final var _resultValue = new PodsMetricSourcePatch();
            _resultValue.metricName = metricName;
            _resultValue.selector = selector;
            _resultValue.targetAverageValue = targetAverageValue;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy