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

com.pulumi.azurenative.compute.inputs.AdditionalUnattendContentArgs Maven / Gradle / Ivy

// *** 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.compute.inputs;

import com.pulumi.azurenative.compute.enums.ComponentNames;
import com.pulumi.azurenative.compute.enums.PassNames;
import com.pulumi.azurenative.compute.enums.SettingNames;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Specifies additional XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup. Contents are defined by setting name, component name, and the pass in which the content is applied.
 * 
 */
public final class AdditionalUnattendContentArgs extends com.pulumi.resources.ResourceArgs {

    public static final AdditionalUnattendContentArgs Empty = new AdditionalUnattendContentArgs();

    /**
     * The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup.
     * 
     */
    @Import(name="componentName")
    private @Nullable Output componentName;

    /**
     * @return The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup.
     * 
     */
    public Optional> componentName() {
        return Optional.ofNullable(this.componentName);
    }

    /**
     * Specifies the XML formatted content that is added to the unattend.xml file for the specified path and component. The XML must be less than 4KB and must include the root element for the setting or feature that is being inserted.
     * 
     */
    @Import(name="content")
    private @Nullable Output content;

    /**
     * @return Specifies the XML formatted content that is added to the unattend.xml file for the specified path and component. The XML must be less than 4KB and must include the root element for the setting or feature that is being inserted.
     * 
     */
    public Optional> content() {
        return Optional.ofNullable(this.content);
    }

    /**
     * The pass name. Currently, the only allowable value is OobeSystem.
     * 
     */
    @Import(name="passName")
    private @Nullable Output passName;

    /**
     * @return The pass name. Currently, the only allowable value is OobeSystem.
     * 
     */
    public Optional> passName() {
        return Optional.ofNullable(this.passName);
    }

    /**
     * Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.
     * 
     */
    @Import(name="settingName")
    private @Nullable Output settingName;

    /**
     * @return Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.
     * 
     */
    public Optional> settingName() {
        return Optional.ofNullable(this.settingName);
    }

    private AdditionalUnattendContentArgs() {}

    private AdditionalUnattendContentArgs(AdditionalUnattendContentArgs $) {
        this.componentName = $.componentName;
        this.content = $.content;
        this.passName = $.passName;
        this.settingName = $.settingName;
    }

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

    public static final class Builder {
        private AdditionalUnattendContentArgs $;

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

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

        /**
         * @param componentName The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup.
         * 
         * @return builder
         * 
         */
        public Builder componentName(@Nullable Output componentName) {
            $.componentName = componentName;
            return this;
        }

        /**
         * @param componentName The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup.
         * 
         * @return builder
         * 
         */
        public Builder componentName(ComponentNames componentName) {
            return componentName(Output.of(componentName));
        }

        /**
         * @param content Specifies the XML formatted content that is added to the unattend.xml file for the specified path and component. The XML must be less than 4KB and must include the root element for the setting or feature that is being inserted.
         * 
         * @return builder
         * 
         */
        public Builder content(@Nullable Output content) {
            $.content = content;
            return this;
        }

        /**
         * @param content Specifies the XML formatted content that is added to the unattend.xml file for the specified path and component. The XML must be less than 4KB and must include the root element for the setting or feature that is being inserted.
         * 
         * @return builder
         * 
         */
        public Builder content(String content) {
            return content(Output.of(content));
        }

        /**
         * @param passName The pass name. Currently, the only allowable value is OobeSystem.
         * 
         * @return builder
         * 
         */
        public Builder passName(@Nullable Output passName) {
            $.passName = passName;
            return this;
        }

        /**
         * @param passName The pass name. Currently, the only allowable value is OobeSystem.
         * 
         * @return builder
         * 
         */
        public Builder passName(PassNames passName) {
            return passName(Output.of(passName));
        }

        /**
         * @param settingName Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.
         * 
         * @return builder
         * 
         */
        public Builder settingName(@Nullable Output settingName) {
            $.settingName = settingName;
            return this;
        }

        /**
         * @param settingName Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.
         * 
         * @return builder
         * 
         */
        public Builder settingName(SettingNames settingName) {
            return settingName(Output.of(settingName));
        }

        public AdditionalUnattendContentArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy