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

com.pulumi.azurenative.streamanalytics.outputs.OutputResponse 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.streamanalytics.outputs;

import com.pulumi.azurenative.streamanalytics.outputs.AvroSerializationResponse;
import com.pulumi.azurenative.streamanalytics.outputs.AzureDataLakeStoreOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.AzureFunctionOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.AzureSqlDatabaseOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.AzureSynapseOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.AzureTableOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.BlobOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.CsvSerializationResponse;
import com.pulumi.azurenative.streamanalytics.outputs.DiagnosticsResponse;
import com.pulumi.azurenative.streamanalytics.outputs.DocumentDbOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.EventHubOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.EventHubV2OutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.GatewayMessageBusOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.JsonSerializationResponse;
import com.pulumi.azurenative.streamanalytics.outputs.ParquetSerializationResponse;
import com.pulumi.azurenative.streamanalytics.outputs.PowerBIOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.ServiceBusQueueOutputDataSourceResponse;
import com.pulumi.azurenative.streamanalytics.outputs.ServiceBusTopicOutputDataSourceResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.Object;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class OutputResponse {
    /**
     * @return Describes the data source that output will be written to. Required on PUT (CreateOrReplace) requests.
     * 
     */
    private @Nullable Object datasource;
    /**
     * @return Describes conditions applicable to the Input, Output, or the job overall, that warrant customer attention.
     * 
     */
    private DiagnosticsResponse diagnostics;
    /**
     * @return The current entity tag for the output. This is an opaque string. You can use it to detect whether the resource has changed between requests. You can also use it in the If-Match or If-None-Match headers for write operations for optimistic concurrency.
     * 
     */
    private String etag;
    /**
     * @return Resource Id
     * 
     */
    private String id;
    /**
     * @return Resource name
     * 
     */
    private @Nullable String name;
    /**
     * @return Describes how data from an input is serialized or how data is serialized when written to an output. Required on PUT (CreateOrReplace) requests.
     * 
     */
    private @Nullable Object serialization;
    /**
     * @return The size window to constrain a Stream Analytics output to.
     * 
     */
    private @Nullable Integer sizeWindow;
    /**
     * @return The time frame for filtering Stream Analytics job outputs.
     * 
     */
    private @Nullable String timeWindow;
    /**
     * @return Resource type
     * 
     */
    private String type;

    private OutputResponse() {}
    /**
     * @return Describes the data source that output will be written to. Required on PUT (CreateOrReplace) requests.
     * 
     */
    public Optional datasource() {
        return Optional.ofNullable(this.datasource);
    }
    /**
     * @return Describes conditions applicable to the Input, Output, or the job overall, that warrant customer attention.
     * 
     */
    public DiagnosticsResponse diagnostics() {
        return this.diagnostics;
    }
    /**
     * @return The current entity tag for the output. This is an opaque string. You can use it to detect whether the resource has changed between requests. You can also use it in the If-Match or If-None-Match headers for write operations for optimistic concurrency.
     * 
     */
    public String etag() {
        return this.etag;
    }
    /**
     * @return Resource Id
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return Resource name
     * 
     */
    public Optional name() {
        return Optional.ofNullable(this.name);
    }
    /**
     * @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);
    }
    /**
     * @return The size window to constrain a Stream Analytics output to.
     * 
     */
    public Optional sizeWindow() {
        return Optional.ofNullable(this.sizeWindow);
    }
    /**
     * @return The time frame for filtering Stream Analytics job outputs.
     * 
     */
    public Optional timeWindow() {
        return Optional.ofNullable(this.timeWindow);
    }
    /**
     * @return Resource type
     * 
     */
    public String type() {
        return this.type;
    }

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

    public static Builder builder(OutputResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable Object datasource;
        private DiagnosticsResponse diagnostics;
        private String etag;
        private String id;
        private @Nullable String name;
        private @Nullable Object serialization;
        private @Nullable Integer sizeWindow;
        private @Nullable String timeWindow;
        private String type;
        public Builder() {}
        public Builder(OutputResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.datasource = defaults.datasource;
    	      this.diagnostics = defaults.diagnostics;
    	      this.etag = defaults.etag;
    	      this.id = defaults.id;
    	      this.name = defaults.name;
    	      this.serialization = defaults.serialization;
    	      this.sizeWindow = defaults.sizeWindow;
    	      this.timeWindow = defaults.timeWindow;
    	      this.type = defaults.type;
        }

        @CustomType.Setter
        public Builder datasource(@Nullable Object datasource) {

            this.datasource = datasource;
            return this;
        }
        @CustomType.Setter
        public Builder diagnostics(DiagnosticsResponse diagnostics) {
            if (diagnostics == null) {
              throw new MissingRequiredPropertyException("OutputResponse", "diagnostics");
            }
            this.diagnostics = diagnostics;
            return this;
        }
        @CustomType.Setter
        public Builder etag(String etag) {
            if (etag == null) {
              throw new MissingRequiredPropertyException("OutputResponse", "etag");
            }
            this.etag = etag;
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("OutputResponse", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder name(@Nullable String name) {

            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder serialization(@Nullable Object serialization) {

            this.serialization = serialization;
            return this;
        }
        @CustomType.Setter
        public Builder sizeWindow(@Nullable Integer sizeWindow) {

            this.sizeWindow = sizeWindow;
            return this;
        }
        @CustomType.Setter
        public Builder timeWindow(@Nullable String timeWindow) {

            this.timeWindow = timeWindow;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("OutputResponse", "type");
            }
            this.type = type;
            return this;
        }
        public OutputResponse build() {
            final var _resultValue = new OutputResponse();
            _resultValue.datasource = datasource;
            _resultValue.diagnostics = diagnostics;
            _resultValue.etag = etag;
            _resultValue.id = id;
            _resultValue.name = name;
            _resultValue.serialization = serialization;
            _resultValue.sizeWindow = sizeWindow;
            _resultValue.timeWindow = timeWindow;
            _resultValue.type = type;
            return _resultValue;
        }
    }
}