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

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

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

import com.pulumi.azurenative.migrate.inputs.HypervVirtualizationManagementSettingsArgs;
import com.pulumi.azurenative.migrate.inputs.OtherManagementCostsSettingsArgs;
import com.pulumi.azurenative.migrate.inputs.ThirdPartyManagementSettingsArgs;
import com.pulumi.azurenative.migrate.inputs.VsphereManagementSettingsArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.util.Objects;


/**
 * Management settings.
 * 
 */
public final class ManagementSettingsArgs extends com.pulumi.resources.ResourceArgs {

    public static final ManagementSettingsArgs Empty = new ManagementSettingsArgs();

    /**
     * HyperV Virtualization Management Settings.
     * 
     */
    @Import(name="hypervVirtualizationManagementSettings", required=true)
    private Output hypervVirtualizationManagementSettings;

    /**
     * @return HyperV Virtualization Management Settings.
     * 
     */
    public Output hypervVirtualizationManagementSettings() {
        return this.hypervVirtualizationManagementSettings;
    }

    /**
     * Other Management Costs Settings.
     * 
     */
    @Import(name="otherManagementCostsSettings", required=true)
    private Output otherManagementCostsSettings;

    /**
     * @return Other Management Costs Settings.
     * 
     */
    public Output otherManagementCostsSettings() {
        return this.otherManagementCostsSettings;
    }

    /**
     * Third Party Management Settings.
     * 
     */
    @Import(name="thirdPartyManagementSettings", required=true)
    private Output thirdPartyManagementSettings;

    /**
     * @return Third Party Management Settings.
     * 
     */
    public Output thirdPartyManagementSettings() {
        return this.thirdPartyManagementSettings;
    }

    /**
     * vSphere Management Settings.
     * 
     */
    @Import(name="vsphereManagementSettings", required=true)
    private Output vsphereManagementSettings;

    /**
     * @return vSphere Management Settings.
     * 
     */
    public Output vsphereManagementSettings() {
        return this.vsphereManagementSettings;
    }

    private ManagementSettingsArgs() {}

    private ManagementSettingsArgs(ManagementSettingsArgs $) {
        this.hypervVirtualizationManagementSettings = $.hypervVirtualizationManagementSettings;
        this.otherManagementCostsSettings = $.otherManagementCostsSettings;
        this.thirdPartyManagementSettings = $.thirdPartyManagementSettings;
        this.vsphereManagementSettings = $.vsphereManagementSettings;
    }

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

    public static final class Builder {
        private ManagementSettingsArgs $;

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

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

        /**
         * @param hypervVirtualizationManagementSettings HyperV Virtualization Management Settings.
         * 
         * @return builder
         * 
         */
        public Builder hypervVirtualizationManagementSettings(Output hypervVirtualizationManagementSettings) {
            $.hypervVirtualizationManagementSettings = hypervVirtualizationManagementSettings;
            return this;
        }

        /**
         * @param hypervVirtualizationManagementSettings HyperV Virtualization Management Settings.
         * 
         * @return builder
         * 
         */
        public Builder hypervVirtualizationManagementSettings(HypervVirtualizationManagementSettingsArgs hypervVirtualizationManagementSettings) {
            return hypervVirtualizationManagementSettings(Output.of(hypervVirtualizationManagementSettings));
        }

        /**
         * @param otherManagementCostsSettings Other Management Costs Settings.
         * 
         * @return builder
         * 
         */
        public Builder otherManagementCostsSettings(Output otherManagementCostsSettings) {
            $.otherManagementCostsSettings = otherManagementCostsSettings;
            return this;
        }

        /**
         * @param otherManagementCostsSettings Other Management Costs Settings.
         * 
         * @return builder
         * 
         */
        public Builder otherManagementCostsSettings(OtherManagementCostsSettingsArgs otherManagementCostsSettings) {
            return otherManagementCostsSettings(Output.of(otherManagementCostsSettings));
        }

        /**
         * @param thirdPartyManagementSettings Third Party Management Settings.
         * 
         * @return builder
         * 
         */
        public Builder thirdPartyManagementSettings(Output thirdPartyManagementSettings) {
            $.thirdPartyManagementSettings = thirdPartyManagementSettings;
            return this;
        }

        /**
         * @param thirdPartyManagementSettings Third Party Management Settings.
         * 
         * @return builder
         * 
         */
        public Builder thirdPartyManagementSettings(ThirdPartyManagementSettingsArgs thirdPartyManagementSettings) {
            return thirdPartyManagementSettings(Output.of(thirdPartyManagementSettings));
        }

        /**
         * @param vsphereManagementSettings vSphere Management Settings.
         * 
         * @return builder
         * 
         */
        public Builder vsphereManagementSettings(Output vsphereManagementSettings) {
            $.vsphereManagementSettings = vsphereManagementSettings;
            return this;
        }

        /**
         * @param vsphereManagementSettings vSphere Management Settings.
         * 
         * @return builder
         * 
         */
        public Builder vsphereManagementSettings(VsphereManagementSettingsArgs vsphereManagementSettings) {
            return vsphereManagementSettings(Output.of(vsphereManagementSettings));
        }

        public ManagementSettingsArgs build() {
            if ($.hypervVirtualizationManagementSettings == null) {
                throw new MissingRequiredPropertyException("ManagementSettingsArgs", "hypervVirtualizationManagementSettings");
            }
            if ($.otherManagementCostsSettings == null) {
                throw new MissingRequiredPropertyException("ManagementSettingsArgs", "otherManagementCostsSettings");
            }
            if ($.thirdPartyManagementSettings == null) {
                throw new MissingRequiredPropertyException("ManagementSettingsArgs", "thirdPartyManagementSettings");
            }
            if ($.vsphereManagementSettings == null) {
                throw new MissingRequiredPropertyException("ManagementSettingsArgs", "vsphereManagementSettings");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy