Class DeliveryStream.Builder

java.lang.Object
software.amazon.awscdk.services.kinesisfirehose.DeliveryStream.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<DeliveryStream>
Enclosing class:
DeliveryStream

@Stability(Experimental) public static final class DeliveryStream.Builder extends Object implements software.amazon.jsii.Builder<DeliveryStream>
(experimental) A fluent builder for DeliveryStream.
  • Method Details

    • create

      @Stability(Experimental) public static DeliveryStream.Builder create(software.constructs.Construct scope, String id)
      Parameters:
      scope - This parameter is required.
      id - This parameter is required.
      Returns:
      a new instance of DeliveryStream.Builder.
    • destinations

      @Stability(Experimental) public DeliveryStream.Builder destinations(List<? extends IDestination> destinations)
      (experimental) The destinations that this delivery stream will deliver data to.

      Only a singleton array is supported at this time.

      Parameters:
      destinations - The destinations that this delivery stream will deliver data to. This parameter is required.
      Returns:
      this
    • deliveryStreamName

      @Stability(Experimental) public DeliveryStream.Builder deliveryStreamName(String deliveryStreamName)
      (experimental) A name for the delivery stream.

      Default: - a name is generated by CloudFormation.

      Parameters:
      deliveryStreamName - A name for the delivery stream. This parameter is required.
      Returns:
      this
    • encryption

      @Stability(Experimental) public DeliveryStream.Builder encryption(StreamEncryption encryption)
      (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`

      Parameters:
      encryption - Indicates the type of customer master key (CMK) to use for server-side encryption, if any. This parameter is required.
      Returns:
      this
    • encryptionKey

      @Stability(Experimental) public DeliveryStream.Builder encryptionKey(IKey encryptionKey)
      (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

      Parameters:
      encryptionKey - Customer managed key to server-side encrypt data in the stream. This parameter is required.
      Returns:
      this
    • role

      @Stability(Experimental) public DeliveryStream.Builder role(IRole role)
      (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.

      Parameters:
      role - The IAM role associated with this delivery stream. This parameter is required.
      Returns:
      this
    • sourceStream

      @Stability(Experimental) public DeliveryStream.Builder sourceStream(IStream sourceStream)
      (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.

      Parameters:
      sourceStream - The Kinesis data stream to use as a source for this delivery stream. This parameter is required.
      Returns:
      this
    • build

      @Stability(Experimental) public DeliveryStream build()
      Specified by:
      build in interface software.amazon.jsii.Builder<DeliveryStream>
      Returns:
      a newly built instance of DeliveryStream.