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 delivery stream. This name must be unique per Amazon Web Services account in the same Amazon Web Services Region. If the delivery streams are in different accounts or different Regions, you can have multiple delivery streams with the same name.

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

      public final DeliveryStreamType deliveryStreamType()

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

      • DirectPut: Provider applications access the delivery stream directly.

      • KinesisStreamAsSource: The delivery 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 delivery stream type. This parameter can be one of the following values:

      • DirectPut: Provider applications access the delivery stream directly.

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

      See Also:
    • deliveryStreamTypeAsString

      public final String deliveryStreamTypeAsString()

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

      • DirectPut: Provider applications access the delivery stream directly.

      • KinesisStreamAsSource: The delivery 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 delivery stream type. This parameter can be one of the following values:

      • DirectPut: Provider applications access the delivery stream directly.

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

      See Also:
    • kinesisStreamSourceConfiguration

      public final KinesisStreamSourceConfiguration kinesisStreamSourceConfiguration()

      When a Kinesis data stream is used as the source for the delivery 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 delivery 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 ES. You can specify only one destination.

      Returns:
      The destination in Amazon ES. 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 delivery 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 delivery 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 delivery 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 delivery 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 delivery 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 delivery 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 delivery 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 delivery 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.

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

      Returns:
      Configure Apache Iceberg Tables destination.

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

    • toBuilder

      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<CreateDeliveryStreamRequest.Builder,CreateDeliveryStreamRequest>
      Specified by:
      toBuilder in class FirehoseRequest
      Returns:
      a builder for type T
    • 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)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • 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)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.