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

com.pulumi.azurenative.streamanalytics.inputs.OutputArgs Maven / Gradle / Ivy

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

import com.pulumi.azurenative.streamanalytics.inputs.AvroSerializationArgs;
import com.pulumi.azurenative.streamanalytics.inputs.AzureDataLakeStoreOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.AzureFunctionOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.AzureSqlDatabaseOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.AzureSynapseOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.AzureTableOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.BlobOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.CsvSerializationArgs;
import com.pulumi.azurenative.streamanalytics.inputs.DocumentDbOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.EventHubOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.EventHubV2OutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.GatewayMessageBusOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.JsonSerializationArgs;
import com.pulumi.azurenative.streamanalytics.inputs.ParquetSerializationArgs;
import com.pulumi.azurenative.streamanalytics.inputs.PowerBIOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.ServiceBusQueueOutputDataSourceArgs;
import com.pulumi.azurenative.streamanalytics.inputs.ServiceBusTopicOutputDataSourceArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Integer;
import java.lang.Object;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * An output object, containing all information associated with the named output. All outputs are contained under a streaming job.
 * 
 */
public final class OutputArgs extends com.pulumi.resources.ResourceArgs {

    public static final OutputArgs Empty = new OutputArgs();

    /**
     * Describes the data source that output will be written to. Required on PUT (CreateOrReplace) requests.
     * 
     */
    @Import(name="datasource")
    private @Nullable Output datasource;

    /**
     * @return Describes the data source that output will be written to. Required on PUT (CreateOrReplace) requests.
     * 
     */
    public Optional> datasource() {
        return Optional.ofNullable(this.datasource);
    }

    /**
     * Resource name
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return Resource name
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * Describes how data from an input is serialized or how data is serialized when written to an output. Required on PUT (CreateOrReplace) requests.
     * 
     */
    @Import(name="serialization")
    private @Nullable Output serialization;

    /**
     * @return Describes how data from an input is serialized or how data is serialized when written to an output. Required on PUT (CreateOrReplace) requests.
     * 
     */
    public Optional> serialization() {
        return Optional.ofNullable(this.serialization);
    }

    /**
     * The size window to constrain a Stream Analytics output to.
     * 
     */
    @Import(name="sizeWindow")
    private @Nullable Output sizeWindow;

    /**
     * @return The size window to constrain a Stream Analytics output to.
     * 
     */
    public Optional> sizeWindow() {
        return Optional.ofNullable(this.sizeWindow);
    }

    /**
     * The time frame for filtering Stream Analytics job outputs.
     * 
     */
    @Import(name="timeWindow")
    private @Nullable Output timeWindow;

    /**
     * @return The time frame for filtering Stream Analytics job outputs.
     * 
     */
    public Optional> timeWindow() {
        return Optional.ofNullable(this.timeWindow);
    }

    private OutputArgs() {}

    private OutputArgs(OutputArgs $) {
        this.datasource = $.datasource;
        this.name = $.name;
        this.serialization = $.serialization;
        this.sizeWindow = $.sizeWindow;
        this.timeWindow = $.timeWindow;
    }

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

    public static final class Builder {
        private OutputArgs $;

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

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

        /**
         * @param datasource Describes the data source that output will be written to. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder datasource(@Nullable Output datasource) {
            $.datasource = datasource;
            return this;
        }

        /**
         * @param datasource Describes the data source that output will be written to. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder datasource(Object datasource) {
            return datasource(Output.of(datasource));
        }

        /**
         * @param name Resource name
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name Resource name
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param serialization Describes how data from an input is serialized or how data is serialized when written to an output. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder serialization(@Nullable Output serialization) {
            $.serialization = serialization;
            return this;
        }

        /**
         * @param serialization Describes how data from an input is serialized or how data is serialized when written to an output. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder serialization(Object serialization) {
            return serialization(Output.of(serialization));
        }

        /**
         * @param sizeWindow The size window to constrain a Stream Analytics output to.
         * 
         * @return builder
         * 
         */
        public Builder sizeWindow(@Nullable Output sizeWindow) {
            $.sizeWindow = sizeWindow;
            return this;
        }

        /**
         * @param sizeWindow The size window to constrain a Stream Analytics output to.
         * 
         * @return builder
         * 
         */
        public Builder sizeWindow(Integer sizeWindow) {
            return sizeWindow(Output.of(sizeWindow));
        }

        /**
         * @param timeWindow The time frame for filtering Stream Analytics job outputs.
         * 
         * @return builder
         * 
         */
        public Builder timeWindow(@Nullable Output timeWindow) {
            $.timeWindow = timeWindow;
            return this;
        }

        /**
         * @param timeWindow The time frame for filtering Stream Analytics job outputs.
         * 
         * @return builder
         * 
         */
        public Builder timeWindow(String timeWindow) {
            return timeWindow(Output.of(timeWindow));
        }

        public OutputArgs build() {
            return $;
        }
    }

}