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

com.pulumi.azurenative.hybridnetwork.inputs.DataDiskArgs Maven / Gradle / Ivy

There is a newer version: 2.78.0
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.azurenative.hybridnetwork.inputs;

import com.pulumi.azurenative.hybridnetwork.enums.DiskCreateOptionTypes;
import com.pulumi.core.Either;
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;


/**
 * Specifies information about the operating system disk used by the virtual machine. <br><br> For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
 * 
 */
public final class DataDiskArgs extends com.pulumi.resources.ResourceArgs {

    public static final DataDiskArgs Empty = new DataDiskArgs();

    /**
     * Specifies how the virtual machine should be created.
     * 
     */
    @Import(name="createOption")
    private @Nullable Output> createOption;

    /**
     * @return Specifies how the virtual machine should be created.
     * 
     */
    public Optional>> createOption() {
        return Optional.ofNullable(this.createOption);
    }

    /**
     * Specifies the size of an empty disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.
     * 
     */
    @Import(name="diskSizeGB")
    private @Nullable Output diskSizeGB;

    /**
     * @return Specifies the size of an empty disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.
     * 
     */
    public Optional> diskSizeGB() {
        return Optional.ofNullable(this.diskSizeGB);
    }

    /**
     * The name of data disk.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return The name of data disk.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    private DataDiskArgs() {}

    private DataDiskArgs(DataDiskArgs $) {
        this.createOption = $.createOption;
        this.diskSizeGB = $.diskSizeGB;
        this.name = $.name;
    }

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

    public static final class Builder {
        private DataDiskArgs $;

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

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

        /**
         * @param createOption Specifies how the virtual machine should be created.
         * 
         * @return builder
         * 
         */
        public Builder createOption(@Nullable Output> createOption) {
            $.createOption = createOption;
            return this;
        }

        /**
         * @param createOption Specifies how the virtual machine should be created.
         * 
         * @return builder
         * 
         */
        public Builder createOption(Either createOption) {
            return createOption(Output.of(createOption));
        }

        /**
         * @param createOption Specifies how the virtual machine should be created.
         * 
         * @return builder
         * 
         */
        public Builder createOption(String createOption) {
            return createOption(Either.ofLeft(createOption));
        }

        /**
         * @param createOption Specifies how the virtual machine should be created.
         * 
         * @return builder
         * 
         */
        public Builder createOption(DiskCreateOptionTypes createOption) {
            return createOption(Either.ofRight(createOption));
        }

        /**
         * @param diskSizeGB Specifies the size of an empty disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.
         * 
         * @return builder
         * 
         */
        public Builder diskSizeGB(@Nullable Output diskSizeGB) {
            $.diskSizeGB = diskSizeGB;
            return this;
        }

        /**
         * @param diskSizeGB Specifies the size of an empty disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.
         * 
         * @return builder
         * 
         */
        public Builder diskSizeGB(Integer diskSizeGB) {
            return diskSizeGB(Output.of(diskSizeGB));
        }

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

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

        public DataDiskArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy