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

com.pulumi.azurenative.devices.inputs.RoutingEndpointsArgs 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.devices.inputs;

import com.pulumi.azurenative.devices.inputs.RoutingCosmosDBSqlApiPropertiesArgs;
import com.pulumi.azurenative.devices.inputs.RoutingEventHubPropertiesArgs;
import com.pulumi.azurenative.devices.inputs.RoutingServiceBusQueueEndpointPropertiesArgs;
import com.pulumi.azurenative.devices.inputs.RoutingServiceBusTopicEndpointPropertiesArgs;
import com.pulumi.azurenative.devices.inputs.RoutingStorageContainerPropertiesArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs.
 * 
 */
public final class RoutingEndpointsArgs extends com.pulumi.resources.ResourceArgs {

    public static final RoutingEndpointsArgs Empty = new RoutingEndpointsArgs();

    /**
     * The list of Cosmos DB collection endpoints that IoT hub routes messages to, based on the routing rules.
     * 
     */
    @Import(name="cosmosDBSqlCollections")
    private @Nullable Output> cosmosDBSqlCollections;

    /**
     * @return The list of Cosmos DB collection endpoints that IoT hub routes messages to, based on the routing rules.
     * 
     */
    public Optional>> cosmosDBSqlCollections() {
        return Optional.ofNullable(this.cosmosDBSqlCollections);
    }

    /**
     * The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.
     * 
     */
    @Import(name="eventHubs")
    private @Nullable Output> eventHubs;

    /**
     * @return The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.
     * 
     */
    public Optional>> eventHubs() {
        return Optional.ofNullable(this.eventHubs);
    }

    /**
     * The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.
     * 
     */
    @Import(name="serviceBusQueues")
    private @Nullable Output> serviceBusQueues;

    /**
     * @return The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.
     * 
     */
    public Optional>> serviceBusQueues() {
        return Optional.ofNullable(this.serviceBusQueues);
    }

    /**
     * The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.
     * 
     */
    @Import(name="serviceBusTopics")
    private @Nullable Output> serviceBusTopics;

    /**
     * @return The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.
     * 
     */
    public Optional>> serviceBusTopics() {
        return Optional.ofNullable(this.serviceBusTopics);
    }

    /**
     * The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.
     * 
     */
    @Import(name="storageContainers")
    private @Nullable Output> storageContainers;

    /**
     * @return The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.
     * 
     */
    public Optional>> storageContainers() {
        return Optional.ofNullable(this.storageContainers);
    }

    private RoutingEndpointsArgs() {}

    private RoutingEndpointsArgs(RoutingEndpointsArgs $) {
        this.cosmosDBSqlCollections = $.cosmosDBSqlCollections;
        this.eventHubs = $.eventHubs;
        this.serviceBusQueues = $.serviceBusQueues;
        this.serviceBusTopics = $.serviceBusTopics;
        this.storageContainers = $.storageContainers;
    }

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

    public static final class Builder {
        private RoutingEndpointsArgs $;

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

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

        /**
         * @param cosmosDBSqlCollections The list of Cosmos DB collection endpoints that IoT hub routes messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder cosmosDBSqlCollections(@Nullable Output> cosmosDBSqlCollections) {
            $.cosmosDBSqlCollections = cosmosDBSqlCollections;
            return this;
        }

        /**
         * @param cosmosDBSqlCollections The list of Cosmos DB collection endpoints that IoT hub routes messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder cosmosDBSqlCollections(List cosmosDBSqlCollections) {
            return cosmosDBSqlCollections(Output.of(cosmosDBSqlCollections));
        }

        /**
         * @param cosmosDBSqlCollections The list of Cosmos DB collection endpoints that IoT hub routes messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder cosmosDBSqlCollections(RoutingCosmosDBSqlApiPropertiesArgs... cosmosDBSqlCollections) {
            return cosmosDBSqlCollections(List.of(cosmosDBSqlCollections));
        }

        /**
         * @param eventHubs The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.
         * 
         * @return builder
         * 
         */
        public Builder eventHubs(@Nullable Output> eventHubs) {
            $.eventHubs = eventHubs;
            return this;
        }

        /**
         * @param eventHubs The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.
         * 
         * @return builder
         * 
         */
        public Builder eventHubs(List eventHubs) {
            return eventHubs(Output.of(eventHubs));
        }

        /**
         * @param eventHubs The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.
         * 
         * @return builder
         * 
         */
        public Builder eventHubs(RoutingEventHubPropertiesArgs... eventHubs) {
            return eventHubs(List.of(eventHubs));
        }

        /**
         * @param serviceBusQueues The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder serviceBusQueues(@Nullable Output> serviceBusQueues) {
            $.serviceBusQueues = serviceBusQueues;
            return this;
        }

        /**
         * @param serviceBusQueues The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder serviceBusQueues(List serviceBusQueues) {
            return serviceBusQueues(Output.of(serviceBusQueues));
        }

        /**
         * @param serviceBusQueues The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder serviceBusQueues(RoutingServiceBusQueueEndpointPropertiesArgs... serviceBusQueues) {
            return serviceBusQueues(List.of(serviceBusQueues));
        }

        /**
         * @param serviceBusTopics The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder serviceBusTopics(@Nullable Output> serviceBusTopics) {
            $.serviceBusTopics = serviceBusTopics;
            return this;
        }

        /**
         * @param serviceBusTopics The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder serviceBusTopics(List serviceBusTopics) {
            return serviceBusTopics(Output.of(serviceBusTopics));
        }

        /**
         * @param serviceBusTopics The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder serviceBusTopics(RoutingServiceBusTopicEndpointPropertiesArgs... serviceBusTopics) {
            return serviceBusTopics(List.of(serviceBusTopics));
        }

        /**
         * @param storageContainers The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder storageContainers(@Nullable Output> storageContainers) {
            $.storageContainers = storageContainers;
            return this;
        }

        /**
         * @param storageContainers The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder storageContainers(List storageContainers) {
            return storageContainers(Output.of(storageContainers));
        }

        /**
         * @param storageContainers The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.
         * 
         * @return builder
         * 
         */
        public Builder storageContainers(RoutingStorageContainerPropertiesArgs... storageContainers) {
            return storageContainers(List.of(storageContainers));
        }

        public RoutingEndpointsArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy