aws-sdk-appmesh 1.21.0 → 1.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -77,6 +79,7 @@ module Aws::AppMesh
77
79
  GrpcRouteMetadata = Shapes::StructureShape.new(name: 'GrpcRouteMetadata')
78
80
  GrpcRouteMetadataList = Shapes::ListShape.new(name: 'GrpcRouteMetadataList')
79
81
  GrpcRouteMetadataMatchMethod = Shapes::StructureShape.new(name: 'GrpcRouteMetadataMatchMethod')
82
+ GrpcTimeout = Shapes::StructureShape.new(name: 'GrpcTimeout')
80
83
  HeaderMatch = Shapes::StringShape.new(name: 'HeaderMatch')
81
84
  HeaderMatchMethod = Shapes::StructureShape.new(name: 'HeaderMatchMethod')
82
85
  HeaderName = Shapes::StringShape.new(name: 'HeaderName')
@@ -95,6 +98,7 @@ module Aws::AppMesh
95
98
  HttpRouteHeaders = Shapes::ListShape.new(name: 'HttpRouteHeaders')
96
99
  HttpRouteMatch = Shapes::StructureShape.new(name: 'HttpRouteMatch')
97
100
  HttpScheme = Shapes::StringShape.new(name: 'HttpScheme')
101
+ HttpTimeout = Shapes::StructureShape.new(name: 'HttpTimeout')
98
102
  InternalServerErrorException = Shapes::StructureShape.new(name: 'InternalServerErrorException')
99
103
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
100
104
  ListMeshesInput = Shapes::StructureShape.new(name: 'ListMeshesInput')
@@ -115,6 +119,7 @@ module Aws::AppMesh
115
119
  ListVirtualServicesLimit = Shapes::IntegerShape.new(name: 'ListVirtualServicesLimit')
116
120
  ListVirtualServicesOutput = Shapes::StructureShape.new(name: 'ListVirtualServicesOutput')
117
121
  Listener = Shapes::StructureShape.new(name: 'Listener')
122
+ ListenerTimeout = Shapes::StructureShape.new(name: 'ListenerTimeout')
118
123
  ListenerTls = Shapes::StructureShape.new(name: 'ListenerTls')
119
124
  ListenerTlsAcmCertificate = Shapes::StructureShape.new(name: 'ListenerTlsAcmCertificate')
120
125
  ListenerTlsCertificate = Shapes::StructureShape.new(name: 'ListenerTlsCertificate')
@@ -164,6 +169,7 @@ module Aws::AppMesh
164
169
  TcpRetryPolicyEvents = Shapes::ListShape.new(name: 'TcpRetryPolicyEvents')
165
170
  TcpRoute = Shapes::StructureShape.new(name: 'TcpRoute')
166
171
  TcpRouteAction = Shapes::StructureShape.new(name: 'TcpRouteAction')
172
+ TcpTimeout = Shapes::StructureShape.new(name: 'TcpTimeout')
167
173
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
168
174
  TlsValidationContext = Shapes::StructureShape.new(name: 'TlsValidationContext')
169
175
  TlsValidationContextAcmTrust = Shapes::StructureShape.new(name: 'TlsValidationContextAcmTrust')
@@ -439,6 +445,7 @@ module Aws::AppMesh
439
445
  GrpcRoute.add_member(:action, Shapes::ShapeRef.new(shape: GrpcRouteAction, required: true, location_name: "action"))
440
446
  GrpcRoute.add_member(:match, Shapes::ShapeRef.new(shape: GrpcRouteMatch, required: true, location_name: "match"))
441
447
  GrpcRoute.add_member(:retry_policy, Shapes::ShapeRef.new(shape: GrpcRetryPolicy, location_name: "retryPolicy"))
448
+ GrpcRoute.add_member(:timeout, Shapes::ShapeRef.new(shape: GrpcTimeout, location_name: "timeout"))
442
449
  GrpcRoute.struct_class = Types::GrpcRoute
443
450
 
444
451
  GrpcRouteAction.add_member(:weighted_targets, Shapes::ShapeRef.new(shape: WeightedTargets, required: true, location_name: "weightedTargets"))
@@ -463,6 +470,10 @@ module Aws::AppMesh
463
470
  GrpcRouteMetadataMatchMethod.add_member(:suffix, Shapes::ShapeRef.new(shape: HeaderMatch, location_name: "suffix"))
464
471
  GrpcRouteMetadataMatchMethod.struct_class = Types::GrpcRouteMetadataMatchMethod
465
472
 
473
+ GrpcTimeout.add_member(:idle, Shapes::ShapeRef.new(shape: Duration, location_name: "idle"))
474
+ GrpcTimeout.add_member(:per_request, Shapes::ShapeRef.new(shape: Duration, location_name: "perRequest"))
475
+ GrpcTimeout.struct_class = Types::GrpcTimeout
476
+
466
477
  HeaderMatchMethod.add_member(:exact, Shapes::ShapeRef.new(shape: HeaderMatch, location_name: "exact"))
467
478
  HeaderMatchMethod.add_member(:prefix, Shapes::ShapeRef.new(shape: HeaderMatch, location_name: "prefix"))
468
479
  HeaderMatchMethod.add_member(:range, Shapes::ShapeRef.new(shape: MatchRange, location_name: "range"))
@@ -490,6 +501,7 @@ module Aws::AppMesh
490
501
  HttpRoute.add_member(:action, Shapes::ShapeRef.new(shape: HttpRouteAction, required: true, location_name: "action"))
491
502
  HttpRoute.add_member(:match, Shapes::ShapeRef.new(shape: HttpRouteMatch, required: true, location_name: "match"))
492
503
  HttpRoute.add_member(:retry_policy, Shapes::ShapeRef.new(shape: HttpRetryPolicy, location_name: "retryPolicy"))
504
+ HttpRoute.add_member(:timeout, Shapes::ShapeRef.new(shape: HttpTimeout, location_name: "timeout"))
493
505
  HttpRoute.struct_class = Types::HttpRoute
494
506
 
495
507
  HttpRouteAction.add_member(:weighted_targets, Shapes::ShapeRef.new(shape: WeightedTargets, required: true, location_name: "weightedTargets"))
@@ -508,6 +520,10 @@ module Aws::AppMesh
508
520
  HttpRouteMatch.add_member(:scheme, Shapes::ShapeRef.new(shape: HttpScheme, location_name: "scheme"))
509
521
  HttpRouteMatch.struct_class = Types::HttpRouteMatch
510
522
 
523
+ HttpTimeout.add_member(:idle, Shapes::ShapeRef.new(shape: Duration, location_name: "idle"))
524
+ HttpTimeout.add_member(:per_request, Shapes::ShapeRef.new(shape: Duration, location_name: "perRequest"))
525
+ HttpTimeout.struct_class = Types::HttpTimeout
526
+
511
527
  InternalServerErrorException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
512
528
  InternalServerErrorException.struct_class = Types::InternalServerErrorException
513
529
 
@@ -574,9 +590,16 @@ module Aws::AppMesh
574
590
 
575
591
  Listener.add_member(:health_check, Shapes::ShapeRef.new(shape: HealthCheckPolicy, location_name: "healthCheck"))
576
592
  Listener.add_member(:port_mapping, Shapes::ShapeRef.new(shape: PortMapping, required: true, location_name: "portMapping"))
593
+ Listener.add_member(:timeout, Shapes::ShapeRef.new(shape: ListenerTimeout, location_name: "timeout"))
577
594
  Listener.add_member(:tls, Shapes::ShapeRef.new(shape: ListenerTls, location_name: "tls"))
578
595
  Listener.struct_class = Types::Listener
579
596
 
597
+ ListenerTimeout.add_member(:grpc, Shapes::ShapeRef.new(shape: GrpcTimeout, location_name: "grpc"))
598
+ ListenerTimeout.add_member(:http, Shapes::ShapeRef.new(shape: HttpTimeout, location_name: "http"))
599
+ ListenerTimeout.add_member(:http2, Shapes::ShapeRef.new(shape: HttpTimeout, location_name: "http2"))
600
+ ListenerTimeout.add_member(:tcp, Shapes::ShapeRef.new(shape: TcpTimeout, location_name: "tcp"))
601
+ ListenerTimeout.struct_class = Types::ListenerTimeout
602
+
580
603
  ListenerTls.add_member(:certificate, Shapes::ShapeRef.new(shape: ListenerTlsCertificate, required: true, location_name: "certificate"))
581
604
  ListenerTls.add_member(:mode, Shapes::ShapeRef.new(shape: ListenerTlsMode, required: true, location_name: "mode"))
582
605
  ListenerTls.struct_class = Types::ListenerTls
@@ -610,9 +633,12 @@ module Aws::AppMesh
610
633
  MeshList.member = Shapes::ShapeRef.new(shape: MeshRef)
611
634
 
612
635
  MeshRef.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "arn"))
636
+ MeshRef.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "createdAt"))
637
+ MeshRef.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "lastUpdatedAt"))
613
638
  MeshRef.add_member(:mesh_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "meshName"))
614
639
  MeshRef.add_member(:mesh_owner, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "meshOwner"))
615
640
  MeshRef.add_member(:resource_owner, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "resourceOwner"))
641
+ MeshRef.add_member(:version, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "version"))
616
642
  MeshRef.struct_class = Types::MeshRef
617
643
 
618
644
  MeshSpec.add_member(:egress_filter, Shapes::ShapeRef.new(shape: EgressFilter, location_name: "egressFilter"))
@@ -653,10 +679,13 @@ module Aws::AppMesh
653
679
  RouteList.member = Shapes::ShapeRef.new(shape: RouteRef)
654
680
 
655
681
  RouteRef.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "arn"))
682
+ RouteRef.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "createdAt"))
683
+ RouteRef.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "lastUpdatedAt"))
656
684
  RouteRef.add_member(:mesh_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "meshName"))
657
685
  RouteRef.add_member(:mesh_owner, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "meshOwner"))
658
686
  RouteRef.add_member(:resource_owner, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "resourceOwner"))
659
687
  RouteRef.add_member(:route_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "routeName"))
688
+ RouteRef.add_member(:version, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "version"))
660
689
  RouteRef.add_member(:virtual_router_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "virtualRouterName"))
661
690
  RouteRef.struct_class = Types::RouteRef
662
691
 
@@ -694,11 +723,15 @@ module Aws::AppMesh
694
723
  TcpRetryPolicyEvents.member = Shapes::ShapeRef.new(shape: TcpRetryPolicyEvent)
695
724
 
696
725
  TcpRoute.add_member(:action, Shapes::ShapeRef.new(shape: TcpRouteAction, required: true, location_name: "action"))
726
+ TcpRoute.add_member(:timeout, Shapes::ShapeRef.new(shape: TcpTimeout, location_name: "timeout"))
697
727
  TcpRoute.struct_class = Types::TcpRoute
698
728
 
699
729
  TcpRouteAction.add_member(:weighted_targets, Shapes::ShapeRef.new(shape: WeightedTargets, required: true, location_name: "weightedTargets"))
700
730
  TcpRouteAction.struct_class = Types::TcpRouteAction
701
731
 
732
+ TcpTimeout.add_member(:idle, Shapes::ShapeRef.new(shape: Duration, location_name: "idle"))
733
+ TcpTimeout.struct_class = Types::TcpTimeout
734
+
702
735
  TlsValidationContext.add_member(:trust, Shapes::ShapeRef.new(shape: TlsValidationContextTrust, required: true, location_name: "trust"))
703
736
  TlsValidationContext.struct_class = Types::TlsValidationContext
704
737
 
@@ -793,9 +826,12 @@ module Aws::AppMesh
793
826
  VirtualNodeList.member = Shapes::ShapeRef.new(shape: VirtualNodeRef)
794
827
 
795
828
  VirtualNodeRef.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "arn"))
829
+ VirtualNodeRef.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "createdAt"))
830
+ VirtualNodeRef.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "lastUpdatedAt"))
796
831
  VirtualNodeRef.add_member(:mesh_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "meshName"))
797
832
  VirtualNodeRef.add_member(:mesh_owner, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "meshOwner"))
798
833
  VirtualNodeRef.add_member(:resource_owner, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "resourceOwner"))
834
+ VirtualNodeRef.add_member(:version, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "version"))
799
835
  VirtualNodeRef.add_member(:virtual_node_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "virtualNodeName"))
800
836
  VirtualNodeRef.struct_class = Types::VirtualNodeRef
801
837
 
@@ -827,9 +863,12 @@ module Aws::AppMesh
827
863
  VirtualRouterListeners.member = Shapes::ShapeRef.new(shape: VirtualRouterListener)
828
864
 
829
865
  VirtualRouterRef.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "arn"))
866
+ VirtualRouterRef.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "createdAt"))
867
+ VirtualRouterRef.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "lastUpdatedAt"))
830
868
  VirtualRouterRef.add_member(:mesh_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "meshName"))
831
869
  VirtualRouterRef.add_member(:mesh_owner, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "meshOwner"))
832
870
  VirtualRouterRef.add_member(:resource_owner, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "resourceOwner"))
871
+ VirtualRouterRef.add_member(:version, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "version"))
833
872
  VirtualRouterRef.add_member(:virtual_router_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "virtualRouterName"))
834
873
  VirtualRouterRef.struct_class = Types::VirtualRouterRef
835
874
 
@@ -860,9 +899,12 @@ module Aws::AppMesh
860
899
  VirtualServiceProvider.struct_class = Types::VirtualServiceProvider
861
900
 
862
901
  VirtualServiceRef.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "arn"))
902
+ VirtualServiceRef.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "createdAt"))
903
+ VirtualServiceRef.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "lastUpdatedAt"))
863
904
  VirtualServiceRef.add_member(:mesh_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "meshName"))
864
905
  VirtualServiceRef.add_member(:mesh_owner, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "meshOwner"))
865
906
  VirtualServiceRef.add_member(:resource_owner, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "resourceOwner"))
907
+ VirtualServiceRef.add_member(:version, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "version"))
866
908
  VirtualServiceRef.add_member(:virtual_service_name, Shapes::ShapeRef.new(shape: ServiceName, required: true, location_name: "virtualServiceName"))
867
909
  VirtualServiceRef.struct_class = Types::VirtualServiceRef
868
910
 
@@ -1046,6 +1088,7 @@ module Aws::AppMesh
1046
1088
  o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
1047
1089
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1048
1090
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1091
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
1049
1092
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1050
1093
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1051
1094
  end)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -6,13 +8,7 @@
6
8
  # WARNING ABOUT GENERATED CODE
7
9
 
8
10
  module Aws::AppMesh
9
- # This class provides a resource oriented interface for AppMesh.
10
- # To create a resource object:
11
- # resource = Aws::AppMesh::Resource.new(region: 'us-west-2')
12
- # You can supply a client object with custom configuration that will be used for all resource operations.
13
- # If you do not pass +:client+, a default client will be constructed.
14
- # client = Aws::AppMesh::Client.new(region: 'us-west-2')
15
- # resource = Aws::AppMesh::Resource.new(client: client)
11
+
16
12
  class Resource
17
13
 
18
14
  # @param options ({})
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -175,7 +177,7 @@ module Aws::AppMesh
175
177
  # The AWS IAM account ID of the service mesh owner. If the account ID
176
178
  # is not your own, then it's the ID of the account that shared the
177
179
  # mesh with your account. For more information about mesh sharing, see
178
- # [Working with Shared Meshes][1].
180
+ # [Working with shared meshes][1].
179
181
  #
180
182
  #
181
183
  #
@@ -184,9 +186,9 @@ module Aws::AppMesh
184
186
  #
185
187
  # @!attribute [rw] resource_owner
186
188
  # The AWS IAM account ID of the resource owner. If the account ID is
187
- # not your own, then it's the ID of the mesh owner, or another
189
+ # not your own, then it's the ID of the mesh owner or of another
188
190
  # account that the mesh is shared with. For more information about
189
- # mesh sharing, see [Working with Shared Meshes][1].
191
+ # mesh sharing, see [Working with shared meshes][1].
190
192
  #
191
193
  #
192
194
  #
@@ -515,7 +517,7 @@ module Aws::AppMesh
515
517
  # The AWS IAM account ID of the service mesh owner. If the account ID
516
518
  # is not your own, then it's the ID of the account that shared the
517
519
  # mesh with your account. For more information about mesh sharing, see
518
- # [Working with Shared Meshes][1].
520
+ # [Working with shared meshes][1].
519
521
  #
520
522
  #
521
523
  #
@@ -774,7 +776,7 @@ module Aws::AppMesh
774
776
  # is not your own, then the account that you specify must share the
775
777
  # mesh with your account before you can create the resource in the
776
778
  # service mesh. For more information about mesh sharing, see [Working
777
- # with Shared Meshes][1].
779
+ # with shared meshes][1].
778
780
  #
779
781
  #
780
782
  #
@@ -979,6 +981,44 @@ module Aws::AppMesh
979
981
  # port: 1, # required
980
982
  # protocol: "grpc", # required, accepts grpc, http, http2, tcp
981
983
  # },
984
+ # timeout: {
985
+ # grpc: {
986
+ # idle: {
987
+ # unit: "ms", # accepts ms, s
988
+ # value: 1,
989
+ # },
990
+ # per_request: {
991
+ # unit: "ms", # accepts ms, s
992
+ # value: 1,
993
+ # },
994
+ # },
995
+ # http: {
996
+ # idle: {
997
+ # unit: "ms", # accepts ms, s
998
+ # value: 1,
999
+ # },
1000
+ # per_request: {
1001
+ # unit: "ms", # accepts ms, s
1002
+ # value: 1,
1003
+ # },
1004
+ # },
1005
+ # http2: {
1006
+ # idle: {
1007
+ # unit: "ms", # accepts ms, s
1008
+ # value: 1,
1009
+ # },
1010
+ # per_request: {
1011
+ # unit: "ms", # accepts ms, s
1012
+ # value: 1,
1013
+ # },
1014
+ # },
1015
+ # tcp: {
1016
+ # idle: {
1017
+ # unit: "ms", # accepts ms, s
1018
+ # value: 1,
1019
+ # },
1020
+ # },
1021
+ # },
982
1022
  # tls: {
983
1023
  # certificate: { # required
984
1024
  # acm: {
@@ -1087,6 +1127,70 @@ module Aws::AppMesh
1087
1127
  include Aws::Structure
1088
1128
  end
1089
1129
 
1130
+ # @note When making an API call, you may pass ListenerTimeout
1131
+ # data as a hash:
1132
+ #
1133
+ # {
1134
+ # grpc: {
1135
+ # idle: {
1136
+ # unit: "ms", # accepts ms, s
1137
+ # value: 1,
1138
+ # },
1139
+ # per_request: {
1140
+ # unit: "ms", # accepts ms, s
1141
+ # value: 1,
1142
+ # },
1143
+ # },
1144
+ # http: {
1145
+ # idle: {
1146
+ # unit: "ms", # accepts ms, s
1147
+ # value: 1,
1148
+ # },
1149
+ # per_request: {
1150
+ # unit: "ms", # accepts ms, s
1151
+ # value: 1,
1152
+ # },
1153
+ # },
1154
+ # http2: {
1155
+ # idle: {
1156
+ # unit: "ms", # accepts ms, s
1157
+ # value: 1,
1158
+ # },
1159
+ # per_request: {
1160
+ # unit: "ms", # accepts ms, s
1161
+ # value: 1,
1162
+ # },
1163
+ # },
1164
+ # tcp: {
1165
+ # idle: {
1166
+ # unit: "ms", # accepts ms, s
1167
+ # value: 1,
1168
+ # },
1169
+ # },
1170
+ # }
1171
+ #
1172
+ # @!attribute [rw] grpc
1173
+ # @return [Types::GrpcTimeout]
1174
+ #
1175
+ # @!attribute [rw] http
1176
+ # @return [Types::HttpTimeout]
1177
+ #
1178
+ # @!attribute [rw] http2
1179
+ # @return [Types::HttpTimeout]
1180
+ #
1181
+ # @!attribute [rw] tcp
1182
+ # @return [Types::TcpTimeout]
1183
+ #
1184
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTimeout AWS API Documentation
1185
+ #
1186
+ class ListenerTimeout < Struct.new(
1187
+ :grpc,
1188
+ :http,
1189
+ :http2,
1190
+ :tcp)
1191
+ include Aws::Structure
1192
+ end
1193
+
1090
1194
  # An object that represents a Transport Layer Security (TLS) validation
1091
1195
  # context trust.
1092
1196
  #
@@ -1203,6 +1307,16 @@ module Aws::AppMesh
1203
1307
  # The full Amazon Resource Name (ARN) for the route.
1204
1308
  # @return [String]
1205
1309
  #
1310
+ # @!attribute [rw] created_at
1311
+ # The Unix epoch timestamp in seconds for when the resource was
1312
+ # created.
1313
+ # @return [Time]
1314
+ #
1315
+ # @!attribute [rw] last_updated_at
1316
+ # The Unix epoch timestamp in seconds for when the resource was last
1317
+ # updated.
1318
+ # @return [Time]
1319
+ #
1206
1320
  # @!attribute [rw] mesh_name
1207
1321
  # The name of the service mesh that the route resides in.
1208
1322
  # @return [String]
@@ -1211,7 +1325,7 @@ module Aws::AppMesh
1211
1325
  # The AWS IAM account ID of the service mesh owner. If the account ID
1212
1326
  # is not your own, then it's the ID of the account that shared the
1213
1327
  # mesh with your account. For more information about mesh sharing, see
1214
- # [Working with Shared Meshes][1].
1328
+ # [Working with shared meshes][1].
1215
1329
  #
1216
1330
  #
1217
1331
  #
@@ -1220,9 +1334,9 @@ module Aws::AppMesh
1220
1334
  #
1221
1335
  # @!attribute [rw] resource_owner
1222
1336
  # The AWS IAM account ID of the resource owner. If the account ID is
1223
- # not your own, then it's the ID of the mesh owner, or another
1337
+ # not your own, then it's the ID of the mesh owner or of another
1224
1338
  # account that the mesh is shared with. For more information about
1225
- # mesh sharing, see [Working with Shared Meshes][1].
1339
+ # mesh sharing, see [Working with shared meshes][1].
1226
1340
  #
1227
1341
  #
1228
1342
  #
@@ -1233,6 +1347,11 @@ module Aws::AppMesh
1233
1347
  # The name of the route.
1234
1348
  # @return [String]
1235
1349
  #
1350
+ # @!attribute [rw] version
1351
+ # The version of the resource. Resources are created at version 1, and
1352
+ # this version is incremented each time that they're updated.
1353
+ # @return [Integer]
1354
+ #
1236
1355
  # @!attribute [rw] virtual_router_name
1237
1356
  # The virtual router that the route is associated with.
1238
1357
  # @return [String]
@@ -1241,10 +1360,13 @@ module Aws::AppMesh
1241
1360
  #
1242
1361
  class RouteRef < Struct.new(
1243
1362
  :arn,
1363
+ :created_at,
1364
+ :last_updated_at,
1244
1365
  :mesh_name,
1245
1366
  :mesh_owner,
1246
1367
  :resource_owner,
1247
1368
  :route_name,
1369
+ :version,
1248
1370
  :virtual_router_name)
1249
1371
  include Aws::Structure
1250
1372
  end
@@ -1266,7 +1388,7 @@ module Aws::AppMesh
1266
1388
  # The AWS IAM account ID of the service mesh owner. If the account ID
1267
1389
  # is not your own, then it's the ID of the account that shared the
1268
1390
  # mesh with your account. For more information about mesh sharing, see
1269
- # [Working with Shared Meshes][1].
1391
+ # [Working with shared meshes][1].
1270
1392
  #
1271
1393
  #
1272
1394
  #
@@ -1671,6 +1793,44 @@ module Aws::AppMesh
1671
1793
  # port: 1, # required
1672
1794
  # protocol: "grpc", # required, accepts grpc, http, http2, tcp
1673
1795
  # },
1796
+ # timeout: {
1797
+ # grpc: {
1798
+ # idle: {
1799
+ # unit: "ms", # accepts ms, s
1800
+ # value: 1,
1801
+ # },
1802
+ # per_request: {
1803
+ # unit: "ms", # accepts ms, s
1804
+ # value: 1,
1805
+ # },
1806
+ # },
1807
+ # http: {
1808
+ # idle: {
1809
+ # unit: "ms", # accepts ms, s
1810
+ # value: 1,
1811
+ # },
1812
+ # per_request: {
1813
+ # unit: "ms", # accepts ms, s
1814
+ # value: 1,
1815
+ # },
1816
+ # },
1817
+ # http2: {
1818
+ # idle: {
1819
+ # unit: "ms", # accepts ms, s
1820
+ # value: 1,
1821
+ # },
1822
+ # per_request: {
1823
+ # unit: "ms", # accepts ms, s
1824
+ # value: 1,
1825
+ # },
1826
+ # },
1827
+ # tcp: {
1828
+ # idle: {
1829
+ # unit: "ms", # accepts ms, s
1830
+ # value: 1,
1831
+ # },
1832
+ # },
1833
+ # },
1674
1834
  # tls: {
1675
1835
  # certificate: { # required
1676
1836
  # acm: {
@@ -1735,7 +1895,7 @@ module Aws::AppMesh
1735
1895
  # is not your own, then the account that you specify must share the
1736
1896
  # mesh with your account before you can create the resource in the
1737
1897
  # service mesh. For more information about mesh sharing, see [Working
1738
- # with Shared Meshes][1].
1898
+ # with shared meshes][1].
1739
1899
  #
1740
1900
  #
1741
1901
  #
@@ -1829,6 +1989,16 @@ module Aws::AppMesh
1829
1989
  # },
1830
1990
  # tcp_retry_events: ["connection-error"], # accepts connection-error
1831
1991
  # },
1992
+ # timeout: {
1993
+ # idle: {
1994
+ # unit: "ms", # accepts ms, s
1995
+ # value: 1,
1996
+ # },
1997
+ # per_request: {
1998
+ # unit: "ms", # accepts ms, s
1999
+ # value: 1,
2000
+ # },
2001
+ # },
1832
2002
  # },
1833
2003
  # http2_route: {
1834
2004
  # action: { # required
@@ -1869,6 +2039,16 @@ module Aws::AppMesh
1869
2039
  # },
1870
2040
  # tcp_retry_events: ["connection-error"], # accepts connection-error
1871
2041
  # },
2042
+ # timeout: {
2043
+ # idle: {
2044
+ # unit: "ms", # accepts ms, s
2045
+ # value: 1,
2046
+ # },
2047
+ # per_request: {
2048
+ # unit: "ms", # accepts ms, s
2049
+ # value: 1,
2050
+ # },
2051
+ # },
1872
2052
  # },
1873
2053
  # http_route: {
1874
2054
  # action: { # required
@@ -1909,6 +2089,16 @@ module Aws::AppMesh
1909
2089
  # },
1910
2090
  # tcp_retry_events: ["connection-error"], # accepts connection-error
1911
2091
  # },
2092
+ # timeout: {
2093
+ # idle: {
2094
+ # unit: "ms", # accepts ms, s
2095
+ # value: 1,
2096
+ # },
2097
+ # per_request: {
2098
+ # unit: "ms", # accepts ms, s
2099
+ # value: 1,
2100
+ # },
2101
+ # },
1912
2102
  # },
1913
2103
  # priority: 1,
1914
2104
  # tcp_route: {
@@ -1920,6 +2110,12 @@ module Aws::AppMesh
1920
2110
  # },
1921
2111
  # ],
1922
2112
  # },
2113
+ # timeout: {
2114
+ # idle: {
2115
+ # unit: "ms", # accepts ms, s
2116
+ # value: 1,
2117
+ # },
2118
+ # },
1923
2119
  # },
1924
2120
  # }
1925
2121
  #
@@ -2017,6 +2213,36 @@ module Aws::AppMesh
2017
2213
  include Aws::Structure
2018
2214
  end
2019
2215
 
2216
+ # @note When making an API call, you may pass HttpTimeout
2217
+ # data as a hash:
2218
+ #
2219
+ # {
2220
+ # idle: {
2221
+ # unit: "ms", # accepts ms, s
2222
+ # value: 1,
2223
+ # },
2224
+ # per_request: {
2225
+ # unit: "ms", # accepts ms, s
2226
+ # value: 1,
2227
+ # },
2228
+ # }
2229
+ #
2230
+ # @!attribute [rw] idle
2231
+ # An object that represents a duration of time.
2232
+ # @return [Types::Duration]
2233
+ #
2234
+ # @!attribute [rw] per_request
2235
+ # An object that represents a duration of time.
2236
+ # @return [Types::Duration]
2237
+ #
2238
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpTimeout AWS API Documentation
2239
+ #
2240
+ class HttpTimeout < Struct.new(
2241
+ :idle,
2242
+ :per_request)
2243
+ include Aws::Structure
2244
+ end
2245
+
2020
2246
  # @note When making an API call, you may pass DeleteVirtualServiceInput
2021
2247
  # data as a hash:
2022
2248
  #
@@ -2034,7 +2260,7 @@ module Aws::AppMesh
2034
2260
  # The AWS IAM account ID of the service mesh owner. If the account ID
2035
2261
  # is not your own, then it's the ID of the account that shared the
2036
2262
  # mesh with your account. For more information about mesh sharing, see
2037
- # [Working with Shared Meshes][1].
2263
+ # [Working with shared meshes][1].
2038
2264
  #
2039
2265
  #
2040
2266
  #
@@ -2169,6 +2395,44 @@ module Aws::AppMesh
2169
2395
  # port: 1, # required
2170
2396
  # protocol: "grpc", # required, accepts grpc, http, http2, tcp
2171
2397
  # },
2398
+ # timeout: {
2399
+ # grpc: {
2400
+ # idle: {
2401
+ # unit: "ms", # accepts ms, s
2402
+ # value: 1,
2403
+ # },
2404
+ # per_request: {
2405
+ # unit: "ms", # accepts ms, s
2406
+ # value: 1,
2407
+ # },
2408
+ # },
2409
+ # http: {
2410
+ # idle: {
2411
+ # unit: "ms", # accepts ms, s
2412
+ # value: 1,
2413
+ # },
2414
+ # per_request: {
2415
+ # unit: "ms", # accepts ms, s
2416
+ # value: 1,
2417
+ # },
2418
+ # },
2419
+ # http2: {
2420
+ # idle: {
2421
+ # unit: "ms", # accepts ms, s
2422
+ # value: 1,
2423
+ # },
2424
+ # per_request: {
2425
+ # unit: "ms", # accepts ms, s
2426
+ # value: 1,
2427
+ # },
2428
+ # },
2429
+ # tcp: {
2430
+ # idle: {
2431
+ # unit: "ms", # accepts ms, s
2432
+ # value: 1,
2433
+ # },
2434
+ # },
2435
+ # },
2172
2436
  # tls: {
2173
2437
  # certificate: { # required
2174
2438
  # acm: {
@@ -2226,7 +2490,7 @@ module Aws::AppMesh
2226
2490
  # The AWS IAM account ID of the service mesh owner. If the account ID
2227
2491
  # is not your own, then it's the ID of the account that shared the
2228
2492
  # mesh with your account. For more information about mesh sharing, see
2229
- # [Working with Shared Meshes][1].
2493
+ # [Working with shared meshes][1].
2230
2494
  #
2231
2495
  #
2232
2496
  #
@@ -2358,7 +2622,7 @@ module Aws::AppMesh
2358
2622
  # is not your own, then the account that you specify must share the
2359
2623
  # mesh with your account before you can create the resource in the
2360
2624
  # service mesh. For more information about mesh sharing, see [Working
2361
- # with Shared Meshes][1].
2625
+ # with shared meshes][1].
2362
2626
  #
2363
2627
  #
2364
2628
  #
@@ -2430,7 +2694,7 @@ module Aws::AppMesh
2430
2694
  # The AWS IAM account ID of the service mesh owner. If the account ID
2431
2695
  # is not your own, then it's the ID of the account that shared the
2432
2696
  # mesh with your account. For more information about mesh sharing, see
2433
- # [Working with Shared Meshes][1].
2697
+ # [Working with shared meshes][1].
2434
2698
  #
2435
2699
  #
2436
2700
  #
@@ -2539,7 +2803,7 @@ module Aws::AppMesh
2539
2803
  # The AWS IAM account ID of the service mesh owner. If the account ID
2540
2804
  # is not your own, then it's the ID of the account that shared the
2541
2805
  # mesh with your account. For more information about mesh sharing, see
2542
- # [Working with Shared Meshes][1].
2806
+ # [Working with shared meshes][1].
2543
2807
  #
2544
2808
  #
2545
2809
  #
@@ -2577,7 +2841,7 @@ module Aws::AppMesh
2577
2841
  # The AWS IAM account ID of the service mesh owner. If the account ID
2578
2842
  # is not your own, then it's the ID of the account that shared the
2579
2843
  # mesh with your account. For more information about mesh sharing, see
2580
- # [Working with Shared Meshes][1].
2844
+ # [Working with shared meshes][1].
2581
2845
  #
2582
2846
  #
2583
2847
  #
@@ -2650,7 +2914,7 @@ module Aws::AppMesh
2650
2914
  # The AWS IAM account ID of the service mesh owner. If the account ID
2651
2915
  # is not your own, then it's the ID of the account that shared the
2652
2916
  # mesh with your account. For more information about mesh sharing, see
2653
- # [Working with Shared Meshes][1].
2917
+ # [Working with shared meshes][1].
2654
2918
  #
2655
2919
  #
2656
2920
  #
@@ -2744,7 +3008,7 @@ module Aws::AppMesh
2744
3008
  # The AWS IAM account ID of the service mesh owner. If the account ID
2745
3009
  # is not your own, then it's the ID of the account that shared the
2746
3010
  # mesh with your account. For more information about mesh sharing, see
2747
- # [Working with Shared Meshes][1].
3011
+ # [Working with shared meshes][1].
2748
3012
  #
2749
3013
  #
2750
3014
  #
@@ -2780,6 +3044,16 @@ module Aws::AppMesh
2780
3044
  # The full Amazon Resource Name (ARN) for the virtual service.
2781
3045
  # @return [String]
2782
3046
  #
3047
+ # @!attribute [rw] created_at
3048
+ # The Unix epoch timestamp in seconds for when the resource was
3049
+ # created.
3050
+ # @return [Time]
3051
+ #
3052
+ # @!attribute [rw] last_updated_at
3053
+ # The Unix epoch timestamp in seconds for when the resource was last
3054
+ # updated.
3055
+ # @return [Time]
3056
+ #
2783
3057
  # @!attribute [rw] mesh_name
2784
3058
  # The name of the service mesh that the virtual service resides in.
2785
3059
  # @return [String]
@@ -2788,7 +3062,7 @@ module Aws::AppMesh
2788
3062
  # The AWS IAM account ID of the service mesh owner. If the account ID
2789
3063
  # is not your own, then it's the ID of the account that shared the
2790
3064
  # mesh with your account. For more information about mesh sharing, see
2791
- # [Working with Shared Meshes][1].
3065
+ # [Working with shared meshes][1].
2792
3066
  #
2793
3067
  #
2794
3068
  #
@@ -2797,15 +3071,20 @@ module Aws::AppMesh
2797
3071
  #
2798
3072
  # @!attribute [rw] resource_owner
2799
3073
  # The AWS IAM account ID of the resource owner. If the account ID is
2800
- # not your own, then it's the ID of the mesh owner, or another
3074
+ # not your own, then it's the ID of the mesh owner or of another
2801
3075
  # account that the mesh is shared with. For more information about
2802
- # mesh sharing, see [Working with Shared Meshes][1].
3076
+ # mesh sharing, see [Working with shared meshes][1].
2803
3077
  #
2804
3078
  #
2805
3079
  #
2806
3080
  # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2807
3081
  # @return [String]
2808
3082
  #
3083
+ # @!attribute [rw] version
3084
+ # The version of the resource. Resources are created at version 1, and
3085
+ # this version is incremented each time that they're updated.
3086
+ # @return [Integer]
3087
+ #
2809
3088
  # @!attribute [rw] virtual_service_name
2810
3089
  # The name of the virtual service.
2811
3090
  # @return [String]
@@ -2814,13 +3093,46 @@ module Aws::AppMesh
2814
3093
  #
2815
3094
  class VirtualServiceRef < Struct.new(
2816
3095
  :arn,
3096
+ :created_at,
3097
+ :last_updated_at,
2817
3098
  :mesh_name,
2818
3099
  :mesh_owner,
2819
3100
  :resource_owner,
3101
+ :version,
2820
3102
  :virtual_service_name)
2821
3103
  include Aws::Structure
2822
3104
  end
2823
3105
 
3106
+ # @note When making an API call, you may pass GrpcTimeout
3107
+ # data as a hash:
3108
+ #
3109
+ # {
3110
+ # idle: {
3111
+ # unit: "ms", # accepts ms, s
3112
+ # value: 1,
3113
+ # },
3114
+ # per_request: {
3115
+ # unit: "ms", # accepts ms, s
3116
+ # value: 1,
3117
+ # },
3118
+ # }
3119
+ #
3120
+ # @!attribute [rw] idle
3121
+ # An object that represents a duration of time.
3122
+ # @return [Types::Duration]
3123
+ #
3124
+ # @!attribute [rw] per_request
3125
+ # An object that represents a duration of time.
3126
+ # @return [Types::Duration]
3127
+ #
3128
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcTimeout AWS API Documentation
3129
+ #
3130
+ class GrpcTimeout < Struct.new(
3131
+ :idle,
3132
+ :per_request)
3133
+ include Aws::Structure
3134
+ end
3135
+
2824
3136
  # An object that represents the current status of the virtual node.
2825
3137
  #
2826
3138
  # @!attribute [rw] status
@@ -2841,6 +3153,16 @@ module Aws::AppMesh
2841
3153
  # The full Amazon Resource Name (ARN) for the virtual router.
2842
3154
  # @return [String]
2843
3155
  #
3156
+ # @!attribute [rw] created_at
3157
+ # The Unix epoch timestamp in seconds for when the resource was
3158
+ # created.
3159
+ # @return [Time]
3160
+ #
3161
+ # @!attribute [rw] last_updated_at
3162
+ # The Unix epoch timestamp in seconds for when the resource was last
3163
+ # updated.
3164
+ # @return [Time]
3165
+ #
2844
3166
  # @!attribute [rw] mesh_name
2845
3167
  # The name of the service mesh that the virtual router resides in.
2846
3168
  # @return [String]
@@ -2849,7 +3171,7 @@ module Aws::AppMesh
2849
3171
  # The AWS IAM account ID of the service mesh owner. If the account ID
2850
3172
  # is not your own, then it's the ID of the account that shared the
2851
3173
  # mesh with your account. For more information about mesh sharing, see
2852
- # [Working with Shared Meshes][1].
3174
+ # [Working with shared meshes][1].
2853
3175
  #
2854
3176
  #
2855
3177
  #
@@ -2858,15 +3180,20 @@ module Aws::AppMesh
2858
3180
  #
2859
3181
  # @!attribute [rw] resource_owner
2860
3182
  # The AWS IAM account ID of the resource owner. If the account ID is
2861
- # not your own, then it's the ID of the mesh owner, or another
3183
+ # not your own, then it's the ID of the mesh owner or of another
2862
3184
  # account that the mesh is shared with. For more information about
2863
- # mesh sharing, see [Working with Shared Meshes][1].
3185
+ # mesh sharing, see [Working with shared meshes][1].
2864
3186
  #
2865
3187
  #
2866
3188
  #
2867
3189
  # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2868
3190
  # @return [String]
2869
3191
  #
3192
+ # @!attribute [rw] version
3193
+ # The version of the resource. Resources are created at version 1, and
3194
+ # this version is incremented each time that they're updated.
3195
+ # @return [Integer]
3196
+ #
2870
3197
  # @!attribute [rw] virtual_router_name
2871
3198
  # The name of the virtual router.
2872
3199
  # @return [String]
@@ -2875,9 +3202,12 @@ module Aws::AppMesh
2875
3202
  #
2876
3203
  class VirtualRouterRef < Struct.new(
2877
3204
  :arn,
3205
+ :created_at,
3206
+ :last_updated_at,
2878
3207
  :mesh_name,
2879
3208
  :mesh_owner,
2880
3209
  :resource_owner,
3210
+ :version,
2881
3211
  :virtual_router_name)
2882
3212
  include Aws::Structure
2883
3213
  end
@@ -2965,6 +3295,16 @@ module Aws::AppMesh
2965
3295
  # The full Amazon Resource Name (ARN) for the virtual node.
2966
3296
  # @return [String]
2967
3297
  #
3298
+ # @!attribute [rw] created_at
3299
+ # The Unix epoch timestamp in seconds for when the resource was
3300
+ # created.
3301
+ # @return [Time]
3302
+ #
3303
+ # @!attribute [rw] last_updated_at
3304
+ # The Unix epoch timestamp in seconds for when the resource was last
3305
+ # updated.
3306
+ # @return [Time]
3307
+ #
2968
3308
  # @!attribute [rw] mesh_name
2969
3309
  # The name of the service mesh that the virtual node resides in.
2970
3310
  # @return [String]
@@ -2973,7 +3313,7 @@ module Aws::AppMesh
2973
3313
  # The AWS IAM account ID of the service mesh owner. If the account ID
2974
3314
  # is not your own, then it's the ID of the account that shared the
2975
3315
  # mesh with your account. For more information about mesh sharing, see
2976
- # [Working with Shared Meshes][1].
3316
+ # [Working with shared meshes][1].
2977
3317
  #
2978
3318
  #
2979
3319
  #
@@ -2982,15 +3322,20 @@ module Aws::AppMesh
2982
3322
  #
2983
3323
  # @!attribute [rw] resource_owner
2984
3324
  # The AWS IAM account ID of the resource owner. If the account ID is
2985
- # not your own, then it's the ID of the mesh owner, or another
3325
+ # not your own, then it's the ID of the mesh owner or of another
2986
3326
  # account that the mesh is shared with. For more information about
2987
- # mesh sharing, see [Working with Shared Meshes][1].
3327
+ # mesh sharing, see [Working with shared meshes][1].
2988
3328
  #
2989
3329
  #
2990
3330
  #
2991
3331
  # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2992
3332
  # @return [String]
2993
3333
  #
3334
+ # @!attribute [rw] version
3335
+ # The version of the resource. Resources are created at version 1, and
3336
+ # this version is incremented each time that they're updated.
3337
+ # @return [Integer]
3338
+ #
2994
3339
  # @!attribute [rw] virtual_node_name
2995
3340
  # The name of the virtual node.
2996
3341
  # @return [String]
@@ -2999,9 +3344,12 @@ module Aws::AppMesh
2999
3344
  #
3000
3345
  class VirtualNodeRef < Struct.new(
3001
3346
  :arn,
3347
+ :created_at,
3348
+ :last_updated_at,
3002
3349
  :mesh_name,
3003
3350
  :mesh_owner,
3004
3351
  :resource_owner,
3352
+ :version,
3005
3353
  :virtual_node_name)
3006
3354
  include Aws::Structure
3007
3355
  end
@@ -3091,7 +3439,7 @@ module Aws::AppMesh
3091
3439
  #
3092
3440
  #
3093
3441
  #
3094
- # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/service_limits.html
3442
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html
3095
3443
  #
3096
3444
  # @!attribute [rw] message
3097
3445
  # @return [String]
@@ -3181,7 +3529,7 @@ module Aws::AppMesh
3181
3529
  # The AWS IAM account ID of the service mesh owner. If the account ID
3182
3530
  # is not your own, then it's the ID of the account that shared the
3183
3531
  # mesh with your account. For more information about mesh sharing, see
3184
- # [Working with Shared Meshes][1].
3532
+ # [Working with shared meshes][1].
3185
3533
  #
3186
3534
  #
3187
3535
  #
@@ -3303,16 +3651,26 @@ module Aws::AppMesh
3303
3651
  # },
3304
3652
  # ],
3305
3653
  # },
3654
+ # timeout: {
3655
+ # idle: {
3656
+ # unit: "ms", # accepts ms, s
3657
+ # value: 1,
3658
+ # },
3659
+ # },
3306
3660
  # }
3307
3661
  #
3308
3662
  # @!attribute [rw] action
3309
3663
  # The action to take if a match is determined.
3310
3664
  # @return [Types::TcpRouteAction]
3311
3665
  #
3666
+ # @!attribute [rw] timeout
3667
+ # @return [Types::TcpTimeout]
3668
+ #
3312
3669
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TcpRoute AWS API Documentation
3313
3670
  #
3314
3671
  class TcpRoute < Struct.new(
3315
- :action)
3672
+ :action,
3673
+ :timeout)
3316
3674
  include Aws::Structure
3317
3675
  end
3318
3676
 
@@ -3345,7 +3703,7 @@ module Aws::AppMesh
3345
3703
  # The AWS IAM account ID of the service mesh owner. If the account ID
3346
3704
  # is not your own, then it's the ID of the account that shared the
3347
3705
  # mesh with your account. For more information about mesh sharing, see
3348
- # [Working with Shared Meshes][1].
3706
+ # [Working with shared meshes][1].
3349
3707
  #
3350
3708
  #
3351
3709
  #
@@ -3398,7 +3756,7 @@ module Aws::AppMesh
3398
3756
  # The AWS IAM account ID of the service mesh owner. If the account ID
3399
3757
  # is not your own, then it's the ID of the account that shared the
3400
3758
  # mesh with your account. For more information about mesh sharing, see
3401
- # [Working with Shared Meshes][1].
3759
+ # [Working with shared meshes][1].
3402
3760
  #
3403
3761
  #
3404
3762
  #
@@ -3474,7 +3832,7 @@ module Aws::AppMesh
3474
3832
  # The AWS IAM account ID of the service mesh owner. If the account ID
3475
3833
  # is not your own, then it's the ID of the account that shared the
3476
3834
  # mesh with your account. For more information about mesh sharing, see
3477
- # [Working with Shared Meshes][1].
3835
+ # [Working with shared meshes][1].
3478
3836
  #
3479
3837
  #
3480
3838
  #
@@ -3647,6 +4005,16 @@ module Aws::AppMesh
3647
4005
  # The full Amazon Resource Name (ARN) of the service mesh.
3648
4006
  # @return [String]
3649
4007
  #
4008
+ # @!attribute [rw] created_at
4009
+ # The Unix epoch timestamp in seconds for when the resource was
4010
+ # created.
4011
+ # @return [Time]
4012
+ #
4013
+ # @!attribute [rw] last_updated_at
4014
+ # The Unix epoch timestamp in seconds for when the resource was last
4015
+ # updated.
4016
+ # @return [Time]
4017
+ #
3650
4018
  # @!attribute [rw] mesh_name
3651
4019
  # The name of the service mesh.
3652
4020
  # @return [String]
@@ -3655,7 +4023,7 @@ module Aws::AppMesh
3655
4023
  # The AWS IAM account ID of the service mesh owner. If the account ID
3656
4024
  # is not your own, then it's the ID of the account that shared the
3657
4025
  # mesh with your account. For more information about mesh sharing, see
3658
- # [Working with Shared Meshes][1].
4026
+ # [Working with shared meshes][1].
3659
4027
  #
3660
4028
  #
3661
4029
  #
@@ -3664,22 +4032,30 @@ module Aws::AppMesh
3664
4032
  #
3665
4033
  # @!attribute [rw] resource_owner
3666
4034
  # The AWS IAM account ID of the resource owner. If the account ID is
3667
- # not your own, then it's the ID of the mesh owner, or another
4035
+ # not your own, then it's the ID of the mesh owner or of another
3668
4036
  # account that the mesh is shared with. For more information about
3669
- # mesh sharing, see [Working with Shared Meshes][1].
4037
+ # mesh sharing, see [Working with shared meshes][1].
3670
4038
  #
3671
4039
  #
3672
4040
  #
3673
4041
  # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
3674
4042
  # @return [String]
3675
4043
  #
4044
+ # @!attribute [rw] version
4045
+ # The version of the resource. Resources are created at version 1, and
4046
+ # this version is incremented each time that they're updated.
4047
+ # @return [Integer]
4048
+ #
3676
4049
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/MeshRef AWS API Documentation
3677
4050
  #
3678
4051
  class MeshRef < Struct.new(
3679
4052
  :arn,
4053
+ :created_at,
4054
+ :last_updated_at,
3680
4055
  :mesh_name,
3681
4056
  :mesh_owner,
3682
- :resource_owner)
4057
+ :resource_owner,
4058
+ :version)
3683
4059
  include Aws::Structure
3684
4060
  end
3685
4061
 
@@ -3768,7 +4144,7 @@ module Aws::AppMesh
3768
4144
  # The AWS IAM account ID of the service mesh owner. If the account ID
3769
4145
  # is not your own, then it's the ID of the account that shared the
3770
4146
  # mesh with your account. For more information about mesh sharing, see
3771
- # [Working with Shared Meshes][1].
4147
+ # [Working with shared meshes][1].
3772
4148
  #
3773
4149
  #
3774
4150
  #
@@ -3820,6 +4196,44 @@ module Aws::AppMesh
3820
4196
  # port: 1, # required
3821
4197
  # protocol: "grpc", # required, accepts grpc, http, http2, tcp
3822
4198
  # },
4199
+ # timeout: {
4200
+ # grpc: {
4201
+ # idle: {
4202
+ # unit: "ms", # accepts ms, s
4203
+ # value: 1,
4204
+ # },
4205
+ # per_request: {
4206
+ # unit: "ms", # accepts ms, s
4207
+ # value: 1,
4208
+ # },
4209
+ # },
4210
+ # http: {
4211
+ # idle: {
4212
+ # unit: "ms", # accepts ms, s
4213
+ # value: 1,
4214
+ # },
4215
+ # per_request: {
4216
+ # unit: "ms", # accepts ms, s
4217
+ # value: 1,
4218
+ # },
4219
+ # },
4220
+ # http2: {
4221
+ # idle: {
4222
+ # unit: "ms", # accepts ms, s
4223
+ # value: 1,
4224
+ # },
4225
+ # per_request: {
4226
+ # unit: "ms", # accepts ms, s
4227
+ # value: 1,
4228
+ # },
4229
+ # },
4230
+ # tcp: {
4231
+ # idle: {
4232
+ # unit: "ms", # accepts ms, s
4233
+ # value: 1,
4234
+ # },
4235
+ # },
4236
+ # },
3823
4237
  # tls: {
3824
4238
  # certificate: { # required
3825
4239
  # acm: {
@@ -3842,6 +4256,9 @@ module Aws::AppMesh
3842
4256
  # The port mapping information for the listener.
3843
4257
  # @return [Types::PortMapping]
3844
4258
  #
4259
+ # @!attribute [rw] timeout
4260
+ # @return [Types::ListenerTimeout]
4261
+ #
3845
4262
  # @!attribute [rw] tls
3846
4263
  # A reference to an object that represents the Transport Layer
3847
4264
  # Security (TLS) properties for a listener.
@@ -3852,6 +4269,7 @@ module Aws::AppMesh
3852
4269
  class Listener < Struct.new(
3853
4270
  :health_check,
3854
4271
  :port_mapping,
4272
+ :timeout,
3855
4273
  :tls)
3856
4274
  include Aws::Structure
3857
4275
  end
@@ -3900,6 +4318,16 @@ module Aws::AppMesh
3900
4318
  # },
3901
4319
  # tcp_retry_events: ["connection-error"], # accepts connection-error
3902
4320
  # },
4321
+ # timeout: {
4322
+ # idle: {
4323
+ # unit: "ms", # accepts ms, s
4324
+ # value: 1,
4325
+ # },
4326
+ # per_request: {
4327
+ # unit: "ms", # accepts ms, s
4328
+ # value: 1,
4329
+ # },
4330
+ # },
3903
4331
  # }
3904
4332
  #
3905
4333
  # @!attribute [rw] action
@@ -3916,12 +4344,16 @@ module Aws::AppMesh
3916
4344
  # An object that represents a retry policy.
3917
4345
  # @return [Types::GrpcRetryPolicy]
3918
4346
  #
4347
+ # @!attribute [rw] timeout
4348
+ # @return [Types::GrpcTimeout]
4349
+ #
3919
4350
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcRoute AWS API Documentation
3920
4351
  #
3921
4352
  class GrpcRoute < Struct.new(
3922
4353
  :action,
3923
4354
  :match,
3924
- :retry_policy)
4355
+ :retry_policy,
4356
+ :timeout)
3925
4357
  include Aws::Structure
3926
4358
  end
3927
4359
 
@@ -3952,7 +4384,7 @@ module Aws::AppMesh
3952
4384
  # @return [Boolean]
3953
4385
  #
3954
4386
  # @!attribute [rw] ports
3955
- # The range of ports that the policy is enforced for.
4387
+ # One or more ports that the policy is enforced for.
3956
4388
  # @return [Array<Integer>]
3957
4389
  #
3958
4390
  # @!attribute [rw] validation
@@ -4041,7 +4473,7 @@ module Aws::AppMesh
4041
4473
  #
4042
4474
  #
4043
4475
  #
4044
- # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual-node-tls.html#virtual-node-tls-prerequisites
4476
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites
4045
4477
  #
4046
4478
  # @note When making an API call, you may pass ListenerTlsFileCertificate
4047
4479
  # data as a hash:
@@ -4137,7 +4569,7 @@ module Aws::AppMesh
4137
4569
  # The AWS IAM account ID of the service mesh owner. If the account ID
4138
4570
  # is not your own, then it's the ID of the account that shared the
4139
4571
  # mesh with your account. For more information about mesh sharing, see
4140
- # [Working with Shared Meshes][1].
4572
+ # [Working with shared meshes][1].
4141
4573
  #
4142
4574
  #
4143
4575
  #
@@ -4288,6 +4720,16 @@ module Aws::AppMesh
4288
4720
  # },
4289
4721
  # tcp_retry_events: ["connection-error"], # accepts connection-error
4290
4722
  # },
4723
+ # timeout: {
4724
+ # idle: {
4725
+ # unit: "ms", # accepts ms, s
4726
+ # value: 1,
4727
+ # },
4728
+ # per_request: {
4729
+ # unit: "ms", # accepts ms, s
4730
+ # value: 1,
4731
+ # },
4732
+ # },
4291
4733
  # },
4292
4734
  # http2_route: {
4293
4735
  # action: { # required
@@ -4328,6 +4770,16 @@ module Aws::AppMesh
4328
4770
  # },
4329
4771
  # tcp_retry_events: ["connection-error"], # accepts connection-error
4330
4772
  # },
4773
+ # timeout: {
4774
+ # idle: {
4775
+ # unit: "ms", # accepts ms, s
4776
+ # value: 1,
4777
+ # },
4778
+ # per_request: {
4779
+ # unit: "ms", # accepts ms, s
4780
+ # value: 1,
4781
+ # },
4782
+ # },
4331
4783
  # },
4332
4784
  # http_route: {
4333
4785
  # action: { # required
@@ -4368,6 +4820,16 @@ module Aws::AppMesh
4368
4820
  # },
4369
4821
  # tcp_retry_events: ["connection-error"], # accepts connection-error
4370
4822
  # },
4823
+ # timeout: {
4824
+ # idle: {
4825
+ # unit: "ms", # accepts ms, s
4826
+ # value: 1,
4827
+ # },
4828
+ # per_request: {
4829
+ # unit: "ms", # accepts ms, s
4830
+ # value: 1,
4831
+ # },
4832
+ # },
4371
4833
  # },
4372
4834
  # priority: 1,
4373
4835
  # tcp_route: {
@@ -4379,6 +4841,12 @@ module Aws::AppMesh
4379
4841
  # },
4380
4842
  # ],
4381
4843
  # },
4844
+ # timeout: {
4845
+ # idle: {
4846
+ # unit: "ms", # accepts ms, s
4847
+ # value: 1,
4848
+ # },
4849
+ # },
4382
4850
  # },
4383
4851
  # },
4384
4852
  # tags: [
@@ -4408,7 +4876,7 @@ module Aws::AppMesh
4408
4876
  # is not your own, then the account that you specify must share the
4409
4877
  # mesh with your account before you can create the resource in the
4410
4878
  # service mesh. For more information about mesh sharing, see [Working
4411
- # with Shared Meshes][1].
4879
+ # with shared meshes][1].
4412
4880
  #
4413
4881
  #
4414
4882
  #
@@ -4450,6 +4918,27 @@ module Aws::AppMesh
4450
4918
  include Aws::Structure
4451
4919
  end
4452
4920
 
4921
+ # @note When making an API call, you may pass TcpTimeout
4922
+ # data as a hash:
4923
+ #
4924
+ # {
4925
+ # idle: {
4926
+ # unit: "ms", # accepts ms, s
4927
+ # value: 1,
4928
+ # },
4929
+ # }
4930
+ #
4931
+ # @!attribute [rw] idle
4932
+ # An object that represents a duration of time.
4933
+ # @return [Types::Duration]
4934
+ #
4935
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TcpTimeout AWS API Documentation
4936
+ #
4937
+ class TcpTimeout < Struct.new(
4938
+ :idle)
4939
+ include Aws::Structure
4940
+ end
4941
+
4453
4942
  # @note When making an API call, you may pass UpdateRouteInput
4454
4943
  # data as a hash:
4455
4944
  #
@@ -4498,6 +4987,16 @@ module Aws::AppMesh
4498
4987
  # },
4499
4988
  # tcp_retry_events: ["connection-error"], # accepts connection-error
4500
4989
  # },
4990
+ # timeout: {
4991
+ # idle: {
4992
+ # unit: "ms", # accepts ms, s
4993
+ # value: 1,
4994
+ # },
4995
+ # per_request: {
4996
+ # unit: "ms", # accepts ms, s
4997
+ # value: 1,
4998
+ # },
4999
+ # },
4501
5000
  # },
4502
5001
  # http2_route: {
4503
5002
  # action: { # required
@@ -4538,6 +5037,16 @@ module Aws::AppMesh
4538
5037
  # },
4539
5038
  # tcp_retry_events: ["connection-error"], # accepts connection-error
4540
5039
  # },
5040
+ # timeout: {
5041
+ # idle: {
5042
+ # unit: "ms", # accepts ms, s
5043
+ # value: 1,
5044
+ # },
5045
+ # per_request: {
5046
+ # unit: "ms", # accepts ms, s
5047
+ # value: 1,
5048
+ # },
5049
+ # },
4541
5050
  # },
4542
5051
  # http_route: {
4543
5052
  # action: { # required
@@ -4578,6 +5087,16 @@ module Aws::AppMesh
4578
5087
  # },
4579
5088
  # tcp_retry_events: ["connection-error"], # accepts connection-error
4580
5089
  # },
5090
+ # timeout: {
5091
+ # idle: {
5092
+ # unit: "ms", # accepts ms, s
5093
+ # value: 1,
5094
+ # },
5095
+ # per_request: {
5096
+ # unit: "ms", # accepts ms, s
5097
+ # value: 1,
5098
+ # },
5099
+ # },
4581
5100
  # },
4582
5101
  # priority: 1,
4583
5102
  # tcp_route: {
@@ -4589,6 +5108,12 @@ module Aws::AppMesh
4589
5108
  # },
4590
5109
  # ],
4591
5110
  # },
5111
+ # timeout: {
5112
+ # idle: {
5113
+ # unit: "ms", # accepts ms, s
5114
+ # value: 1,
5115
+ # },
5116
+ # },
4592
5117
  # },
4593
5118
  # },
4594
5119
  # virtual_router_name: "ResourceName", # required
@@ -4611,7 +5136,7 @@ module Aws::AppMesh
4611
5136
  # The AWS IAM account ID of the service mesh owner. If the account ID
4612
5137
  # is not your own, then it's the ID of the account that shared the
4613
5138
  # mesh with your account. For more information about mesh sharing, see
4614
- # [Working with Shared Meshes][1].
5139
+ # [Working with shared meshes][1].
4615
5140
  #
4616
5141
  #
4617
5142
  #
@@ -4687,6 +5212,16 @@ module Aws::AppMesh
4687
5212
  # },
4688
5213
  # tcp_retry_events: ["connection-error"], # accepts connection-error
4689
5214
  # },
5215
+ # timeout: {
5216
+ # idle: {
5217
+ # unit: "ms", # accepts ms, s
5218
+ # value: 1,
5219
+ # },
5220
+ # per_request: {
5221
+ # unit: "ms", # accepts ms, s
5222
+ # value: 1,
5223
+ # },
5224
+ # },
4690
5225
  # }
4691
5226
  #
4692
5227
  # @!attribute [rw] action
@@ -4703,12 +5238,16 @@ module Aws::AppMesh
4703
5238
  # An object that represents a retry policy.
4704
5239
  # @return [Types::HttpRetryPolicy]
4705
5240
  #
5241
+ # @!attribute [rw] timeout
5242
+ # @return [Types::HttpTimeout]
5243
+ #
4706
5244
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpRoute AWS API Documentation
4707
5245
  #
4708
5246
  class HttpRoute < Struct.new(
4709
5247
  :action,
4710
5248
  :match,
4711
- :retry_policy)
5249
+ :retry_policy,
5250
+ :timeout)
4712
5251
  include Aws::Structure
4713
5252
  end
4714
5253
 
@@ -4728,7 +5267,7 @@ module Aws::AppMesh
4728
5267
  # The AWS IAM account ID of the service mesh owner. If the account ID
4729
5268
  # is not your own, then it's the ID of the account that shared the
4730
5269
  # mesh with your account. For more information about mesh sharing, see
4731
- # [Working with Shared Meshes][1].
5270
+ # [Working with shared meshes][1].
4732
5271
  #
4733
5272
  #
4734
5273
  #
@@ -4884,7 +5423,7 @@ module Aws::AppMesh
4884
5423
  #
4885
5424
  #
4886
5425
  #
4887
- # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual-node-tls.html#virtual-node-tls-prerequisites
5426
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites
4888
5427
  # @return [String]
4889
5428
  #
4890
5429
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTlsAcmCertificate AWS API Documentation