software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnection Maven / Gradle / Ivy
Show all versions of apprunner-alpha Show documentation
package software.amazon.awscdk.services.apprunner.alpha;
/**
* (experimental) The App Runner VPC Ingress Connection.
*
* Example:
*
*
* import software.amazon.awscdk.services.ec2.*;
* Vpc vpc;
* InterfaceVpcEndpoint interfaceVpcEndpoint = InterfaceVpcEndpoint.Builder.create(this, "MyVpcEndpoint")
* .vpc(vpc)
* .service(InterfaceVpcEndpointAwsService.APP_RUNNER_REQUESTS)
* .privateDnsEnabled(false)
* .build();
* Service service = Service.Builder.create(this, "Service")
* .source(Source.fromEcrPublic(EcrPublicProps.builder()
* .imageConfiguration(ImageConfiguration.builder()
* .port(8000)
* .build())
* .imageIdentifier("public.ecr.aws/aws-containers/hello-app-runner:latest")
* .build()))
* .isPubliclyAccessible(false)
* .build();
* VpcIngressConnection.Builder.create(this, "VpcIngressConnection")
* .vpc(vpc)
* .interfaceVpcEndpoint(interfaceVpcEndpoint)
* .service(service)
* .build();
*
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.104.0 (build e79254c)", date = "2024-11-22T02:24:11.394Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.apprunner.alpha.$Module.class, fqn = "@aws-cdk/aws-apprunner-alpha.VpcIngressConnection")
public class VpcIngressConnection extends software.amazon.awscdk.Resource implements software.amazon.awscdk.services.apprunner.alpha.IVpcIngressConnection {
protected VpcIngressConnection(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected VpcIngressConnection(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
/**
* @param scope This parameter is required.
* @param id This parameter is required.
* @param props This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public VpcIngressConnection(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnectionProps 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) Imports an App Runner VPC Ingress Connection from its ARN.
*
* @param scope This parameter is required.
* @param id This parameter is required.
* @param vpcIngressConnectionArn This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.apprunner.alpha.IVpcIngressConnection fromArn(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.NotNull java.lang.String vpcIngressConnectionArn) {
return software.amazon.jsii.JsiiObject.jsiiStaticCall(software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnection.class, "fromArn", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.apprunner.alpha.IVpcIngressConnection.class), new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), java.util.Objects.requireNonNull(vpcIngressConnectionArn, "vpcIngressConnectionArn is required") });
}
/**
* (experimental) Import from VPC Ingress Connection from attributes.
*
* @param scope This parameter is required.
* @param id This parameter is required.
* @param attrs This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.apprunner.alpha.IVpcIngressConnection fromVpcIngressConnectionAttributes(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnectionAttributes attrs) {
return software.amazon.jsii.JsiiObject.jsiiStaticCall(software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnection.class, "fromVpcIngressConnectionAttributes", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.apprunner.alpha.IVpcIngressConnection.class), new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), java.util.Objects.requireNonNull(attrs, "attrs is required") });
}
/**
* (experimental) The domain name associated with the VPC Ingress Connection resource.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.NotNull java.lang.String getDomainName() {
return software.amazon.jsii.Kernel.get(this, "domainName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* (experimental) The current status of the VPC Ingress Connection.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.NotNull java.lang.String getStatus() {
return software.amazon.jsii.Kernel.get(this, "status", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* (experimental) The ARN of the VPC Ingress Connection.
*/
@Override
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.NotNull java.lang.String getVpcIngressConnectionArn() {
return software.amazon.jsii.Kernel.get(this, "vpcIngressConnectionArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* (experimental) The name of the VPC Ingress Connection.
*/
@Override
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public @org.jetbrains.annotations.NotNull java.lang.String getVpcIngressConnectionName() {
return software.amazon.jsii.Kernel.get(this, "vpcIngressConnectionName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* (experimental) A fluent builder for {@link software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnection}.
*/
@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 This parameter is required.
* @param 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 software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnectionProps.Builder props;
private Builder(final software.constructs.Construct scope, final java.lang.String id) {
this.scope = scope;
this.id = id;
this.props = new software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnectionProps.Builder();
}
/**
* (experimental) The VPC Interface Endpoint for the VPC Ingress Connection.
*
* @return {@code this}
* @param interfaceVpcEndpoint The VPC Interface Endpoint for the VPC Ingress Connection. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder interfaceVpcEndpoint(final software.amazon.awscdk.services.ec2.IInterfaceVpcEndpoint interfaceVpcEndpoint) {
this.props.interfaceVpcEndpoint(interfaceVpcEndpoint);
return this;
}
/**
* (experimental) The service to connect.
*
* @return {@code this}
* @param service The service to connect. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder service(final software.amazon.awscdk.services.apprunner.alpha.IService service) {
this.props.service(service);
return this;
}
/**
* (experimental) The VPC for the VPC Ingress Connection.
*
* @return {@code this}
* @param vpc The VPC for the VPC Ingress Connection. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder vpc(final software.amazon.awscdk.services.ec2.IVpc vpc) {
this.props.vpc(vpc);
return this;
}
/**
* (experimental) The name for the VPC Ingress Connection.
*
* Default: - a name generated by CloudFormation
*
* @return {@code this}
* @param vpcIngressConnectionName The name for the VPC Ingress Connection. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder vpcIngressConnectionName(final java.lang.String vpcIngressConnectionName) {
this.props.vpcIngressConnectionName(vpcIngressConnectionName);
return this;
}
/**
* @return a newly built instance of {@link software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnection}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
public software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnection build() {
return new software.amazon.awscdk.services.apprunner.alpha.VpcIngressConnection(
this.scope,
this.id,
this.props.build()
);
}
}
}