io.github.cdklabs.generative_ai_cdk_constructs.QaAppsyncOpensearch Maven / Gradle / Ivy
Show all versions of generative-ai-cdk-constructs Show documentation
package io.github.cdklabs.generative_ai_cdk_constructs;
/**
* (experimental) The QaAppsyncOpensearch class.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.103.1 (build bef2dea)", date = "2024-10-01T15:41:28.605Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Jsii(module = io.github.cdklabs.generative_ai_cdk_constructs.$Module.class, fqn = "@cdklabs/generative-ai-cdk-constructs.QaAppsyncOpensearch")
public class QaAppsyncOpensearch extends io.github.cdklabs.generative_ai_cdk_constructs.BaseClass {
protected QaAppsyncOpensearch(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected QaAppsyncOpensearch(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
/**
* (experimental) Constructs a new instance of the RagAppsyncStepfnOpensearch class.
*
* @param scope
- represents the scope for all the resources.
This parameter is required.
* @param id - this is a scope-unique id.
This parameter is required.
* @param props - user provided props for the construct.
This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public QaAppsyncOpensearch(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.NotNull io.github.cdklabs.generative_ai_cdk_constructs.QaAppsyncOpensearchProps props) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), java.util.Objects.requireNonNull(props, "props is required") });
}
/**
* (experimental) Returns an instance of appsync.IGraphqlApi created by the construct.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.appsync.IGraphqlApi getGraphqlApi() {
return software.amazon.jsii.Kernel.get(this, "graphqlApi", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.appsync.IGraphqlApi.class));
}
/**
* (experimental) Returns the instance of events.IEventBus used by the construct.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.events.IEventBus getQaBus() {
return software.amazon.jsii.Kernel.get(this, "qaBus", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.events.IEventBus.class));
}
/**
* (experimental) Returns an instance of appsync.IGraphqlApi created by the construct.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.lambda.DockerImageFunction getQaLambdaFunction() {
return software.amazon.jsii.Kernel.get(this, "qaLambdaFunction", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.lambda.DockerImageFunction.class));
}
/**
* (experimental) Returns an instance of s3.IBucket created by the construct.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.s3.IBucket getS3InputAssetsBucketInterface() {
return software.amazon.jsii.Kernel.get(this, "s3InputAssetsBucketInterface", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.s3.IBucket.class));
}
/**
* (experimental) Returns the instance of ec2.ISecurityGroup used by the construct.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.ec2.ISecurityGroup getSecurityGroup() {
return software.amazon.jsii.Kernel.get(this, "securityGroup", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.ec2.ISecurityGroup.class));
}
/**
* (experimental) Returns the instance of ec2.IVpc used by the construct.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.ec2.IVpc getVpc() {
return software.amazon.jsii.Kernel.get(this, "vpc", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.ec2.IVpc.class));
}
/**
* (experimental) Returns an instance of s3.Bucket created by the construct. IMPORTANT: If existingInputAssetsBucketObj was provided in Pattern Construct Props, this property will be undefined.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.s3.Bucket getS3InputAssetsBucket() {
return software.amazon.jsii.Kernel.get(this, "s3InputAssetsBucket", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.s3.Bucket.class));
}
/**
* (experimental) A fluent builder for {@link io.github.cdklabs.generative_ai_cdk_constructs.QaAppsyncOpensearch}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static final class Builder implements software.amazon.jsii.Builder {
/**
* @return a new instance of {@link Builder}.
* @param scope - represents the scope for all the resources.
This parameter is required.
* @param id - this is a scope-unique id.
This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static Builder create(final software.constructs.Construct scope, final java.lang.String id) {
return new Builder(scope, id);
}
private final software.constructs.Construct scope;
private final java.lang.String id;
private final io.github.cdklabs.generative_ai_cdk_constructs.QaAppsyncOpensearchProps.Builder props;
private Builder(final software.constructs.Construct scope, final java.lang.String id) {
this.scope = scope;
this.id = id;
this.props = new io.github.cdklabs.generative_ai_cdk_constructs.QaAppsyncOpensearchProps.Builder();
}
/**
* (experimental) Cognito user pool used for authentication.
*
* Default: - None
*
* @return {@code this}
* @param cognitoUserPool Cognito user pool used for authentication. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder cognitoUserPool(final software.amazon.awscdk.services.cognito.IUserPool cognitoUserPool) {
this.props.cognitoUserPool(cognitoUserPool);
return this;
}
/**
* (experimental) Data Index name for the OpenSearch Service.
*
* Default: - None
*
* @return {@code this}
* @param openSearchIndexName Data Index name for the OpenSearch Service. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder openSearchIndexName(final java.lang.String openSearchIndexName) {
this.props.openSearchIndexName(openSearchIndexName);
return this;
}
/**
* (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
*
* @return {@code this}
* @param bucketInputsAssetsProps Optional user provided props to override the default props for the S3 Bucket. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder bucketInputsAssetsProps(final software.amazon.awscdk.services.s3.BucketProps bucketInputsAssetsProps) {
this.props.bucketInputsAssetsProps(bucketInputsAssetsProps);
return this;
}
/**
* (experimental) Optional.
*
* Allows to provide custom lambda code
* and settings instead of the existing
*
* @return {@code this}
* @param customDockerLambdaProps Optional. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder customDockerLambdaProps(final io.github.cdklabs.generative_ai_cdk_constructs.DockerLambdaCustomProps customDockerLambdaProps) {
this.props.customDockerLambdaProps(customDockerLambdaProps);
return this;
}
/**
* (experimental) Optional Existing instance of an EventBridge bus.
*
* If not provided, the construct will create one.
*
* Default: - None
*
* @return {@code this}
* @param existingBusInterface Optional Existing instance of an EventBridge bus. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingBusInterface(final software.amazon.awscdk.services.events.IEventBus existingBusInterface) {
this.props.existingBusInterface(existingBusInterface);
return this;
}
/**
* (experimental) Existing instance of S3 Bucket object, providing both this and bucketInputsAssetsProps
will cause an error.
*
* Default: - None
*
* @return {@code this}
* @param existingInputAssetsBucketObj Existing instance of S3 Bucket object, providing both this and bucketInputsAssetsProps
will cause an error. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingInputAssetsBucketObj(final software.amazon.awscdk.services.s3.IBucket existingInputAssetsBucketObj) {
this.props.existingInputAssetsBucketObj(existingInputAssetsBucketObj);
return this;
}
/**
* (experimental) Existing merged Appsync GraphQL api.
*
* Default: - None
*
* @return {@code this}
* @param existingMergedApi Existing merged Appsync GraphQL api. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingMergedApi(final software.amazon.awscdk.services.appsync.CfnGraphQLApi existingMergedApi) {
this.props.existingMergedApi(existingMergedApi);
return this;
}
/**
* (experimental) Existing Amazon OpenSearch Service domain.
*
* Default: - None
*
* @return {@code this}
* @param existingOpensearchDomain Existing Amazon OpenSearch Service domain. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingOpensearchDomain(final software.amazon.awscdk.services.opensearchservice.IDomain existingOpensearchDomain) {
this.props.existingOpensearchDomain(existingOpensearchDomain);
return this;
}
/**
* (experimental) Existing Amazon OpenSearch Serverless collection.
*
* Default: - None
*
* @return {@code this}
* @param existingOpensearchServerlessCollection Existing Amazon OpenSearch Serverless collection. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingOpensearchServerlessCollection(final software.amazon.awscdk.services.opensearchserverless.CfnCollection existingOpensearchServerlessCollection) {
this.props.existingOpensearchServerlessCollection(existingOpensearchServerlessCollection);
return this;
}
/**
* (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
*
* @return {@code this}
* @param existingSecurityGroup Optional existing security group allowing access to opensearch. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingSecurityGroup(final software.amazon.awscdk.services.ec2.ISecurityGroup existingSecurityGroup) {
this.props.existingSecurityGroup(existingSecurityGroup);
return this;
}
/**
* (experimental) Optional An existing VPC in which to deploy the construct.
*
* Providing both this and
* vpcProps is an error.
*
* Default: - none
*
* @return {@code this}
* @param existingVpc Optional An existing VPC in which to deploy the construct. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder existingVpc(final software.amazon.awscdk.services.ec2.IVpc existingVpc) {
this.props.existingVpc(existingVpc);
return this;
}
/**
* (experimental) Optional.
*
* Allows a user to configure
* Lambda provisioned concurrency for consistent performance
*
* @return {@code this}
* @param lambdaProvisionedConcurrency Optional. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder lambdaProvisionedConcurrency(final java.lang.Number lambdaProvisionedConcurrency) {
this.props.lambdaProvisionedConcurrency(lambdaProvisionedConcurrency);
return this;
}
/**
* (experimental) Enable observability.
*
* Warning: associated cost with the services
* used. Best practive to enable by default.
*
* Default: - true
*
* @return {@code this}
* @param observability Enable observability. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder observability(final java.lang.Boolean observability) {
this.props.observability(observability);
return this;
}
/**
* (experimental) Optional.
*
* SecretsManager secret to authenticate against the OpenSearch Service domain if
* domain is configured with Username/Password.
*
* Default: - None
*
* @return {@code this}
* @param openSearchSecret Optional. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder openSearchSecret(final software.amazon.awscdk.services.secretsmanager.ISecret openSearchSecret) {
this.props.openSearchSecret(openSearchSecret);
return this;
}
/**
* (experimental) Value will be appended to resources name.
*
* Default: - _dev
*
* @return {@code this}
* @param stage Value will be appended to resources name. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder stage(final java.lang.String stage) {
this.props.stage(stage);
return this;
}
/**
* (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
*
* @return {@code this}
* @param vpcProps Optional custom properties for a VPC the construct will create. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder vpcProps(final software.amazon.awscdk.services.ec2.VpcProps vpcProps) {
this.props.vpcProps(vpcProps);
return this;
}
/**
* @return a newly built instance of {@link io.github.cdklabs.generative_ai_cdk_constructs.QaAppsyncOpensearch}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
public io.github.cdklabs.generative_ai_cdk_constructs.QaAppsyncOpensearch build() {
return new io.github.cdklabs.generative_ai_cdk_constructs.QaAppsyncOpensearch(
this.scope,
this.id,
this.props.build()
);
}
}
}