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

com.pulumi.azurenative.insights.ExportConfigurationArgs 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.insights;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final ExportConfigurationArgs Empty = new ExportConfigurationArgs();

    /**
     * The name of destination storage account.
     * 
     */
    @Import(name="destinationAccountId")
    private @Nullable Output destinationAccountId;

    /**
     * @return The name of destination storage account.
     * 
     */
    public Optional> destinationAccountId() {
        return Optional.ofNullable(this.destinationAccountId);
    }

    /**
     * The SAS URL for the destination storage container. It must grant write permission.
     * 
     */
    @Import(name="destinationAddress")
    private @Nullable Output destinationAddress;

    /**
     * @return The SAS URL for the destination storage container. It must grant write permission.
     * 
     */
    public Optional> destinationAddress() {
        return Optional.ofNullable(this.destinationAddress);
    }

    /**
     * The location ID of the destination storage container.
     * 
     */
    @Import(name="destinationStorageLocationId")
    private @Nullable Output destinationStorageLocationId;

    /**
     * @return The location ID of the destination storage container.
     * 
     */
    public Optional> destinationStorageLocationId() {
        return Optional.ofNullable(this.destinationStorageLocationId);
    }

    /**
     * The subscription ID of the destination storage container.
     * 
     */
    @Import(name="destinationStorageSubscriptionId")
    private @Nullable Output destinationStorageSubscriptionId;

    /**
     * @return The subscription ID of the destination storage container.
     * 
     */
    public Optional> destinationStorageSubscriptionId() {
        return Optional.ofNullable(this.destinationStorageSubscriptionId);
    }

    /**
     * The Continuous Export destination type. This has to be 'Blob'.
     * 
     */
    @Import(name="destinationType")
    private @Nullable Output destinationType;

    /**
     * @return The Continuous Export destination type. This has to be 'Blob'.
     * 
     */
    public Optional> destinationType() {
        return Optional.ofNullable(this.destinationType);
    }

    /**
     * The Continuous Export configuration ID. This is unique within a Application Insights component.
     * 
     */
    @Import(name="exportId")
    private @Nullable Output exportId;

    /**
     * @return The Continuous Export configuration ID. This is unique within a Application Insights component.
     * 
     */
    public Optional> exportId() {
        return Optional.ofNullable(this.exportId);
    }

    /**
     * Set to 'true' to create a Continuous Export configuration as enabled, otherwise set it to 'false'.
     * 
     */
    @Import(name="isEnabled")
    private @Nullable Output isEnabled;

    /**
     * @return Set to 'true' to create a Continuous Export configuration as enabled, otherwise set it to 'false'.
     * 
     */
    public Optional> isEnabled() {
        return Optional.ofNullable(this.isEnabled);
    }

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

    /**
     * @return Deprecated
     * 
     */
    public Optional> notificationQueueEnabled() {
        return Optional.ofNullable(this.notificationQueueEnabled);
    }

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

    /**
     * @return Deprecated
     * 
     */
    public Optional> notificationQueueUri() {
        return Optional.ofNullable(this.notificationQueueUri);
    }

    /**
     * The document types to be exported, as comma separated values. Allowed values include 'Requests', 'Event', 'Exceptions', 'Metrics', 'PageViews', 'PageViewPerformance', 'Rdd', 'PerformanceCounters', 'Availability', 'Messages'.
     * 
     */
    @Import(name="recordTypes")
    private @Nullable Output recordTypes;

    /**
     * @return The document types to be exported, as comma separated values. Allowed values include 'Requests', 'Event', 'Exceptions', 'Metrics', 'PageViews', 'PageViewPerformance', 'Rdd', 'PerformanceCounters', 'Availability', 'Messages'.
     * 
     */
    public Optional> recordTypes() {
        return Optional.ofNullable(this.recordTypes);
    }

    /**
     * The name of the resource group. The name is case insensitive.
     * 
     */
    @Import(name="resourceGroupName", required=true)
    private Output resourceGroupName;

    /**
     * @return The name of the resource group. The name is case insensitive.
     * 
     */
    public Output resourceGroupName() {
        return this.resourceGroupName;
    }

    /**
     * The name of the Application Insights component resource.
     * 
     */
    @Import(name="resourceName", required=true)
    private Output resourceName;

    /**
     * @return The name of the Application Insights component resource.
     * 
     */
    public Output resourceName() {
        return this.resourceName;
    }

    private ExportConfigurationArgs() {}

    private ExportConfigurationArgs(ExportConfigurationArgs $) {
        this.destinationAccountId = $.destinationAccountId;
        this.destinationAddress = $.destinationAddress;
        this.destinationStorageLocationId = $.destinationStorageLocationId;
        this.destinationStorageSubscriptionId = $.destinationStorageSubscriptionId;
        this.destinationType = $.destinationType;
        this.exportId = $.exportId;
        this.isEnabled = $.isEnabled;
        this.notificationQueueEnabled = $.notificationQueueEnabled;
        this.notificationQueueUri = $.notificationQueueUri;
        this.recordTypes = $.recordTypes;
        this.resourceGroupName = $.resourceGroupName;
        this.resourceName = $.resourceName;
    }

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

    public static final class Builder {
        private ExportConfigurationArgs $;

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

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

        /**
         * @param destinationAccountId The name of destination storage account.
         * 
         * @return builder
         * 
         */
        public Builder destinationAccountId(@Nullable Output destinationAccountId) {
            $.destinationAccountId = destinationAccountId;
            return this;
        }

        /**
         * @param destinationAccountId The name of destination storage account.
         * 
         * @return builder
         * 
         */
        public Builder destinationAccountId(String destinationAccountId) {
            return destinationAccountId(Output.of(destinationAccountId));
        }

        /**
         * @param destinationAddress The SAS URL for the destination storage container. It must grant write permission.
         * 
         * @return builder
         * 
         */
        public Builder destinationAddress(@Nullable Output destinationAddress) {
            $.destinationAddress = destinationAddress;
            return this;
        }

        /**
         * @param destinationAddress The SAS URL for the destination storage container. It must grant write permission.
         * 
         * @return builder
         * 
         */
        public Builder destinationAddress(String destinationAddress) {
            return destinationAddress(Output.of(destinationAddress));
        }

        /**
         * @param destinationStorageLocationId The location ID of the destination storage container.
         * 
         * @return builder
         * 
         */
        public Builder destinationStorageLocationId(@Nullable Output destinationStorageLocationId) {
            $.destinationStorageLocationId = destinationStorageLocationId;
            return this;
        }

        /**
         * @param destinationStorageLocationId The location ID of the destination storage container.
         * 
         * @return builder
         * 
         */
        public Builder destinationStorageLocationId(String destinationStorageLocationId) {
            return destinationStorageLocationId(Output.of(destinationStorageLocationId));
        }

        /**
         * @param destinationStorageSubscriptionId The subscription ID of the destination storage container.
         * 
         * @return builder
         * 
         */
        public Builder destinationStorageSubscriptionId(@Nullable Output destinationStorageSubscriptionId) {
            $.destinationStorageSubscriptionId = destinationStorageSubscriptionId;
            return this;
        }

        /**
         * @param destinationStorageSubscriptionId The subscription ID of the destination storage container.
         * 
         * @return builder
         * 
         */
        public Builder destinationStorageSubscriptionId(String destinationStorageSubscriptionId) {
            return destinationStorageSubscriptionId(Output.of(destinationStorageSubscriptionId));
        }

        /**
         * @param destinationType The Continuous Export destination type. This has to be 'Blob'.
         * 
         * @return builder
         * 
         */
        public Builder destinationType(@Nullable Output destinationType) {
            $.destinationType = destinationType;
            return this;
        }

        /**
         * @param destinationType The Continuous Export destination type. This has to be 'Blob'.
         * 
         * @return builder
         * 
         */
        public Builder destinationType(String destinationType) {
            return destinationType(Output.of(destinationType));
        }

        /**
         * @param exportId The Continuous Export configuration ID. This is unique within a Application Insights component.
         * 
         * @return builder
         * 
         */
        public Builder exportId(@Nullable Output exportId) {
            $.exportId = exportId;
            return this;
        }

        /**
         * @param exportId The Continuous Export configuration ID. This is unique within a Application Insights component.
         * 
         * @return builder
         * 
         */
        public Builder exportId(String exportId) {
            return exportId(Output.of(exportId));
        }

        /**
         * @param isEnabled Set to 'true' to create a Continuous Export configuration as enabled, otherwise set it to 'false'.
         * 
         * @return builder
         * 
         */
        public Builder isEnabled(@Nullable Output isEnabled) {
            $.isEnabled = isEnabled;
            return this;
        }

        /**
         * @param isEnabled Set to 'true' to create a Continuous Export configuration as enabled, otherwise set it to 'false'.
         * 
         * @return builder
         * 
         */
        public Builder isEnabled(String isEnabled) {
            return isEnabled(Output.of(isEnabled));
        }

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

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

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

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

        /**
         * @param recordTypes The document types to be exported, as comma separated values. Allowed values include 'Requests', 'Event', 'Exceptions', 'Metrics', 'PageViews', 'PageViewPerformance', 'Rdd', 'PerformanceCounters', 'Availability', 'Messages'.
         * 
         * @return builder
         * 
         */
        public Builder recordTypes(@Nullable Output recordTypes) {
            $.recordTypes = recordTypes;
            return this;
        }

        /**
         * @param recordTypes The document types to be exported, as comma separated values. Allowed values include 'Requests', 'Event', 'Exceptions', 'Metrics', 'PageViews', 'PageViewPerformance', 'Rdd', 'PerformanceCounters', 'Availability', 'Messages'.
         * 
         * @return builder
         * 
         */
        public Builder recordTypes(String recordTypes) {
            return recordTypes(Output.of(recordTypes));
        }

        /**
         * @param resourceGroupName The name of the resource group. The name is case insensitive.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(Output resourceGroupName) {
            $.resourceGroupName = resourceGroupName;
            return this;
        }

        /**
         * @param resourceGroupName The name of the resource group. The name is case insensitive.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(String resourceGroupName) {
            return resourceGroupName(Output.of(resourceGroupName));
        }

        /**
         * @param resourceName The name of the Application Insights component resource.
         * 
         * @return builder
         * 
         */
        public Builder resourceName(Output resourceName) {
            $.resourceName = resourceName;
            return this;
        }

        /**
         * @param resourceName The name of the Application Insights component resource.
         * 
         * @return builder
         * 
         */
        public Builder resourceName(String resourceName) {
            return resourceName(Output.of(resourceName));
        }

        public ExportConfigurationArgs build() {
            if ($.resourceGroupName == null) {
                throw new MissingRequiredPropertyException("ExportConfigurationArgs", "resourceGroupName");
            }
            if ($.resourceName == null) {
                throw new MissingRequiredPropertyException("ExportConfigurationArgs", "resourceName");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy