io.github.hsiehshujeng.cdk.comprehend.s3olap.RedactionLambdaProps Maven / Gradle / Ivy
Show all versions of cdk-comprehend-s3olap Show documentation
package io.github.hsiehshujeng.cdk.comprehend.s3olap;
/**
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.103.0 (build 3b9adc4)", date = "2024-08-29T00:48:08.971Z")
@software.amazon.jsii.Jsii(module = io.github.hsiehshujeng.cdk.comprehend.s3olap.$Module.class, fqn = "cdk-comprehend-s3olap.RedactionLambdaProps")
@software.amazon.jsii.Jsii.Proxy(RedactionLambdaProps.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface RedactionLambdaProps extends software.amazon.jsii.JsiiSerializable {
/**
* The minimum prediction confidence score above which PII classification and detection would be considered as final answer.
*
* Valid range (0.5 to 1.0).
*
* Default: '0.5'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getConfidenceThreshold() {
return null;
}
/**
* Number of threads to use for calling Comprehend's ContainsPiiEntities API.
*
* This controls the number of simultaneous calls that will be made from this Lambda.
*
* Default: '20'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getContainsPiiEntitiesThreadCount() {
return null;
}
/**
* Default language of the text to be processed.
*
* This code will be used for interacting with Comprehend.
*
* Default: 'en'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getDefaultLanguageCode() {
return null;
}
/**
* Number of threads to use for calling Comprehend's DetectPiiEntities API.
*
* This controls the number of simultaneous calls that will be made from this Lambda.
*
* Default: '8'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getDetectPiiEntitiesThreadCount() {
return null;
}
/**
* Default maximum document size (in bytes) that this function can process otherwise will throw exception for too large document size.
*
* Default: '102400'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getDocumentMaxSize() {
return null;
}
/**
* Maximum document size (in bytes) to be used for making calls to Comprehend's ContainsPiiEntities API.
*
* Default: '50000'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getDocumentMaxSizeContainsPiiEntities() {
return null;
}
/**
* Maximum document size (in bytes) to be used for making calls to Comprehend's DetectPiiEntities API.
*
* Default: '5000'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getDocumentMaxSizeDetectPiiEntities() {
return null;
}
/**
* Whether to support partial objects or not.
*
* Accessing partial object through http headers such byte-range can corrupt the object and/or affect PII detection accuracy.
*
* Default: 'false'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getIsPartialObjectSupported() {
return null;
}
/**
* Log level for Lambda function logging, e.g., ERROR, INFO, DEBUG, etc.
*
* Default: 'INFO'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getLogLevel() {
return null;
}
/**
* A character that replaces each character in the redacted PII entity.
*
* Default: '*'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getMaskCharacter() {
return null;
}
/**
* Specifies whether the PII entity is redacted with the mask character or the entity type.
*
* Valid values - REPLACE_WITH_PII_ENTITY_TYPE and MASK.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getMaskMode() {
return null;
}
/**
* Maximum characters to overlap among segments of a document in case chunking is needed because of maximum document size limit.
*
* Default: '200'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getMaxCharsOverlap() {
return null;
}
/**
* List of comma separated PII entity types to be considered for redaction.
*
* Refer Comprehend's documentation page for list of supported PII entity types.
*
* Default: 'ALL'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getPiiEntityTypes() {
return null;
}
/**
* True if publish metrics to Cloudwatch, false otherwise.
*
* See README.md for details on CloudWatch metrics.
*
* Default: 'true'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getPublishCloudWatchMetrics() {
return null;
}
/**
* The version of the serverless application.
*
* Default: '1.0.2'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getSemanticVersion() {
return null;
}
/**
* Number of tokens/words to overlap among segments of a document in case chunking is needed because of maximum document size limit.
*
* Default: '20'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getSubsegmentOverlappingTokens() {
return null;
}
/**
* Handling logic for Unsupported files.
*
* Valid values are PASS and FAIL.
*
* Default: 'FAIL'
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getUnsupportedFileHandling() {
return null;
}
/**
* @return a {@link Builder} of {@link RedactionLambdaProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link RedactionLambdaProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.String confidenceThreshold;
java.lang.String containsPiiEntitiesThreadCount;
java.lang.String defaultLanguageCode;
java.lang.String detectPiiEntitiesThreadCount;
java.lang.String documentMaxSize;
java.lang.String documentMaxSizeContainsPiiEntities;
java.lang.String documentMaxSizeDetectPiiEntities;
java.lang.String isPartialObjectSupported;
java.lang.String logLevel;
java.lang.String maskCharacter;
java.lang.String maskMode;
java.lang.String maxCharsOverlap;
java.lang.String piiEntityTypes;
java.lang.String publishCloudWatchMetrics;
java.lang.String semanticVersion;
java.lang.String subsegmentOverlappingTokens;
java.lang.String unsupportedFileHandling;
/**
* Sets the value of {@link RedactionLambdaProps#getConfidenceThreshold}
* @param confidenceThreshold The minimum prediction confidence score above which PII classification and detection would be considered as final answer.
* Valid range (0.5 to 1.0).
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder confidenceThreshold(java.lang.String confidenceThreshold) {
this.confidenceThreshold = confidenceThreshold;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getContainsPiiEntitiesThreadCount}
* @param containsPiiEntitiesThreadCount Number of threads to use for calling Comprehend's ContainsPiiEntities API.
* This controls the number of simultaneous calls that will be made from this Lambda.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder containsPiiEntitiesThreadCount(java.lang.String containsPiiEntitiesThreadCount) {
this.containsPiiEntitiesThreadCount = containsPiiEntitiesThreadCount;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getDefaultLanguageCode}
* @param defaultLanguageCode Default language of the text to be processed.
* This code will be used for interacting with Comprehend.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder defaultLanguageCode(java.lang.String defaultLanguageCode) {
this.defaultLanguageCode = defaultLanguageCode;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getDetectPiiEntitiesThreadCount}
* @param detectPiiEntitiesThreadCount Number of threads to use for calling Comprehend's DetectPiiEntities API.
* This controls the number of simultaneous calls that will be made from this Lambda.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder detectPiiEntitiesThreadCount(java.lang.String detectPiiEntitiesThreadCount) {
this.detectPiiEntitiesThreadCount = detectPiiEntitiesThreadCount;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getDocumentMaxSize}
* @param documentMaxSize Default maximum document size (in bytes) that this function can process otherwise will throw exception for too large document size.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder documentMaxSize(java.lang.String documentMaxSize) {
this.documentMaxSize = documentMaxSize;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getDocumentMaxSizeContainsPiiEntities}
* @param documentMaxSizeContainsPiiEntities Maximum document size (in bytes) to be used for making calls to Comprehend's ContainsPiiEntities API.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder documentMaxSizeContainsPiiEntities(java.lang.String documentMaxSizeContainsPiiEntities) {
this.documentMaxSizeContainsPiiEntities = documentMaxSizeContainsPiiEntities;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getDocumentMaxSizeDetectPiiEntities}
* @param documentMaxSizeDetectPiiEntities Maximum document size (in bytes) to be used for making calls to Comprehend's DetectPiiEntities API.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder documentMaxSizeDetectPiiEntities(java.lang.String documentMaxSizeDetectPiiEntities) {
this.documentMaxSizeDetectPiiEntities = documentMaxSizeDetectPiiEntities;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getIsPartialObjectSupported}
* @param isPartialObjectSupported Whether to support partial objects or not.
* Accessing partial object through http headers such byte-range can corrupt the object and/or affect PII detection accuracy.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder isPartialObjectSupported(java.lang.String isPartialObjectSupported) {
this.isPartialObjectSupported = isPartialObjectSupported;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getLogLevel}
* @param logLevel Log level for Lambda function logging, e.g., ERROR, INFO, DEBUG, etc.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder logLevel(java.lang.String logLevel) {
this.logLevel = logLevel;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getMaskCharacter}
* @param maskCharacter A character that replaces each character in the redacted PII entity.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder maskCharacter(java.lang.String maskCharacter) {
this.maskCharacter = maskCharacter;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getMaskMode}
* @param maskMode Specifies whether the PII entity is redacted with the mask character or the entity type.
* Valid values - REPLACE_WITH_PII_ENTITY_TYPE and MASK.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder maskMode(java.lang.String maskMode) {
this.maskMode = maskMode;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getMaxCharsOverlap}
* @param maxCharsOverlap Maximum characters to overlap among segments of a document in case chunking is needed because of maximum document size limit.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder maxCharsOverlap(java.lang.String maxCharsOverlap) {
this.maxCharsOverlap = maxCharsOverlap;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getPiiEntityTypes}
* @param piiEntityTypes List of comma separated PII entity types to be considered for redaction.
* Refer Comprehend's documentation page for list of supported PII entity types.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder piiEntityTypes(java.lang.String piiEntityTypes) {
this.piiEntityTypes = piiEntityTypes;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getPublishCloudWatchMetrics}
* @param publishCloudWatchMetrics True if publish metrics to Cloudwatch, false otherwise.
* See README.md for details on CloudWatch metrics.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder publishCloudWatchMetrics(java.lang.String publishCloudWatchMetrics) {
this.publishCloudWatchMetrics = publishCloudWatchMetrics;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getSemanticVersion}
* @param semanticVersion The version of the serverless application.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder semanticVersion(java.lang.String semanticVersion) {
this.semanticVersion = semanticVersion;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getSubsegmentOverlappingTokens}
* @param subsegmentOverlappingTokens Number of tokens/words to overlap among segments of a document in case chunking is needed because of maximum document size limit.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder subsegmentOverlappingTokens(java.lang.String subsegmentOverlappingTokens) {
this.subsegmentOverlappingTokens = subsegmentOverlappingTokens;
return this;
}
/**
* Sets the value of {@link RedactionLambdaProps#getUnsupportedFileHandling}
* @param unsupportedFileHandling Handling logic for Unsupported files.
* Valid values are PASS and FAIL.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder unsupportedFileHandling(java.lang.String unsupportedFileHandling) {
this.unsupportedFileHandling = unsupportedFileHandling;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link RedactionLambdaProps}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public RedactionLambdaProps build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link RedactionLambdaProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements RedactionLambdaProps {
private final java.lang.String confidenceThreshold;
private final java.lang.String containsPiiEntitiesThreadCount;
private final java.lang.String defaultLanguageCode;
private final java.lang.String detectPiiEntitiesThreadCount;
private final java.lang.String documentMaxSize;
private final java.lang.String documentMaxSizeContainsPiiEntities;
private final java.lang.String documentMaxSizeDetectPiiEntities;
private final java.lang.String isPartialObjectSupported;
private final java.lang.String logLevel;
private final java.lang.String maskCharacter;
private final java.lang.String maskMode;
private final java.lang.String maxCharsOverlap;
private final java.lang.String piiEntityTypes;
private final java.lang.String publishCloudWatchMetrics;
private final java.lang.String semanticVersion;
private final java.lang.String subsegmentOverlappingTokens;
private final java.lang.String unsupportedFileHandling;
/**
* 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.confidenceThreshold = software.amazon.jsii.Kernel.get(this, "confidenceThreshold", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.containsPiiEntitiesThreadCount = software.amazon.jsii.Kernel.get(this, "containsPiiEntitiesThreadCount", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.defaultLanguageCode = software.amazon.jsii.Kernel.get(this, "defaultLanguageCode", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.detectPiiEntitiesThreadCount = software.amazon.jsii.Kernel.get(this, "detectPiiEntitiesThreadCount", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.documentMaxSize = software.amazon.jsii.Kernel.get(this, "documentMaxSize", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.documentMaxSizeContainsPiiEntities = software.amazon.jsii.Kernel.get(this, "documentMaxSizeContainsPiiEntities", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.documentMaxSizeDetectPiiEntities = software.amazon.jsii.Kernel.get(this, "documentMaxSizeDetectPiiEntities", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.isPartialObjectSupported = software.amazon.jsii.Kernel.get(this, "isPartialObjectSupported", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.logLevel = software.amazon.jsii.Kernel.get(this, "logLevel", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.maskCharacter = software.amazon.jsii.Kernel.get(this, "maskCharacter", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.maskMode = software.amazon.jsii.Kernel.get(this, "maskMode", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.maxCharsOverlap = software.amazon.jsii.Kernel.get(this, "maxCharsOverlap", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.piiEntityTypes = software.amazon.jsii.Kernel.get(this, "piiEntityTypes", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.publishCloudWatchMetrics = software.amazon.jsii.Kernel.get(this, "publishCloudWatchMetrics", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.semanticVersion = software.amazon.jsii.Kernel.get(this, "semanticVersion", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.subsegmentOverlappingTokens = software.amazon.jsii.Kernel.get(this, "subsegmentOverlappingTokens", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.unsupportedFileHandling = software.amazon.jsii.Kernel.get(this, "unsupportedFileHandling", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.confidenceThreshold = builder.confidenceThreshold;
this.containsPiiEntitiesThreadCount = builder.containsPiiEntitiesThreadCount;
this.defaultLanguageCode = builder.defaultLanguageCode;
this.detectPiiEntitiesThreadCount = builder.detectPiiEntitiesThreadCount;
this.documentMaxSize = builder.documentMaxSize;
this.documentMaxSizeContainsPiiEntities = builder.documentMaxSizeContainsPiiEntities;
this.documentMaxSizeDetectPiiEntities = builder.documentMaxSizeDetectPiiEntities;
this.isPartialObjectSupported = builder.isPartialObjectSupported;
this.logLevel = builder.logLevel;
this.maskCharacter = builder.maskCharacter;
this.maskMode = builder.maskMode;
this.maxCharsOverlap = builder.maxCharsOverlap;
this.piiEntityTypes = builder.piiEntityTypes;
this.publishCloudWatchMetrics = builder.publishCloudWatchMetrics;
this.semanticVersion = builder.semanticVersion;
this.subsegmentOverlappingTokens = builder.subsegmentOverlappingTokens;
this.unsupportedFileHandling = builder.unsupportedFileHandling;
}
@Override
public final java.lang.String getConfidenceThreshold() {
return this.confidenceThreshold;
}
@Override
public final java.lang.String getContainsPiiEntitiesThreadCount() {
return this.containsPiiEntitiesThreadCount;
}
@Override
public final java.lang.String getDefaultLanguageCode() {
return this.defaultLanguageCode;
}
@Override
public final java.lang.String getDetectPiiEntitiesThreadCount() {
return this.detectPiiEntitiesThreadCount;
}
@Override
public final java.lang.String getDocumentMaxSize() {
return this.documentMaxSize;
}
@Override
public final java.lang.String getDocumentMaxSizeContainsPiiEntities() {
return this.documentMaxSizeContainsPiiEntities;
}
@Override
public final java.lang.String getDocumentMaxSizeDetectPiiEntities() {
return this.documentMaxSizeDetectPiiEntities;
}
@Override
public final java.lang.String getIsPartialObjectSupported() {
return this.isPartialObjectSupported;
}
@Override
public final java.lang.String getLogLevel() {
return this.logLevel;
}
@Override
public final java.lang.String getMaskCharacter() {
return this.maskCharacter;
}
@Override
public final java.lang.String getMaskMode() {
return this.maskMode;
}
@Override
public final java.lang.String getMaxCharsOverlap() {
return this.maxCharsOverlap;
}
@Override
public final java.lang.String getPiiEntityTypes() {
return this.piiEntityTypes;
}
@Override
public final java.lang.String getPublishCloudWatchMetrics() {
return this.publishCloudWatchMetrics;
}
@Override
public final java.lang.String getSemanticVersion() {
return this.semanticVersion;
}
@Override
public final java.lang.String getSubsegmentOverlappingTokens() {
return this.subsegmentOverlappingTokens;
}
@Override
public final java.lang.String getUnsupportedFileHandling() {
return this.unsupportedFileHandling;
}
@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();
if (this.getConfidenceThreshold() != null) {
data.set("confidenceThreshold", om.valueToTree(this.getConfidenceThreshold()));
}
if (this.getContainsPiiEntitiesThreadCount() != null) {
data.set("containsPiiEntitiesThreadCount", om.valueToTree(this.getContainsPiiEntitiesThreadCount()));
}
if (this.getDefaultLanguageCode() != null) {
data.set("defaultLanguageCode", om.valueToTree(this.getDefaultLanguageCode()));
}
if (this.getDetectPiiEntitiesThreadCount() != null) {
data.set("detectPiiEntitiesThreadCount", om.valueToTree(this.getDetectPiiEntitiesThreadCount()));
}
if (this.getDocumentMaxSize() != null) {
data.set("documentMaxSize", om.valueToTree(this.getDocumentMaxSize()));
}
if (this.getDocumentMaxSizeContainsPiiEntities() != null) {
data.set("documentMaxSizeContainsPiiEntities", om.valueToTree(this.getDocumentMaxSizeContainsPiiEntities()));
}
if (this.getDocumentMaxSizeDetectPiiEntities() != null) {
data.set("documentMaxSizeDetectPiiEntities", om.valueToTree(this.getDocumentMaxSizeDetectPiiEntities()));
}
if (this.getIsPartialObjectSupported() != null) {
data.set("isPartialObjectSupported", om.valueToTree(this.getIsPartialObjectSupported()));
}
if (this.getLogLevel() != null) {
data.set("logLevel", om.valueToTree(this.getLogLevel()));
}
if (this.getMaskCharacter() != null) {
data.set("maskCharacter", om.valueToTree(this.getMaskCharacter()));
}
if (this.getMaskMode() != null) {
data.set("maskMode", om.valueToTree(this.getMaskMode()));
}
if (this.getMaxCharsOverlap() != null) {
data.set("maxCharsOverlap", om.valueToTree(this.getMaxCharsOverlap()));
}
if (this.getPiiEntityTypes() != null) {
data.set("piiEntityTypes", om.valueToTree(this.getPiiEntityTypes()));
}
if (this.getPublishCloudWatchMetrics() != null) {
data.set("publishCloudWatchMetrics", om.valueToTree(this.getPublishCloudWatchMetrics()));
}
if (this.getSemanticVersion() != null) {
data.set("semanticVersion", om.valueToTree(this.getSemanticVersion()));
}
if (this.getSubsegmentOverlappingTokens() != null) {
data.set("subsegmentOverlappingTokens", om.valueToTree(this.getSubsegmentOverlappingTokens()));
}
if (this.getUnsupportedFileHandling() != null) {
data.set("unsupportedFileHandling", om.valueToTree(this.getUnsupportedFileHandling()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("cdk-comprehend-s3olap.RedactionLambdaProps"));
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;
RedactionLambdaProps.Jsii$Proxy that = (RedactionLambdaProps.Jsii$Proxy) o;
if (this.confidenceThreshold != null ? !this.confidenceThreshold.equals(that.confidenceThreshold) : that.confidenceThreshold != null) return false;
if (this.containsPiiEntitiesThreadCount != null ? !this.containsPiiEntitiesThreadCount.equals(that.containsPiiEntitiesThreadCount) : that.containsPiiEntitiesThreadCount != null) return false;
if (this.defaultLanguageCode != null ? !this.defaultLanguageCode.equals(that.defaultLanguageCode) : that.defaultLanguageCode != null) return false;
if (this.detectPiiEntitiesThreadCount != null ? !this.detectPiiEntitiesThreadCount.equals(that.detectPiiEntitiesThreadCount) : that.detectPiiEntitiesThreadCount != null) return false;
if (this.documentMaxSize != null ? !this.documentMaxSize.equals(that.documentMaxSize) : that.documentMaxSize != null) return false;
if (this.documentMaxSizeContainsPiiEntities != null ? !this.documentMaxSizeContainsPiiEntities.equals(that.documentMaxSizeContainsPiiEntities) : that.documentMaxSizeContainsPiiEntities != null) return false;
if (this.documentMaxSizeDetectPiiEntities != null ? !this.documentMaxSizeDetectPiiEntities.equals(that.documentMaxSizeDetectPiiEntities) : that.documentMaxSizeDetectPiiEntities != null) return false;
if (this.isPartialObjectSupported != null ? !this.isPartialObjectSupported.equals(that.isPartialObjectSupported) : that.isPartialObjectSupported != null) return false;
if (this.logLevel != null ? !this.logLevel.equals(that.logLevel) : that.logLevel != null) return false;
if (this.maskCharacter != null ? !this.maskCharacter.equals(that.maskCharacter) : that.maskCharacter != null) return false;
if (this.maskMode != null ? !this.maskMode.equals(that.maskMode) : that.maskMode != null) return false;
if (this.maxCharsOverlap != null ? !this.maxCharsOverlap.equals(that.maxCharsOverlap) : that.maxCharsOverlap != null) return false;
if (this.piiEntityTypes != null ? !this.piiEntityTypes.equals(that.piiEntityTypes) : that.piiEntityTypes != null) return false;
if (this.publishCloudWatchMetrics != null ? !this.publishCloudWatchMetrics.equals(that.publishCloudWatchMetrics) : that.publishCloudWatchMetrics != null) return false;
if (this.semanticVersion != null ? !this.semanticVersion.equals(that.semanticVersion) : that.semanticVersion != null) return false;
if (this.subsegmentOverlappingTokens != null ? !this.subsegmentOverlappingTokens.equals(that.subsegmentOverlappingTokens) : that.subsegmentOverlappingTokens != null) return false;
return this.unsupportedFileHandling != null ? this.unsupportedFileHandling.equals(that.unsupportedFileHandling) : that.unsupportedFileHandling == null;
}
@Override
public final int hashCode() {
int result = this.confidenceThreshold != null ? this.confidenceThreshold.hashCode() : 0;
result = 31 * result + (this.containsPiiEntitiesThreadCount != null ? this.containsPiiEntitiesThreadCount.hashCode() : 0);
result = 31 * result + (this.defaultLanguageCode != null ? this.defaultLanguageCode.hashCode() : 0);
result = 31 * result + (this.detectPiiEntitiesThreadCount != null ? this.detectPiiEntitiesThreadCount.hashCode() : 0);
result = 31 * result + (this.documentMaxSize != null ? this.documentMaxSize.hashCode() : 0);
result = 31 * result + (this.documentMaxSizeContainsPiiEntities != null ? this.documentMaxSizeContainsPiiEntities.hashCode() : 0);
result = 31 * result + (this.documentMaxSizeDetectPiiEntities != null ? this.documentMaxSizeDetectPiiEntities.hashCode() : 0);
result = 31 * result + (this.isPartialObjectSupported != null ? this.isPartialObjectSupported.hashCode() : 0);
result = 31 * result + (this.logLevel != null ? this.logLevel.hashCode() : 0);
result = 31 * result + (this.maskCharacter != null ? this.maskCharacter.hashCode() : 0);
result = 31 * result + (this.maskMode != null ? this.maskMode.hashCode() : 0);
result = 31 * result + (this.maxCharsOverlap != null ? this.maxCharsOverlap.hashCode() : 0);
result = 31 * result + (this.piiEntityTypes != null ? this.piiEntityTypes.hashCode() : 0);
result = 31 * result + (this.publishCloudWatchMetrics != null ? this.publishCloudWatchMetrics.hashCode() : 0);
result = 31 * result + (this.semanticVersion != null ? this.semanticVersion.hashCode() : 0);
result = 31 * result + (this.subsegmentOverlappingTokens != null ? this.subsegmentOverlappingTokens.hashCode() : 0);
result = 31 * result + (this.unsupportedFileHandling != null ? this.unsupportedFileHandling.hashCode() : 0);
return result;
}
}
}