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

com.pulumi.azurenative.migrate.inputs.ComputeSettingsArgs Maven / Gradle / Ivy

There is a newer version: 2.89.2
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.migrate.inputs;

import com.pulumi.azurenative.migrate.inputs.LinuxServerLicensingSettingsArgs;
import com.pulumi.azurenative.migrate.inputs.SqlServerLicensingSettingsArgs;
import com.pulumi.azurenative.migrate.inputs.VirtualizationSoftwareSettingsArgs;
import com.pulumi.azurenative.migrate.inputs.WindowsServerLicensingSettingsArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Double;
import java.util.List;
import java.util.Objects;


/**
 * Compute settings.
 * 
 */
public final class ComputeSettingsArgs extends com.pulumi.resources.ResourceArgs {

    public static final ComputeSettingsArgs Empty = new ComputeSettingsArgs();

    /**
     * Hyperthread core to memory ratio.
     * 
     */
    @Import(name="hyperthreadCoreToMemoryRatio", required=true)
    private Output hyperthreadCoreToMemoryRatio;

    /**
     * @return Hyperthread core to memory ratio.
     * 
     */
    public Output hyperthreadCoreToMemoryRatio() {
        return this.hyperthreadCoreToMemoryRatio;
    }

    /**
     * Compute Price.
     * 
     */
    @Import(name="price", required=true)
    private Output price;

    /**
     * @return Compute Price.
     * 
     */
    public Output price() {
        return this.price;
    }

    /**
     * Linux Rhel Server licensing settings.
     * 
     */
    @Import(name="rhelLinuxServerLicensing", required=true)
    private Output rhelLinuxServerLicensing;

    /**
     * @return Linux Rhel Server licensing settings.
     * 
     */
    public Output rhelLinuxServerLicensing() {
        return this.rhelLinuxServerLicensing;
    }

    /**
     * SQL Server licensing settings.
     * 
     */
    @Import(name="sqlServerLicensing", required=true)
    private Output> sqlServerLicensing;

    /**
     * @return SQL Server licensing settings.
     * 
     */
    public Output> sqlServerLicensing() {
        return this.sqlServerLicensing;
    }

    /**
     * Linux Suse Server licensing settings.
     * 
     */
    @Import(name="suseLinuxServerLicensing", required=true)
    private Output suseLinuxServerLicensing;

    /**
     * @return Linux Suse Server licensing settings.
     * 
     */
    public Output suseLinuxServerLicensing() {
        return this.suseLinuxServerLicensing;
    }

    /**
     * Virtualization software settings.
     * 
     */
    @Import(name="virtualizationSoftwareSettings", required=true)
    private Output virtualizationSoftwareSettings;

    /**
     * @return Virtualization software settings.
     * 
     */
    public Output virtualizationSoftwareSettings() {
        return this.virtualizationSoftwareSettings;
    }

    /**
     * Windows Server licensing settings.
     * 
     */
    @Import(name="windowsServerLicensing", required=true)
    private Output windowsServerLicensing;

    /**
     * @return Windows Server licensing settings.
     * 
     */
    public Output windowsServerLicensing() {
        return this.windowsServerLicensing;
    }

    private ComputeSettingsArgs() {}

    private ComputeSettingsArgs(ComputeSettingsArgs $) {
        this.hyperthreadCoreToMemoryRatio = $.hyperthreadCoreToMemoryRatio;
        this.price = $.price;
        this.rhelLinuxServerLicensing = $.rhelLinuxServerLicensing;
        this.sqlServerLicensing = $.sqlServerLicensing;
        this.suseLinuxServerLicensing = $.suseLinuxServerLicensing;
        this.virtualizationSoftwareSettings = $.virtualizationSoftwareSettings;
        this.windowsServerLicensing = $.windowsServerLicensing;
    }

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

    public static final class Builder {
        private ComputeSettingsArgs $;

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

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

        /**
         * @param hyperthreadCoreToMemoryRatio Hyperthread core to memory ratio.
         * 
         * @return builder
         * 
         */
        public Builder hyperthreadCoreToMemoryRatio(Output hyperthreadCoreToMemoryRatio) {
            $.hyperthreadCoreToMemoryRatio = hyperthreadCoreToMemoryRatio;
            return this;
        }

        /**
         * @param hyperthreadCoreToMemoryRatio Hyperthread core to memory ratio.
         * 
         * @return builder
         * 
         */
        public Builder hyperthreadCoreToMemoryRatio(Double hyperthreadCoreToMemoryRatio) {
            return hyperthreadCoreToMemoryRatio(Output.of(hyperthreadCoreToMemoryRatio));
        }

        /**
         * @param price Compute Price.
         * 
         * @return builder
         * 
         */
        public Builder price(Output price) {
            $.price = price;
            return this;
        }

        /**
         * @param price Compute Price.
         * 
         * @return builder
         * 
         */
        public Builder price(Double price) {
            return price(Output.of(price));
        }

        /**
         * @param rhelLinuxServerLicensing Linux Rhel Server licensing settings.
         * 
         * @return builder
         * 
         */
        public Builder rhelLinuxServerLicensing(Output rhelLinuxServerLicensing) {
            $.rhelLinuxServerLicensing = rhelLinuxServerLicensing;
            return this;
        }

        /**
         * @param rhelLinuxServerLicensing Linux Rhel Server licensing settings.
         * 
         * @return builder
         * 
         */
        public Builder rhelLinuxServerLicensing(LinuxServerLicensingSettingsArgs rhelLinuxServerLicensing) {
            return rhelLinuxServerLicensing(Output.of(rhelLinuxServerLicensing));
        }

        /**
         * @param sqlServerLicensing SQL Server licensing settings.
         * 
         * @return builder
         * 
         */
        public Builder sqlServerLicensing(Output> sqlServerLicensing) {
            $.sqlServerLicensing = sqlServerLicensing;
            return this;
        }

        /**
         * @param sqlServerLicensing SQL Server licensing settings.
         * 
         * @return builder
         * 
         */
        public Builder sqlServerLicensing(List sqlServerLicensing) {
            return sqlServerLicensing(Output.of(sqlServerLicensing));
        }

        /**
         * @param sqlServerLicensing SQL Server licensing settings.
         * 
         * @return builder
         * 
         */
        public Builder sqlServerLicensing(SqlServerLicensingSettingsArgs... sqlServerLicensing) {
            return sqlServerLicensing(List.of(sqlServerLicensing));
        }

        /**
         * @param suseLinuxServerLicensing Linux Suse Server licensing settings.
         * 
         * @return builder
         * 
         */
        public Builder suseLinuxServerLicensing(Output suseLinuxServerLicensing) {
            $.suseLinuxServerLicensing = suseLinuxServerLicensing;
            return this;
        }

        /**
         * @param suseLinuxServerLicensing Linux Suse Server licensing settings.
         * 
         * @return builder
         * 
         */
        public Builder suseLinuxServerLicensing(LinuxServerLicensingSettingsArgs suseLinuxServerLicensing) {
            return suseLinuxServerLicensing(Output.of(suseLinuxServerLicensing));
        }

        /**
         * @param virtualizationSoftwareSettings Virtualization software settings.
         * 
         * @return builder
         * 
         */
        public Builder virtualizationSoftwareSettings(Output virtualizationSoftwareSettings) {
            $.virtualizationSoftwareSettings = virtualizationSoftwareSettings;
            return this;
        }

        /**
         * @param virtualizationSoftwareSettings Virtualization software settings.
         * 
         * @return builder
         * 
         */
        public Builder virtualizationSoftwareSettings(VirtualizationSoftwareSettingsArgs virtualizationSoftwareSettings) {
            return virtualizationSoftwareSettings(Output.of(virtualizationSoftwareSettings));
        }

        /**
         * @param windowsServerLicensing Windows Server licensing settings.
         * 
         * @return builder
         * 
         */
        public Builder windowsServerLicensing(Output windowsServerLicensing) {
            $.windowsServerLicensing = windowsServerLicensing;
            return this;
        }

        /**
         * @param windowsServerLicensing Windows Server licensing settings.
         * 
         * @return builder
         * 
         */
        public Builder windowsServerLicensing(WindowsServerLicensingSettingsArgs windowsServerLicensing) {
            return windowsServerLicensing(Output.of(windowsServerLicensing));
        }

        public ComputeSettingsArgs build() {
            if ($.hyperthreadCoreToMemoryRatio == null) {
                throw new MissingRequiredPropertyException("ComputeSettingsArgs", "hyperthreadCoreToMemoryRatio");
            }
            if ($.price == null) {
                throw new MissingRequiredPropertyException("ComputeSettingsArgs", "price");
            }
            if ($.rhelLinuxServerLicensing == null) {
                throw new MissingRequiredPropertyException("ComputeSettingsArgs", "rhelLinuxServerLicensing");
            }
            if ($.sqlServerLicensing == null) {
                throw new MissingRequiredPropertyException("ComputeSettingsArgs", "sqlServerLicensing");
            }
            if ($.suseLinuxServerLicensing == null) {
                throw new MissingRequiredPropertyException("ComputeSettingsArgs", "suseLinuxServerLicensing");
            }
            if ($.virtualizationSoftwareSettings == null) {
                throw new MissingRequiredPropertyException("ComputeSettingsArgs", "virtualizationSoftwareSettings");
            }
            if ($.windowsServerLicensing == null) {
                throw new MissingRequiredPropertyException("ComputeSettingsArgs", "windowsServerLicensing");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy