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

com.pulumi.alicloud.ecs.inputs.EipSegmentAddressState 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.ecs.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final EipSegmentAddressState Empty = new EipSegmentAddressState();

    /**
     * The maximum bandwidth of the contiguous EIP group. Unit: Mbit/s.
     * - Valid values when `InstanceChargeType` is set to `PostPaid` and `InternetChargeType` is set to `PayByBandwidth`: `1` to `500`.****
     * - Valid values when `InstanceChargeType` is set to `PostPaid` and `InternetChargeType` is set to `PayByTraffic`: `1` to `200`.****
     * - Valid values when `InstanceChargeType` is set to `PrePaid`: `1` to `1000`.****
     * 
     * Default value: `5`. Unit: Mbit/s.
     * 
     */
    @Import(name="bandwidth")
    private @Nullable Output bandwidth;

    /**
     * @return The maximum bandwidth of the contiguous EIP group. Unit: Mbit/s.
     * - Valid values when `InstanceChargeType` is set to `PostPaid` and `InternetChargeType` is set to `PayByBandwidth`: `1` to `500`.****
     * - Valid values when `InstanceChargeType` is set to `PostPaid` and `InternetChargeType` is set to `PayByTraffic`: `1` to `200`.****
     * - Valid values when `InstanceChargeType` is set to `PrePaid`: `1` to `1000`.****
     * 
     * Default value: `5`. Unit: Mbit/s.
     * 
     */
    public Optional> bandwidth() {
        return Optional.ofNullable(this.bandwidth);
    }

    /**
     * The time when the contiguous Elastic IP address group was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
     * 
     */
    @Import(name="createTime")
    private @Nullable Output createTime;

    /**
     * @return The time when the contiguous Elastic IP address group was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
     * 
     */
    public Optional> createTime() {
        return Optional.ofNullable(this.createTime);
    }

    /**
     * The subnet mask of the contiguous EIP group. Valid values:
     * 
     */
    @Import(name="eipMask")
    private @Nullable Output eipMask;

    /**
     * @return The subnet mask of the contiguous EIP group. Valid values:
     * 
     */
    public Optional> eipMask() {
        return Optional.ofNullable(this.eipMask);
    }

    /**
     * The metering method of the contiguous EIP group. Valid values:
     * - `PayByBandwidth` (default)
     * - `PayByTraffic`
     * 
     */
    @Import(name="internetChargeType")
    private @Nullable Output internetChargeType;

    /**
     * @return The metering method of the contiguous EIP group. Valid values:
     * - `PayByBandwidth` (default)
     * - `PayByTraffic`
     * 
     */
    public Optional> internetChargeType() {
        return Optional.ofNullable(this.internetChargeType);
    }

    /**
     * The line type. Valid values:
     * - `BGP` (default): BGP (Multi-ISP) line The BGP (Multi-ISP) line is supported in all regions.
     * - `BGP_PRO`: BGP (Multi-ISP) Pro line BGP (Multi-ISP) Pro line is supported only in the China (Hong Kong), Singapore, Japan (Tokyo), Malaysia (Kuala Lumpur), Philippines (Manila), Indonesia (Jakarta), and Thailand (Bangkok) regions.
     * 
     * For more information about the BGP (Multi-ISP) line and BGP (Multi-ISP) Pro line, see [EIP line types](https://www.alibabacloud.com/help/en/doc-detail/32321.html).
     * 
     * If you are allowed to use single-ISP bandwidth, you can also use one of the following values:
     * - `ChinaTelecom`
     * - `ChinaUnicom`
     * - `ChinaMobile`
     * - `ChinaTelecom_L2`
     * - `ChinaUnicom_L2`
     * - `ChinaMobile_L2`
     * 
     * If your services are deployed in China East 1 Finance, this parameter is required and you must set the parameter to `BGP_FinanceCloud`.
     * 
     */
    @Import(name="isp")
    private @Nullable Output isp;

    /**
     * @return The line type. Valid values:
     * - `BGP` (default): BGP (Multi-ISP) line The BGP (Multi-ISP) line is supported in all regions.
     * - `BGP_PRO`: BGP (Multi-ISP) Pro line BGP (Multi-ISP) Pro line is supported only in the China (Hong Kong), Singapore, Japan (Tokyo), Malaysia (Kuala Lumpur), Philippines (Manila), Indonesia (Jakarta), and Thailand (Bangkok) regions.
     * 
     * For more information about the BGP (Multi-ISP) line and BGP (Multi-ISP) Pro line, see [EIP line types](https://www.alibabacloud.com/help/en/doc-detail/32321.html).
     * 
     * If you are allowed to use single-ISP bandwidth, you can also use one of the following values:
     * - `ChinaTelecom`
     * - `ChinaUnicom`
     * - `ChinaMobile`
     * - `ChinaTelecom_L2`
     * - `ChinaUnicom_L2`
     * - `ChinaMobile_L2`
     * 
     * If your services are deployed in China East 1 Finance, this parameter is required and you must set the parameter to `BGP_FinanceCloud`.
     * 
     */
    public Optional> isp() {
        return Optional.ofNullable(this.isp);
    }

    /**
     * The network type. Set the value to `public`, which specifies the public network type.
     * 
     */
    @Import(name="netmode")
    private @Nullable Output netmode;

    /**
     * @return The network type. Set the value to `public`, which specifies the public network type.
     * 
     */
    public Optional> netmode() {
        return Optional.ofNullable(this.netmode);
    }

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

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

    /**
     * The name of the contiguous Elastic IP address group.
     * 
     */
    @Import(name="segmentAddressName")
    private @Nullable Output segmentAddressName;

    /**
     * @return The name of the contiguous Elastic IP address group.
     * 
     */
    public Optional> segmentAddressName() {
        return Optional.ofNullable(this.segmentAddressName);
    }

    /**
     * The status of the resource
     * 
     */
    @Import(name="status")
    private @Nullable Output status;

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

    /**
     * The zone of the contiguous EIP group.
     * 
     */
    @Import(name="zone")
    private @Nullable Output zone;

    /**
     * @return The zone of the contiguous EIP group.
     * 
     */
    public Optional> zone() {
        return Optional.ofNullable(this.zone);
    }

    private EipSegmentAddressState() {}

    private EipSegmentAddressState(EipSegmentAddressState $) {
        this.bandwidth = $.bandwidth;
        this.createTime = $.createTime;
        this.eipMask = $.eipMask;
        this.internetChargeType = $.internetChargeType;
        this.isp = $.isp;
        this.netmode = $.netmode;
        this.resourceGroupId = $.resourceGroupId;
        this.segmentAddressName = $.segmentAddressName;
        this.status = $.status;
        this.zone = $.zone;
    }

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

    public static final class Builder {
        private EipSegmentAddressState $;

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

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

        /**
         * @param bandwidth The maximum bandwidth of the contiguous EIP group. Unit: Mbit/s.
         * - Valid values when `InstanceChargeType` is set to `PostPaid` and `InternetChargeType` is set to `PayByBandwidth`: `1` to `500`.****
         * - Valid values when `InstanceChargeType` is set to `PostPaid` and `InternetChargeType` is set to `PayByTraffic`: `1` to `200`.****
         * - Valid values when `InstanceChargeType` is set to `PrePaid`: `1` to `1000`.****
         * 
         * Default value: `5`. Unit: Mbit/s.
         * 
         * @return builder
         * 
         */
        public Builder bandwidth(@Nullable Output bandwidth) {
            $.bandwidth = bandwidth;
            return this;
        }

        /**
         * @param bandwidth The maximum bandwidth of the contiguous EIP group. Unit: Mbit/s.
         * - Valid values when `InstanceChargeType` is set to `PostPaid` and `InternetChargeType` is set to `PayByBandwidth`: `1` to `500`.****
         * - Valid values when `InstanceChargeType` is set to `PostPaid` and `InternetChargeType` is set to `PayByTraffic`: `1` to `200`.****
         * - Valid values when `InstanceChargeType` is set to `PrePaid`: `1` to `1000`.****
         * 
         * Default value: `5`. Unit: Mbit/s.
         * 
         * @return builder
         * 
         */
        public Builder bandwidth(String bandwidth) {
            return bandwidth(Output.of(bandwidth));
        }

        /**
         * @param createTime The time when the contiguous Elastic IP address group was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
         * 
         * @return builder
         * 
         */
        public Builder createTime(@Nullable Output createTime) {
            $.createTime = createTime;
            return this;
        }

        /**
         * @param createTime The time when the contiguous Elastic IP address group was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
         * 
         * @return builder
         * 
         */
        public Builder createTime(String createTime) {
            return createTime(Output.of(createTime));
        }

        /**
         * @param eipMask The subnet mask of the contiguous EIP group. Valid values:
         * 
         * @return builder
         * 
         */
        public Builder eipMask(@Nullable Output eipMask) {
            $.eipMask = eipMask;
            return this;
        }

        /**
         * @param eipMask The subnet mask of the contiguous EIP group. Valid values:
         * 
         * @return builder
         * 
         */
        public Builder eipMask(String eipMask) {
            return eipMask(Output.of(eipMask));
        }

        /**
         * @param internetChargeType The metering method of the contiguous EIP group. Valid values:
         * - `PayByBandwidth` (default)
         * - `PayByTraffic`
         * 
         * @return builder
         * 
         */
        public Builder internetChargeType(@Nullable Output internetChargeType) {
            $.internetChargeType = internetChargeType;
            return this;
        }

        /**
         * @param internetChargeType The metering method of the contiguous EIP group. Valid values:
         * - `PayByBandwidth` (default)
         * - `PayByTraffic`
         * 
         * @return builder
         * 
         */
        public Builder internetChargeType(String internetChargeType) {
            return internetChargeType(Output.of(internetChargeType));
        }

        /**
         * @param isp The line type. Valid values:
         * - `BGP` (default): BGP (Multi-ISP) line The BGP (Multi-ISP) line is supported in all regions.
         * - `BGP_PRO`: BGP (Multi-ISP) Pro line BGP (Multi-ISP) Pro line is supported only in the China (Hong Kong), Singapore, Japan (Tokyo), Malaysia (Kuala Lumpur), Philippines (Manila), Indonesia (Jakarta), and Thailand (Bangkok) regions.
         * 
         * For more information about the BGP (Multi-ISP) line and BGP (Multi-ISP) Pro line, see [EIP line types](https://www.alibabacloud.com/help/en/doc-detail/32321.html).
         * 
         * If you are allowed to use single-ISP bandwidth, you can also use one of the following values:
         * - `ChinaTelecom`
         * - `ChinaUnicom`
         * - `ChinaMobile`
         * - `ChinaTelecom_L2`
         * - `ChinaUnicom_L2`
         * - `ChinaMobile_L2`
         * 
         * If your services are deployed in China East 1 Finance, this parameter is required and you must set the parameter to `BGP_FinanceCloud`.
         * 
         * @return builder
         * 
         */
        public Builder isp(@Nullable Output isp) {
            $.isp = isp;
            return this;
        }

        /**
         * @param isp The line type. Valid values:
         * - `BGP` (default): BGP (Multi-ISP) line The BGP (Multi-ISP) line is supported in all regions.
         * - `BGP_PRO`: BGP (Multi-ISP) Pro line BGP (Multi-ISP) Pro line is supported only in the China (Hong Kong), Singapore, Japan (Tokyo), Malaysia (Kuala Lumpur), Philippines (Manila), Indonesia (Jakarta), and Thailand (Bangkok) regions.
         * 
         * For more information about the BGP (Multi-ISP) line and BGP (Multi-ISP) Pro line, see [EIP line types](https://www.alibabacloud.com/help/en/doc-detail/32321.html).
         * 
         * If you are allowed to use single-ISP bandwidth, you can also use one of the following values:
         * - `ChinaTelecom`
         * - `ChinaUnicom`
         * - `ChinaMobile`
         * - `ChinaTelecom_L2`
         * - `ChinaUnicom_L2`
         * - `ChinaMobile_L2`
         * 
         * If your services are deployed in China East 1 Finance, this parameter is required and you must set the parameter to `BGP_FinanceCloud`.
         * 
         * @return builder
         * 
         */
        public Builder isp(String isp) {
            return isp(Output.of(isp));
        }

        /**
         * @param netmode The network type. Set the value to `public`, which specifies the public network type.
         * 
         * @return builder
         * 
         */
        public Builder netmode(@Nullable Output netmode) {
            $.netmode = netmode;
            return this;
        }

        /**
         * @param netmode The network type. Set the value to `public`, which specifies the public network type.
         * 
         * @return builder
         * 
         */
        public Builder netmode(String netmode) {
            return netmode(Output.of(netmode));
        }

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

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

        /**
         * @param segmentAddressName The name of the contiguous Elastic IP address group.
         * 
         * @return builder
         * 
         */
        public Builder segmentAddressName(@Nullable Output segmentAddressName) {
            $.segmentAddressName = segmentAddressName;
            return this;
        }

        /**
         * @param segmentAddressName The name of the contiguous Elastic IP address group.
         * 
         * @return builder
         * 
         */
        public Builder segmentAddressName(String segmentAddressName) {
            return segmentAddressName(Output.of(segmentAddressName));
        }

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

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

        /**
         * @param zone The zone of the contiguous EIP group.
         * 
         * @return builder
         * 
         */
        public Builder zone(@Nullable Output zone) {
            $.zone = zone;
            return this;
        }

        /**
         * @param zone The zone of the contiguous EIP group.
         * 
         * @return builder
         * 
         */
        public Builder zone(String zone) {
            return zone(Output.of(zone));
        }

        public EipSegmentAddressState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy