Show / Hide Table of Contents

Class CfnRoute.RouteSpecProperty

An object that represents a route specification.

Inheritance
object
CfnRoute.RouteSpecProperty
Implements
CfnRoute.IRouteSpecProperty
Inherited Members
object.GetType()
object.MemberwiseClone()
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
Namespace: Amazon.CDK.AWS.AppMesh
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnRoute.RouteSpecProperty : CfnRoute.IRouteSpecProperty
Syntax (vb)
Public Class CfnRoute.RouteSpecProperty Implements CfnRoute.IRouteSpecProperty
Remarks

Specify one route type.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html

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 routeSpecProperty = new RouteSpecProperty {
                 GrpcRoute = 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
                         }
                     }
                 },
                 Http2Route = 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
                         }
                     }
                 },
                 HttpRoute = 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,
                 TcpRoute = 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

Constructors

RouteSpecProperty()

An object that represents a route specification.

Properties

GrpcRoute

An object that represents the specification of a gRPC route.

Http2Route

An object that represents the specification of an HTTP/2 route.

HttpRoute

An object that represents the specification of an HTTP route.

Priority

The priority for the route.

TcpRoute

An object that represents the specification of a TCP route.

Constructors

RouteSpecProperty()

An object that represents a route specification.

public RouteSpecProperty()
Remarks

Specify one route type.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html

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 routeSpecProperty = new RouteSpecProperty {
                 GrpcRoute = 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
                         }
                     }
                 },
                 Http2Route = 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
                         }
                     }
                 },
                 HttpRoute = 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,
                 TcpRoute = 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
                         }
                     }
                 }
             };

Properties

GrpcRoute

An object that represents the specification of a gRPC route.

public object? GrpcRoute { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-grpcroute

Type union: either IResolvable or CfnRoute.IGrpcRouteProperty

Http2Route

An object that represents the specification of an HTTP/2 route.

public object? Http2Route { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-http2route

Type union: either IResolvable or CfnRoute.IHttpRouteProperty

HttpRoute

An object that represents the specification of an HTTP route.

public object? HttpRoute { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-httproute

Type union: either IResolvable or CfnRoute.IHttpRouteProperty

Priority

The priority for the route.

public double? Priority { get; set; }
Property Value

double?

Remarks

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

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-priority

TcpRoute

An object that represents the specification of a TCP route.

public object? TcpRoute { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-tcproute

Type union: either IResolvable or CfnRoute.ITcpRouteProperty

Implements

CfnRoute.IRouteSpecProperty
Back to top Generated by DocFX