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

com.pulumi.alicloud.cen.inputs.InstanceAttachmentState 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.cen.inputs;

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


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

    public static final InstanceAttachmentState Empty = new InstanceAttachmentState();

    /**
     * The account ID to which the CEN instance belongs.
     * 
     * ->**NOTE:** Ensure that the child instance is not used in Express Connect.
     * 
     */
    @Import(name="cenOwnerId")
    private @Nullable Output cenOwnerId;

    /**
     * @return The account ID to which the CEN instance belongs.
     * 
     * ->**NOTE:** Ensure that the child instance is not used in Express Connect.
     * 
     */
    public Optional> cenOwnerId() {
        return Optional.ofNullable(this.cenOwnerId);
    }

    /**
     * The ID of the child instance to attach.
     * 
     */
    @Import(name="childInstanceId")
    private @Nullable Output childInstanceId;

    /**
     * @return The ID of the child instance to attach.
     * 
     */
    public Optional> childInstanceId() {
        return Optional.ofNullable(this.childInstanceId);
    }

    /**
     * The uid of the child instance. Only used when attach a child instance of other account.
     * 
     */
    @Import(name="childInstanceOwnerId")
    private @Nullable Output childInstanceOwnerId;

    /**
     * @return The uid of the child instance. Only used when attach a child instance of other account.
     * 
     */
    public Optional> childInstanceOwnerId() {
        return Optional.ofNullable(this.childInstanceOwnerId);
    }

    /**
     * The region ID of the child instance to attach.
     * 
     */
    @Import(name="childInstanceRegionId")
    private @Nullable Output childInstanceRegionId;

    /**
     * @return The region ID of the child instance to attach.
     * 
     */
    public Optional> childInstanceRegionId() {
        return Optional.ofNullable(this.childInstanceRegionId);
    }

    /**
     * The type of the associated network. Valid values: `VPC`, `VBR` and `CCN`.
     * 
     */
    @Import(name="childInstanceType")
    private @Nullable Output childInstanceType;

    /**
     * @return The type of the associated network. Valid values: `VPC`, `VBR` and `CCN`.
     * 
     */
    public Optional> childInstanceType() {
        return Optional.ofNullable(this.childInstanceType);
    }

    /**
     * The ID of the CEN.
     * 
     */
    @Import(name="instanceId")
    private @Nullable Output instanceId;

    /**
     * @return The ID of the CEN.
     * 
     */
    public Optional> instanceId() {
        return Optional.ofNullable(this.instanceId);
    }

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

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

    private InstanceAttachmentState() {}

    private InstanceAttachmentState(InstanceAttachmentState $) {
        this.cenOwnerId = $.cenOwnerId;
        this.childInstanceId = $.childInstanceId;
        this.childInstanceOwnerId = $.childInstanceOwnerId;
        this.childInstanceRegionId = $.childInstanceRegionId;
        this.childInstanceType = $.childInstanceType;
        this.instanceId = $.instanceId;
        this.status = $.status;
    }

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

    public static final class Builder {
        private InstanceAttachmentState $;

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

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

        /**
         * @param cenOwnerId The account ID to which the CEN instance belongs.
         * 
         * ->**NOTE:** Ensure that the child instance is not used in Express Connect.
         * 
         * @return builder
         * 
         */
        public Builder cenOwnerId(@Nullable Output cenOwnerId) {
            $.cenOwnerId = cenOwnerId;
            return this;
        }

        /**
         * @param cenOwnerId The account ID to which the CEN instance belongs.
         * 
         * ->**NOTE:** Ensure that the child instance is not used in Express Connect.
         * 
         * @return builder
         * 
         */
        public Builder cenOwnerId(Integer cenOwnerId) {
            return cenOwnerId(Output.of(cenOwnerId));
        }

        /**
         * @param childInstanceId The ID of the child instance to attach.
         * 
         * @return builder
         * 
         */
        public Builder childInstanceId(@Nullable Output childInstanceId) {
            $.childInstanceId = childInstanceId;
            return this;
        }

        /**
         * @param childInstanceId The ID of the child instance to attach.
         * 
         * @return builder
         * 
         */
        public Builder childInstanceId(String childInstanceId) {
            return childInstanceId(Output.of(childInstanceId));
        }

        /**
         * @param childInstanceOwnerId The uid of the child instance. Only used when attach a child instance of other account.
         * 
         * @return builder
         * 
         */
        public Builder childInstanceOwnerId(@Nullable Output childInstanceOwnerId) {
            $.childInstanceOwnerId = childInstanceOwnerId;
            return this;
        }

        /**
         * @param childInstanceOwnerId The uid of the child instance. Only used when attach a child instance of other account.
         * 
         * @return builder
         * 
         */
        public Builder childInstanceOwnerId(Integer childInstanceOwnerId) {
            return childInstanceOwnerId(Output.of(childInstanceOwnerId));
        }

        /**
         * @param childInstanceRegionId The region ID of the child instance to attach.
         * 
         * @return builder
         * 
         */
        public Builder childInstanceRegionId(@Nullable Output childInstanceRegionId) {
            $.childInstanceRegionId = childInstanceRegionId;
            return this;
        }

        /**
         * @param childInstanceRegionId The region ID of the child instance to attach.
         * 
         * @return builder
         * 
         */
        public Builder childInstanceRegionId(String childInstanceRegionId) {
            return childInstanceRegionId(Output.of(childInstanceRegionId));
        }

        /**
         * @param childInstanceType The type of the associated network. Valid values: `VPC`, `VBR` and `CCN`.
         * 
         * @return builder
         * 
         */
        public Builder childInstanceType(@Nullable Output childInstanceType) {
            $.childInstanceType = childInstanceType;
            return this;
        }

        /**
         * @param childInstanceType The type of the associated network. Valid values: `VPC`, `VBR` and `CCN`.
         * 
         * @return builder
         * 
         */
        public Builder childInstanceType(String childInstanceType) {
            return childInstanceType(Output.of(childInstanceType));
        }

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

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

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

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

        public InstanceAttachmentState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy