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

com.pulumi.aws.kinesisanalyticsv2.inputs.ApplicationApplicationConfigurationSqlApplicationConfigurationInputArgs 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.kinesisanalyticsv2.inputs;

import com.pulumi.aws.kinesisanalyticsv2.inputs.ApplicationApplicationConfigurationSqlApplicationConfigurationInputInputParallelismArgs;
import com.pulumi.aws.kinesisanalyticsv2.inputs.ApplicationApplicationConfigurationSqlApplicationConfigurationInputInputProcessingConfigurationArgs;
import com.pulumi.aws.kinesisanalyticsv2.inputs.ApplicationApplicationConfigurationSqlApplicationConfigurationInputInputSchemaArgs;
import com.pulumi.aws.kinesisanalyticsv2.inputs.ApplicationApplicationConfigurationSqlApplicationConfigurationInputInputStartingPositionConfigurationArgs;
import com.pulumi.aws.kinesisanalyticsv2.inputs.ApplicationApplicationConfigurationSqlApplicationConfigurationInputKinesisFirehoseInputArgs;
import com.pulumi.aws.kinesisanalyticsv2.inputs.ApplicationApplicationConfigurationSqlApplicationConfigurationInputKinesisStreamsInputArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final ApplicationApplicationConfigurationSqlApplicationConfigurationInputArgs Empty = new ApplicationApplicationConfigurationSqlApplicationConfigurationInputArgs();

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

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

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

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

    /**
     * Describes the number of in-application streams to create.
     * 
     */
    @Import(name="inputParallelism")
    private @Nullable Output inputParallelism;

    /**
     * @return Describes the number of in-application streams to create.
     * 
     */
    public Optional> inputParallelism() {
        return Optional.ofNullable(this.inputParallelism);
    }

    /**
     * The input processing configuration for the input.
     * An input processor transforms records as they are received from the stream, before the application's SQL code executes.
     * 
     */
    @Import(name="inputProcessingConfiguration")
    private @Nullable Output inputProcessingConfiguration;

    /**
     * @return The input processing configuration for the input.
     * An input processor transforms records as they are received from the stream, before the application's SQL code executes.
     * 
     */
    public Optional> inputProcessingConfiguration() {
        return Optional.ofNullable(this.inputProcessingConfiguration);
    }

    /**
     * Describes the format of the data in the streaming source, and how each data element maps to corresponding columns in the in-application stream that is being created.
     * 
     */
    @Import(name="inputSchema", required=true)
    private Output inputSchema;

    /**
     * @return Describes the format of the data in the streaming source, and how each data element maps to corresponding columns in the in-application stream that is being created.
     * 
     */
    public Output inputSchema() {
        return this.inputSchema;
    }

    /**
     * The point at which the application starts processing records from the streaming source.
     * 
     */
    @Import(name="inputStartingPositionConfigurations")
    private @Nullable Output> inputStartingPositionConfigurations;

    /**
     * @return The point at which the application starts processing records from the streaming source.
     * 
     */
    public Optional>> inputStartingPositionConfigurations() {
        return Optional.ofNullable(this.inputStartingPositionConfigurations);
    }

    /**
     * If the streaming source is a Kinesis Data Firehose delivery stream, identifies the delivery stream's ARN.
     * 
     */
    @Import(name="kinesisFirehoseInput")
    private @Nullable Output kinesisFirehoseInput;

    /**
     * @return If the streaming source is a Kinesis Data Firehose delivery stream, identifies the delivery stream's ARN.
     * 
     */
    public Optional> kinesisFirehoseInput() {
        return Optional.ofNullable(this.kinesisFirehoseInput);
    }

    /**
     * If the streaming source is a Kinesis data stream, identifies the stream's Amazon Resource Name (ARN).
     * 
     */
    @Import(name="kinesisStreamsInput")
    private @Nullable Output kinesisStreamsInput;

    /**
     * @return If the streaming source is a Kinesis data stream, identifies the stream's Amazon Resource Name (ARN).
     * 
     */
    public Optional> kinesisStreamsInput() {
        return Optional.ofNullable(this.kinesisStreamsInput);
    }

    /**
     * The name prefix to use when creating an in-application stream.
     * 
     */
    @Import(name="namePrefix", required=true)
    private Output namePrefix;

    /**
     * @return The name prefix to use when creating an in-application stream.
     * 
     */
    public Output namePrefix() {
        return this.namePrefix;
    }

    private ApplicationApplicationConfigurationSqlApplicationConfigurationInputArgs() {}

    private ApplicationApplicationConfigurationSqlApplicationConfigurationInputArgs(ApplicationApplicationConfigurationSqlApplicationConfigurationInputArgs $) {
        this.inAppStreamNames = $.inAppStreamNames;
        this.inputId = $.inputId;
        this.inputParallelism = $.inputParallelism;
        this.inputProcessingConfiguration = $.inputProcessingConfiguration;
        this.inputSchema = $.inputSchema;
        this.inputStartingPositionConfigurations = $.inputStartingPositionConfigurations;
        this.kinesisFirehoseInput = $.kinesisFirehoseInput;
        this.kinesisStreamsInput = $.kinesisStreamsInput;
        this.namePrefix = $.namePrefix;
    }

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

    public static final class Builder {
        private ApplicationApplicationConfigurationSqlApplicationConfigurationInputArgs $;

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

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

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

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

        public Builder inAppStreamNames(String... inAppStreamNames) {
            return inAppStreamNames(List.of(inAppStreamNames));
        }

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

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

        /**
         * @param inputParallelism Describes the number of in-application streams to create.
         * 
         * @return builder
         * 
         */
        public Builder inputParallelism(@Nullable Output inputParallelism) {
            $.inputParallelism = inputParallelism;
            return this;
        }

        /**
         * @param inputParallelism Describes the number of in-application streams to create.
         * 
         * @return builder
         * 
         */
        public Builder inputParallelism(ApplicationApplicationConfigurationSqlApplicationConfigurationInputInputParallelismArgs inputParallelism) {
            return inputParallelism(Output.of(inputParallelism));
        }

        /**
         * @param inputProcessingConfiguration The input processing configuration for the input.
         * An input processor transforms records as they are received from the stream, before the application's SQL code executes.
         * 
         * @return builder
         * 
         */
        public Builder inputProcessingConfiguration(@Nullable Output inputProcessingConfiguration) {
            $.inputProcessingConfiguration = inputProcessingConfiguration;
            return this;
        }

        /**
         * @param inputProcessingConfiguration The input processing configuration for the input.
         * An input processor transforms records as they are received from the stream, before the application's SQL code executes.
         * 
         * @return builder
         * 
         */
        public Builder inputProcessingConfiguration(ApplicationApplicationConfigurationSqlApplicationConfigurationInputInputProcessingConfigurationArgs inputProcessingConfiguration) {
            return inputProcessingConfiguration(Output.of(inputProcessingConfiguration));
        }

        /**
         * @param inputSchema Describes the format of the data in the streaming source, and how each data element maps to corresponding columns in the in-application stream that is being created.
         * 
         * @return builder
         * 
         */
        public Builder inputSchema(Output inputSchema) {
            $.inputSchema = inputSchema;
            return this;
        }

        /**
         * @param inputSchema Describes the format of the data in the streaming source, and how each data element maps to corresponding columns in the in-application stream that is being created.
         * 
         * @return builder
         * 
         */
        public Builder inputSchema(ApplicationApplicationConfigurationSqlApplicationConfigurationInputInputSchemaArgs inputSchema) {
            return inputSchema(Output.of(inputSchema));
        }

        /**
         * @param inputStartingPositionConfigurations The point at which the application starts processing records from the streaming source.
         * 
         * @return builder
         * 
         */
        public Builder inputStartingPositionConfigurations(@Nullable Output> inputStartingPositionConfigurations) {
            $.inputStartingPositionConfigurations = inputStartingPositionConfigurations;
            return this;
        }

        /**
         * @param inputStartingPositionConfigurations The point at which the application starts processing records from the streaming source.
         * 
         * @return builder
         * 
         */
        public Builder inputStartingPositionConfigurations(List inputStartingPositionConfigurations) {
            return inputStartingPositionConfigurations(Output.of(inputStartingPositionConfigurations));
        }

        /**
         * @param inputStartingPositionConfigurations The point at which the application starts processing records from the streaming source.
         * 
         * @return builder
         * 
         */
        public Builder inputStartingPositionConfigurations(ApplicationApplicationConfigurationSqlApplicationConfigurationInputInputStartingPositionConfigurationArgs... inputStartingPositionConfigurations) {
            return inputStartingPositionConfigurations(List.of(inputStartingPositionConfigurations));
        }

        /**
         * @param kinesisFirehoseInput If the streaming source is a Kinesis Data Firehose delivery stream, identifies the delivery stream's ARN.
         * 
         * @return builder
         * 
         */
        public Builder kinesisFirehoseInput(@Nullable Output kinesisFirehoseInput) {
            $.kinesisFirehoseInput = kinesisFirehoseInput;
            return this;
        }

        /**
         * @param kinesisFirehoseInput If the streaming source is a Kinesis Data Firehose delivery stream, identifies the delivery stream's ARN.
         * 
         * @return builder
         * 
         */
        public Builder kinesisFirehoseInput(ApplicationApplicationConfigurationSqlApplicationConfigurationInputKinesisFirehoseInputArgs kinesisFirehoseInput) {
            return kinesisFirehoseInput(Output.of(kinesisFirehoseInput));
        }

        /**
         * @param kinesisStreamsInput If the streaming source is a Kinesis data stream, identifies the stream's Amazon Resource Name (ARN).
         * 
         * @return builder
         * 
         */
        public Builder kinesisStreamsInput(@Nullable Output kinesisStreamsInput) {
            $.kinesisStreamsInput = kinesisStreamsInput;
            return this;
        }

        /**
         * @param kinesisStreamsInput If the streaming source is a Kinesis data stream, identifies the stream's Amazon Resource Name (ARN).
         * 
         * @return builder
         * 
         */
        public Builder kinesisStreamsInput(ApplicationApplicationConfigurationSqlApplicationConfigurationInputKinesisStreamsInputArgs kinesisStreamsInput) {
            return kinesisStreamsInput(Output.of(kinesisStreamsInput));
        }

        /**
         * @param namePrefix The name prefix to use when creating an in-application stream.
         * 
         * @return builder
         * 
         */
        public Builder namePrefix(Output namePrefix) {
            $.namePrefix = namePrefix;
            return this;
        }

        /**
         * @param namePrefix The name prefix to use when creating an in-application stream.
         * 
         * @return builder
         * 
         */
        public Builder namePrefix(String namePrefix) {
            return namePrefix(Output.of(namePrefix));
        }

        public ApplicationApplicationConfigurationSqlApplicationConfigurationInputArgs build() {
            if ($.inputSchema == null) {
                throw new MissingRequiredPropertyException("ApplicationApplicationConfigurationSqlApplicationConfigurationInputArgs", "inputSchema");
            }
            if ($.namePrefix == null) {
                throw new MissingRequiredPropertyException("ApplicationApplicationConfigurationSqlApplicationConfigurationInputArgs", "namePrefix");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy