awsappmesh

package
v2.0.0-rc.31 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 23, 2021 License: Apache-2.0 Imports: 10 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CfnGatewayRoute_CFN_RESOURCE_TYPE_NAME

func CfnGatewayRoute_CFN_RESOURCE_TYPE_NAME() *string

func CfnGatewayRoute_IsCfnElement

func CfnGatewayRoute_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnGatewayRoute_IsCfnResource

func CfnGatewayRoute_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnGatewayRoute_IsConstruct

func CfnGatewayRoute_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnMesh_CFN_RESOURCE_TYPE_NAME

func CfnMesh_CFN_RESOURCE_TYPE_NAME() *string

func CfnMesh_IsCfnElement

func CfnMesh_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnMesh_IsCfnResource

func CfnMesh_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnMesh_IsConstruct

func CfnMesh_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnRoute_CFN_RESOURCE_TYPE_NAME

func CfnRoute_CFN_RESOURCE_TYPE_NAME() *string

func CfnRoute_IsCfnElement

func CfnRoute_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnRoute_IsCfnResource

func CfnRoute_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnRoute_IsConstruct

func CfnRoute_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnVirtualGateway_CFN_RESOURCE_TYPE_NAME

func CfnVirtualGateway_CFN_RESOURCE_TYPE_NAME() *string

func CfnVirtualGateway_IsCfnElement

func CfnVirtualGateway_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnVirtualGateway_IsCfnResource

func CfnVirtualGateway_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnVirtualGateway_IsConstruct

func CfnVirtualGateway_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnVirtualNode_CFN_RESOURCE_TYPE_NAME

func CfnVirtualNode_CFN_RESOURCE_TYPE_NAME() *string

func CfnVirtualNode_IsCfnElement

func CfnVirtualNode_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnVirtualNode_IsCfnResource

func CfnVirtualNode_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnVirtualNode_IsConstruct

func CfnVirtualNode_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnVirtualRouter_CFN_RESOURCE_TYPE_NAME

func CfnVirtualRouter_CFN_RESOURCE_TYPE_NAME() *string

func CfnVirtualRouter_IsCfnElement

func CfnVirtualRouter_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnVirtualRouter_IsCfnResource

func CfnVirtualRouter_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnVirtualRouter_IsConstruct

func CfnVirtualRouter_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnVirtualService_CFN_RESOURCE_TYPE_NAME

func CfnVirtualService_CFN_RESOURCE_TYPE_NAME() *string

func CfnVirtualService_IsCfnElement

func CfnVirtualService_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnVirtualService_IsCfnResource

func CfnVirtualService_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnVirtualService_IsConstruct

func CfnVirtualService_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func GatewayRoute_IsConstruct

func GatewayRoute_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func GatewayRoute_IsResource

func GatewayRoute_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func Mesh_IsConstruct

func Mesh_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Mesh_IsResource

func Mesh_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func NewAccessLog_Override

func NewAccessLog_Override(a AccessLog)

Experimental.

func NewBackend_Override

func NewBackend_Override(b Backend)

Experimental.

func NewCfnGatewayRoute_Override

func NewCfnGatewayRoute_Override(c CfnGatewayRoute, scope constructs.Construct, id *string, props *CfnGatewayRouteProps)

Create a new `AWS::AppMesh::GatewayRoute`.

func NewCfnMesh_Override

func NewCfnMesh_Override(c CfnMesh, scope constructs.Construct, id *string, props *CfnMeshProps)

Create a new `AWS::AppMesh::Mesh`.

func NewCfnRoute_Override

func NewCfnRoute_Override(c CfnRoute, scope constructs.Construct, id *string, props *CfnRouteProps)

Create a new `AWS::AppMesh::Route`.

func NewCfnVirtualGateway_Override

func NewCfnVirtualGateway_Override(c CfnVirtualGateway, scope constructs.Construct, id *string, props *CfnVirtualGatewayProps)

Create a new `AWS::AppMesh::VirtualGateway`.

func NewCfnVirtualNode_Override

func NewCfnVirtualNode_Override(c CfnVirtualNode, scope constructs.Construct, id *string, props *CfnVirtualNodeProps)

Create a new `AWS::AppMesh::VirtualNode`.

func NewCfnVirtualRouter_Override

func NewCfnVirtualRouter_Override(c CfnVirtualRouter, scope constructs.Construct, id *string, props *CfnVirtualRouterProps)

Create a new `AWS::AppMesh::VirtualRouter`.

func NewCfnVirtualService_Override

func NewCfnVirtualService_Override(c CfnVirtualService, scope constructs.Construct, id *string, props *CfnVirtualServiceProps)

Create a new `AWS::AppMesh::VirtualService`.

func NewGatewayRouteHostnameMatch_Override

func NewGatewayRouteHostnameMatch_Override(g GatewayRouteHostnameMatch)

Experimental.

func NewGatewayRouteSpec_Override

func NewGatewayRouteSpec_Override(g GatewayRouteSpec)

Experimental.

func NewGatewayRoute_Override

func NewGatewayRoute_Override(g GatewayRoute, scope constructs.Construct, id *string, props *GatewayRouteProps)

Experimental.

func NewHeaderMatch_Override

func NewHeaderMatch_Override(h HeaderMatch)

Experimental.

func NewHealthCheck_Override

func NewHealthCheck_Override(h HealthCheck)

Experimental.

func NewHttpGatewayRoutePathMatch_Override

func NewHttpGatewayRoutePathMatch_Override(h HttpGatewayRoutePathMatch)

Experimental.

func NewHttpRoutePathMatch_Override

func NewHttpRoutePathMatch_Override(h HttpRoutePathMatch)

Experimental.

func NewMesh_Override

func NewMesh_Override(m Mesh, scope constructs.Construct, id *string, props *MeshProps)

Experimental.

func NewMutualTlsCertificate_Override

func NewMutualTlsCertificate_Override(m MutualTlsCertificate)

Experimental.

func NewMutualTlsValidationTrust_Override

func NewMutualTlsValidationTrust_Override(m MutualTlsValidationTrust)

Experimental.

func NewQueryParameterMatch_Override

func NewQueryParameterMatch_Override(q QueryParameterMatch)

Experimental.

func NewRouteSpec_Override

func NewRouteSpec_Override(r RouteSpec)

Experimental.

func NewRoute_Override

func NewRoute_Override(r Route, scope constructs.Construct, id *string, props *RouteProps)

Experimental.

func NewServiceDiscovery_Override

func NewServiceDiscovery_Override(s ServiceDiscovery)

Experimental.

func NewSubjectAlternativeNames_Override

func NewSubjectAlternativeNames_Override(s SubjectAlternativeNames)

Experimental.

func NewTlsCertificate_Override

func NewTlsCertificate_Override(t TlsCertificate)

Experimental.

func NewTlsValidationTrust_Override

func NewTlsValidationTrust_Override(t TlsValidationTrust)

Experimental.

func NewVirtualGatewayListener_Override

func NewVirtualGatewayListener_Override(v VirtualGatewayListener)

Experimental.

func NewVirtualGateway_Override

func NewVirtualGateway_Override(v VirtualGateway, scope constructs.Construct, id *string, props *VirtualGatewayProps)

Experimental.

func NewVirtualNodeListener_Override

func NewVirtualNodeListener_Override(v VirtualNodeListener)

Experimental.

func NewVirtualNode_Override

func NewVirtualNode_Override(v VirtualNode, scope constructs.Construct, id *string, props *VirtualNodeProps)

Experimental.

func NewVirtualRouterListener_Override

func NewVirtualRouterListener_Override(v VirtualRouterListener)

Experimental.

func NewVirtualRouter_Override

func NewVirtualRouter_Override(v VirtualRouter, scope constructs.Construct, id *string, props *VirtualRouterProps)

Experimental.

func NewVirtualServiceProvider_Override

func NewVirtualServiceProvider_Override(v VirtualServiceProvider)

Experimental.

func NewVirtualService_Override

func NewVirtualService_Override(v VirtualService, scope constructs.Construct, id *string, props *VirtualServiceProps)

Experimental.

func Route_IsConstruct

func Route_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Route_IsResource

func Route_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func VirtualGateway_IsConstruct

func VirtualGateway_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func VirtualGateway_IsResource

func VirtualGateway_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func VirtualNode_IsConstruct

func VirtualNode_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func VirtualNode_IsResource

func VirtualNode_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func VirtualRouter_IsConstruct

func VirtualRouter_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func VirtualRouter_IsResource

func VirtualRouter_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func VirtualService_IsConstruct

func VirtualService_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func VirtualService_IsResource

func VirtualService_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

Types

type AccessLog

type AccessLog interface {
	Bind(scope constructs.Construct) *AccessLogConfig
}

Configuration for Envoy Access logs for mesh endpoints.

TODO: EXAMPLE

Experimental.

func AccessLog_FromFilePath

func AccessLog_FromFilePath(filePath *string) AccessLog

Path to a file to write access logs to. Experimental.

type AccessLogConfig

type AccessLogConfig struct {
	// VirtualGateway CFN configuration for Access Logging.
	// Experimental.
	VirtualGatewayAccessLog *CfnVirtualGateway_VirtualGatewayAccessLogProperty `json:"virtualGatewayAccessLog"`
	// VirtualNode CFN configuration for Access Logging.
	// Experimental.
	VirtualNodeAccessLog *CfnVirtualNode_AccessLogProperty `json:"virtualNodeAccessLog"`
}

All Properties for Envoy Access logs for mesh endpoints.

TODO: EXAMPLE

Experimental.

type Backend

type Backend interface {
	Bind(_scope constructs.Construct) *BackendConfig
}

Contains static factory methods to create backends.

TODO: EXAMPLE

Experimental.

func Backend_VirtualService

func Backend_VirtualService(virtualService IVirtualService, props *VirtualServiceBackendOptions) Backend

Construct a Virtual Service backend. Experimental.

type BackendConfig

type BackendConfig struct {
	// Config for a Virtual Service backend.
	// Experimental.
	VirtualServiceBackend *CfnVirtualNode_BackendProperty `json:"virtualServiceBackend"`
}

Properties for a backend.

TODO: EXAMPLE

Experimental.

type BackendDefaults

type BackendDefaults struct {
	// TLS properties for Client policy for backend defaults.
	// Experimental.
	TlsClientPolicy *TlsClientPolicy `json:"tlsClientPolicy"`
}

Represents the properties needed to define backend defaults.

TODO: EXAMPLE

Experimental.

type CfnGatewayRoute

type CfnGatewayRoute interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttrGatewayRouteName() *string
	AttrMeshName() *string
	AttrMeshOwner() *string
	AttrResourceOwner() *string
	AttrUid() *string
	AttrVirtualGatewayName() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	GatewayRouteName() *string
	SetGatewayRouteName(val *string)
	LogicalId() *string
	MeshName() *string
	SetMeshName(val *string)
	MeshOwner() *string
	SetMeshOwner(val *string)
	Node() constructs.Node
	Ref() *string
	Spec() interface{}
	SetSpec(val interface{})
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	VirtualGatewayName() *string
	SetVirtualGatewayName(val *string)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::AppMesh::GatewayRoute`.

TODO: EXAMPLE

func NewCfnGatewayRoute

func NewCfnGatewayRoute(scope constructs.Construct, id *string, props *CfnGatewayRouteProps) CfnGatewayRoute

Create a new `AWS::AppMesh::GatewayRoute`.

type CfnGatewayRouteProps

type CfnGatewayRouteProps struct {
	// `AWS::AppMesh::GatewayRoute.GatewayRouteName`.
	GatewayRouteName *string `json:"gatewayRouteName"`
	// `AWS::AppMesh::GatewayRoute.MeshName`.
	MeshName *string `json:"meshName"`
	// `AWS::AppMesh::GatewayRoute.MeshOwner`.
	MeshOwner *string `json:"meshOwner"`
	// `AWS::AppMesh::GatewayRoute.Spec`.
	Spec interface{} `json:"spec"`
	// `AWS::AppMesh::GatewayRoute.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::AppMesh::GatewayRoute.VirtualGatewayName`.
	VirtualGatewayName *string `json:"virtualGatewayName"`
}

Properties for defining a `AWS::AppMesh::GatewayRoute`.

TODO: EXAMPLE

type CfnGatewayRoute_GatewayRouteHostnameMatchProperty

type CfnGatewayRoute_GatewayRouteHostnameMatchProperty struct {
	// `CfnGatewayRoute.GatewayRouteHostnameMatchProperty.Exact`.
	Exact *string `json:"exact"`
	// `CfnGatewayRoute.GatewayRouteHostnameMatchProperty.Suffix`.
	Suffix *string `json:"suffix"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GatewayRouteHostnameRewriteProperty

type CfnGatewayRoute_GatewayRouteHostnameRewriteProperty struct {
	// `CfnGatewayRoute.GatewayRouteHostnameRewriteProperty.DefaultTargetHostname`.
	DefaultTargetHostname *string `json:"defaultTargetHostname"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GatewayRouteMetadataMatchProperty

type CfnGatewayRoute_GatewayRouteMetadataMatchProperty struct {
	// `CfnGatewayRoute.GatewayRouteMetadataMatchProperty.Exact`.
	Exact *string `json:"exact"`
	// `CfnGatewayRoute.GatewayRouteMetadataMatchProperty.Prefix`.
	Prefix *string `json:"prefix"`
	// `CfnGatewayRoute.GatewayRouteMetadataMatchProperty.Range`.
	Range interface{} `json:"range"`
	// `CfnGatewayRoute.GatewayRouteMetadataMatchProperty.Regex`.
	Regex *string `json:"regex"`
	// `CfnGatewayRoute.GatewayRouteMetadataMatchProperty.Suffix`.
	Suffix *string `json:"suffix"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GatewayRouteRangeMatchProperty

type CfnGatewayRoute_GatewayRouteRangeMatchProperty struct {
	// `CfnGatewayRoute.GatewayRouteRangeMatchProperty.End`.
	End *float64 `json:"end"`
	// `CfnGatewayRoute.GatewayRouteRangeMatchProperty.Start`.
	Start *float64 `json:"start"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GatewayRouteSpecProperty

type CfnGatewayRoute_GatewayRouteSpecProperty struct {
	// `CfnGatewayRoute.GatewayRouteSpecProperty.GrpcRoute`.
	GrpcRoute interface{} `json:"grpcRoute"`
	// `CfnGatewayRoute.GatewayRouteSpecProperty.Http2Route`.
	Http2Route interface{} `json:"http2Route"`
	// `CfnGatewayRoute.GatewayRouteSpecProperty.HttpRoute`.
	HttpRoute interface{} `json:"httpRoute"`
	// `CfnGatewayRoute.GatewayRouteSpecProperty.Priority`.
	Priority *float64 `json:"priority"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GatewayRouteTargetProperty

type CfnGatewayRoute_GatewayRouteTargetProperty struct {
	// `CfnGatewayRoute.GatewayRouteTargetProperty.VirtualService`.
	VirtualService interface{} `json:"virtualService"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GatewayRouteVirtualServiceProperty

type CfnGatewayRoute_GatewayRouteVirtualServiceProperty struct {
	// `CfnGatewayRoute.GatewayRouteVirtualServiceProperty.VirtualServiceName`.
	VirtualServiceName *string `json:"virtualServiceName"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GrpcGatewayRouteActionProperty

type CfnGatewayRoute_GrpcGatewayRouteActionProperty struct {
	// `CfnGatewayRoute.GrpcGatewayRouteActionProperty.Rewrite`.
	Rewrite interface{} `json:"rewrite"`
	// `CfnGatewayRoute.GrpcGatewayRouteActionProperty.Target`.
	Target interface{} `json:"target"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GrpcGatewayRouteMatchProperty

type CfnGatewayRoute_GrpcGatewayRouteMatchProperty struct {
	// `CfnGatewayRoute.GrpcGatewayRouteMatchProperty.Hostname`.
	Hostname interface{} `json:"hostname"`
	// `CfnGatewayRoute.GrpcGatewayRouteMatchProperty.Metadata`.
	Metadata interface{} `json:"metadata"`
	// `CfnGatewayRoute.GrpcGatewayRouteMatchProperty.ServiceName`.
	ServiceName *string `json:"serviceName"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GrpcGatewayRouteMetadataProperty

type CfnGatewayRoute_GrpcGatewayRouteMetadataProperty struct {
	// `CfnGatewayRoute.GrpcGatewayRouteMetadataProperty.Invert`.
	Invert interface{} `json:"invert"`
	// `CfnGatewayRoute.GrpcGatewayRouteMetadataProperty.Match`.
	Match interface{} `json:"match"`
	// `CfnGatewayRoute.GrpcGatewayRouteMetadataProperty.Name`.
	Name *string `json:"name"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GrpcGatewayRouteProperty

type CfnGatewayRoute_GrpcGatewayRouteProperty struct {
	// `CfnGatewayRoute.GrpcGatewayRouteProperty.Action`.
	Action interface{} `json:"action"`
	// `CfnGatewayRoute.GrpcGatewayRouteProperty.Match`.
	Match interface{} `json:"match"`
}

TODO: EXAMPLE

type CfnGatewayRoute_GrpcGatewayRouteRewriteProperty

type CfnGatewayRoute_GrpcGatewayRouteRewriteProperty struct {
	// `CfnGatewayRoute.GrpcGatewayRouteRewriteProperty.Hostname`.
	Hostname interface{} `json:"hostname"`
}

TODO: EXAMPLE

type CfnGatewayRoute_HttpGatewayRouteActionProperty

type CfnGatewayRoute_HttpGatewayRouteActionProperty struct {
	// `CfnGatewayRoute.HttpGatewayRouteActionProperty.Rewrite`.
	Rewrite interface{} `json:"rewrite"`
	// `CfnGatewayRoute.HttpGatewayRouteActionProperty.Target`.
	Target interface{} `json:"target"`
}

TODO: EXAMPLE

type CfnGatewayRoute_HttpGatewayRouteHeaderMatchProperty

type CfnGatewayRoute_HttpGatewayRouteHeaderMatchProperty struct {
	// `CfnGatewayRoute.HttpGatewayRouteHeaderMatchProperty.Exact`.
	Exact *string `json:"exact"`
	// `CfnGatewayRoute.HttpGatewayRouteHeaderMatchProperty.Prefix`.
	Prefix *string `json:"prefix"`
	// `CfnGatewayRoute.HttpGatewayRouteHeaderMatchProperty.Range`.
	Range interface{} `json:"range"`
	// `CfnGatewayRoute.HttpGatewayRouteHeaderMatchProperty.Regex`.
	Regex *string `json:"regex"`
	// `CfnGatewayRoute.HttpGatewayRouteHeaderMatchProperty.Suffix`.
	Suffix *string `json:"suffix"`
}

TODO: EXAMPLE

type CfnGatewayRoute_HttpGatewayRouteHeaderProperty

type CfnGatewayRoute_HttpGatewayRouteHeaderProperty struct {
	// `CfnGatewayRoute.HttpGatewayRouteHeaderProperty.Invert`.
	Invert interface{} `json:"invert"`
	// `CfnGatewayRoute.HttpGatewayRouteHeaderProperty.Match`.
	Match interface{} `json:"match"`
	// `CfnGatewayRoute.HttpGatewayRouteHeaderProperty.Name`.
	Name *string `json:"name"`
}

TODO: EXAMPLE

type CfnGatewayRoute_HttpGatewayRouteMatchProperty

type CfnGatewayRoute_HttpGatewayRouteMatchProperty struct {
	// `CfnGatewayRoute.HttpGatewayRouteMatchProperty.Headers`.
	Headers interface{} `json:"headers"`
	// `CfnGatewayRoute.HttpGatewayRouteMatchProperty.Hostname`.
	Hostname interface{} `json:"hostname"`
	// `CfnGatewayRoute.HttpGatewayRouteMatchProperty.Method`.
	Method *string `json:"method"`
	// `CfnGatewayRoute.HttpGatewayRouteMatchProperty.Path`.
	Path interface{} `json:"path"`
	// `CfnGatewayRoute.HttpGatewayRouteMatchProperty.Prefix`.
	Prefix *string `json:"prefix"`
	// `CfnGatewayRoute.HttpGatewayRouteMatchProperty.QueryParameters`.
	QueryParameters interface{} `json:"queryParameters"`
}

TODO: EXAMPLE

type CfnGatewayRoute_HttpGatewayRoutePathRewriteProperty

type CfnGatewayRoute_HttpGatewayRoutePathRewriteProperty struct {
	// `CfnGatewayRoute.HttpGatewayRoutePathRewriteProperty.Exact`.
	Exact *string `json:"exact"`
}

TODO: EXAMPLE

type CfnGatewayRoute_HttpGatewayRoutePrefixRewriteProperty

type CfnGatewayRoute_HttpGatewayRoutePrefixRewriteProperty struct {
	// `CfnGatewayRoute.HttpGatewayRoutePrefixRewriteProperty.DefaultPrefix`.
	DefaultPrefix *string `json:"defaultPrefix"`
	// `CfnGatewayRoute.HttpGatewayRoutePrefixRewriteProperty.Value`.
	Value *string `json:"value"`
}

TODO: EXAMPLE

type CfnGatewayRoute_HttpGatewayRouteProperty

type CfnGatewayRoute_HttpGatewayRouteProperty struct {
	// `CfnGatewayRoute.HttpGatewayRouteProperty.Action`.
	Action interface{} `json:"action"`
	// `CfnGatewayRoute.HttpGatewayRouteProperty.Match`.
	Match interface{} `json:"match"`
}

TODO: EXAMPLE

type CfnGatewayRoute_HttpGatewayRouteRewriteProperty

type CfnGatewayRoute_HttpGatewayRouteRewriteProperty struct {
	// `CfnGatewayRoute.HttpGatewayRouteRewriteProperty.Hostname`.
	Hostname interface{} `json:"hostname"`
	// `CfnGatewayRoute.HttpGatewayRouteRewriteProperty.Path`.
	Path interface{} `json:"path"`
	// `CfnGatewayRoute.HttpGatewayRouteRewriteProperty.Prefix`.
	Prefix interface{} `json:"prefix"`
}

TODO: EXAMPLE

type CfnGatewayRoute_HttpPathMatchProperty

type CfnGatewayRoute_HttpPathMatchProperty struct {
	// `CfnGatewayRoute.HttpPathMatchProperty.Exact`.
	Exact *string `json:"exact"`
	// `CfnGatewayRoute.HttpPathMatchProperty.Regex`.
	Regex *string `json:"regex"`
}

TODO: EXAMPLE

type CfnGatewayRoute_HttpQueryParameterMatchProperty

type CfnGatewayRoute_HttpQueryParameterMatchProperty struct {
	// `CfnGatewayRoute.HttpQueryParameterMatchProperty.Exact`.
	Exact *string `json:"exact"`
}

TODO: EXAMPLE

type CfnGatewayRoute_QueryParameterProperty

type CfnGatewayRoute_QueryParameterProperty struct {
	// `CfnGatewayRoute.QueryParameterProperty.Match`.
	Match interface{} `json:"match"`
	// `CfnGatewayRoute.QueryParameterProperty.Name`.
	Name *string `json:"name"`
}

TODO: EXAMPLE

type CfnMesh

type CfnMesh interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttrMeshName() *string
	AttrMeshOwner() *string
	AttrResourceOwner() *string
	AttrUid() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	MeshName() *string
	SetMeshName(val *string)
	Node() constructs.Node
	Ref() *string
	Spec() interface{}
	SetSpec(val interface{})
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::AppMesh::Mesh`.

TODO: EXAMPLE

func NewCfnMesh

func NewCfnMesh(scope constructs.Construct, id *string, props *CfnMeshProps) CfnMesh

Create a new `AWS::AppMesh::Mesh`.

type CfnMeshProps

type CfnMeshProps struct {
	// `AWS::AppMesh::Mesh.MeshName`.
	MeshName *string `json:"meshName"`
	// `AWS::AppMesh::Mesh.Spec`.
	Spec interface{} `json:"spec"`
	// `AWS::AppMesh::Mesh.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
}

Properties for defining a `AWS::AppMesh::Mesh`.

TODO: EXAMPLE

type CfnMesh_EgressFilterProperty

type CfnMesh_EgressFilterProperty struct {
	// `CfnMesh.EgressFilterProperty.Type`.
	Type *string `json:"type"`
}

TODO: EXAMPLE

type CfnMesh_MeshSpecProperty

type CfnMesh_MeshSpecProperty struct {
	// `CfnMesh.MeshSpecProperty.EgressFilter`.
	EgressFilter interface{} `json:"egressFilter"`
}

TODO: EXAMPLE

type CfnRoute

type CfnRoute interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttrMeshName() *string
	AttrMeshOwner() *string
	AttrResourceOwner() *string
	AttrRouteName() *string
	AttrUid() *string
	AttrVirtualRouterName() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	MeshName() *string
	SetMeshName(val *string)
	MeshOwner() *string
	SetMeshOwner(val *string)
	Node() constructs.Node
	Ref() *string
	RouteName() *string
	SetRouteName(val *string)
	Spec() interface{}
	SetSpec(val interface{})
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	VirtualRouterName() *string
	SetVirtualRouterName(val *string)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::AppMesh::Route`.

TODO: EXAMPLE

func NewCfnRoute

func NewCfnRoute(scope constructs.Construct, id *string, props *CfnRouteProps) CfnRoute

Create a new `AWS::AppMesh::Route`.

type CfnRouteProps

type CfnRouteProps struct {
	// `AWS::AppMesh::Route.MeshName`.
	MeshName *string `json:"meshName"`
	// `AWS::AppMesh::Route.MeshOwner`.
	MeshOwner *string `json:"meshOwner"`
	// `AWS::AppMesh::Route.RouteName`.
	RouteName *string `json:"routeName"`
	// `AWS::AppMesh::Route.Spec`.
	Spec interface{} `json:"spec"`
	// `AWS::AppMesh::Route.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::AppMesh::Route.VirtualRouterName`.
	VirtualRouterName *string `json:"virtualRouterName"`
}

Properties for defining a `AWS::AppMesh::Route`.

TODO: EXAMPLE

type CfnRoute_DurationProperty

type CfnRoute_DurationProperty struct {
	// `CfnRoute.DurationProperty.Unit`.
	Unit *string `json:"unit"`
	// `CfnRoute.DurationProperty.Value`.
	Value *float64 `json:"value"`
}

TODO: EXAMPLE

type CfnRoute_GrpcRetryPolicyProperty

type CfnRoute_GrpcRetryPolicyProperty struct {
	// `CfnRoute.GrpcRetryPolicyProperty.GrpcRetryEvents`.
	GrpcRetryEvents *[]*string `json:"grpcRetryEvents"`
	// `CfnRoute.GrpcRetryPolicyProperty.HttpRetryEvents`.
	HttpRetryEvents *[]*string `json:"httpRetryEvents"`
	// `CfnRoute.GrpcRetryPolicyProperty.MaxRetries`.
	MaxRetries *float64 `json:"maxRetries"`
	// `CfnRoute.GrpcRetryPolicyProperty.PerRetryTimeout`.
	PerRetryTimeout interface{} `json:"perRetryTimeout"`
	// `CfnRoute.GrpcRetryPolicyProperty.TcpRetryEvents`.
	TcpRetryEvents *[]*string `json:"tcpRetryEvents"`
}

TODO: EXAMPLE

type CfnRoute_GrpcRouteActionProperty

type CfnRoute_GrpcRouteActionProperty struct {
	// `CfnRoute.GrpcRouteActionProperty.WeightedTargets`.
	WeightedTargets interface{} `json:"weightedTargets"`
}

TODO: EXAMPLE

type CfnRoute_GrpcRouteMatchProperty

type CfnRoute_GrpcRouteMatchProperty struct {
	// `CfnRoute.GrpcRouteMatchProperty.Metadata`.
	Metadata interface{} `json:"metadata"`
	// `CfnRoute.GrpcRouteMatchProperty.MethodName`.
	MethodName *string `json:"methodName"`
	// `CfnRoute.GrpcRouteMatchProperty.ServiceName`.
	ServiceName *string `json:"serviceName"`
}

TODO: EXAMPLE

type CfnRoute_GrpcRouteMetadataMatchMethodProperty

type CfnRoute_GrpcRouteMetadataMatchMethodProperty struct {
	// `CfnRoute.GrpcRouteMetadataMatchMethodProperty.Exact`.
	Exact *string `json:"exact"`
	// `CfnRoute.GrpcRouteMetadataMatchMethodProperty.Prefix`.
	Prefix *string `json:"prefix"`
	// `CfnRoute.GrpcRouteMetadataMatchMethodProperty.Range`.
	Range interface{} `json:"range"`
	// `CfnRoute.GrpcRouteMetadataMatchMethodProperty.Regex`.
	Regex *string `json:"regex"`
	// `CfnRoute.GrpcRouteMetadataMatchMethodProperty.Suffix`.
	Suffix *string `json:"suffix"`
}

TODO: EXAMPLE

type CfnRoute_GrpcRouteMetadataProperty

type CfnRoute_GrpcRouteMetadataProperty struct {
	// `CfnRoute.GrpcRouteMetadataProperty.Invert`.
	Invert interface{} `json:"invert"`
	// `CfnRoute.GrpcRouteMetadataProperty.Match`.
	Match interface{} `json:"match"`
	// `CfnRoute.GrpcRouteMetadataProperty.Name`.
	Name *string `json:"name"`
}

TODO: EXAMPLE

type CfnRoute_GrpcRouteProperty

type CfnRoute_GrpcRouteProperty struct {
	// `CfnRoute.GrpcRouteProperty.Action`.
	Action interface{} `json:"action"`
	// `CfnRoute.GrpcRouteProperty.Match`.
	Match interface{} `json:"match"`
	// `CfnRoute.GrpcRouteProperty.RetryPolicy`.
	RetryPolicy interface{} `json:"retryPolicy"`
	// `CfnRoute.GrpcRouteProperty.Timeout`.
	Timeout interface{} `json:"timeout"`
}

TODO: EXAMPLE

type CfnRoute_GrpcTimeoutProperty

type CfnRoute_GrpcTimeoutProperty struct {
	// `CfnRoute.GrpcTimeoutProperty.Idle`.
	Idle interface{} `json:"idle"`
	// `CfnRoute.GrpcTimeoutProperty.PerRequest`.
	PerRequest interface{} `json:"perRequest"`
}

TODO: EXAMPLE

type CfnRoute_HeaderMatchMethodProperty

type CfnRoute_HeaderMatchMethodProperty struct {
	// `CfnRoute.HeaderMatchMethodProperty.Exact`.
	Exact *string `json:"exact"`
	// `CfnRoute.HeaderMatchMethodProperty.Prefix`.
	Prefix *string `json:"prefix"`
	// `CfnRoute.HeaderMatchMethodProperty.Range`.
	Range interface{} `json:"range"`
	// `CfnRoute.HeaderMatchMethodProperty.Regex`.
	Regex *string `json:"regex"`
	// `CfnRoute.HeaderMatchMethodProperty.Suffix`.
	Suffix *string `json:"suffix"`
}

TODO: EXAMPLE

type CfnRoute_HttpPathMatchProperty

type CfnRoute_HttpPathMatchProperty struct {
	// `CfnRoute.HttpPathMatchProperty.Exact`.
	Exact *string `json:"exact"`
	// `CfnRoute.HttpPathMatchProperty.Regex`.
	Regex *string `json:"regex"`
}

TODO: EXAMPLE

type CfnRoute_HttpQueryParameterMatchProperty

type CfnRoute_HttpQueryParameterMatchProperty struct {
	// `CfnRoute.HttpQueryParameterMatchProperty.Exact`.
	Exact *string `json:"exact"`
}

TODO: EXAMPLE

type CfnRoute_HttpRetryPolicyProperty

type CfnRoute_HttpRetryPolicyProperty struct {
	// `CfnRoute.HttpRetryPolicyProperty.HttpRetryEvents`.
	HttpRetryEvents *[]*string `json:"httpRetryEvents"`
	// `CfnRoute.HttpRetryPolicyProperty.MaxRetries`.
	MaxRetries *float64 `json:"maxRetries"`
	// `CfnRoute.HttpRetryPolicyProperty.PerRetryTimeout`.
	PerRetryTimeout interface{} `json:"perRetryTimeout"`
	// `CfnRoute.HttpRetryPolicyProperty.TcpRetryEvents`.
	TcpRetryEvents *[]*string `json:"tcpRetryEvents"`
}

TODO: EXAMPLE

type CfnRoute_HttpRouteActionProperty

type CfnRoute_HttpRouteActionProperty struct {
	// `CfnRoute.HttpRouteActionProperty.WeightedTargets`.
	WeightedTargets interface{} `json:"weightedTargets"`
}

TODO: EXAMPLE

type CfnRoute_HttpRouteHeaderProperty

type CfnRoute_HttpRouteHeaderProperty struct {
	// `CfnRoute.HttpRouteHeaderProperty.Invert`.
	Invert interface{} `json:"invert"`
	// `CfnRoute.HttpRouteHeaderProperty.Match`.
	Match interface{} `json:"match"`
	// `CfnRoute.HttpRouteHeaderProperty.Name`.
	Name *string `json:"name"`
}

TODO: EXAMPLE

type CfnRoute_HttpRouteMatchProperty

type CfnRoute_HttpRouteMatchProperty struct {
	// `CfnRoute.HttpRouteMatchProperty.Headers`.
	Headers interface{} `json:"headers"`
	// `CfnRoute.HttpRouteMatchProperty.Method`.
	Method *string `json:"method"`
	// `CfnRoute.HttpRouteMatchProperty.Path`.
	Path interface{} `json:"path"`
	// `CfnRoute.HttpRouteMatchProperty.Prefix`.
	Prefix *string `json:"prefix"`
	// `CfnRoute.HttpRouteMatchProperty.QueryParameters`.
	QueryParameters interface{} `json:"queryParameters"`
	// `CfnRoute.HttpRouteMatchProperty.Scheme`.
	Scheme *string `json:"scheme"`
}

TODO: EXAMPLE

type CfnRoute_HttpRouteProperty

type CfnRoute_HttpRouteProperty struct {
	// `CfnRoute.HttpRouteProperty.Action`.
	Action interface{} `json:"action"`
	// `CfnRoute.HttpRouteProperty.Match`.
	Match interface{} `json:"match"`
	// `CfnRoute.HttpRouteProperty.RetryPolicy`.
	RetryPolicy interface{} `json:"retryPolicy"`
	// `CfnRoute.HttpRouteProperty.Timeout`.
	Timeout interface{} `json:"timeout"`
}

TODO: EXAMPLE

type CfnRoute_HttpTimeoutProperty

type CfnRoute_HttpTimeoutProperty struct {
	// `CfnRoute.HttpTimeoutProperty.Idle`.
	Idle interface{} `json:"idle"`
	// `CfnRoute.HttpTimeoutProperty.PerRequest`.
	PerRequest interface{} `json:"perRequest"`
}

TODO: EXAMPLE

type CfnRoute_MatchRangeProperty

type CfnRoute_MatchRangeProperty struct {
	// `CfnRoute.MatchRangeProperty.End`.
	End *float64 `json:"end"`
	// `CfnRoute.MatchRangeProperty.Start`.
	Start *float64 `json:"start"`
}

TODO: EXAMPLE

type CfnRoute_QueryParameterProperty

type CfnRoute_QueryParameterProperty struct {
	// `CfnRoute.QueryParameterProperty.Match`.
	Match interface{} `json:"match"`
	// `CfnRoute.QueryParameterProperty.Name`.
	Name *string `json:"name"`
}

TODO: EXAMPLE

type CfnRoute_RouteSpecProperty

type CfnRoute_RouteSpecProperty struct {
	// `CfnRoute.RouteSpecProperty.GrpcRoute`.
	GrpcRoute interface{} `json:"grpcRoute"`
	// `CfnRoute.RouteSpecProperty.Http2Route`.
	Http2Route interface{} `json:"http2Route"`
	// `CfnRoute.RouteSpecProperty.HttpRoute`.
	HttpRoute interface{} `json:"httpRoute"`
	// `CfnRoute.RouteSpecProperty.Priority`.
	Priority *float64 `json:"priority"`
	// `CfnRoute.RouteSpecProperty.TcpRoute`.
	TcpRoute interface{} `json:"tcpRoute"`
}

TODO: EXAMPLE

type CfnRoute_TcpRouteActionProperty

type CfnRoute_TcpRouteActionProperty struct {
	// `CfnRoute.TcpRouteActionProperty.WeightedTargets`.
	WeightedTargets interface{} `json:"weightedTargets"`
}

TODO: EXAMPLE

type CfnRoute_TcpRouteProperty

type CfnRoute_TcpRouteProperty struct {
	// `CfnRoute.TcpRouteProperty.Action`.
	Action interface{} `json:"action"`
	// `CfnRoute.TcpRouteProperty.Timeout`.
	Timeout interface{} `json:"timeout"`
}

TODO: EXAMPLE

type CfnRoute_TcpTimeoutProperty

type CfnRoute_TcpTimeoutProperty struct {
	// `CfnRoute.TcpTimeoutProperty.Idle`.
	Idle interface{} `json:"idle"`
}

TODO: EXAMPLE

type CfnRoute_WeightedTargetProperty

type CfnRoute_WeightedTargetProperty struct {
	// `CfnRoute.WeightedTargetProperty.VirtualNode`.
	VirtualNode *string `json:"virtualNode"`
	// `CfnRoute.WeightedTargetProperty.Weight`.
	Weight *float64 `json:"weight"`
}

TODO: EXAMPLE

type CfnVirtualGateway

type CfnVirtualGateway interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttrMeshName() *string
	AttrMeshOwner() *string
	AttrResourceOwner() *string
	AttrUid() *string
	AttrVirtualGatewayName() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	MeshName() *string
	SetMeshName(val *string)
	MeshOwner() *string
	SetMeshOwner(val *string)
	Node() constructs.Node
	Ref() *string
	Spec() interface{}
	SetSpec(val interface{})
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	VirtualGatewayName() *string
	SetVirtualGatewayName(val *string)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::AppMesh::VirtualGateway`.

TODO: EXAMPLE

func NewCfnVirtualGateway

func NewCfnVirtualGateway(scope constructs.Construct, id *string, props *CfnVirtualGatewayProps) CfnVirtualGateway

Create a new `AWS::AppMesh::VirtualGateway`.

type CfnVirtualGatewayProps

type CfnVirtualGatewayProps struct {
	// `AWS::AppMesh::VirtualGateway.MeshName`.
	MeshName *string `json:"meshName"`
	// `AWS::AppMesh::VirtualGateway.MeshOwner`.
	MeshOwner *string `json:"meshOwner"`
	// `AWS::AppMesh::VirtualGateway.Spec`.
	Spec interface{} `json:"spec"`
	// `AWS::AppMesh::VirtualGateway.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::AppMesh::VirtualGateway.VirtualGatewayName`.
	VirtualGatewayName *string `json:"virtualGatewayName"`
}

Properties for defining a `AWS::AppMesh::VirtualGateway`.

TODO: EXAMPLE

type CfnVirtualGateway_SubjectAlternativeNameMatchersProperty

type CfnVirtualGateway_SubjectAlternativeNameMatchersProperty struct {
	// `CfnVirtualGateway.SubjectAlternativeNameMatchersProperty.Exact`.
	Exact *[]*string `json:"exact"`
}

TODO: EXAMPLE

type CfnVirtualGateway_SubjectAlternativeNamesProperty

type CfnVirtualGateway_SubjectAlternativeNamesProperty struct {
	// `CfnVirtualGateway.SubjectAlternativeNamesProperty.Match`.
	Match interface{} `json:"match"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayAccessLogProperty

type CfnVirtualGateway_VirtualGatewayAccessLogProperty struct {
	// `CfnVirtualGateway.VirtualGatewayAccessLogProperty.File`.
	File interface{} `json:"file"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayBackendDefaultsProperty

type CfnVirtualGateway_VirtualGatewayBackendDefaultsProperty struct {
	// `CfnVirtualGateway.VirtualGatewayBackendDefaultsProperty.ClientPolicy`.
	ClientPolicy interface{} `json:"clientPolicy"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayClientPolicyProperty

type CfnVirtualGateway_VirtualGatewayClientPolicyProperty struct {
	// `CfnVirtualGateway.VirtualGatewayClientPolicyProperty.TLS`.
	Tls interface{} `json:"tls"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayClientPolicyTlsProperty

type CfnVirtualGateway_VirtualGatewayClientPolicyTlsProperty struct {
	// `CfnVirtualGateway.VirtualGatewayClientPolicyTlsProperty.Certificate`.
	Certificate interface{} `json:"certificate"`
	// `CfnVirtualGateway.VirtualGatewayClientPolicyTlsProperty.Enforce`.
	Enforce interface{} `json:"enforce"`
	// `CfnVirtualGateway.VirtualGatewayClientPolicyTlsProperty.Ports`.
	Ports interface{} `json:"ports"`
	// `CfnVirtualGateway.VirtualGatewayClientPolicyTlsProperty.Validation`.
	Validation interface{} `json:"validation"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayClientTlsCertificateProperty

type CfnVirtualGateway_VirtualGatewayClientTlsCertificateProperty struct {
	// `CfnVirtualGateway.VirtualGatewayClientTlsCertificateProperty.File`.
	File interface{} `json:"file"`
	// `CfnVirtualGateway.VirtualGatewayClientTlsCertificateProperty.SDS`.
	Sds interface{} `json:"sds"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayConnectionPoolProperty

type CfnVirtualGateway_VirtualGatewayConnectionPoolProperty struct {
	// `CfnVirtualGateway.VirtualGatewayConnectionPoolProperty.GRPC`.
	Grpc interface{} `json:"grpc"`
	// `CfnVirtualGateway.VirtualGatewayConnectionPoolProperty.HTTP`.
	Http interface{} `json:"http"`
	// `CfnVirtualGateway.VirtualGatewayConnectionPoolProperty.HTTP2`.
	Http2 interface{} `json:"http2"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayFileAccessLogProperty

type CfnVirtualGateway_VirtualGatewayFileAccessLogProperty struct {
	// `CfnVirtualGateway.VirtualGatewayFileAccessLogProperty.Path`.
	Path *string `json:"path"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayGrpcConnectionPoolProperty

type CfnVirtualGateway_VirtualGatewayGrpcConnectionPoolProperty struct {
	// `CfnVirtualGateway.VirtualGatewayGrpcConnectionPoolProperty.MaxRequests`.
	MaxRequests *float64 `json:"maxRequests"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayHealthCheckPolicyProperty

type CfnVirtualGateway_VirtualGatewayHealthCheckPolicyProperty struct {
	// `CfnVirtualGateway.VirtualGatewayHealthCheckPolicyProperty.HealthyThreshold`.
	HealthyThreshold *float64 `json:"healthyThreshold"`
	// `CfnVirtualGateway.VirtualGatewayHealthCheckPolicyProperty.IntervalMillis`.
	IntervalMillis *float64 `json:"intervalMillis"`
	// `CfnVirtualGateway.VirtualGatewayHealthCheckPolicyProperty.Path`.
	Path *string `json:"path"`
	// `CfnVirtualGateway.VirtualGatewayHealthCheckPolicyProperty.Port`.
	Port *float64 `json:"port"`
	// `CfnVirtualGateway.VirtualGatewayHealthCheckPolicyProperty.Protocol`.
	Protocol *string `json:"protocol"`
	// `CfnVirtualGateway.VirtualGatewayHealthCheckPolicyProperty.TimeoutMillis`.
	TimeoutMillis *float64 `json:"timeoutMillis"`
	// `CfnVirtualGateway.VirtualGatewayHealthCheckPolicyProperty.UnhealthyThreshold`.
	UnhealthyThreshold *float64 `json:"unhealthyThreshold"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayHttp2ConnectionPoolProperty

type CfnVirtualGateway_VirtualGatewayHttp2ConnectionPoolProperty struct {
	// `CfnVirtualGateway.VirtualGatewayHttp2ConnectionPoolProperty.MaxRequests`.
	MaxRequests *float64 `json:"maxRequests"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayHttpConnectionPoolProperty

type CfnVirtualGateway_VirtualGatewayHttpConnectionPoolProperty struct {
	// `CfnVirtualGateway.VirtualGatewayHttpConnectionPoolProperty.MaxConnections`.
	MaxConnections *float64 `json:"maxConnections"`
	// `CfnVirtualGateway.VirtualGatewayHttpConnectionPoolProperty.MaxPendingRequests`.
	MaxPendingRequests *float64 `json:"maxPendingRequests"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayListenerProperty

type CfnVirtualGateway_VirtualGatewayListenerProperty struct {
	// `CfnVirtualGateway.VirtualGatewayListenerProperty.ConnectionPool`.
	ConnectionPool interface{} `json:"connectionPool"`
	// `CfnVirtualGateway.VirtualGatewayListenerProperty.HealthCheck`.
	HealthCheck interface{} `json:"healthCheck"`
	// `CfnVirtualGateway.VirtualGatewayListenerProperty.PortMapping`.
	PortMapping interface{} `json:"portMapping"`
	// `CfnVirtualGateway.VirtualGatewayListenerProperty.TLS`.
	Tls interface{} `json:"tls"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayListenerTlsAcmCertificateProperty

type CfnVirtualGateway_VirtualGatewayListenerTlsAcmCertificateProperty struct {
	// `CfnVirtualGateway.VirtualGatewayListenerTlsAcmCertificateProperty.CertificateArn`.
	CertificateArn *string `json:"certificateArn"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayListenerTlsCertificateProperty

type CfnVirtualGateway_VirtualGatewayListenerTlsCertificateProperty struct {
	// `CfnVirtualGateway.VirtualGatewayListenerTlsCertificateProperty.ACM`.
	Acm interface{} `json:"acm"`
	// `CfnVirtualGateway.VirtualGatewayListenerTlsCertificateProperty.File`.
	File interface{} `json:"file"`
	// `CfnVirtualGateway.VirtualGatewayListenerTlsCertificateProperty.SDS`.
	Sds interface{} `json:"sds"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayListenerTlsFileCertificateProperty

type CfnVirtualGateway_VirtualGatewayListenerTlsFileCertificateProperty struct {
	// `CfnVirtualGateway.VirtualGatewayListenerTlsFileCertificateProperty.CertificateChain`.
	CertificateChain *string `json:"certificateChain"`
	// `CfnVirtualGateway.VirtualGatewayListenerTlsFileCertificateProperty.PrivateKey`.
	PrivateKey *string `json:"privateKey"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayListenerTlsProperty

type CfnVirtualGateway_VirtualGatewayListenerTlsProperty struct {
	// `CfnVirtualGateway.VirtualGatewayListenerTlsProperty.Certificate`.
	Certificate interface{} `json:"certificate"`
	// `CfnVirtualGateway.VirtualGatewayListenerTlsProperty.Mode`.
	Mode *string `json:"mode"`
	// `CfnVirtualGateway.VirtualGatewayListenerTlsProperty.Validation`.
	Validation interface{} `json:"validation"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayListenerTlsSdsCertificateProperty

type CfnVirtualGateway_VirtualGatewayListenerTlsSdsCertificateProperty struct {
	// `CfnVirtualGateway.VirtualGatewayListenerTlsSdsCertificateProperty.SecretName`.
	SecretName *string `json:"secretName"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayListenerTlsValidationContextProperty

type CfnVirtualGateway_VirtualGatewayListenerTlsValidationContextProperty struct {
	// `CfnVirtualGateway.VirtualGatewayListenerTlsValidationContextProperty.SubjectAlternativeNames`.
	SubjectAlternativeNames interface{} `json:"subjectAlternativeNames"`
	// `CfnVirtualGateway.VirtualGatewayListenerTlsValidationContextProperty.Trust`.
	Trust interface{} `json:"trust"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayListenerTlsValidationContextTrustProperty

type CfnVirtualGateway_VirtualGatewayListenerTlsValidationContextTrustProperty struct {
	// `CfnVirtualGateway.VirtualGatewayListenerTlsValidationContextTrustProperty.File`.
	File interface{} `json:"file"`
	// `CfnVirtualGateway.VirtualGatewayListenerTlsValidationContextTrustProperty.SDS`.
	Sds interface{} `json:"sds"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayLoggingProperty

type CfnVirtualGateway_VirtualGatewayLoggingProperty struct {
	// `CfnVirtualGateway.VirtualGatewayLoggingProperty.AccessLog`.
	AccessLog interface{} `json:"accessLog"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayPortMappingProperty

type CfnVirtualGateway_VirtualGatewayPortMappingProperty struct {
	// `CfnVirtualGateway.VirtualGatewayPortMappingProperty.Port`.
	Port *float64 `json:"port"`
	// `CfnVirtualGateway.VirtualGatewayPortMappingProperty.Protocol`.
	Protocol *string `json:"protocol"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewaySpecProperty

type CfnVirtualGateway_VirtualGatewaySpecProperty struct {
	// `CfnVirtualGateway.VirtualGatewaySpecProperty.BackendDefaults`.
	BackendDefaults interface{} `json:"backendDefaults"`
	// `CfnVirtualGateway.VirtualGatewaySpecProperty.Listeners`.
	Listeners interface{} `json:"listeners"`
	// `CfnVirtualGateway.VirtualGatewaySpecProperty.Logging`.
	Logging interface{} `json:"logging"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayTlsValidationContextAcmTrustProperty

type CfnVirtualGateway_VirtualGatewayTlsValidationContextAcmTrustProperty struct {
	// `CfnVirtualGateway.VirtualGatewayTlsValidationContextAcmTrustProperty.CertificateAuthorityArns`.
	CertificateAuthorityArns *[]*string `json:"certificateAuthorityArns"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayTlsValidationContextFileTrustProperty

type CfnVirtualGateway_VirtualGatewayTlsValidationContextFileTrustProperty struct {
	// `CfnVirtualGateway.VirtualGatewayTlsValidationContextFileTrustProperty.CertificateChain`.
	CertificateChain *string `json:"certificateChain"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayTlsValidationContextProperty

type CfnVirtualGateway_VirtualGatewayTlsValidationContextProperty struct {
	// `CfnVirtualGateway.VirtualGatewayTlsValidationContextProperty.SubjectAlternativeNames`.
	SubjectAlternativeNames interface{} `json:"subjectAlternativeNames"`
	// `CfnVirtualGateway.VirtualGatewayTlsValidationContextProperty.Trust`.
	Trust interface{} `json:"trust"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayTlsValidationContextSdsTrustProperty

type CfnVirtualGateway_VirtualGatewayTlsValidationContextSdsTrustProperty struct {
	// `CfnVirtualGateway.VirtualGatewayTlsValidationContextSdsTrustProperty.SecretName`.
	SecretName *string `json:"secretName"`
}

TODO: EXAMPLE

type CfnVirtualGateway_VirtualGatewayTlsValidationContextTrustProperty

type CfnVirtualGateway_VirtualGatewayTlsValidationContextTrustProperty struct {
	// `CfnVirtualGateway.VirtualGatewayTlsValidationContextTrustProperty.ACM`.
	Acm interface{} `json:"acm"`
	// `CfnVirtualGateway.VirtualGatewayTlsValidationContextTrustProperty.File`.
	File interface{} `json:"file"`
	// `CfnVirtualGateway.VirtualGatewayTlsValidationContextTrustProperty.SDS`.
	Sds interface{} `json:"sds"`
}

TODO: EXAMPLE

type CfnVirtualNode

type CfnVirtualNode interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttrMeshName() *string
	AttrMeshOwner() *string
	AttrResourceOwner() *string
	AttrUid() *string
	AttrVirtualNodeName() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	MeshName() *string
	SetMeshName(val *string)
	MeshOwner() *string
	SetMeshOwner(val *string)
	Node() constructs.Node
	Ref() *string
	Spec() interface{}
	SetSpec(val interface{})
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	VirtualNodeName() *string
	SetVirtualNodeName(val *string)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::AppMesh::VirtualNode`.

TODO: EXAMPLE

func NewCfnVirtualNode

func NewCfnVirtualNode(scope constructs.Construct, id *string, props *CfnVirtualNodeProps) CfnVirtualNode

Create a new `AWS::AppMesh::VirtualNode`.

type CfnVirtualNodeProps

type CfnVirtualNodeProps struct {
	// `AWS::AppMesh::VirtualNode.MeshName`.
	MeshName *string `json:"meshName"`
	// `AWS::AppMesh::VirtualNode.MeshOwner`.
	MeshOwner *string `json:"meshOwner"`
	// `AWS::AppMesh::VirtualNode.Spec`.
	Spec interface{} `json:"spec"`
	// `AWS::AppMesh::VirtualNode.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::AppMesh::VirtualNode.VirtualNodeName`.
	VirtualNodeName *string `json:"virtualNodeName"`
}

Properties for defining a `AWS::AppMesh::VirtualNode`.

TODO: EXAMPLE

type CfnVirtualNode_AccessLogProperty

type CfnVirtualNode_AccessLogProperty struct {
	// `CfnVirtualNode.AccessLogProperty.File`.
	File interface{} `json:"file"`
}

TODO: EXAMPLE

type CfnVirtualNode_AwsCloudMapInstanceAttributeProperty

type CfnVirtualNode_AwsCloudMapInstanceAttributeProperty struct {
	// `CfnVirtualNode.AwsCloudMapInstanceAttributeProperty.Key`.
	Key *string `json:"key"`
	// `CfnVirtualNode.AwsCloudMapInstanceAttributeProperty.Value`.
	Value *string `json:"value"`
}

TODO: EXAMPLE

type CfnVirtualNode_AwsCloudMapServiceDiscoveryProperty

type CfnVirtualNode_AwsCloudMapServiceDiscoveryProperty struct {
	// `CfnVirtualNode.AwsCloudMapServiceDiscoveryProperty.Attributes`.
	Attributes interface{} `json:"attributes"`
	// `CfnVirtualNode.AwsCloudMapServiceDiscoveryProperty.NamespaceName`.
	NamespaceName *string `json:"namespaceName"`
	// `CfnVirtualNode.AwsCloudMapServiceDiscoveryProperty.ServiceName`.
	ServiceName *string `json:"serviceName"`
}

TODO: EXAMPLE

type CfnVirtualNode_BackendDefaultsProperty

type CfnVirtualNode_BackendDefaultsProperty struct {
	// `CfnVirtualNode.BackendDefaultsProperty.ClientPolicy`.
	ClientPolicy interface{} `json:"clientPolicy"`
}

TODO: EXAMPLE

type CfnVirtualNode_BackendProperty

type CfnVirtualNode_BackendProperty struct {
	// `CfnVirtualNode.BackendProperty.VirtualService`.
	VirtualService interface{} `json:"virtualService"`
}

TODO: EXAMPLE

type CfnVirtualNode_ClientPolicyProperty

type CfnVirtualNode_ClientPolicyProperty struct {
	// `CfnVirtualNode.ClientPolicyProperty.TLS`.
	Tls interface{} `json:"tls"`
}

TODO: EXAMPLE

type CfnVirtualNode_ClientPolicyTlsProperty

type CfnVirtualNode_ClientPolicyTlsProperty struct {
	// `CfnVirtualNode.ClientPolicyTlsProperty.Certificate`.
	Certificate interface{} `json:"certificate"`
	// `CfnVirtualNode.ClientPolicyTlsProperty.Enforce`.
	Enforce interface{} `json:"enforce"`
	// `CfnVirtualNode.ClientPolicyTlsProperty.Ports`.
	Ports interface{} `json:"ports"`
	// `CfnVirtualNode.ClientPolicyTlsProperty.Validation`.
	Validation interface{} `json:"validation"`
}

TODO: EXAMPLE

type CfnVirtualNode_ClientTlsCertificateProperty

type CfnVirtualNode_ClientTlsCertificateProperty struct {
	// `CfnVirtualNode.ClientTlsCertificateProperty.File`.
	File interface{} `json:"file"`
	// `CfnVirtualNode.ClientTlsCertificateProperty.SDS`.
	Sds interface{} `json:"sds"`
}

TODO: EXAMPLE

type CfnVirtualNode_DnsServiceDiscoveryProperty

type CfnVirtualNode_DnsServiceDiscoveryProperty struct {
	// `CfnVirtualNode.DnsServiceDiscoveryProperty.Hostname`.
	Hostname *string `json:"hostname"`
	// `CfnVirtualNode.DnsServiceDiscoveryProperty.ResponseType`.
	ResponseType *string `json:"responseType"`
}

TODO: EXAMPLE

type CfnVirtualNode_DurationProperty

type CfnVirtualNode_DurationProperty struct {
	// `CfnVirtualNode.DurationProperty.Unit`.
	Unit *string `json:"unit"`
	// `CfnVirtualNode.DurationProperty.Value`.
	Value *float64 `json:"value"`
}

TODO: EXAMPLE

type CfnVirtualNode_FileAccessLogProperty

type CfnVirtualNode_FileAccessLogProperty struct {
	// `CfnVirtualNode.FileAccessLogProperty.Path`.
	Path *string `json:"path"`
}

TODO: EXAMPLE

type CfnVirtualNode_GrpcTimeoutProperty

type CfnVirtualNode_GrpcTimeoutProperty struct {
	// `CfnVirtualNode.GrpcTimeoutProperty.Idle`.
	Idle interface{} `json:"idle"`
	// `CfnVirtualNode.GrpcTimeoutProperty.PerRequest`.
	PerRequest interface{} `json:"perRequest"`
}

TODO: EXAMPLE

type CfnVirtualNode_HealthCheckProperty

type CfnVirtualNode_HealthCheckProperty struct {
	// `CfnVirtualNode.HealthCheckProperty.HealthyThreshold`.
	HealthyThreshold *float64 `json:"healthyThreshold"`
	// `CfnVirtualNode.HealthCheckProperty.IntervalMillis`.
	IntervalMillis *float64 `json:"intervalMillis"`
	// `CfnVirtualNode.HealthCheckProperty.Path`.
	Path *string `json:"path"`
	// `CfnVirtualNode.HealthCheckProperty.Port`.
	Port *float64 `json:"port"`
	// `CfnVirtualNode.HealthCheckProperty.Protocol`.
	Protocol *string `json:"protocol"`
	// `CfnVirtualNode.HealthCheckProperty.TimeoutMillis`.
	TimeoutMillis *float64 `json:"timeoutMillis"`
	// `CfnVirtualNode.HealthCheckProperty.UnhealthyThreshold`.
	UnhealthyThreshold *float64 `json:"unhealthyThreshold"`
}

TODO: EXAMPLE

type CfnVirtualNode_HttpTimeoutProperty

type CfnVirtualNode_HttpTimeoutProperty struct {
	// `CfnVirtualNode.HttpTimeoutProperty.Idle`.
	Idle interface{} `json:"idle"`
	// `CfnVirtualNode.HttpTimeoutProperty.PerRequest`.
	PerRequest interface{} `json:"perRequest"`
}

TODO: EXAMPLE

type CfnVirtualNode_ListenerProperty

type CfnVirtualNode_ListenerProperty struct {
	// `CfnVirtualNode.ListenerProperty.ConnectionPool`.
	ConnectionPool interface{} `json:"connectionPool"`
	// `CfnVirtualNode.ListenerProperty.HealthCheck`.
	HealthCheck interface{} `json:"healthCheck"`
	// `CfnVirtualNode.ListenerProperty.OutlierDetection`.
	OutlierDetection interface{} `json:"outlierDetection"`
	// `CfnVirtualNode.ListenerProperty.PortMapping`.
	PortMapping interface{} `json:"portMapping"`
	// `CfnVirtualNode.ListenerProperty.Timeout`.
	Timeout interface{} `json:"timeout"`
	// `CfnVirtualNode.ListenerProperty.TLS`.
	Tls interface{} `json:"tls"`
}

TODO: EXAMPLE

type CfnVirtualNode_ListenerTimeoutProperty

type CfnVirtualNode_ListenerTimeoutProperty struct {
	// `CfnVirtualNode.ListenerTimeoutProperty.GRPC`.
	Grpc interface{} `json:"grpc"`
	// `CfnVirtualNode.ListenerTimeoutProperty.HTTP`.
	Http interface{} `json:"http"`
	// `CfnVirtualNode.ListenerTimeoutProperty.HTTP2`.
	Http2 interface{} `json:"http2"`
	// `CfnVirtualNode.ListenerTimeoutProperty.TCP`.
	Tcp interface{} `json:"tcp"`
}

TODO: EXAMPLE

type CfnVirtualNode_ListenerTlsAcmCertificateProperty

type CfnVirtualNode_ListenerTlsAcmCertificateProperty struct {
	// `CfnVirtualNode.ListenerTlsAcmCertificateProperty.CertificateArn`.
	CertificateArn *string `json:"certificateArn"`
}

TODO: EXAMPLE

type CfnVirtualNode_ListenerTlsCertificateProperty

type CfnVirtualNode_ListenerTlsCertificateProperty struct {
	// `CfnVirtualNode.ListenerTlsCertificateProperty.ACM`.
	Acm interface{} `json:"acm"`
	// `CfnVirtualNode.ListenerTlsCertificateProperty.File`.
	File interface{} `json:"file"`
	// `CfnVirtualNode.ListenerTlsCertificateProperty.SDS`.
	Sds interface{} `json:"sds"`
}

TODO: EXAMPLE

type CfnVirtualNode_ListenerTlsFileCertificateProperty

type CfnVirtualNode_ListenerTlsFileCertificateProperty struct {
	// `CfnVirtualNode.ListenerTlsFileCertificateProperty.CertificateChain`.
	CertificateChain *string `json:"certificateChain"`
	// `CfnVirtualNode.ListenerTlsFileCertificateProperty.PrivateKey`.
	PrivateKey *string `json:"privateKey"`
}

TODO: EXAMPLE

type CfnVirtualNode_ListenerTlsProperty

type CfnVirtualNode_ListenerTlsProperty struct {
	// `CfnVirtualNode.ListenerTlsProperty.Certificate`.
	Certificate interface{} `json:"certificate"`
	// `CfnVirtualNode.ListenerTlsProperty.Mode`.
	Mode *string `json:"mode"`
	// `CfnVirtualNode.ListenerTlsProperty.Validation`.
	Validation interface{} `json:"validation"`
}

TODO: EXAMPLE

type CfnVirtualNode_ListenerTlsSdsCertificateProperty

type CfnVirtualNode_ListenerTlsSdsCertificateProperty struct {
	// `CfnVirtualNode.ListenerTlsSdsCertificateProperty.SecretName`.
	SecretName *string `json:"secretName"`
}

TODO: EXAMPLE

type CfnVirtualNode_ListenerTlsValidationContextProperty

type CfnVirtualNode_ListenerTlsValidationContextProperty struct {
	// `CfnVirtualNode.ListenerTlsValidationContextProperty.SubjectAlternativeNames`.
	SubjectAlternativeNames interface{} `json:"subjectAlternativeNames"`
	// `CfnVirtualNode.ListenerTlsValidationContextProperty.Trust`.
	Trust interface{} `json:"trust"`
}

TODO: EXAMPLE

type CfnVirtualNode_ListenerTlsValidationContextTrustProperty

type CfnVirtualNode_ListenerTlsValidationContextTrustProperty struct {
	// `CfnVirtualNode.ListenerTlsValidationContextTrustProperty.File`.
	File interface{} `json:"file"`
	// `CfnVirtualNode.ListenerTlsValidationContextTrustProperty.SDS`.
	Sds interface{} `json:"sds"`
}

TODO: EXAMPLE

type CfnVirtualNode_LoggingProperty

type CfnVirtualNode_LoggingProperty struct {
	// `CfnVirtualNode.LoggingProperty.AccessLog`.
	AccessLog interface{} `json:"accessLog"`
}

TODO: EXAMPLE

type CfnVirtualNode_OutlierDetectionProperty

type CfnVirtualNode_OutlierDetectionProperty struct {
	// `CfnVirtualNode.OutlierDetectionProperty.BaseEjectionDuration`.
	BaseEjectionDuration interface{} `json:"baseEjectionDuration"`
	// `CfnVirtualNode.OutlierDetectionProperty.Interval`.
	Interval interface{} `json:"interval"`
	// `CfnVirtualNode.OutlierDetectionProperty.MaxEjectionPercent`.
	MaxEjectionPercent *float64 `json:"maxEjectionPercent"`
	// `CfnVirtualNode.OutlierDetectionProperty.MaxServerErrors`.
	MaxServerErrors *float64 `json:"maxServerErrors"`
}

TODO: EXAMPLE

type CfnVirtualNode_PortMappingProperty

type CfnVirtualNode_PortMappingProperty struct {
	// `CfnVirtualNode.PortMappingProperty.Port`.
	Port *float64 `json:"port"`
	// `CfnVirtualNode.PortMappingProperty.Protocol`.
	Protocol *string `json:"protocol"`
}

TODO: EXAMPLE

type CfnVirtualNode_ServiceDiscoveryProperty

type CfnVirtualNode_ServiceDiscoveryProperty struct {
	// `CfnVirtualNode.ServiceDiscoveryProperty.AWSCloudMap`.
	AwsCloudMap interface{} `json:"awsCloudMap"`
	// `CfnVirtualNode.ServiceDiscoveryProperty.DNS`.
	Dns interface{} `json:"dns"`
}

TODO: EXAMPLE

type CfnVirtualNode_SubjectAlternativeNameMatchersProperty

type CfnVirtualNode_SubjectAlternativeNameMatchersProperty struct {
	// `CfnVirtualNode.SubjectAlternativeNameMatchersProperty.Exact`.
	Exact *[]*string `json:"exact"`
}

TODO: EXAMPLE

type CfnVirtualNode_SubjectAlternativeNamesProperty

type CfnVirtualNode_SubjectAlternativeNamesProperty struct {
	// `CfnVirtualNode.SubjectAlternativeNamesProperty.Match`.
	Match interface{} `json:"match"`
}

TODO: EXAMPLE

type CfnVirtualNode_TcpTimeoutProperty

type CfnVirtualNode_TcpTimeoutProperty struct {
	// `CfnVirtualNode.TcpTimeoutProperty.Idle`.
	Idle interface{} `json:"idle"`
}

TODO: EXAMPLE

type CfnVirtualNode_TlsValidationContextAcmTrustProperty

type CfnVirtualNode_TlsValidationContextAcmTrustProperty struct {
	// `CfnVirtualNode.TlsValidationContextAcmTrustProperty.CertificateAuthorityArns`.
	CertificateAuthorityArns *[]*string `json:"certificateAuthorityArns"`
}

TODO: EXAMPLE

type CfnVirtualNode_TlsValidationContextFileTrustProperty

type CfnVirtualNode_TlsValidationContextFileTrustProperty struct {
	// `CfnVirtualNode.TlsValidationContextFileTrustProperty.CertificateChain`.
	CertificateChain *string `json:"certificateChain"`
}

TODO: EXAMPLE

type CfnVirtualNode_TlsValidationContextProperty

type CfnVirtualNode_TlsValidationContextProperty struct {
	// `CfnVirtualNode.TlsValidationContextProperty.SubjectAlternativeNames`.
	SubjectAlternativeNames interface{} `json:"subjectAlternativeNames"`
	// `CfnVirtualNode.TlsValidationContextProperty.Trust`.
	Trust interface{} `json:"trust"`
}

TODO: EXAMPLE

type CfnVirtualNode_TlsValidationContextSdsTrustProperty

type CfnVirtualNode_TlsValidationContextSdsTrustProperty struct {
	// `CfnVirtualNode.TlsValidationContextSdsTrustProperty.SecretName`.
	SecretName *string `json:"secretName"`
}

TODO: EXAMPLE

type CfnVirtualNode_TlsValidationContextTrustProperty

type CfnVirtualNode_TlsValidationContextTrustProperty struct {
	// `CfnVirtualNode.TlsValidationContextTrustProperty.ACM`.
	Acm interface{} `json:"acm"`
	// `CfnVirtualNode.TlsValidationContextTrustProperty.File`.
	File interface{} `json:"file"`
	// `CfnVirtualNode.TlsValidationContextTrustProperty.SDS`.
	Sds interface{} `json:"sds"`
}

TODO: EXAMPLE

type CfnVirtualNode_VirtualNodeConnectionPoolProperty

type CfnVirtualNode_VirtualNodeConnectionPoolProperty struct {
	// `CfnVirtualNode.VirtualNodeConnectionPoolProperty.GRPC`.
	Grpc interface{} `json:"grpc"`
	// `CfnVirtualNode.VirtualNodeConnectionPoolProperty.HTTP`.
	Http interface{} `json:"http"`
	// `CfnVirtualNode.VirtualNodeConnectionPoolProperty.HTTP2`.
	Http2 interface{} `json:"http2"`
	// `CfnVirtualNode.VirtualNodeConnectionPoolProperty.TCP`.
	Tcp interface{} `json:"tcp"`
}

TODO: EXAMPLE

type CfnVirtualNode_VirtualNodeGrpcConnectionPoolProperty

type CfnVirtualNode_VirtualNodeGrpcConnectionPoolProperty struct {
	// `CfnVirtualNode.VirtualNodeGrpcConnectionPoolProperty.MaxRequests`.
	MaxRequests *float64 `json:"maxRequests"`
}

TODO: EXAMPLE

type CfnVirtualNode_VirtualNodeHttp2ConnectionPoolProperty

type CfnVirtualNode_VirtualNodeHttp2ConnectionPoolProperty struct {
	// `CfnVirtualNode.VirtualNodeHttp2ConnectionPoolProperty.MaxRequests`.
	MaxRequests *float64 `json:"maxRequests"`
}

TODO: EXAMPLE

type CfnVirtualNode_VirtualNodeHttpConnectionPoolProperty

type CfnVirtualNode_VirtualNodeHttpConnectionPoolProperty struct {
	// `CfnVirtualNode.VirtualNodeHttpConnectionPoolProperty.MaxConnections`.
	MaxConnections *float64 `json:"maxConnections"`
	// `CfnVirtualNode.VirtualNodeHttpConnectionPoolProperty.MaxPendingRequests`.
	MaxPendingRequests *float64 `json:"maxPendingRequests"`
}

TODO: EXAMPLE

type CfnVirtualNode_VirtualNodeSpecProperty

type CfnVirtualNode_VirtualNodeSpecProperty struct {
	// `CfnVirtualNode.VirtualNodeSpecProperty.BackendDefaults`.
	BackendDefaults interface{} `json:"backendDefaults"`
	// `CfnVirtualNode.VirtualNodeSpecProperty.Backends`.
	Backends interface{} `json:"backends"`
	// `CfnVirtualNode.VirtualNodeSpecProperty.Listeners`.
	Listeners interface{} `json:"listeners"`
	// `CfnVirtualNode.VirtualNodeSpecProperty.Logging`.
	Logging interface{} `json:"logging"`
	// `CfnVirtualNode.VirtualNodeSpecProperty.ServiceDiscovery`.
	ServiceDiscovery interface{} `json:"serviceDiscovery"`
}

TODO: EXAMPLE

type CfnVirtualNode_VirtualNodeTcpConnectionPoolProperty

type CfnVirtualNode_VirtualNodeTcpConnectionPoolProperty struct {
	// `CfnVirtualNode.VirtualNodeTcpConnectionPoolProperty.MaxConnections`.
	MaxConnections *float64 `json:"maxConnections"`
}

TODO: EXAMPLE

type CfnVirtualNode_VirtualServiceBackendProperty

type CfnVirtualNode_VirtualServiceBackendProperty struct {
	// `CfnVirtualNode.VirtualServiceBackendProperty.ClientPolicy`.
	ClientPolicy interface{} `json:"clientPolicy"`
	// `CfnVirtualNode.VirtualServiceBackendProperty.VirtualServiceName`.
	VirtualServiceName *string `json:"virtualServiceName"`
}

TODO: EXAMPLE

type CfnVirtualRouter

type CfnVirtualRouter interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttrMeshName() *string
	AttrMeshOwner() *string
	AttrResourceOwner() *string
	AttrUid() *string
	AttrVirtualRouterName() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	MeshName() *string
	SetMeshName(val *string)
	MeshOwner() *string
	SetMeshOwner(val *string)
	Node() constructs.Node
	Ref() *string
	Spec() interface{}
	SetSpec(val interface{})
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	VirtualRouterName() *string
	SetVirtualRouterName(val *string)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::AppMesh::VirtualRouter`.

TODO: EXAMPLE

func NewCfnVirtualRouter

func NewCfnVirtualRouter(scope constructs.Construct, id *string, props *CfnVirtualRouterProps) CfnVirtualRouter

Create a new `AWS::AppMesh::VirtualRouter`.

type CfnVirtualRouterProps

type CfnVirtualRouterProps struct {
	// `AWS::AppMesh::VirtualRouter.MeshName`.
	MeshName *string `json:"meshName"`
	// `AWS::AppMesh::VirtualRouter.MeshOwner`.
	MeshOwner *string `json:"meshOwner"`
	// `AWS::AppMesh::VirtualRouter.Spec`.
	Spec interface{} `json:"spec"`
	// `AWS::AppMesh::VirtualRouter.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::AppMesh::VirtualRouter.VirtualRouterName`.
	VirtualRouterName *string `json:"virtualRouterName"`
}

Properties for defining a `AWS::AppMesh::VirtualRouter`.

TODO: EXAMPLE

type CfnVirtualRouter_PortMappingProperty

type CfnVirtualRouter_PortMappingProperty struct {
	// `CfnVirtualRouter.PortMappingProperty.Port`.
	Port *float64 `json:"port"`
	// `CfnVirtualRouter.PortMappingProperty.Protocol`.
	Protocol *string `json:"protocol"`
}

TODO: EXAMPLE

type CfnVirtualRouter_VirtualRouterListenerProperty

type CfnVirtualRouter_VirtualRouterListenerProperty struct {
	// `CfnVirtualRouter.VirtualRouterListenerProperty.PortMapping`.
	PortMapping interface{} `json:"portMapping"`
}

TODO: EXAMPLE

type CfnVirtualRouter_VirtualRouterSpecProperty

type CfnVirtualRouter_VirtualRouterSpecProperty struct {
	// `CfnVirtualRouter.VirtualRouterSpecProperty.Listeners`.
	Listeners interface{} `json:"listeners"`
}

TODO: EXAMPLE

type CfnVirtualService

type CfnVirtualService interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttrMeshName() *string
	AttrMeshOwner() *string
	AttrResourceOwner() *string
	AttrUid() *string
	AttrVirtualServiceName() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	MeshName() *string
	SetMeshName(val *string)
	MeshOwner() *string
	SetMeshOwner(val *string)
	Node() constructs.Node
	Ref() *string
	Spec() interface{}
	SetSpec(val interface{})
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	VirtualServiceName() *string
	SetVirtualServiceName(val *string)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::AppMesh::VirtualService`.

TODO: EXAMPLE

func NewCfnVirtualService

func NewCfnVirtualService(scope constructs.Construct, id *string, props *CfnVirtualServiceProps) CfnVirtualService

Create a new `AWS::AppMesh::VirtualService`.

type CfnVirtualServiceProps

type CfnVirtualServiceProps struct {
	// `AWS::AppMesh::VirtualService.MeshName`.
	MeshName *string `json:"meshName"`
	// `AWS::AppMesh::VirtualService.MeshOwner`.
	MeshOwner *string `json:"meshOwner"`
	// `AWS::AppMesh::VirtualService.Spec`.
	Spec interface{} `json:"spec"`
	// `AWS::AppMesh::VirtualService.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::AppMesh::VirtualService.VirtualServiceName`.
	VirtualServiceName *string `json:"virtualServiceName"`
}

Properties for defining a `AWS::AppMesh::VirtualService`.

TODO: EXAMPLE

type CfnVirtualService_VirtualNodeServiceProviderProperty

type CfnVirtualService_VirtualNodeServiceProviderProperty struct {
	// `CfnVirtualService.VirtualNodeServiceProviderProperty.VirtualNodeName`.
	VirtualNodeName *string `json:"virtualNodeName"`
}

TODO: EXAMPLE

type CfnVirtualService_VirtualRouterServiceProviderProperty

type CfnVirtualService_VirtualRouterServiceProviderProperty struct {
	// `CfnVirtualService.VirtualRouterServiceProviderProperty.VirtualRouterName`.
	VirtualRouterName *string `json:"virtualRouterName"`
}

TODO: EXAMPLE

type CfnVirtualService_VirtualServiceProviderProperty

type CfnVirtualService_VirtualServiceProviderProperty struct {
	// `CfnVirtualService.VirtualServiceProviderProperty.VirtualNode`.
	VirtualNode interface{} `json:"virtualNode"`
	// `CfnVirtualService.VirtualServiceProviderProperty.VirtualRouter`.
	VirtualRouter interface{} `json:"virtualRouter"`
}

TODO: EXAMPLE

type CfnVirtualService_VirtualServiceSpecProperty

type CfnVirtualService_VirtualServiceSpecProperty struct {
	// `CfnVirtualService.VirtualServiceSpecProperty.Provider`.
	Provider interface{} `json:"provider"`
}

TODO: EXAMPLE

type DnsResponseType

type DnsResponseType string

Enum of DNS service discovery response type.

TODO: EXAMPLE

Experimental.

const (
	DnsResponseType_ENDPOINTS     DnsResponseType = "ENDPOINTS"
	DnsResponseType_LOAD_BALANCER DnsResponseType = "LOAD_BALANCER"
)

type GatewayRoute

type GatewayRoute interface {
	awscdk.Resource
	IGatewayRoute
	Env() *awscdk.ResourceEnvironment
	GatewayRouteArn() *string
	GatewayRouteName() *string
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	VirtualGateway() IVirtualGateway
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

GatewayRoute represents a new or existing gateway route attached to a VirtualGateway and Mesh.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/app-mesh/latest/userguide/gateway-routes.html

Experimental.

func NewGatewayRoute

func NewGatewayRoute(scope constructs.Construct, id *string, props *GatewayRouteProps) GatewayRoute

Experimental.

type GatewayRouteAttributes

type GatewayRouteAttributes struct {
	// The name of the GatewayRoute.
	// Experimental.
	GatewayRouteName *string `json:"gatewayRouteName"`
	// The VirtualGateway this GatewayRoute is associated with.
	// Experimental.
	VirtualGateway IVirtualGateway `json:"virtualGateway"`
}

Interface with properties necessary to import a reusable GatewayRoute.

TODO: EXAMPLE

Experimental.

type GatewayRouteBaseProps

type GatewayRouteBaseProps struct {
	// The name of the GatewayRoute.
	// Experimental.
	GatewayRouteName *string `json:"gatewayRouteName"`
	// What protocol the route uses.
	// Experimental.
	RouteSpec GatewayRouteSpec `json:"routeSpec"`
}

Basic configuration properties for a GatewayRoute.

TODO: EXAMPLE

Experimental.

type GatewayRouteHostnameMatch

type GatewayRouteHostnameMatch interface {
	Bind(scope constructs.Construct) *GatewayRouteHostnameMatchConfig
}

Used to generate host name matching methods.

TODO: EXAMPLE

Experimental.

func GatewayRouteHostnameMatch_EndsWith

func GatewayRouteHostnameMatch_EndsWith(suffix *string) GatewayRouteHostnameMatch

The value of the host name with the given name must end with the specified characters. Experimental.

func GatewayRouteHostnameMatch_Exactly

func GatewayRouteHostnameMatch_Exactly(name *string) GatewayRouteHostnameMatch

The value of the host name must match the specified value exactly. Experimental.

type GatewayRouteHostnameMatchConfig

type GatewayRouteHostnameMatchConfig struct {
	// GatewayRoute CFN configuration for host name match.
	// Experimental.
	HostnameMatch *CfnGatewayRoute_GatewayRouteHostnameMatchProperty `json:"hostnameMatch"`
}

Configuration for gateway route host name match.

TODO: EXAMPLE

Experimental.

type GatewayRouteProps

type GatewayRouteProps struct {
	// The name of the GatewayRoute.
	// Experimental.
	GatewayRouteName *string `json:"gatewayRouteName"`
	// What protocol the route uses.
	// Experimental.
	RouteSpec GatewayRouteSpec `json:"routeSpec"`
	// The VirtualGateway this GatewayRoute is associated with.
	// Experimental.
	VirtualGateway IVirtualGateway `json:"virtualGateway"`
}

Properties to define a new GatewayRoute.

TODO: EXAMPLE

Experimental.

type GatewayRouteSpec

type GatewayRouteSpec interface {
	Bind(scope constructs.Construct) *GatewayRouteSpecConfig
}

Used to generate specs with different protocols for a GatewayRoute.

TODO: EXAMPLE

Experimental.

func GatewayRouteSpec_Grpc

func GatewayRouteSpec_Grpc(options *GrpcGatewayRouteSpecOptions) GatewayRouteSpec

Creates an gRPC Based GatewayRoute. Experimental.

func GatewayRouteSpec_Http

func GatewayRouteSpec_Http(options *HttpGatewayRouteSpecOptions) GatewayRouteSpec

Creates an HTTP Based GatewayRoute. Experimental.

func GatewayRouteSpec_Http2

func GatewayRouteSpec_Http2(options *HttpGatewayRouteSpecOptions) GatewayRouteSpec

Creates an HTTP2 Based GatewayRoute. Experimental.

type GatewayRouteSpecConfig

type GatewayRouteSpecConfig struct {
	// The spec for a grpc gateway route.
	// Experimental.
	GrpcSpecConfig *CfnGatewayRoute_GrpcGatewayRouteProperty `json:"grpcSpecConfig"`
	// The spec for an http2 gateway route.
	// Experimental.
	Http2SpecConfig *CfnGatewayRoute_HttpGatewayRouteProperty `json:"http2SpecConfig"`
	// The spec for an http gateway route.
	// Experimental.
	HttpSpecConfig *CfnGatewayRoute_HttpGatewayRouteProperty `json:"httpSpecConfig"`
}

All Properties for GatewayRoute Specs.

TODO: EXAMPLE

Experimental.

type GrpcConnectionPool

type GrpcConnectionPool struct {
	// The maximum requests in the pool.
	// Experimental.
	MaxRequests *float64 `json:"maxRequests"`
}

Connection pool properties for gRPC listeners.

TODO: EXAMPLE

Experimental.

type GrpcGatewayListenerOptions

type GrpcGatewayListenerOptions struct {
	// Connection pool for http listeners.
	// Experimental.
	ConnectionPool *GrpcConnectionPool `json:"connectionPool"`
	// The health check information for the listener.
	// Experimental.
	HealthCheck HealthCheck `json:"healthCheck"`
	// Port to listen for connections on.
	// Experimental.
	Port *float64 `json:"port"`
	// Represents the configuration for enabling TLS on a listener.
	// Experimental.
	Tls *ListenerTlsOptions `json:"tls"`
}

Represents the properties needed to define GRPC Listeners for a VirtualGateway.

TODO: EXAMPLE

Experimental.

type GrpcGatewayRouteMatch

type GrpcGatewayRouteMatch struct {
	// Create host name based gRPC gateway route match.
	// Experimental.
	Hostname GatewayRouteHostnameMatch `json:"hostname"`
	// Create metadata based gRPC gateway route match.
	//
	// All specified metadata must match for the route to match.
	// Experimental.
	Metadata *[]HeaderMatch `json:"metadata"`
	// When `true`, rewrites the original request received at the Virtual Gateway to the destination Virtual Service name.
	//
	// When `false`, retains the original hostname from the request.
	// Experimental.
	RewriteRequestHostname *bool `json:"rewriteRequestHostname"`
	// Create service name based gRPC gateway route match.
	// Experimental.
	ServiceName *string `json:"serviceName"`
}

The criterion for determining a request match for this GatewayRoute.

TODO: EXAMPLE

Experimental.

type GrpcGatewayRouteSpecOptions

type GrpcGatewayRouteSpecOptions struct {
	// The criterion for determining a request match for this GatewayRoute.
	// Experimental.
	Match *GrpcGatewayRouteMatch `json:"match"`
	// The VirtualService this GatewayRoute directs traffic to.
	// Experimental.
	RouteTarget IVirtualService `json:"routeTarget"`
}

Properties specific for a gRPC GatewayRoute.

TODO: EXAMPLE

Experimental.

type GrpcHealthCheckOptions

type GrpcHealthCheckOptions struct {
	// The number of consecutive successful health checks that must occur before declaring listener healthy.
	// Experimental.
	HealthyThreshold *float64 `json:"healthyThreshold"`
	// The time period between each health check execution.
	// Experimental.
	Interval awscdk.Duration `json:"interval"`
	// The amount of time to wait when receiving a response from the health check.
	// Experimental.
	Timeout awscdk.Duration `json:"timeout"`
	// The number of consecutive failed health checks that must occur before declaring a listener unhealthy.
	// Experimental.
	UnhealthyThreshold *float64 `json:"unhealthyThreshold"`
}

Properties used to define GRPC Based healthchecks.

TODO: EXAMPLE

Experimental.

type GrpcRetryEvent

type GrpcRetryEvent string

gRPC events.

TODO: EXAMPLE

Experimental.

const (
	GrpcRetryEvent_CANCELLED          GrpcRetryEvent = "CANCELLED"
	GrpcRetryEvent_DEADLINE_EXCEEDED  GrpcRetryEvent = "DEADLINE_EXCEEDED"
	GrpcRetryEvent_INTERNAL_ERROR     GrpcRetryEvent = "INTERNAL_ERROR"
	GrpcRetryEvent_RESOURCE_EXHAUSTED GrpcRetryEvent = "RESOURCE_EXHAUSTED"
	GrpcRetryEvent_UNAVAILABLE        GrpcRetryEvent = "UNAVAILABLE"
)

type GrpcRetryPolicy

type GrpcRetryPolicy struct {
	// Specify HTTP events on which to retry.
	//
	// You must specify at least one value
	// for at least one types of retry events.
	// Experimental.
	HttpRetryEvents *[]HttpRetryEvent `json:"httpRetryEvents"`
	// The maximum number of retry attempts.
	// Experimental.
	RetryAttempts *float64 `json:"retryAttempts"`
	// The timeout for each retry attempt.
	// Experimental.
	RetryTimeout awscdk.Duration `json:"retryTimeout"`
	// TCP events on which to retry.
	//
	// The event occurs before any processing of a
	// request has started and is encountered when the upstream is temporarily or
	// permanently unavailable. You must specify at least one value for at least
	// one types of retry events.
	// Experimental.
	TcpRetryEvents *[]TcpRetryEvent `json:"tcpRetryEvents"`
	// gRPC events on which to retry.
	//
	// You must specify at least one value
	// for at least one types of retry events.
	// Experimental.
	GrpcRetryEvents *[]GrpcRetryEvent `json:"grpcRetryEvents"`
}

gRPC retry policy.

TODO: EXAMPLE

Experimental.

type GrpcRouteMatch

type GrpcRouteMatch struct {
	// Create metadata based gRPC route match.
	//
	// All specified metadata must match for the route to match.
	// Experimental.
	Metadata *[]HeaderMatch `json:"metadata"`
	// The method name to match from the request.
	//
	// If the method name is specified, service name must be also provided.
	// Experimental.
	MethodName *string `json:"methodName"`
	// Create service name based gRPC route match.
	// Experimental.
	ServiceName *string `json:"serviceName"`
}

The criterion for determining a request match for this Route.

At least one match type must be selected.

TODO: EXAMPLE

Experimental.

type GrpcRouteSpecOptions

type GrpcRouteSpecOptions struct {
	// The priority for the route.
	//
	// Routes are matched based on the specified
	// value, where 0 is the highest priority.
	// Experimental.
	Priority *float64 `json:"priority"`
	// The criterion for determining a request match for this Route.
	// Experimental.
	Match *GrpcRouteMatch `json:"match"`
	// The retry policy.
	// Experimental.
	RetryPolicy *GrpcRetryPolicy `json:"retryPolicy"`
	// An object that represents a grpc timeout.
	// Experimental.
	Timeout *GrpcTimeout `json:"timeout"`
	// List of targets that traffic is routed to when a request matches the route.
	// Experimental.
	WeightedTargets *[]*WeightedTarget `json:"weightedTargets"`
}

Properties specific for a GRPC Based Routes.

TODO: EXAMPLE

Experimental.

type GrpcTimeout

type GrpcTimeout struct {
	// Represents an idle timeout.
	//
	// The amount of time that a connection may be idle.
	// Experimental.
	Idle awscdk.Duration `json:"idle"`
	// Represents per request timeout.
	// Experimental.
	PerRequest awscdk.Duration `json:"perRequest"`
}

Represents timeouts for GRPC protocols.

TODO: EXAMPLE

Experimental.

type GrpcVirtualNodeListenerOptions

type GrpcVirtualNodeListenerOptions struct {
	// Connection pool for http listeners.
	// Experimental.
	ConnectionPool *GrpcConnectionPool `json:"connectionPool"`
	// The health check information for the listener.
	// Experimental.
	HealthCheck HealthCheck `json:"healthCheck"`
	// Represents the configuration for enabling outlier detection.
	// Experimental.
	OutlierDetection *OutlierDetection `json:"outlierDetection"`
	// Port to listen for connections on.
	// Experimental.
	Port *float64 `json:"port"`
	// Timeout for GRPC protocol.
	// Experimental.
	Timeout *GrpcTimeout `json:"timeout"`
	// Represents the configuration for enabling TLS on a listener.
	// Experimental.
	Tls *ListenerTlsOptions `json:"tls"`
}

Represent the GRPC Node Listener prorperty.

TODO: EXAMPLE

Experimental.

type HeaderMatch

type HeaderMatch interface {
	Bind(scope constructs.Construct) *HeaderMatchConfig
}

Used to generate header matching methods.

TODO: EXAMPLE

Experimental.

func HeaderMatch_ValueDoesNotEndWith

func HeaderMatch_ValueDoesNotEndWith(headerName *string, suffix *string) HeaderMatch

The value of the header with the given name in the request must not end with the specified characters. Experimental.

func HeaderMatch_ValueDoesNotMatchRegex

func HeaderMatch_ValueDoesNotMatchRegex(headerName *string, regex *string) HeaderMatch

The value of the header with the given name in the request must not include the specified characters. Experimental.

func HeaderMatch_ValueDoesNotStartWith

func HeaderMatch_ValueDoesNotStartWith(headerName *string, prefix *string) HeaderMatch

The value of the header with the given name in the request must not start with the specified characters. Experimental.

func HeaderMatch_ValueEndsWith

func HeaderMatch_ValueEndsWith(headerName *string, suffix *string) HeaderMatch

The value of the header with the given name in the request must end with the specified characters. Experimental.

func HeaderMatch_ValueIs

func HeaderMatch_ValueIs(headerName *string, headerValue *string) HeaderMatch

The value of the header with the given name in the request must match the specified value exactly. Experimental.

func HeaderMatch_ValueIsNot

func HeaderMatch_ValueIsNot(headerName *string, headerValue *string) HeaderMatch

The value of the header with the given name in the request must not match the specified value exactly. Experimental.

func HeaderMatch_ValueMatchesRegex

func HeaderMatch_ValueMatchesRegex(headerName *string, regex *string) HeaderMatch

The value of the header with the given name in the request must include the specified characters. Experimental.

func HeaderMatch_ValueStartsWith

func HeaderMatch_ValueStartsWith(headerName *string, prefix *string) HeaderMatch

The value of the header with the given name in the request must start with the specified characters. Experimental.

func HeaderMatch_ValuesIsInRange

func HeaderMatch_ValuesIsInRange(headerName *string, start *float64, end *float64) HeaderMatch

The value of the header with the given name in the request must be in a range of values. Experimental.

func HeaderMatch_ValuesIsNotInRange

func HeaderMatch_ValuesIsNotInRange(headerName *string, start *float64, end *float64) HeaderMatch

The value of the header with the given name in the request must not be in a range of values. Experimental.

type HeaderMatchConfig

type HeaderMatchConfig struct {
	// Route CFN configuration for the route header match.
	// Experimental.
	HeaderMatch *CfnRoute_HttpRouteHeaderProperty `json:"headerMatch"`
}

Configuration for `HeaderMatch`.

TODO: EXAMPLE

Experimental.

type HealthCheck

type HealthCheck interface {
	Bind(scope constructs.Construct, options *HealthCheckBindOptions) *HealthCheckConfig
}

Contains static factory methods for creating health checks for different protocols.

TODO: EXAMPLE

Experimental.

func HealthCheck_Grpc

func HealthCheck_Grpc(options *GrpcHealthCheckOptions) HealthCheck

Construct a GRPC health check. Experimental.

func HealthCheck_Http

func HealthCheck_Http(options *HttpHealthCheckOptions) HealthCheck

Construct a HTTP health check. Experimental.

func HealthCheck_Http2

func HealthCheck_Http2(options *HttpHealthCheckOptions) HealthCheck

Construct a HTTP2 health check. Experimental.

func HealthCheck_Tcp

func HealthCheck_Tcp(options *TcpHealthCheckOptions) HealthCheck

Construct a TCP health check. Experimental.

type HealthCheckBindOptions

type HealthCheckBindOptions struct {
	// Port for Health Check interface.
	// Experimental.
	DefaultPort *float64 `json:"defaultPort"`
}

Options used for creating the Health Check object.

TODO: EXAMPLE

Experimental.

type HealthCheckConfig

type HealthCheckConfig struct {
	// VirtualGateway CFN configuration for Health Checks.
	// Experimental.
	VirtualGatewayHealthCheck *CfnVirtualGateway_VirtualGatewayHealthCheckPolicyProperty `json:"virtualGatewayHealthCheck"`
	// VirtualNode CFN configuration for Health Checks.
	// Experimental.
	VirtualNodeHealthCheck *CfnVirtualNode_HealthCheckProperty `json:"virtualNodeHealthCheck"`
}

All Properties for Health Checks for mesh endpoints.

TODO: EXAMPLE

Experimental.

type Http2ConnectionPool

type Http2ConnectionPool struct {
	// The maximum requests in the pool.
	// Experimental.
	MaxRequests *float64 `json:"maxRequests"`
}

Connection pool properties for HTTP2 listeners.

TODO: EXAMPLE

Experimental.

type Http2GatewayListenerOptions

type Http2GatewayListenerOptions struct {
	// Connection pool for http listeners.
	// Experimental.
	ConnectionPool *Http2ConnectionPool `json:"connectionPool"`
	// The health check information for the listener.
	// Experimental.
	HealthCheck HealthCheck `json:"healthCheck"`
	// Port to listen for connections on.
	// Experimental.
	Port *float64 `json:"port"`
	// Represents the configuration for enabling TLS on a listener.
	// Experimental.
	Tls *ListenerTlsOptions `json:"tls"`
}

Represents the properties needed to define HTTP2 Listeners for a VirtualGateway.

TODO: EXAMPLE

Experimental.

type Http2VirtualNodeListenerOptions

type Http2VirtualNodeListenerOptions struct {
	// Connection pool for http2 listeners.
	// Experimental.
	ConnectionPool *Http2ConnectionPool `json:"connectionPool"`
	// The health check information for the listener.
	// Experimental.
	HealthCheck HealthCheck `json:"healthCheck"`
	// Represents the configuration for enabling outlier detection.
	// Experimental.
	OutlierDetection *OutlierDetection `json:"outlierDetection"`
	// Port to listen for connections on.
	// Experimental.
	Port *float64 `json:"port"`
	// Timeout for HTTP protocol.
	// Experimental.
	Timeout *HttpTimeout `json:"timeout"`
	// Represents the configuration for enabling TLS on a listener.
	// Experimental.
	Tls *ListenerTlsOptions `json:"tls"`
}

Represent the HTTP2 Node Listener prorperty.

TODO: EXAMPLE

Experimental.

type HttpConnectionPool

type HttpConnectionPool struct {
	// The maximum connections in the pool.
	// Experimental.
	MaxConnections *float64 `json:"maxConnections"`
	// The maximum pending requests in the pool.
	// Experimental.
	MaxPendingRequests *float64 `json:"maxPendingRequests"`
}

Connection pool properties for HTTP listeners.

TODO: EXAMPLE

Experimental.

type HttpGatewayListenerOptions

type HttpGatewayListenerOptions struct {
	// Connection pool for http listeners.
	// Experimental.
	ConnectionPool *HttpConnectionPool `json:"connectionPool"`
	// The health check information for the listener.
	// Experimental.
	HealthCheck HealthCheck `json:"healthCheck"`
	// Port to listen for connections on.
	// Experimental.
	Port *float64 `json:"port"`
	// Represents the configuration for enabling TLS on a listener.
	// Experimental.
	Tls *ListenerTlsOptions `json:"tls"`
}

Represents the properties needed to define HTTP Listeners for a VirtualGateway.

TODO: EXAMPLE

Experimental.

type HttpGatewayRouteMatch

type HttpGatewayRouteMatch struct {
	// Specifies the client request headers to match on.
	//
	// All specified headers
	// must match for the gateway route to match.
	// Experimental.
	Headers *[]HeaderMatch `json:"headers"`
	// The gateway route host name to be matched on.
	// Experimental.
	Hostname GatewayRouteHostnameMatch `json:"hostname"`
	// The method to match on.
	// Experimental.
	Method HttpRouteMethod `json:"method"`
	// Specify how to match requests based on the 'path' part of their URL.
	// Experimental.
	Path HttpGatewayRoutePathMatch `json:"path"`
	// The query parameters to match on.
	//
	// All specified query parameters must match for the route to match.
	// Experimental.
	QueryParameters *[]QueryParameterMatch `json:"queryParameters"`
	// When `true`, rewrites the original request received at the Virtual Gateway to the destination Virtual Service name.
	//
	// When `false`, retains the original hostname from the request.
	// Experimental.
	RewriteRequestHostname *bool `json:"rewriteRequestHostname"`
}

The criterion for determining a request match for this GatewayRoute.

TODO: EXAMPLE

Experimental.

type HttpGatewayRoutePathMatch

type HttpGatewayRoutePathMatch interface {
	Bind(scope constructs.Construct) *HttpGatewayRoutePathMatchConfig
}

Defines HTTP gateway route matching based on the URL path of the request.

TODO: EXAMPLE

Experimental.

func HttpGatewayRoutePathMatch_Exactly

func HttpGatewayRoutePathMatch_Exactly(path *string, rewriteTo *string) HttpGatewayRoutePathMatch

The value of the path must match the specified value exactly.

The provided `path` must start with the '/' character. Experimental.

func HttpGatewayRoutePathMatch_Regex

func HttpGatewayRoutePathMatch_Regex(regex *string, rewriteTo *string) HttpGatewayRoutePathMatch

The value of the path must match the specified regex. Experimental.

func HttpGatewayRoutePathMatch_StartsWith

func HttpGatewayRoutePathMatch_StartsWith(prefix *string, rewriteTo *string) HttpGatewayRoutePathMatch

The value of the path must match the specified prefix. Experimental.

type HttpGatewayRoutePathMatchConfig

type HttpGatewayRoutePathMatchConfig struct {
	// Gateway route configuration for matching on the prefix of the URL path of the request.
	// Experimental.
	PrefixPathMatch *string `json:"prefixPathMatch"`
	// Gateway route configuration for rewriting the prefix of the URL path of the request.
	// Experimental.
	PrefixPathRewrite *CfnGatewayRoute_HttpGatewayRoutePrefixRewriteProperty `json:"prefixPathRewrite"`
	// Gateway route configuration for matching on the complete URL path of the request.
	// Experimental.
	WholePathMatch *CfnGatewayRoute_HttpPathMatchProperty `json:"wholePathMatch"`
	// Gateway route configuration for rewriting the complete URL path of the request..
	// Experimental.
	WholePathRewrite *CfnGatewayRoute_HttpGatewayRoutePathRewriteProperty `json:"wholePathRewrite"`
}

The type returned from the `bind()` method in {@link HttpGatewayRoutePathMatch}.

TODO: EXAMPLE

Experimental.

type HttpGatewayRouteSpecOptions

type HttpGatewayRouteSpecOptions struct {
	// The criterion for determining a request match for this GatewayRoute.
	//
	// When path match is defined, this may optionally determine the path rewrite configuration.
	// Experimental.
	Match *HttpGatewayRouteMatch `json:"match"`
	// The VirtualService this GatewayRoute directs traffic to.
	// Experimental.
	RouteTarget IVirtualService `json:"routeTarget"`
}

Properties specific for HTTP Based GatewayRoutes.

TODO: EXAMPLE

Experimental.

type HttpHealthCheckOptions

type HttpHealthCheckOptions struct {
	// The number of consecutive successful health checks that must occur before declaring listener healthy.
	// Experimental.
	HealthyThreshold *float64 `json:"healthyThreshold"`
	// The time period between each health check execution.
	// Experimental.
	Interval awscdk.Duration `json:"interval"`
	// The destination path for the health check request.
	// Experimental.
	Path *string `json:"path"`
	// The amount of time to wait when receiving a response from the health check.
	// Experimental.
	Timeout awscdk.Duration `json:"timeout"`
	// The number of consecutive failed health checks that must occur before declaring a listener unhealthy.
	// Experimental.
	UnhealthyThreshold *float64 `json:"unhealthyThreshold"`
}

Properties used to define HTTP Based healthchecks.

TODO: EXAMPLE

Experimental.

type HttpRetryEvent

type HttpRetryEvent string

HTTP events on which to retry.

TODO: EXAMPLE

Experimental.

const (
	HttpRetryEvent_CLIENT_ERROR  HttpRetryEvent = "CLIENT_ERROR"
	HttpRetryEvent_GATEWAY_ERROR HttpRetryEvent = "GATEWAY_ERROR"
	HttpRetryEvent_SERVER_ERROR  HttpRetryEvent = "SERVER_ERROR"
	HttpRetryEvent_STREAM_ERROR  HttpRetryEvent = "STREAM_ERROR"
)

type HttpRetryPolicy

type HttpRetryPolicy struct {
	// Specify HTTP events on which to retry.
	//
	// You must specify at least one value
	// for at least one types of retry events.
	// Experimental.
	HttpRetryEvents *[]HttpRetryEvent `json:"httpRetryEvents"`
	// The maximum number of retry attempts.
	// Experimental.
	RetryAttempts *float64 `json:"retryAttempts"`
	// The timeout for each retry attempt.
	// Experimental.
	RetryTimeout awscdk.Duration `json:"retryTimeout"`
	// TCP events on which to retry.
	//
	// The event occurs before any processing of a
	// request has started and is encountered when the upstream is temporarily or
	// permanently unavailable. You must specify at least one value for at least
	// one types of retry events.
	// Experimental.
	TcpRetryEvents *[]TcpRetryEvent `json:"tcpRetryEvents"`
}

HTTP retry policy.

TODO: EXAMPLE

Experimental.

type HttpRouteMatch

type HttpRouteMatch struct {
	// Specifies the client request headers to match on.
	//
	// All specified headers
	// must match for the route to match.
	// Experimental.
	Headers *[]HeaderMatch `json:"headers"`
	// The HTTP client request method to match on.
	// Experimental.
	Method HttpRouteMethod `json:"method"`
	// Specifies how is the request matched based on the path part of its URL.
	// Experimental.
	Path HttpRoutePathMatch `json:"path"`
	// The client request protocol to match on.
	//
	// Applicable only for HTTP2 routes.
	// Experimental.
	Protocol HttpRouteProtocol `json:"protocol"`
	// The query parameters to match on.
	//
	// All specified query parameters must match for the route to match.
	// Experimental.
	QueryParameters *[]QueryParameterMatch `json:"queryParameters"`
}

The criterion for determining a request match for this Route.

TODO: EXAMPLE

Experimental.

type HttpRouteMethod

type HttpRouteMethod string

Supported values for matching routes based on the HTTP request method.

TODO: EXAMPLE

Experimental.

const (
	HttpRouteMethod_CONNECT HttpRouteMethod = "CONNECT"
	HttpRouteMethod_DELETE  HttpRouteMethod = "DELETE"
	HttpRouteMethod_GET     HttpRouteMethod = "GET"
	HttpRouteMethod_HEAD    HttpRouteMethod = "HEAD"
	HttpRouteMethod_OPTIONS HttpRouteMethod = "OPTIONS"
	HttpRouteMethod_PATCH   HttpRouteMethod = "PATCH"
	HttpRouteMethod_POST    HttpRouteMethod = "POST"
	HttpRouteMethod_PUT     HttpRouteMethod = "PUT"
	HttpRouteMethod_TRACE   HttpRouteMethod = "TRACE"
)

type HttpRoutePathMatch

type HttpRoutePathMatch interface {
	Bind(scope constructs.Construct) *HttpRoutePathMatchConfig
}

Defines HTTP route matching based on the URL path of the request.

TODO: EXAMPLE

Experimental.

func HttpRoutePathMatch_Exactly

func HttpRoutePathMatch_Exactly(path *string) HttpRoutePathMatch

The value of the path must match the specified value exactly.

The provided `path` must start with the '/' character. Experimental.

func HttpRoutePathMatch_Regex

func HttpRoutePathMatch_Regex(regex *string) HttpRoutePathMatch

The value of the path must match the specified regex. Experimental.

func HttpRoutePathMatch_StartsWith

func HttpRoutePathMatch_StartsWith(prefix *string) HttpRoutePathMatch

The value of the path must match the specified prefix. Experimental.

type HttpRoutePathMatchConfig

type HttpRoutePathMatchConfig struct {
	// Route configuration for matching on the prefix of the URL path of the request.
	// Experimental.
	PrefixPathMatch *string `json:"prefixPathMatch"`
	// Route configuration for matching on the complete URL path of the request.
	// Experimental.
	WholePathMatch *CfnRoute_HttpPathMatchProperty `json:"wholePathMatch"`
}

The type returned from the `bind()` method in {@link HttpRoutePathMatch}.

TODO: EXAMPLE

Experimental.

type HttpRouteProtocol

type HttpRouteProtocol string

Supported :scheme options for HTTP2.

TODO: EXAMPLE

Experimental.

const (
	HttpRouteProtocol_HTTP  HttpRouteProtocol = "HTTP"
	HttpRouteProtocol_HTTPS HttpRouteProtocol = "HTTPS"
)

type HttpRouteSpecOptions

type HttpRouteSpecOptions struct {
	// The priority for the route.
	//
	// Routes are matched based on the specified
	// value, where 0 is the highest priority.
	// Experimental.
	Priority *float64 `json:"priority"`
	// The criterion for determining a request match for this Route.
	// Experimental.
	Match *HttpRouteMatch `json:"match"`
	// The retry policy.
	// Experimental.
	RetryPolicy *HttpRetryPolicy `json:"retryPolicy"`
	// An object that represents a http timeout.
	// Experimental.
	Timeout *HttpTimeout `json:"timeout"`
	// List of targets that traffic is routed to when a request matches the route.
	// Experimental.
	WeightedTargets *[]*WeightedTarget `json:"weightedTargets"`
}

Properties specific for HTTP Based Routes.

TODO: EXAMPLE

Experimental.

type HttpTimeout

type HttpTimeout struct {
	// Represents an idle timeout.
	//
	// The amount of time that a connection may be idle.
	// Experimental.
	Idle awscdk.Duration `json:"idle"`
	// Represents per request timeout.
	// Experimental.
	PerRequest awscdk.Duration `json:"perRequest"`
}

Represents timeouts for HTTP protocols.

TODO: EXAMPLE

Experimental.

type HttpVirtualNodeListenerOptions

type HttpVirtualNodeListenerOptions struct {
	// Connection pool for http listeners.
	// Experimental.
	ConnectionPool *HttpConnectionPool `json:"connectionPool"`
	// The health check information for the listener.
	// Experimental.
	HealthCheck HealthCheck `json:"healthCheck"`
	// Represents the configuration for enabling outlier detection.
	// Experimental.
	OutlierDetection *OutlierDetection `json:"outlierDetection"`
	// Port to listen for connections on.
	// Experimental.
	Port *float64 `json:"port"`
	// Timeout for HTTP protocol.
	// Experimental.
	Timeout *HttpTimeout `json:"timeout"`
	// Represents the configuration for enabling TLS on a listener.
	// Experimental.
	Tls *ListenerTlsOptions `json:"tls"`
}

Represent the HTTP Node Listener prorperty.

TODO: EXAMPLE

Experimental.

type IGatewayRoute

type IGatewayRoute interface {
	awscdk.IResource
	// The Amazon Resource Name (ARN) for the GatewayRoute.
	// Experimental.
	GatewayRouteArn() *string
	// The name of the GatewayRoute.
	// Experimental.
	GatewayRouteName() *string
	// The VirtualGateway the GatewayRoute belongs to.
	// Experimental.
	VirtualGateway() IVirtualGateway
}

Interface for which all GatewayRoute based classes MUST implement. Experimental.

func GatewayRoute_FromGatewayRouteArn

func GatewayRoute_FromGatewayRouteArn(scope constructs.Construct, id *string, gatewayRouteArn *string) IGatewayRoute

Import an existing GatewayRoute given an ARN. Experimental.

func GatewayRoute_FromGatewayRouteAttributes

func GatewayRoute_FromGatewayRouteAttributes(scope constructs.Construct, id *string, attrs *GatewayRouteAttributes) IGatewayRoute

Import an existing GatewayRoute given attributes. Experimental.

type IMesh

type IMesh interface {
	awscdk.IResource
	// Creates a new VirtualGateway in this Mesh.
	//
	// Note that the Gateway is created in the same Stack that this Mesh belongs to,
	// which might be different than the current stack.
	// Experimental.
	AddVirtualGateway(id *string, props *VirtualGatewayBaseProps) VirtualGateway
	// Creates a new VirtualNode in this Mesh.
	//
	// Note that the Node is created in the same Stack that this Mesh belongs to,
	// which might be different than the current stack.
	// Experimental.
	AddVirtualNode(id *string, props *VirtualNodeBaseProps) VirtualNode
	// Creates a new VirtualRouter in this Mesh.
	//
	// Note that the Router is created in the same Stack that this Mesh belongs to,
	// which might be different than the current stack.
	// Experimental.
	AddVirtualRouter(id *string, props *VirtualRouterBaseProps) VirtualRouter
	// The Amazon Resource Name (ARN) of the AppMesh mesh.
	// Experimental.
	MeshArn() *string
	// The name of the AppMesh mesh.
	// Experimental.
	MeshName() *string
}

Interface which all Mesh based classes MUST implement. Experimental.

func Mesh_FromMeshArn

func Mesh_FromMeshArn(scope constructs.Construct, id *string, meshArn *string) IMesh

Import an existing mesh by arn. Experimental.

func Mesh_FromMeshName

func Mesh_FromMeshName(scope constructs.Construct, id *string, meshName *string) IMesh

Import an existing mesh by name. Experimental.

type IRoute

type IRoute interface {
	awscdk.IResource
	// The Amazon Resource Name (ARN) for the route.
	// Experimental.
	RouteArn() *string
	// The name of the route.
	// Experimental.
	RouteName() *string
	// The VirtualRouter the Route belongs to.
	// Experimental.
	VirtualRouter() IVirtualRouter
}

Interface for which all Route based classes MUST implement. Experimental.

func Route_FromRouteArn

func Route_FromRouteArn(scope constructs.Construct, id *string, routeArn *string) IRoute

Import an existing Route given an ARN. Experimental.

func Route_FromRouteAttributes

func Route_FromRouteAttributes(scope constructs.Construct, id *string, attrs *RouteAttributes) IRoute

Import an existing Route given attributes. Experimental.

type IVirtualGateway

type IVirtualGateway interface {
	awscdk.IResource
	// Utility method to add a new GatewayRoute to the VirtualGateway.
	// Experimental.
	AddGatewayRoute(id *string, route *GatewayRouteBaseProps) GatewayRoute
	// Grants the given entity `appmesh:StreamAggregatedResources`.
	// Experimental.
	GrantStreamAggregatedResources(identity awsiam.IGrantable) awsiam.Grant
	// The Mesh which the VirtualGateway belongs to.
	// Experimental.
	Mesh() IMesh
	// The Amazon Resource Name (ARN) for the VirtualGateway.
	// Experimental.
	VirtualGatewayArn() *string
	// Name of the VirtualGateway.
	// Experimental.
	VirtualGatewayName() *string
}

Interface which all Virtual Gateway based classes must implement. Experimental.

func VirtualGateway_FromVirtualGatewayArn

func VirtualGateway_FromVirtualGatewayArn(scope constructs.Construct, id *string, virtualGatewayArn *string) IVirtualGateway

Import an existing VirtualGateway given an ARN. Experimental.

func VirtualGateway_FromVirtualGatewayAttributes

func VirtualGateway_FromVirtualGatewayAttributes(scope constructs.Construct, id *string, attrs *VirtualGatewayAttributes) IVirtualGateway

Import an existing VirtualGateway given its attributes. Experimental.

type IVirtualNode

type IVirtualNode interface {
	awscdk.IResource
	// Grants the given entity `appmesh:StreamAggregatedResources`.
	// Experimental.
	GrantStreamAggregatedResources(identity awsiam.IGrantable) awsiam.Grant
	// The Mesh which the VirtualNode belongs to.
	// Experimental.
	Mesh() IMesh
	// The Amazon Resource Name belonging to the VirtualNode.
	//
	// Set this value as the APPMESH_VIRTUAL_NODE_NAME environment variable for
	// your task group's Envoy proxy container in your task definition or pod
	// spec.
	// Experimental.
	VirtualNodeArn() *string
	// The name of the VirtualNode.
	// Experimental.
	VirtualNodeName() *string
}

Interface which all VirtualNode based classes must implement. Experimental.

func VirtualNode_FromVirtualNodeArn

func VirtualNode_FromVirtualNodeArn(scope constructs.Construct, id *string, virtualNodeArn *string) IVirtualNode

Import an existing VirtualNode given an ARN. Experimental.

func VirtualNode_FromVirtualNodeAttributes

func VirtualNode_FromVirtualNodeAttributes(scope constructs.Construct, id *string, attrs *VirtualNodeAttributes) IVirtualNode

Import an existing VirtualNode given its name. Experimental.

type IVirtualRouter

type IVirtualRouter interface {
	awscdk.IResource
	// Add a single route to the router.
	// Experimental.
	AddRoute(id *string, props *RouteBaseProps) Route
	// The Mesh which the VirtualRouter belongs to.
	// Experimental.
	Mesh() IMesh
	// The Amazon Resource Name (ARN) for the VirtualRouter.
	// Experimental.
	VirtualRouterArn() *string
	// The name of the VirtualRouter.
	// Experimental.
	VirtualRouterName() *string
}

Interface which all VirtualRouter based classes MUST implement. Experimental.

func VirtualRouter_FromVirtualRouterArn

func VirtualRouter_FromVirtualRouterArn(scope constructs.Construct, id *string, virtualRouterArn *string) IVirtualRouter

Import an existing VirtualRouter given an ARN. Experimental.

func VirtualRouter_FromVirtualRouterAttributes

func VirtualRouter_FromVirtualRouterAttributes(scope constructs.Construct, id *string, attrs *VirtualRouterAttributes) IVirtualRouter

Import an existing VirtualRouter given attributes. Experimental.

type IVirtualService

type IVirtualService interface {
	awscdk.IResource
	// The Mesh which the VirtualService belongs to.
	// Experimental.
	Mesh() IMesh
	// The Amazon Resource Name (ARN) for the virtual service.
	// Experimental.
	VirtualServiceArn() *string
	// The name of the VirtualService.
	// Experimental.
	VirtualServiceName() *string
}

Represents the interface which all VirtualService based classes MUST implement. Experimental.

func VirtualService_FromVirtualServiceArn

func VirtualService_FromVirtualServiceArn(scope constructs.Construct, id *string, virtualServiceArn *string) IVirtualService

Import an existing VirtualService given an ARN. Experimental.

func VirtualService_FromVirtualServiceAttributes

func VirtualService_FromVirtualServiceAttributes(scope constructs.Construct, id *string, attrs *VirtualServiceAttributes) IVirtualService

Import an existing VirtualService given its attributes. Experimental.

type ListenerTlsOptions

type ListenerTlsOptions struct {
	// Represents TLS certificate.
	// Experimental.
	Certificate TlsCertificate `json:"certificate"`
	// The TLS mode.
	// Experimental.
	Mode TlsMode `json:"mode"`
	// Represents a listener's TLS validation context.
	//
	// The client certificate will only be validated if the client provides it, enabling mutual TLS.
	// Experimental.
	MutualTlsValidation *MutualTlsValidation `json:"mutualTlsValidation"`
}

Represents TLS properties for listener.

TODO: EXAMPLE

Experimental.

type Mesh

type Mesh interface {
	awscdk.Resource
	IMesh
	Env() *awscdk.ResourceEnvironment
	MeshArn() *string
	MeshName() *string
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	AddVirtualGateway(id *string, props *VirtualGatewayBaseProps) VirtualGateway
	AddVirtualNode(id *string, props *VirtualNodeBaseProps) VirtualNode
	AddVirtualRouter(id *string, props *VirtualRouterBaseProps) VirtualRouter
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Define a new AppMesh mesh.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/app-mesh/latest/userguide/meshes.html

Experimental.

func NewMesh

func NewMesh(scope constructs.Construct, id *string, props *MeshProps) Mesh

Experimental.

type MeshFilterType

type MeshFilterType string

A utility enum defined for the egressFilter type property, the default of DROP_ALL, allows traffic only to other resources inside the mesh, or API calls to amazon resources.

TODO: EXAMPLE

Experimental.

const (
	MeshFilterType_ALLOW_ALL MeshFilterType = "ALLOW_ALL"
	MeshFilterType_DROP_ALL  MeshFilterType = "DROP_ALL"
)

type MeshProps

type MeshProps struct {
	// Egress filter to be applied to the Mesh.
	// Experimental.
	EgressFilter MeshFilterType `json:"egressFilter"`
	// The name of the Mesh being defined.
	// Experimental.
	MeshName *string `json:"meshName"`
}

The set of properties used when creating a Mesh.

TODO: EXAMPLE

Experimental.

type MutualTlsCertificate

type MutualTlsCertificate interface {
	TlsCertificate
	Differentiator() *bool
	Bind(_scope constructs.Construct) *TlsCertificateConfig
}

Represents a TLS certificate that is supported for mutual TLS authentication.

TODO: EXAMPLE

Experimental.

func MutualTlsCertificate_File

func MutualTlsCertificate_File(certificateChainPath *string, privateKeyPath *string) MutualTlsCertificate

Returns an File TLS Certificate. Experimental.

func MutualTlsCertificate_Sds

func MutualTlsCertificate_Sds(secretName *string) MutualTlsCertificate

Returns an SDS TLS Certificate. Experimental.

func TlsCertificate_File

func TlsCertificate_File(certificateChainPath *string, privateKeyPath *string) MutualTlsCertificate

Returns an File TLS Certificate. Experimental.

func TlsCertificate_Sds

func TlsCertificate_Sds(secretName *string) MutualTlsCertificate

Returns an SDS TLS Certificate. Experimental.

type MutualTlsValidation

type MutualTlsValidation struct {
	// Represents the subject alternative names (SANs) secured by the certificate.
	//
	// SANs must be in the FQDN or URI format.
	// Experimental.
	SubjectAlternativeNames SubjectAlternativeNames `json:"subjectAlternativeNames"`
	// Reference to where to retrieve the trust chain.
	// Experimental.
	Trust MutualTlsValidationTrust `json:"trust"`
}

Represents the properties needed to define TLS Validation context that is supported for mutual TLS authentication.

TODO: EXAMPLE

Experimental.

type MutualTlsValidationTrust

type MutualTlsValidationTrust interface {
	TlsValidationTrust
	Differentiator() *bool
	Bind(scope constructs.Construct) *TlsValidationTrustConfig
}

Represents a TLS Validation Context Trust that is supported for mutual TLS authentication.

TODO: EXAMPLE

Experimental.

func MutualTlsValidationTrust_File

func MutualTlsValidationTrust_File(certificateChain *string) MutualTlsValidationTrust

Tells envoy where to fetch the validation context from. Experimental.

func MutualTlsValidationTrust_Sds

func MutualTlsValidationTrust_Sds(secretName *string) MutualTlsValidationTrust

TLS Validation Context Trust for Envoy' service discovery service. Experimental.

func TlsValidationTrust_File

func TlsValidationTrust_File(certificateChain *string) MutualTlsValidationTrust

Tells envoy where to fetch the validation context from. Experimental.

func TlsValidationTrust_Sds

func TlsValidationTrust_Sds(secretName *string) MutualTlsValidationTrust

TLS Validation Context Trust for Envoy' service discovery service. Experimental.

type OutlierDetection

type OutlierDetection struct {
	// The base amount of time for which a host is ejected.
	// Experimental.
	BaseEjectionDuration awscdk.Duration `json:"baseEjectionDuration"`
	// The time interval between ejection sweep analysis.
	// Experimental.
	Interval awscdk.Duration `json:"interval"`
	// Maximum percentage of hosts in load balancing pool for upstream service that can be ejected.
	//
	// Will eject at
	// least one host regardless of the value.
	// Experimental.
	MaxEjectionPercent *float64 `json:"maxEjectionPercent"`
	// Number of consecutive 5xx errors required for ejection.
	// Experimental.
	MaxServerErrors *float64 `json:"maxServerErrors"`
}

Represents the outlier detection for a listener.

TODO: EXAMPLE

Experimental.

type Protocol

type Protocol string

Enum of supported AppMesh protocols. Deprecated: not for use outside package

const (
	Protocol_HTTP  Protocol = "HTTP"
	Protocol_TCP   Protocol = "TCP"
	Protocol_HTTP2 Protocol = "HTTP2"
	Protocol_GRPC  Protocol = "GRPC"
)

type QueryParameterMatch

type QueryParameterMatch interface {
	Bind(scope constructs.Construct) *QueryParameterMatchConfig
}

Used to generate query parameter matching methods.

TODO: EXAMPLE

Experimental.

func QueryParameterMatch_ValueIs

func QueryParameterMatch_ValueIs(queryParameterName *string, queryParameterValue *string) QueryParameterMatch

The value of the query parameter with the given name in the request must match the specified value exactly. Experimental.

type QueryParameterMatchConfig

type QueryParameterMatchConfig struct {
	// Route CFN configuration for route query parameter match.
	// Experimental.
	QueryParameterMatch *CfnRoute_QueryParameterProperty `json:"queryParameterMatch"`
}

Configuration for `QueryParameterMatch`.

TODO: EXAMPLE

Experimental.

type Route

type Route interface {
	awscdk.Resource
	IRoute
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	RouteArn() *string
	RouteName() *string
	Stack() awscdk.Stack
	VirtualRouter() IVirtualRouter
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

Route represents a new or existing route attached to a VirtualRouter and Mesh.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/app-mesh/latest/userguide/routes.html

Experimental.

func NewRoute

func NewRoute(scope constructs.Construct, id *string, props *RouteProps) Route

Experimental.

type RouteAttributes

type RouteAttributes struct {
	// The name of the Route.
	// Experimental.
	RouteName *string `json:"routeName"`
	// The VirtualRouter the Route belongs to.
	// Experimental.
	VirtualRouter IVirtualRouter `json:"virtualRouter"`
}

Interface with properties ncecessary to import a reusable Route.

TODO: EXAMPLE

Experimental.

type RouteBaseProps

type RouteBaseProps struct {
	// The name of the route.
	// Experimental.
	RouteName *string `json:"routeName"`
	// Protocol specific spec.
	// Experimental.
	RouteSpec RouteSpec `json:"routeSpec"`
}

Base interface properties for all Routes.

TODO: EXAMPLE

Experimental.

type RouteProps

type RouteProps struct {
	// The name of the route.
	// Experimental.
	RouteName *string `json:"routeName"`
	// Protocol specific spec.
	// Experimental.
	RouteSpec RouteSpec `json:"routeSpec"`
	// The service mesh to define the route in.
	// Experimental.
	Mesh IMesh `json:"mesh"`
	// The VirtualRouter the Route belongs to.
	// Experimental.
	VirtualRouter IVirtualRouter `json:"virtualRouter"`
}

Properties to define new Routes.

TODO: EXAMPLE

Experimental.

type RouteSpec

type RouteSpec interface {
	Bind(scope constructs.Construct) *RouteSpecConfig
}

Used to generate specs with different protocols for a RouteSpec.

TODO: EXAMPLE

Experimental.

func RouteSpec_Grpc

func RouteSpec_Grpc(options *GrpcRouteSpecOptions) RouteSpec

Creates a GRPC Based RouteSpec. Experimental.

func RouteSpec_Http

func RouteSpec_Http(options *HttpRouteSpecOptions) RouteSpec

Creates an HTTP Based RouteSpec. Experimental.

func RouteSpec_Http2

func RouteSpec_Http2(options *HttpRouteSpecOptions) RouteSpec

Creates an HTTP2 Based RouteSpec. Experimental.

func RouteSpec_Tcp

func RouteSpec_Tcp(options *TcpRouteSpecOptions) RouteSpec

Creates a TCP Based RouteSpec. Experimental.

type RouteSpecConfig

type RouteSpecConfig struct {
	// The spec for a grpc route.
	// Experimental.
	GrpcRouteSpec *CfnRoute_GrpcRouteProperty `json:"grpcRouteSpec"`
	// The spec for an http2 route.
	// Experimental.
	Http2RouteSpec *CfnRoute_HttpRouteProperty `json:"http2RouteSpec"`
	// The spec for an http route.
	// Experimental.
	HttpRouteSpec *CfnRoute_HttpRouteProperty `json:"httpRouteSpec"`
	// The priority for the route.
	//
	// Routes are matched based on the specified
	// value, where 0 is the highest priority.
	// Experimental.
	Priority *float64 `json:"priority"`
	// The spec for a tcp route.
	// Experimental.
	TcpRouteSpec *CfnRoute_TcpRouteProperty `json:"tcpRouteSpec"`
}

All Properties for Route Specs.

TODO: EXAMPLE

Experimental.

type RouteSpecOptionsBase

type RouteSpecOptionsBase struct {
	// The priority for the route.
	//
	// Routes are matched based on the specified
	// value, where 0 is the highest priority.
	// Experimental.
	Priority *float64 `json:"priority"`
}

Base options for all route specs.

TODO: EXAMPLE

Experimental.

type ServiceDiscovery

type ServiceDiscovery interface {
	Bind(scope constructs.Construct) *ServiceDiscoveryConfig
}

Provides the Service Discovery method a VirtualNode uses.

TODO: EXAMPLE

Experimental.

func ServiceDiscovery_CloudMap

func ServiceDiscovery_CloudMap(service awsservicediscovery.IService, instanceAttributes *map[string]*string) ServiceDiscovery

Returns Cloud Map based service discovery. Experimental.

func ServiceDiscovery_Dns

func ServiceDiscovery_Dns(hostname *string, responseType DnsResponseType) ServiceDiscovery

Returns DNS based service discovery. Experimental.

type ServiceDiscoveryConfig

type ServiceDiscoveryConfig struct {
	// Cloud Map based Service Discovery.
	// Experimental.
	Cloudmap *CfnVirtualNode_AwsCloudMapServiceDiscoveryProperty `json:"cloudmap"`
	// DNS based Service Discovery.
	// Experimental.
	Dns *CfnVirtualNode_DnsServiceDiscoveryProperty `json:"dns"`
}

Properties for VirtualNode Service Discovery.

TODO: EXAMPLE

Experimental.

type SubjectAlternativeNames

type SubjectAlternativeNames interface {
	Bind(scope constructs.Construct) *SubjectAlternativeNamesMatcherConfig
}

Used to generate Subject Alternative Names Matchers.

TODO: EXAMPLE

Experimental.

func SubjectAlternativeNames_MatchingExactly

func SubjectAlternativeNames_MatchingExactly(names ...*string) SubjectAlternativeNames

The values of the SAN must match the specified values exactly. Experimental.

type SubjectAlternativeNamesMatcherConfig

type SubjectAlternativeNamesMatcherConfig struct {
	// VirtualNode CFN configuration for subject alternative names secured by the certificate.
	// Experimental.
	SubjectAlternativeNamesMatch *CfnVirtualNode_SubjectAlternativeNameMatchersProperty `json:"subjectAlternativeNamesMatch"`
}

All Properties for Subject Alternative Names Matcher for both Client Policy and Listener.

TODO: EXAMPLE

Experimental.

type TcpConnectionPool

type TcpConnectionPool struct {
	// The maximum connections in the pool.
	// Experimental.
	MaxConnections *float64 `json:"maxConnections"`
}

Connection pool properties for TCP listeners.

TODO: EXAMPLE

Experimental.

type TcpHealthCheckOptions

type TcpHealthCheckOptions struct {
	// The number of consecutive successful health checks that must occur before declaring listener healthy.
	// Experimental.
	HealthyThreshold *float64 `json:"healthyThreshold"`
	// The time period between each health check execution.
	// Experimental.
	Interval awscdk.Duration `json:"interval"`
	// The amount of time to wait when receiving a response from the health check.
	// Experimental.
	Timeout awscdk.Duration `json:"timeout"`
	// The number of consecutive failed health checks that must occur before declaring a listener unhealthy.
	// Experimental.
	UnhealthyThreshold *float64 `json:"unhealthyThreshold"`
}

Properties used to define TCP Based healthchecks.

TODO: EXAMPLE

Experimental.

type TcpRetryEvent

type TcpRetryEvent string

TCP events on which you may retry. Experimental.

const (
	TcpRetryEvent_CONNECTION_ERROR TcpRetryEvent = "CONNECTION_ERROR"
)

type TcpRouteSpecOptions

type TcpRouteSpecOptions struct {
	// The priority for the route.
	//
	// Routes are matched based on the specified
	// value, where 0 is the highest priority.
	// Experimental.
	Priority *float64 `json:"priority"`
	// An object that represents a tcp timeout.
	// Experimental.
	Timeout *TcpTimeout `json:"timeout"`
	// List of targets that traffic is routed to when a request matches the route.
	// Experimental.
	WeightedTargets *[]*WeightedTarget `json:"weightedTargets"`
}

Properties specific for a TCP Based Routes.

TODO: EXAMPLE

Experimental.

type TcpTimeout

type TcpTimeout struct {
	// Represents an idle timeout.
	//
	// The amount of time that a connection may be idle.
	// Experimental.
	Idle awscdk.Duration `json:"idle"`
}

Represents timeouts for TCP protocols.

TODO: EXAMPLE

Experimental.

type TcpVirtualNodeListenerOptions

type TcpVirtualNodeListenerOptions struct {
	// Connection pool for http listeners.
	// Experimental.
	ConnectionPool *TcpConnectionPool `json:"connectionPool"`
	// The health check information for the listener.
	// Experimental.
	HealthCheck HealthCheck `json:"healthCheck"`
	// Represents the configuration for enabling outlier detection.
	// Experimental.
	OutlierDetection *OutlierDetection `json:"outlierDetection"`
	// Port to listen for connections on.
	// Experimental.
	Port *float64 `json:"port"`
	// Timeout for TCP protocol.
	// Experimental.
	Timeout *TcpTimeout `json:"timeout"`
	// Represents the configuration for enabling TLS on a listener.
	// Experimental.
	Tls *ListenerTlsOptions `json:"tls"`
}

Represent the TCP Node Listener prorperty.

TODO: EXAMPLE

Experimental.

type TlsCertificate

type TlsCertificate interface {
	Bind(_scope constructs.Construct) *TlsCertificateConfig
}

Represents a TLS certificate.

TODO: EXAMPLE

Experimental.

func MutualTlsCertificate_Acm

func MutualTlsCertificate_Acm(certificate awscertificatemanager.ICertificate) TlsCertificate

Returns an ACM TLS Certificate. Experimental.

func TlsCertificate_Acm

func TlsCertificate_Acm(certificate awscertificatemanager.ICertificate) TlsCertificate

Returns an ACM TLS Certificate. Experimental.

type TlsCertificateConfig

type TlsCertificateConfig struct {
	// The CFN shape for a TLS certificate.
	// Experimental.
	TlsCertificate *CfnVirtualNode_ListenerTlsCertificateProperty `json:"tlsCertificate"`
}

A wrapper for the tls config returned by {@link TlsCertificate.bind}.

TODO: EXAMPLE

Experimental.

type TlsClientPolicy

type TlsClientPolicy struct {
	// Whether the policy is enforced.
	// Experimental.
	Enforce *bool `json:"enforce"`
	// Represents a client TLS certificate.
	//
	// The certificate will be sent only if the server requests it, enabling mutual TLS.
	// Experimental.
	MutualTlsCertificate MutualTlsCertificate `json:"mutualTlsCertificate"`
	// TLS is enforced on the ports specified here.
	//
	// If no ports are specified, TLS will be enforced on all the ports.
	// Experimental.
	Ports *[]*float64 `json:"ports"`
	// Represents the object for TLS validation context.
	// Experimental.
	Validation *TlsValidation `json:"validation"`
}

Represents the properties needed to define client policy.

TODO: EXAMPLE

Experimental.

type TlsMode

type TlsMode string

Enum of supported TLS modes.

TODO: EXAMPLE

Experimental.

const (
	TlsMode_DISABLED   TlsMode = "DISABLED"
	TlsMode_PERMISSIVE TlsMode = "PERMISSIVE"
	TlsMode_STRICT     TlsMode = "STRICT"
)

type TlsValidation

type TlsValidation struct {
	// Represents the subject alternative names (SANs) secured by the certificate.
	//
	// SANs must be in the FQDN or URI format.
	// Experimental.
	SubjectAlternativeNames SubjectAlternativeNames `json:"subjectAlternativeNames"`
	// Reference to where to retrieve the trust chain.
	// Experimental.
	Trust TlsValidationTrust `json:"trust"`
}

Represents the properties needed to define TLS Validation context.

TODO: EXAMPLE

Experimental.

type TlsValidationTrust

type TlsValidationTrust interface {
	Bind(scope constructs.Construct) *TlsValidationTrustConfig
}

Defines the TLS Validation Context Trust.

TODO: EXAMPLE

Experimental.

func MutualTlsValidationTrust_Acm

func MutualTlsValidationTrust_Acm(certificateAuthorities *[]awsacmpca.ICertificateAuthority) TlsValidationTrust

TLS Validation Context Trust for ACM Private Certificate Authority (CA). Experimental.

func TlsValidationTrust_Acm

func TlsValidationTrust_Acm(certificateAuthorities *[]awsacmpca.ICertificateAuthority) TlsValidationTrust

TLS Validation Context Trust for ACM Private Certificate Authority (CA). Experimental.

type TlsValidationTrustConfig

type TlsValidationTrustConfig struct {
	// VirtualNode CFN configuration for client policy's TLS Validation Trust.
	// Experimental.
	TlsValidationTrust *CfnVirtualNode_TlsValidationContextTrustProperty `json:"tlsValidationTrust"`
}

All Properties for TLS Validation Trusts for both Client Policy and Listener.

TODO: EXAMPLE

Experimental.

type VirtualGateway

type VirtualGateway interface {
	awscdk.Resource
	IVirtualGateway
	Env() *awscdk.ResourceEnvironment
	Listeners() *[]*VirtualGatewayListenerConfig
	Mesh() IMesh
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	VirtualGatewayArn() *string
	VirtualGatewayName() *string
	AddGatewayRoute(id *string, props *GatewayRouteBaseProps) GatewayRoute
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	GrantStreamAggregatedResources(identity awsiam.IGrantable) awsiam.Grant
	ToString() *string
}

VirtualGateway represents a newly defined App Mesh Virtual Gateway.

A virtual gateway allows resources that are outside of your mesh to communicate to resources that are inside of your mesh.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html

Experimental.

func NewVirtualGateway

func NewVirtualGateway(scope constructs.Construct, id *string, props *VirtualGatewayProps) VirtualGateway

Experimental.

type VirtualGatewayAttributes

type VirtualGatewayAttributes struct {
	// The Mesh that the VirtualGateway belongs to.
	// Experimental.
	Mesh IMesh `json:"mesh"`
	// The name of the VirtualGateway.
	// Experimental.
	VirtualGatewayName *string `json:"virtualGatewayName"`
}

Unterface with properties necessary to import a reusable VirtualGateway.

TODO: EXAMPLE

Experimental.

type VirtualGatewayBaseProps

type VirtualGatewayBaseProps struct {
	// Access Logging Configuration for the VirtualGateway.
	// Experimental.
	AccessLog AccessLog `json:"accessLog"`
	// Default Configuration Virtual Node uses to communicate with Virtual Service.
	// Experimental.
	BackendDefaults *BackendDefaults `json:"backendDefaults"`
	// Listeners for the VirtualGateway.
	//
	// Only one is supported.
	// Experimental.
	Listeners *[]VirtualGatewayListener `json:"listeners"`
	// Name of the VirtualGateway.
	// Experimental.
	VirtualGatewayName *string `json:"virtualGatewayName"`
}

Basic configuration properties for a VirtualGateway.

TODO: EXAMPLE

Experimental.

type VirtualGatewayListener

type VirtualGatewayListener interface {
	Bind(scope constructs.Construct) *VirtualGatewayListenerConfig
}

Represents the properties needed to define listeners for a VirtualGateway.

TODO: EXAMPLE

Experimental.

func VirtualGatewayListener_Grpc

func VirtualGatewayListener_Grpc(options *GrpcGatewayListenerOptions) VirtualGatewayListener

Returns a GRPC Listener for a VirtualGateway. Experimental.

func VirtualGatewayListener_Http

func VirtualGatewayListener_Http(options *HttpGatewayListenerOptions) VirtualGatewayListener

Returns an HTTP Listener for a VirtualGateway. Experimental.

func VirtualGatewayListener_Http2

func VirtualGatewayListener_Http2(options *Http2GatewayListenerOptions) VirtualGatewayListener

Returns an HTTP2 Listener for a VirtualGateway. Experimental.

type VirtualGatewayListenerConfig

type VirtualGatewayListenerConfig struct {
	// Single listener config for a VirtualGateway.
	// Experimental.
	Listener *CfnVirtualGateway_VirtualGatewayListenerProperty `json:"listener"`
}

Properties for a VirtualGateway listener.

TODO: EXAMPLE

Experimental.

type VirtualGatewayProps

type VirtualGatewayProps struct {
	// Access Logging Configuration for the VirtualGateway.
	// Experimental.
	AccessLog AccessLog `json:"accessLog"`
	// Default Configuration Virtual Node uses to communicate with Virtual Service.
	// Experimental.
	BackendDefaults *BackendDefaults `json:"backendDefaults"`
	// Listeners for the VirtualGateway.
	//
	// Only one is supported.
	// Experimental.
	Listeners *[]VirtualGatewayListener `json:"listeners"`
	// Name of the VirtualGateway.
	// Experimental.
	VirtualGatewayName *string `json:"virtualGatewayName"`
	// The Mesh which the VirtualGateway belongs to.
	// Experimental.
	Mesh IMesh `json:"mesh"`
}

Properties used when creating a new VirtualGateway.

TODO: EXAMPLE

Experimental.

type VirtualNode

type VirtualNode interface {
	awscdk.Resource
	IVirtualNode
	Env() *awscdk.ResourceEnvironment
	Mesh() IMesh
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	VirtualNodeArn() *string
	VirtualNodeName() *string
	AddBackend(backend Backend)
	AddListener(listener VirtualNodeListener)
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	GrantStreamAggregatedResources(identity awsiam.IGrantable) awsiam.Grant
	ToString() *string
}

VirtualNode represents a newly defined AppMesh VirtualNode.

Any inbound traffic that your virtual node expects should be specified as a listener. Any outbound traffic that your virtual node expects to reach should be specified as a backend.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_nodes.html

Experimental.

func NewVirtualNode

func NewVirtualNode(scope constructs.Construct, id *string, props *VirtualNodeProps) VirtualNode

Experimental.

type VirtualNodeAttributes

type VirtualNodeAttributes struct {
	// The Mesh that the VirtualNode belongs to.
	// Experimental.
	Mesh IMesh `json:"mesh"`
	// The name of the VirtualNode.
	// Experimental.
	VirtualNodeName *string `json:"virtualNodeName"`
}

Interface with properties necessary to import a reusable VirtualNode.

TODO: EXAMPLE

Experimental.

type VirtualNodeBaseProps

type VirtualNodeBaseProps struct {
	// Access Logging Configuration for the virtual node.
	// Experimental.
	AccessLog AccessLog `json:"accessLog"`
	// Default Configuration Virtual Node uses to communicate with Virtual Service.
	// Experimental.
	BackendDefaults *BackendDefaults `json:"backendDefaults"`
	// Virtual Services that this is node expected to send outbound traffic to.
	// Experimental.
	Backends *[]Backend `json:"backends"`
	// Initial listener for the virtual node.
	// Experimental.
	Listeners *[]VirtualNodeListener `json:"listeners"`
	// Defines how upstream clients will discover this VirtualNode.
	// Experimental.
	ServiceDiscovery ServiceDiscovery `json:"serviceDiscovery"`
	// The name of the VirtualNode.
	// Experimental.
	VirtualNodeName *string `json:"virtualNodeName"`
}

Basic configuration properties for a VirtualNode.

TODO: EXAMPLE

Experimental.

type VirtualNodeListener

type VirtualNodeListener interface {
	Bind(scope constructs.Construct) *VirtualNodeListenerConfig
}

Defines listener for a VirtualNode.

TODO: EXAMPLE

Experimental.

func VirtualNodeListener_Grpc

func VirtualNodeListener_Grpc(props *GrpcVirtualNodeListenerOptions) VirtualNodeListener

Returns an GRPC Listener for a VirtualNode. Experimental.

func VirtualNodeListener_Http

func VirtualNodeListener_Http(props *HttpVirtualNodeListenerOptions) VirtualNodeListener

Returns an HTTP Listener for a VirtualNode. Experimental.

func VirtualNodeListener_Http2

func VirtualNodeListener_Http2(props *Http2VirtualNodeListenerOptions) VirtualNodeListener

Returns an HTTP2 Listener for a VirtualNode. Experimental.

func VirtualNodeListener_Tcp

func VirtualNodeListener_Tcp(props *TcpVirtualNodeListenerOptions) VirtualNodeListener

Returns an TCP Listener for a VirtualNode. Experimental.

type VirtualNodeListenerConfig

type VirtualNodeListenerConfig struct {
	// Single listener config for a VirtualNode.
	// Experimental.
	Listener *CfnVirtualNode_ListenerProperty `json:"listener"`
}

Properties for a VirtualNode listener.

TODO: EXAMPLE

Experimental.

type VirtualNodeProps

type VirtualNodeProps struct {
	// Access Logging Configuration for the virtual node.
	// Experimental.
	AccessLog AccessLog `json:"accessLog"`
	// Default Configuration Virtual Node uses to communicate with Virtual Service.
	// Experimental.
	BackendDefaults *BackendDefaults `json:"backendDefaults"`
	// Virtual Services that this is node expected to send outbound traffic to.
	// Experimental.
	Backends *[]Backend `json:"backends"`
	// Initial listener for the virtual node.
	// Experimental.
	Listeners *[]VirtualNodeListener `json:"listeners"`
	// Defines how upstream clients will discover this VirtualNode.
	// Experimental.
	ServiceDiscovery ServiceDiscovery `json:"serviceDiscovery"`
	// The name of the VirtualNode.
	// Experimental.
	VirtualNodeName *string `json:"virtualNodeName"`
	// The Mesh which the VirtualNode belongs to.
	// Experimental.
	Mesh IMesh `json:"mesh"`
}

The properties used when creating a new VirtualNode.

TODO: EXAMPLE

Experimental.

type VirtualRouter

type VirtualRouter interface {
	awscdk.Resource
	IVirtualRouter
	Env() *awscdk.ResourceEnvironment
	Mesh() IMesh
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	VirtualRouterArn() *string
	VirtualRouterName() *string
	AddRoute(id *string, props *RouteBaseProps) Route
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

TODO: EXAMPLE

Experimental.

func NewVirtualRouter

func NewVirtualRouter(scope constructs.Construct, id *string, props *VirtualRouterProps) VirtualRouter

Experimental.

type VirtualRouterAttributes

type VirtualRouterAttributes struct {
	// The Mesh which the VirtualRouter belongs to.
	// Experimental.
	Mesh IMesh `json:"mesh"`
	// The name of the VirtualRouter.
	// Experimental.
	VirtualRouterName *string `json:"virtualRouterName"`
}

Interface with properties ncecessary to import a reusable VirtualRouter.

TODO: EXAMPLE

Experimental.

type VirtualRouterBaseProps

type VirtualRouterBaseProps struct {
	// Listener specification for the VirtualRouter.
	// Experimental.
	Listeners *[]VirtualRouterListener `json:"listeners"`
	// The name of the VirtualRouter.
	// Experimental.
	VirtualRouterName *string `json:"virtualRouterName"`
}

Interface with base properties all routers willl inherit.

TODO: EXAMPLE

Experimental.

type VirtualRouterListener

type VirtualRouterListener interface {
	Bind(scope constructs.Construct) *VirtualRouterListenerConfig
}

Represents the properties needed to define listeners for a VirtualRouter.

TODO: EXAMPLE

Experimental.

func VirtualRouterListener_Grpc

func VirtualRouterListener_Grpc(port *float64) VirtualRouterListener

Returns a GRPC Listener for a VirtualRouter. Experimental.

func VirtualRouterListener_Http

func VirtualRouterListener_Http(port *float64) VirtualRouterListener

Returns an HTTP Listener for a VirtualRouter. Experimental.

func VirtualRouterListener_Http2

func VirtualRouterListener_Http2(port *float64) VirtualRouterListener

Returns an HTTP2 Listener for a VirtualRouter. Experimental.

func VirtualRouterListener_Tcp

func VirtualRouterListener_Tcp(port *float64) VirtualRouterListener

Returns a TCP Listener for a VirtualRouter. Experimental.

type VirtualRouterListenerConfig

type VirtualRouterListenerConfig struct {
	// Single listener config for a VirtualRouter.
	// Experimental.
	Listener *CfnVirtualRouter_VirtualRouterListenerProperty `json:"listener"`
}

Properties for a VirtualRouter listener.

TODO: EXAMPLE

Experimental.

type VirtualRouterProps

type VirtualRouterProps struct {
	// Listener specification for the VirtualRouter.
	// Experimental.
	Listeners *[]VirtualRouterListener `json:"listeners"`
	// The name of the VirtualRouter.
	// Experimental.
	VirtualRouterName *string `json:"virtualRouterName"`
	// The Mesh which the VirtualRouter belongs to.
	// Experimental.
	Mesh IMesh `json:"mesh"`
}

The properties used when creating a new VirtualRouter.

TODO: EXAMPLE

Experimental.

type VirtualService

type VirtualService interface {
	awscdk.Resource
	IVirtualService
	Env() *awscdk.ResourceEnvironment
	Mesh() IMesh
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	VirtualServiceArn() *string
	VirtualServiceName() *string
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	ToString() *string
}

VirtualService represents a service inside an AppMesh.

It routes traffic either to a Virtual Node or to a Virtual Router.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_services.html

Experimental.

func NewVirtualService

func NewVirtualService(scope constructs.Construct, id *string, props *VirtualServiceProps) VirtualService

Experimental.

type VirtualServiceAttributes

type VirtualServiceAttributes struct {
	// The Mesh which the VirtualService belongs to.
	// Experimental.
	Mesh IMesh `json:"mesh"`
	// The name of the VirtualService, it is recommended this follows the fully-qualified domain name format.
	// Experimental.
	VirtualServiceName *string `json:"virtualServiceName"`
}

Interface with properties ncecessary to import a reusable VirtualService.

TODO: EXAMPLE

Experimental.

type VirtualServiceBackendOptions

type VirtualServiceBackendOptions struct {
	// TLS properties for  Client policy for the backend.
	// Experimental.
	TlsClientPolicy *TlsClientPolicy `json:"tlsClientPolicy"`
}

Represents the properties needed to define a Virtual Service backend.

TODO: EXAMPLE

Experimental.

type VirtualServiceProps

type VirtualServiceProps struct {
	// The VirtualNode or VirtualRouter which the VirtualService uses as its provider.
	// Experimental.
	VirtualServiceProvider VirtualServiceProvider `json:"virtualServiceProvider"`
	// The name of the VirtualService.
	//
	// It is recommended this follows the fully-qualified domain name format,
	// such as "my-service.default.svc.cluster.local".
	//
	// Example value: `service.domain.local`
	// Experimental.
	VirtualServiceName *string `json:"virtualServiceName"`
}

The properties applied to the VirtualService being defined.

TODO: EXAMPLE

Experimental.

type VirtualServiceProvider

type VirtualServiceProvider interface {
	Bind(_construct constructs.Construct) *VirtualServiceProviderConfig
}

Represents the properties needed to define the provider for a VirtualService.

TODO: EXAMPLE

Experimental.

func VirtualServiceProvider_None

func VirtualServiceProvider_None(mesh IMesh) VirtualServiceProvider

Returns an Empty Provider for a VirtualService.

This provides no routing capabilities and should only be used as a placeholder Experimental.

func VirtualServiceProvider_VirtualNode

func VirtualServiceProvider_VirtualNode(virtualNode IVirtualNode) VirtualServiceProvider

Returns a VirtualNode based Provider for a VirtualService. Experimental.

func VirtualServiceProvider_VirtualRouter

func VirtualServiceProvider_VirtualRouter(virtualRouter IVirtualRouter) VirtualServiceProvider

Returns a VirtualRouter based Provider for a VirtualService. Experimental.

type VirtualServiceProviderConfig

type VirtualServiceProviderConfig struct {
	// Mesh the Provider is using.
	// Experimental.
	Mesh IMesh `json:"mesh"`
	// Virtual Node based provider.
	// Experimental.
	VirtualNodeProvider *CfnVirtualService_VirtualNodeServiceProviderProperty `json:"virtualNodeProvider"`
	// Virtual Router based provider.
	// Experimental.
	VirtualRouterProvider *CfnVirtualService_VirtualRouterServiceProviderProperty `json:"virtualRouterProvider"`
}

Properties for a VirtualService provider.

TODO: EXAMPLE

Experimental.

type WeightedTarget

type WeightedTarget struct {
	// The VirtualNode the route points to.
	// Experimental.
	VirtualNode IVirtualNode `json:"virtualNode"`
	// The weight for the target.
	// Experimental.
	Weight *float64 `json:"weight"`
}

Properties for the Weighted Targets in the route.

TODO: EXAMPLE

Experimental.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL