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();
 
  • Method Details

    • getGrpcRoute

      @Stability(Stable) @Nullable default Object getGrpcRoute()
      An object that represents the specification of a gRPC route.
    • getHttp2Route

      @Stability(Stable) @Nullable default Object getHttp2Route()
      An object that represents the specification of an HTTP/2 route.
    • getHttpRoute

      @Stability(Stable) @Nullable default Object getHttpRoute()
      An object that represents the specification of an HTTP route.
    • getPriority

      @Stability(Stable) @Nullable default Number getPriority()
      The priority for the route.

      Routes are matched based on the specified value, where 0 is the highest priority.

    • getTcpRoute

      @Stability(Stable) @Nullable default Object getTcpRoute()
      An object that represents the specification of a TCP route.
    • builder

      @Stability(Stable) static CfnRoute.RouteSpecProperty.Builder builder()
      Returns:
      a CfnRoute.RouteSpecProperty.Builder of CfnRoute.RouteSpecProperty