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

com.pulumi.azurenative.batch.outputs.DataDiskResponse 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.batch.outputs;

import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class DataDiskResponse {
    /**
     * @return Values are:
     * 
     *  none - The caching mode for the disk is not enabled.
     *  readOnly - The caching mode for the disk is read only.
     *  readWrite - The caching mode for the disk is read and write.
     * 
     *  The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.
     * 
     */
    private @Nullable String caching;
    private Integer diskSizeGB;
    /**
     * @return The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
     * 
     */
    private Integer lun;
    /**
     * @return If omitted, the default is "Standard_LRS". Values are:
     * 
     *  Standard_LRS - The data disk should use standard locally redundant storage.
     *  Premium_LRS - The data disk should use premium locally redundant storage.
     * 
     */
    private @Nullable String storageAccountType;

    private DataDiskResponse() {}
    /**
     * @return Values are:
     * 
     *  none - The caching mode for the disk is not enabled.
     *  readOnly - The caching mode for the disk is read only.
     *  readWrite - The caching mode for the disk is read and write.
     * 
     *  The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.
     * 
     */
    public Optional caching() {
        return Optional.ofNullable(this.caching);
    }
    public Integer diskSizeGB() {
        return this.diskSizeGB;
    }
    /**
     * @return The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
     * 
     */
    public Integer lun() {
        return this.lun;
    }
    /**
     * @return If omitted, the default is "Standard_LRS". Values are:
     * 
     *  Standard_LRS - The data disk should use standard locally redundant storage.
     *  Premium_LRS - The data disk should use premium locally redundant storage.
     * 
     */
    public Optional storageAccountType() {
        return Optional.ofNullable(this.storageAccountType);
    }

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

    public static Builder builder(DataDiskResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable String caching;
        private Integer diskSizeGB;
        private Integer lun;
        private @Nullable String storageAccountType;
        public Builder() {}
        public Builder(DataDiskResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.caching = defaults.caching;
    	      this.diskSizeGB = defaults.diskSizeGB;
    	      this.lun = defaults.lun;
    	      this.storageAccountType = defaults.storageAccountType;
        }

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

            this.caching = caching;
            return this;
        }
        @CustomType.Setter
        public Builder diskSizeGB(Integer diskSizeGB) {
            if (diskSizeGB == null) {
              throw new MissingRequiredPropertyException("DataDiskResponse", "diskSizeGB");
            }
            this.diskSizeGB = diskSizeGB;
            return this;
        }
        @CustomType.Setter
        public Builder lun(Integer lun) {
            if (lun == null) {
              throw new MissingRequiredPropertyException("DataDiskResponse", "lun");
            }
            this.lun = lun;
            return this;
        }
        @CustomType.Setter
        public Builder storageAccountType(@Nullable String storageAccountType) {

            this.storageAccountType = storageAccountType;
            return this;
        }
        public DataDiskResponse build() {
            final var _resultValue = new DataDiskResponse();
            _resultValue.caching = caching;
            _resultValue.diskSizeGB = diskSizeGB;
            _resultValue.lun = lun;
            _resultValue.storageAccountType = storageAccountType;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy