aws-sdk-appmesh 1.26.0 → 1.31.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -30,6 +30,7 @@ module Aws::AppMesh
30
30
  #
31
31
  class VirtualRouterListener < Struct.new(
32
32
  :port_mapping)
33
+ SENSITIVE = []
33
34
  include Aws::Structure
34
35
  end
35
36
 
@@ -88,6 +89,7 @@ module Aws::AppMesh
88
89
  :max_retries,
89
90
  :per_retry_timeout,
90
91
  :tcp_retry_events)
92
+ SENSITIVE = []
91
93
  include Aws::Structure
92
94
  end
93
95
 
@@ -99,6 +101,7 @@ module Aws::AppMesh
99
101
  #
100
102
  class CreateVirtualNodeOutput < Struct.new(
101
103
  :virtual_node)
104
+ SENSITIVE = []
102
105
  include Aws::Structure
103
106
  end
104
107
 
@@ -123,6 +126,7 @@ module Aws::AppMesh
123
126
  #
124
127
  class Logging < Struct.new(
125
128
  :access_log)
129
+ SENSITIVE = []
126
130
  include Aws::Structure
127
131
  end
128
132
 
@@ -134,6 +138,7 @@ module Aws::AppMesh
134
138
  #
135
139
  class UpdateVirtualRouterOutput < Struct.new(
136
140
  :virtual_router)
141
+ SENSITIVE = []
137
142
  include Aws::Structure
138
143
  end
139
144
 
@@ -154,6 +159,244 @@ module Aws::AppMesh
154
159
  class ListVirtualRoutersOutput < Struct.new(
155
160
  :next_token,
156
161
  :virtual_routers)
162
+ SENSITIVE = []
163
+ include Aws::Structure
164
+ end
165
+
166
+ # @note When making an API call, you may pass CreateVirtualGatewayInput
167
+ # data as a hash:
168
+ #
169
+ # {
170
+ # client_token: "String",
171
+ # mesh_name: "ResourceName", # required
172
+ # mesh_owner: "AccountId",
173
+ # spec: { # required
174
+ # backend_defaults: {
175
+ # client_policy: {
176
+ # tls: {
177
+ # enforce: false,
178
+ # ports: [1],
179
+ # validation: { # required
180
+ # trust: { # required
181
+ # acm: {
182
+ # certificate_authority_arns: ["Arn"], # required
183
+ # },
184
+ # file: {
185
+ # certificate_chain: "FilePath", # required
186
+ # },
187
+ # },
188
+ # },
189
+ # },
190
+ # },
191
+ # },
192
+ # listeners: [ # required
193
+ # {
194
+ # health_check: {
195
+ # healthy_threshold: 1, # required
196
+ # interval_millis: 1, # required
197
+ # path: "String",
198
+ # port: 1,
199
+ # protocol: "grpc", # required, accepts grpc, http, http2
200
+ # timeout_millis: 1, # required
201
+ # unhealthy_threshold: 1, # required
202
+ # },
203
+ # port_mapping: { # required
204
+ # port: 1, # required
205
+ # protocol: "grpc", # required, accepts grpc, http, http2
206
+ # },
207
+ # tls: {
208
+ # certificate: { # required
209
+ # acm: {
210
+ # certificate_arn: "Arn", # required
211
+ # },
212
+ # file: {
213
+ # certificate_chain: "FilePath", # required
214
+ # private_key: "FilePath", # required
215
+ # },
216
+ # },
217
+ # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
218
+ # },
219
+ # },
220
+ # ],
221
+ # logging: {
222
+ # access_log: {
223
+ # file: {
224
+ # path: "FilePath", # required
225
+ # },
226
+ # },
227
+ # },
228
+ # },
229
+ # tags: [
230
+ # {
231
+ # key: "TagKey", # required
232
+ # value: "TagValue",
233
+ # },
234
+ # ],
235
+ # virtual_gateway_name: "ResourceName", # required
236
+ # }
237
+ #
238
+ # @!attribute [rw] client_token
239
+ # Unique, case-sensitive identifier that you provide to ensure the
240
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
241
+ # underscores are allowed.
242
+ #
243
+ # **A suitable default value is auto-generated.** You should normally
244
+ # not need to pass this option.
245
+ # @return [String]
246
+ #
247
+ # @!attribute [rw] mesh_name
248
+ # The name of the service mesh to create the virtual gateway in.
249
+ # @return [String]
250
+ #
251
+ # @!attribute [rw] mesh_owner
252
+ # The AWS IAM account ID of the service mesh owner. If the account ID
253
+ # is not your own, then the account that you specify must share the
254
+ # mesh with your account before you can create the resource in the
255
+ # service mesh. For more information about mesh sharing, see [Working
256
+ # with shared meshes][1].
257
+ #
258
+ #
259
+ #
260
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
261
+ # @return [String]
262
+ #
263
+ # @!attribute [rw] spec
264
+ # The virtual gateway specification to apply.
265
+ # @return [Types::VirtualGatewaySpec]
266
+ #
267
+ # @!attribute [rw] tags
268
+ # Optional metadata that you can apply to the virtual gateway to
269
+ # assist with categorization and organization. Each tag consists of a
270
+ # key and an optional value, both of which you define. Tag keys can
271
+ # have a maximum character length of 128 characters, and tag values
272
+ # can have a maximum length of 256 characters.
273
+ # @return [Array<Types::TagRef>]
274
+ #
275
+ # @!attribute [rw] virtual_gateway_name
276
+ # The name to use for the virtual gateway.
277
+ # @return [String]
278
+ #
279
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualGatewayInput AWS API Documentation
280
+ #
281
+ class CreateVirtualGatewayInput < Struct.new(
282
+ :client_token,
283
+ :mesh_name,
284
+ :mesh_owner,
285
+ :spec,
286
+ :tags,
287
+ :virtual_gateway_name)
288
+ SENSITIVE = []
289
+ include Aws::Structure
290
+ end
291
+
292
+ # @note When making an API call, you may pass UpdateVirtualGatewayInput
293
+ # data as a hash:
294
+ #
295
+ # {
296
+ # client_token: "String",
297
+ # mesh_name: "ResourceName", # required
298
+ # mesh_owner: "AccountId",
299
+ # spec: { # required
300
+ # backend_defaults: {
301
+ # client_policy: {
302
+ # tls: {
303
+ # enforce: false,
304
+ # ports: [1],
305
+ # validation: { # required
306
+ # trust: { # required
307
+ # acm: {
308
+ # certificate_authority_arns: ["Arn"], # required
309
+ # },
310
+ # file: {
311
+ # certificate_chain: "FilePath", # required
312
+ # },
313
+ # },
314
+ # },
315
+ # },
316
+ # },
317
+ # },
318
+ # listeners: [ # required
319
+ # {
320
+ # health_check: {
321
+ # healthy_threshold: 1, # required
322
+ # interval_millis: 1, # required
323
+ # path: "String",
324
+ # port: 1,
325
+ # protocol: "grpc", # required, accepts grpc, http, http2
326
+ # timeout_millis: 1, # required
327
+ # unhealthy_threshold: 1, # required
328
+ # },
329
+ # port_mapping: { # required
330
+ # port: 1, # required
331
+ # protocol: "grpc", # required, accepts grpc, http, http2
332
+ # },
333
+ # tls: {
334
+ # certificate: { # required
335
+ # acm: {
336
+ # certificate_arn: "Arn", # required
337
+ # },
338
+ # file: {
339
+ # certificate_chain: "FilePath", # required
340
+ # private_key: "FilePath", # required
341
+ # },
342
+ # },
343
+ # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
344
+ # },
345
+ # },
346
+ # ],
347
+ # logging: {
348
+ # access_log: {
349
+ # file: {
350
+ # path: "FilePath", # required
351
+ # },
352
+ # },
353
+ # },
354
+ # },
355
+ # virtual_gateway_name: "ResourceName", # required
356
+ # }
357
+ #
358
+ # @!attribute [rw] client_token
359
+ # Unique, case-sensitive identifier that you provide to ensure the
360
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
361
+ # underscores are allowed.
362
+ #
363
+ # **A suitable default value is auto-generated.** You should normally
364
+ # not need to pass this option.
365
+ # @return [String]
366
+ #
367
+ # @!attribute [rw] mesh_name
368
+ # The name of the service mesh that the virtual gateway resides in.
369
+ # @return [String]
370
+ #
371
+ # @!attribute [rw] mesh_owner
372
+ # The AWS IAM account ID of the service mesh owner. If the account ID
373
+ # is not your own, then it's the ID of the account that shared the
374
+ # mesh with your account. For more information about mesh sharing, see
375
+ # [Working with shared meshes][1].
376
+ #
377
+ #
378
+ #
379
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
380
+ # @return [String]
381
+ #
382
+ # @!attribute [rw] spec
383
+ # The new virtual gateway specification to apply. This overwrites the
384
+ # existing data.
385
+ # @return [Types::VirtualGatewaySpec]
386
+ #
387
+ # @!attribute [rw] virtual_gateway_name
388
+ # The name of the virtual gateway to update.
389
+ # @return [String]
390
+ #
391
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualGatewayInput AWS API Documentation
392
+ #
393
+ class UpdateVirtualGatewayInput < Struct.new(
394
+ :client_token,
395
+ :mesh_name,
396
+ :mesh_owner,
397
+ :spec,
398
+ :virtual_gateway_name)
399
+ SENSITIVE = []
157
400
  include Aws::Structure
158
401
  end
159
402
 
@@ -214,6 +457,7 @@ module Aws::AppMesh
214
457
  :resource_owner,
215
458
  :uid,
216
459
  :version)
460
+ SENSITIVE = []
217
461
  include Aws::Structure
218
462
  end
219
463
 
@@ -227,6 +471,7 @@ module Aws::AppMesh
227
471
  #
228
472
  class ResourceInUseException < Struct.new(
229
473
  :message)
474
+ SENSITIVE = []
230
475
  include Aws::Structure
231
476
  end
232
477
 
@@ -238,6 +483,7 @@ module Aws::AppMesh
238
483
  #
239
484
  class UpdateVirtualNodeOutput < Struct.new(
240
485
  :virtual_node)
486
+ SENSITIVE = []
241
487
  include Aws::Structure
242
488
  end
243
489
 
@@ -258,6 +504,7 @@ module Aws::AppMesh
258
504
  class ListRoutesOutput < Struct.new(
259
505
  :next_token,
260
506
  :routes)
507
+ SENSITIVE = []
261
508
  include Aws::Structure
262
509
  end
263
510
 
@@ -302,6 +549,7 @@ module Aws::AppMesh
302
549
  class VirtualServiceBackend < Struct.new(
303
550
  :client_policy,
304
551
  :virtual_service_name)
552
+ SENSITIVE = []
305
553
  include Aws::Structure
306
554
  end
307
555
 
@@ -315,6 +563,34 @@ module Aws::AppMesh
315
563
  #
316
564
  class BadRequestException < Struct.new(
317
565
  :message)
566
+ SENSITIVE = []
567
+ include Aws::Structure
568
+ end
569
+
570
+ # An object that represents the criteria for determining a request
571
+ # match.
572
+ #
573
+ # @note When making an API call, you may pass HttpGatewayRouteMatch
574
+ # data as a hash:
575
+ #
576
+ # {
577
+ # prefix: "String", # required
578
+ # }
579
+ #
580
+ # @!attribute [rw] prefix
581
+ # Specifies the path to match requests with. This parameter must
582
+ # always start with `/`, which by itself matches all requests to the
583
+ # virtual service name. You can also match for path-based routing of
584
+ # requests. For example, if your virtual service name is
585
+ # `my-service.local` and you want the route to match requests to
586
+ # `my-service.local/metrics`, your prefix should be `/metrics`.
587
+ # @return [String]
588
+ #
589
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpGatewayRouteMatch AWS API Documentation
590
+ #
591
+ class HttpGatewayRouteMatch < Struct.new(
592
+ :prefix)
593
+ SENSITIVE = []
318
594
  include Aws::Structure
319
595
  end
320
596
 
@@ -384,6 +660,7 @@ module Aws::AppMesh
384
660
  :protocol,
385
661
  :timeout_millis,
386
662
  :unhealthy_threshold)
663
+ SENSITIVE = []
387
664
  include Aws::Structure
388
665
  end
389
666
 
@@ -408,6 +685,7 @@ module Aws::AppMesh
408
685
  #
409
686
  class EgressFilter < Struct.new(
410
687
  :type)
688
+ SENSITIVE = []
411
689
  include Aws::Structure
412
690
  end
413
691
 
@@ -442,6 +720,119 @@ module Aws::AppMesh
442
720
  #
443
721
  class ClientPolicy < Struct.new(
444
722
  :tls)
723
+ SENSITIVE = []
724
+ include Aws::Structure
725
+ end
726
+
727
+ # An object that represents the specification of a service mesh
728
+ # resource.
729
+ #
730
+ # @note When making an API call, you may pass VirtualGatewaySpec
731
+ # data as a hash:
732
+ #
733
+ # {
734
+ # backend_defaults: {
735
+ # client_policy: {
736
+ # tls: {
737
+ # enforce: false,
738
+ # ports: [1],
739
+ # validation: { # required
740
+ # trust: { # required
741
+ # acm: {
742
+ # certificate_authority_arns: ["Arn"], # required
743
+ # },
744
+ # file: {
745
+ # certificate_chain: "FilePath", # required
746
+ # },
747
+ # },
748
+ # },
749
+ # },
750
+ # },
751
+ # },
752
+ # listeners: [ # required
753
+ # {
754
+ # health_check: {
755
+ # healthy_threshold: 1, # required
756
+ # interval_millis: 1, # required
757
+ # path: "String",
758
+ # port: 1,
759
+ # protocol: "grpc", # required, accepts grpc, http, http2
760
+ # timeout_millis: 1, # required
761
+ # unhealthy_threshold: 1, # required
762
+ # },
763
+ # port_mapping: { # required
764
+ # port: 1, # required
765
+ # protocol: "grpc", # required, accepts grpc, http, http2
766
+ # },
767
+ # tls: {
768
+ # certificate: { # required
769
+ # acm: {
770
+ # certificate_arn: "Arn", # required
771
+ # },
772
+ # file: {
773
+ # certificate_chain: "FilePath", # required
774
+ # private_key: "FilePath", # required
775
+ # },
776
+ # },
777
+ # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
778
+ # },
779
+ # },
780
+ # ],
781
+ # logging: {
782
+ # access_log: {
783
+ # file: {
784
+ # path: "FilePath", # required
785
+ # },
786
+ # },
787
+ # },
788
+ # }
789
+ #
790
+ # @!attribute [rw] backend_defaults
791
+ # A reference to an object that represents the defaults for backends.
792
+ # @return [Types::VirtualGatewayBackendDefaults]
793
+ #
794
+ # @!attribute [rw] listeners
795
+ # The listeners that the mesh endpoint is expected to receive inbound
796
+ # traffic from. You can specify one listener.
797
+ # @return [Array<Types::VirtualGatewayListener>]
798
+ #
799
+ # @!attribute [rw] logging
800
+ # An object that represents logging information.
801
+ # @return [Types::VirtualGatewayLogging]
802
+ #
803
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewaySpec AWS API Documentation
804
+ #
805
+ class VirtualGatewaySpec < Struct.new(
806
+ :backend_defaults,
807
+ :listeners,
808
+ :logging)
809
+ SENSITIVE = []
810
+ include Aws::Structure
811
+ end
812
+
813
+ # An object that represents an access log file.
814
+ #
815
+ # @note When making an API call, you may pass VirtualGatewayFileAccessLog
816
+ # data as a hash:
817
+ #
818
+ # {
819
+ # path: "FilePath", # required
820
+ # }
821
+ #
822
+ # @!attribute [rw] path
823
+ # The file path to write access logs to. You can use `/dev/stdout` to
824
+ # send access logs to standard out and configure your Envoy container
825
+ # to use a log driver, such as `awslogs`, to export the access logs to
826
+ # a log storage service such as Amazon CloudWatch Logs. You can also
827
+ # specify a path in the Envoy container's file system to write the
828
+ # files to disk.
829
+ # @return [String]
830
+ #
831
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayFileAccessLog AWS API Documentation
832
+ #
833
+ class VirtualGatewayFileAccessLog < Struct.new(
834
+ :path)
835
+ SENSITIVE = []
445
836
  include Aws::Structure
446
837
  end
447
838
 
@@ -453,6 +844,123 @@ module Aws::AppMesh
453
844
  #
454
845
  class DescribeVirtualServiceOutput < Struct.new(
455
846
  :virtual_service)
847
+ SENSITIVE = []
848
+ include Aws::Structure
849
+ end
850
+
851
+ # @note When making an API call, you may pass CreateGatewayRouteInput
852
+ # data as a hash:
853
+ #
854
+ # {
855
+ # client_token: "String",
856
+ # gateway_route_name: "ResourceName", # required
857
+ # mesh_name: "ResourceName", # required
858
+ # mesh_owner: "AccountId",
859
+ # spec: { # required
860
+ # grpc_route: {
861
+ # action: { # required
862
+ # target: { # required
863
+ # virtual_service: { # required
864
+ # virtual_service_name: "ResourceName", # required
865
+ # },
866
+ # },
867
+ # },
868
+ # match: { # required
869
+ # service_name: "ServiceName",
870
+ # },
871
+ # },
872
+ # http2_route: {
873
+ # action: { # required
874
+ # target: { # required
875
+ # virtual_service: { # required
876
+ # virtual_service_name: "ResourceName", # required
877
+ # },
878
+ # },
879
+ # },
880
+ # match: { # required
881
+ # prefix: "String", # required
882
+ # },
883
+ # },
884
+ # http_route: {
885
+ # action: { # required
886
+ # target: { # required
887
+ # virtual_service: { # required
888
+ # virtual_service_name: "ResourceName", # required
889
+ # },
890
+ # },
891
+ # },
892
+ # match: { # required
893
+ # prefix: "String", # required
894
+ # },
895
+ # },
896
+ # },
897
+ # tags: [
898
+ # {
899
+ # key: "TagKey", # required
900
+ # value: "TagValue",
901
+ # },
902
+ # ],
903
+ # virtual_gateway_name: "ResourceName", # required
904
+ # }
905
+ #
906
+ # @!attribute [rw] client_token
907
+ # Unique, case-sensitive identifier that you provide to ensure the
908
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
909
+ # underscores are allowed.
910
+ #
911
+ # **A suitable default value is auto-generated.** You should normally
912
+ # not need to pass this option.
913
+ # @return [String]
914
+ #
915
+ # @!attribute [rw] gateway_route_name
916
+ # The name to use for the gateway route.
917
+ # @return [String]
918
+ #
919
+ # @!attribute [rw] mesh_name
920
+ # The name of the service mesh to create the gateway route in.
921
+ # @return [String]
922
+ #
923
+ # @!attribute [rw] mesh_owner
924
+ # The AWS IAM account ID of the service mesh owner. If the account ID
925
+ # is not your own, then the account that you specify must share the
926
+ # mesh with your account before you can create the resource in the
927
+ # service mesh. For more information about mesh sharing, see [Working
928
+ # with shared meshes][1].
929
+ #
930
+ #
931
+ #
932
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
933
+ # @return [String]
934
+ #
935
+ # @!attribute [rw] spec
936
+ # The gateway route specification to apply.
937
+ # @return [Types::GatewayRouteSpec]
938
+ #
939
+ # @!attribute [rw] tags
940
+ # Optional metadata that you can apply to the gateway route to assist
941
+ # with categorization and organization. Each tag consists of a key and
942
+ # an optional value, both of which you define. Tag keys can have a
943
+ # maximum character length of 128 characters, and tag values can have
944
+ # a maximum length of 256 characters.
945
+ # @return [Array<Types::TagRef>]
946
+ #
947
+ # @!attribute [rw] virtual_gateway_name
948
+ # The name of the virtual gateway to associate the gateway route with.
949
+ # If the virtual gateway is in a shared mesh, then you must be the
950
+ # owner of the virtual gateway resource.
951
+ # @return [String]
952
+ #
953
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateGatewayRouteInput AWS API Documentation
954
+ #
955
+ class CreateGatewayRouteInput < Struct.new(
956
+ :client_token,
957
+ :gateway_route_name,
958
+ :mesh_name,
959
+ :mesh_owner,
960
+ :spec,
961
+ :tags,
962
+ :virtual_gateway_name)
963
+ SENSITIVE = []
456
964
  include Aws::Structure
457
965
  end
458
966
 
@@ -460,21 +968,114 @@ module Aws::AppMesh
460
968
  # The full description of your virtual node.
461
969
  # @return [Types::VirtualNodeData]
462
970
  #
463
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNodeOutput AWS API Documentation
971
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNodeOutput AWS API Documentation
972
+ #
973
+ class DescribeVirtualNodeOutput < Struct.new(
974
+ :virtual_node)
975
+ SENSITIVE = []
976
+ include Aws::Structure
977
+ end
978
+
979
+ # An object that represents a virtual gateway returned by a describe
980
+ # operation.
981
+ #
982
+ # @!attribute [rw] mesh_name
983
+ # The name of the service mesh that the virtual gateway resides in.
984
+ # @return [String]
985
+ #
986
+ # @!attribute [rw] metadata
987
+ # An object that represents metadata for a resource.
988
+ # @return [Types::ResourceMetadata]
989
+ #
990
+ # @!attribute [rw] spec
991
+ # The specifications of the virtual gateway.
992
+ # @return [Types::VirtualGatewaySpec]
993
+ #
994
+ # @!attribute [rw] status
995
+ # The current status of the virtual gateway.
996
+ # @return [Types::VirtualGatewayStatus]
997
+ #
998
+ # @!attribute [rw] virtual_gateway_name
999
+ # The name of the virtual gateway.
1000
+ # @return [String]
1001
+ #
1002
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayData AWS API Documentation
1003
+ #
1004
+ class VirtualGatewayData < Struct.new(
1005
+ :mesh_name,
1006
+ :metadata,
1007
+ :spec,
1008
+ :status,
1009
+ :virtual_gateway_name)
1010
+ SENSITIVE = []
1011
+ include Aws::Structure
1012
+ end
1013
+
1014
+ # @!attribute [rw] route
1015
+ # The full description of your mesh following the create call.
1016
+ # @return [Types::RouteData]
1017
+ #
1018
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRouteOutput AWS API Documentation
1019
+ #
1020
+ class CreateRouteOutput < Struct.new(
1021
+ :route)
1022
+ SENSITIVE = []
1023
+ include Aws::Structure
1024
+ end
1025
+
1026
+ # An object that represents a listener for a virtual gateway.
1027
+ #
1028
+ # @note When making an API call, you may pass VirtualGatewayListener
1029
+ # data as a hash:
1030
+ #
1031
+ # {
1032
+ # health_check: {
1033
+ # healthy_threshold: 1, # required
1034
+ # interval_millis: 1, # required
1035
+ # path: "String",
1036
+ # port: 1,
1037
+ # protocol: "grpc", # required, accepts grpc, http, http2
1038
+ # timeout_millis: 1, # required
1039
+ # unhealthy_threshold: 1, # required
1040
+ # },
1041
+ # port_mapping: { # required
1042
+ # port: 1, # required
1043
+ # protocol: "grpc", # required, accepts grpc, http, http2
1044
+ # },
1045
+ # tls: {
1046
+ # certificate: { # required
1047
+ # acm: {
1048
+ # certificate_arn: "Arn", # required
1049
+ # },
1050
+ # file: {
1051
+ # certificate_chain: "FilePath", # required
1052
+ # private_key: "FilePath", # required
1053
+ # },
1054
+ # },
1055
+ # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
1056
+ # },
1057
+ # }
1058
+ #
1059
+ # @!attribute [rw] health_check
1060
+ # The health check information for the listener.
1061
+ # @return [Types::VirtualGatewayHealthCheckPolicy]
464
1062
  #
465
- class DescribeVirtualNodeOutput < Struct.new(
466
- :virtual_node)
467
- include Aws::Structure
468
- end
469
-
470
- # @!attribute [rw] route
471
- # The full description of your mesh following the create call.
472
- # @return [Types::RouteData]
1063
+ # @!attribute [rw] port_mapping
1064
+ # The port mapping information for the listener.
1065
+ # @return [Types::VirtualGatewayPortMapping]
473
1066
  #
474
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRouteOutput AWS API Documentation
1067
+ # @!attribute [rw] tls
1068
+ # A reference to an object that represents the Transport Layer
1069
+ # Security (TLS) properties for the listener.
1070
+ # @return [Types::VirtualGatewayListenerTls]
475
1071
  #
476
- class CreateRouteOutput < Struct.new(
477
- :route)
1072
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListener AWS API Documentation
1073
+ #
1074
+ class VirtualGatewayListener < Struct.new(
1075
+ :health_check,
1076
+ :port_mapping,
1077
+ :tls)
1078
+ SENSITIVE = []
478
1079
  include Aws::Structure
479
1080
  end
480
1081
 
@@ -496,6 +1097,46 @@ module Aws::AppMesh
496
1097
  #
497
1098
  class DnsServiceDiscovery < Struct.new(
498
1099
  :hostname)
1100
+ SENSITIVE = []
1101
+ include Aws::Structure
1102
+ end
1103
+
1104
+ # An object that represents a port mapping.
1105
+ #
1106
+ # @note When making an API call, you may pass VirtualGatewayPortMapping
1107
+ # data as a hash:
1108
+ #
1109
+ # {
1110
+ # port: 1, # required
1111
+ # protocol: "grpc", # required, accepts grpc, http, http2
1112
+ # }
1113
+ #
1114
+ # @!attribute [rw] port
1115
+ # The port used for the port mapping. Specify one protocol.
1116
+ # @return [Integer]
1117
+ #
1118
+ # @!attribute [rw] protocol
1119
+ # The protocol used for the port mapping.
1120
+ # @return [String]
1121
+ #
1122
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayPortMapping AWS API Documentation
1123
+ #
1124
+ class VirtualGatewayPortMapping < Struct.new(
1125
+ :port,
1126
+ :protocol)
1127
+ SENSITIVE = []
1128
+ include Aws::Structure
1129
+ end
1130
+
1131
+ # @!attribute [rw] virtual_gateway
1132
+ # The virtual gateway that was deleted.
1133
+ # @return [Types::VirtualGatewayData]
1134
+ #
1135
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualGatewayOutput AWS API Documentation
1136
+ #
1137
+ class DeleteVirtualGatewayOutput < Struct.new(
1138
+ :virtual_gateway)
1139
+ SENSITIVE = []
499
1140
  include Aws::Structure
500
1141
  end
501
1142
 
@@ -539,6 +1180,7 @@ module Aws::AppMesh
539
1180
  :mesh_owner,
540
1181
  :route_name,
541
1182
  :virtual_router_name)
1183
+ SENSITIVE = []
542
1184
  include Aws::Structure
543
1185
  end
544
1186
 
@@ -573,6 +1215,7 @@ module Aws::AppMesh
573
1215
  :spec,
574
1216
  :status,
575
1217
  :virtual_node_name)
1218
+ SENSITIVE = []
576
1219
  include Aws::Structure
577
1220
  end
578
1221
 
@@ -580,6 +1223,50 @@ module Aws::AppMesh
580
1223
  #
581
1224
  class UntagResourceOutput < Aws::EmptyStructure; end
582
1225
 
1226
+ # An object that represents the Transport Layer Security (TLS)
1227
+ # properties for a listener.
1228
+ #
1229
+ # @note When making an API call, you may pass VirtualGatewayListenerTls
1230
+ # data as a hash:
1231
+ #
1232
+ # {
1233
+ # certificate: { # required
1234
+ # acm: {
1235
+ # certificate_arn: "Arn", # required
1236
+ # },
1237
+ # file: {
1238
+ # certificate_chain: "FilePath", # required
1239
+ # private_key: "FilePath", # required
1240
+ # },
1241
+ # },
1242
+ # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
1243
+ # }
1244
+ #
1245
+ # @!attribute [rw] certificate
1246
+ # An object that represents a Transport Layer Security (TLS)
1247
+ # certificate.
1248
+ # @return [Types::VirtualGatewayListenerTlsCertificate]
1249
+ #
1250
+ # @!attribute [rw] mode
1251
+ # Specify one of the following modes.
1252
+ #
1253
+ # * ****STRICT – Listener only accepts connections with TLS enabled.
1254
+ #
1255
+ # * ****PERMISSIVE – Listener accepts connections with or without TLS
1256
+ # enabled.
1257
+ #
1258
+ # * ****DISABLED – Listener only accepts connections without TLS.
1259
+ # @return [String]
1260
+ #
1261
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTls AWS API Documentation
1262
+ #
1263
+ class VirtualGatewayListenerTls < Struct.new(
1264
+ :certificate,
1265
+ :mode)
1266
+ SENSITIVE = []
1267
+ include Aws::Structure
1268
+ end
1269
+
583
1270
  # An object that represents the backends that a virtual node is expected
584
1271
  # to send outbound traffic to.
585
1272
  #
@@ -616,6 +1303,7 @@ module Aws::AppMesh
616
1303
  #
617
1304
  class Backend < Struct.new(
618
1305
  :virtual_service)
1306
+ SENSITIVE = []
619
1307
  include Aws::Structure
620
1308
  end
621
1309
 
@@ -656,6 +1344,102 @@ module Aws::AppMesh
656
1344
  class ListMeshesInput < Struct.new(
657
1345
  :limit,
658
1346
  :next_token)
1347
+ SENSITIVE = []
1348
+ include Aws::Structure
1349
+ end
1350
+
1351
+ # An object that represents a local file certificate. The certificate
1352
+ # must meet specific requirements and you must have proxy authorization
1353
+ # enabled. For more information, see [Transport Layer Security
1354
+ # (TLS)][1].
1355
+ #
1356
+ #
1357
+ #
1358
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites
1359
+ #
1360
+ # @note When making an API call, you may pass VirtualGatewayListenerTlsFileCertificate
1361
+ # data as a hash:
1362
+ #
1363
+ # {
1364
+ # certificate_chain: "FilePath", # required
1365
+ # private_key: "FilePath", # required
1366
+ # }
1367
+ #
1368
+ # @!attribute [rw] certificate_chain
1369
+ # The certificate chain for the certificate.
1370
+ # @return [String]
1371
+ #
1372
+ # @!attribute [rw] private_key
1373
+ # The private key for a certificate stored on the file system of the
1374
+ # mesh endpoint that the proxy is running on.
1375
+ # @return [String]
1376
+ #
1377
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTlsFileCertificate AWS API Documentation
1378
+ #
1379
+ class VirtualGatewayListenerTlsFileCertificate < Struct.new(
1380
+ :certificate_chain,
1381
+ :private_key)
1382
+ SENSITIVE = []
1383
+ include Aws::Structure
1384
+ end
1385
+
1386
+ # @note When making an API call, you may pass ListGatewayRoutesInput
1387
+ # data as a hash:
1388
+ #
1389
+ # {
1390
+ # limit: 1,
1391
+ # mesh_name: "ResourceName", # required
1392
+ # mesh_owner: "AccountId",
1393
+ # next_token: "String",
1394
+ # virtual_gateway_name: "ResourceName", # required
1395
+ # }
1396
+ #
1397
+ # @!attribute [rw] limit
1398
+ # The maximum number of results returned by `ListGatewayRoutes` in
1399
+ # paginated output. When you use this parameter, `ListGatewayRoutes`
1400
+ # returns only `limit` results in a single page along with a
1401
+ # `nextToken` response element. You can see the remaining results of
1402
+ # the initial request by sending another `ListGatewayRoutes` request
1403
+ # with the returned `nextToken` value. This value can be between 1 and
1404
+ # 100. If you don't use this parameter, `ListGatewayRoutes` returns
1405
+ # up to 100 results and a `nextToken` value if applicable.
1406
+ # @return [Integer]
1407
+ #
1408
+ # @!attribute [rw] mesh_name
1409
+ # The name of the service mesh to list gateway routes in.
1410
+ # @return [String]
1411
+ #
1412
+ # @!attribute [rw] mesh_owner
1413
+ # The AWS IAM account ID of the service mesh owner. If the account ID
1414
+ # is not your own, then it's the ID of the account that shared the
1415
+ # mesh with your account. For more information about mesh sharing, see
1416
+ # [Working with shared meshes][1].
1417
+ #
1418
+ #
1419
+ #
1420
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
1421
+ # @return [String]
1422
+ #
1423
+ # @!attribute [rw] next_token
1424
+ # The `nextToken` value returned from a previous paginated
1425
+ # `ListGatewayRoutes` request where `limit` was used and the results
1426
+ # exceeded the value of that parameter. Pagination continues from the
1427
+ # end of the previous results that returned the `nextToken` value.
1428
+ # @return [String]
1429
+ #
1430
+ # @!attribute [rw] virtual_gateway_name
1431
+ # The name of the virtual gateway to list gateway routes in.
1432
+ # @return [String]
1433
+ #
1434
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListGatewayRoutesInput AWS API Documentation
1435
+ #
1436
+ class ListGatewayRoutesInput < Struct.new(
1437
+ :limit,
1438
+ :mesh_name,
1439
+ :mesh_owner,
1440
+ :next_token,
1441
+ :virtual_gateway_name)
1442
+ SENSITIVE = []
659
1443
  include Aws::Structure
660
1444
  end
661
1445
 
@@ -690,6 +1474,7 @@ module Aws::AppMesh
690
1474
  :spec,
691
1475
  :status,
692
1476
  :virtual_router_name)
1477
+ SENSITIVE = []
693
1478
  include Aws::Structure
694
1479
  end
695
1480
 
@@ -729,6 +1514,77 @@ module Aws::AppMesh
729
1514
  :client_token,
730
1515
  :mesh_name,
731
1516
  :spec)
1517
+ SENSITIVE = []
1518
+ include Aws::Structure
1519
+ end
1520
+
1521
+ # An object that represents the health check policy for a virtual
1522
+ # gateway's listener.
1523
+ #
1524
+ # @note When making an API call, you may pass VirtualGatewayHealthCheckPolicy
1525
+ # data as a hash:
1526
+ #
1527
+ # {
1528
+ # healthy_threshold: 1, # required
1529
+ # interval_millis: 1, # required
1530
+ # path: "String",
1531
+ # port: 1,
1532
+ # protocol: "grpc", # required, accepts grpc, http, http2
1533
+ # timeout_millis: 1, # required
1534
+ # unhealthy_threshold: 1, # required
1535
+ # }
1536
+ #
1537
+ # @!attribute [rw] healthy_threshold
1538
+ # The number of consecutive successful health checks that must occur
1539
+ # before declaring the listener healthy.
1540
+ # @return [Integer]
1541
+ #
1542
+ # @!attribute [rw] interval_millis
1543
+ # The time period in milliseconds between each health check execution.
1544
+ # @return [Integer]
1545
+ #
1546
+ # @!attribute [rw] path
1547
+ # The destination path for the health check request. This value is
1548
+ # only used if the specified protocol is HTTP or HTTP/2. For any other
1549
+ # protocol, this value is ignored.
1550
+ # @return [String]
1551
+ #
1552
+ # @!attribute [rw] port
1553
+ # The destination port for the health check request. This port must
1554
+ # match the port defined in the PortMapping for the listener.
1555
+ # @return [Integer]
1556
+ #
1557
+ # @!attribute [rw] protocol
1558
+ # The protocol for the health check request. If you specify `grpc`,
1559
+ # then your service must conform to the [GRPC Health Checking
1560
+ # Protocol][1].
1561
+ #
1562
+ #
1563
+ #
1564
+ # [1]: https://github.com/grpc/grpc/blob/master/doc/health-checking.md
1565
+ # @return [String]
1566
+ #
1567
+ # @!attribute [rw] timeout_millis
1568
+ # The amount of time to wait when receiving a response from the health
1569
+ # check, in milliseconds.
1570
+ # @return [Integer]
1571
+ #
1572
+ # @!attribute [rw] unhealthy_threshold
1573
+ # The number of consecutive failed health checks that must occur
1574
+ # before declaring a virtual gateway unhealthy.
1575
+ # @return [Integer]
1576
+ #
1577
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayHealthCheckPolicy AWS API Documentation
1578
+ #
1579
+ class VirtualGatewayHealthCheckPolicy < Struct.new(
1580
+ :healthy_threshold,
1581
+ :interval_millis,
1582
+ :path,
1583
+ :port,
1584
+ :protocol,
1585
+ :timeout_millis,
1586
+ :unhealthy_threshold)
1587
+ SENSITIVE = []
732
1588
  include Aws::Structure
733
1589
  end
734
1590
 
@@ -808,6 +1664,7 @@ module Aws::AppMesh
808
1664
  :spec,
809
1665
  :tags,
810
1666
  :virtual_router_name)
1667
+ SENSITIVE = []
811
1668
  include Aws::Structure
812
1669
  end
813
1670
 
@@ -819,6 +1676,7 @@ module Aws::AppMesh
819
1676
  #
820
1677
  class DescribeVirtualRouterOutput < Struct.new(
821
1678
  :virtual_router)
1679
+ SENSITIVE = []
822
1680
  include Aws::Structure
823
1681
  end
824
1682
 
@@ -830,6 +1688,7 @@ module Aws::AppMesh
830
1688
  #
831
1689
  class CreateMeshOutput < Struct.new(
832
1690
  :mesh)
1691
+ SENSITIVE = []
833
1692
  include Aws::Structure
834
1693
  end
835
1694
 
@@ -840,21 +1699,57 @@ module Aws::AppMesh
840
1699
  #
841
1700
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualRouterOutput AWS API Documentation
842
1701
  #
843
- class CreateVirtualRouterOutput < Struct.new(
844
- :virtual_router)
845
- include Aws::Structure
846
- end
847
-
848
- # An object that represents the status of a virtual service.
1702
+ class CreateVirtualRouterOutput < Struct.new(
1703
+ :virtual_router)
1704
+ SENSITIVE = []
1705
+ include Aws::Structure
1706
+ end
1707
+
1708
+ # An object that represents the status of a virtual service.
1709
+ #
1710
+ # @!attribute [rw] status
1711
+ # The current status of the virtual service.
1712
+ # @return [String]
1713
+ #
1714
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceStatus AWS API Documentation
1715
+ #
1716
+ class VirtualServiceStatus < Struct.new(
1717
+ :status)
1718
+ SENSITIVE = []
1719
+ include Aws::Structure
1720
+ end
1721
+
1722
+ # An object that represents a listener's Transport Layer Security (TLS)
1723
+ # certificate.
1724
+ #
1725
+ # @note When making an API call, you may pass VirtualGatewayListenerTlsCertificate
1726
+ # data as a hash:
1727
+ #
1728
+ # {
1729
+ # acm: {
1730
+ # certificate_arn: "Arn", # required
1731
+ # },
1732
+ # file: {
1733
+ # certificate_chain: "FilePath", # required
1734
+ # private_key: "FilePath", # required
1735
+ # },
1736
+ # }
1737
+ #
1738
+ # @!attribute [rw] acm
1739
+ # A reference to an object that represents an AWS Certicate Manager
1740
+ # (ACM) certificate.
1741
+ # @return [Types::VirtualGatewayListenerTlsAcmCertificate]
849
1742
  #
850
- # @!attribute [rw] status
851
- # The current status of the virtual service.
852
- # @return [String]
1743
+ # @!attribute [rw] file
1744
+ # A reference to an object that represents a local file certificate.
1745
+ # @return [Types::VirtualGatewayListenerTlsFileCertificate]
853
1746
  #
854
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceStatus AWS API Documentation
1747
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTlsCertificate AWS API Documentation
855
1748
  #
856
- class VirtualServiceStatus < Struct.new(
857
- :status)
1749
+ class VirtualGatewayListenerTlsCertificate < Struct.new(
1750
+ :acm,
1751
+ :file)
1752
+ SENSITIVE = []
858
1753
  include Aws::Structure
859
1754
  end
860
1755
 
@@ -888,6 +1783,7 @@ module Aws::AppMesh
888
1783
  class ListenerTlsCertificate < Struct.new(
889
1784
  :acm,
890
1785
  :file)
1786
+ SENSITIVE = []
891
1787
  include Aws::Structure
892
1788
  end
893
1789
 
@@ -916,6 +1812,29 @@ module Aws::AppMesh
916
1812
  #
917
1813
  class VirtualRouterSpec < Struct.new(
918
1814
  :listeners)
1815
+ SENSITIVE = []
1816
+ include Aws::Structure
1817
+ end
1818
+
1819
+ # An object that represents the virtual service that traffic is routed
1820
+ # to.
1821
+ #
1822
+ # @note When making an API call, you may pass GatewayRouteVirtualService
1823
+ # data as a hash:
1824
+ #
1825
+ # {
1826
+ # virtual_service_name: "ResourceName", # required
1827
+ # }
1828
+ #
1829
+ # @!attribute [rw] virtual_service_name
1830
+ # The name of the virtual service that traffic is routed to.
1831
+ # @return [String]
1832
+ #
1833
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteVirtualService AWS API Documentation
1834
+ #
1835
+ class GatewayRouteVirtualService < Struct.new(
1836
+ :virtual_service_name)
1837
+ SENSITIVE = []
919
1838
  include Aws::Structure
920
1839
  end
921
1840
 
@@ -1091,6 +2010,7 @@ module Aws::AppMesh
1091
2010
  :listeners,
1092
2011
  :logging,
1093
2012
  :service_discovery)
2013
+ SENSITIVE = []
1094
2014
  include Aws::Structure
1095
2015
  end
1096
2016
 
@@ -1110,6 +2030,76 @@ module Aws::AppMesh
1110
2030
  class ListMeshesOutput < Struct.new(
1111
2031
  :meshes,
1112
2032
  :next_token)
2033
+ SENSITIVE = []
2034
+ include Aws::Structure
2035
+ end
2036
+
2037
+ # An object that represents a gateway route specification. Specify one
2038
+ # gateway route type.
2039
+ #
2040
+ # @note When making an API call, you may pass GatewayRouteSpec
2041
+ # data as a hash:
2042
+ #
2043
+ # {
2044
+ # grpc_route: {
2045
+ # action: { # required
2046
+ # target: { # required
2047
+ # virtual_service: { # required
2048
+ # virtual_service_name: "ResourceName", # required
2049
+ # },
2050
+ # },
2051
+ # },
2052
+ # match: { # required
2053
+ # service_name: "ServiceName",
2054
+ # },
2055
+ # },
2056
+ # http2_route: {
2057
+ # action: { # required
2058
+ # target: { # required
2059
+ # virtual_service: { # required
2060
+ # virtual_service_name: "ResourceName", # required
2061
+ # },
2062
+ # },
2063
+ # },
2064
+ # match: { # required
2065
+ # prefix: "String", # required
2066
+ # },
2067
+ # },
2068
+ # http_route: {
2069
+ # action: { # required
2070
+ # target: { # required
2071
+ # virtual_service: { # required
2072
+ # virtual_service_name: "ResourceName", # required
2073
+ # },
2074
+ # },
2075
+ # },
2076
+ # match: { # required
2077
+ # prefix: "String", # required
2078
+ # },
2079
+ # },
2080
+ # }
2081
+ #
2082
+ # @!attribute [rw] grpc_route
2083
+ # An object that represents the specification of a gRPC gateway route.
2084
+ # @return [Types::GrpcGatewayRoute]
2085
+ #
2086
+ # @!attribute [rw] http2_route
2087
+ # An object that represents the specification of an HTTP/2 gateway
2088
+ # route.
2089
+ # @return [Types::HttpGatewayRoute]
2090
+ #
2091
+ # @!attribute [rw] http_route
2092
+ # An object that represents the specification of an HTTP gateway
2093
+ # route.
2094
+ # @return [Types::HttpGatewayRoute]
2095
+ #
2096
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteSpec AWS API Documentation
2097
+ #
2098
+ class GatewayRouteSpec < Struct.new(
2099
+ :grpc_route,
2100
+ :http2_route,
2101
+ :http_route)
2102
+ SENSITIVE = []
1113
2103
  include Aws::Structure
1114
2104
  end
1115
2105
 
@@ -1124,9 +2114,48 @@ module Aws::AppMesh
1124
2114
  #
1125
2115
  class ConflictException < Struct.new(
1126
2116
  :message)
2117
+ SENSITIVE = []
2118
+ include Aws::Structure
2119
+ end
2120
+
2121
+ # An object that represents the default properties for a backend.
2122
+ #
2123
+ # @note When making an API call, you may pass VirtualGatewayBackendDefaults
2124
+ # data as a hash:
2125
+ #
2126
+ # {
2127
+ # client_policy: {
2128
+ # tls: {
2129
+ # enforce: false,
2130
+ # ports: [1],
2131
+ # validation: { # required
2132
+ # trust: { # required
2133
+ # acm: {
2134
+ # certificate_authority_arns: ["Arn"], # required
2135
+ # },
2136
+ # file: {
2137
+ # certificate_chain: "FilePath", # required
2138
+ # },
2139
+ # },
2140
+ # },
2141
+ # },
2142
+ # },
2143
+ # }
2144
+ #
2145
+ # @!attribute [rw] client_policy
2146
+ # A reference to an object that represents a client policy.
2147
+ # @return [Types::VirtualGatewayClientPolicy]
2148
+ #
2149
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayBackendDefaults AWS API Documentation
2150
+ #
2151
+ class VirtualGatewayBackendDefaults < Struct.new(
2152
+ :client_policy)
2153
+ SENSITIVE = []
1127
2154
  include Aws::Structure
1128
2155
  end
1129
2156
 
2157
+ # An object that represents timeouts for different protocols.
2158
+ #
1130
2159
  # @note When making an API call, you may pass ListenerTimeout
1131
2160
  # data as a hash:
1132
2161
  #
@@ -1170,15 +2199,19 @@ module Aws::AppMesh
1170
2199
  # }
1171
2200
  #
1172
2201
  # @!attribute [rw] grpc
2202
+ # An object that represents types of timeouts.
1173
2203
  # @return [Types::GrpcTimeout]
1174
2204
  #
1175
2205
  # @!attribute [rw] http
2206
+ # An object that represents types of timeouts.
1176
2207
  # @return [Types::HttpTimeout]
1177
2208
  #
1178
2209
  # @!attribute [rw] http2
2210
+ # An object that represents types of timeouts.
1179
2211
  # @return [Types::HttpTimeout]
1180
2212
  #
1181
2213
  # @!attribute [rw] tcp
2214
+ # An object that represents types of timeouts.
1182
2215
  # @return [Types::TcpTimeout]
1183
2216
  #
1184
2217
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTimeout AWS API Documentation
@@ -1188,6 +2221,52 @@ module Aws::AppMesh
1188
2221
  :http,
1189
2222
  :http2,
1190
2223
  :tcp)
2224
+ SENSITIVE = []
2225
+ include Aws::Structure
2226
+ end
2227
+
2228
+ # @note When making an API call, you may pass DescribeGatewayRouteInput
2229
+ # data as a hash:
2230
+ #
2231
+ # {
2232
+ # gateway_route_name: "ResourceName", # required
2233
+ # mesh_name: "ResourceName", # required
2234
+ # mesh_owner: "AccountId",
2235
+ # virtual_gateway_name: "ResourceName", # required
2236
+ # }
2237
+ #
2238
+ # @!attribute [rw] gateway_route_name
2239
+ # The name of the gateway route to describe.
2240
+ # @return [String]
2241
+ #
2242
+ # @!attribute [rw] mesh_name
2243
+ # The name of the service mesh that the gateway route resides in.
2244
+ # @return [String]
2245
+ #
2246
+ # @!attribute [rw] mesh_owner
2247
+ # The AWS IAM account ID of the service mesh owner. If the account ID
2248
+ # is not your own, then it's the ID of the account that shared the
2249
+ # mesh with your account. For more information about mesh sharing, see
2250
+ # [Working with shared meshes][1].
2251
+ #
2252
+ #
2253
+ #
2254
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2255
+ # @return [String]
2256
+ #
2257
+ # @!attribute [rw] virtual_gateway_name
2258
+ # The name of the virtual gateway that the gateway route is associated
2259
+ # with.
2260
+ # @return [String]
2261
+ #
2262
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeGatewayRouteInput AWS API Documentation
2263
+ #
2264
+ class DescribeGatewayRouteInput < Struct.new(
2265
+ :gateway_route_name,
2266
+ :mesh_name,
2267
+ :mesh_owner,
2268
+ :virtual_gateway_name)
2269
+ SENSITIVE = []
1191
2270
  include Aws::Structure
1192
2271
  end
1193
2272
 
@@ -1221,6 +2300,7 @@ module Aws::AppMesh
1221
2300
  class TlsValidationContextTrust < Struct.new(
1222
2301
  :acm,
1223
2302
  :file)
2303
+ SENSITIVE = []
1224
2304
  include Aws::Structure
1225
2305
  end
1226
2306
 
@@ -1247,6 +2327,7 @@ module Aws::AppMesh
1247
2327
  class PortMapping < Struct.new(
1248
2328
  :port,
1249
2329
  :protocol)
2330
+ SENSITIVE = []
1250
2331
  include Aws::Structure
1251
2332
  end
1252
2333
 
@@ -1268,6 +2349,7 @@ module Aws::AppMesh
1268
2349
  class ListVirtualServicesOutput < Struct.new(
1269
2350
  :next_token,
1270
2351
  :virtual_services)
2352
+ SENSITIVE = []
1271
2353
  include Aws::Structure
1272
2354
  end
1273
2355
 
@@ -1298,6 +2380,84 @@ module Aws::AppMesh
1298
2380
  class WeightedTarget < Struct.new(
1299
2381
  :virtual_node,
1300
2382
  :weight)
2383
+ SENSITIVE = []
2384
+ include Aws::Structure
2385
+ end
2386
+
2387
+ # An object that represents a gRPC gateway route.
2388
+ #
2389
+ # @note When making an API call, you may pass GrpcGatewayRoute
2390
+ # data as a hash:
2391
+ #
2392
+ # {
2393
+ # action: { # required
2394
+ # target: { # required
2395
+ # virtual_service: { # required
2396
+ # virtual_service_name: "ResourceName", # required
2397
+ # },
2398
+ # },
2399
+ # },
2400
+ # match: { # required
2401
+ # service_name: "ServiceName",
2402
+ # },
2403
+ # }
2404
+ #
2405
+ # @!attribute [rw] action
2406
+ # An object that represents the action to take if a match is
2407
+ # determined.
2408
+ # @return [Types::GrpcGatewayRouteAction]
2409
+ #
2410
+ # @!attribute [rw] match
2411
+ # An object that represents the criteria for determining a request
2412
+ # match.
2413
+ # @return [Types::GrpcGatewayRouteMatch]
2414
+ #
2415
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcGatewayRoute AWS API Documentation
2416
+ #
2417
+ class GrpcGatewayRoute < Struct.new(
2418
+ :action,
2419
+ :match)
2420
+ SENSITIVE = []
2421
+ include Aws::Structure
2422
+ end
2423
+
2424
+ # An object that represents a gateway route returned by a describe
2425
+ # operation.
2426
+ #
2427
+ # @!attribute [rw] gateway_route_name
2428
+ # The name of the gateway route.
2429
+ # @return [String]
2430
+ #
2431
+ # @!attribute [rw] mesh_name
2432
+ # The name of the service mesh that the resource resides in.
2433
+ # @return [String]
2434
+ #
2435
+ # @!attribute [rw] metadata
2436
+ # An object that represents metadata for a resource.
2437
+ # @return [Types::ResourceMetadata]
2438
+ #
2439
+ # @!attribute [rw] spec
2440
+ # The specifications of the gateway route.
2441
+ # @return [Types::GatewayRouteSpec]
2442
+ #
2443
+ # @!attribute [rw] status
2444
+ # The status of the gateway route.
2445
+ # @return [Types::GatewayRouteStatus]
2446
+ #
2447
+ # @!attribute [rw] virtual_gateway_name
2448
+ # The virtual gateway that the gateway route is associated with.
2449
+ # @return [String]
2450
+ #
2451
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteData AWS API Documentation
2452
+ #
2453
+ class GatewayRouteData < Struct.new(
2454
+ :gateway_route_name,
2455
+ :mesh_name,
2456
+ :metadata,
2457
+ :spec,
2458
+ :status,
2459
+ :virtual_gateway_name)
2460
+ SENSITIVE = []
1301
2461
  include Aws::Structure
1302
2462
  end
1303
2463
 
@@ -1368,6 +2528,7 @@ module Aws::AppMesh
1368
2528
  :route_name,
1369
2529
  :version,
1370
2530
  :virtual_router_name)
2531
+ SENSITIVE = []
1371
2532
  include Aws::Structure
1372
2533
  end
1373
2534
 
@@ -1405,6 +2566,7 @@ module Aws::AppMesh
1405
2566
  :mesh_name,
1406
2567
  :mesh_owner,
1407
2568
  :virtual_node_name)
2569
+ SENSITIVE = []
1408
2570
  include Aws::Structure
1409
2571
  end
1410
2572
 
@@ -1443,6 +2605,7 @@ module Aws::AppMesh
1443
2605
  :spec,
1444
2606
  :status,
1445
2607
  :virtual_router_name)
2608
+ SENSITIVE = []
1446
2609
  include Aws::Structure
1447
2610
  end
1448
2611
 
@@ -1456,6 +2619,7 @@ module Aws::AppMesh
1456
2619
  #
1457
2620
  class InternalServerErrorException < Struct.new(
1458
2621
  :message)
2622
+ SENSITIVE = []
1459
2623
  include Aws::Structure
1460
2624
  end
1461
2625
 
@@ -1477,6 +2641,7 @@ module Aws::AppMesh
1477
2641
  #
1478
2642
  class TlsValidationContextAcmTrust < Struct.new(
1479
2643
  :certificate_authority_arns)
2644
+ SENSITIVE = []
1480
2645
  include Aws::Structure
1481
2646
  end
1482
2647
 
@@ -1489,6 +2654,7 @@ module Aws::AppMesh
1489
2654
  #
1490
2655
  class ForbiddenException < Struct.new(
1491
2656
  :message)
2657
+ SENSITIVE = []
1492
2658
  include Aws::Structure
1493
2659
  end
1494
2660
 
@@ -1509,46 +2675,120 @@ module Aws::AppMesh
1509
2675
  # suffix: "HeaderMatch",
1510
2676
  # }
1511
2677
  #
1512
- # @!attribute [rw] exact
1513
- # The value sent by the client must match the specified value exactly.
1514
- # @return [String]
2678
+ # @!attribute [rw] exact
2679
+ # The value sent by the client must match the specified value exactly.
2680
+ # @return [String]
2681
+ #
2682
+ # @!attribute [rw] prefix
2683
+ # The value sent by the client must begin with the specified
2684
+ # characters.
2685
+ # @return [String]
2686
+ #
2687
+ # @!attribute [rw] range
2688
+ # An object that represents the range of values to match on.
2689
+ # @return [Types::MatchRange]
2690
+ #
2691
+ # @!attribute [rw] regex
2692
+ # The value sent by the client must include the specified characters.
2693
+ # @return [String]
2694
+ #
2695
+ # @!attribute [rw] suffix
2696
+ # The value sent by the client must end with the specified characters.
2697
+ # @return [String]
2698
+ #
2699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HeaderMatchMethod AWS API Documentation
2700
+ #
2701
+ class HeaderMatchMethod < Struct.new(
2702
+ :exact,
2703
+ :prefix,
2704
+ :range,
2705
+ :regex,
2706
+ :suffix)
2707
+ SENSITIVE = []
2708
+ include Aws::Structure
2709
+ end
2710
+
2711
+ # @!attribute [rw] mesh
2712
+ # The service mesh that was deleted.
2713
+ # @return [Types::MeshData]
2714
+ #
2715
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMeshOutput AWS API Documentation
2716
+ #
2717
+ class DeleteMeshOutput < Struct.new(
2718
+ :mesh)
2719
+ SENSITIVE = []
2720
+ include Aws::Structure
2721
+ end
2722
+
2723
+ # An object that represents a Transport Layer Security (TLS) client
2724
+ # policy.
2725
+ #
2726
+ # @note When making an API call, you may pass VirtualGatewayClientPolicyTls
2727
+ # data as a hash:
2728
+ #
2729
+ # {
2730
+ # enforce: false,
2731
+ # ports: [1],
2732
+ # validation: { # required
2733
+ # trust: { # required
2734
+ # acm: {
2735
+ # certificate_authority_arns: ["Arn"], # required
2736
+ # },
2737
+ # file: {
2738
+ # certificate_chain: "FilePath", # required
2739
+ # },
2740
+ # },
2741
+ # },
2742
+ # }
2743
+ #
2744
+ # @!attribute [rw] enforce
2745
+ # Whether the policy is enforced. The default is `True`, if a value
2746
+ # isn't specified.
2747
+ # @return [Boolean]
2748
+ #
2749
+ # @!attribute [rw] ports
2750
+ # One or more ports that the policy is enforced for.
2751
+ # @return [Array<Integer>]
1515
2752
  #
1516
- # @!attribute [rw] prefix
1517
- # The value sent by the client must begin with the specified
1518
- # characters.
1519
- # @return [String]
2753
+ # @!attribute [rw] validation
2754
+ # A reference to an object that represents a TLS validation context.
2755
+ # @return [Types::VirtualGatewayTlsValidationContext]
1520
2756
  #
1521
- # @!attribute [rw] range
1522
- # An object that represents the range of values to match on.
1523
- # @return [Types::MatchRange]
2757
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayClientPolicyTls AWS API Documentation
1524
2758
  #
1525
- # @!attribute [rw] regex
1526
- # The value sent by the client must include the specified characters.
1527
- # @return [String]
2759
+ class VirtualGatewayClientPolicyTls < Struct.new(
2760
+ :enforce,
2761
+ :ports,
2762
+ :validation)
2763
+ SENSITIVE = []
2764
+ include Aws::Structure
2765
+ end
2766
+
2767
+ # An object that represents the status of the mesh resource.
1528
2768
  #
1529
- # @!attribute [rw] suffix
1530
- # The value sent by the client must end with the specified characters.
2769
+ # @!attribute [rw] status
2770
+ # The current status.
1531
2771
  # @return [String]
1532
2772
  #
1533
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HeaderMatchMethod AWS API Documentation
2773
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayStatus AWS API Documentation
1534
2774
  #
1535
- class HeaderMatchMethod < Struct.new(
1536
- :exact,
1537
- :prefix,
1538
- :range,
1539
- :regex,
1540
- :suffix)
2775
+ class VirtualGatewayStatus < Struct.new(
2776
+ :status)
2777
+ SENSITIVE = []
1541
2778
  include Aws::Structure
1542
2779
  end
1543
2780
 
1544
- # @!attribute [rw] mesh
1545
- # The service mesh that was deleted.
1546
- # @return [Types::MeshData]
2781
+ # An object that represents the current status of a gateway route.
1547
2782
  #
1548
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMeshOutput AWS API Documentation
2783
+ # @!attribute [rw] status
2784
+ # The current status for the gateway route.
2785
+ # @return [String]
1549
2786
  #
1550
- class DeleteMeshOutput < Struct.new(
1551
- :mesh)
2787
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteStatus AWS API Documentation
2788
+ #
2789
+ class GatewayRouteStatus < Struct.new(
2790
+ :status)
2791
+ SENSITIVE = []
1552
2792
  include Aws::Structure
1553
2793
  end
1554
2794
 
@@ -1581,6 +2821,72 @@ module Aws::AppMesh
1581
2821
  class TagResourceInput < Struct.new(
1582
2822
  :resource_arn,
1583
2823
  :tags)
2824
+ SENSITIVE = []
2825
+ include Aws::Structure
2826
+ end
2827
+
2828
+ # @!attribute [rw] virtual_gateway
2829
+ # The full description of your virtual gateway following the create
2830
+ # call.
2831
+ # @return [Types::VirtualGatewayData]
2832
+ #
2833
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualGatewayOutput AWS API Documentation
2834
+ #
2835
+ class CreateVirtualGatewayOutput < Struct.new(
2836
+ :virtual_gateway)
2837
+ SENSITIVE = []
2838
+ include Aws::Structure
2839
+ end
2840
+
2841
+ # @!attribute [rw] next_token
2842
+ # The `nextToken` value to include in a future `ListVirtualGateways`
2843
+ # request. When the results of a `ListVirtualGateways` request exceed
2844
+ # `limit`, you can use this value to retrieve the next page of
2845
+ # results. This value is `null` when there are no more results to
2846
+ # return.
2847
+ # @return [String]
2848
+ #
2849
+ # @!attribute [rw] virtual_gateways
2850
+ # The list of existing virtual gateways for the specified service
2851
+ # mesh.
2852
+ # @return [Array<Types::VirtualGatewayRef>]
2853
+ #
2854
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualGatewaysOutput AWS API Documentation
2855
+ #
2856
+ class ListVirtualGatewaysOutput < Struct.new(
2857
+ :next_token,
2858
+ :virtual_gateways)
2859
+ SENSITIVE = []
2860
+ include Aws::Structure
2861
+ end
2862
+
2863
+ # An object that represents a Transport Layer Security (TLS) validation
2864
+ # context.
2865
+ #
2866
+ # @note When making an API call, you may pass VirtualGatewayTlsValidationContext
2867
+ # data as a hash:
2868
+ #
2869
+ # {
2870
+ # trust: { # required
2871
+ # acm: {
2872
+ # certificate_authority_arns: ["Arn"], # required
2873
+ # },
2874
+ # file: {
2875
+ # certificate_chain: "FilePath", # required
2876
+ # },
2877
+ # },
2878
+ # }
2879
+ #
2880
+ # @!attribute [rw] trust
2881
+ # A reference to an object that represents a TLS validation context
2882
+ # trust.
2883
+ # @return [Types::VirtualGatewayTlsValidationContextTrust]
2884
+ #
2885
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayTlsValidationContext AWS API Documentation
2886
+ #
2887
+ class VirtualGatewayTlsValidationContext < Struct.new(
2888
+ :trust)
2889
+ SENSITIVE = []
1584
2890
  include Aws::Structure
1585
2891
  end
1586
2892
 
@@ -1611,6 +2917,7 @@ module Aws::AppMesh
1611
2917
  class VirtualServiceProvider < Struct.new(
1612
2918
  :virtual_node,
1613
2919
  :virtual_router)
2920
+ SENSITIVE = []
1614
2921
  include Aws::Structure
1615
2922
  end
1616
2923
 
@@ -1661,6 +2968,7 @@ module Aws::AppMesh
1661
2968
  :metadata,
1662
2969
  :method_name,
1663
2970
  :service_name)
2971
+ SENSITIVE = []
1664
2972
  include Aws::Structure
1665
2973
  end
1666
2974
 
@@ -1702,6 +3010,7 @@ module Aws::AppMesh
1702
3010
  :attributes,
1703
3011
  :namespace_name,
1704
3012
  :service_name)
3013
+ SENSITIVE = []
1705
3014
  include Aws::Structure
1706
3015
  end
1707
3016
 
@@ -1713,6 +3022,7 @@ module Aws::AppMesh
1713
3022
  #
1714
3023
  class UpdateVirtualServiceOutput < Struct.new(
1715
3024
  :virtual_service)
3025
+ SENSITIVE = []
1716
3026
  include Aws::Structure
1717
3027
  end
1718
3028
 
@@ -1726,6 +3036,7 @@ module Aws::AppMesh
1726
3036
  #
1727
3037
  class MeshStatus < Struct.new(
1728
3038
  :status)
3039
+ SENSITIVE = []
1729
3040
  include Aws::Structure
1730
3041
  end
1731
3042
 
@@ -1927,6 +3238,7 @@ module Aws::AppMesh
1927
3238
  :spec,
1928
3239
  :tags,
1929
3240
  :virtual_node_name)
3241
+ SENSITIVE = []
1930
3242
  include Aws::Structure
1931
3243
  end
1932
3244
 
@@ -1940,6 +3252,7 @@ module Aws::AppMesh
1940
3252
  #
1941
3253
  class NotFoundException < Struct.new(
1942
3254
  :message)
3255
+ SENSITIVE = []
1943
3256
  include Aws::Structure
1944
3257
  end
1945
3258
 
@@ -2148,6 +3461,129 @@ module Aws::AppMesh
2148
3461
  :http_route,
2149
3462
  :priority,
2150
3463
  :tcp_route)
3464
+ SENSITIVE = []
3465
+ include Aws::Structure
3466
+ end
3467
+
3468
+ # An object that represents a gateway route returned by a list
3469
+ # operation.
3470
+ #
3471
+ # @!attribute [rw] arn
3472
+ # The full Amazon Resource Name (ARN) for the gateway route.
3473
+ # @return [String]
3474
+ #
3475
+ # @!attribute [rw] created_at
3476
+ # The Unix epoch timestamp in seconds for when the resource was
3477
+ # created.
3478
+ # @return [Time]
3479
+ #
3480
+ # @!attribute [rw] gateway_route_name
3481
+ # The name of the gateway route.
3482
+ # @return [String]
3483
+ #
3484
+ # @!attribute [rw] last_updated_at
3485
+ # The Unix epoch timestamp in seconds for when the resource was last
3486
+ # updated.
3487
+ # @return [Time]
3488
+ #
3489
+ # @!attribute [rw] mesh_name
3490
+ # The name of the service mesh that the resource resides in.
3491
+ # @return [String]
3492
+ #
3493
+ # @!attribute [rw] mesh_owner
3494
+ # The AWS IAM account ID of the service mesh owner. If the account ID
3495
+ # is not your own, then it's the ID of the account that shared the
3496
+ # mesh with your account. For more information about mesh sharing, see
3497
+ # [Working with shared meshes][1].
3498
+ #
3499
+ #
3500
+ #
3501
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
3502
+ # @return [String]
3503
+ #
3504
+ # @!attribute [rw] resource_owner
3505
+ # The AWS IAM account ID of the resource owner. If the account ID is
3506
+ # not your own, then it's the ID of the mesh owner or of another
3507
+ # account that the mesh is shared with. For more information about
3508
+ # mesh sharing, see [Working with shared meshes][1].
3509
+ #
3510
+ #
3511
+ #
3512
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
3513
+ # @return [String]
3514
+ #
3515
+ # @!attribute [rw] version
3516
+ # The version of the resource. Resources are created at version 1, and
3517
+ # this version is incremented each time that they're updated.
3518
+ # @return [Integer]
3519
+ #
3520
+ # @!attribute [rw] virtual_gateway_name
3521
+ # The virtual gateway that the gateway route is associated with.
3522
+ # @return [String]
3523
+ #
3524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteRef AWS API Documentation
3525
+ #
3526
+ class GatewayRouteRef < Struct.new(
3527
+ :arn,
3528
+ :created_at,
3529
+ :gateway_route_name,
3530
+ :last_updated_at,
3531
+ :mesh_name,
3532
+ :mesh_owner,
3533
+ :resource_owner,
3534
+ :version,
3535
+ :virtual_gateway_name)
3536
+ SENSITIVE = []
3537
+ include Aws::Structure
3538
+ end
3539
+
3540
+ # An object that represents an AWS Certicate Manager (ACM) certificate.
3541
+ #
3542
+ # @note When making an API call, you may pass VirtualGatewayListenerTlsAcmCertificate
3543
+ # data as a hash:
3544
+ #
3545
+ # {
3546
+ # certificate_arn: "Arn", # required
3547
+ # }
3548
+ #
3549
+ # @!attribute [rw] certificate_arn
3550
+ # The Amazon Resource Name (ARN) for the certificate. The certificate
3551
+ # must meet specific requirements and you must have proxy
3552
+ # authorization enabled. For more information, see [Transport Layer
3553
+ # Security (TLS)][1].
3554
+ #
3555
+ #
3556
+ #
3557
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites
3558
+ # @return [String]
3559
+ #
3560
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTlsAcmCertificate AWS API Documentation
3561
+ #
3562
+ class VirtualGatewayListenerTlsAcmCertificate < Struct.new(
3563
+ :certificate_arn)
3564
+ SENSITIVE = []
3565
+ include Aws::Structure
3566
+ end
3567
+
3568
+ # @!attribute [rw] gateway_routes
3569
+ # The list of existing gateway routes for the specified service mesh
3570
+ # and virtual gateway.
3571
+ # @return [Array<Types::GatewayRouteRef>]
3572
+ #
3573
+ # @!attribute [rw] next_token
3574
+ # The `nextToken` value to include in a future `ListGatewayRoutes`
3575
+ # request. When the results of a `ListGatewayRoutes` request exceed
3576
+ # `limit`, you can use this value to retrieve the next page of
3577
+ # results. This value is `null` when there are no more results to
3578
+ # return.
3579
+ # @return [String]
3580
+ #
3581
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListGatewayRoutesOutput AWS API Documentation
3582
+ #
3583
+ class ListGatewayRoutesOutput < Struct.new(
3584
+ :gateway_routes,
3585
+ :next_token)
3586
+ SENSITIVE = []
2151
3587
  include Aws::Structure
2152
3588
  end
2153
3589
 
@@ -2160,6 +3596,7 @@ module Aws::AppMesh
2160
3596
  #
2161
3597
  class CreateVirtualServiceOutput < Struct.new(
2162
3598
  :virtual_service)
3599
+ SENSITIVE = []
2163
3600
  include Aws::Structure
2164
3601
  end
2165
3602
 
@@ -2190,6 +3627,7 @@ module Aws::AppMesh
2190
3627
  #
2191
3628
  class FileAccessLog < Struct.new(
2192
3629
  :path)
3630
+ SENSITIVE = []
2193
3631
  include Aws::Structure
2194
3632
  end
2195
3633
 
@@ -2210,9 +3648,12 @@ module Aws::AppMesh
2210
3648
  #
2211
3649
  class VirtualRouterServiceProvider < Struct.new(
2212
3650
  :virtual_router_name)
3651
+ SENSITIVE = []
2213
3652
  include Aws::Structure
2214
3653
  end
2215
3654
 
3655
+ # An object that represents types of timeouts.
3656
+ #
2216
3657
  # @note When making an API call, you may pass HttpTimeout
2217
3658
  # data as a hash:
2218
3659
  #
@@ -2240,6 +3681,7 @@ module Aws::AppMesh
2240
3681
  class HttpTimeout < Struct.new(
2241
3682
  :idle,
2242
3683
  :per_request)
3684
+ SENSITIVE = []
2243
3685
  include Aws::Structure
2244
3686
  end
2245
3687
 
@@ -2277,46 +3719,113 @@ module Aws::AppMesh
2277
3719
  :mesh_name,
2278
3720
  :mesh_owner,
2279
3721
  :virtual_service_name)
3722
+ SENSITIVE = []
2280
3723
  include Aws::Structure
2281
3724
  end
2282
3725
 
2283
3726
  # An object that represents a Transport Layer Security (TLS) validation
2284
3727
  # context.
2285
3728
  #
2286
- # @note When making an API call, you may pass TlsValidationContext
3729
+ # @note When making an API call, you may pass TlsValidationContext
3730
+ # data as a hash:
3731
+ #
3732
+ # {
3733
+ # trust: { # required
3734
+ # acm: {
3735
+ # certificate_authority_arns: ["Arn"], # required
3736
+ # },
3737
+ # file: {
3738
+ # certificate_chain: "FilePath", # required
3739
+ # },
3740
+ # },
3741
+ # }
3742
+ #
3743
+ # @!attribute [rw] trust
3744
+ # A reference to an object that represents a TLS validation context
3745
+ # trust.
3746
+ # @return [Types::TlsValidationContextTrust]
3747
+ #
3748
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TlsValidationContext AWS API Documentation
3749
+ #
3750
+ class TlsValidationContext < Struct.new(
3751
+ :trust)
3752
+ SENSITIVE = []
3753
+ include Aws::Structure
3754
+ end
3755
+
3756
+ # @!attribute [rw] virtual_router
3757
+ # The virtual router that was deleted.
3758
+ # @return [Types::VirtualRouterData]
3759
+ #
3760
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouterOutput AWS API Documentation
3761
+ #
3762
+ class DeleteVirtualRouterOutput < Struct.new(
3763
+ :virtual_router)
3764
+ SENSITIVE = []
3765
+ include Aws::Structure
3766
+ end
3767
+
3768
+ # @note When making an API call, you may pass DescribeVirtualGatewayInput
3769
+ # data as a hash:
3770
+ #
3771
+ # {
3772
+ # mesh_name: "ResourceName", # required
3773
+ # mesh_owner: "AccountId",
3774
+ # virtual_gateway_name: "ResourceName", # required
3775
+ # }
3776
+ #
3777
+ # @!attribute [rw] mesh_name
3778
+ # The name of the service mesh that the gateway route resides in.
3779
+ # @return [String]
3780
+ #
3781
+ # @!attribute [rw] mesh_owner
3782
+ # The AWS IAM account ID of the service mesh owner. If the account ID
3783
+ # is not your own, then it's the ID of the account that shared the
3784
+ # mesh with your account. For more information about mesh sharing, see
3785
+ # [Working with shared meshes][1].
3786
+ #
3787
+ #
3788
+ #
3789
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
3790
+ # @return [String]
3791
+ #
3792
+ # @!attribute [rw] virtual_gateway_name
3793
+ # The name of the virtual gateway to describe.
3794
+ # @return [String]
3795
+ #
3796
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualGatewayInput AWS API Documentation
3797
+ #
3798
+ class DescribeVirtualGatewayInput < Struct.new(
3799
+ :mesh_name,
3800
+ :mesh_owner,
3801
+ :virtual_gateway_name)
3802
+ SENSITIVE = []
3803
+ include Aws::Structure
3804
+ end
3805
+
3806
+ # An object that represents the action to take if a match is determined.
3807
+ #
3808
+ # @note When making an API call, you may pass GrpcGatewayRouteAction
2287
3809
  # data as a hash:
2288
3810
  #
2289
3811
  # {
2290
- # trust: { # required
2291
- # acm: {
2292
- # certificate_authority_arns: ["Arn"], # required
2293
- # },
2294
- # file: {
2295
- # certificate_chain: "FilePath", # required
3812
+ # target: { # required
3813
+ # virtual_service: { # required
3814
+ # virtual_service_name: "ResourceName", # required
2296
3815
  # },
2297
3816
  # },
2298
3817
  # }
2299
3818
  #
2300
- # @!attribute [rw] trust
2301
- # A reference to an object that represents a TLS validation context
2302
- # trust.
2303
- # @return [Types::TlsValidationContextTrust]
2304
- #
2305
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TlsValidationContext AWS API Documentation
2306
- #
2307
- class TlsValidationContext < Struct.new(
2308
- :trust)
2309
- include Aws::Structure
2310
- end
2311
-
2312
- # @!attribute [rw] virtual_router
2313
- # The virtual router that was deleted.
2314
- # @return [Types::VirtualRouterData]
3819
+ # @!attribute [rw] target
3820
+ # An object that represents the target that traffic is routed to when
3821
+ # a request matches the gateway route.
3822
+ # @return [Types::GatewayRouteTarget]
2315
3823
  #
2316
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouterOutput AWS API Documentation
3824
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcGatewayRouteAction AWS API Documentation
2317
3825
  #
2318
- class DeleteVirtualRouterOutput < Struct.new(
2319
- :virtual_router)
3826
+ class GrpcGatewayRouteAction < Struct.new(
3827
+ :target)
3828
+ SENSITIVE = []
2320
3829
  include Aws::Structure
2321
3830
  end
2322
3831
 
@@ -2328,6 +3837,7 @@ module Aws::AppMesh
2328
3837
  #
2329
3838
  class DeleteVirtualNodeOutput < Struct.new(
2330
3839
  :virtual_node)
3840
+ SENSITIVE = []
2331
3841
  include Aws::Structure
2332
3842
  end
2333
3843
 
@@ -2514,6 +4024,7 @@ module Aws::AppMesh
2514
4024
  :mesh_owner,
2515
4025
  :spec,
2516
4026
  :virtual_node_name)
4027
+ SENSITIVE = []
2517
4028
  include Aws::Structure
2518
4029
  end
2519
4030
 
@@ -2557,6 +4068,7 @@ module Aws::AppMesh
2557
4068
  class ListenerTls < Struct.new(
2558
4069
  :certificate,
2559
4070
  :mode)
4071
+ SENSITIVE = []
2560
4072
  include Aws::Structure
2561
4073
  end
2562
4074
 
@@ -2575,6 +4087,7 @@ module Aws::AppMesh
2575
4087
  #
2576
4088
  class DeleteMeshInput < Struct.new(
2577
4089
  :mesh_name)
4090
+ SENSITIVE = []
2578
4091
  include Aws::Structure
2579
4092
  end
2580
4093
 
@@ -2654,6 +4167,7 @@ module Aws::AppMesh
2654
4167
  :spec,
2655
4168
  :tags,
2656
4169
  :virtual_service_name)
4170
+ SENSITIVE = []
2657
4171
  include Aws::Structure
2658
4172
  end
2659
4173
 
@@ -2718,6 +4232,56 @@ module Aws::AppMesh
2718
4232
  :mesh_owner,
2719
4233
  :spec,
2720
4234
  :virtual_router_name)
4235
+ SENSITIVE = []
4236
+ include Aws::Structure
4237
+ end
4238
+
4239
+ # An object that represents the action to take if a match is determined.
4240
+ #
4241
+ # @note When making an API call, you may pass HttpGatewayRouteAction
4242
+ # data as a hash:
4243
+ #
4244
+ # {
4245
+ # target: { # required
4246
+ # virtual_service: { # required
4247
+ # virtual_service_name: "ResourceName", # required
4248
+ # },
4249
+ # },
4250
+ # }
4251
+ #
4252
+ # @!attribute [rw] target
4253
+ # An object that represents the target that traffic is routed to when
4254
+ # a request matches the gateway route.
4255
+ # @return [Types::GatewayRouteTarget]
4256
+ #
4257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpGatewayRouteAction AWS API Documentation
4258
+ #
4259
+ class HttpGatewayRouteAction < Struct.new(
4260
+ :target)
4261
+ SENSITIVE = []
4262
+ include Aws::Structure
4263
+ end
4264
+
4265
+ # An object that represents the criteria for determining a request
4266
+ # match.
4267
+ #
4268
+ # @note When making an API call, you may pass GrpcGatewayRouteMatch
4269
+ # data as a hash:
4270
+ #
4271
+ # {
4272
+ # service_name: "ServiceName",
4273
+ # }
4274
+ #
4275
+ # @!attribute [rw] service_name
4276
+ # The fully qualified domain name for the service to match from the
4277
+ # request.
4278
+ # @return [String]
4279
+ #
4280
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcGatewayRouteMatch AWS API Documentation
4281
+ #
4282
+ class GrpcGatewayRouteMatch < Struct.new(
4283
+ :service_name)
4284
+ SENSITIVE = []
2721
4285
  include Aws::Structure
2722
4286
  end
2723
4287
 
@@ -2760,6 +4324,7 @@ module Aws::AppMesh
2760
4324
  :limit,
2761
4325
  :next_token,
2762
4326
  :resource_arn)
4327
+ SENSITIVE = []
2763
4328
  include Aws::Structure
2764
4329
  end
2765
4330
 
@@ -2772,6 +4337,7 @@ module Aws::AppMesh
2772
4337
  #
2773
4338
  class ServiceUnavailableException < Struct.new(
2774
4339
  :message)
4340
+ SENSITIVE = []
2775
4341
  include Aws::Structure
2776
4342
  end
2777
4343
 
@@ -2783,6 +4349,7 @@ module Aws::AppMesh
2783
4349
  #
2784
4350
  class DescribeMeshOutput < Struct.new(
2785
4351
  :mesh)
4352
+ SENSITIVE = []
2786
4353
  include Aws::Structure
2787
4354
  end
2788
4355
 
@@ -2820,6 +4387,19 @@ module Aws::AppMesh
2820
4387
  :mesh_name,
2821
4388
  :mesh_owner,
2822
4389
  :virtual_router_name)
4390
+ SENSITIVE = []
4391
+ include Aws::Structure
4392
+ end
4393
+
4394
+ # @!attribute [rw] gateway_route
4395
+ # A full description of the gateway route that was updated.
4396
+ # @return [Types::GatewayRouteData]
4397
+ #
4398
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateGatewayRouteOutput AWS API Documentation
4399
+ #
4400
+ class UpdateGatewayRouteOutput < Struct.new(
4401
+ :gateway_route)
4402
+ SENSITIVE = []
2823
4403
  include Aws::Structure
2824
4404
  end
2825
4405
 
@@ -2863,6 +4443,7 @@ module Aws::AppMesh
2863
4443
  :mesh_owner,
2864
4444
  :route_name,
2865
4445
  :virtual_router_name)
4446
+ SENSITIVE = []
2866
4447
  include Aws::Structure
2867
4448
  end
2868
4449
 
@@ -2874,6 +4455,19 @@ module Aws::AppMesh
2874
4455
  #
2875
4456
  class DeleteRouteOutput < Struct.new(
2876
4457
  :route)
4458
+ SENSITIVE = []
4459
+ include Aws::Structure
4460
+ end
4461
+
4462
+ # @!attribute [rw] gateway_route
4463
+ # The gateway route that was deleted.
4464
+ # @return [Types::GatewayRouteData]
4465
+ #
4466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteGatewayRouteOutput AWS API Documentation
4467
+ #
4468
+ class DeleteGatewayRouteOutput < Struct.new(
4469
+ :gateway_route)
4470
+ SENSITIVE = []
2877
4471
  include Aws::Structure
2878
4472
  end
2879
4473
 
@@ -2938,6 +4532,7 @@ module Aws::AppMesh
2938
4532
  :mesh_owner,
2939
4533
  :spec,
2940
4534
  :virtual_service_name)
4535
+ SENSITIVE = []
2941
4536
  include Aws::Structure
2942
4537
  end
2943
4538
 
@@ -2949,6 +4544,7 @@ module Aws::AppMesh
2949
4544
  #
2950
4545
  class UpdateRouteOutput < Struct.new(
2951
4546
  :route)
4547
+ SENSITIVE = []
2952
4548
  include Aws::Structure
2953
4549
  end
2954
4550
 
@@ -2975,6 +4571,7 @@ module Aws::AppMesh
2975
4571
  #
2976
4572
  class HttpRouteAction < Struct.new(
2977
4573
  :weighted_targets)
4574
+ SENSITIVE = []
2978
4575
  include Aws::Structure
2979
4576
  end
2980
4577
 
@@ -3034,6 +4631,7 @@ module Aws::AppMesh
3034
4631
  :mesh_owner,
3035
4632
  :next_token,
3036
4633
  :virtual_router_name)
4634
+ SENSITIVE = []
3037
4635
  include Aws::Structure
3038
4636
  end
3039
4637
 
@@ -3100,9 +4698,12 @@ module Aws::AppMesh
3100
4698
  :resource_owner,
3101
4699
  :version,
3102
4700
  :virtual_service_name)
4701
+ SENSITIVE = []
3103
4702
  include Aws::Structure
3104
4703
  end
3105
4704
 
4705
+ # An object that represents types of timeouts.
4706
+ #
3106
4707
  # @note When making an API call, you may pass GrpcTimeout
3107
4708
  # data as a hash:
3108
4709
  #
@@ -3118,11 +4719,19 @@ module Aws::AppMesh
3118
4719
  # }
3119
4720
  #
3120
4721
  # @!attribute [rw] idle
3121
- # An object that represents a duration of time.
4722
+ # An object that represents an idle timeout. An idle timeout bounds
4723
+ # the amount of time that a connection may be idle. The default value
4724
+ # is none.
3122
4725
  # @return [Types::Duration]
3123
4726
  #
3124
4727
  # @!attribute [rw] per_request
3125
- # An object that represents a duration of time.
4728
+ # An object that represents a per request timeout. The default value
4729
+ # is 15 seconds. If you set a higher timeout, then make sure that the
4730
+ # higher value is set for each App Mesh resource in a conversation.
4731
+ # For example, if a virtual node backend uses a virtual router
4732
+ # provider to route to another virtual node, then the timeout should
4733
+ # be greater than 15 seconds for the source and destination virtual
4734
+ # node and the route.
3126
4735
  # @return [Types::Duration]
3127
4736
  #
3128
4737
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcTimeout AWS API Documentation
@@ -3130,6 +4739,7 @@ module Aws::AppMesh
3130
4739
  class GrpcTimeout < Struct.new(
3131
4740
  :idle,
3132
4741
  :per_request)
4742
+ SENSITIVE = []
3133
4743
  include Aws::Structure
3134
4744
  end
3135
4745
 
@@ -3143,6 +4753,7 @@ module Aws::AppMesh
3143
4753
  #
3144
4754
  class VirtualNodeStatus < Struct.new(
3145
4755
  :status)
4756
+ SENSITIVE = []
3146
4757
  include Aws::Structure
3147
4758
  end
3148
4759
 
@@ -3209,6 +4820,7 @@ module Aws::AppMesh
3209
4820
  :resource_owner,
3210
4821
  :version,
3211
4822
  :virtual_router_name)
4823
+ SENSITIVE = []
3212
4824
  include Aws::Structure
3213
4825
  end
3214
4826
 
@@ -3243,6 +4855,7 @@ module Aws::AppMesh
3243
4855
  :spec,
3244
4856
  :status,
3245
4857
  :virtual_service_name)
4858
+ SENSITIVE = []
3246
4859
  include Aws::Structure
3247
4860
  end
3248
4861
 
@@ -3286,6 +4899,7 @@ module Aws::AppMesh
3286
4899
  :invert,
3287
4900
  :match,
3288
4901
  :name)
4902
+ SENSITIVE = []
3289
4903
  include Aws::Structure
3290
4904
  end
3291
4905
 
@@ -3351,6 +4965,7 @@ module Aws::AppMesh
3351
4965
  :resource_owner,
3352
4966
  :version,
3353
4967
  :virtual_node_name)
4968
+ SENSITIVE = []
3354
4969
  include Aws::Structure
3355
4970
  end
3356
4971
 
@@ -3405,6 +5020,7 @@ module Aws::AppMesh
3405
5020
  :mesh_name,
3406
5021
  :spec,
3407
5022
  :tags)
5023
+ SENSITIVE = []
3408
5024
  include Aws::Structure
3409
5025
  end
3410
5026
 
@@ -3431,6 +5047,30 @@ module Aws::AppMesh
3431
5047
  #
3432
5048
  class GrpcRouteAction < Struct.new(
3433
5049
  :weighted_targets)
5050
+ SENSITIVE = []
5051
+ include Aws::Structure
5052
+ end
5053
+
5054
+ # An object that represents a Transport Layer Security (TLS) validation
5055
+ # context trust for a local file.
5056
+ #
5057
+ # @note When making an API call, you may pass VirtualGatewayTlsValidationContextFileTrust
5058
+ # data as a hash:
5059
+ #
5060
+ # {
5061
+ # certificate_chain: "FilePath", # required
5062
+ # }
5063
+ #
5064
+ # @!attribute [rw] certificate_chain
5065
+ # The certificate trust chain for a certificate stored on the file
5066
+ # system of the virtual node that the proxy is running on.
5067
+ # @return [String]
5068
+ #
5069
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayTlsValidationContextFileTrust AWS API Documentation
5070
+ #
5071
+ class VirtualGatewayTlsValidationContextFileTrust < Struct.new(
5072
+ :certificate_chain)
5073
+ SENSITIVE = []
3434
5074
  include Aws::Structure
3435
5075
  end
3436
5076
 
@@ -3448,6 +5088,7 @@ module Aws::AppMesh
3448
5088
  #
3449
5089
  class LimitExceededException < Struct.new(
3450
5090
  :message)
5091
+ SENSITIVE = []
3451
5092
  include Aws::Structure
3452
5093
  end
3453
5094
 
@@ -3460,6 +5101,7 @@ module Aws::AppMesh
3460
5101
  #
3461
5102
  class UpdateMeshOutput < Struct.new(
3462
5103
  :mesh)
5104
+ SENSITIVE = []
3463
5105
  include Aws::Structure
3464
5106
  end
3465
5107
 
@@ -3509,6 +5151,7 @@ module Aws::AppMesh
3509
5151
  :range,
3510
5152
  :regex,
3511
5153
  :suffix)
5154
+ SENSITIVE = []
3512
5155
  include Aws::Structure
3513
5156
  end
3514
5157
 
@@ -3546,6 +5189,7 @@ module Aws::AppMesh
3546
5189
  :mesh_name,
3547
5190
  :mesh_owner,
3548
5191
  :virtual_service_name)
5192
+ SENSITIVE = []
3549
5193
  include Aws::Structure
3550
5194
  end
3551
5195
 
@@ -3577,6 +5221,7 @@ module Aws::AppMesh
3577
5221
  class AwsCloudMapInstanceAttribute < Struct.new(
3578
5222
  :key,
3579
5223
  :value)
5224
+ SENSITIVE = []
3580
5225
  include Aws::Structure
3581
5226
  end
3582
5227
 
@@ -3605,6 +5250,52 @@ module Aws::AppMesh
3605
5250
  #
3606
5251
  class VirtualServiceSpec < Struct.new(
3607
5252
  :provider)
5253
+ SENSITIVE = []
5254
+ include Aws::Structure
5255
+ end
5256
+
5257
+ # An object that represents a TLS validation context trust for an AWS
5258
+ # Certicate Manager (ACM) certificate.
5259
+ #
5260
+ # @note When making an API call, you may pass VirtualGatewayTlsValidationContextAcmTrust
5261
+ # data as a hash:
5262
+ #
5263
+ # {
5264
+ # certificate_authority_arns: ["Arn"], # required
5265
+ # }
5266
+ #
5267
+ # @!attribute [rw] certificate_authority_arns
5268
+ # One or more ACM Amazon Resource Name (ARN)s.
5269
+ # @return [Array<String>]
5270
+ #
5271
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayTlsValidationContextAcmTrust AWS API Documentation
5272
+ #
5273
+ class VirtualGatewayTlsValidationContextAcmTrust < Struct.new(
5274
+ :certificate_authority_arns)
5275
+ SENSITIVE = []
5276
+ include Aws::Structure
5277
+ end
5278
+
5279
+ # The access log configuration for a virtual gateway.
5280
+ #
5281
+ # @note When making an API call, you may pass VirtualGatewayAccessLog
5282
+ # data as a hash:
5283
+ #
5284
+ # {
5285
+ # file: {
5286
+ # path: "FilePath", # required
5287
+ # },
5288
+ # }
5289
+ #
5290
+ # @!attribute [rw] file
5291
+ # The file object to send virtual gateway access logs to.
5292
+ # @return [Types::VirtualGatewayFileAccessLog]
5293
+ #
5294
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayAccessLog AWS API Documentation
5295
+ #
5296
+ class VirtualGatewayAccessLog < Struct.new(
5297
+ :file)
5298
+ SENSITIVE = []
3608
5299
  include Aws::Structure
3609
5300
  end
3610
5301
 
@@ -3634,6 +5325,7 @@ module Aws::AppMesh
3634
5325
  class MatchRange < Struct.new(
3635
5326
  :end,
3636
5327
  :start)
5328
+ SENSITIVE = []
3637
5329
  include Aws::Structure
3638
5330
  end
3639
5331
 
@@ -3664,6 +5356,7 @@ module Aws::AppMesh
3664
5356
  # @return [Types::TcpRouteAction]
3665
5357
  #
3666
5358
  # @!attribute [rw] timeout
5359
+ # An object that represents types of timeouts.
3667
5360
  # @return [Types::TcpTimeout]
3668
5361
  #
3669
5362
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TcpRoute AWS API Documentation
@@ -3671,6 +5364,19 @@ module Aws::AppMesh
3671
5364
  class TcpRoute < Struct.new(
3672
5365
  :action,
3673
5366
  :timeout)
5367
+ SENSITIVE = []
5368
+ include Aws::Structure
5369
+ end
5370
+
5371
+ # @!attribute [rw] virtual_gateway
5372
+ # A full description of the virtual gateway that was updated.
5373
+ # @return [Types::VirtualGatewayData]
5374
+ #
5375
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualGatewayOutput AWS API Documentation
5376
+ #
5377
+ class UpdateVirtualGatewayOutput < Struct.new(
5378
+ :virtual_gateway)
5379
+ SENSITIVE = []
3674
5380
  include Aws::Structure
3675
5381
  end
3676
5382
 
@@ -3724,6 +5430,7 @@ module Aws::AppMesh
3724
5430
  :mesh_name,
3725
5431
  :mesh_owner,
3726
5432
  :next_token)
5433
+ SENSITIVE = []
3727
5434
  include Aws::Structure
3728
5435
  end
3729
5436
 
@@ -3777,6 +5484,7 @@ module Aws::AppMesh
3777
5484
  :mesh_name,
3778
5485
  :mesh_owner,
3779
5486
  :next_token)
5487
+ SENSITIVE = []
3780
5488
  include Aws::Structure
3781
5489
  end
3782
5490
 
@@ -3800,6 +5508,7 @@ module Aws::AppMesh
3800
5508
  #
3801
5509
  class AccessLog < Struct.new(
3802
5510
  :file)
5511
+ SENSITIVE = []
3803
5512
  include Aws::Structure
3804
5513
  end
3805
5514
 
@@ -3853,6 +5562,42 @@ module Aws::AppMesh
3853
5562
  :mesh_name,
3854
5563
  :mesh_owner,
3855
5564
  :next_token)
5565
+ SENSITIVE = []
5566
+ include Aws::Structure
5567
+ end
5568
+
5569
+ # An object that represents a client policy.
5570
+ #
5571
+ # @note When making an API call, you may pass VirtualGatewayClientPolicy
5572
+ # data as a hash:
5573
+ #
5574
+ # {
5575
+ # tls: {
5576
+ # enforce: false,
5577
+ # ports: [1],
5578
+ # validation: { # required
5579
+ # trust: { # required
5580
+ # acm: {
5581
+ # certificate_authority_arns: ["Arn"], # required
5582
+ # },
5583
+ # file: {
5584
+ # certificate_chain: "FilePath", # required
5585
+ # },
5586
+ # },
5587
+ # },
5588
+ # },
5589
+ # }
5590
+ #
5591
+ # @!attribute [rw] tls
5592
+ # A reference to an object that represents a Transport Layer Security
5593
+ # (TLS) client policy.
5594
+ # @return [Types::VirtualGatewayClientPolicyTls]
5595
+ #
5596
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayClientPolicy AWS API Documentation
5597
+ #
5598
+ class VirtualGatewayClientPolicy < Struct.new(
5599
+ :tls)
5600
+ SENSITIVE = []
3856
5601
  include Aws::Structure
3857
5602
  end
3858
5603
 
@@ -3867,6 +5612,55 @@ module Aws::AppMesh
3867
5612
  #
3868
5613
  class TooManyRequestsException < Struct.new(
3869
5614
  :message)
5615
+ SENSITIVE = []
5616
+ include Aws::Structure
5617
+ end
5618
+
5619
+ # An object that represents logging information.
5620
+ #
5621
+ # @note When making an API call, you may pass VirtualGatewayLogging
5622
+ # data as a hash:
5623
+ #
5624
+ # {
5625
+ # access_log: {
5626
+ # file: {
5627
+ # path: "FilePath", # required
5628
+ # },
5629
+ # },
5630
+ # }
5631
+ #
5632
+ # @!attribute [rw] access_log
5633
+ # The access log configuration.
5634
+ # @return [Types::VirtualGatewayAccessLog]
5635
+ #
5636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayLogging AWS API Documentation
5637
+ #
5638
+ class VirtualGatewayLogging < Struct.new(
5639
+ :access_log)
5640
+ SENSITIVE = []
5641
+ include Aws::Structure
5642
+ end
5643
+
5644
+ # An object that represents a gateway route target.
5645
+ #
5646
+ # @note When making an API call, you may pass GatewayRouteTarget
5647
+ # data as a hash:
5648
+ #
5649
+ # {
5650
+ # virtual_service: { # required
5651
+ # virtual_service_name: "ResourceName", # required
5652
+ # },
5653
+ # }
5654
+ #
5655
+ # @!attribute [rw] virtual_service
5656
+ # An object that represents a virtual service gateway route target.
5657
+ # @return [Types::GatewayRouteVirtualService]
5658
+ #
5659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteTarget AWS API Documentation
5660
+ #
5661
+ class GatewayRouteTarget < Struct.new(
5662
+ :virtual_service)
5663
+ SENSITIVE = []
3870
5664
  include Aws::Structure
3871
5665
  end
3872
5666
 
@@ -3893,6 +5687,7 @@ module Aws::AppMesh
3893
5687
  class Duration < Struct.new(
3894
5688
  :unit,
3895
5689
  :value)
5690
+ SENSITIVE = []
3896
5691
  include Aws::Structure
3897
5692
  end
3898
5693
 
@@ -3904,6 +5699,7 @@ module Aws::AppMesh
3904
5699
  #
3905
5700
  class DescribeRouteOutput < Struct.new(
3906
5701
  :route)
5702
+ SENSITIVE = []
3907
5703
  include Aws::Structure
3908
5704
  end
3909
5705
 
@@ -3963,6 +5759,7 @@ module Aws::AppMesh
3963
5759
  :method,
3964
5760
  :prefix,
3965
5761
  :scheme)
5762
+ SENSITIVE = []
3966
5763
  include Aws::Structure
3967
5764
  end
3968
5765
 
@@ -3996,6 +5793,7 @@ module Aws::AppMesh
3996
5793
  class TagRef < Struct.new(
3997
5794
  :key,
3998
5795
  :value)
5796
+ SENSITIVE = []
3999
5797
  include Aws::Structure
4000
5798
  end
4001
5799
 
@@ -4056,6 +5854,7 @@ module Aws::AppMesh
4056
5854
  :mesh_owner,
4057
5855
  :resource_owner,
4058
5856
  :version)
5857
+ SENSITIVE = []
4059
5858
  include Aws::Structure
4060
5859
  end
4061
5860
 
@@ -4085,6 +5884,20 @@ module Aws::AppMesh
4085
5884
  :metadata,
4086
5885
  :spec,
4087
5886
  :status)
5887
+ SENSITIVE = []
5888
+ include Aws::Structure
5889
+ end
5890
+
5891
+ # @!attribute [rw] gateway_route
5892
+ # The full description of your gateway route following the create
5893
+ # call.
5894
+ # @return [Types::GatewayRouteData]
5895
+ #
5896
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateGatewayRouteOutput AWS API Documentation
5897
+ #
5898
+ class CreateGatewayRouteOutput < Struct.new(
5899
+ :gateway_route)
5900
+ SENSITIVE = []
4088
5901
  include Aws::Structure
4089
5902
  end
4090
5903
 
@@ -4098,6 +5911,7 @@ module Aws::AppMesh
4098
5911
  #
4099
5912
  class VirtualRouterStatus < Struct.new(
4100
5913
  :status)
5914
+ SENSITIVE = []
4101
5915
  include Aws::Structure
4102
5916
  end
4103
5917
 
@@ -4124,6 +5938,45 @@ module Aws::AppMesh
4124
5938
  #
4125
5939
  class TcpRouteAction < Struct.new(
4126
5940
  :weighted_targets)
5941
+ SENSITIVE = []
5942
+ include Aws::Structure
5943
+ end
5944
+
5945
+ # @note When making an API call, you may pass DeleteVirtualGatewayInput
5946
+ # data as a hash:
5947
+ #
5948
+ # {
5949
+ # mesh_name: "ResourceName", # required
5950
+ # mesh_owner: "AccountId",
5951
+ # virtual_gateway_name: "ResourceName", # required
5952
+ # }
5953
+ #
5954
+ # @!attribute [rw] mesh_name
5955
+ # The name of the service mesh to delete the virtual gateway from.
5956
+ # @return [String]
5957
+ #
5958
+ # @!attribute [rw] mesh_owner
5959
+ # The AWS IAM account ID of the service mesh owner. If the account ID
5960
+ # is not your own, then it's the ID of the account that shared the
5961
+ # mesh with your account. For more information about mesh sharing, see
5962
+ # [Working with shared meshes][1].
5963
+ #
5964
+ #
5965
+ #
5966
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
5967
+ # @return [String]
5968
+ #
5969
+ # @!attribute [rw] virtual_gateway_name
5970
+ # The name of the virtual gateway to delete.
5971
+ # @return [String]
5972
+ #
5973
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualGatewayInput AWS API Documentation
5974
+ #
5975
+ class DeleteVirtualGatewayInput < Struct.new(
5976
+ :mesh_name,
5977
+ :mesh_owner,
5978
+ :virtual_gateway_name)
5979
+ SENSITIVE = []
4127
5980
  include Aws::Structure
4128
5981
  end
4129
5982
 
@@ -4161,6 +6014,7 @@ module Aws::AppMesh
4161
6014
  :mesh_name,
4162
6015
  :mesh_owner,
4163
6016
  :virtual_node_name)
6017
+ SENSITIVE = []
4164
6018
  include Aws::Structure
4165
6019
  end
4166
6020
 
@@ -4174,6 +6028,7 @@ module Aws::AppMesh
4174
6028
  #
4175
6029
  class RouteStatus < Struct.new(
4176
6030
  :status)
6031
+ SENSITIVE = []
4177
6032
  include Aws::Structure
4178
6033
  end
4179
6034
 
@@ -4257,6 +6112,7 @@ module Aws::AppMesh
4257
6112
  # @return [Types::PortMapping]
4258
6113
  #
4259
6114
  # @!attribute [rw] timeout
6115
+ # An object that represents timeouts for different protocols.
4260
6116
  # @return [Types::ListenerTimeout]
4261
6117
  #
4262
6118
  # @!attribute [rw] tls
@@ -4271,6 +6127,7 @@ module Aws::AppMesh
4271
6127
  :port_mapping,
4272
6128
  :timeout,
4273
6129
  :tls)
6130
+ SENSITIVE = []
4274
6131
  include Aws::Structure
4275
6132
  end
4276
6133
 
@@ -4345,6 +6202,7 @@ module Aws::AppMesh
4345
6202
  # @return [Types::GrpcRetryPolicy]
4346
6203
  #
4347
6204
  # @!attribute [rw] timeout
6205
+ # An object that represents types of timeouts.
4348
6206
  # @return [Types::GrpcTimeout]
4349
6207
  #
4350
6208
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcRoute AWS API Documentation
@@ -4354,6 +6212,7 @@ module Aws::AppMesh
4354
6212
  :match,
4355
6213
  :retry_policy,
4356
6214
  :timeout)
6215
+ SENSITIVE = []
4357
6216
  include Aws::Structure
4358
6217
  end
4359
6218
 
@@ -4391,12 +6250,47 @@ module Aws::AppMesh
4391
6250
  # A reference to an object that represents a TLS validation context.
4392
6251
  # @return [Types::TlsValidationContext]
4393
6252
  #
4394
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ClientPolicyTls AWS API Documentation
6253
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ClientPolicyTls AWS API Documentation
6254
+ #
6255
+ class ClientPolicyTls < Struct.new(
6256
+ :enforce,
6257
+ :ports,
6258
+ :validation)
6259
+ SENSITIVE = []
6260
+ include Aws::Structure
6261
+ end
6262
+
6263
+ # An object that represents a Transport Layer Security (TLS) validation
6264
+ # context trust.
6265
+ #
6266
+ # @note When making an API call, you may pass VirtualGatewayTlsValidationContextTrust
6267
+ # data as a hash:
6268
+ #
6269
+ # {
6270
+ # acm: {
6271
+ # certificate_authority_arns: ["Arn"], # required
6272
+ # },
6273
+ # file: {
6274
+ # certificate_chain: "FilePath", # required
6275
+ # },
6276
+ # }
6277
+ #
6278
+ # @!attribute [rw] acm
6279
+ # A reference to an object that represents a TLS validation context
6280
+ # trust for an AWS Certicate Manager (ACM) certificate.
6281
+ # @return [Types::VirtualGatewayTlsValidationContextAcmTrust]
6282
+ #
6283
+ # @!attribute [rw] file
6284
+ # An object that represents a TLS validation context trust for a local
6285
+ # file.
6286
+ # @return [Types::VirtualGatewayTlsValidationContextFileTrust]
6287
+ #
6288
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayTlsValidationContextTrust AWS API Documentation
4395
6289
  #
4396
- class ClientPolicyTls < Struct.new(
4397
- :enforce,
4398
- :ports,
4399
- :validation)
6290
+ class VirtualGatewayTlsValidationContextTrust < Struct.new(
6291
+ :acm,
6292
+ :file)
6293
+ SENSITIVE = []
4400
6294
  include Aws::Structure
4401
6295
  end
4402
6296
 
@@ -4408,6 +6302,7 @@ module Aws::AppMesh
4408
6302
  #
4409
6303
  class DeleteVirtualServiceOutput < Struct.new(
4410
6304
  :virtual_service)
6305
+ SENSITIVE = []
4411
6306
  include Aws::Structure
4412
6307
  end
4413
6308
 
@@ -4428,6 +6323,44 @@ module Aws::AppMesh
4428
6323
  #
4429
6324
  class VirtualNodeServiceProvider < Struct.new(
4430
6325
  :virtual_node_name)
6326
+ SENSITIVE = []
6327
+ include Aws::Structure
6328
+ end
6329
+
6330
+ # An object that represents an HTTP gateway route.
6331
+ #
6332
+ # @note When making an API call, you may pass HttpGatewayRoute
6333
+ # data as a hash:
6334
+ #
6335
+ # {
6336
+ # action: { # required
6337
+ # target: { # required
6338
+ # virtual_service: { # required
6339
+ # virtual_service_name: "ResourceName", # required
6340
+ # },
6341
+ # },
6342
+ # },
6343
+ # match: { # required
6344
+ # prefix: "String", # required
6345
+ # },
6346
+ # }
6347
+ #
6348
+ # @!attribute [rw] action
6349
+ # An object that represents the action to take if a match is
6350
+ # determined.
6351
+ # @return [Types::HttpGatewayRouteAction]
6352
+ #
6353
+ # @!attribute [rw] match
6354
+ # An object that represents the criteria for determining a request
6355
+ # match.
6356
+ # @return [Types::HttpGatewayRouteMatch]
6357
+ #
6358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpGatewayRoute AWS API Documentation
6359
+ #
6360
+ class HttpGatewayRoute < Struct.new(
6361
+ :action,
6362
+ :match)
6363
+ SENSITIVE = []
4431
6364
  include Aws::Structure
4432
6365
  end
4433
6366
 
@@ -4463,6 +6396,7 @@ module Aws::AppMesh
4463
6396
  #
4464
6397
  class BackendDefaults < Struct.new(
4465
6398
  :client_policy)
6399
+ SENSITIVE = []
4466
6400
  include Aws::Structure
4467
6401
  end
4468
6402
 
@@ -4497,6 +6431,7 @@ module Aws::AppMesh
4497
6431
  class ListenerTlsFileCertificate < Struct.new(
4498
6432
  :certificate_chain,
4499
6433
  :private_key)
6434
+ SENSITIVE = []
4500
6435
  include Aws::Structure
4501
6436
  end
4502
6437
 
@@ -4549,6 +6484,7 @@ module Aws::AppMesh
4549
6484
  :max_retries,
4550
6485
  :per_retry_timeout,
4551
6486
  :tcp_retry_events)
6487
+ SENSITIVE = []
4552
6488
  include Aws::Structure
4553
6489
  end
4554
6490
 
@@ -4586,6 +6522,7 @@ module Aws::AppMesh
4586
6522
  :mesh_name,
4587
6523
  :mesh_owner,
4588
6524
  :virtual_router_name)
6525
+ SENSITIVE = []
4589
6526
  include Aws::Structure
4590
6527
  end
4591
6528
 
@@ -4605,6 +6542,161 @@ module Aws::AppMesh
4605
6542
  #
4606
6543
  class TooManyTagsException < Struct.new(
4607
6544
  :message)
6545
+ SENSITIVE = []
6546
+ include Aws::Structure
6547
+ end
6548
+
6549
+ # @note When making an API call, you may pass UpdateGatewayRouteInput
6550
+ # data as a hash:
6551
+ #
6552
+ # {
6553
+ # client_token: "String",
6554
+ # gateway_route_name: "ResourceName", # required
6555
+ # mesh_name: "ResourceName", # required
6556
+ # mesh_owner: "AccountId",
6557
+ # spec: { # required
6558
+ # grpc_route: {
6559
+ # action: { # required
6560
+ # target: { # required
6561
+ # virtual_service: { # required
6562
+ # virtual_service_name: "ResourceName", # required
6563
+ # },
6564
+ # },
6565
+ # },
6566
+ # match: { # required
6567
+ # service_name: "ServiceName",
6568
+ # },
6569
+ # },
6570
+ # http2_route: {
6571
+ # action: { # required
6572
+ # target: { # required
6573
+ # virtual_service: { # required
6574
+ # virtual_service_name: "ResourceName", # required
6575
+ # },
6576
+ # },
6577
+ # },
6578
+ # match: { # required
6579
+ # prefix: "String", # required
6580
+ # },
6581
+ # },
6582
+ # http_route: {
6583
+ # action: { # required
6584
+ # target: { # required
6585
+ # virtual_service: { # required
6586
+ # virtual_service_name: "ResourceName", # required
6587
+ # },
6588
+ # },
6589
+ # },
6590
+ # match: { # required
6591
+ # prefix: "String", # required
6592
+ # },
6593
+ # },
6594
+ # },
6595
+ # virtual_gateway_name: "ResourceName", # required
6596
+ # }
6597
+ #
6598
+ # @!attribute [rw] client_token
6599
+ # Unique, case-sensitive identifier that you provide to ensure the
6600
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
6601
+ # underscores are allowed.
6602
+ #
6603
+ # **A suitable default value is auto-generated.** You should normally
6604
+ # not need to pass this option.
6605
+ # @return [String]
6606
+ #
6607
+ # @!attribute [rw] gateway_route_name
6608
+ # The name of the gateway route to update.
6609
+ # @return [String]
6610
+ #
6611
+ # @!attribute [rw] mesh_name
6612
+ # The name of the service mesh that the gateway route resides in.
6613
+ # @return [String]
6614
+ #
6615
+ # @!attribute [rw] mesh_owner
6616
+ # The AWS IAM account ID of the service mesh owner. If the account ID
6617
+ # is not your own, then it's the ID of the account that shared the
6618
+ # mesh with your account. For more information about mesh sharing, see
6619
+ # [Working with shared meshes][1].
6620
+ #
6621
+ #
6622
+ #
6623
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
6624
+ # @return [String]
6625
+ #
6626
+ # @!attribute [rw] spec
6627
+ # The new gateway route specification to apply. This overwrites the
6628
+ # existing data.
6629
+ # @return [Types::GatewayRouteSpec]
6630
+ #
6631
+ # @!attribute [rw] virtual_gateway_name
6632
+ # The name of the virtual gateway that the gateway route is associated
6633
+ # with.
6634
+ # @return [String]
6635
+ #
6636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateGatewayRouteInput AWS API Documentation
6637
+ #
6638
+ class UpdateGatewayRouteInput < Struct.new(
6639
+ :client_token,
6640
+ :gateway_route_name,
6641
+ :mesh_name,
6642
+ :mesh_owner,
6643
+ :spec,
6644
+ :virtual_gateway_name)
6645
+ SENSITIVE = []
6646
+ include Aws::Structure
6647
+ end
6648
+
6649
+ # @note When making an API call, you may pass ListVirtualGatewaysInput
6650
+ # data as a hash:
6651
+ #
6652
+ # {
6653
+ # limit: 1,
6654
+ # mesh_name: "ResourceName", # required
6655
+ # mesh_owner: "AccountId",
6656
+ # next_token: "String",
6657
+ # }
6658
+ #
6659
+ # @!attribute [rw] limit
6660
+ # The maximum number of results returned by `ListVirtualGateways` in
6661
+ # paginated output. When you use this parameter, `ListVirtualGateways`
6662
+ # returns only `limit` results in a single page along with a
6663
+ # `nextToken` response element. You can see the remaining results of
6664
+ # the initial request by sending another `ListVirtualGateways` request
6665
+ # with the returned `nextToken` value. This value can be between 1 and
6666
+ # 100. If you don't use this parameter, `ListVirtualGateways` returns
6667
+ # up to 100 results and a `nextToken` value if applicable.
6668
+ # @return [Integer]
6669
+ #
6670
+ # @!attribute [rw] mesh_name
6671
+ # The name of the service mesh to list virtual gateways in.
6672
+ # @return [String]
6673
+ #
6674
+ # @!attribute [rw] mesh_owner
6675
+ # The AWS IAM account ID of the service mesh owner. If the account ID
6676
+ # is not your own, then it's the ID of the account that shared the
6677
+ # mesh with your account. For more information about mesh sharing, see
6678
+ # [Working with shared meshes][1].
6679
+ #
6680
+ #
6681
+ #
6682
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
6683
+ # @return [String]
6684
+ #
6685
+ # @!attribute [rw] next_token
6686
+ # The `nextToken` value returned from a previous paginated
6687
+ # `ListVirtualGateways` request where `limit` was used and the results
6688
+ # exceeded the value of that parameter. Pagination continues from the
6689
+ # end of the previous results that returned the `nextToken` value.
6690
+ # @return [String]
6691
+ #
6692
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualGatewaysInput AWS API Documentation
6693
+ #
6694
+ class ListVirtualGatewaysInput < Struct.new(
6695
+ :limit,
6696
+ :mesh_name,
6697
+ :mesh_owner,
6698
+ :next_token)
6699
+ SENSITIVE = []
4608
6700
  include Aws::Structure
4609
6701
  end
4610
6702
 
@@ -4627,6 +6719,7 @@ module Aws::AppMesh
4627
6719
  #
4628
6720
  class TlsValidationContextFileTrust < Struct.new(
4629
6721
  :certificate_chain)
6722
+ SENSITIVE = []
4630
6723
  include Aws::Structure
4631
6724
  end
4632
6725
 
@@ -4669,6 +6762,7 @@ module Aws::AppMesh
4669
6762
  :invert,
4670
6763
  :match,
4671
6764
  :name)
6765
+ SENSITIVE = []
4672
6766
  include Aws::Structure
4673
6767
  end
4674
6768
 
@@ -4915,9 +7009,12 @@ module Aws::AppMesh
4915
7009
  :spec,
4916
7010
  :tags,
4917
7011
  :virtual_router_name)
7012
+ SENSITIVE = []
4918
7013
  include Aws::Structure
4919
7014
  end
4920
7015
 
7016
+ # An object that represents types of timeouts.
7017
+ #
4921
7018
  # @note When making an API call, you may pass TcpTimeout
4922
7019
  # data as a hash:
4923
7020
  #
@@ -4936,6 +7033,51 @@ module Aws::AppMesh
4936
7033
  #
4937
7034
  class TcpTimeout < Struct.new(
4938
7035
  :idle)
7036
+ SENSITIVE = []
7037
+ include Aws::Structure
7038
+ end
7039
+
7040
+ # @note When making an API call, you may pass DeleteGatewayRouteInput
7041
+ # data as a hash:
7042
+ #
7043
+ # {
7044
+ # gateway_route_name: "ResourceName", # required
7045
+ # mesh_name: "ResourceName", # required
7046
+ # mesh_owner: "AccountId",
7047
+ # virtual_gateway_name: "ResourceName", # required
7048
+ # }
7049
+ #
7050
+ # @!attribute [rw] gateway_route_name
7051
+ # The name of the gateway route to delete.
7052
+ # @return [String]
7053
+ #
7054
+ # @!attribute [rw] mesh_name
7055
+ # The name of the service mesh to delete the gateway route from.
7056
+ # @return [String]
7057
+ #
7058
+ # @!attribute [rw] mesh_owner
7059
+ # The AWS IAM account ID of the service mesh owner. If the account ID
7060
+ # is not your own, then it's the ID of the account that shared the
7061
+ # mesh with your account. For more information about mesh sharing, see
7062
+ # [Working with shared meshes][1].
7063
+ #
7064
+ #
7065
+ #
7066
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
7067
+ # @return [String]
7068
+ #
7069
+ # @!attribute [rw] virtual_gateway_name
7070
+ # The name of the virtual gateway to delete the route from.
7071
+ # @return [String]
7072
+ #
7073
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteGatewayRouteInput AWS API Documentation
7074
+ #
7075
+ class DeleteGatewayRouteInput < Struct.new(
7076
+ :gateway_route_name,
7077
+ :mesh_name,
7078
+ :mesh_owner,
7079
+ :virtual_gateway_name)
7080
+ SENSITIVE = []
4939
7081
  include Aws::Structure
4940
7082
  end
4941
7083
 
@@ -5165,6 +7307,7 @@ module Aws::AppMesh
5165
7307
  :route_name,
5166
7308
  :spec,
5167
7309
  :virtual_router_name)
7310
+ SENSITIVE = []
5168
7311
  include Aws::Structure
5169
7312
  end
5170
7313
 
@@ -5239,6 +7382,7 @@ module Aws::AppMesh
5239
7382
  # @return [Types::HttpRetryPolicy]
5240
7383
  #
5241
7384
  # @!attribute [rw] timeout
7385
+ # An object that represents types of timeouts.
5242
7386
  # @return [Types::HttpTimeout]
5243
7387
  #
5244
7388
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpRoute AWS API Documentation
@@ -5248,6 +7392,7 @@ module Aws::AppMesh
5248
7392
  :match,
5249
7393
  :retry_policy,
5250
7394
  :timeout)
7395
+ SENSITIVE = []
5251
7396
  include Aws::Structure
5252
7397
  end
5253
7398
 
@@ -5279,6 +7424,74 @@ module Aws::AppMesh
5279
7424
  class DescribeMeshInput < Struct.new(
5280
7425
  :mesh_name,
5281
7426
  :mesh_owner)
7427
+ SENSITIVE = []
7428
+ include Aws::Structure
7429
+ end
7430
+
7431
+ # An object that represents a virtual gateway returned by a list
7432
+ # operation.
7433
+ #
7434
+ # @!attribute [rw] arn
7435
+ # The full Amazon Resource Name (ARN) for the resource.
7436
+ # @return [String]
7437
+ #
7438
+ # @!attribute [rw] created_at
7439
+ # The Unix epoch timestamp in seconds for when the resource was
7440
+ # created.
7441
+ # @return [Time]
7442
+ #
7443
+ # @!attribute [rw] last_updated_at
7444
+ # The Unix epoch timestamp in seconds for when the resource was last
7445
+ # updated.
7446
+ # @return [Time]
7447
+ #
7448
+ # @!attribute [rw] mesh_name
7449
+ # The name of the service mesh that the resource resides in.
7450
+ # @return [String]
7451
+ #
7452
+ # @!attribute [rw] mesh_owner
7453
+ # The AWS IAM account ID of the service mesh owner. If the account ID
7454
+ # is not your own, then it's the ID of the account that shared the
7455
+ # mesh with your account. For more information about mesh sharing, see
7456
+ # [Working with shared meshes][1].
7457
+ #
7458
+ #
7459
+ #
7460
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
7461
+ # @return [String]
7462
+ #
7463
+ # @!attribute [rw] resource_owner
7464
+ # The AWS IAM account ID of the resource owner. If the account ID is
7465
+ # not your own, then it's the ID of the mesh owner or of another
7466
+ # account that the mesh is shared with. For more information about
7467
+ # mesh sharing, see [Working with shared meshes][1].
7468
+ #
7469
+ #
7470
+ #
7471
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
7472
+ # @return [String]
7473
+ #
7474
+ # @!attribute [rw] version
7475
+ # The version of the resource. Resources are created at version 1, and
7476
+ # this version is incremented each time that they're updated.
7477
+ # @return [Integer]
7478
+ #
7479
+ # @!attribute [rw] virtual_gateway_name
7480
+ # The name of the resource.
7481
+ # @return [String]
7482
+ #
7483
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayRef AWS API Documentation
7484
+ #
7485
+ class VirtualGatewayRef < Struct.new(
7486
+ :arn,
7487
+ :created_at,
7488
+ :last_updated_at,
7489
+ :mesh_name,
7490
+ :mesh_owner,
7491
+ :resource_owner,
7492
+ :version,
7493
+ :virtual_gateway_name)
7494
+ SENSITIVE = []
5282
7495
  include Aws::Structure
5283
7496
  end
5284
7497
 
@@ -5301,6 +7514,31 @@ module Aws::AppMesh
5301
7514
  #
5302
7515
  class MeshSpec < Struct.new(
5303
7516
  :egress_filter)
7517
+ SENSITIVE = []
7518
+ include Aws::Structure
7519
+ end
7520
+
7521
+ # @!attribute [rw] virtual_gateway
7522
+ # The full description of your virtual gateway.
7523
+ # @return [Types::VirtualGatewayData]
7524
+ #
7525
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualGatewayOutput AWS API Documentation
7526
+ #
7527
+ class DescribeVirtualGatewayOutput < Struct.new(
7528
+ :virtual_gateway)
7529
+ SENSITIVE = []
7530
+ include Aws::Structure
7531
+ end
7532
+
7533
+ # @!attribute [rw] gateway_route
7534
+ # The full description of your gateway route.
7535
+ # @return [Types::GatewayRouteData]
7536
+ #
7537
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeGatewayRouteOutput AWS API Documentation
7538
+ #
7539
+ class DescribeGatewayRouteOutput < Struct.new(
7540
+ :gateway_route)
7541
+ SENSITIVE = []
5304
7542
  include Aws::Structure
5305
7543
  end
5306
7544
 
@@ -5321,6 +7559,7 @@ module Aws::AppMesh
5321
7559
  class ListTagsForResourceOutput < Struct.new(
5322
7560
  :next_token,
5323
7561
  :tags)
7562
+ SENSITIVE = []
5324
7563
  include Aws::Structure
5325
7564
  end
5326
7565
 
@@ -5359,6 +7598,7 @@ module Aws::AppMesh
5359
7598
  class ServiceDiscovery < Struct.new(
5360
7599
  :aws_cloud_map,
5361
7600
  :dns)
7601
+ SENSITIVE = []
5362
7602
  include Aws::Structure
5363
7603
  end
5364
7604
 
@@ -5379,6 +7619,7 @@ module Aws::AppMesh
5379
7619
  class ListVirtualNodesOutput < Struct.new(
5380
7620
  :next_token,
5381
7621
  :virtual_nodes)
7622
+ SENSITIVE = []
5382
7623
  include Aws::Structure
5383
7624
  end
5384
7625
 
@@ -5403,6 +7644,7 @@ module Aws::AppMesh
5403
7644
  class UntagResourceInput < Struct.new(
5404
7645
  :resource_arn,
5405
7646
  :tag_keys)
7647
+ SENSITIVE = []
5406
7648
  include Aws::Structure
5407
7649
  end
5408
7650
 
@@ -5430,6 +7672,7 @@ module Aws::AppMesh
5430
7672
  #
5431
7673
  class ListenerTlsAcmCertificate < Struct.new(
5432
7674
  :certificate_arn)
7675
+ SENSITIVE = []
5433
7676
  include Aws::Structure
5434
7677
  end
5435
7678