RouteSpec Class
Used to generate specs with different protocols for a RouteSpec.
Example
ts
declare const router: appmesh.VirtualRouter;
declare const node: appmesh.VirtualNode;
router.addRoute('route-http2-retry', {
routeSpec: appmesh.RouteSpec.http2({
weightedTargets: [{ virtualNode: node }],
retryPolicy: {
// Retry if the connection failed
tcpRetryEvents: [appmesh.TcpRetryEvent.CONNECTION_ERROR],
// Retry if HTTP responds with a gateway error (502, 503, 504)
httpRetryEvents: [appmesh.HttpRetryEvent.GATEWAY_ERROR],
// Retry five times
retryAttempts: 5,
// Use a 1 second timeout per retry
retryTimeout: Duration.seconds(1),
},
}),
});
Initializer
ts
new RouteSpec()
python
RouteSpec()
java
new RouteSpec()
csharp
new RouteSpec()
go
NewRouteSpec()
Methods
bind(scope: Construct): RouteSpecConfigdef bind(self, scope: Construct) -> RouteSpecConfigpublic RouteSpecConfig bind(Construct scope)public RouteSpecConfig Bind(Construct scope)func Bind(Scope Construct) RouteSpecConfig#Called when the RouteSpec type is initialized.
Can be used to enforce mutual exclusivity with future properties
grpc(options: GrpcRouteSpecOptions): RouteSpec // chainable@staticmethod def grpc(options: GrpcRouteSpecOptions) -> RouteSpecpublic static RouteSpec grpc(GrpcRouteSpecOptions options)public static RouteSpec Grpc(GrpcRouteSpecOptions options)func Grpc(Options GrpcRouteSpecOptions) RouteSpecstatic#Creates a GRPC Based RouteSpec.
http(options: HttpRouteSpecOptions): RouteSpec // chainable@staticmethod def http(options: HttpRouteSpecOptions) -> RouteSpecpublic static RouteSpec http(HttpRouteSpecOptions options)public static RouteSpec Http(HttpRouteSpecOptions options)func Http(Options HttpRouteSpecOptions) RouteSpecstatic#Creates an HTTP Based RouteSpec.
http2(options: HttpRouteSpecOptions): RouteSpec // chainable@staticmethod def http2(options: HttpRouteSpecOptions) -> RouteSpecpublic static RouteSpec http2(HttpRouteSpecOptions options)public static RouteSpec Http2(HttpRouteSpecOptions options)func Http2(Options HttpRouteSpecOptions) RouteSpecstatic#Creates an HTTP2 Based RouteSpec.
tcp(options: TcpRouteSpecOptions): RouteSpec // chainable@staticmethod def tcp(options: TcpRouteSpecOptions) -> RouteSpecpublic static RouteSpec tcp(TcpRouteSpecOptions options)public static RouteSpec Tcp(TcpRouteSpecOptions options)func Tcp(Options TcpRouteSpecOptions) RouteSpecstatic#Creates a TCP Based RouteSpec.