Show / Hide Table of Contents

Interface IRouteSpecConfig

All Properties for Route Specs.

Namespace: Amazon.CDK.AWS.AppMesh
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public interface IRouteSpecConfig
Syntax (vb)
Public Interface IRouteSpecConfig
Remarks

ExampleMetadata: fixture=_generated

Examples
// The code below shows an example of how to instantiate this type.
            // The values are placeholders you should change.
            using Amazon.CDK.AWS.AppMesh;

            var routeSpecConfig = new RouteSpecConfig {
                GrpcRouteSpec = new GrpcRouteProperty {
                    Action = new GrpcRouteActionProperty {
                        WeightedTargets = new [] { new WeightedTargetProperty {
                            VirtualNode = "virtualNode",
                            Weight = 123,

                            // the properties below are optional
                            Port = 123
                        } }
                    },
                    Match = new GrpcRouteMatchProperty {
                        Metadata = new [] { new GrpcRouteMetadataProperty {
                            Name = "name",

                            // the properties below are optional
                            Invert = false,
                            Match = new GrpcRouteMetadataMatchMethodProperty {
                                Exact = "exact",
                                Prefix = "prefix",
                                Range = new MatchRangeProperty {
                                    End = 123,
                                    Start = 123
                                },
                                Regex = "regex",
                                Suffix = "suffix"
                            }
                        } },
                        MethodName = "methodName",
                        Port = 123,
                        ServiceName = "serviceName"
                    },

                    // the properties below are optional
                    RetryPolicy = new GrpcRetryPolicyProperty {
                        MaxRetries = 123,
                        PerRetryTimeout = new DurationProperty {
                            Unit = "unit",
                            Value = 123
                        },

                        // the properties below are optional
                        GrpcRetryEvents = new [] { "grpcRetryEvents" },
                        HttpRetryEvents = new [] { "httpRetryEvents" },
                        TcpRetryEvents = new [] { "tcpRetryEvents" }
                    },
                    Timeout = new GrpcTimeoutProperty {
                        Idle = new DurationProperty {
                            Unit = "unit",
                            Value = 123
                        },
                        PerRequest = new DurationProperty {
                            Unit = "unit",
                            Value = 123
                        }
                    }
                },
                Http2RouteSpec = new HttpRouteProperty {
                    Action = new HttpRouteActionProperty {
                        WeightedTargets = new [] { new WeightedTargetProperty {
                            VirtualNode = "virtualNode",
                            Weight = 123,

                            // the properties below are optional
                            Port = 123
                        } }
                    },
                    Match = new HttpRouteMatchProperty {
                        Headers = new [] { new HttpRouteHeaderProperty {
                            Name = "name",

                            // the properties below are optional
                            Invert = false,
                            Match = new HeaderMatchMethodProperty {
                                Exact = "exact",
                                Prefix = "prefix",
                                Range = new MatchRangeProperty {
                                    End = 123,
                                    Start = 123
                                },
                                Regex = "regex",
                                Suffix = "suffix"
                            }
                        } },
                        Method = "method",
                        Path = new HttpPathMatchProperty {
                            Exact = "exact",
                            Regex = "regex"
                        },
                        Port = 123,
                        Prefix = "prefix",
                        QueryParameters = new [] { new QueryParameterProperty {
                            Name = "name",

                            // the properties below are optional
                            Match = new HttpQueryParameterMatchProperty {
                                Exact = "exact"
                            }
                        } },
                        Scheme = "scheme"
                    },

                    // the properties below are optional
                    RetryPolicy = new HttpRetryPolicyProperty {
                        MaxRetries = 123,
                        PerRetryTimeout = new DurationProperty {
                            Unit = "unit",
                            Value = 123
                        },

                        // the properties below are optional
                        HttpRetryEvents = new [] { "httpRetryEvents" },
                        TcpRetryEvents = new [] { "tcpRetryEvents" }
                    },
                    Timeout = new HttpTimeoutProperty {
                        Idle = new DurationProperty {
                            Unit = "unit",
                            Value = 123
                        },
                        PerRequest = new DurationProperty {
                            Unit = "unit",
                            Value = 123
                        }
                    }
                },
                HttpRouteSpec = new HttpRouteProperty {
                    Action = new HttpRouteActionProperty {
                        WeightedTargets = new [] { new WeightedTargetProperty {
                            VirtualNode = "virtualNode",
                            Weight = 123,

                            // the properties below are optional
                            Port = 123
                        } }
                    },
                    Match = new HttpRouteMatchProperty {
                        Headers = new [] { new HttpRouteHeaderProperty {
                            Name = "name",

                            // the properties below are optional
                            Invert = false,
                            Match = new HeaderMatchMethodProperty {
                                Exact = "exact",
                                Prefix = "prefix",
                                Range = new MatchRangeProperty {
                                    End = 123,
                                    Start = 123
                                },
                                Regex = "regex",
                                Suffix = "suffix"
                            }
                        } },
                        Method = "method",
                        Path = new HttpPathMatchProperty {
                            Exact = "exact",
                            Regex = "regex"
                        },
                        Port = 123,
                        Prefix = "prefix",
                        QueryParameters = new [] { new QueryParameterProperty {
                            Name = "name",

                            // the properties below are optional
                            Match = new HttpQueryParameterMatchProperty {
                                Exact = "exact"
                            }
                        } },
                        Scheme = "scheme"
                    },

                    // the properties below are optional
                    RetryPolicy = new HttpRetryPolicyProperty {
                        MaxRetries = 123,
                        PerRetryTimeout = new DurationProperty {
                            Unit = "unit",
                            Value = 123
                        },

                        // the properties below are optional
                        HttpRetryEvents = new [] { "httpRetryEvents" },
                        TcpRetryEvents = new [] { "tcpRetryEvents" }
                    },
                    Timeout = new HttpTimeoutProperty {
                        Idle = new DurationProperty {
                            Unit = "unit",
                            Value = 123
                        },
                        PerRequest = new DurationProperty {
                            Unit = "unit",
                            Value = 123
                        }
                    }
                },
                Priority = 123,
                TcpRouteSpec = new TcpRouteProperty {
                    Action = new TcpRouteActionProperty {
                        WeightedTargets = new [] { new WeightedTargetProperty {
                            VirtualNode = "virtualNode",
                            Weight = 123,

                            // the properties below are optional
                            Port = 123
                        } }
                    },

                    // the properties below are optional
                    Match = new TcpRouteMatchProperty {
                        Port = 123
                    },
                    Timeout = new TcpTimeoutProperty {
                        Idle = new DurationProperty {
                            Unit = "unit",
                            Value = 123
                        }
                    }
                }
            };

Synopsis

Properties

GrpcRouteSpec

The spec for a grpc route.

Http2RouteSpec

The spec for an http2 route.

HttpRouteSpec

The spec for an http route.

Priority

The priority for the route.

TcpRouteSpec

The spec for a tcp route.

Properties

GrpcRouteSpec

The spec for a grpc route.

CfnRoute.IGrpcRouteProperty? GrpcRouteSpec { get; }
Property Value

CfnRoute.IGrpcRouteProperty

Remarks

Default: - no grpc spec

Http2RouteSpec

The spec for an http2 route.

CfnRoute.IHttpRouteProperty? Http2RouteSpec { get; }
Property Value

CfnRoute.IHttpRouteProperty

Remarks

Default: - no http2 spec

HttpRouteSpec

The spec for an http route.

CfnRoute.IHttpRouteProperty? HttpRouteSpec { get; }
Property Value

CfnRoute.IHttpRouteProperty

Remarks

Default: - no http spec

Priority

The priority for the route.

double? Priority { get; }
Property Value

double?

Remarks

When a Virtual Router has multiple routes, route match is performed in the order of specified value, where 0 is the highest priority, and first matched route is selected.

Default: - no particular priority

TcpRouteSpec

The spec for a tcp route.

CfnRoute.ITcpRouteProperty? TcpRouteSpec { get; }
Property Value

CfnRoute.ITcpRouteProperty

Remarks

Default: - no tcp spec

Back to top Generated by DocFX