Interface DeliveryStreamProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
DeliveryStreamProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.98.0 (build 00b106d)", date="2024-05-24T02:42:46.612Z") @Stability(Experimental) public interface DeliveryStreamProps extends software.amazon.jsii.JsiiSerializable
(experimental) Properties for a new delivery stream.

Example:

 import software.amazon.awscdk.services.kinesisfirehose.alpha.*;
 import software.amazon.awscdk.services.kinesisfirehose.destinations.alpha.*;
 Bucket bucket = new Bucket(this, "MyBucket");
 DeliveryStream stream = DeliveryStream.Builder.create(this, "MyStream")
         .destinations(List.of(new S3Bucket(bucket)))
         .build();
 TopicRule topicRule = TopicRule.Builder.create(this, "TopicRule")
         .sql(IotSql.fromStringAsVer20160323("SELECT * FROM 'device/+/data'"))
         .actions(List.of(
             FirehosePutRecordAction.Builder.create(stream)
                     .batchMode(true)
                     .recordSeparator(FirehoseRecordSeparator.NEWLINE)
                     .build()))
         .build();
 
  • Method Details

    • getDestinations

      @Stability(Experimental) @NotNull List<IDestination> getDestinations()
      (experimental) The destinations that this delivery stream will deliver data to.

      Only a singleton array is supported at this time.

    • getDeliveryStreamName

      @Stability(Experimental) @Nullable default String getDeliveryStreamName()
      (experimental) A name for the delivery stream.

      Default: - a name is generated by CloudFormation.

    • getEncryption

      @Stability(Experimental) @Nullable default StreamEncryption getEncryption()
      (experimental) Indicates the type of customer master key (CMK) to use for server-side encryption, if any.

      Default: StreamEncryption.UNENCRYPTED - unless `encryptionKey` is provided, in which case this will be implicitly set to `StreamEncryption.CUSTOMER_MANAGED`

    • getEncryptionKey

      @Stability(Experimental) @Nullable default IKey getEncryptionKey()
      (experimental) Customer managed key to server-side encrypt data in the stream.

      Default: - no KMS key will be used; if `encryption` is set to `CUSTOMER_MANAGED`, a KMS key will be created for you

    • getRole

      @Stability(Experimental) @Nullable default IRole getRole()
      (experimental) The IAM role associated with this delivery stream.

      Assumed by Kinesis Data Firehose to read from sources and encrypt data server-side.

      Default: - a role will be created with default permissions.

    • getSourceStream

      @Stability(Experimental) @Nullable default IStream getSourceStream()
      (experimental) The Kinesis data stream to use as a source for this delivery stream.

      Default: - data must be written to the delivery stream via a direct put.

    • builder

      @Stability(Experimental) static DeliveryStreamProps.Builder builder()
      Returns:
      a DeliveryStreamProps.Builder of DeliveryStreamProps