Interface DataProcessorProps

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

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:41.088Z") @Stability(Experimental) public interface DataProcessorProps extends software.amazon.jsii.JsiiSerializable
(experimental) Configure the data processor.

Example:

 import path.*;
 import software.amazon.awscdk.services.kinesisfirehose.*;
 import software.amazon.awscdk.services.kms.*;
 import software.amazon.awscdk.services.lambda.nodejs.*;
 import software.amazon.awscdk.services.logs.*;
 import software.amazon.awscdk.services.s3.*;
 import software.amazon.awscdk.core.*;
 import software.amazon.awscdk.services.kinesisfirehose.destinations.*;
 App app = new App();
 Stack stack = new Stack(app, "aws-cdk-firehose-delivery-stream-s3-all-properties");
 Bucket bucket = Bucket.Builder.create(stack, "Bucket")
         .removalPolicy(RemovalPolicy.DESTROY)
         .autoDeleteObjects(true)
         .build();
 Bucket backupBucket = Bucket.Builder.create(stack, "BackupBucket")
         .removalPolicy(RemovalPolicy.DESTROY)
         .autoDeleteObjects(true)
         .build();
 LogGroup logGroup = LogGroup.Builder.create(stack, "LogGroup")
         .removalPolicy(RemovalPolicy.DESTROY)
         .build();
 NodejsFunction dataProcessorFunction = NodejsFunction.Builder.create(stack, "DataProcessorFunction")
         .entry(join(__dirname, "lambda-data-processor.js"))
         .timeout(Duration.minutes(1))
         .build();
 LambdaFunctionProcessor processor = LambdaFunctionProcessor.Builder.create(dataProcessorFunction)
         .bufferInterval(Duration.seconds(60))
         .bufferSize(Size.mebibytes(1))
         .retries(1)
         .build();
 Key key = Key.Builder.create(stack, "Key")
         .removalPolicy(RemovalPolicy.DESTROY)
         .build();
 Key backupKey = Key.Builder.create(stack, "BackupKey")
         .removalPolicy(RemovalPolicy.DESTROY)
         .build();
 DeliveryStream.Builder.create(stack, "Delivery Stream")
         .destinations(List.of(S3Bucket.Builder.create(bucket)
                 .logging(true)
                 .logGroup(logGroup)
                 .processor(processor)
                 .compression(Compression.GZIP)
                 .dataOutputPrefix("regularPrefix")
                 .errorOutputPrefix("errorPrefix")
                 .bufferingInterval(Duration.seconds(60))
                 .bufferingSize(Size.mebibytes(1))
                 .encryptionKey(key)
                 .s3Backup(DestinationS3BackupProps.builder()
                         .mode(BackupMode.ALL)
                         .bucket(backupBucket)
                         .compression(Compression.ZIP)
                         .dataOutputPrefix("backupPrefix")
                         .errorOutputPrefix("backupErrorPrefix")
                         .bufferingInterval(Duration.seconds(60))
                         .bufferingSize(Size.mebibytes(1))
                         .encryptionKey(backupKey)
                         .build())
                 .build()))
         .build();
 app.synth();
 
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static final class 
    A builder for DataProcessorProps
    static final class 
    An implementation for DataProcessorProps
  • Method Summary

    Modifier and Type
    Method
    Description
     
    default Duration
    (experimental) The length of time Kinesis Data Firehose will buffer incoming data before calling the processor.
    default Size
    (experimental) The amount of incoming data Kinesis Data Firehose will buffer before calling the processor.
    default Number
    (experimental) The number of times Kinesis Data Firehose will retry the processor invocation after a failure due to network timeout or invocation limits.

    Methods inherited from interface software.amazon.jsii.JsiiSerializable

    $jsii$toJson
  • Method Details

    • getBufferInterval

      @Stability(Experimental) @Nullable default Duration getBufferInterval()
      (experimental) The length of time Kinesis Data Firehose will buffer incoming data before calling the processor.

      s

      Default: Duration.minutes(1)

    • getBufferSize

      @Stability(Experimental) @Nullable default Size getBufferSize()
      (experimental) The amount of incoming data Kinesis Data Firehose will buffer before calling the processor.

      Default: Size.mebibytes(3)

    • getRetries

      @Stability(Experimental) @Nullable default Number getRetries()
      (experimental) The number of times Kinesis Data Firehose will retry the processor invocation after a failure due to network timeout or invocation limits.

      Default: 3

    • builder

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