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

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

There is a newer version: 2.72.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.enums.AuthenticationMode;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.core.internal.Codegen;
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;


/**
 * Describes an Event Hub output data source.
 * 
 */
public final class EventHubV2OutputDataSourceArgs extends com.pulumi.resources.ResourceArgs {

    public static final EventHubV2OutputDataSourceArgs Empty = new EventHubV2OutputDataSourceArgs();

    /**
     * Authentication Mode.
     * 
     */
    @Import(name="authenticationMode")
    private @Nullable Output> authenticationMode;

    /**
     * @return Authentication Mode.
     * 
     */
    public Optional>> authenticationMode() {
        return Optional.ofNullable(this.authenticationMode);
    }

    /**
     * The name of the Event Hub. Required on PUT (CreateOrReplace) requests.
     * 
     */
    @Import(name="eventHubName")
    private @Nullable Output eventHubName;

    /**
     * @return The name of the Event Hub. Required on PUT (CreateOrReplace) requests.
     * 
     */
    public Optional> eventHubName() {
        return Optional.ofNullable(this.eventHubName);
    }

    /**
     * The key/column that is used to determine to which partition to send event data.
     * 
     */
    @Import(name="partitionKey")
    private @Nullable Output partitionKey;

    /**
     * @return The key/column that is used to determine to which partition to send event data.
     * 
     */
    public Optional> partitionKey() {
        return Optional.ofNullable(this.partitionKey);
    }

    /**
     * The properties associated with this Event Hub output.
     * 
     */
    @Import(name="propertyColumns")
    private @Nullable Output> propertyColumns;

    /**
     * @return The properties associated with this Event Hub output.
     * 
     */
    public Optional>> propertyColumns() {
        return Optional.ofNullable(this.propertyColumns);
    }

    /**
     * The namespace that is associated with the desired Event Hub, Service Bus Queue, Service Bus Topic, etc. Required on PUT (CreateOrReplace) requests.
     * 
     */
    @Import(name="serviceBusNamespace")
    private @Nullable Output serviceBusNamespace;

    /**
     * @return The namespace that is associated with the desired Event Hub, Service Bus Queue, Service Bus Topic, etc. Required on PUT (CreateOrReplace) requests.
     * 
     */
    public Optional> serviceBusNamespace() {
        return Optional.ofNullable(this.serviceBusNamespace);
    }

    /**
     * The shared access policy key for the specified shared access policy. Required on PUT (CreateOrReplace) requests.
     * 
     */
    @Import(name="sharedAccessPolicyKey")
    private @Nullable Output sharedAccessPolicyKey;

    /**
     * @return The shared access policy key for the specified shared access policy. Required on PUT (CreateOrReplace) requests.
     * 
     */
    public Optional> sharedAccessPolicyKey() {
        return Optional.ofNullable(this.sharedAccessPolicyKey);
    }

    /**
     * The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. Required on PUT (CreateOrReplace) requests.
     * 
     */
    @Import(name="sharedAccessPolicyName")
    private @Nullable Output sharedAccessPolicyName;

    /**
     * @return The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. Required on PUT (CreateOrReplace) requests.
     * 
     */
    public Optional> sharedAccessPolicyName() {
        return Optional.ofNullable(this.sharedAccessPolicyName);
    }

    /**
     * Indicates the type of data source output will be written to. Required on PUT (CreateOrReplace) requests.
     * Expected value is 'Microsoft.EventHub/EventHub'.
     * 
     */
    @Import(name="type", required=true)
    private Output type;

    /**
     * @return Indicates the type of data source output will be written to. Required on PUT (CreateOrReplace) requests.
     * Expected value is 'Microsoft.EventHub/EventHub'.
     * 
     */
    public Output type() {
        return this.type;
    }

    private EventHubV2OutputDataSourceArgs() {}

    private EventHubV2OutputDataSourceArgs(EventHubV2OutputDataSourceArgs $) {
        this.authenticationMode = $.authenticationMode;
        this.eventHubName = $.eventHubName;
        this.partitionKey = $.partitionKey;
        this.propertyColumns = $.propertyColumns;
        this.serviceBusNamespace = $.serviceBusNamespace;
        this.sharedAccessPolicyKey = $.sharedAccessPolicyKey;
        this.sharedAccessPolicyName = $.sharedAccessPolicyName;
        this.type = $.type;
    }

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

    public static final class Builder {
        private EventHubV2OutputDataSourceArgs $;

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

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

        /**
         * @param authenticationMode Authentication Mode.
         * 
         * @return builder
         * 
         */
        public Builder authenticationMode(@Nullable Output> authenticationMode) {
            $.authenticationMode = authenticationMode;
            return this;
        }

        /**
         * @param authenticationMode Authentication Mode.
         * 
         * @return builder
         * 
         */
        public Builder authenticationMode(Either authenticationMode) {
            return authenticationMode(Output.of(authenticationMode));
        }

        /**
         * @param authenticationMode Authentication Mode.
         * 
         * @return builder
         * 
         */
        public Builder authenticationMode(String authenticationMode) {
            return authenticationMode(Either.ofLeft(authenticationMode));
        }

        /**
         * @param authenticationMode Authentication Mode.
         * 
         * @return builder
         * 
         */
        public Builder authenticationMode(AuthenticationMode authenticationMode) {
            return authenticationMode(Either.ofRight(authenticationMode));
        }

        /**
         * @param eventHubName The name of the Event Hub. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder eventHubName(@Nullable Output eventHubName) {
            $.eventHubName = eventHubName;
            return this;
        }

        /**
         * @param eventHubName The name of the Event Hub. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder eventHubName(String eventHubName) {
            return eventHubName(Output.of(eventHubName));
        }

        /**
         * @param partitionKey The key/column that is used to determine to which partition to send event data.
         * 
         * @return builder
         * 
         */
        public Builder partitionKey(@Nullable Output partitionKey) {
            $.partitionKey = partitionKey;
            return this;
        }

        /**
         * @param partitionKey The key/column that is used to determine to which partition to send event data.
         * 
         * @return builder
         * 
         */
        public Builder partitionKey(String partitionKey) {
            return partitionKey(Output.of(partitionKey));
        }

        /**
         * @param propertyColumns The properties associated with this Event Hub output.
         * 
         * @return builder
         * 
         */
        public Builder propertyColumns(@Nullable Output> propertyColumns) {
            $.propertyColumns = propertyColumns;
            return this;
        }

        /**
         * @param propertyColumns The properties associated with this Event Hub output.
         * 
         * @return builder
         * 
         */
        public Builder propertyColumns(List propertyColumns) {
            return propertyColumns(Output.of(propertyColumns));
        }

        /**
         * @param propertyColumns The properties associated with this Event Hub output.
         * 
         * @return builder
         * 
         */
        public Builder propertyColumns(String... propertyColumns) {
            return propertyColumns(List.of(propertyColumns));
        }

        /**
         * @param serviceBusNamespace The namespace that is associated with the desired Event Hub, Service Bus Queue, Service Bus Topic, etc. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder serviceBusNamespace(@Nullable Output serviceBusNamespace) {
            $.serviceBusNamespace = serviceBusNamespace;
            return this;
        }

        /**
         * @param serviceBusNamespace The namespace that is associated with the desired Event Hub, Service Bus Queue, Service Bus Topic, etc. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder serviceBusNamespace(String serviceBusNamespace) {
            return serviceBusNamespace(Output.of(serviceBusNamespace));
        }

        /**
         * @param sharedAccessPolicyKey The shared access policy key for the specified shared access policy. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder sharedAccessPolicyKey(@Nullable Output sharedAccessPolicyKey) {
            $.sharedAccessPolicyKey = sharedAccessPolicyKey;
            return this;
        }

        /**
         * @param sharedAccessPolicyKey The shared access policy key for the specified shared access policy. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder sharedAccessPolicyKey(String sharedAccessPolicyKey) {
            return sharedAccessPolicyKey(Output.of(sharedAccessPolicyKey));
        }

        /**
         * @param sharedAccessPolicyName The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder sharedAccessPolicyName(@Nullable Output sharedAccessPolicyName) {
            $.sharedAccessPolicyName = sharedAccessPolicyName;
            return this;
        }

        /**
         * @param sharedAccessPolicyName The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. Required on PUT (CreateOrReplace) requests.
         * 
         * @return builder
         * 
         */
        public Builder sharedAccessPolicyName(String sharedAccessPolicyName) {
            return sharedAccessPolicyName(Output.of(sharedAccessPolicyName));
        }

        /**
         * @param type Indicates the type of data source output will be written to. Required on PUT (CreateOrReplace) requests.
         * Expected value is 'Microsoft.EventHub/EventHub'.
         * 
         * @return builder
         * 
         */
        public Builder type(Output type) {
            $.type = type;
            return this;
        }

        /**
         * @param type Indicates the type of data source output will be written to. Required on PUT (CreateOrReplace) requests.
         * Expected value is 'Microsoft.EventHub/EventHub'.
         * 
         * @return builder
         * 
         */
        public Builder type(String type) {
            return type(Output.of(type));
        }

        public EventHubV2OutputDataSourceArgs build() {
            $.type = Codegen.stringProp("type").output().arg($.type).require();
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy