io.github.cdklabs.generative_ai_cdk_constructs.RagAppsyncStepfnOpensearchProps Maven / Gradle / Ivy
Show all versions of generative-ai-cdk-constructs Show documentation
package io.github.cdklabs.generative_ai_cdk_constructs;
/**
* (experimental) The properties for the RagAppsyncStepfnOpensearchProps class.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.103.1 (build bef2dea)", date = "2024-10-01T15:41:28.615Z")
@software.amazon.jsii.Jsii(module = io.github.cdklabs.generative_ai_cdk_constructs.$Module.class, fqn = "@cdklabs/generative-ai-cdk-constructs.RagAppsyncStepfnOpensearchProps")
@software.amazon.jsii.Jsii.Proxy(RagAppsyncStepfnOpensearchProps.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public interface RagAppsyncStepfnOpensearchProps extends software.amazon.jsii.JsiiSerializable {
/**
* (experimental) Cognito user pool used for authentication.
*
* Default: - None
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cognito.IUserPool getCognitoUserPool();
/**
* (experimental) Index name for the OpenSearch Service.
*
* Default: - None
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.lang.String getOpenSearchIndexName();
/**
* (experimental) Optional user provided props to override the default props for the S3 Bucket.
*
* Providing both this and existingInputAssetsBucketObj
will cause an error.
*
* Default: - Default props are used
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.s3.BucketProps getBucketInputsAssetsProps() {
return null;
}
/**
* (experimental) Optional user provided props to override the default props for the S3 Bucket.
*
* Providing both this and existingProcessedAssetsBucketObj
will cause an error.
*
* Default: - Default props are used
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.s3.BucketProps getBucketProcessedAssetsProps() {
return null;
}
/**
* (experimental) Optional.
*
* Allows to provide Embeddings custom lambda code
* and settings instead of the existing
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps getCustomEmbeddingsDockerLambdaProps() {
return null;
}
/**
* (experimental) Optional.
*
* Allows to provide File Transformer custom lambda code
* and settings instead of the existing
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps getCustomFileTransformerDockerLambdaProps() {
return null;
}
/**
* (experimental) Optional.
*
* Allows to provide Input Validation custom lambda code
* and settings instead of the existing
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps getCustomInputValidationDockerLambdaProps() {
return null;
}
/**
* (experimental) Optional Existing instance of an EventBridge bus.
*
* If not provided, the construct will create one.
*
* Default: - None
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.events.IEventBus getExistingBusInterface() {
return null;
}
/**
* (experimental) Existing instance of S3 Bucket object, providing both this and bucketInputsAssetsProps
will cause an error.
*
* Default: - None
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.s3.IBucket getExistingInputAssetsBucketObj() {
return null;
}
/**
* (experimental) Existing merged Appsync GraphQL api.
*
* Default: - None
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.appsync.CfnGraphQLApi getExistingMergedApi() {
return null;
}
/**
* (experimental) Optional existing Amazon OpenSearch Service domain.
*
* Default: - None
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.opensearchservice.IDomain getExistingOpensearchDomain() {
return null;
}
/**
* (experimental) Optional existing Amazon Amazon OpenSearch Serverless collection.
*
* Default: - None
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.opensearchserverless.CfnCollection getExistingOpensearchServerlessCollection() {
return null;
}
/**
* (experimental) Existing instance of S3 Bucket object, providing both this and bucketProcessedAssetsProps
will cause an error.
*
* Default: - None
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.s3.IBucket getExistingProcessedAssetsBucketObj() {
return null;
}
/**
* (experimental) Optional existing security group allowing access to opensearch.
*
* Used by the lambda functions
* built by this construct. If not provided, the construct will create one.
*
* Default: - none
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.ec2.ISecurityGroup getExistingSecurityGroup() {
return null;
}
/**
* (experimental) Optional An existing VPC in which to deploy the construct.
*
* Providing both this and
* vpcProps is an error.
*
* Default: - none
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.ec2.IVpc getExistingVpc() {
return null;
}
/**
* (experimental) Enable observability.
*
* Warning: associated cost with the services
* used. Best practice to enable by default.
*
* Default: - true
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.Boolean getObservability() {
return null;
}
/**
* (experimental) Optional.
*
* SecretsManager secret to authenticate against the OpenSearch Service domain if
* domain is configured with Username/Password.
*
* Default: - None
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.secretsmanager.ISecret getOpenSearchSecret() {
return null;
}
/**
* (experimental) Value will be appended to resources name.
*
* Default: - _dev
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.String getStage() {
return null;
}
/**
* (experimental) Optional custom properties for a VPC the construct will create.
*
* This VPC will
* be used by the Lambda functions the construct creates. Providing
* both this and existingVpc is an error.
*
* Default: - none
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.ec2.VpcProps getVpcProps() {
return null;
}
/**
* @return a {@link Builder} of {@link RagAppsyncStepfnOpensearchProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link RagAppsyncStepfnOpensearchProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static final class Builder implements software.amazon.jsii.Builder {
software.amazon.awscdk.services.cognito.IUserPool cognitoUserPool;
java.lang.String openSearchIndexName;
software.amazon.awscdk.services.s3.BucketProps bucketInputsAssetsProps;
software.amazon.awscdk.services.s3.BucketProps bucketProcessedAssetsProps;
io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps customEmbeddingsDockerLambdaProps;
io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps customFileTransformerDockerLambdaProps;
io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps customInputValidationDockerLambdaProps;
software.amazon.awscdk.services.events.IEventBus existingBusInterface;
software.amazon.awscdk.services.s3.IBucket existingInputAssetsBucketObj;
software.amazon.awscdk.services.appsync.CfnGraphQLApi existingMergedApi;
software.amazon.awscdk.services.opensearchservice.IDomain existingOpensearchDomain;
software.amazon.awscdk.services.opensearchserverless.CfnCollection existingOpensearchServerlessCollection;
software.amazon.awscdk.services.s3.IBucket existingProcessedAssetsBucketObj;
software.amazon.awscdk.services.ec2.ISecurityGroup existingSecurityGroup;
software.amazon.awscdk.services.ec2.IVpc existingVpc;
java.lang.Boolean observability;
software.amazon.awscdk.services.secretsmanager.ISecret openSearchSecret;
java.lang.String stage;
software.amazon.awscdk.services.ec2.VpcProps vpcProps;
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getCognitoUserPool}
* @param cognitoUserPool Cognito user pool used for authentication. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder cognitoUserPool(software.amazon.awscdk.services.cognito.IUserPool cognitoUserPool) {
this.cognitoUserPool = cognitoUserPool;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getOpenSearchIndexName}
* @param openSearchIndexName Index name for the OpenSearch Service. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder openSearchIndexName(java.lang.String openSearchIndexName) {
this.openSearchIndexName = openSearchIndexName;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getBucketInputsAssetsProps}
* @param bucketInputsAssetsProps Optional user provided props to override the default props for the S3 Bucket.
* Providing both this and existingInputAssetsBucketObj
will cause an error.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder bucketInputsAssetsProps(software.amazon.awscdk.services.s3.BucketProps bucketInputsAssetsProps) {
this.bucketInputsAssetsProps = bucketInputsAssetsProps;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getBucketProcessedAssetsProps}
* @param bucketProcessedAssetsProps Optional user provided props to override the default props for the S3 Bucket.
* Providing both this and existingProcessedAssetsBucketObj
will cause an error.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder bucketProcessedAssetsProps(software.amazon.awscdk.services.s3.BucketProps bucketProcessedAssetsProps) {
this.bucketProcessedAssetsProps = bucketProcessedAssetsProps;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getCustomEmbeddingsDockerLambdaProps}
* @param customEmbeddingsDockerLambdaProps Optional.
* Allows to provide Embeddings custom lambda code
* and settings instead of the existing
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder customEmbeddingsDockerLambdaProps(io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps customEmbeddingsDockerLambdaProps) {
this.customEmbeddingsDockerLambdaProps = customEmbeddingsDockerLambdaProps;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getCustomFileTransformerDockerLambdaProps}
* @param customFileTransformerDockerLambdaProps Optional.
* Allows to provide File Transformer custom lambda code
* and settings instead of the existing
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder customFileTransformerDockerLambdaProps(io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps customFileTransformerDockerLambdaProps) {
this.customFileTransformerDockerLambdaProps = customFileTransformerDockerLambdaProps;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getCustomInputValidationDockerLambdaProps}
* @param customInputValidationDockerLambdaProps Optional.
* Allows to provide Input Validation custom lambda code
* and settings instead of the existing
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder customInputValidationDockerLambdaProps(io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps customInputValidationDockerLambdaProps) {
this.customInputValidationDockerLambdaProps = customInputValidationDockerLambdaProps;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getExistingBusInterface}
* @param existingBusInterface Optional Existing instance of an EventBridge bus.
* If not provided, the construct will create one.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingBusInterface(software.amazon.awscdk.services.events.IEventBus existingBusInterface) {
this.existingBusInterface = existingBusInterface;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getExistingInputAssetsBucketObj}
* @param existingInputAssetsBucketObj Existing instance of S3 Bucket object, providing both this and bucketInputsAssetsProps
will cause an error.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingInputAssetsBucketObj(software.amazon.awscdk.services.s3.IBucket existingInputAssetsBucketObj) {
this.existingInputAssetsBucketObj = existingInputAssetsBucketObj;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getExistingMergedApi}
* @param existingMergedApi Existing merged Appsync GraphQL api.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingMergedApi(software.amazon.awscdk.services.appsync.CfnGraphQLApi existingMergedApi) {
this.existingMergedApi = existingMergedApi;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getExistingOpensearchDomain}
* @param existingOpensearchDomain Optional existing Amazon OpenSearch Service domain.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingOpensearchDomain(software.amazon.awscdk.services.opensearchservice.IDomain existingOpensearchDomain) {
this.existingOpensearchDomain = existingOpensearchDomain;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getExistingOpensearchServerlessCollection}
* @param existingOpensearchServerlessCollection Optional existing Amazon Amazon OpenSearch Serverless collection.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingOpensearchServerlessCollection(software.amazon.awscdk.services.opensearchserverless.CfnCollection existingOpensearchServerlessCollection) {
this.existingOpensearchServerlessCollection = existingOpensearchServerlessCollection;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getExistingProcessedAssetsBucketObj}
* @param existingProcessedAssetsBucketObj Existing instance of S3 Bucket object, providing both this and bucketProcessedAssetsProps
will cause an error.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingProcessedAssetsBucketObj(software.amazon.awscdk.services.s3.IBucket existingProcessedAssetsBucketObj) {
this.existingProcessedAssetsBucketObj = existingProcessedAssetsBucketObj;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getExistingSecurityGroup}
* @param existingSecurityGroup Optional existing security group allowing access to opensearch.
* Used by the lambda functions
* built by this construct. If not provided, the construct will create one.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingSecurityGroup(software.amazon.awscdk.services.ec2.ISecurityGroup existingSecurityGroup) {
this.existingSecurityGroup = existingSecurityGroup;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getExistingVpc}
* @param existingVpc Optional An existing VPC in which to deploy the construct.
* Providing both this and
* vpcProps is an error.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingVpc(software.amazon.awscdk.services.ec2.IVpc existingVpc) {
this.existingVpc = existingVpc;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getObservability}
* @param observability Enable observability.
* Warning: associated cost with the services
* used. Best practice to enable by default.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder observability(java.lang.Boolean observability) {
this.observability = observability;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getOpenSearchSecret}
* @param openSearchSecret Optional.
* SecretsManager secret to authenticate against the OpenSearch Service domain if
* domain is configured with Username/Password.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder openSearchSecret(software.amazon.awscdk.services.secretsmanager.ISecret openSearchSecret) {
this.openSearchSecret = openSearchSecret;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getStage}
* @param stage Value will be appended to resources name.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder stage(java.lang.String stage) {
this.stage = stage;
return this;
}
/**
* Sets the value of {@link RagAppsyncStepfnOpensearchProps#getVpcProps}
* @param vpcProps Optional custom properties for a VPC the construct will create.
* This VPC will
* be used by the Lambda functions the construct creates. Providing
* both this and existingVpc is an error.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder vpcProps(software.amazon.awscdk.services.ec2.VpcProps vpcProps) {
this.vpcProps = vpcProps;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link RagAppsyncStepfnOpensearchProps}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
public RagAppsyncStepfnOpensearchProps build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link RagAppsyncStepfnOpensearchProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements RagAppsyncStepfnOpensearchProps {
private final software.amazon.awscdk.services.cognito.IUserPool cognitoUserPool;
private final java.lang.String openSearchIndexName;
private final software.amazon.awscdk.services.s3.BucketProps bucketInputsAssetsProps;
private final software.amazon.awscdk.services.s3.BucketProps bucketProcessedAssetsProps;
private final io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps customEmbeddingsDockerLambdaProps;
private final io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps customFileTransformerDockerLambdaProps;
private final io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps customInputValidationDockerLambdaProps;
private final software.amazon.awscdk.services.events.IEventBus existingBusInterface;
private final software.amazon.awscdk.services.s3.IBucket existingInputAssetsBucketObj;
private final software.amazon.awscdk.services.appsync.CfnGraphQLApi existingMergedApi;
private final software.amazon.awscdk.services.opensearchservice.IDomain existingOpensearchDomain;
private final software.amazon.awscdk.services.opensearchserverless.CfnCollection existingOpensearchServerlessCollection;
private final software.amazon.awscdk.services.s3.IBucket existingProcessedAssetsBucketObj;
private final software.amazon.awscdk.services.ec2.ISecurityGroup existingSecurityGroup;
private final software.amazon.awscdk.services.ec2.IVpc existingVpc;
private final java.lang.Boolean observability;
private final software.amazon.awscdk.services.secretsmanager.ISecret openSearchSecret;
private final java.lang.String stage;
private final software.amazon.awscdk.services.ec2.VpcProps vpcProps;
/**
* 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.cognitoUserPool = software.amazon.jsii.Kernel.get(this, "cognitoUserPool", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cognito.IUserPool.class));
this.openSearchIndexName = software.amazon.jsii.Kernel.get(this, "openSearchIndexName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.bucketInputsAssetsProps = software.amazon.jsii.Kernel.get(this, "bucketInputsAssetsProps", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.s3.BucketProps.class));
this.bucketProcessedAssetsProps = software.amazon.jsii.Kernel.get(this, "bucketProcessedAssetsProps", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.s3.BucketProps.class));
this.customEmbeddingsDockerLambdaProps = software.amazon.jsii.Kernel.get(this, "customEmbeddingsDockerLambdaProps", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps.class));
this.customFileTransformerDockerLambdaProps = software.amazon.jsii.Kernel.get(this, "customFileTransformerDockerLambdaProps", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps.class));
this.customInputValidationDockerLambdaProps = software.amazon.jsii.Kernel.get(this, "customInputValidationDockerLambdaProps", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps.class));
this.existingBusInterface = software.amazon.jsii.Kernel.get(this, "existingBusInterface", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.events.IEventBus.class));
this.existingInputAssetsBucketObj = software.amazon.jsii.Kernel.get(this, "existingInputAssetsBucketObj", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.s3.IBucket.class));
this.existingMergedApi = software.amazon.jsii.Kernel.get(this, "existingMergedApi", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.appsync.CfnGraphQLApi.class));
this.existingOpensearchDomain = software.amazon.jsii.Kernel.get(this, "existingOpensearchDomain", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.opensearchservice.IDomain.class));
this.existingOpensearchServerlessCollection = software.amazon.jsii.Kernel.get(this, "existingOpensearchServerlessCollection", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.opensearchserverless.CfnCollection.class));
this.existingProcessedAssetsBucketObj = software.amazon.jsii.Kernel.get(this, "existingProcessedAssetsBucketObj", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.s3.IBucket.class));
this.existingSecurityGroup = software.amazon.jsii.Kernel.get(this, "existingSecurityGroup", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.ec2.ISecurityGroup.class));
this.existingVpc = software.amazon.jsii.Kernel.get(this, "existingVpc", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.ec2.IVpc.class));
this.observability = software.amazon.jsii.Kernel.get(this, "observability", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.openSearchSecret = software.amazon.jsii.Kernel.get(this, "openSearchSecret", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.secretsmanager.ISecret.class));
this.stage = software.amazon.jsii.Kernel.get(this, "stage", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.vpcProps = software.amazon.jsii.Kernel.get(this, "vpcProps", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.ec2.VpcProps.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.cognitoUserPool = java.util.Objects.requireNonNull(builder.cognitoUserPool, "cognitoUserPool is required");
this.openSearchIndexName = java.util.Objects.requireNonNull(builder.openSearchIndexName, "openSearchIndexName is required");
this.bucketInputsAssetsProps = builder.bucketInputsAssetsProps;
this.bucketProcessedAssetsProps = builder.bucketProcessedAssetsProps;
this.customEmbeddingsDockerLambdaProps = builder.customEmbeddingsDockerLambdaProps;
this.customFileTransformerDockerLambdaProps = builder.customFileTransformerDockerLambdaProps;
this.customInputValidationDockerLambdaProps = builder.customInputValidationDockerLambdaProps;
this.existingBusInterface = builder.existingBusInterface;
this.existingInputAssetsBucketObj = builder.existingInputAssetsBucketObj;
this.existingMergedApi = builder.existingMergedApi;
this.existingOpensearchDomain = builder.existingOpensearchDomain;
this.existingOpensearchServerlessCollection = builder.existingOpensearchServerlessCollection;
this.existingProcessedAssetsBucketObj = builder.existingProcessedAssetsBucketObj;
this.existingSecurityGroup = builder.existingSecurityGroup;
this.existingVpc = builder.existingVpc;
this.observability = builder.observability;
this.openSearchSecret = builder.openSearchSecret;
this.stage = builder.stage;
this.vpcProps = builder.vpcProps;
}
@Override
public final software.amazon.awscdk.services.cognito.IUserPool getCognitoUserPool() {
return this.cognitoUserPool;
}
@Override
public final java.lang.String getOpenSearchIndexName() {
return this.openSearchIndexName;
}
@Override
public final software.amazon.awscdk.services.s3.BucketProps getBucketInputsAssetsProps() {
return this.bucketInputsAssetsProps;
}
@Override
public final software.amazon.awscdk.services.s3.BucketProps getBucketProcessedAssetsProps() {
return this.bucketProcessedAssetsProps;
}
@Override
public final io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps getCustomEmbeddingsDockerLambdaProps() {
return this.customEmbeddingsDockerLambdaProps;
}
@Override
public final io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps getCustomFileTransformerDockerLambdaProps() {
return this.customFileTransformerDockerLambdaProps;
}
@Override
public final io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps getCustomInputValidationDockerLambdaProps() {
return this.customInputValidationDockerLambdaProps;
}
@Override
public final software.amazon.awscdk.services.events.IEventBus getExistingBusInterface() {
return this.existingBusInterface;
}
@Override
public final software.amazon.awscdk.services.s3.IBucket getExistingInputAssetsBucketObj() {
return this.existingInputAssetsBucketObj;
}
@Override
public final software.amazon.awscdk.services.appsync.CfnGraphQLApi getExistingMergedApi() {
return this.existingMergedApi;
}
@Override
public final software.amazon.awscdk.services.opensearchservice.IDomain getExistingOpensearchDomain() {
return this.existingOpensearchDomain;
}
@Override
public final software.amazon.awscdk.services.opensearchserverless.CfnCollection getExistingOpensearchServerlessCollection() {
return this.existingOpensearchServerlessCollection;
}
@Override
public final software.amazon.awscdk.services.s3.IBucket getExistingProcessedAssetsBucketObj() {
return this.existingProcessedAssetsBucketObj;
}
@Override
public final software.amazon.awscdk.services.ec2.ISecurityGroup getExistingSecurityGroup() {
return this.existingSecurityGroup;
}
@Override
public final software.amazon.awscdk.services.ec2.IVpc getExistingVpc() {
return this.existingVpc;
}
@Override
public final java.lang.Boolean getObservability() {
return this.observability;
}
@Override
public final software.amazon.awscdk.services.secretsmanager.ISecret getOpenSearchSecret() {
return this.openSearchSecret;
}
@Override
public final java.lang.String getStage() {
return this.stage;
}
@Override
public final software.amazon.awscdk.services.ec2.VpcProps getVpcProps() {
return this.vpcProps;
}
@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("cognitoUserPool", om.valueToTree(this.getCognitoUserPool()));
data.set("openSearchIndexName", om.valueToTree(this.getOpenSearchIndexName()));
if (this.getBucketInputsAssetsProps() != null) {
data.set("bucketInputsAssetsProps", om.valueToTree(this.getBucketInputsAssetsProps()));
}
if (this.getBucketProcessedAssetsProps() != null) {
data.set("bucketProcessedAssetsProps", om.valueToTree(this.getBucketProcessedAssetsProps()));
}
if (this.getCustomEmbeddingsDockerLambdaProps() != null) {
data.set("customEmbeddingsDockerLambdaProps", om.valueToTree(this.getCustomEmbeddingsDockerLambdaProps()));
}
if (this.getCustomFileTransformerDockerLambdaProps() != null) {
data.set("customFileTransformerDockerLambdaProps", om.valueToTree(this.getCustomFileTransformerDockerLambdaProps()));
}
if (this.getCustomInputValidationDockerLambdaProps() != null) {
data.set("customInputValidationDockerLambdaProps", om.valueToTree(this.getCustomInputValidationDockerLambdaProps()));
}
if (this.getExistingBusInterface() != null) {
data.set("existingBusInterface", om.valueToTree(this.getExistingBusInterface()));
}
if (this.getExistingInputAssetsBucketObj() != null) {
data.set("existingInputAssetsBucketObj", om.valueToTree(this.getExistingInputAssetsBucketObj()));
}
if (this.getExistingMergedApi() != null) {
data.set("existingMergedApi", om.valueToTree(this.getExistingMergedApi()));
}
if (this.getExistingOpensearchDomain() != null) {
data.set("existingOpensearchDomain", om.valueToTree(this.getExistingOpensearchDomain()));
}
if (this.getExistingOpensearchServerlessCollection() != null) {
data.set("existingOpensearchServerlessCollection", om.valueToTree(this.getExistingOpensearchServerlessCollection()));
}
if (this.getExistingProcessedAssetsBucketObj() != null) {
data.set("existingProcessedAssetsBucketObj", om.valueToTree(this.getExistingProcessedAssetsBucketObj()));
}
if (this.getExistingSecurityGroup() != null) {
data.set("existingSecurityGroup", om.valueToTree(this.getExistingSecurityGroup()));
}
if (this.getExistingVpc() != null) {
data.set("existingVpc", om.valueToTree(this.getExistingVpc()));
}
if (this.getObservability() != null) {
data.set("observability", om.valueToTree(this.getObservability()));
}
if (this.getOpenSearchSecret() != null) {
data.set("openSearchSecret", om.valueToTree(this.getOpenSearchSecret()));
}
if (this.getStage() != null) {
data.set("stage", om.valueToTree(this.getStage()));
}
if (this.getVpcProps() != null) {
data.set("vpcProps", om.valueToTree(this.getVpcProps()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@cdklabs/generative-ai-cdk-constructs.RagAppsyncStepfnOpensearchProps"));
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;
RagAppsyncStepfnOpensearchProps.Jsii$Proxy that = (RagAppsyncStepfnOpensearchProps.Jsii$Proxy) o;
if (!cognitoUserPool.equals(that.cognitoUserPool)) return false;
if (!openSearchIndexName.equals(that.openSearchIndexName)) return false;
if (this.bucketInputsAssetsProps != null ? !this.bucketInputsAssetsProps.equals(that.bucketInputsAssetsProps) : that.bucketInputsAssetsProps != null) return false;
if (this.bucketProcessedAssetsProps != null ? !this.bucketProcessedAssetsProps.equals(that.bucketProcessedAssetsProps) : that.bucketProcessedAssetsProps != null) return false;
if (this.customEmbeddingsDockerLambdaProps != null ? !this.customEmbeddingsDockerLambdaProps.equals(that.customEmbeddingsDockerLambdaProps) : that.customEmbeddingsDockerLambdaProps != null) return false;
if (this.customFileTransformerDockerLambdaProps != null ? !this.customFileTransformerDockerLambdaProps.equals(that.customFileTransformerDockerLambdaProps) : that.customFileTransformerDockerLambdaProps != null) return false;
if (this.customInputValidationDockerLambdaProps != null ? !this.customInputValidationDockerLambdaProps.equals(that.customInputValidationDockerLambdaProps) : that.customInputValidationDockerLambdaProps != null) return false;
if (this.existingBusInterface != null ? !this.existingBusInterface.equals(that.existingBusInterface) : that.existingBusInterface != null) return false;
if (this.existingInputAssetsBucketObj != null ? !this.existingInputAssetsBucketObj.equals(that.existingInputAssetsBucketObj) : that.existingInputAssetsBucketObj != null) return false;
if (this.existingMergedApi != null ? !this.existingMergedApi.equals(that.existingMergedApi) : that.existingMergedApi != null) return false;
if (this.existingOpensearchDomain != null ? !this.existingOpensearchDomain.equals(that.existingOpensearchDomain) : that.existingOpensearchDomain != null) return false;
if (this.existingOpensearchServerlessCollection != null ? !this.existingOpensearchServerlessCollection.equals(that.existingOpensearchServerlessCollection) : that.existingOpensearchServerlessCollection != null) return false;
if (this.existingProcessedAssetsBucketObj != null ? !this.existingProcessedAssetsBucketObj.equals(that.existingProcessedAssetsBucketObj) : that.existingProcessedAssetsBucketObj != null) return false;
if (this.existingSecurityGroup != null ? !this.existingSecurityGroup.equals(that.existingSecurityGroup) : that.existingSecurityGroup != null) return false;
if (this.existingVpc != null ? !this.existingVpc.equals(that.existingVpc) : that.existingVpc != null) return false;
if (this.observability != null ? !this.observability.equals(that.observability) : that.observability != null) return false;
if (this.openSearchSecret != null ? !this.openSearchSecret.equals(that.openSearchSecret) : that.openSearchSecret != null) return false;
if (this.stage != null ? !this.stage.equals(that.stage) : that.stage != null) return false;
return this.vpcProps != null ? this.vpcProps.equals(that.vpcProps) : that.vpcProps == null;
}
@Override
public final int hashCode() {
int result = this.cognitoUserPool.hashCode();
result = 31 * result + (this.openSearchIndexName.hashCode());
result = 31 * result + (this.bucketInputsAssetsProps != null ? this.bucketInputsAssetsProps.hashCode() : 0);
result = 31 * result + (this.bucketProcessedAssetsProps != null ? this.bucketProcessedAssetsProps.hashCode() : 0);
result = 31 * result + (this.customEmbeddingsDockerLambdaProps != null ? this.customEmbeddingsDockerLambdaProps.hashCode() : 0);
result = 31 * result + (this.customFileTransformerDockerLambdaProps != null ? this.customFileTransformerDockerLambdaProps.hashCode() : 0);
result = 31 * result + (this.customInputValidationDockerLambdaProps != null ? this.customInputValidationDockerLambdaProps.hashCode() : 0);
result = 31 * result + (this.existingBusInterface != null ? this.existingBusInterface.hashCode() : 0);
result = 31 * result + (this.existingInputAssetsBucketObj != null ? this.existingInputAssetsBucketObj.hashCode() : 0);
result = 31 * result + (this.existingMergedApi != null ? this.existingMergedApi.hashCode() : 0);
result = 31 * result + (this.existingOpensearchDomain != null ? this.existingOpensearchDomain.hashCode() : 0);
result = 31 * result + (this.existingOpensearchServerlessCollection != null ? this.existingOpensearchServerlessCollection.hashCode() : 0);
result = 31 * result + (this.existingProcessedAssetsBucketObj != null ? this.existingProcessedAssetsBucketObj.hashCode() : 0);
result = 31 * result + (this.existingSecurityGroup != null ? this.existingSecurityGroup.hashCode() : 0);
result = 31 * result + (this.existingVpc != null ? this.existingVpc.hashCode() : 0);
result = 31 * result + (this.observability != null ? this.observability.hashCode() : 0);
result = 31 * result + (this.openSearchSecret != null ? this.openSearchSecret.hashCode() : 0);
result = 31 * result + (this.stage != null ? this.stage.hashCode() : 0);
result = 31 * result + (this.vpcProps != null ? this.vpcProps.hashCode() : 0);
return result;
}
}
}