Interface CfnVirtualGatewayProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnVirtualGatewayProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2024-11-27T16:50:52.928Z") @Stability(Stable) public interface CfnVirtualGatewayProps extends software.amazon.jsii.JsiiSerializable
Properties for defining a CfnVirtualGateway.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.appmesh.*;
 CfnVirtualGatewayProps cfnVirtualGatewayProps = CfnVirtualGatewayProps.builder()
         .meshName("meshName")
         .spec(VirtualGatewaySpecProperty.builder()
                 .listeners(List.of(VirtualGatewayListenerProperty.builder()
                         .portMapping(VirtualGatewayPortMappingProperty.builder()
                                 .port(123)
                                 .protocol("protocol")
                                 .build())
                         // the properties below are optional
                         .connectionPool(VirtualGatewayConnectionPoolProperty.builder()
                                 .grpc(VirtualGatewayGrpcConnectionPoolProperty.builder()
                                         .maxRequests(123)
                                         .build())
                                 .http(VirtualGatewayHttpConnectionPoolProperty.builder()
                                         .maxConnections(123)
                                         // the properties below are optional
                                         .maxPendingRequests(123)
                                         .build())
                                 .http2(VirtualGatewayHttp2ConnectionPoolProperty.builder()
                                         .maxRequests(123)
                                         .build())
                                 .build())
                         .healthCheck(VirtualGatewayHealthCheckPolicyProperty.builder()
                                 .healthyThreshold(123)
                                 .intervalMillis(123)
                                 .protocol("protocol")
                                 .timeoutMillis(123)
                                 .unhealthyThreshold(123)
                                 // the properties below are optional
                                 .path("path")
                                 .port(123)
                                 .build())
                         .tls(VirtualGatewayListenerTlsProperty.builder()
                                 .certificate(VirtualGatewayListenerTlsCertificateProperty.builder()
                                         .acm(VirtualGatewayListenerTlsAcmCertificateProperty.builder()
                                                 .certificateArn("certificateArn")
                                                 .build())
                                         .file(VirtualGatewayListenerTlsFileCertificateProperty.builder()
                                                 .certificateChain("certificateChain")
                                                 .privateKey("privateKey")
                                                 .build())
                                         .sds(VirtualGatewayListenerTlsSdsCertificateProperty.builder()
                                                 .secretName("secretName")
                                                 .build())
                                         .build())
                                 .mode("mode")
                                 // the properties below are optional
                                 .validation(VirtualGatewayListenerTlsValidationContextProperty.builder()
                                         .trust(VirtualGatewayListenerTlsValidationContextTrustProperty.builder()
                                                 .file(VirtualGatewayTlsValidationContextFileTrustProperty.builder()
                                                         .certificateChain("certificateChain")
                                                         .build())
                                                 .sds(VirtualGatewayTlsValidationContextSdsTrustProperty.builder()
                                                         .secretName("secretName")
                                                         .build())
                                                 .build())
                                         // the properties below are optional
                                         .subjectAlternativeNames(SubjectAlternativeNamesProperty.builder()
                                                 .match(SubjectAlternativeNameMatchersProperty.builder()
                                                         .exact(List.of("exact"))
                                                         .build())
                                                 .build())
                                         .build())
                                 .build())
                         .build()))
                 // the properties below are optional
                 .backendDefaults(VirtualGatewayBackendDefaultsProperty.builder()
                         .clientPolicy(VirtualGatewayClientPolicyProperty.builder()
                                 .tls(VirtualGatewayClientPolicyTlsProperty.builder()
                                         .validation(VirtualGatewayTlsValidationContextProperty.builder()
                                                 .trust(VirtualGatewayTlsValidationContextTrustProperty.builder()
                                                         .acm(VirtualGatewayTlsValidationContextAcmTrustProperty.builder()
                                                                 .certificateAuthorityArns(List.of("certificateAuthorityArns"))
                                                                 .build())
                                                         .file(VirtualGatewayTlsValidationContextFileTrustProperty.builder()
                                                                 .certificateChain("certificateChain")
                                                                 .build())
                                                         .sds(VirtualGatewayTlsValidationContextSdsTrustProperty.builder()
                                                                 .secretName("secretName")
                                                                 .build())
                                                         .build())
                                                 // the properties below are optional
                                                 .subjectAlternativeNames(SubjectAlternativeNamesProperty.builder()
                                                         .match(SubjectAlternativeNameMatchersProperty.builder()
                                                                 .exact(List.of("exact"))
                                                                 .build())
                                                         .build())
                                                 .build())
                                         // the properties below are optional
                                         .certificate(VirtualGatewayClientTlsCertificateProperty.builder()
                                                 .file(VirtualGatewayListenerTlsFileCertificateProperty.builder()
                                                         .certificateChain("certificateChain")
                                                         .privateKey("privateKey")
                                                         .build())
                                                 .sds(VirtualGatewayListenerTlsSdsCertificateProperty.builder()
                                                         .secretName("secretName")
                                                         .build())
                                                 .build())
                                         .enforce(false)
                                         .ports(List.of(123))
                                         .build())
                                 .build())
                         .build())
                 .logging(VirtualGatewayLoggingProperty.builder()
                         .accessLog(VirtualGatewayAccessLogProperty.builder()
                                 .file(VirtualGatewayFileAccessLogProperty.builder()
                                         .path("path")
                                         // the properties below are optional
                                         .format(LoggingFormatProperty.builder()
                                                 .json(List.of(JsonFormatRefProperty.builder()
                                                         .key("key")
                                                         .value("value")
                                                         .build()))
                                                 .text("text")
                                                 .build())
                                         .build())
                                 .build())
                         .build())
                 .build())
         // the properties below are optional
         .meshOwner("meshOwner")
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .virtualGatewayName("virtualGatewayName")
         .build();
 

See Also: