aws-sdk-workspacesweb 1.7.0 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -18,6 +18,8 @@ module Aws::WorkSpacesWeb
18
18
  ArnList = Shapes::ListShape.new(name: 'ArnList')
19
19
  AssociateBrowserSettingsRequest = Shapes::StructureShape.new(name: 'AssociateBrowserSettingsRequest')
20
20
  AssociateBrowserSettingsResponse = Shapes::StructureShape.new(name: 'AssociateBrowserSettingsResponse')
21
+ AssociateIpAccessSettingsRequest = Shapes::StructureShape.new(name: 'AssociateIpAccessSettingsRequest')
22
+ AssociateIpAccessSettingsResponse = Shapes::StructureShape.new(name: 'AssociateIpAccessSettingsResponse')
21
23
  AssociateNetworkSettingsRequest = Shapes::StructureShape.new(name: 'AssociateNetworkSettingsRequest')
22
24
  AssociateNetworkSettingsResponse = Shapes::StructureShape.new(name: 'AssociateNetworkSettingsResponse')
23
25
  AssociateTrustStoreRequest = Shapes::StructureShape.new(name: 'AssociateTrustStoreRequest')
@@ -46,6 +48,8 @@ module Aws::WorkSpacesWeb
46
48
  CreateBrowserSettingsResponse = Shapes::StructureShape.new(name: 'CreateBrowserSettingsResponse')
47
49
  CreateIdentityProviderRequest = Shapes::StructureShape.new(name: 'CreateIdentityProviderRequest')
48
50
  CreateIdentityProviderResponse = Shapes::StructureShape.new(name: 'CreateIdentityProviderResponse')
51
+ CreateIpAccessSettingsRequest = Shapes::StructureShape.new(name: 'CreateIpAccessSettingsRequest')
52
+ CreateIpAccessSettingsResponse = Shapes::StructureShape.new(name: 'CreateIpAccessSettingsResponse')
49
53
  CreateNetworkSettingsRequest = Shapes::StructureShape.new(name: 'CreateNetworkSettingsRequest')
50
54
  CreateNetworkSettingsResponse = Shapes::StructureShape.new(name: 'CreateNetworkSettingsResponse')
51
55
  CreatePortalRequest = Shapes::StructureShape.new(name: 'CreatePortalRequest')
@@ -60,6 +64,8 @@ module Aws::WorkSpacesWeb
60
64
  DeleteBrowserSettingsResponse = Shapes::StructureShape.new(name: 'DeleteBrowserSettingsResponse')
61
65
  DeleteIdentityProviderRequest = Shapes::StructureShape.new(name: 'DeleteIdentityProviderRequest')
62
66
  DeleteIdentityProviderResponse = Shapes::StructureShape.new(name: 'DeleteIdentityProviderResponse')
67
+ DeleteIpAccessSettingsRequest = Shapes::StructureShape.new(name: 'DeleteIpAccessSettingsRequest')
68
+ DeleteIpAccessSettingsResponse = Shapes::StructureShape.new(name: 'DeleteIpAccessSettingsResponse')
63
69
  DeleteNetworkSettingsRequest = Shapes::StructureShape.new(name: 'DeleteNetworkSettingsRequest')
64
70
  DeleteNetworkSettingsResponse = Shapes::StructureShape.new(name: 'DeleteNetworkSettingsResponse')
65
71
  DeletePortalRequest = Shapes::StructureShape.new(name: 'DeletePortalRequest')
@@ -70,8 +76,11 @@ module Aws::WorkSpacesWeb
70
76
  DeleteUserAccessLoggingSettingsResponse = Shapes::StructureShape.new(name: 'DeleteUserAccessLoggingSettingsResponse')
71
77
  DeleteUserSettingsRequest = Shapes::StructureShape.new(name: 'DeleteUserSettingsRequest')
72
78
  DeleteUserSettingsResponse = Shapes::StructureShape.new(name: 'DeleteUserSettingsResponse')
79
+ Description = Shapes::StringShape.new(name: 'Description')
73
80
  DisassociateBrowserSettingsRequest = Shapes::StructureShape.new(name: 'DisassociateBrowserSettingsRequest')
74
81
  DisassociateBrowserSettingsResponse = Shapes::StructureShape.new(name: 'DisassociateBrowserSettingsResponse')
82
+ DisassociateIpAccessSettingsRequest = Shapes::StructureShape.new(name: 'DisassociateIpAccessSettingsRequest')
83
+ DisassociateIpAccessSettingsResponse = Shapes::StructureShape.new(name: 'DisassociateIpAccessSettingsResponse')
75
84
  DisassociateNetworkSettingsRequest = Shapes::StructureShape.new(name: 'DisassociateNetworkSettingsRequest')
76
85
  DisassociateNetworkSettingsResponse = Shapes::StructureShape.new(name: 'DisassociateNetworkSettingsResponse')
77
86
  DisassociateTrustStoreRequest = Shapes::StructureShape.new(name: 'DisassociateTrustStoreRequest')
@@ -90,6 +99,8 @@ module Aws::WorkSpacesWeb
90
99
  GetBrowserSettingsResponse = Shapes::StructureShape.new(name: 'GetBrowserSettingsResponse')
91
100
  GetIdentityProviderRequest = Shapes::StructureShape.new(name: 'GetIdentityProviderRequest')
92
101
  GetIdentityProviderResponse = Shapes::StructureShape.new(name: 'GetIdentityProviderResponse')
102
+ GetIpAccessSettingsRequest = Shapes::StructureShape.new(name: 'GetIpAccessSettingsRequest')
103
+ GetIpAccessSettingsResponse = Shapes::StructureShape.new(name: 'GetIpAccessSettingsResponse')
93
104
  GetNetworkSettingsRequest = Shapes::StructureShape.new(name: 'GetNetworkSettingsRequest')
94
105
  GetNetworkSettingsResponse = Shapes::StructureShape.new(name: 'GetNetworkSettingsResponse')
95
106
  GetPortalRequest = Shapes::StructureShape.new(name: 'GetPortalRequest')
@@ -112,11 +123,19 @@ module Aws::WorkSpacesWeb
112
123
  IdentityProviderType = Shapes::StringShape.new(name: 'IdentityProviderType')
113
124
  IdleDisconnectTimeoutInMinutes = Shapes::IntegerShape.new(name: 'IdleDisconnectTimeoutInMinutes')
114
125
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
126
+ IpAccessSettings = Shapes::StructureShape.new(name: 'IpAccessSettings')
127
+ IpAccessSettingsList = Shapes::ListShape.new(name: 'IpAccessSettingsList')
128
+ IpAccessSettingsSummary = Shapes::StructureShape.new(name: 'IpAccessSettingsSummary')
129
+ IpRange = Shapes::StringShape.new(name: 'IpRange')
130
+ IpRule = Shapes::StructureShape.new(name: 'IpRule')
131
+ IpRuleList = Shapes::ListShape.new(name: 'IpRuleList')
115
132
  KinesisStreamArn = Shapes::StringShape.new(name: 'KinesisStreamArn')
116
133
  ListBrowserSettingsRequest = Shapes::StructureShape.new(name: 'ListBrowserSettingsRequest')
117
134
  ListBrowserSettingsResponse = Shapes::StructureShape.new(name: 'ListBrowserSettingsResponse')
118
135
  ListIdentityProvidersRequest = Shapes::StructureShape.new(name: 'ListIdentityProvidersRequest')
119
136
  ListIdentityProvidersResponse = Shapes::StructureShape.new(name: 'ListIdentityProvidersResponse')
137
+ ListIpAccessSettingsRequest = Shapes::StructureShape.new(name: 'ListIpAccessSettingsRequest')
138
+ ListIpAccessSettingsResponse = Shapes::StructureShape.new(name: 'ListIpAccessSettingsResponse')
120
139
  ListNetworkSettingsRequest = Shapes::StructureShape.new(name: 'ListNetworkSettingsRequest')
121
140
  ListNetworkSettingsResponse = Shapes::StructureShape.new(name: 'ListNetworkSettingsResponse')
122
141
  ListPortalsRequest = Shapes::StructureShape.new(name: 'ListPortalsRequest')
@@ -176,6 +195,8 @@ module Aws::WorkSpacesWeb
176
195
  UpdateBrowserSettingsResponse = Shapes::StructureShape.new(name: 'UpdateBrowserSettingsResponse')
177
196
  UpdateIdentityProviderRequest = Shapes::StructureShape.new(name: 'UpdateIdentityProviderRequest')
178
197
  UpdateIdentityProviderResponse = Shapes::StructureShape.new(name: 'UpdateIdentityProviderResponse')
198
+ UpdateIpAccessSettingsRequest = Shapes::StructureShape.new(name: 'UpdateIpAccessSettingsRequest')
199
+ UpdateIpAccessSettingsResponse = Shapes::StructureShape.new(name: 'UpdateIpAccessSettingsResponse')
179
200
  UpdateNetworkSettingsRequest = Shapes::StructureShape.new(name: 'UpdateNetworkSettingsRequest')
180
201
  UpdateNetworkSettingsResponse = Shapes::StructureShape.new(name: 'UpdateNetworkSettingsResponse')
181
202
  UpdatePortalRequest = Shapes::StructureShape.new(name: 'UpdatePortalRequest')
@@ -212,6 +233,14 @@ module Aws::WorkSpacesWeb
212
233
  AssociateBrowserSettingsResponse.add_member(:portal_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location_name: "portalArn"))
213
234
  AssociateBrowserSettingsResponse.struct_class = Types::AssociateBrowserSettingsResponse
214
235
 
236
+ AssociateIpAccessSettingsRequest.add_member(:ip_access_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "querystring", location_name: "ipAccessSettingsArn"))
237
+ AssociateIpAccessSettingsRequest.add_member(:portal_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "portalArn"))
238
+ AssociateIpAccessSettingsRequest.struct_class = Types::AssociateIpAccessSettingsRequest
239
+
240
+ AssociateIpAccessSettingsResponse.add_member(:ip_access_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location_name: "ipAccessSettingsArn"))
241
+ AssociateIpAccessSettingsResponse.add_member(:portal_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location_name: "portalArn"))
242
+ AssociateIpAccessSettingsResponse.struct_class = Types::AssociateIpAccessSettingsResponse
243
+
215
244
  AssociateNetworkSettingsRequest.add_member(:network_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "querystring", location_name: "networkSettingsArn"))
216
245
  AssociateNetworkSettingsRequest.add_member(:portal_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "portalArn"))
217
246
  AssociateNetworkSettingsRequest.struct_class = Types::AssociateNetworkSettingsRequest
@@ -300,6 +329,18 @@ module Aws::WorkSpacesWeb
300
329
  CreateIdentityProviderResponse.add_member(:identity_provider_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location_name: "identityProviderArn"))
301
330
  CreateIdentityProviderResponse.struct_class = Types::CreateIdentityProviderResponse
302
331
 
332
+ CreateIpAccessSettingsRequest.add_member(:additional_encryption_context, Shapes::ShapeRef.new(shape: EncryptionContextMap, location_name: "additionalEncryptionContext"))
333
+ CreateIpAccessSettingsRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
334
+ CreateIpAccessSettingsRequest.add_member(:customer_managed_key, Shapes::ShapeRef.new(shape: keyArn, location_name: "customerManagedKey"))
335
+ CreateIpAccessSettingsRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
336
+ CreateIpAccessSettingsRequest.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "displayName"))
337
+ CreateIpAccessSettingsRequest.add_member(:ip_rules, Shapes::ShapeRef.new(shape: IpRuleList, required: true, location_name: "ipRules"))
338
+ CreateIpAccessSettingsRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
339
+ CreateIpAccessSettingsRequest.struct_class = Types::CreateIpAccessSettingsRequest
340
+
341
+ CreateIpAccessSettingsResponse.add_member(:ip_access_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location_name: "ipAccessSettingsArn"))
342
+ CreateIpAccessSettingsResponse.struct_class = Types::CreateIpAccessSettingsResponse
343
+
303
344
  CreateNetworkSettingsRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
304
345
  CreateNetworkSettingsRequest.add_member(:security_group_ids, Shapes::ShapeRef.new(shape: SecurityGroupIdList, required: true, location_name: "securityGroupIds"))
305
346
  CreateNetworkSettingsRequest.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: SubnetIdList, required: true, location_name: "subnetIds"))
@@ -362,6 +403,11 @@ module Aws::WorkSpacesWeb
362
403
 
363
404
  DeleteIdentityProviderResponse.struct_class = Types::DeleteIdentityProviderResponse
364
405
 
406
+ DeleteIpAccessSettingsRequest.add_member(:ip_access_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "ipAccessSettingsArn"))
407
+ DeleteIpAccessSettingsRequest.struct_class = Types::DeleteIpAccessSettingsRequest
408
+
409
+ DeleteIpAccessSettingsResponse.struct_class = Types::DeleteIpAccessSettingsResponse
410
+
365
411
  DeleteNetworkSettingsRequest.add_member(:network_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "networkSettingsArn"))
366
412
  DeleteNetworkSettingsRequest.struct_class = Types::DeleteNetworkSettingsRequest
367
413
 
@@ -392,6 +438,11 @@ module Aws::WorkSpacesWeb
392
438
 
393
439
  DisassociateBrowserSettingsResponse.struct_class = Types::DisassociateBrowserSettingsResponse
394
440
 
441
+ DisassociateIpAccessSettingsRequest.add_member(:portal_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "portalArn"))
442
+ DisassociateIpAccessSettingsRequest.struct_class = Types::DisassociateIpAccessSettingsRequest
443
+
444
+ DisassociateIpAccessSettingsResponse.struct_class = Types::DisassociateIpAccessSettingsResponse
445
+
395
446
  DisassociateNetworkSettingsRequest.add_member(:portal_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "portalArn"))
396
447
  DisassociateNetworkSettingsRequest.struct_class = Types::DisassociateNetworkSettingsRequest
397
448
 
@@ -427,6 +478,12 @@ module Aws::WorkSpacesWeb
427
478
  GetIdentityProviderResponse.add_member(:identity_provider, Shapes::ShapeRef.new(shape: IdentityProvider, location_name: "identityProvider"))
428
479
  GetIdentityProviderResponse.struct_class = Types::GetIdentityProviderResponse
429
480
 
481
+ GetIpAccessSettingsRequest.add_member(:ip_access_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "ipAccessSettingsArn"))
482
+ GetIpAccessSettingsRequest.struct_class = Types::GetIpAccessSettingsRequest
483
+
484
+ GetIpAccessSettingsResponse.add_member(:ip_access_settings, Shapes::ShapeRef.new(shape: IpAccessSettings, location_name: "ipAccessSettings"))
485
+ GetIpAccessSettingsResponse.struct_class = Types::GetIpAccessSettingsResponse
486
+
430
487
  GetNetworkSettingsRequest.add_member(:network_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "networkSettingsArn"))
431
488
  GetNetworkSettingsRequest.struct_class = Types::GetNetworkSettingsRequest
432
489
 
@@ -492,6 +549,28 @@ module Aws::WorkSpacesWeb
492
549
  InternalServerException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: RetryAfterSeconds, location: "header", location_name: "Retry-After"))
493
550
  InternalServerException.struct_class = Types::InternalServerException
494
551
 
552
+ IpAccessSettings.add_member(:associated_portal_arns, Shapes::ShapeRef.new(shape: ArnList, location_name: "associatedPortalArns"))
553
+ IpAccessSettings.add_member(:creation_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDate"))
554
+ IpAccessSettings.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
555
+ IpAccessSettings.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "displayName"))
556
+ IpAccessSettings.add_member(:ip_access_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location_name: "ipAccessSettingsArn"))
557
+ IpAccessSettings.add_member(:ip_rules, Shapes::ShapeRef.new(shape: IpRuleList, location_name: "ipRules"))
558
+ IpAccessSettings.struct_class = Types::IpAccessSettings
559
+
560
+ IpAccessSettingsList.member = Shapes::ShapeRef.new(shape: IpAccessSettingsSummary)
561
+
562
+ IpAccessSettingsSummary.add_member(:creation_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDate"))
563
+ IpAccessSettingsSummary.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
564
+ IpAccessSettingsSummary.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "displayName"))
565
+ IpAccessSettingsSummary.add_member(:ip_access_settings_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "ipAccessSettingsArn"))
566
+ IpAccessSettingsSummary.struct_class = Types::IpAccessSettingsSummary
567
+
568
+ IpRule.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
569
+ IpRule.add_member(:ip_range, Shapes::ShapeRef.new(shape: IpRange, required: true, location_name: "ipRange"))
570
+ IpRule.struct_class = Types::IpRule
571
+
572
+ IpRuleList.member = Shapes::ShapeRef.new(shape: IpRule)
573
+
495
574
  ListBrowserSettingsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
496
575
  ListBrowserSettingsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
497
576
  ListBrowserSettingsRequest.struct_class = Types::ListBrowserSettingsRequest
@@ -509,6 +588,14 @@ module Aws::WorkSpacesWeb
509
588
  ListIdentityProvidersResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
510
589
  ListIdentityProvidersResponse.struct_class = Types::ListIdentityProvidersResponse
511
590
 
591
+ ListIpAccessSettingsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
592
+ ListIpAccessSettingsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
593
+ ListIpAccessSettingsRequest.struct_class = Types::ListIpAccessSettingsRequest
594
+
595
+ ListIpAccessSettingsResponse.add_member(:ip_access_settings, Shapes::ShapeRef.new(shape: IpAccessSettingsList, location_name: "ipAccessSettings"))
596
+ ListIpAccessSettingsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
597
+ ListIpAccessSettingsResponse.struct_class = Types::ListIpAccessSettingsResponse
598
+
512
599
  ListNetworkSettingsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
513
600
  ListNetworkSettingsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
514
601
  ListNetworkSettingsRequest.struct_class = Types::ListNetworkSettingsRequest
@@ -583,6 +670,7 @@ module Aws::WorkSpacesWeb
583
670
  Portal.add_member(:browser_type, Shapes::ShapeRef.new(shape: BrowserType, location_name: "browserType"))
584
671
  Portal.add_member(:creation_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDate"))
585
672
  Portal.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "displayName"))
673
+ Portal.add_member(:ip_access_settings_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "ipAccessSettingsArn"))
586
674
  Portal.add_member(:network_settings_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "networkSettingsArn"))
587
675
  Portal.add_member(:portal_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "portalArn"))
588
676
  Portal.add_member(:portal_endpoint, Shapes::ShapeRef.new(shape: PortalEndpoint, location_name: "portalEndpoint"))
@@ -601,6 +689,7 @@ module Aws::WorkSpacesWeb
601
689
  PortalSummary.add_member(:browser_type, Shapes::ShapeRef.new(shape: BrowserType, location_name: "browserType"))
602
690
  PortalSummary.add_member(:creation_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDate"))
603
691
  PortalSummary.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "displayName"))
692
+ PortalSummary.add_member(:ip_access_settings_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "ipAccessSettingsArn"))
604
693
  PortalSummary.add_member(:network_settings_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "networkSettingsArn"))
605
694
  PortalSummary.add_member(:portal_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "portalArn"))
606
695
  PortalSummary.add_member(:portal_endpoint, Shapes::ShapeRef.new(shape: PortalEndpoint, location_name: "portalEndpoint"))
@@ -685,6 +774,16 @@ module Aws::WorkSpacesWeb
685
774
  UpdateIdentityProviderResponse.add_member(:identity_provider, Shapes::ShapeRef.new(shape: IdentityProvider, required: true, location_name: "identityProvider"))
686
775
  UpdateIdentityProviderResponse.struct_class = Types::UpdateIdentityProviderResponse
687
776
 
777
+ UpdateIpAccessSettingsRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
778
+ UpdateIpAccessSettingsRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
779
+ UpdateIpAccessSettingsRequest.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "displayName"))
780
+ UpdateIpAccessSettingsRequest.add_member(:ip_access_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "ipAccessSettingsArn"))
781
+ UpdateIpAccessSettingsRequest.add_member(:ip_rules, Shapes::ShapeRef.new(shape: IpRuleList, location_name: "ipRules"))
782
+ UpdateIpAccessSettingsRequest.struct_class = Types::UpdateIpAccessSettingsRequest
783
+
784
+ UpdateIpAccessSettingsResponse.add_member(:ip_access_settings, Shapes::ShapeRef.new(shape: IpAccessSettings, required: true, location_name: "ipAccessSettings"))
785
+ UpdateIpAccessSettingsResponse.struct_class = Types::UpdateIpAccessSettingsResponse
786
+
688
787
  UpdateNetworkSettingsRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
689
788
  UpdateNetworkSettingsRequest.add_member(:network_settings_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "networkSettingsArn"))
690
789
  UpdateNetworkSettingsRequest.add_member(:security_group_ids, Shapes::ShapeRef.new(shape: SecurityGroupIdList, location_name: "securityGroupIds"))
@@ -811,6 +910,20 @@ module Aws::WorkSpacesWeb
811
910
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
812
911
  end)
813
912
 
913
+ api.add_operation(:associate_ip_access_settings, Seahorse::Model::Operation.new.tap do |o|
914
+ o.name = "AssociateIpAccessSettings"
915
+ o.http_method = "PUT"
916
+ o.http_request_uri = "/portals/{portalArn+}/ipAccessSettings"
917
+ o.input = Shapes::ShapeRef.new(shape: AssociateIpAccessSettingsRequest)
918
+ o.output = Shapes::ShapeRef.new(shape: AssociateIpAccessSettingsResponse)
919
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
920
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
921
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
922
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
923
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
924
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
925
+ end)
926
+
814
927
  api.add_operation(:associate_network_settings, Seahorse::Model::Operation.new.tap do |o|
815
928
  o.name = "AssociateNetworkSettings"
816
929
  o.http_method = "PUT"
@@ -896,6 +1009,20 @@ module Aws::WorkSpacesWeb
896
1009
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
897
1010
  end)
898
1011
 
1012
+ api.add_operation(:create_ip_access_settings, Seahorse::Model::Operation.new.tap do |o|
1013
+ o.name = "CreateIpAccessSettings"
1014
+ o.http_method = "POST"
1015
+ o.http_request_uri = "/ipAccessSettings"
1016
+ o.input = Shapes::ShapeRef.new(shape: CreateIpAccessSettingsRequest)
1017
+ o.output = Shapes::ShapeRef.new(shape: CreateIpAccessSettingsResponse)
1018
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1019
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1020
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1021
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
1022
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1023
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1024
+ end)
1025
+
899
1026
  api.add_operation(:create_network_settings, Seahorse::Model::Operation.new.tap do |o|
900
1027
  o.name = "CreateNetworkSettings"
901
1028
  o.http_method = "POST"
@@ -993,6 +1120,19 @@ module Aws::WorkSpacesWeb
993
1120
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
994
1121
  end)
995
1122
 
1123
+ api.add_operation(:delete_ip_access_settings, Seahorse::Model::Operation.new.tap do |o|
1124
+ o.name = "DeleteIpAccessSettings"
1125
+ o.http_method = "DELETE"
1126
+ o.http_request_uri = "/ipAccessSettings/{ipAccessSettingsArn+}"
1127
+ o.input = Shapes::ShapeRef.new(shape: DeleteIpAccessSettingsRequest)
1128
+ o.output = Shapes::ShapeRef.new(shape: DeleteIpAccessSettingsResponse)
1129
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1130
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1131
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1132
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1133
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1134
+ end)
1135
+
996
1136
  api.add_operation(:delete_network_settings, Seahorse::Model::Operation.new.tap do |o|
997
1137
  o.name = "DeleteNetworkSettings"
998
1138
  o.http_method = "DELETE"
@@ -1071,6 +1211,19 @@ module Aws::WorkSpacesWeb
1071
1211
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1072
1212
  end)
1073
1213
 
1214
+ api.add_operation(:disassociate_ip_access_settings, Seahorse::Model::Operation.new.tap do |o|
1215
+ o.name = "DisassociateIpAccessSettings"
1216
+ o.http_method = "DELETE"
1217
+ o.http_request_uri = "/portals/{portalArn+}/ipAccessSettings"
1218
+ o.input = Shapes::ShapeRef.new(shape: DisassociateIpAccessSettingsRequest)
1219
+ o.output = Shapes::ShapeRef.new(shape: DisassociateIpAccessSettingsResponse)
1220
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1221
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1222
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1223
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1224
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1225
+ end)
1226
+
1074
1227
  api.add_operation(:disassociate_network_settings, Seahorse::Model::Operation.new.tap do |o|
1075
1228
  o.name = "DisassociateNetworkSettings"
1076
1229
  o.http_method = "DELETE"
@@ -1149,6 +1302,19 @@ module Aws::WorkSpacesWeb
1149
1302
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1150
1303
  end)
1151
1304
 
1305
+ api.add_operation(:get_ip_access_settings, Seahorse::Model::Operation.new.tap do |o|
1306
+ o.name = "GetIpAccessSettings"
1307
+ o.http_method = "GET"
1308
+ o.http_request_uri = "/ipAccessSettings/{ipAccessSettingsArn+}"
1309
+ o.input = Shapes::ShapeRef.new(shape: GetIpAccessSettingsRequest)
1310
+ o.output = Shapes::ShapeRef.new(shape: GetIpAccessSettingsResponse)
1311
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1312
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1313
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1314
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1315
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1316
+ end)
1317
+
1152
1318
  api.add_operation(:get_network_settings, Seahorse::Model::Operation.new.tap do |o|
1153
1319
  o.name = "GetNetworkSettings"
1154
1320
  o.http_method = "GET"
@@ -1276,6 +1442,24 @@ module Aws::WorkSpacesWeb
1276
1442
  )
1277
1443
  end)
1278
1444
 
1445
+ api.add_operation(:list_ip_access_settings, Seahorse::Model::Operation.new.tap do |o|
1446
+ o.name = "ListIpAccessSettings"
1447
+ o.http_method = "GET"
1448
+ o.http_request_uri = "/ipAccessSettings"
1449
+ o.input = Shapes::ShapeRef.new(shape: ListIpAccessSettingsRequest)
1450
+ o.output = Shapes::ShapeRef.new(shape: ListIpAccessSettingsResponse)
1451
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1452
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1453
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1454
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1455
+ o[:pager] = Aws::Pager.new(
1456
+ limit_key: "max_results",
1457
+ tokens: {
1458
+ "next_token" => "next_token"
1459
+ }
1460
+ )
1461
+ end)
1462
+
1279
1463
  api.add_operation(:list_network_settings, Seahorse::Model::Operation.new.tap do |o|
1280
1464
  o.name = "ListNetworkSettings"
1281
1465
  o.http_method = "GET"
@@ -1451,6 +1635,19 @@ module Aws::WorkSpacesWeb
1451
1635
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1452
1636
  end)
1453
1637
 
1638
+ api.add_operation(:update_ip_access_settings, Seahorse::Model::Operation.new.tap do |o|
1639
+ o.name = "UpdateIpAccessSettings"
1640
+ o.http_method = "PATCH"
1641
+ o.http_request_uri = "/ipAccessSettings/{ipAccessSettingsArn+}"
1642
+ o.input = Shapes::ShapeRef.new(shape: UpdateIpAccessSettingsRequest)
1643
+ o.output = Shapes::ShapeRef.new(shape: UpdateIpAccessSettingsResponse)
1644
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1645
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1646
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1647
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1648
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1649
+ end)
1650
+
1454
1651
  api.add_operation(:update_network_settings, Seahorse::Model::Operation.new.tap do |o|
1455
1652
  o.name = "UpdateNetworkSettings"
1456
1653
  o.http_method = "PATCH"
@@ -1475,6 +1672,7 @@ module Aws::WorkSpacesWeb
1475
1672
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1476
1673
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1477
1674
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1675
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1478
1676
  end)
1479
1677
 
1480
1678
  api.add_operation(:update_trust_store, Seahorse::Model::Operation.new.tap do |o|
@@ -50,9 +50,6 @@ module Aws::WorkSpacesWeb
50
50
 
51
51
  def initialize(options = {})
52
52
  self[:region] = options[:region]
53
- if self[:region].nil?
54
- raise ArgumentError, "Missing required EndpointParameter: :region"
55
- end
56
53
  self[:use_dual_stack] = options[:use_dual_stack]
57
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
55
  if self[:use_dual_stack].nil?
@@ -9,103 +9,46 @@
9
9
 
10
10
  module Aws::WorkSpacesWeb
11
11
  class EndpointProvider
12
- def initialize(rule_set = nil)
13
- @@rule_set ||= begin
14
- endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
15
- Aws::Endpoints::RuleSet.new(
16
- version: endpoint_rules['version'],
17
- service_id: endpoint_rules['serviceId'],
18
- parameters: endpoint_rules['parameters'],
19
- rules: endpoint_rules['rules']
20
- )
12
+ def resolve_endpoint(parameters)
13
+ region = parameters.region
14
+ use_dual_stack = parameters.use_dual_stack
15
+ use_fips = parameters.use_fips
16
+ endpoint = parameters.endpoint
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
18
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
20
+ end
21
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
21
25
  end
22
- @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
- end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://workspaces-web-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
34
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
+ return Aws::Endpoints::Endpoint.new(url: "https://workspaces-web-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
+ end
38
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
39
+ end
40
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
41
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
+ return Aws::Endpoints::Endpoint.new(url: "https://workspaces-web.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
45
+ end
46
+ return Aws::Endpoints::Endpoint.new(url: "https://workspaces-web.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
47
+ end
48
+ end
49
+ raise ArgumentError, "Invalid Configuration: Missing Region"
50
+ raise ArgumentError, 'No endpoint could be resolved'
24
51
 
25
- def resolve_endpoint(parameters)
26
- @provider.resolve_endpoint(parameters)
27
52
  end
28
-
29
- # @api private
30
- RULES = <<-JSON
31
- eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
- bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOnRydWUsImRvY3VtZW50
33
- YXRpb24iOiJUaGUgQVdTIHJlZ2lvbiB1c2VkIHRvIGRpc3BhdGNoIHRoZSBy
34
- ZXF1ZXN0LiIsInR5cGUiOiJTdHJpbmcifSwiVXNlRHVhbFN0YWNrIjp7ImJ1
35
- aWx0SW4iOiJBV1M6OlVzZUR1YWxTdGFjayIsInJlcXVpcmVkIjp0cnVlLCJk
36
- ZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRhdGlvbiI6IldoZW4gdHJ1ZSwgdXNl
37
- IHRoZSBkdWFsLXN0YWNrIGVuZHBvaW50LiBJZiB0aGUgY29uZmlndXJlZCBl
38
- bmRwb2ludCBkb2VzIG5vdCBzdXBwb3J0IGR1YWwtc3RhY2ssIGRpc3BhdGNo
39
- aW5nIHRoZSByZXF1ZXN0IE1BWSByZXR1cm4gYW4gZXJyb3IuIiwidHlwZSI6
40
- IkJvb2xlYW4ifSwiVXNlRklQUyI6eyJidWlsdEluIjoiQVdTOjpVc2VGSVBT
41
- IiwicmVxdWlyZWQiOnRydWUsImRlZmF1bHQiOmZhbHNlLCJkb2N1bWVudGF0
42
- aW9uIjoiV2hlbiB0cnVlLCBzZW5kIHRoaXMgcmVxdWVzdCB0byB0aGUgRklQ
43
- Uy1jb21wbGlhbnQgcmVnaW9uYWwgZW5kcG9pbnQuIElmIHRoZSBjb25maWd1
44
- cmVkIGVuZHBvaW50IGRvZXMgbm90IGhhdmUgYSBGSVBTIGNvbXBsaWFudCBl
45
- bmRwb2ludCwgZGlzcGF0Y2hpbmcgdGhlIHJlcXVlc3Qgd2lsbCByZXR1cm4g
46
- YW4gZXJyb3IuIiwidHlwZSI6IkJvb2xlYW4ifSwiRW5kcG9pbnQiOnsiYnVp
47
- bHRJbiI6IlNESzo6RW5kcG9pbnQiLCJyZXF1aXJlZCI6ZmFsc2UsImRvY3Vt
48
- ZW50YXRpb24iOiJPdmVycmlkZSB0aGUgZW5kcG9pbnQgdXNlZCB0byBzZW5k
49
- IHRoaXMgcmVxdWVzdCIsInR5cGUiOiJTdHJpbmcifX0sInJ1bGVzIjpbeyJj
50
- b25kaXRpb25zIjpbeyJmbiI6ImF3cy5wYXJ0aXRpb24iLCJhcmd2IjpbeyJy
51
- ZWYiOiJSZWdpb24ifV0sImFzc2lnbiI6IlBhcnRpdGlvblJlc3VsdCJ9XSwi
52
- dHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W3siZm4iOiJp
53
- c1NldCIsImFyZ3YiOlt7InJlZiI6IkVuZHBvaW50In1dfV0sInR5cGUiOiJ0
54
- cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVx
55
- dWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX1dLCJlcnJv
56
- ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRklQUyBhbmQgY3VzdG9tIGVu
57
- ZHBvaW50IGFyZSBub3Qgc3VwcG9ydGVkIiwidHlwZSI6ImVycm9yIn0seyJj
58
- b25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
59
- aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoi
60
- VXNlRHVhbFN0YWNrIn0sdHJ1ZV19XSwiZXJyb3IiOiJJbnZhbGlkIENvbmZp
61
- Z3VyYXRpb246IER1YWxzdGFjayBhbmQgY3VzdG9tIGVuZHBvaW50IGFyZSBu
62
- b3Qgc3VwcG9ydGVkIiwidHlwZSI6ImVycm9yIn0seyJjb25kaXRpb25zIjpb
63
- XSwiZW5kcG9pbnQiOnsidXJsIjp7InJlZiI6IkVuZHBvaW50In0sInByb3Bl
64
- cnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1d
65
- fSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3Yi
66
- Olt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX0seyJmbiI6ImJvb2xlYW5FcXVh
67
- bHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0
68
- eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJv
69
- b2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFy
70
- Z3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0ZJUFMi
71
- XX1dfSx7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4i
72
- OiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0s
73
- InN1cHBvcnRzRHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVz
74
- IjpbeyJjb25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6
75
- Ly93b3Jrc3BhY2VzLXdlYi1maXBzLntSZWdpb259LntQYXJ0aXRpb25SZXN1
76
- bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFk
77
- ZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpb
78
- XSwiZXJyb3IiOiJGSVBTIGFuZCBEdWFsU3RhY2sgYXJlIGVuYWJsZWQsIGJ1
79
- dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0IG9uZSBvciBib3Ro
80
- IiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9v
81
- bGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX1d
82
- LCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6
83
- ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIs
84
- ImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0ZJ
85
- UFMiXX1dfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMi
86
- OltdLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbXSwi
87
- ZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly93b3Jrc3BhY2VzLXdlYi1maXBz
88
- LntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInByb3Bl
89
- cnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1d
90
- fSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgaXMgZW5hYmxlZCBi
91
- dXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBGSVBTIiwidHlw
92
- ZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVx
93
- dWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxTdGFjayJ9LHRydWVdfV0s
94
- InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
95
- Ym9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4iOiJnZXRBdHRyIiwi
96
- YXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0sInN1cHBvcnRzRHVh
97
- bFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRp
98
- b25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly93b3Jrc3BhY2Vz
99
- LXdlYi57UmVnaW9ufS57UGFydGl0aW9uUmVzdWx0I2R1YWxTdGFja0Ruc1N1
100
- ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoi
101
- ZW5kcG9pbnQifV19LHsiY29uZGl0aW9ucyI6W10sImVycm9yIjoiRHVhbFN0
102
- YWNrIGlzIGVuYWJsZWQgYnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1
103
- cHBvcnQgRHVhbFN0YWNrIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlv
104
- bnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL3dvcmtzcGFjZXMt
105
- d2ViLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInBy
106
- b3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9
107
- XX1dfQ==
108
-
109
- JSON
110
53
  end
111
54
  end