Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamState Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
// *** 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.aws.kinesis.inputs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamElasticsearchConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamExtendedS3ConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamHttpEndpointConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamIcebergConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamKinesisSourceConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamMskSourceConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamOpensearchConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamOpensearchserverlessConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamRedshiftConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamServerSideEncryptionArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamSnowflakeConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamSplunkConfigurationArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class FirehoseDeliveryStreamState extends com.pulumi.resources.ResourceArgs {
public static final FirehoseDeliveryStreamState Empty = new FirehoseDeliveryStreamState();
/**
* The Amazon Resource Name (ARN) specifying the Stream
*
*/
@Import(name="arn")
private @Nullable Output arn;
/**
* @return The Amazon Resource Name (ARN) specifying the Stream
*
*/
public Optional> arn() {
return Optional.ofNullable(this.arn);
}
/**
* This is the destination to where the data is delivered. The only options are `s3` (Deprecated, use `extended_s3` instead), `extended_s3`, `redshift`, `elasticsearch`, `splunk`, `http_endpoint`, `opensearch`, `opensearchserverless` and `snowflake`.
*
*/
@Import(name="destination")
private @Nullable Output destination;
/**
* @return This is the destination to where the data is delivered. The only options are `s3` (Deprecated, use `extended_s3` instead), `extended_s3`, `redshift`, `elasticsearch`, `splunk`, `http_endpoint`, `opensearch`, `opensearchserverless` and `snowflake`.
*
*/
public Optional> destination() {
return Optional.ofNullable(this.destination);
}
@Import(name="destinationId")
private @Nullable Output destinationId;
public Optional> destinationId() {
return Optional.ofNullable(this.destinationId);
}
/**
* Configuration options when `destination` is `elasticsearch`. See `elasticsearch_configuration` block below for details.
*
*/
@Import(name="elasticsearchConfiguration")
private @Nullable Output elasticsearchConfiguration;
/**
* @return Configuration options when `destination` is `elasticsearch`. See `elasticsearch_configuration` block below for details.
*
*/
public Optional> elasticsearchConfiguration() {
return Optional.ofNullable(this.elasticsearchConfiguration);
}
/**
* Enhanced configuration options for the s3 destination. See `extended_s3_configuration` block below for details.
*
*/
@Import(name="extendedS3Configuration")
private @Nullable Output extendedS3Configuration;
/**
* @return Enhanced configuration options for the s3 destination. See `extended_s3_configuration` block below for details.
*
*/
public Optional> extendedS3Configuration() {
return Optional.ofNullable(this.extendedS3Configuration);
}
/**
* Configuration options when `destination` is `http_endpoint`. Requires the user to also specify an `s3_configuration` block. See `http_endpoint_configuration` block below for details.
*
*/
@Import(name="httpEndpointConfiguration")
private @Nullable Output httpEndpointConfiguration;
/**
* @return Configuration options when `destination` is `http_endpoint`. Requires the user to also specify an `s3_configuration` block. See `http_endpoint_configuration` block below for details.
*
*/
public Optional> httpEndpointConfiguration() {
return Optional.ofNullable(this.httpEndpointConfiguration);
}
/**
* Configuration options when `destination` is `iceberg`. See `iceberg_configuration` block below for details.
*
*/
@Import(name="icebergConfiguration")
private @Nullable Output icebergConfiguration;
/**
* @return Configuration options when `destination` is `iceberg`. See `iceberg_configuration` block below for details.
*
*/
public Optional> icebergConfiguration() {
return Optional.ofNullable(this.icebergConfiguration);
}
/**
* The stream and role Amazon Resource Names (ARNs) for a Kinesis data stream used as the source for a delivery stream. See `kinesis_source_configuration` block below for details.
*
*/
@Import(name="kinesisSourceConfiguration")
private @Nullable Output kinesisSourceConfiguration;
/**
* @return The stream and role Amazon Resource Names (ARNs) for a Kinesis data stream used as the source for a delivery stream. See `kinesis_source_configuration` block below for details.
*
*/
public Optional> kinesisSourceConfiguration() {
return Optional.ofNullable(this.kinesisSourceConfiguration);
}
/**
* The configuration for the Amazon MSK cluster to be used as the source for a delivery stream. See `msk_source_configuration` block below for details.
*
*/
@Import(name="mskSourceConfiguration")
private @Nullable Output mskSourceConfiguration;
/**
* @return The configuration for the Amazon MSK cluster to be used as the source for a delivery stream. See `msk_source_configuration` block below for details.
*
*/
public Optional> mskSourceConfiguration() {
return Optional.ofNullable(this.mskSourceConfiguration);
}
/**
* A name to identify the stream. This is unique to the AWS account and region the Stream is created in. When using for WAF logging, name must be prefixed with `aws-waf-logs-`. See [AWS Documentation](https://docs.aws.amazon.com/waf/latest/developerguide/waf-policies.html#waf-policies-logging-config) for more details.
*
*/
@Import(name="name")
private @Nullable Output name;
/**
* @return A name to identify the stream. This is unique to the AWS account and region the Stream is created in. When using for WAF logging, name must be prefixed with `aws-waf-logs-`. See [AWS Documentation](https://docs.aws.amazon.com/waf/latest/developerguide/waf-policies.html#waf-policies-logging-config) for more details.
*
*/
public Optional> name() {
return Optional.ofNullable(this.name);
}
/**
* Configuration options when `destination` is `opensearch`. See `opensearch_configuration` block below for details.
*
*/
@Import(name="opensearchConfiguration")
private @Nullable Output opensearchConfiguration;
/**
* @return Configuration options when `destination` is `opensearch`. See `opensearch_configuration` block below for details.
*
*/
public Optional> opensearchConfiguration() {
return Optional.ofNullable(this.opensearchConfiguration);
}
/**
* Configuration options when `destination` is `opensearchserverless`. See `opensearchserverless_configuration` block below for details.
*
*/
@Import(name="opensearchserverlessConfiguration")
private @Nullable Output opensearchserverlessConfiguration;
/**
* @return Configuration options when `destination` is `opensearchserverless`. See `opensearchserverless_configuration` block below for details.
*
*/
public Optional> opensearchserverlessConfiguration() {
return Optional.ofNullable(this.opensearchserverlessConfiguration);
}
/**
* Configuration options when `destination` is `redshift`. Requires the user to also specify an `s3_configuration` block. See `redshift_configuration` block below for details.
*
*/
@Import(name="redshiftConfiguration")
private @Nullable Output redshiftConfiguration;
/**
* @return Configuration options when `destination` is `redshift`. Requires the user to also specify an `s3_configuration` block. See `redshift_configuration` block below for details.
*
*/
public Optional> redshiftConfiguration() {
return Optional.ofNullable(this.redshiftConfiguration);
}
/**
* Encrypt at rest options. See `server_side_encryption` block below for details.
*
* **NOTE:** Server-side encryption should not be enabled when a kinesis stream is configured as the source of the firehose delivery stream.
*
*/
@Import(name="serverSideEncryption")
private @Nullable Output serverSideEncryption;
/**
* @return Encrypt at rest options. See `server_side_encryption` block below for details.
*
* **NOTE:** Server-side encryption should not be enabled when a kinesis stream is configured as the source of the firehose delivery stream.
*
*/
public Optional> serverSideEncryption() {
return Optional.ofNullable(this.serverSideEncryption);
}
/**
* Configuration options when `destination` is `snowflake`. See `snowflake_configuration` block below for details.
*
*/
@Import(name="snowflakeConfiguration")
private @Nullable Output snowflakeConfiguration;
/**
* @return Configuration options when `destination` is `snowflake`. See `snowflake_configuration` block below for details.
*
*/
public Optional> snowflakeConfiguration() {
return Optional.ofNullable(this.snowflakeConfiguration);
}
/**
* Configuration options when `destination` is `splunk`. See `splunk_configuration` block below for details.
*
*/
@Import(name="splunkConfiguration")
private @Nullable Output splunkConfiguration;
/**
* @return Configuration options when `destination` is `splunk`. See `splunk_configuration` block below for details.
*
*/
public Optional> splunkConfiguration() {
return Optional.ofNullable(this.splunkConfiguration);
}
/**
* A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
*/
@Import(name="tags")
private @Nullable Output> tags;
/**
* @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
*/
public Optional>> tags() {
return Optional.ofNullable(this.tags);
}
/**
* A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
@Import(name="tagsAll")
private @Nullable Output> tagsAll;
/**
* @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
public Optional>> tagsAll() {
return Optional.ofNullable(this.tagsAll);
}
@Import(name="versionId")
private @Nullable Output versionId;
public Optional> versionId() {
return Optional.ofNullable(this.versionId);
}
private FirehoseDeliveryStreamState() {}
private FirehoseDeliveryStreamState(FirehoseDeliveryStreamState $) {
this.arn = $.arn;
this.destination = $.destination;
this.destinationId = $.destinationId;
this.elasticsearchConfiguration = $.elasticsearchConfiguration;
this.extendedS3Configuration = $.extendedS3Configuration;
this.httpEndpointConfiguration = $.httpEndpointConfiguration;
this.icebergConfiguration = $.icebergConfiguration;
this.kinesisSourceConfiguration = $.kinesisSourceConfiguration;
this.mskSourceConfiguration = $.mskSourceConfiguration;
this.name = $.name;
this.opensearchConfiguration = $.opensearchConfiguration;
this.opensearchserverlessConfiguration = $.opensearchserverlessConfiguration;
this.redshiftConfiguration = $.redshiftConfiguration;
this.serverSideEncryption = $.serverSideEncryption;
this.snowflakeConfiguration = $.snowflakeConfiguration;
this.splunkConfiguration = $.splunkConfiguration;
this.tags = $.tags;
this.tagsAll = $.tagsAll;
this.versionId = $.versionId;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(FirehoseDeliveryStreamState defaults) {
return new Builder(defaults);
}
public static final class Builder {
private FirehoseDeliveryStreamState $;
public Builder() {
$ = new FirehoseDeliveryStreamState();
}
public Builder(FirehoseDeliveryStreamState defaults) {
$ = new FirehoseDeliveryStreamState(Objects.requireNonNull(defaults));
}
/**
* @param arn The Amazon Resource Name (ARN) specifying the Stream
*
* @return builder
*
*/
public Builder arn(@Nullable Output arn) {
$.arn = arn;
return this;
}
/**
* @param arn The Amazon Resource Name (ARN) specifying the Stream
*
* @return builder
*
*/
public Builder arn(String arn) {
return arn(Output.of(arn));
}
/**
* @param destination This is the destination to where the data is delivered. The only options are `s3` (Deprecated, use `extended_s3` instead), `extended_s3`, `redshift`, `elasticsearch`, `splunk`, `http_endpoint`, `opensearch`, `opensearchserverless` and `snowflake`.
*
* @return builder
*
*/
public Builder destination(@Nullable Output destination) {
$.destination = destination;
return this;
}
/**
* @param destination This is the destination to where the data is delivered. The only options are `s3` (Deprecated, use `extended_s3` instead), `extended_s3`, `redshift`, `elasticsearch`, `splunk`, `http_endpoint`, `opensearch`, `opensearchserverless` and `snowflake`.
*
* @return builder
*
*/
public Builder destination(String destination) {
return destination(Output.of(destination));
}
public Builder destinationId(@Nullable Output destinationId) {
$.destinationId = destinationId;
return this;
}
public Builder destinationId(String destinationId) {
return destinationId(Output.of(destinationId));
}
/**
* @param elasticsearchConfiguration Configuration options when `destination` is `elasticsearch`. See `elasticsearch_configuration` block below for details.
*
* @return builder
*
*/
public Builder elasticsearchConfiguration(@Nullable Output elasticsearchConfiguration) {
$.elasticsearchConfiguration = elasticsearchConfiguration;
return this;
}
/**
* @param elasticsearchConfiguration Configuration options when `destination` is `elasticsearch`. See `elasticsearch_configuration` block below for details.
*
* @return builder
*
*/
public Builder elasticsearchConfiguration(FirehoseDeliveryStreamElasticsearchConfigurationArgs elasticsearchConfiguration) {
return elasticsearchConfiguration(Output.of(elasticsearchConfiguration));
}
/**
* @param extendedS3Configuration Enhanced configuration options for the s3 destination. See `extended_s3_configuration` block below for details.
*
* @return builder
*
*/
public Builder extendedS3Configuration(@Nullable Output extendedS3Configuration) {
$.extendedS3Configuration = extendedS3Configuration;
return this;
}
/**
* @param extendedS3Configuration Enhanced configuration options for the s3 destination. See `extended_s3_configuration` block below for details.
*
* @return builder
*
*/
public Builder extendedS3Configuration(FirehoseDeliveryStreamExtendedS3ConfigurationArgs extendedS3Configuration) {
return extendedS3Configuration(Output.of(extendedS3Configuration));
}
/**
* @param httpEndpointConfiguration Configuration options when `destination` is `http_endpoint`. Requires the user to also specify an `s3_configuration` block. See `http_endpoint_configuration` block below for details.
*
* @return builder
*
*/
public Builder httpEndpointConfiguration(@Nullable Output httpEndpointConfiguration) {
$.httpEndpointConfiguration = httpEndpointConfiguration;
return this;
}
/**
* @param httpEndpointConfiguration Configuration options when `destination` is `http_endpoint`. Requires the user to also specify an `s3_configuration` block. See `http_endpoint_configuration` block below for details.
*
* @return builder
*
*/
public Builder httpEndpointConfiguration(FirehoseDeliveryStreamHttpEndpointConfigurationArgs httpEndpointConfiguration) {
return httpEndpointConfiguration(Output.of(httpEndpointConfiguration));
}
/**
* @param icebergConfiguration Configuration options when `destination` is `iceberg`. See `iceberg_configuration` block below for details.
*
* @return builder
*
*/
public Builder icebergConfiguration(@Nullable Output icebergConfiguration) {
$.icebergConfiguration = icebergConfiguration;
return this;
}
/**
* @param icebergConfiguration Configuration options when `destination` is `iceberg`. See `iceberg_configuration` block below for details.
*
* @return builder
*
*/
public Builder icebergConfiguration(FirehoseDeliveryStreamIcebergConfigurationArgs icebergConfiguration) {
return icebergConfiguration(Output.of(icebergConfiguration));
}
/**
* @param kinesisSourceConfiguration The stream and role Amazon Resource Names (ARNs) for a Kinesis data stream used as the source for a delivery stream. See `kinesis_source_configuration` block below for details.
*
* @return builder
*
*/
public Builder kinesisSourceConfiguration(@Nullable Output kinesisSourceConfiguration) {
$.kinesisSourceConfiguration = kinesisSourceConfiguration;
return this;
}
/**
* @param kinesisSourceConfiguration The stream and role Amazon Resource Names (ARNs) for a Kinesis data stream used as the source for a delivery stream. See `kinesis_source_configuration` block below for details.
*
* @return builder
*
*/
public Builder kinesisSourceConfiguration(FirehoseDeliveryStreamKinesisSourceConfigurationArgs kinesisSourceConfiguration) {
return kinesisSourceConfiguration(Output.of(kinesisSourceConfiguration));
}
/**
* @param mskSourceConfiguration The configuration for the Amazon MSK cluster to be used as the source for a delivery stream. See `msk_source_configuration` block below for details.
*
* @return builder
*
*/
public Builder mskSourceConfiguration(@Nullable Output mskSourceConfiguration) {
$.mskSourceConfiguration = mskSourceConfiguration;
return this;
}
/**
* @param mskSourceConfiguration The configuration for the Amazon MSK cluster to be used as the source for a delivery stream. See `msk_source_configuration` block below for details.
*
* @return builder
*
*/
public Builder mskSourceConfiguration(FirehoseDeliveryStreamMskSourceConfigurationArgs mskSourceConfiguration) {
return mskSourceConfiguration(Output.of(mskSourceConfiguration));
}
/**
* @param name A name to identify the stream. This is unique to the AWS account and region the Stream is created in. When using for WAF logging, name must be prefixed with `aws-waf-logs-`. See [AWS Documentation](https://docs.aws.amazon.com/waf/latest/developerguide/waf-policies.html#waf-policies-logging-config) for more details.
*
* @return builder
*
*/
public Builder name(@Nullable Output name) {
$.name = name;
return this;
}
/**
* @param name A name to identify the stream. This is unique to the AWS account and region the Stream is created in. When using for WAF logging, name must be prefixed with `aws-waf-logs-`. See [AWS Documentation](https://docs.aws.amazon.com/waf/latest/developerguide/waf-policies.html#waf-policies-logging-config) for more details.
*
* @return builder
*
*/
public Builder name(String name) {
return name(Output.of(name));
}
/**
* @param opensearchConfiguration Configuration options when `destination` is `opensearch`. See `opensearch_configuration` block below for details.
*
* @return builder
*
*/
public Builder opensearchConfiguration(@Nullable Output opensearchConfiguration) {
$.opensearchConfiguration = opensearchConfiguration;
return this;
}
/**
* @param opensearchConfiguration Configuration options when `destination` is `opensearch`. See `opensearch_configuration` block below for details.
*
* @return builder
*
*/
public Builder opensearchConfiguration(FirehoseDeliveryStreamOpensearchConfigurationArgs opensearchConfiguration) {
return opensearchConfiguration(Output.of(opensearchConfiguration));
}
/**
* @param opensearchserverlessConfiguration Configuration options when `destination` is `opensearchserverless`. See `opensearchserverless_configuration` block below for details.
*
* @return builder
*
*/
public Builder opensearchserverlessConfiguration(@Nullable Output opensearchserverlessConfiguration) {
$.opensearchserverlessConfiguration = opensearchserverlessConfiguration;
return this;
}
/**
* @param opensearchserverlessConfiguration Configuration options when `destination` is `opensearchserverless`. See `opensearchserverless_configuration` block below for details.
*
* @return builder
*
*/
public Builder opensearchserverlessConfiguration(FirehoseDeliveryStreamOpensearchserverlessConfigurationArgs opensearchserverlessConfiguration) {
return opensearchserverlessConfiguration(Output.of(opensearchserverlessConfiguration));
}
/**
* @param redshiftConfiguration Configuration options when `destination` is `redshift`. Requires the user to also specify an `s3_configuration` block. See `redshift_configuration` block below for details.
*
* @return builder
*
*/
public Builder redshiftConfiguration(@Nullable Output redshiftConfiguration) {
$.redshiftConfiguration = redshiftConfiguration;
return this;
}
/**
* @param redshiftConfiguration Configuration options when `destination` is `redshift`. Requires the user to also specify an `s3_configuration` block. See `redshift_configuration` block below for details.
*
* @return builder
*
*/
public Builder redshiftConfiguration(FirehoseDeliveryStreamRedshiftConfigurationArgs redshiftConfiguration) {
return redshiftConfiguration(Output.of(redshiftConfiguration));
}
/**
* @param serverSideEncryption Encrypt at rest options. See `server_side_encryption` block below for details.
*
* **NOTE:** Server-side encryption should not be enabled when a kinesis stream is configured as the source of the firehose delivery stream.
*
* @return builder
*
*/
public Builder serverSideEncryption(@Nullable Output serverSideEncryption) {
$.serverSideEncryption = serverSideEncryption;
return this;
}
/**
* @param serverSideEncryption Encrypt at rest options. See `server_side_encryption` block below for details.
*
* **NOTE:** Server-side encryption should not be enabled when a kinesis stream is configured as the source of the firehose delivery stream.
*
* @return builder
*
*/
public Builder serverSideEncryption(FirehoseDeliveryStreamServerSideEncryptionArgs serverSideEncryption) {
return serverSideEncryption(Output.of(serverSideEncryption));
}
/**
* @param snowflakeConfiguration Configuration options when `destination` is `snowflake`. See `snowflake_configuration` block below for details.
*
* @return builder
*
*/
public Builder snowflakeConfiguration(@Nullable Output snowflakeConfiguration) {
$.snowflakeConfiguration = snowflakeConfiguration;
return this;
}
/**
* @param snowflakeConfiguration Configuration options when `destination` is `snowflake`. See `snowflake_configuration` block below for details.
*
* @return builder
*
*/
public Builder snowflakeConfiguration(FirehoseDeliveryStreamSnowflakeConfigurationArgs snowflakeConfiguration) {
return snowflakeConfiguration(Output.of(snowflakeConfiguration));
}
/**
* @param splunkConfiguration Configuration options when `destination` is `splunk`. See `splunk_configuration` block below for details.
*
* @return builder
*
*/
public Builder splunkConfiguration(@Nullable Output splunkConfiguration) {
$.splunkConfiguration = splunkConfiguration;
return this;
}
/**
* @param splunkConfiguration Configuration options when `destination` is `splunk`. See `splunk_configuration` block below for details.
*
* @return builder
*
*/
public Builder splunkConfiguration(FirehoseDeliveryStreamSplunkConfigurationArgs splunkConfiguration) {
return splunkConfiguration(Output.of(splunkConfiguration));
}
/**
* @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
* @return builder
*
*/
public Builder tags(@Nullable Output> tags) {
$.tags = tags;
return this;
}
/**
* @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
* @return builder
*
*/
public Builder tags(Map tags) {
return tags(Output.of(tags));
}
/**
* @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @return builder
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
public Builder tagsAll(@Nullable Output> tagsAll) {
$.tagsAll = tagsAll;
return this;
}
/**
* @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @return builder
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
public Builder tagsAll(Map tagsAll) {
return tagsAll(Output.of(tagsAll));
}
public Builder versionId(@Nullable Output versionId) {
$.versionId = versionId;
return this;
}
public Builder versionId(String versionId) {
return versionId(Output.of(versionId));
}
public FirehoseDeliveryStreamState build() {
return $;
}
}
}