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

com.pulumi.aws.lex.inputs.V2modelsSlotValueElicitationSettingPromptSpecificationArgs 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.aws.lex.inputs;

import com.pulumi.aws.lex.inputs.V2modelsSlotValueElicitationSettingPromptSpecificationMessageGroupArgs;
import com.pulumi.aws.lex.inputs.V2modelsSlotValueElicitationSettingPromptSpecificationPromptAttemptsSpecificationArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class V2modelsSlotValueElicitationSettingPromptSpecificationArgs extends com.pulumi.resources.ResourceArgs {

    public static final V2modelsSlotValueElicitationSettingPromptSpecificationArgs Empty = new V2modelsSlotValueElicitationSettingPromptSpecificationArgs();

    @Import(name="allowInterrupt")
    private @Nullable Output allowInterrupt;

    public Optional> allowInterrupt() {
        return Optional.ofNullable(this.allowInterrupt);
    }

    @Import(name="maxRetries", required=true)
    private Output maxRetries;

    public Output maxRetries() {
        return this.maxRetries;
    }

    @Import(name="messageGroups")
    private @Nullable Output> messageGroups;

    public Optional>> messageGroups() {
        return Optional.ofNullable(this.messageGroups);
    }

    @Import(name="messageSelectionStrategy")
    private @Nullable Output messageSelectionStrategy;

    public Optional> messageSelectionStrategy() {
        return Optional.ofNullable(this.messageSelectionStrategy);
    }

    @Import(name="promptAttemptsSpecifications")
    private @Nullable Output> promptAttemptsSpecifications;

    public Optional>> promptAttemptsSpecifications() {
        return Optional.ofNullable(this.promptAttemptsSpecifications);
    }

    private V2modelsSlotValueElicitationSettingPromptSpecificationArgs() {}

    private V2modelsSlotValueElicitationSettingPromptSpecificationArgs(V2modelsSlotValueElicitationSettingPromptSpecificationArgs $) {
        this.allowInterrupt = $.allowInterrupt;
        this.maxRetries = $.maxRetries;
        this.messageGroups = $.messageGroups;
        this.messageSelectionStrategy = $.messageSelectionStrategy;
        this.promptAttemptsSpecifications = $.promptAttemptsSpecifications;
    }

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

    public static final class Builder {
        private V2modelsSlotValueElicitationSettingPromptSpecificationArgs $;

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

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

        public Builder allowInterrupt(@Nullable Output allowInterrupt) {
            $.allowInterrupt = allowInterrupt;
            return this;
        }

        public Builder allowInterrupt(Boolean allowInterrupt) {
            return allowInterrupt(Output.of(allowInterrupt));
        }

        public Builder maxRetries(Output maxRetries) {
            $.maxRetries = maxRetries;
            return this;
        }

        public Builder maxRetries(Integer maxRetries) {
            return maxRetries(Output.of(maxRetries));
        }

        public Builder messageGroups(@Nullable Output> messageGroups) {
            $.messageGroups = messageGroups;
            return this;
        }

        public Builder messageGroups(List messageGroups) {
            return messageGroups(Output.of(messageGroups));
        }

        public Builder messageGroups(V2modelsSlotValueElicitationSettingPromptSpecificationMessageGroupArgs... messageGroups) {
            return messageGroups(List.of(messageGroups));
        }

        public Builder messageSelectionStrategy(@Nullable Output messageSelectionStrategy) {
            $.messageSelectionStrategy = messageSelectionStrategy;
            return this;
        }

        public Builder messageSelectionStrategy(String messageSelectionStrategy) {
            return messageSelectionStrategy(Output.of(messageSelectionStrategy));
        }

        public Builder promptAttemptsSpecifications(@Nullable Output> promptAttemptsSpecifications) {
            $.promptAttemptsSpecifications = promptAttemptsSpecifications;
            return this;
        }

        public Builder promptAttemptsSpecifications(List promptAttemptsSpecifications) {
            return promptAttemptsSpecifications(Output.of(promptAttemptsSpecifications));
        }

        public Builder promptAttemptsSpecifications(V2modelsSlotValueElicitationSettingPromptSpecificationPromptAttemptsSpecificationArgs... promptAttemptsSpecifications) {
            return promptAttemptsSpecifications(List.of(promptAttemptsSpecifications));
        }

        public V2modelsSlotValueElicitationSettingPromptSpecificationArgs build() {
            if ($.maxRetries == null) {
                throw new MissingRequiredPropertyException("V2modelsSlotValueElicitationSettingPromptSpecificationArgs", "maxRetries");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy