Interface CfnRoute.RouteSpecProperty

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnRoute.RouteSpecProperty.Jsii$Proxy
Enclosing class:
CfnRoute

@Stability(Stable) public static interface CfnRoute.RouteSpecProperty extends software.amazon.jsii.JsiiSerializable
An object that represents a route specification.

Specify one route type.

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.*;
 RouteSpecProperty routeSpecProperty = RouteSpecProperty.builder()
         .grpcRoute(GrpcRouteProperty.builder()
                 .action(GrpcRouteActionProperty.builder()
                         .weightedTargets(List.of(WeightedTargetProperty.builder()
                                 .virtualNode("virtualNode")
                                 .weight(123)
                                 // the properties below are optional
                                 .port(123)
                                 .build()))
                         .build())
                 .match(GrpcRouteMatchProperty.builder()
                         .metadata(List.of(GrpcRouteMetadataProperty.builder()
                                 .name("name")
                                 // the properties below are optional
                                 .invert(false)
                                 .match(GrpcRouteMetadataMatchMethodProperty.builder()
                                         .exact("exact")
                                         .prefix("prefix")
                                         .range(MatchRangeProperty.builder()
                                                 .end(123)
                                                 .start(123)
                                                 .build())
                                         .regex("regex")
                                         .suffix("suffix")
                                         .build())
                                 .build()))
                         .methodName("methodName")
                         .port(123)
                         .serviceName("serviceName")
                         .build())
                 // the properties below are optional
                 .retryPolicy(GrpcRetryPolicyProperty.builder()
                         .maxRetries(123)
                         .perRetryTimeout(DurationProperty.builder()
                                 .unit("unit")
                                 .value(123)
                                 .build())
                         // the properties below are optional
                         .grpcRetryEvents(List.of("grpcRetryEvents"))
                         .httpRetryEvents(List.of("httpRetryEvents"))
                         .tcpRetryEvents(List.of("tcpRetryEvents"))
                         .build())
                 .timeout(GrpcTimeoutProperty.builder()
                         .idle(DurationProperty.builder()
                                 .unit("unit")
                                 .value(123)
                                 .build())
                         .perRequest(DurationProperty.builder()
                                 .unit("unit")
                                 .value(123)
                                 .build())
                         .build())
                 .build())
         .http2Route(HttpRouteProperty.builder()
                 .action(HttpRouteActionProperty.builder()
                         .weightedTargets(List.of(WeightedTargetProperty.builder()
                                 .virtualNode("virtualNode")
                                 .weight(123)
                                 // the properties below are optional
                                 .port(123)
                                 .build()))
                         .build())
                 .match(HttpRouteMatchProperty.builder()
                         .headers(List.of(HttpRouteHeaderProperty.builder()
                                 .name("name")
                                 // the properties below are optional
                                 .invert(false)
                                 .match(HeaderMatchMethodProperty.builder()
                                         .exact("exact")
                                         .prefix("prefix")
                                         .range(MatchRangeProperty.builder()
                                                 .end(123)
                                                 .start(123)
                                                 .build())
                                         .regex("regex")
                                         .suffix("suffix")
                                         .build())
                                 .build()))
                         .method("method")
                         .path(HttpPathMatchProperty.builder()
                                 .exact("exact")
                                 .regex("regex")
                                 .build())
                         .port(123)
                         .prefix("prefix")
                         .queryParameters(List.of(QueryParameterProperty.builder()
                                 .name("name")
                                 // the properties below are optional
                                 .match(HttpQueryParameterMatchProperty.builder()
                                         .exact("exact")
                                         .build())
                                 .build()))
                         .scheme("scheme")
                         .build())
                 // the properties below are optional
                 .retryPolicy(HttpRetryPolicyProperty.builder()
                         .maxRetries(123)
                         .perRetryTimeout(DurationProperty.builder()
                                 .unit("unit")
                                 .value(123)
                                 .build())
                         // the properties below are optional
                         .httpRetryEvents(List.of("httpRetryEvents"))
                         .tcpRetryEvents(List.of("tcpRetryEvents"))
                         .build())
                 .timeout(HttpTimeoutProperty.builder()
                         .idle(DurationProperty.builder()
                                 .unit("unit")
                                 .value(123)
                                 .build())
                         .perRequest(DurationProperty.builder()
                                 .unit("unit")
                                 .value(123)
                                 .build())
                         .build())
                 .build())
         .httpRoute(HttpRouteProperty.builder()
                 .action(HttpRouteActionProperty.builder()
                         .weightedTargets(List.of(WeightedTargetProperty.builder()
                                 .virtualNode("virtualNode")
                                 .weight(123)
                                 // the properties below are optional
                                 .port(123)
                                 .build()))
                         .build())
                 .match(HttpRouteMatchProperty.builder()
                         .headers(List.of(HttpRouteHeaderProperty.builder()
                                 .name("name")
                                 // the properties below are optional
                                 .invert(false)
                                 .match(HeaderMatchMethodProperty.builder()
                                         .exact("exact")
                                         .prefix("prefix")
                                         .range(MatchRangeProperty.builder()
                                                 .end(123)
                                                 .start(123)
                                                 .build())
                                         .regex("regex")
                                         .suffix("suffix")
                                         .build())
                                 .build()))
                         .method("method")
                         .path(HttpPathMatchProperty.builder()
                                 .exact("exact")
                                 .regex("regex")
                                 .build())
                         .port(123)
                         .prefix("prefix")
                         .queryParameters(List.of(QueryParameterProperty.builder()
                                 .name("name")
                                 // the properties below are optional
                                 .match(HttpQueryParameterMatchProperty.builder()
                                         .exact("exact")
                                         .build())
                                 .build()))
                         .scheme("scheme")
                         .build())
                 // the properties below are optional
                 .retryPolicy(HttpRetryPolicyProperty.builder()
                         .maxRetries(123)
                         .perRetryTimeout(DurationProperty.builder()
                                 .unit("unit")
                                 .value(123)
                                 .build())
                         // the properties below are optional
                         .httpRetryEvents(List.of("httpRetryEvents"))
                         .tcpRetryEvents(List.of("tcpRetryEvents"))
                         .build())
                 .timeout(HttpTimeoutProperty.builder()
                         .idle(DurationProperty.builder()
                                 .unit("unit")
                                 .value(123)
                                 .build())
                         .perRequest(DurationProperty.builder()
                                 .unit("unit")
                                 .value(123)
                                 .build())
                         .build())
                 .build())
         .priority(123)
         .tcpRoute(TcpRouteProperty.builder()
                 .action(TcpRouteActionProperty.builder()
                         .weightedTargets(List.of(WeightedTargetProperty.builder()
                                 .virtualNode("virtualNode")
                                 .weight(123)
                                 // the properties below are optional
                                 .port(123)
                                 .build()))
                         .build())
                 // the properties below are optional
                 .match(TcpRouteMatchProperty.builder()
                         .port(123)
                         .build())
                 .timeout(TcpTimeoutProperty.builder()
                         .idle(DurationProperty.builder()
                                 .unit("unit")
                                 .value(123)
                                 .build())
                         .build())
                 .build())
         .build();
 

See Also: