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

com.pulumi.alicloud.dns.inputs.GtmInstanceState Maven / Gradle / Ivy

There is a newer version: 3.63.0-alpha.1727424957
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.alicloud.dns.inputs;

import com.pulumi.alicloud.dns.inputs.GtmInstanceAlertConfigArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class GtmInstanceState extends com.pulumi.resources.ResourceArgs {

    public static final GtmInstanceState Empty = new GtmInstanceState();

    /**
     * The alert notification methods. See `alert_config` below for details.
     * 
     */
    @Import(name="alertConfigs")
    private @Nullable Output> alertConfigs;

    /**
     * @return The alert notification methods. See `alert_config` below for details.
     * 
     */
    public Optional>> alertConfigs() {
        return Optional.ofNullable(this.alertConfigs);
    }

    /**
     * The alert group.
     * 
     */
    @Import(name="alertGroups")
    private @Nullable Output> alertGroups;

    /**
     * @return The alert group.
     * 
     */
    public Optional>> alertGroups() {
        return Optional.ofNullable(this.alertGroups);
    }

    /**
     * The access type of the CNAME domain name. Valid value: `PUBLIC`.
     * 
     */
    @Import(name="cnameType")
    private @Nullable Output cnameType;

    /**
     * @return The access type of the CNAME domain name. Valid value: `PUBLIC`.
     * 
     */
    public Optional> cnameType() {
        return Optional.ofNullable(this.cnameType);
    }

    /**
     * The force update.
     * 
     */
    @Import(name="forceUpdate")
    private @Nullable Output forceUpdate;

    /**
     * @return The force update.
     * 
     */
    public Optional> forceUpdate() {
        return Optional.ofNullable(this.forceUpdate);
    }

    /**
     * The quota of detection tasks.
     * 
     */
    @Import(name="healthCheckTaskCount")
    private @Nullable Output healthCheckTaskCount;

    /**
     * @return The quota of detection tasks.
     * 
     */
    public Optional> healthCheckTaskCount() {
        return Optional.ofNullable(this.healthCheckTaskCount);
    }

    /**
     * The name of the instance.
     * 
     */
    @Import(name="instanceName")
    private @Nullable Output instanceName;

    /**
     * @return The name of the instance.
     * 
     */
    public Optional> instanceName() {
        return Optional.ofNullable(this.instanceName);
    }

    /**
     * The lang.
     * 
     */
    @Import(name="lang")
    private @Nullable Output lang;

    /**
     * @return The lang.
     * 
     */
    public Optional> lang() {
        return Optional.ofNullable(this.lang);
    }

    /**
     * Paid package version. Valid values: `ultimate`, `standard`.
     * 
     */
    @Import(name="packageEdition")
    private @Nullable Output packageEdition;

    /**
     * @return Paid package version. Valid values: `ultimate`, `standard`.
     * 
     */
    public Optional> packageEdition() {
        return Optional.ofNullable(this.packageEdition);
    }

    /**
     * The Payment Type of the resource. Valid value: `Subscription`.
     * 
     */
    @Import(name="paymentType")
    private @Nullable Output paymentType;

    /**
     * @return The Payment Type of the resource. Valid value: `Subscription`.
     * 
     */
    public Optional> paymentType() {
        return Optional.ofNullable(this.paymentType);
    }

    /**
     * Creating a pre-paid instance, it must be set, the unit is month, please enter an integer multiple of 12 for annually paid products.
     * 
     */
    @Import(name="period")
    private @Nullable Output period;

    /**
     * @return Creating a pre-paid instance, it must be set, the unit is month, please enter an integer multiple of 12 for annually paid products.
     * 
     */
    public Optional> period() {
        return Optional.ofNullable(this.period);
    }

    /**
     * The Public Network domain name access method. Valid values: `CUSTOM`, `SYSTEM_ASSIGN`.
     * 
     */
    @Import(name="publicCnameMode")
    private @Nullable Output publicCnameMode;

    /**
     * @return The Public Network domain name access method. Valid values: `CUSTOM`, `SYSTEM_ASSIGN`.
     * 
     */
    public Optional> publicCnameMode() {
        return Optional.ofNullable(this.publicCnameMode);
    }

    /**
     * The CNAME access domain name.
     * 
     */
    @Import(name="publicRr")
    private @Nullable Output publicRr;

    /**
     * @return The CNAME access domain name.
     * 
     */
    public Optional> publicRr() {
        return Optional.ofNullable(this.publicRr);
    }

    /**
     * The website domain name that the user uses on the Internet.
     * 
     */
    @Import(name="publicUserDomainName")
    private @Nullable Output publicUserDomainName;

    /**
     * @return The website domain name that the user uses on the Internet.
     * 
     */
    public Optional> publicUserDomainName() {
        return Optional.ofNullable(this.publicUserDomainName);
    }

    /**
     * The domain name that is used to access GTM over the Internet.
     * 
     */
    @Import(name="publicZoneName")
    private @Nullable Output publicZoneName;

    /**
     * @return The domain name that is used to access GTM over the Internet.
     * 
     */
    public Optional> publicZoneName() {
        return Optional.ofNullable(this.publicZoneName);
    }

    /**
     * Automatic renewal period, the unit is month. When setting `renewal_status` to AutoRenewal, it must be set.
     * 
     */
    @Import(name="renewPeriod")
    private @Nullable Output renewPeriod;

    /**
     * @return Automatic renewal period, the unit is month. When setting `renewal_status` to AutoRenewal, it must be set.
     * 
     */
    public Optional> renewPeriod() {
        return Optional.ofNullable(this.renewPeriod);
    }

    /**
     * Automatic renewal status. Valid values: `AutoRenewal`, `ManualRenewal`.
     * 
     */
    @Import(name="renewalStatus")
    private @Nullable Output renewalStatus;

    /**
     * @return Automatic renewal status. Valid values: `AutoRenewal`, `ManualRenewal`.
     * 
     */
    public Optional> renewalStatus() {
        return Optional.ofNullable(this.renewalStatus);
    }

    /**
     * The ID of the resource group.
     * 
     */
    @Import(name="resourceGroupId")
    private @Nullable Output resourceGroupId;

    /**
     * @return The ID of the resource group.
     * 
     */
    public Optional> resourceGroupId() {
        return Optional.ofNullable(this.resourceGroupId);
    }

    /**
     * The quota of SMS notifications.
     * 
     */
    @Import(name="smsNotificationCount")
    private @Nullable Output smsNotificationCount;

    /**
     * @return The quota of SMS notifications.
     * 
     */
    public Optional> smsNotificationCount() {
        return Optional.ofNullable(this.smsNotificationCount);
    }

    /**
     * The type of the access policy. Valid values: `GEO`, `LATENCY`.
     * 
     */
    @Import(name="strategyMode")
    private @Nullable Output strategyMode;

    /**
     * @return The type of the access policy. Valid values: `GEO`, `LATENCY`.
     * 
     */
    public Optional> strategyMode() {
        return Optional.ofNullable(this.strategyMode);
    }

    /**
     * The global time to live. Valid values: `60`, `120`, `300`, `600`. Unit: second.
     * 
     */
    @Import(name="ttl")
    private @Nullable Output ttl;

    /**
     * @return The global time to live. Valid values: `60`, `120`, `300`, `600`. Unit: second.
     * 
     */
    public Optional> ttl() {
        return Optional.ofNullable(this.ttl);
    }

    private GtmInstanceState() {}

    private GtmInstanceState(GtmInstanceState $) {
        this.alertConfigs = $.alertConfigs;
        this.alertGroups = $.alertGroups;
        this.cnameType = $.cnameType;
        this.forceUpdate = $.forceUpdate;
        this.healthCheckTaskCount = $.healthCheckTaskCount;
        this.instanceName = $.instanceName;
        this.lang = $.lang;
        this.packageEdition = $.packageEdition;
        this.paymentType = $.paymentType;
        this.period = $.period;
        this.publicCnameMode = $.publicCnameMode;
        this.publicRr = $.publicRr;
        this.publicUserDomainName = $.publicUserDomainName;
        this.publicZoneName = $.publicZoneName;
        this.renewPeriod = $.renewPeriod;
        this.renewalStatus = $.renewalStatus;
        this.resourceGroupId = $.resourceGroupId;
        this.smsNotificationCount = $.smsNotificationCount;
        this.strategyMode = $.strategyMode;
        this.ttl = $.ttl;
    }

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

    public static final class Builder {
        private GtmInstanceState $;

        public Builder() {
            $ = new GtmInstanceState();
        }

        public Builder(GtmInstanceState defaults) {
            $ = new GtmInstanceState(Objects.requireNonNull(defaults));
        }

        /**
         * @param alertConfigs The alert notification methods. See `alert_config` below for details.
         * 
         * @return builder
         * 
         */
        public Builder alertConfigs(@Nullable Output> alertConfigs) {
            $.alertConfigs = alertConfigs;
            return this;
        }

        /**
         * @param alertConfigs The alert notification methods. See `alert_config` below for details.
         * 
         * @return builder
         * 
         */
        public Builder alertConfigs(List alertConfigs) {
            return alertConfigs(Output.of(alertConfigs));
        }

        /**
         * @param alertConfigs The alert notification methods. See `alert_config` below for details.
         * 
         * @return builder
         * 
         */
        public Builder alertConfigs(GtmInstanceAlertConfigArgs... alertConfigs) {
            return alertConfigs(List.of(alertConfigs));
        }

        /**
         * @param alertGroups The alert group.
         * 
         * @return builder
         * 
         */
        public Builder alertGroups(@Nullable Output> alertGroups) {
            $.alertGroups = alertGroups;
            return this;
        }

        /**
         * @param alertGroups The alert group.
         * 
         * @return builder
         * 
         */
        public Builder alertGroups(List alertGroups) {
            return alertGroups(Output.of(alertGroups));
        }

        /**
         * @param alertGroups The alert group.
         * 
         * @return builder
         * 
         */
        public Builder alertGroups(String... alertGroups) {
            return alertGroups(List.of(alertGroups));
        }

        /**
         * @param cnameType The access type of the CNAME domain name. Valid value: `PUBLIC`.
         * 
         * @return builder
         * 
         */
        public Builder cnameType(@Nullable Output cnameType) {
            $.cnameType = cnameType;
            return this;
        }

        /**
         * @param cnameType The access type of the CNAME domain name. Valid value: `PUBLIC`.
         * 
         * @return builder
         * 
         */
        public Builder cnameType(String cnameType) {
            return cnameType(Output.of(cnameType));
        }

        /**
         * @param forceUpdate The force update.
         * 
         * @return builder
         * 
         */
        public Builder forceUpdate(@Nullable Output forceUpdate) {
            $.forceUpdate = forceUpdate;
            return this;
        }

        /**
         * @param forceUpdate The force update.
         * 
         * @return builder
         * 
         */
        public Builder forceUpdate(Boolean forceUpdate) {
            return forceUpdate(Output.of(forceUpdate));
        }

        /**
         * @param healthCheckTaskCount The quota of detection tasks.
         * 
         * @return builder
         * 
         */
        public Builder healthCheckTaskCount(@Nullable Output healthCheckTaskCount) {
            $.healthCheckTaskCount = healthCheckTaskCount;
            return this;
        }

        /**
         * @param healthCheckTaskCount The quota of detection tasks.
         * 
         * @return builder
         * 
         */
        public Builder healthCheckTaskCount(Integer healthCheckTaskCount) {
            return healthCheckTaskCount(Output.of(healthCheckTaskCount));
        }

        /**
         * @param instanceName The name of the instance.
         * 
         * @return builder
         * 
         */
        public Builder instanceName(@Nullable Output instanceName) {
            $.instanceName = instanceName;
            return this;
        }

        /**
         * @param instanceName The name of the instance.
         * 
         * @return builder
         * 
         */
        public Builder instanceName(String instanceName) {
            return instanceName(Output.of(instanceName));
        }

        /**
         * @param lang The lang.
         * 
         * @return builder
         * 
         */
        public Builder lang(@Nullable Output lang) {
            $.lang = lang;
            return this;
        }

        /**
         * @param lang The lang.
         * 
         * @return builder
         * 
         */
        public Builder lang(String lang) {
            return lang(Output.of(lang));
        }

        /**
         * @param packageEdition Paid package version. Valid values: `ultimate`, `standard`.
         * 
         * @return builder
         * 
         */
        public Builder packageEdition(@Nullable Output packageEdition) {
            $.packageEdition = packageEdition;
            return this;
        }

        /**
         * @param packageEdition Paid package version. Valid values: `ultimate`, `standard`.
         * 
         * @return builder
         * 
         */
        public Builder packageEdition(String packageEdition) {
            return packageEdition(Output.of(packageEdition));
        }

        /**
         * @param paymentType The Payment Type of the resource. Valid value: `Subscription`.
         * 
         * @return builder
         * 
         */
        public Builder paymentType(@Nullable Output paymentType) {
            $.paymentType = paymentType;
            return this;
        }

        /**
         * @param paymentType The Payment Type of the resource. Valid value: `Subscription`.
         * 
         * @return builder
         * 
         */
        public Builder paymentType(String paymentType) {
            return paymentType(Output.of(paymentType));
        }

        /**
         * @param period Creating a pre-paid instance, it must be set, the unit is month, please enter an integer multiple of 12 for annually paid products.
         * 
         * @return builder
         * 
         */
        public Builder period(@Nullable Output period) {
            $.period = period;
            return this;
        }

        /**
         * @param period Creating a pre-paid instance, it must be set, the unit is month, please enter an integer multiple of 12 for annually paid products.
         * 
         * @return builder
         * 
         */
        public Builder period(Integer period) {
            return period(Output.of(period));
        }

        /**
         * @param publicCnameMode The Public Network domain name access method. Valid values: `CUSTOM`, `SYSTEM_ASSIGN`.
         * 
         * @return builder
         * 
         */
        public Builder publicCnameMode(@Nullable Output publicCnameMode) {
            $.publicCnameMode = publicCnameMode;
            return this;
        }

        /**
         * @param publicCnameMode The Public Network domain name access method. Valid values: `CUSTOM`, `SYSTEM_ASSIGN`.
         * 
         * @return builder
         * 
         */
        public Builder publicCnameMode(String publicCnameMode) {
            return publicCnameMode(Output.of(publicCnameMode));
        }

        /**
         * @param publicRr The CNAME access domain name.
         * 
         * @return builder
         * 
         */
        public Builder publicRr(@Nullable Output publicRr) {
            $.publicRr = publicRr;
            return this;
        }

        /**
         * @param publicRr The CNAME access domain name.
         * 
         * @return builder
         * 
         */
        public Builder publicRr(String publicRr) {
            return publicRr(Output.of(publicRr));
        }

        /**
         * @param publicUserDomainName The website domain name that the user uses on the Internet.
         * 
         * @return builder
         * 
         */
        public Builder publicUserDomainName(@Nullable Output publicUserDomainName) {
            $.publicUserDomainName = publicUserDomainName;
            return this;
        }

        /**
         * @param publicUserDomainName The website domain name that the user uses on the Internet.
         * 
         * @return builder
         * 
         */
        public Builder publicUserDomainName(String publicUserDomainName) {
            return publicUserDomainName(Output.of(publicUserDomainName));
        }

        /**
         * @param publicZoneName The domain name that is used to access GTM over the Internet.
         * 
         * @return builder
         * 
         */
        public Builder publicZoneName(@Nullable Output publicZoneName) {
            $.publicZoneName = publicZoneName;
            return this;
        }

        /**
         * @param publicZoneName The domain name that is used to access GTM over the Internet.
         * 
         * @return builder
         * 
         */
        public Builder publicZoneName(String publicZoneName) {
            return publicZoneName(Output.of(publicZoneName));
        }

        /**
         * @param renewPeriod Automatic renewal period, the unit is month. When setting `renewal_status` to AutoRenewal, it must be set.
         * 
         * @return builder
         * 
         */
        public Builder renewPeriod(@Nullable Output renewPeriod) {
            $.renewPeriod = renewPeriod;
            return this;
        }

        /**
         * @param renewPeriod Automatic renewal period, the unit is month. When setting `renewal_status` to AutoRenewal, it must be set.
         * 
         * @return builder
         * 
         */
        public Builder renewPeriod(Integer renewPeriod) {
            return renewPeriod(Output.of(renewPeriod));
        }

        /**
         * @param renewalStatus Automatic renewal status. Valid values: `AutoRenewal`, `ManualRenewal`.
         * 
         * @return builder
         * 
         */
        public Builder renewalStatus(@Nullable Output renewalStatus) {
            $.renewalStatus = renewalStatus;
            return this;
        }

        /**
         * @param renewalStatus Automatic renewal status. Valid values: `AutoRenewal`, `ManualRenewal`.
         * 
         * @return builder
         * 
         */
        public Builder renewalStatus(String renewalStatus) {
            return renewalStatus(Output.of(renewalStatus));
        }

        /**
         * @param resourceGroupId The ID of the resource group.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupId(@Nullable Output resourceGroupId) {
            $.resourceGroupId = resourceGroupId;
            return this;
        }

        /**
         * @param resourceGroupId The ID of the resource group.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupId(String resourceGroupId) {
            return resourceGroupId(Output.of(resourceGroupId));
        }

        /**
         * @param smsNotificationCount The quota of SMS notifications.
         * 
         * @return builder
         * 
         */
        public Builder smsNotificationCount(@Nullable Output smsNotificationCount) {
            $.smsNotificationCount = smsNotificationCount;
            return this;
        }

        /**
         * @param smsNotificationCount The quota of SMS notifications.
         * 
         * @return builder
         * 
         */
        public Builder smsNotificationCount(Integer smsNotificationCount) {
            return smsNotificationCount(Output.of(smsNotificationCount));
        }

        /**
         * @param strategyMode The type of the access policy. Valid values: `GEO`, `LATENCY`.
         * 
         * @return builder
         * 
         */
        public Builder strategyMode(@Nullable Output strategyMode) {
            $.strategyMode = strategyMode;
            return this;
        }

        /**
         * @param strategyMode The type of the access policy. Valid values: `GEO`, `LATENCY`.
         * 
         * @return builder
         * 
         */
        public Builder strategyMode(String strategyMode) {
            return strategyMode(Output.of(strategyMode));
        }

        /**
         * @param ttl The global time to live. Valid values: `60`, `120`, `300`, `600`. Unit: second.
         * 
         * @return builder
         * 
         */
        public Builder ttl(@Nullable Output ttl) {
            $.ttl = ttl;
            return this;
        }

        /**
         * @param ttl The global time to live. Valid values: `60`, `120`, `300`, `600`. Unit: second.
         * 
         * @return builder
         * 
         */
        public Builder ttl(Integer ttl) {
            return ttl(Output.of(ttl));
        }

        public GtmInstanceState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy