interface RouteSpecProperty
| Language | Type name | 
|---|---|
|  .NET | Amazon.CDK.AWS.AppMesh.CfnRoute.RouteSpecProperty | 
|  Java | software.amazon.awscdk.services.appmesh.CfnRoute.RouteSpecProperty | 
|  Python | aws_cdk.aws_appmesh.CfnRoute.RouteSpecProperty | 
|  TypeScript | @aws-cdk/aws-appmesh»CfnRoute»RouteSpecProperty | 
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 * as appmesh from '@aws-cdk/aws-appmesh';
const routeSpecProperty: appmesh.CfnRoute.RouteSpecProperty = {
  grpcRoute: {
    action: {
      weightedTargets: [{
        virtualNode: 'virtualNode',
        weight: 123,
        // the properties below are optional
        port: 123,
      }],
    },
    match: {
      metadata: [{
        name: 'name',
        // the properties below are optional
        invert: false,
        match: {
          exact: 'exact',
          prefix: 'prefix',
          range: {
            end: 123,
            start: 123,
          },
          regex: 'regex',
          suffix: 'suffix',
        },
      }],
      methodName: 'methodName',
      port: 123,
      serviceName: 'serviceName',
    },
    // the properties below are optional
    retryPolicy: {
      maxRetries: 123,
      perRetryTimeout: {
        unit: 'unit',
        value: 123,
      },
      // the properties below are optional
      grpcRetryEvents: ['grpcRetryEvents'],
      httpRetryEvents: ['httpRetryEvents'],
      tcpRetryEvents: ['tcpRetryEvents'],
    },
    timeout: {
      idle: {
        unit: 'unit',
        value: 123,
      },
      perRequest: {
        unit: 'unit',
        value: 123,
      },
    },
  },
  http2Route: {
    action: {
      weightedTargets: [{
        virtualNode: 'virtualNode',
        weight: 123,
        // the properties below are optional
        port: 123,
      }],
    },
    match: {
      headers: [{
        name: 'name',
        // the properties below are optional
        invert: false,
        match: {
          exact: 'exact',
          prefix: 'prefix',
          range: {
            end: 123,
            start: 123,
          },
          regex: 'regex',
          suffix: 'suffix',
        },
      }],
      method: 'method',
      path: {
        exact: 'exact',
        regex: 'regex',
      },
      port: 123,
      prefix: 'prefix',
      queryParameters: [{
        name: 'name',
        // the properties below are optional
        match: {
          exact: 'exact',
        },
      }],
      scheme: 'scheme',
    },
    // the properties below are optional
    retryPolicy: {
      maxRetries: 123,
      perRetryTimeout: {
        unit: 'unit',
        value: 123,
      },
      // the properties below are optional
      httpRetryEvents: ['httpRetryEvents'],
      tcpRetryEvents: ['tcpRetryEvents'],
    },
    timeout: {
      idle: {
        unit: 'unit',
        value: 123,
      },
      perRequest: {
        unit: 'unit',
        value: 123,
      },
    },
  },
  httpRoute: {
    action: {
      weightedTargets: [{
        virtualNode: 'virtualNode',
        weight: 123,
        // the properties below are optional
        port: 123,
      }],
    },
    match: {
      headers: [{
        name: 'name',
        // the properties below are optional
        invert: false,
        match: {
          exact: 'exact',
          prefix: 'prefix',
          range: {
            end: 123,
            start: 123,
          },
          regex: 'regex',
          suffix: 'suffix',
        },
      }],
      method: 'method',
      path: {
        exact: 'exact',
        regex: 'regex',
      },
      port: 123,
      prefix: 'prefix',
      queryParameters: [{
        name: 'name',
        // the properties below are optional
        match: {
          exact: 'exact',
        },
      }],
      scheme: 'scheme',
    },
    // the properties below are optional
    retryPolicy: {
      maxRetries: 123,
      perRetryTimeout: {
        unit: 'unit',
        value: 123,
      },
      // the properties below are optional
      httpRetryEvents: ['httpRetryEvents'],
      tcpRetryEvents: ['tcpRetryEvents'],
    },
    timeout: {
      idle: {
        unit: 'unit',
        value: 123,
      },
      perRequest: {
        unit: 'unit',
        value: 123,
      },
    },
  },
  priority: 123,
  tcpRoute: {
    action: {
      weightedTargets: [{
        virtualNode: 'virtualNode',
        weight: 123,
        // the properties below are optional
        port: 123,
      }],
    },
    // the properties below are optional
    match: {
      port: 123,
    },
    timeout: {
      idle: {
        unit: 'unit',
        value: 123,
      },
    },
  },
};
Properties
| Name | Type | Description | 
|---|---|---|
| grpc | IResolvable | Grpc | An object that represents the specification of a gRPC route. | 
| http2 | IResolvable | Http | An object that represents the specification of an HTTP/2 route. | 
| http | IResolvable | Http | An object that represents the specification of an HTTP route. | 
| priority? | number | The priority for the route. | 
| tcp | IResolvable | Tcp | An object that represents the specification of a TCP route. | 
grpcRoute?
Type:
IResolvable | Grpc
(optional)
An object that represents the specification of a gRPC route.
http2Route?
Type:
IResolvable | Http
(optional)
An object that represents the specification of an HTTP/2 route.
httpRoute?
Type:
IResolvable | Http
(optional)
An object that represents the specification of an HTTP route.
priority?
Type:
number
(optional)
The priority for the route.
Routes are matched based on the specified value, where 0 is the highest priority.
tcpRoute?
Type:
IResolvable | Tcp
(optional)
An object that represents the specification of a TCP route.
