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

com.pulumi.azurenative.eventhub.inputs.CaptureDescriptionArgs 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.eventhub.inputs;

import com.pulumi.azurenative.eventhub.enums.EncodingCaptureDescription;
import com.pulumi.azurenative.eventhub.inputs.DestinationArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.Integer;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Properties to configure capture description for eventhub
 * 
 */
public final class CaptureDescriptionArgs extends com.pulumi.resources.ResourceArgs {

    public static final CaptureDescriptionArgs Empty = new CaptureDescriptionArgs();

    /**
     * Properties of Destination where capture will be stored. (Storage Account, Blob Names)
     * 
     */
    @Import(name="destination")
    private @Nullable Output destination;

    /**
     * @return Properties of Destination where capture will be stored. (Storage Account, Blob Names)
     * 
     */
    public Optional> destination() {
        return Optional.ofNullable(this.destination);
    }

    /**
     * A value that indicates whether capture description is enabled.
     * 
     */
    @Import(name="enabled")
    private @Nullable Output enabled;

    /**
     * @return A value that indicates whether capture description is enabled.
     * 
     */
    public Optional> enabled() {
        return Optional.ofNullable(this.enabled);
    }

    /**
     * Enumerates the possible values for the encoding format of capture description. Note: 'AvroDeflate' will be deprecated in New API Version
     * 
     */
    @Import(name="encoding")
    private @Nullable Output encoding;

    /**
     * @return Enumerates the possible values for the encoding format of capture description. Note: 'AvroDeflate' will be deprecated in New API Version
     * 
     */
    public Optional> encoding() {
        return Optional.ofNullable(this.encoding);
    }

    /**
     * The time window allows you to set the frequency with which the capture to Azure Blobs will happen, value should between 60 to 900 seconds
     * 
     */
    @Import(name="intervalInSeconds")
    private @Nullable Output intervalInSeconds;

    /**
     * @return The time window allows you to set the frequency with which the capture to Azure Blobs will happen, value should between 60 to 900 seconds
     * 
     */
    public Optional> intervalInSeconds() {
        return Optional.ofNullable(this.intervalInSeconds);
    }

    /**
     * The size window defines the amount of data built up in your Event Hub before an capture operation, value should be between 10485760 to 524288000 bytes
     * 
     */
    @Import(name="sizeLimitInBytes")
    private @Nullable Output sizeLimitInBytes;

    /**
     * @return The size window defines the amount of data built up in your Event Hub before an capture operation, value should be between 10485760 to 524288000 bytes
     * 
     */
    public Optional> sizeLimitInBytes() {
        return Optional.ofNullable(this.sizeLimitInBytes);
    }

    /**
     * A value that indicates whether to Skip Empty Archives
     * 
     */
    @Import(name="skipEmptyArchives")
    private @Nullable Output skipEmptyArchives;

    /**
     * @return A value that indicates whether to Skip Empty Archives
     * 
     */
    public Optional> skipEmptyArchives() {
        return Optional.ofNullable(this.skipEmptyArchives);
    }

    private CaptureDescriptionArgs() {}

    private CaptureDescriptionArgs(CaptureDescriptionArgs $) {
        this.destination = $.destination;
        this.enabled = $.enabled;
        this.encoding = $.encoding;
        this.intervalInSeconds = $.intervalInSeconds;
        this.sizeLimitInBytes = $.sizeLimitInBytes;
        this.skipEmptyArchives = $.skipEmptyArchives;
    }

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

    public static final class Builder {
        private CaptureDescriptionArgs $;

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

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

        /**
         * @param destination Properties of Destination where capture will be stored. (Storage Account, Blob Names)
         * 
         * @return builder
         * 
         */
        public Builder destination(@Nullable Output destination) {
            $.destination = destination;
            return this;
        }

        /**
         * @param destination Properties of Destination where capture will be stored. (Storage Account, Blob Names)
         * 
         * @return builder
         * 
         */
        public Builder destination(DestinationArgs destination) {
            return destination(Output.of(destination));
        }

        /**
         * @param enabled A value that indicates whether capture description is enabled.
         * 
         * @return builder
         * 
         */
        public Builder enabled(@Nullable Output enabled) {
            $.enabled = enabled;
            return this;
        }

        /**
         * @param enabled A value that indicates whether capture description is enabled.
         * 
         * @return builder
         * 
         */
        public Builder enabled(Boolean enabled) {
            return enabled(Output.of(enabled));
        }

        /**
         * @param encoding Enumerates the possible values for the encoding format of capture description. Note: 'AvroDeflate' will be deprecated in New API Version
         * 
         * @return builder
         * 
         */
        public Builder encoding(@Nullable Output encoding) {
            $.encoding = encoding;
            return this;
        }

        /**
         * @param encoding Enumerates the possible values for the encoding format of capture description. Note: 'AvroDeflate' will be deprecated in New API Version
         * 
         * @return builder
         * 
         */
        public Builder encoding(EncodingCaptureDescription encoding) {
            return encoding(Output.of(encoding));
        }

        /**
         * @param intervalInSeconds The time window allows you to set the frequency with which the capture to Azure Blobs will happen, value should between 60 to 900 seconds
         * 
         * @return builder
         * 
         */
        public Builder intervalInSeconds(@Nullable Output intervalInSeconds) {
            $.intervalInSeconds = intervalInSeconds;
            return this;
        }

        /**
         * @param intervalInSeconds The time window allows you to set the frequency with which the capture to Azure Blobs will happen, value should between 60 to 900 seconds
         * 
         * @return builder
         * 
         */
        public Builder intervalInSeconds(Integer intervalInSeconds) {
            return intervalInSeconds(Output.of(intervalInSeconds));
        }

        /**
         * @param sizeLimitInBytes The size window defines the amount of data built up in your Event Hub before an capture operation, value should be between 10485760 to 524288000 bytes
         * 
         * @return builder
         * 
         */
        public Builder sizeLimitInBytes(@Nullable Output sizeLimitInBytes) {
            $.sizeLimitInBytes = sizeLimitInBytes;
            return this;
        }

        /**
         * @param sizeLimitInBytes The size window defines the amount of data built up in your Event Hub before an capture operation, value should be between 10485760 to 524288000 bytes
         * 
         * @return builder
         * 
         */
        public Builder sizeLimitInBytes(Integer sizeLimitInBytes) {
            return sizeLimitInBytes(Output.of(sizeLimitInBytes));
        }

        /**
         * @param skipEmptyArchives A value that indicates whether to Skip Empty Archives
         * 
         * @return builder
         * 
         */
        public Builder skipEmptyArchives(@Nullable Output skipEmptyArchives) {
            $.skipEmptyArchives = skipEmptyArchives;
            return this;
        }

        /**
         * @param skipEmptyArchives A value that indicates whether to Skip Empty Archives
         * 
         * @return builder
         * 
         */
        public Builder skipEmptyArchives(Boolean skipEmptyArchives) {
            return skipEmptyArchives(Output.of(skipEmptyArchives));
        }

        public CaptureDescriptionArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy