software.amazon.textract.idp.TextractGenerateCSVProps Maven / Gradle / Ivy
Show all versions of idp-cdk-constructs Show documentation
package software.amazon.textract.idp;
/**
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.90.0 (build d6bdb4d)", date = "2023-10-26T15:43:30.348Z")
@software.amazon.jsii.Jsii(module = software.amazon.textract.idp.$Module.class, fqn = "amazon-textract-idp-cdk-constructs.TextractGenerateCSVProps")
@software.amazon.jsii.Jsii.Proxy(TextractGenerateCSVProps.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface TextractGenerateCSVProps extends software.amazon.jsii.JsiiSerializable, software.amazon.awscdk.services.stepfunctions.TaskStateBaseProps {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.String getCsvS3OutputBucket();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.String getCsvS3OutputPrefix();
/**
* Pass the execution ID from the context object to the execution input.
*
* This allows the Step Functions UI to link child executions from parent executions, making it easier to trace execution flow across state machines.
*
* If you set this property to true
, the input
property must be an object (provided by sfn.TaskInput.fromObject
) or omitted entirely.
*
* Default: - false
*
* @see https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Boolean getAssociateWithParent() {
return null;
}
/**
* The JSON input for the execution, same as that of StartExecution.
*
* Default: - The state input (JSON path '$')
*
* @see https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.stepfunctions.TaskInput getInput() {
return null;
}
/**
* List of PolicyStatements to attach to the Lambda function.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.util.List getInputPolicyStatements() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getLambdaLogLevel() {
return null;
}
/**
* memory of Lambda function (may need to increase for larger documents).
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Number getLambdaMemoryMB() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Number getLambdaTimeout() {
return null;
}
/**
* The generated CSV can have any meta-data from the manifest file included.
*
* This is a list of all meta-data names to include
* If they are missed they will be ""
* MetaData keys have to be without ','
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.util.List getMetaDataToAppend() {
return null;
}
/**
* The name of the execution, same as that of StartExecution.
*
* Default: - None
*
* @see https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getName() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getOpensearchIndexName() {
return null;
}
/**
* supports FORMS, TABLES, QUERIES, SIGNATURES as a comma seperated string and generates CSV files for the output from those default is "FORMS,TABLES,QUERIES,SIGNATURES".
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getOutputFeatures() {
return null;
}
/**
* List of PolicyStatements to attach to the Lambda function.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.util.List getOutputPolicyStatements() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getOutputType() {
return null;
}
/**
* Bucketname and prefix to read document from /** location of input S3 objects - if left empty will generate rule for s3 access to all [*].
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getS3InputBucket() {
return null;
}
/**
* prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getS3InputPrefix() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getTextractAPI() {
return null;
}
/**
* retyr backoff rate.
*
* Default: is 1.1
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Number getTextractGenerateCSVBackoffRate() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Number getTextractGenerateCSVInterval() {
return null;
}
/**
* number of retries in Step Function flow.
*
* Default: is 100
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Number getTextractGenerateCSVMaxRetries() {
return null;
}
/**
* @return a {@link Builder} of {@link TextractGenerateCSVProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link TextractGenerateCSVProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.String csvS3OutputBucket;
java.lang.String csvS3OutputPrefix;
java.lang.Boolean associateWithParent;
software.amazon.awscdk.services.stepfunctions.TaskInput input;
java.util.List inputPolicyStatements;
java.lang.String lambdaLogLevel;
java.lang.Number lambdaMemoryMb;
java.lang.Number lambdaTimeout;
java.util.List metaDataToAppend;
java.lang.String name;
java.lang.String opensearchIndexName;
java.lang.String outputFeatures;
java.util.List outputPolicyStatements;
java.lang.String outputType;
java.lang.String s3InputBucket;
java.lang.String s3InputPrefix;
java.lang.String textractApi;
java.lang.Number textractGenerateCsvBackoffRate;
java.lang.Number textractGenerateCsvInterval;
java.lang.Number textractGenerateCsvMaxRetries;
java.lang.String comment;
software.amazon.awscdk.services.stepfunctions.Credentials credentials;
software.amazon.awscdk.Duration heartbeat;
software.amazon.awscdk.services.stepfunctions.Timeout heartbeatTimeout;
java.lang.String inputPath;
software.amazon.awscdk.services.stepfunctions.IntegrationPattern integrationPattern;
java.lang.String outputPath;
java.lang.String resultPath;
java.util.Map resultSelector;
software.amazon.awscdk.services.stepfunctions.Timeout taskTimeout;
software.amazon.awscdk.Duration timeout;
/**
* Sets the value of {@link TextractGenerateCSVProps#getCsvS3OutputBucket}
* @param csvS3OutputBucket the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder csvS3OutputBucket(java.lang.String csvS3OutputBucket) {
this.csvS3OutputBucket = csvS3OutputBucket;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getCsvS3OutputPrefix}
* @param csvS3OutputPrefix the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder csvS3OutputPrefix(java.lang.String csvS3OutputPrefix) {
this.csvS3OutputPrefix = csvS3OutputPrefix;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getAssociateWithParent}
* @param associateWithParent Pass the execution ID from the context object to the execution input.
* This allows the Step Functions UI to link child executions from parent executions, making it easier to trace execution flow across state machines.
*
* If you set this property to true
, the input
property must be an object (provided by sfn.TaskInput.fromObject
) or omitted entirely.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder associateWithParent(java.lang.Boolean associateWithParent) {
this.associateWithParent = associateWithParent;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getInput}
* @param input The JSON input for the execution, same as that of StartExecution.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder input(software.amazon.awscdk.services.stepfunctions.TaskInput input) {
this.input = input;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getInputPolicyStatements}
* @param inputPolicyStatements List of PolicyStatements to attach to the Lambda function.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@SuppressWarnings("unchecked")
public Builder inputPolicyStatements(java.util.List extends software.amazon.awscdk.services.iam.PolicyStatement> inputPolicyStatements) {
this.inputPolicyStatements = (java.util.List)inputPolicyStatements;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getLambdaLogLevel}
* @param lambdaLogLevel the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder lambdaLogLevel(java.lang.String lambdaLogLevel) {
this.lambdaLogLevel = lambdaLogLevel;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getLambdaMemoryMb}
* @param lambdaMemoryMb memory of Lambda function (may need to increase for larger documents).
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder lambdaMemoryMb(java.lang.Number lambdaMemoryMb) {
this.lambdaMemoryMb = lambdaMemoryMb;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getLambdaTimeout}
* @param lambdaTimeout the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder lambdaTimeout(java.lang.Number lambdaTimeout) {
this.lambdaTimeout = lambdaTimeout;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getMetaDataToAppend}
* @param metaDataToAppend The generated CSV can have any meta-data from the manifest file included.
* This is a list of all meta-data names to include
* If they are missed they will be ""
* MetaData keys have to be without ','
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder metaDataToAppend(java.util.List metaDataToAppend) {
this.metaDataToAppend = metaDataToAppend;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getName}
* @param name The name of the execution, same as that of StartExecution.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder name(java.lang.String name) {
this.name = name;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getOpensearchIndexName}
* @param opensearchIndexName the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder opensearchIndexName(java.lang.String opensearchIndexName) {
this.opensearchIndexName = opensearchIndexName;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getOutputFeatures}
* @param outputFeatures supports FORMS, TABLES, QUERIES, SIGNATURES as a comma seperated string and generates CSV files for the output from those default is "FORMS,TABLES,QUERIES,SIGNATURES".
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder outputFeatures(java.lang.String outputFeatures) {
this.outputFeatures = outputFeatures;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getOutputPolicyStatements}
* @param outputPolicyStatements List of PolicyStatements to attach to the Lambda function.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@SuppressWarnings("unchecked")
public Builder outputPolicyStatements(java.util.List extends software.amazon.awscdk.services.iam.PolicyStatement> outputPolicyStatements) {
this.outputPolicyStatements = (java.util.List)outputPolicyStatements;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getOutputType}
* @param outputType the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder outputType(java.lang.String outputType) {
this.outputType = outputType;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getS3InputBucket}
* @param s3InputBucket Bucketname and prefix to read document from /** location of input S3 objects - if left empty will generate rule for s3 access to all [*].
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder s3InputBucket(java.lang.String s3InputBucket) {
this.s3InputBucket = s3InputBucket;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getS3InputPrefix}
* @param s3InputPrefix prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder s3InputPrefix(java.lang.String s3InputPrefix) {
this.s3InputPrefix = s3InputPrefix;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getTextractApi}
* @param textractApi the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder textractApi(java.lang.String textractApi) {
this.textractApi = textractApi;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getTextractGenerateCsvBackoffRate}
* @param textractGenerateCsvBackoffRate retyr backoff rate.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder textractGenerateCsvBackoffRate(java.lang.Number textractGenerateCsvBackoffRate) {
this.textractGenerateCsvBackoffRate = textractGenerateCsvBackoffRate;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getTextractGenerateCsvInterval}
* @param textractGenerateCsvInterval the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder textractGenerateCsvInterval(java.lang.Number textractGenerateCsvInterval) {
this.textractGenerateCsvInterval = textractGenerateCsvInterval;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getTextractGenerateCsvMaxRetries}
* @param textractGenerateCsvMaxRetries number of retries in Step Function flow.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder textractGenerateCsvMaxRetries(java.lang.Number textractGenerateCsvMaxRetries) {
this.textractGenerateCsvMaxRetries = textractGenerateCsvMaxRetries;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getComment}
* @param comment An optional description for this state.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder comment(java.lang.String comment) {
this.comment = comment;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getCredentials}
* @param credentials Credentials for an IAM Role that the State Machine assumes for executing the task.
* This enables cross-account resource invocations.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder credentials(software.amazon.awscdk.services.stepfunctions.Credentials credentials) {
this.credentials = credentials;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getHeartbeat}
* @param heartbeat Timeout for the heartbeat.
* @return {@code this}
* @deprecated use `heartbeatTimeout`
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public Builder heartbeat(software.amazon.awscdk.Duration heartbeat) {
this.heartbeat = heartbeat;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getHeartbeatTimeout}
* @param heartbeatTimeout Timeout for the heartbeat.
* [disable-awslint:duration-prop-type] is needed because all props interface in
* aws-stepfunctions-tasks extend this interface
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder heartbeatTimeout(software.amazon.awscdk.services.stepfunctions.Timeout heartbeatTimeout) {
this.heartbeatTimeout = heartbeatTimeout;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getInputPath}
* @param inputPath JSONPath expression to select part of the state to be the input to this state.
* May also be the special value JsonPath.DISCARD, which will cause the effective
* input to be the empty object {}.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder inputPath(java.lang.String inputPath) {
this.inputPath = inputPath;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getIntegrationPattern}
* @param integrationPattern AWS Step Functions integrates with services directly in the Amazon States Language.
* You can control these AWS services using service integration patterns
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder integrationPattern(software.amazon.awscdk.services.stepfunctions.IntegrationPattern integrationPattern) {
this.integrationPattern = integrationPattern;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getOutputPath}
* @param outputPath JSONPath expression to select select a portion of the state output to pass to the next state.
* May also be the special value JsonPath.DISCARD, which will cause the effective
* output to be the empty object {}.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder outputPath(java.lang.String outputPath) {
this.outputPath = outputPath;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getResultPath}
* @param resultPath JSONPath expression to indicate where to inject the state's output.
* May also be the special value JsonPath.DISCARD, which will cause the state's
* input to become its output.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder resultPath(java.lang.String resultPath) {
this.resultPath = resultPath;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getResultSelector}
* @param resultSelector The JSON that will replace the state's raw result and become the effective result before ResultPath is applied.
* You can use ResultSelector to create a payload with values that are static
* or selected from the state's raw result.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@SuppressWarnings("unchecked")
public Builder resultSelector(java.util.Map resultSelector) {
this.resultSelector = (java.util.Map)resultSelector;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getTaskTimeout}
* @param taskTimeout Timeout for the task.
* [disable-awslint:duration-prop-type] is needed because all props interface in
* aws-stepfunctions-tasks extend this interface
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder taskTimeout(software.amazon.awscdk.services.stepfunctions.Timeout taskTimeout) {
this.taskTimeout = taskTimeout;
return this;
}
/**
* Sets the value of {@link TextractGenerateCSVProps#getTimeout}
* @param timeout Timeout for the task.
* @return {@code this}
* @deprecated use `taskTimeout`
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated)
@Deprecated
public Builder timeout(software.amazon.awscdk.Duration timeout) {
this.timeout = timeout;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link TextractGenerateCSVProps}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public TextractGenerateCSVProps build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link TextractGenerateCSVProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TextractGenerateCSVProps {
private final java.lang.String csvS3OutputBucket;
private final java.lang.String csvS3OutputPrefix;
private final java.lang.Boolean associateWithParent;
private final software.amazon.awscdk.services.stepfunctions.TaskInput input;
private final java.util.List inputPolicyStatements;
private final java.lang.String lambdaLogLevel;
private final java.lang.Number lambdaMemoryMb;
private final java.lang.Number lambdaTimeout;
private final java.util.List metaDataToAppend;
private final java.lang.String name;
private final java.lang.String opensearchIndexName;
private final java.lang.String outputFeatures;
private final java.util.List outputPolicyStatements;
private final java.lang.String outputType;
private final java.lang.String s3InputBucket;
private final java.lang.String s3InputPrefix;
private final java.lang.String textractApi;
private final java.lang.Number textractGenerateCsvBackoffRate;
private final java.lang.Number textractGenerateCsvInterval;
private final java.lang.Number textractGenerateCsvMaxRetries;
private final java.lang.String comment;
private final software.amazon.awscdk.services.stepfunctions.Credentials credentials;
private final software.amazon.awscdk.Duration heartbeat;
private final software.amazon.awscdk.services.stepfunctions.Timeout heartbeatTimeout;
private final java.lang.String inputPath;
private final software.amazon.awscdk.services.stepfunctions.IntegrationPattern integrationPattern;
private final java.lang.String outputPath;
private final java.lang.String resultPath;
private final java.util.Map resultSelector;
private final software.amazon.awscdk.services.stepfunctions.Timeout taskTimeout;
private final software.amazon.awscdk.Duration timeout;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.csvS3OutputBucket = software.amazon.jsii.Kernel.get(this, "csvS3OutputBucket", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.csvS3OutputPrefix = software.amazon.jsii.Kernel.get(this, "csvS3OutputPrefix", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.associateWithParent = software.amazon.jsii.Kernel.get(this, "associateWithParent", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.input = software.amazon.jsii.Kernel.get(this, "input", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.stepfunctions.TaskInput.class));
this.inputPolicyStatements = software.amazon.jsii.Kernel.get(this, "inputPolicyStatements", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.iam.PolicyStatement.class)));
this.lambdaLogLevel = software.amazon.jsii.Kernel.get(this, "lambdaLogLevel", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.lambdaMemoryMb = software.amazon.jsii.Kernel.get(this, "lambdaMemoryMB", software.amazon.jsii.NativeType.forClass(java.lang.Number.class));
this.lambdaTimeout = software.amazon.jsii.Kernel.get(this, "lambdaTimeout", software.amazon.jsii.NativeType.forClass(java.lang.Number.class));
this.metaDataToAppend = software.amazon.jsii.Kernel.get(this, "metaDataToAppend", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class)));
this.name = software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.opensearchIndexName = software.amazon.jsii.Kernel.get(this, "opensearchIndexName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.outputFeatures = software.amazon.jsii.Kernel.get(this, "outputFeatures", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.outputPolicyStatements = software.amazon.jsii.Kernel.get(this, "outputPolicyStatements", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.iam.PolicyStatement.class)));
this.outputType = software.amazon.jsii.Kernel.get(this, "outputType", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.s3InputBucket = software.amazon.jsii.Kernel.get(this, "s3InputBucket", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.s3InputPrefix = software.amazon.jsii.Kernel.get(this, "s3InputPrefix", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.textractApi = software.amazon.jsii.Kernel.get(this, "textractAPI", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.textractGenerateCsvBackoffRate = software.amazon.jsii.Kernel.get(this, "textractGenerateCSVBackoffRate", software.amazon.jsii.NativeType.forClass(java.lang.Number.class));
this.textractGenerateCsvInterval = software.amazon.jsii.Kernel.get(this, "textractGenerateCSVInterval", software.amazon.jsii.NativeType.forClass(java.lang.Number.class));
this.textractGenerateCsvMaxRetries = software.amazon.jsii.Kernel.get(this, "textractGenerateCSVMaxRetries", software.amazon.jsii.NativeType.forClass(java.lang.Number.class));
this.comment = software.amazon.jsii.Kernel.get(this, "comment", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.credentials = software.amazon.jsii.Kernel.get(this, "credentials", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.stepfunctions.Credentials.class));
this.heartbeat = software.amazon.jsii.Kernel.get(this, "heartbeat", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.Duration.class));
this.heartbeatTimeout = software.amazon.jsii.Kernel.get(this, "heartbeatTimeout", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.stepfunctions.Timeout.class));
this.inputPath = software.amazon.jsii.Kernel.get(this, "inputPath", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.integrationPattern = software.amazon.jsii.Kernel.get(this, "integrationPattern", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.stepfunctions.IntegrationPattern.class));
this.outputPath = software.amazon.jsii.Kernel.get(this, "outputPath", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.resultPath = software.amazon.jsii.Kernel.get(this, "resultPath", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.resultSelector = software.amazon.jsii.Kernel.get(this, "resultSelector", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)));
this.taskTimeout = software.amazon.jsii.Kernel.get(this, "taskTimeout", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.stepfunctions.Timeout.class));
this.timeout = software.amazon.jsii.Kernel.get(this, "timeout", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.Duration.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
@SuppressWarnings("unchecked")
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.csvS3OutputBucket = java.util.Objects.requireNonNull(builder.csvS3OutputBucket, "csvS3OutputBucket is required");
this.csvS3OutputPrefix = java.util.Objects.requireNonNull(builder.csvS3OutputPrefix, "csvS3OutputPrefix is required");
this.associateWithParent = builder.associateWithParent;
this.input = builder.input;
this.inputPolicyStatements = (java.util.List)builder.inputPolicyStatements;
this.lambdaLogLevel = builder.lambdaLogLevel;
this.lambdaMemoryMb = builder.lambdaMemoryMb;
this.lambdaTimeout = builder.lambdaTimeout;
this.metaDataToAppend = builder.metaDataToAppend;
this.name = builder.name;
this.opensearchIndexName = builder.opensearchIndexName;
this.outputFeatures = builder.outputFeatures;
this.outputPolicyStatements = (java.util.List)builder.outputPolicyStatements;
this.outputType = builder.outputType;
this.s3InputBucket = builder.s3InputBucket;
this.s3InputPrefix = builder.s3InputPrefix;
this.textractApi = builder.textractApi;
this.textractGenerateCsvBackoffRate = builder.textractGenerateCsvBackoffRate;
this.textractGenerateCsvInterval = builder.textractGenerateCsvInterval;
this.textractGenerateCsvMaxRetries = builder.textractGenerateCsvMaxRetries;
this.comment = builder.comment;
this.credentials = builder.credentials;
this.heartbeat = builder.heartbeat;
this.heartbeatTimeout = builder.heartbeatTimeout;
this.inputPath = builder.inputPath;
this.integrationPattern = builder.integrationPattern;
this.outputPath = builder.outputPath;
this.resultPath = builder.resultPath;
this.resultSelector = (java.util.Map)builder.resultSelector;
this.taskTimeout = builder.taskTimeout;
this.timeout = builder.timeout;
}
@Override
public final java.lang.String getCsvS3OutputBucket() {
return this.csvS3OutputBucket;
}
@Override
public final java.lang.String getCsvS3OutputPrefix() {
return this.csvS3OutputPrefix;
}
@Override
public final java.lang.Boolean getAssociateWithParent() {
return this.associateWithParent;
}
@Override
public final software.amazon.awscdk.services.stepfunctions.TaskInput getInput() {
return this.input;
}
@Override
public final java.util.List getInputPolicyStatements() {
return this.inputPolicyStatements;
}
@Override
public final java.lang.String getLambdaLogLevel() {
return this.lambdaLogLevel;
}
@Override
public final java.lang.Number getLambdaMemoryMB() {
return this.lambdaMemoryMb;
}
@Override
public final java.lang.Number getLambdaTimeout() {
return this.lambdaTimeout;
}
@Override
public final java.util.List getMetaDataToAppend() {
return this.metaDataToAppend;
}
@Override
public final java.lang.String getName() {
return this.name;
}
@Override
public final java.lang.String getOpensearchIndexName() {
return this.opensearchIndexName;
}
@Override
public final java.lang.String getOutputFeatures() {
return this.outputFeatures;
}
@Override
public final java.util.List getOutputPolicyStatements() {
return this.outputPolicyStatements;
}
@Override
public final java.lang.String getOutputType() {
return this.outputType;
}
@Override
public final java.lang.String getS3InputBucket() {
return this.s3InputBucket;
}
@Override
public final java.lang.String getS3InputPrefix() {
return this.s3InputPrefix;
}
@Override
public final java.lang.String getTextractAPI() {
return this.textractApi;
}
@Override
public final java.lang.Number getTextractGenerateCSVBackoffRate() {
return this.textractGenerateCsvBackoffRate;
}
@Override
public final java.lang.Number getTextractGenerateCSVInterval() {
return this.textractGenerateCsvInterval;
}
@Override
public final java.lang.Number getTextractGenerateCSVMaxRetries() {
return this.textractGenerateCsvMaxRetries;
}
@Override
public final java.lang.String getComment() {
return this.comment;
}
@Override
public final software.amazon.awscdk.services.stepfunctions.Credentials getCredentials() {
return this.credentials;
}
@Override
public final software.amazon.awscdk.Duration getHeartbeat() {
return this.heartbeat;
}
@Override
public final software.amazon.awscdk.services.stepfunctions.Timeout getHeartbeatTimeout() {
return this.heartbeatTimeout;
}
@Override
public final java.lang.String getInputPath() {
return this.inputPath;
}
@Override
public final software.amazon.awscdk.services.stepfunctions.IntegrationPattern getIntegrationPattern() {
return this.integrationPattern;
}
@Override
public final java.lang.String getOutputPath() {
return this.outputPath;
}
@Override
public final java.lang.String getResultPath() {
return this.resultPath;
}
@Override
public final java.util.Map getResultSelector() {
return this.resultSelector;
}
@Override
public final software.amazon.awscdk.services.stepfunctions.Timeout getTaskTimeout() {
return this.taskTimeout;
}
@Override
public final software.amazon.awscdk.Duration getTimeout() {
return this.timeout;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("csvS3OutputBucket", om.valueToTree(this.getCsvS3OutputBucket()));
data.set("csvS3OutputPrefix", om.valueToTree(this.getCsvS3OutputPrefix()));
if (this.getAssociateWithParent() != null) {
data.set("associateWithParent", om.valueToTree(this.getAssociateWithParent()));
}
if (this.getInput() != null) {
data.set("input", om.valueToTree(this.getInput()));
}
if (this.getInputPolicyStatements() != null) {
data.set("inputPolicyStatements", om.valueToTree(this.getInputPolicyStatements()));
}
if (this.getLambdaLogLevel() != null) {
data.set("lambdaLogLevel", om.valueToTree(this.getLambdaLogLevel()));
}
if (this.getLambdaMemoryMB() != null) {
data.set("lambdaMemoryMB", om.valueToTree(this.getLambdaMemoryMB()));
}
if (this.getLambdaTimeout() != null) {
data.set("lambdaTimeout", om.valueToTree(this.getLambdaTimeout()));
}
if (this.getMetaDataToAppend() != null) {
data.set("metaDataToAppend", om.valueToTree(this.getMetaDataToAppend()));
}
if (this.getName() != null) {
data.set("name", om.valueToTree(this.getName()));
}
if (this.getOpensearchIndexName() != null) {
data.set("opensearchIndexName", om.valueToTree(this.getOpensearchIndexName()));
}
if (this.getOutputFeatures() != null) {
data.set("outputFeatures", om.valueToTree(this.getOutputFeatures()));
}
if (this.getOutputPolicyStatements() != null) {
data.set("outputPolicyStatements", om.valueToTree(this.getOutputPolicyStatements()));
}
if (this.getOutputType() != null) {
data.set("outputType", om.valueToTree(this.getOutputType()));
}
if (this.getS3InputBucket() != null) {
data.set("s3InputBucket", om.valueToTree(this.getS3InputBucket()));
}
if (this.getS3InputPrefix() != null) {
data.set("s3InputPrefix", om.valueToTree(this.getS3InputPrefix()));
}
if (this.getTextractAPI() != null) {
data.set("textractAPI", om.valueToTree(this.getTextractAPI()));
}
if (this.getTextractGenerateCSVBackoffRate() != null) {
data.set("textractGenerateCSVBackoffRate", om.valueToTree(this.getTextractGenerateCSVBackoffRate()));
}
if (this.getTextractGenerateCSVInterval() != null) {
data.set("textractGenerateCSVInterval", om.valueToTree(this.getTextractGenerateCSVInterval()));
}
if (this.getTextractGenerateCSVMaxRetries() != null) {
data.set("textractGenerateCSVMaxRetries", om.valueToTree(this.getTextractGenerateCSVMaxRetries()));
}
if (this.getComment() != null) {
data.set("comment", om.valueToTree(this.getComment()));
}
if (this.getCredentials() != null) {
data.set("credentials", om.valueToTree(this.getCredentials()));
}
if (this.getHeartbeat() != null) {
data.set("heartbeat", om.valueToTree(this.getHeartbeat()));
}
if (this.getHeartbeatTimeout() != null) {
data.set("heartbeatTimeout", om.valueToTree(this.getHeartbeatTimeout()));
}
if (this.getInputPath() != null) {
data.set("inputPath", om.valueToTree(this.getInputPath()));
}
if (this.getIntegrationPattern() != null) {
data.set("integrationPattern", om.valueToTree(this.getIntegrationPattern()));
}
if (this.getOutputPath() != null) {
data.set("outputPath", om.valueToTree(this.getOutputPath()));
}
if (this.getResultPath() != null) {
data.set("resultPath", om.valueToTree(this.getResultPath()));
}
if (this.getResultSelector() != null) {
data.set("resultSelector", om.valueToTree(this.getResultSelector()));
}
if (this.getTaskTimeout() != null) {
data.set("taskTimeout", om.valueToTree(this.getTaskTimeout()));
}
if (this.getTimeout() != null) {
data.set("timeout", om.valueToTree(this.getTimeout()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("amazon-textract-idp-cdk-constructs.TextractGenerateCSVProps"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
TextractGenerateCSVProps.Jsii$Proxy that = (TextractGenerateCSVProps.Jsii$Proxy) o;
if (!csvS3OutputBucket.equals(that.csvS3OutputBucket)) return false;
if (!csvS3OutputPrefix.equals(that.csvS3OutputPrefix)) return false;
if (this.associateWithParent != null ? !this.associateWithParent.equals(that.associateWithParent) : that.associateWithParent != null) return false;
if (this.input != null ? !this.input.equals(that.input) : that.input != null) return false;
if (this.inputPolicyStatements != null ? !this.inputPolicyStatements.equals(that.inputPolicyStatements) : that.inputPolicyStatements != null) return false;
if (this.lambdaLogLevel != null ? !this.lambdaLogLevel.equals(that.lambdaLogLevel) : that.lambdaLogLevel != null) return false;
if (this.lambdaMemoryMb != null ? !this.lambdaMemoryMb.equals(that.lambdaMemoryMb) : that.lambdaMemoryMb != null) return false;
if (this.lambdaTimeout != null ? !this.lambdaTimeout.equals(that.lambdaTimeout) : that.lambdaTimeout != null) return false;
if (this.metaDataToAppend != null ? !this.metaDataToAppend.equals(that.metaDataToAppend) : that.metaDataToAppend != null) return false;
if (this.name != null ? !this.name.equals(that.name) : that.name != null) return false;
if (this.opensearchIndexName != null ? !this.opensearchIndexName.equals(that.opensearchIndexName) : that.opensearchIndexName != null) return false;
if (this.outputFeatures != null ? !this.outputFeatures.equals(that.outputFeatures) : that.outputFeatures != null) return false;
if (this.outputPolicyStatements != null ? !this.outputPolicyStatements.equals(that.outputPolicyStatements) : that.outputPolicyStatements != null) return false;
if (this.outputType != null ? !this.outputType.equals(that.outputType) : that.outputType != null) return false;
if (this.s3InputBucket != null ? !this.s3InputBucket.equals(that.s3InputBucket) : that.s3InputBucket != null) return false;
if (this.s3InputPrefix != null ? !this.s3InputPrefix.equals(that.s3InputPrefix) : that.s3InputPrefix != null) return false;
if (this.textractApi != null ? !this.textractApi.equals(that.textractApi) : that.textractApi != null) return false;
if (this.textractGenerateCsvBackoffRate != null ? !this.textractGenerateCsvBackoffRate.equals(that.textractGenerateCsvBackoffRate) : that.textractGenerateCsvBackoffRate != null) return false;
if (this.textractGenerateCsvInterval != null ? !this.textractGenerateCsvInterval.equals(that.textractGenerateCsvInterval) : that.textractGenerateCsvInterval != null) return false;
if (this.textractGenerateCsvMaxRetries != null ? !this.textractGenerateCsvMaxRetries.equals(that.textractGenerateCsvMaxRetries) : that.textractGenerateCsvMaxRetries != null) return false;
if (this.comment != null ? !this.comment.equals(that.comment) : that.comment != null) return false;
if (this.credentials != null ? !this.credentials.equals(that.credentials) : that.credentials != null) return false;
if (this.heartbeat != null ? !this.heartbeat.equals(that.heartbeat) : that.heartbeat != null) return false;
if (this.heartbeatTimeout != null ? !this.heartbeatTimeout.equals(that.heartbeatTimeout) : that.heartbeatTimeout != null) return false;
if (this.inputPath != null ? !this.inputPath.equals(that.inputPath) : that.inputPath != null) return false;
if (this.integrationPattern != null ? !this.integrationPattern.equals(that.integrationPattern) : that.integrationPattern != null) return false;
if (this.outputPath != null ? !this.outputPath.equals(that.outputPath) : that.outputPath != null) return false;
if (this.resultPath != null ? !this.resultPath.equals(that.resultPath) : that.resultPath != null) return false;
if (this.resultSelector != null ? !this.resultSelector.equals(that.resultSelector) : that.resultSelector != null) return false;
if (this.taskTimeout != null ? !this.taskTimeout.equals(that.taskTimeout) : that.taskTimeout != null) return false;
return this.timeout != null ? this.timeout.equals(that.timeout) : that.timeout == null;
}
@Override
public final int hashCode() {
int result = this.csvS3OutputBucket.hashCode();
result = 31 * result + (this.csvS3OutputPrefix.hashCode());
result = 31 * result + (this.associateWithParent != null ? this.associateWithParent.hashCode() : 0);
result = 31 * result + (this.input != null ? this.input.hashCode() : 0);
result = 31 * result + (this.inputPolicyStatements != null ? this.inputPolicyStatements.hashCode() : 0);
result = 31 * result + (this.lambdaLogLevel != null ? this.lambdaLogLevel.hashCode() : 0);
result = 31 * result + (this.lambdaMemoryMb != null ? this.lambdaMemoryMb.hashCode() : 0);
result = 31 * result + (this.lambdaTimeout != null ? this.lambdaTimeout.hashCode() : 0);
result = 31 * result + (this.metaDataToAppend != null ? this.metaDataToAppend.hashCode() : 0);
result = 31 * result + (this.name != null ? this.name.hashCode() : 0);
result = 31 * result + (this.opensearchIndexName != null ? this.opensearchIndexName.hashCode() : 0);
result = 31 * result + (this.outputFeatures != null ? this.outputFeatures.hashCode() : 0);
result = 31 * result + (this.outputPolicyStatements != null ? this.outputPolicyStatements.hashCode() : 0);
result = 31 * result + (this.outputType != null ? this.outputType.hashCode() : 0);
result = 31 * result + (this.s3InputBucket != null ? this.s3InputBucket.hashCode() : 0);
result = 31 * result + (this.s3InputPrefix != null ? this.s3InputPrefix.hashCode() : 0);
result = 31 * result + (this.textractApi != null ? this.textractApi.hashCode() : 0);
result = 31 * result + (this.textractGenerateCsvBackoffRate != null ? this.textractGenerateCsvBackoffRate.hashCode() : 0);
result = 31 * result + (this.textractGenerateCsvInterval != null ? this.textractGenerateCsvInterval.hashCode() : 0);
result = 31 * result + (this.textractGenerateCsvMaxRetries != null ? this.textractGenerateCsvMaxRetries.hashCode() : 0);
result = 31 * result + (this.comment != null ? this.comment.hashCode() : 0);
result = 31 * result + (this.credentials != null ? this.credentials.hashCode() : 0);
result = 31 * result + (this.heartbeat != null ? this.heartbeat.hashCode() : 0);
result = 31 * result + (this.heartbeatTimeout != null ? this.heartbeatTimeout.hashCode() : 0);
result = 31 * result + (this.inputPath != null ? this.inputPath.hashCode() : 0);
result = 31 * result + (this.integrationPattern != null ? this.integrationPattern.hashCode() : 0);
result = 31 * result + (this.outputPath != null ? this.outputPath.hashCode() : 0);
result = 31 * result + (this.resultPath != null ? this.resultPath.hashCode() : 0);
result = 31 * result + (this.resultSelector != null ? this.resultSelector.hashCode() : 0);
result = 31 * result + (this.taskTimeout != null ? this.taskTimeout.hashCode() : 0);
result = 31 * result + (this.timeout != null ? this.timeout.hashCode() : 0);
return result;
}
}
}