Class CreateDeliveryStreamRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<CreateDeliveryStreamRequest.Builder,CreateDeliveryStreamRequest>

@Generated("software.amazon.awssdk:codegen") public final class CreateDeliveryStreamRequest extends FirehoseRequest implements ToCopyableBuilder<CreateDeliveryStreamRequest.Builder,CreateDeliveryStreamRequest>
  • Method Details

    • deliveryStreamName

      public final String deliveryStreamName()

      The name of the Firehose stream. This name must be unique per Amazon Web Services account in the same Amazon Web Services Region. If the Firehose streams are in different accounts or different Regions, you can have multiple Firehose streams with the same name.

      Returns:
      The name of the Firehose stream. This name must be unique per Amazon Web Services account in the same Amazon Web Services Region. If the Firehose streams are in different accounts or different Regions, you can have multiple Firehose streams with the same name.
    • deliveryStreamType

      public final DeliveryStreamType deliveryStreamType()

      The Firehose stream type. This parameter can be one of the following values:

      • DirectPut: Provider applications access the Firehose stream directly.

      • KinesisStreamAsSource: The Firehose stream uses a Kinesis data stream as a source.

      If the service returns an enum value that is not available in the current SDK version, deliveryStreamType will return DeliveryStreamType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from deliveryStreamTypeAsString().

      Returns:
      The Firehose stream type. This parameter can be one of the following values:

      • DirectPut: Provider applications access the Firehose stream directly.

      • KinesisStreamAsSource: The Firehose stream uses a Kinesis data stream as a source.

      See Also:
    • deliveryStreamTypeAsString

      public final String deliveryStreamTypeAsString()

      The Firehose stream type. This parameter can be one of the following values:

      • DirectPut: Provider applications access the Firehose stream directly.

      • KinesisStreamAsSource: The Firehose stream uses a Kinesis data stream as a source.

      If the service returns an enum value that is not available in the current SDK version, deliveryStreamType will return DeliveryStreamType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from deliveryStreamTypeAsString().

      Returns:
      The Firehose stream type. This parameter can be one of the following values:

      • DirectPut: Provider applications access the Firehose stream directly.

      • KinesisStreamAsSource: The Firehose stream uses a Kinesis data stream as a source.

      See Also:
    • directPutSourceConfiguration

      public final DirectPutSourceConfiguration directPutSourceConfiguration()

      The structure that configures parameters such as ThroughputHintInMBs for a stream configured with Direct PUT as a source.

      Returns:
      The structure that configures parameters such as ThroughputHintInMBs for a stream configured with Direct PUT as a source.
    • kinesisStreamSourceConfiguration

      public final KinesisStreamSourceConfiguration kinesisStreamSourceConfiguration()

      When a Kinesis data stream is used as the source for the Firehose stream, a KinesisStreamSourceConfiguration containing the Kinesis data stream Amazon Resource Name (ARN) and the role ARN for the source stream.

      Returns:
      When a Kinesis data stream is used as the source for the Firehose stream, a KinesisStreamSourceConfiguration containing the Kinesis data stream Amazon Resource Name (ARN) and the role ARN for the source stream.
    • deliveryStreamEncryptionConfigurationInput

      public final DeliveryStreamEncryptionConfigurationInput deliveryStreamEncryptionConfigurationInput()

      Used to specify the type and Amazon Resource Name (ARN) of the KMS key needed for Server-Side Encryption (SSE).

      Returns:
      Used to specify the type and Amazon Resource Name (ARN) of the KMS key needed for Server-Side Encryption (SSE).
    • s3DestinationConfiguration

      @Deprecated public final S3DestinationConfiguration s3DestinationConfiguration()
      Deprecated.

      [Deprecated] The destination in Amazon S3. You can specify only one destination.

      Returns:
      [Deprecated] The destination in Amazon S3. You can specify only one destination.
    • extendedS3DestinationConfiguration

      public final ExtendedS3DestinationConfiguration extendedS3DestinationConfiguration()

      The destination in Amazon S3. You can specify only one destination.

      Returns:
      The destination in Amazon S3. You can specify only one destination.
    • redshiftDestinationConfiguration

      public final RedshiftDestinationConfiguration redshiftDestinationConfiguration()

      The destination in Amazon Redshift. You can specify only one destination.

      Returns:
      The destination in Amazon Redshift. You can specify only one destination.
    • elasticsearchDestinationConfiguration

      public final ElasticsearchDestinationConfiguration elasticsearchDestinationConfiguration()

      The destination in Amazon OpenSearch Service. You can specify only one destination.

      Returns:
      The destination in Amazon OpenSearch Service. You can specify only one destination.
    • amazonopensearchserviceDestinationConfiguration

      public final AmazonopensearchserviceDestinationConfiguration amazonopensearchserviceDestinationConfiguration()

      The destination in Amazon OpenSearch Service. You can specify only one destination.

      Returns:
      The destination in Amazon OpenSearch Service. You can specify only one destination.
    • splunkDestinationConfiguration

      public final SplunkDestinationConfiguration splunkDestinationConfiguration()

      The destination in Splunk. You can specify only one destination.

      Returns:
      The destination in Splunk. You can specify only one destination.
    • httpEndpointDestinationConfiguration

      public final HttpEndpointDestinationConfiguration httpEndpointDestinationConfiguration()

      Enables configuring Kinesis Firehose to deliver data to any HTTP endpoint destination. You can specify only one destination.

      Returns:
      Enables configuring Kinesis Firehose to deliver data to any HTTP endpoint destination. You can specify only one destination.
    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • tags

      public final List<Tag> tags()

      A set of tags to assign to the Firehose stream. A tag is a key-value pair that you can define and assign to Amazon Web Services resources. Tags are metadata. For example, you can add friendly names and descriptions or other types of information that can help you distinguish the Firehose stream. For more information about tags, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

      You can specify up to 50 tags when creating a Firehose stream.

      If you specify tags in the CreateDeliveryStream action, Amazon Data Firehose performs an additional authorization on the firehose:TagDeliveryStream action to verify if users have permissions to create tags. If you do not provide this permission, requests to create new Firehose streams with IAM resource tags will fail with an AccessDeniedException such as following.

      AccessDeniedException

      User: arn:aws:sts::x:assumed-role/x/x is not authorized to perform: firehose:TagDeliveryStream on resource: arn:aws:firehose:us-east-1:x:deliverystream/x with an explicit deny in an identity-based policy.

      For an example IAM policy, see Tag example.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTags() method.

      Returns:
      A set of tags to assign to the Firehose stream. A tag is a key-value pair that you can define and assign to Amazon Web Services resources. Tags are metadata. For example, you can add friendly names and descriptions or other types of information that can help you distinguish the Firehose stream. For more information about tags, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

      You can specify up to 50 tags when creating a Firehose stream.

      If you specify tags in the CreateDeliveryStream action, Amazon Data Firehose performs an additional authorization on the firehose:TagDeliveryStream action to verify if users have permissions to create tags. If you do not provide this permission, requests to create new Firehose streams with IAM resource tags will fail with an AccessDeniedException such as following.

      AccessDeniedException

      User: arn:aws:sts::x:assumed-role/x/x is not authorized to perform: firehose:TagDeliveryStream on resource: arn:aws:firehose:us-east-1:x:deliverystream/x with an explicit deny in an identity-based policy.

      For an example IAM policy, see Tag example.

    • amazonOpenSearchServerlessDestinationConfiguration

      public final AmazonOpenSearchServerlessDestinationConfiguration amazonOpenSearchServerlessDestinationConfiguration()

      The destination in the Serverless offering for Amazon OpenSearch Service. You can specify only one destination.

      Returns:
      The destination in the Serverless offering for Amazon OpenSearch Service. You can specify only one destination.
    • mskSourceConfiguration

      public final MSKSourceConfiguration mskSourceConfiguration()
      Returns the value of the MSKSourceConfiguration property for this object.
      Returns:
      The value of the MSKSourceConfiguration property for this object.
    • snowflakeDestinationConfiguration

      public final SnowflakeDestinationConfiguration snowflakeDestinationConfiguration()

      Configure Snowflake destination

      Returns:
      Configure Snowflake destination
    • icebergDestinationConfiguration

      public final IcebergDestinationConfiguration icebergDestinationConfiguration()

      Configure Apache Iceberg Tables destination.

      Returns:
      Configure Apache Iceberg Tables destination.
    • databaseSourceConfiguration

      public final DatabaseSourceConfiguration databaseSourceConfiguration()

      The top level object for configuring streams with database as a source.

      Amazon Data Firehose is in preview release and is subject to change.

      Returns:
      The top level object for configuring streams with database as a source.

      Amazon Data Firehose is in preview release and is subject to change.

    • toBuilder

      Specified by:
      toBuilder in interface ToCopyableBuilder<CreateDeliveryStreamRequest.Builder,CreateDeliveryStreamRequest>
      Specified by:
      toBuilder in class FirehoseRequest
    • builder

      public static CreateDeliveryStreamRequest.Builder builder()
    • serializableBuilderClass

      public static Class<? extends CreateDeliveryStreamRequest.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class AwsRequest
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsRequest
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Specified by:
      equalsBySdkFields in interface SdkPojo
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
      Overrides:
      getValueForField in class SdkRequest
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo