aws-sdk-neptune 1.45.0 → 1.47.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -52,6 +52,8 @@ module Aws::Neptune
52
52
  CreateDBSubnetGroupResult = Shapes::StructureShape.new(name: 'CreateDBSubnetGroupResult')
53
53
  CreateEventSubscriptionMessage = Shapes::StructureShape.new(name: 'CreateEventSubscriptionMessage')
54
54
  CreateEventSubscriptionResult = Shapes::StructureShape.new(name: 'CreateEventSubscriptionResult')
55
+ CreateGlobalClusterMessage = Shapes::StructureShape.new(name: 'CreateGlobalClusterMessage')
56
+ CreateGlobalClusterResult = Shapes::StructureShape.new(name: 'CreateGlobalClusterResult')
55
57
  DBCluster = Shapes::StructureShape.new(name: 'DBCluster')
56
58
  DBClusterAlreadyExistsFault = Shapes::StructureShape.new(name: 'DBClusterAlreadyExistsFault')
57
59
  DBClusterEndpoint = Shapes::StructureShape.new(name: 'DBClusterEndpoint')
@@ -135,6 +137,8 @@ module Aws::Neptune
135
137
  DeleteDBSubnetGroupMessage = Shapes::StructureShape.new(name: 'DeleteDBSubnetGroupMessage')
136
138
  DeleteEventSubscriptionMessage = Shapes::StructureShape.new(name: 'DeleteEventSubscriptionMessage')
137
139
  DeleteEventSubscriptionResult = Shapes::StructureShape.new(name: 'DeleteEventSubscriptionResult')
140
+ DeleteGlobalClusterMessage = Shapes::StructureShape.new(name: 'DeleteGlobalClusterMessage')
141
+ DeleteGlobalClusterResult = Shapes::StructureShape.new(name: 'DeleteGlobalClusterResult')
138
142
  DescribeDBClusterEndpointsMessage = Shapes::StructureShape.new(name: 'DescribeDBClusterEndpointsMessage')
139
143
  DescribeDBClusterParameterGroupsMessage = Shapes::StructureShape.new(name: 'DescribeDBClusterParameterGroupsMessage')
140
144
  DescribeDBClusterParametersMessage = Shapes::StructureShape.new(name: 'DescribeDBClusterParametersMessage')
@@ -154,6 +158,7 @@ module Aws::Neptune
154
158
  DescribeEventCategoriesMessage = Shapes::StructureShape.new(name: 'DescribeEventCategoriesMessage')
155
159
  DescribeEventSubscriptionsMessage = Shapes::StructureShape.new(name: 'DescribeEventSubscriptionsMessage')
156
160
  DescribeEventsMessage = Shapes::StructureShape.new(name: 'DescribeEventsMessage')
161
+ DescribeGlobalClustersMessage = Shapes::StructureShape.new(name: 'DescribeGlobalClustersMessage')
157
162
  DescribeOrderableDBInstanceOptionsMessage = Shapes::StructureShape.new(name: 'DescribeOrderableDBInstanceOptionsMessage')
158
163
  DescribePendingMaintenanceActionsMessage = Shapes::StructureShape.new(name: 'DescribePendingMaintenanceActionsMessage')
159
164
  DescribeValidDBInstanceModificationsMessage = Shapes::StructureShape.new(name: 'DescribeValidDBInstanceModificationsMessage')
@@ -180,9 +185,20 @@ module Aws::Neptune
180
185
  EventsMessage = Shapes::StructureShape.new(name: 'EventsMessage')
181
186
  FailoverDBClusterMessage = Shapes::StructureShape.new(name: 'FailoverDBClusterMessage')
182
187
  FailoverDBClusterResult = Shapes::StructureShape.new(name: 'FailoverDBClusterResult')
188
+ FailoverGlobalClusterMessage = Shapes::StructureShape.new(name: 'FailoverGlobalClusterMessage')
189
+ FailoverGlobalClusterResult = Shapes::StructureShape.new(name: 'FailoverGlobalClusterResult')
183
190
  Filter = Shapes::StructureShape.new(name: 'Filter')
184
191
  FilterList = Shapes::ListShape.new(name: 'FilterList')
185
192
  FilterValueList = Shapes::ListShape.new(name: 'FilterValueList')
193
+ GlobalCluster = Shapes::StructureShape.new(name: 'GlobalCluster')
194
+ GlobalClusterAlreadyExistsFault = Shapes::StructureShape.new(name: 'GlobalClusterAlreadyExistsFault')
195
+ GlobalClusterIdentifier = Shapes::StringShape.new(name: 'GlobalClusterIdentifier')
196
+ GlobalClusterList = Shapes::ListShape.new(name: 'GlobalClusterList')
197
+ GlobalClusterMember = Shapes::StructureShape.new(name: 'GlobalClusterMember')
198
+ GlobalClusterMemberList = Shapes::ListShape.new(name: 'GlobalClusterMemberList')
199
+ GlobalClusterNotFoundFault = Shapes::StructureShape.new(name: 'GlobalClusterNotFoundFault')
200
+ GlobalClusterQuotaExceededFault = Shapes::StructureShape.new(name: 'GlobalClusterQuotaExceededFault')
201
+ GlobalClustersMessage = Shapes::StructureShape.new(name: 'GlobalClustersMessage')
186
202
  InstanceQuotaExceededFault = Shapes::StructureShape.new(name: 'InstanceQuotaExceededFault')
187
203
  InsufficientDBClusterCapacityFault = Shapes::StructureShape.new(name: 'InsufficientDBClusterCapacityFault')
188
204
  InsufficientDBInstanceCapacityFault = Shapes::StructureShape.new(name: 'InsufficientDBInstanceCapacityFault')
@@ -199,6 +215,7 @@ module Aws::Neptune
199
215
  InvalidDBSubnetGroupStateFault = Shapes::StructureShape.new(name: 'InvalidDBSubnetGroupStateFault')
200
216
  InvalidDBSubnetStateFault = Shapes::StructureShape.new(name: 'InvalidDBSubnetStateFault')
201
217
  InvalidEventSubscriptionStateFault = Shapes::StructureShape.new(name: 'InvalidEventSubscriptionStateFault')
218
+ InvalidGlobalClusterStateFault = Shapes::StructureShape.new(name: 'InvalidGlobalClusterStateFault')
202
219
  InvalidRestoreFault = Shapes::StructureShape.new(name: 'InvalidRestoreFault')
203
220
  InvalidSubnet = Shapes::StructureShape.new(name: 'InvalidSubnet')
204
221
  InvalidVPCNetworkStateFault = Shapes::StructureShape.new(name: 'InvalidVPCNetworkStateFault')
@@ -220,6 +237,8 @@ module Aws::Neptune
220
237
  ModifyDBSubnetGroupResult = Shapes::StructureShape.new(name: 'ModifyDBSubnetGroupResult')
221
238
  ModifyEventSubscriptionMessage = Shapes::StructureShape.new(name: 'ModifyEventSubscriptionMessage')
222
239
  ModifyEventSubscriptionResult = Shapes::StructureShape.new(name: 'ModifyEventSubscriptionResult')
240
+ ModifyGlobalClusterMessage = Shapes::StructureShape.new(name: 'ModifyGlobalClusterMessage')
241
+ ModifyGlobalClusterResult = Shapes::StructureShape.new(name: 'ModifyGlobalClusterResult')
223
242
  OptionGroupMembership = Shapes::StructureShape.new(name: 'OptionGroupMembership')
224
243
  OptionGroupMembershipList = Shapes::ListShape.new(name: 'OptionGroupMembershipList')
225
244
  OptionGroupNotFoundFault = Shapes::StructureShape.new(name: 'OptionGroupNotFoundFault')
@@ -242,8 +261,11 @@ module Aws::Neptune
242
261
  ReadReplicaDBClusterIdentifierList = Shapes::ListShape.new(name: 'ReadReplicaDBClusterIdentifierList')
243
262
  ReadReplicaDBInstanceIdentifierList = Shapes::ListShape.new(name: 'ReadReplicaDBInstanceIdentifierList')
244
263
  ReadReplicaIdentifierList = Shapes::ListShape.new(name: 'ReadReplicaIdentifierList')
264
+ ReadersArnList = Shapes::ListShape.new(name: 'ReadersArnList')
245
265
  RebootDBInstanceMessage = Shapes::StructureShape.new(name: 'RebootDBInstanceMessage')
246
266
  RebootDBInstanceResult = Shapes::StructureShape.new(name: 'RebootDBInstanceResult')
267
+ RemoveFromGlobalClusterMessage = Shapes::StructureShape.new(name: 'RemoveFromGlobalClusterMessage')
268
+ RemoveFromGlobalClusterResult = Shapes::StructureShape.new(name: 'RemoveFromGlobalClusterResult')
247
269
  RemoveRoleFromDBClusterMessage = Shapes::StructureShape.new(name: 'RemoveRoleFromDBClusterMessage')
248
270
  RemoveSourceIdentifierFromSubscriptionMessage = Shapes::StructureShape.new(name: 'RemoveSourceIdentifierFromSubscriptionMessage')
249
271
  RemoveSourceIdentifierFromSubscriptionResult = Shapes::StructureShape.new(name: 'RemoveSourceIdentifierFromSubscriptionResult')
@@ -415,6 +437,7 @@ module Aws::Neptune
415
437
  CreateDBClusterMessage.add_member(:enable_iam_database_authentication, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "EnableIAMDatabaseAuthentication"))
416
438
  CreateDBClusterMessage.add_member(:enable_cloudwatch_logs_exports, Shapes::ShapeRef.new(shape: LogTypeList, location_name: "EnableCloudwatchLogsExports"))
417
439
  CreateDBClusterMessage.add_member(:deletion_protection, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "DeletionProtection"))
440
+ CreateDBClusterMessage.add_member(:global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, location_name: "GlobalClusterIdentifier"))
418
441
  CreateDBClusterMessage.add_member(:source_region, Shapes::ShapeRef.new(shape: String, location_name: "SourceRegion"))
419
442
  CreateDBClusterMessage.struct_class = Types::CreateDBClusterMessage
420
443
 
@@ -516,6 +539,17 @@ module Aws::Neptune
516
539
  CreateEventSubscriptionResult.add_member(:event_subscription, Shapes::ShapeRef.new(shape: EventSubscription, location_name: "EventSubscription"))
517
540
  CreateEventSubscriptionResult.struct_class = Types::CreateEventSubscriptionResult
518
541
 
542
+ CreateGlobalClusterMessage.add_member(:global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, required: true, location_name: "GlobalClusterIdentifier"))
543
+ CreateGlobalClusterMessage.add_member(:source_db_cluster_identifier, Shapes::ShapeRef.new(shape: String, location_name: "SourceDBClusterIdentifier"))
544
+ CreateGlobalClusterMessage.add_member(:engine, Shapes::ShapeRef.new(shape: String, location_name: "Engine"))
545
+ CreateGlobalClusterMessage.add_member(:engine_version, Shapes::ShapeRef.new(shape: String, location_name: "EngineVersion"))
546
+ CreateGlobalClusterMessage.add_member(:deletion_protection, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "DeletionProtection"))
547
+ CreateGlobalClusterMessage.add_member(:storage_encrypted, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "StorageEncrypted"))
548
+ CreateGlobalClusterMessage.struct_class = Types::CreateGlobalClusterMessage
549
+
550
+ CreateGlobalClusterResult.add_member(:global_cluster, Shapes::ShapeRef.new(shape: GlobalCluster, location_name: "GlobalCluster"))
551
+ CreateGlobalClusterResult.struct_class = Types::CreateGlobalClusterResult
552
+
519
553
  DBCluster.add_member(:allocated_storage, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "AllocatedStorage"))
520
554
  DBCluster.add_member(:availability_zones, Shapes::ShapeRef.new(shape: AvailabilityZones, location_name: "AvailabilityZones"))
521
555
  DBCluster.add_member(:backup_retention_period, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "BackupRetentionPeriod"))
@@ -696,6 +730,7 @@ module Aws::Neptune
696
730
  DBEngineVersion.add_member(:exportable_log_types, Shapes::ShapeRef.new(shape: LogTypeList, location_name: "ExportableLogTypes"))
697
731
  DBEngineVersion.add_member(:supports_log_exports_to_cloudwatch_logs, Shapes::ShapeRef.new(shape: Boolean, location_name: "SupportsLogExportsToCloudwatchLogs"))
698
732
  DBEngineVersion.add_member(:supports_read_replica, Shapes::ShapeRef.new(shape: Boolean, location_name: "SupportsReadReplica"))
733
+ DBEngineVersion.add_member(:supports_global_databases, Shapes::ShapeRef.new(shape: Boolean, location_name: "SupportsGlobalDatabases"))
699
734
  DBEngineVersion.struct_class = Types::DBEngineVersion
700
735
 
701
736
  DBEngineVersionList.member = Shapes::ShapeRef.new(shape: DBEngineVersion, location_name: "DBEngineVersion")
@@ -900,6 +935,12 @@ module Aws::Neptune
900
935
  DeleteEventSubscriptionResult.add_member(:event_subscription, Shapes::ShapeRef.new(shape: EventSubscription, location_name: "EventSubscription"))
901
936
  DeleteEventSubscriptionResult.struct_class = Types::DeleteEventSubscriptionResult
902
937
 
938
+ DeleteGlobalClusterMessage.add_member(:global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, required: true, location_name: "GlobalClusterIdentifier"))
939
+ DeleteGlobalClusterMessage.struct_class = Types::DeleteGlobalClusterMessage
940
+
941
+ DeleteGlobalClusterResult.add_member(:global_cluster, Shapes::ShapeRef.new(shape: GlobalCluster, location_name: "GlobalCluster"))
942
+ DeleteGlobalClusterResult.struct_class = Types::DeleteGlobalClusterResult
943
+
903
944
  DescribeDBClusterEndpointsMessage.add_member(:db_cluster_identifier, Shapes::ShapeRef.new(shape: String, location_name: "DBClusterIdentifier"))
904
945
  DescribeDBClusterEndpointsMessage.add_member(:db_cluster_endpoint_identifier, Shapes::ShapeRef.new(shape: String, location_name: "DBClusterEndpointIdentifier"))
905
946
  DescribeDBClusterEndpointsMessage.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filters"))
@@ -1017,6 +1058,11 @@ module Aws::Neptune
1017
1058
  DescribeEventsMessage.add_member(:marker, Shapes::ShapeRef.new(shape: String, location_name: "Marker"))
1018
1059
  DescribeEventsMessage.struct_class = Types::DescribeEventsMessage
1019
1060
 
1061
+ DescribeGlobalClustersMessage.add_member(:global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, location_name: "GlobalClusterIdentifier"))
1062
+ DescribeGlobalClustersMessage.add_member(:max_records, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "MaxRecords"))
1063
+ DescribeGlobalClustersMessage.add_member(:marker, Shapes::ShapeRef.new(shape: String, location_name: "Marker"))
1064
+ DescribeGlobalClustersMessage.struct_class = Types::DescribeGlobalClustersMessage
1065
+
1020
1066
  DescribeOrderableDBInstanceOptionsMessage.add_member(:engine, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Engine"))
1021
1067
  DescribeOrderableDBInstanceOptionsMessage.add_member(:engine_version, Shapes::ShapeRef.new(shape: String, location_name: "EngineVersion"))
1022
1068
  DescribeOrderableDBInstanceOptionsMessage.add_member(:db_instance_class, Shapes::ShapeRef.new(shape: String, location_name: "DBInstanceClass"))
@@ -1117,6 +1163,13 @@ module Aws::Neptune
1117
1163
  FailoverDBClusterResult.add_member(:db_cluster, Shapes::ShapeRef.new(shape: DBCluster, location_name: "DBCluster"))
1118
1164
  FailoverDBClusterResult.struct_class = Types::FailoverDBClusterResult
1119
1165
 
1166
+ FailoverGlobalClusterMessage.add_member(:global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, required: true, location_name: "GlobalClusterIdentifier"))
1167
+ FailoverGlobalClusterMessage.add_member(:target_db_cluster_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "TargetDbClusterIdentifier"))
1168
+ FailoverGlobalClusterMessage.struct_class = Types::FailoverGlobalClusterMessage
1169
+
1170
+ FailoverGlobalClusterResult.add_member(:global_cluster, Shapes::ShapeRef.new(shape: GlobalCluster, location_name: "GlobalCluster"))
1171
+ FailoverGlobalClusterResult.struct_class = Types::FailoverGlobalClusterResult
1172
+
1120
1173
  Filter.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
1121
1174
  Filter.add_member(:values, Shapes::ShapeRef.new(shape: FilterValueList, required: true, location_name: "Values"))
1122
1175
  Filter.struct_class = Types::Filter
@@ -1125,6 +1178,36 @@ module Aws::Neptune
1125
1178
 
1126
1179
  FilterValueList.member = Shapes::ShapeRef.new(shape: String, location_name: "Value")
1127
1180
 
1181
+ GlobalCluster.add_member(:global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, location_name: "GlobalClusterIdentifier"))
1182
+ GlobalCluster.add_member(:global_cluster_resource_id, Shapes::ShapeRef.new(shape: String, location_name: "GlobalClusterResourceId"))
1183
+ GlobalCluster.add_member(:global_cluster_arn, Shapes::ShapeRef.new(shape: String, location_name: "GlobalClusterArn"))
1184
+ GlobalCluster.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "Status"))
1185
+ GlobalCluster.add_member(:engine, Shapes::ShapeRef.new(shape: String, location_name: "Engine"))
1186
+ GlobalCluster.add_member(:engine_version, Shapes::ShapeRef.new(shape: String, location_name: "EngineVersion"))
1187
+ GlobalCluster.add_member(:storage_encrypted, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "StorageEncrypted"))
1188
+ GlobalCluster.add_member(:deletion_protection, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "DeletionProtection"))
1189
+ GlobalCluster.add_member(:global_cluster_members, Shapes::ShapeRef.new(shape: GlobalClusterMemberList, location_name: "GlobalClusterMembers"))
1190
+ GlobalCluster.struct_class = Types::GlobalCluster
1191
+
1192
+ GlobalClusterAlreadyExistsFault.struct_class = Types::GlobalClusterAlreadyExistsFault
1193
+
1194
+ GlobalClusterList.member = Shapes::ShapeRef.new(shape: GlobalCluster, location_name: "GlobalClusterMember")
1195
+
1196
+ GlobalClusterMember.add_member(:db_cluster_arn, Shapes::ShapeRef.new(shape: String, location_name: "DBClusterArn"))
1197
+ GlobalClusterMember.add_member(:readers, Shapes::ShapeRef.new(shape: ReadersArnList, location_name: "Readers"))
1198
+ GlobalClusterMember.add_member(:is_writer, Shapes::ShapeRef.new(shape: Boolean, location_name: "IsWriter"))
1199
+ GlobalClusterMember.struct_class = Types::GlobalClusterMember
1200
+
1201
+ GlobalClusterMemberList.member = Shapes::ShapeRef.new(shape: GlobalClusterMember, location_name: "GlobalClusterMember")
1202
+
1203
+ GlobalClusterNotFoundFault.struct_class = Types::GlobalClusterNotFoundFault
1204
+
1205
+ GlobalClusterQuotaExceededFault.struct_class = Types::GlobalClusterQuotaExceededFault
1206
+
1207
+ GlobalClustersMessage.add_member(:marker, Shapes::ShapeRef.new(shape: String, location_name: "Marker"))
1208
+ GlobalClustersMessage.add_member(:global_clusters, Shapes::ShapeRef.new(shape: GlobalClusterList, location_name: "GlobalClusters"))
1209
+ GlobalClustersMessage.struct_class = Types::GlobalClustersMessage
1210
+
1128
1211
  InstanceQuotaExceededFault.struct_class = Types::InstanceQuotaExceededFault
1129
1212
 
1130
1213
  InsufficientDBClusterCapacityFault.struct_class = Types::InsufficientDBClusterCapacityFault
@@ -1153,6 +1236,8 @@ module Aws::Neptune
1153
1236
 
1154
1237
  InvalidEventSubscriptionStateFault.struct_class = Types::InvalidEventSubscriptionStateFault
1155
1238
 
1239
+ InvalidGlobalClusterStateFault.struct_class = Types::InvalidGlobalClusterStateFault
1240
+
1156
1241
  InvalidRestoreFault.struct_class = Types::InvalidRestoreFault
1157
1242
 
1158
1243
  InvalidSubnet.struct_class = Types::InvalidSubnet
@@ -1287,6 +1372,16 @@ module Aws::Neptune
1287
1372
  ModifyEventSubscriptionResult.add_member(:event_subscription, Shapes::ShapeRef.new(shape: EventSubscription, location_name: "EventSubscription"))
1288
1373
  ModifyEventSubscriptionResult.struct_class = Types::ModifyEventSubscriptionResult
1289
1374
 
1375
+ ModifyGlobalClusterMessage.add_member(:global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, required: true, location_name: "GlobalClusterIdentifier"))
1376
+ ModifyGlobalClusterMessage.add_member(:new_global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, location_name: "NewGlobalClusterIdentifier"))
1377
+ ModifyGlobalClusterMessage.add_member(:deletion_protection, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "DeletionProtection"))
1378
+ ModifyGlobalClusterMessage.add_member(:engine_version, Shapes::ShapeRef.new(shape: String, location_name: "EngineVersion"))
1379
+ ModifyGlobalClusterMessage.add_member(:allow_major_version_upgrade, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "AllowMajorVersionUpgrade"))
1380
+ ModifyGlobalClusterMessage.struct_class = Types::ModifyGlobalClusterMessage
1381
+
1382
+ ModifyGlobalClusterResult.add_member(:global_cluster, Shapes::ShapeRef.new(shape: GlobalCluster, location_name: "GlobalCluster"))
1383
+ ModifyGlobalClusterResult.struct_class = Types::ModifyGlobalClusterResult
1384
+
1290
1385
  OptionGroupMembership.add_member(:option_group_name, Shapes::ShapeRef.new(shape: String, location_name: "OptionGroupName"))
1291
1386
  OptionGroupMembership.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "Status"))
1292
1387
  OptionGroupMembership.struct_class = Types::OptionGroupMembership
@@ -1315,6 +1410,7 @@ module Aws::Neptune
1315
1410
  OrderableDBInstanceOption.add_member(:max_iops_per_db_instance, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "MaxIopsPerDbInstance"))
1316
1411
  OrderableDBInstanceOption.add_member(:min_iops_per_gib, Shapes::ShapeRef.new(shape: DoubleOptional, location_name: "MinIopsPerGib"))
1317
1412
  OrderableDBInstanceOption.add_member(:max_iops_per_gib, Shapes::ShapeRef.new(shape: DoubleOptional, location_name: "MaxIopsPerGib"))
1413
+ OrderableDBInstanceOption.add_member(:supports_global_databases, Shapes::ShapeRef.new(shape: Boolean, location_name: "SupportsGlobalDatabases"))
1318
1414
  OrderableDBInstanceOption.struct_class = Types::OrderableDBInstanceOption
1319
1415
 
1320
1416
  OrderableDBInstanceOptionsList.member = Shapes::ShapeRef.new(shape: OrderableDBInstanceOption, location_name: "OrderableDBInstanceOption")
@@ -1394,6 +1490,8 @@ module Aws::Neptune
1394
1490
 
1395
1491
  ReadReplicaIdentifierList.member = Shapes::ShapeRef.new(shape: String, location_name: "ReadReplicaIdentifier")
1396
1492
 
1493
+ ReadersArnList.member = Shapes::ShapeRef.new(shape: String)
1494
+
1397
1495
  RebootDBInstanceMessage.add_member(:db_instance_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "DBInstanceIdentifier"))
1398
1496
  RebootDBInstanceMessage.add_member(:force_failover, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "ForceFailover"))
1399
1497
  RebootDBInstanceMessage.struct_class = Types::RebootDBInstanceMessage
@@ -1401,6 +1499,13 @@ module Aws::Neptune
1401
1499
  RebootDBInstanceResult.add_member(:db_instance, Shapes::ShapeRef.new(shape: DBInstance, location_name: "DBInstance"))
1402
1500
  RebootDBInstanceResult.struct_class = Types::RebootDBInstanceResult
1403
1501
 
1502
+ RemoveFromGlobalClusterMessage.add_member(:global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, required: true, location_name: "GlobalClusterIdentifier"))
1503
+ RemoveFromGlobalClusterMessage.add_member(:db_cluster_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "DbClusterIdentifier"))
1504
+ RemoveFromGlobalClusterMessage.struct_class = Types::RemoveFromGlobalClusterMessage
1505
+
1506
+ RemoveFromGlobalClusterResult.add_member(:global_cluster, Shapes::ShapeRef.new(shape: GlobalCluster, location_name: "GlobalCluster"))
1507
+ RemoveFromGlobalClusterResult.struct_class = Types::RemoveFromGlobalClusterResult
1508
+
1404
1509
  RemoveRoleFromDBClusterMessage.add_member(:db_cluster_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "DBClusterIdentifier"))
1405
1510
  RemoveRoleFromDBClusterMessage.add_member(:role_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "RoleArn"))
1406
1511
  RemoveRoleFromDBClusterMessage.add_member(:feature_name, Shapes::ShapeRef.new(shape: String, location_name: "FeatureName"))
@@ -1545,6 +1650,7 @@ module Aws::Neptune
1545
1650
  UpgradeTarget.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "Description"))
1546
1651
  UpgradeTarget.add_member(:auto_upgrade, Shapes::ShapeRef.new(shape: Boolean, location_name: "AutoUpgrade"))
1547
1652
  UpgradeTarget.add_member(:is_major_version_upgrade, Shapes::ShapeRef.new(shape: Boolean, location_name: "IsMajorVersionUpgrade"))
1653
+ UpgradeTarget.add_member(:supports_global_databases, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "SupportsGlobalDatabases"))
1548
1654
  UpgradeTarget.struct_class = Types::UpgradeTarget
1549
1655
 
1550
1656
  ValidDBInstanceModificationsMessage.add_member(:storage, Shapes::ShapeRef.new(shape: ValidStorageOptionsList, location_name: "Storage"))
@@ -1686,6 +1792,8 @@ module Aws::Neptune
1686
1792
  o.errors << Shapes::ShapeRef.new(shape: DBClusterNotFoundFault)
1687
1793
  o.errors << Shapes::ShapeRef.new(shape: DBInstanceNotFoundFault)
1688
1794
  o.errors << Shapes::ShapeRef.new(shape: DBSubnetGroupDoesNotCoverEnoughAZs)
1795
+ o.errors << Shapes::ShapeRef.new(shape: GlobalClusterNotFoundFault)
1796
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGlobalClusterStateFault)
1689
1797
  end)
1690
1798
 
1691
1799
  api.add_operation(:create_db_cluster_endpoint, Seahorse::Model::Operation.new.tap do |o|
@@ -1789,6 +1897,18 @@ module Aws::Neptune
1789
1897
  o.errors << Shapes::ShapeRef.new(shape: SourceNotFoundFault)
1790
1898
  end)
1791
1899
 
1900
+ api.add_operation(:create_global_cluster, Seahorse::Model::Operation.new.tap do |o|
1901
+ o.name = "CreateGlobalCluster"
1902
+ o.http_method = "POST"
1903
+ o.http_request_uri = "/"
1904
+ o.input = Shapes::ShapeRef.new(shape: CreateGlobalClusterMessage)
1905
+ o.output = Shapes::ShapeRef.new(shape: CreateGlobalClusterResult)
1906
+ o.errors << Shapes::ShapeRef.new(shape: GlobalClusterAlreadyExistsFault)
1907
+ o.errors << Shapes::ShapeRef.new(shape: GlobalClusterQuotaExceededFault)
1908
+ o.errors << Shapes::ShapeRef.new(shape: InvalidDBClusterStateFault)
1909
+ o.errors << Shapes::ShapeRef.new(shape: DBClusterNotFoundFault)
1910
+ end)
1911
+
1792
1912
  api.add_operation(:delete_db_cluster, Seahorse::Model::Operation.new.tap do |o|
1793
1913
  o.name = "DeleteDBCluster"
1794
1914
  o.http_method = "POST"
@@ -1877,6 +1997,16 @@ module Aws::Neptune
1877
1997
  o.errors << Shapes::ShapeRef.new(shape: InvalidEventSubscriptionStateFault)
1878
1998
  end)
1879
1999
 
2000
+ api.add_operation(:delete_global_cluster, Seahorse::Model::Operation.new.tap do |o|
2001
+ o.name = "DeleteGlobalCluster"
2002
+ o.http_method = "POST"
2003
+ o.http_request_uri = "/"
2004
+ o.input = Shapes::ShapeRef.new(shape: DeleteGlobalClusterMessage)
2005
+ o.output = Shapes::ShapeRef.new(shape: DeleteGlobalClusterResult)
2006
+ o.errors << Shapes::ShapeRef.new(shape: GlobalClusterNotFoundFault)
2007
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGlobalClusterStateFault)
2008
+ end)
2009
+
1880
2010
  api.add_operation(:describe_db_cluster_endpoints, Seahorse::Model::Operation.new.tap do |o|
1881
2011
  o.name = "DescribeDBClusterEndpoints"
1882
2012
  o.http_method = "POST"
@@ -2094,6 +2224,15 @@ module Aws::Neptune
2094
2224
  )
2095
2225
  end)
2096
2226
 
2227
+ api.add_operation(:describe_global_clusters, Seahorse::Model::Operation.new.tap do |o|
2228
+ o.name = "DescribeGlobalClusters"
2229
+ o.http_method = "POST"
2230
+ o.http_request_uri = "/"
2231
+ o.input = Shapes::ShapeRef.new(shape: DescribeGlobalClustersMessage)
2232
+ o.output = Shapes::ShapeRef.new(shape: GlobalClustersMessage)
2233
+ o.errors << Shapes::ShapeRef.new(shape: GlobalClusterNotFoundFault)
2234
+ end)
2235
+
2097
2236
  api.add_operation(:describe_orderable_db_instance_options, Seahorse::Model::Operation.new.tap do |o|
2098
2237
  o.name = "DescribeOrderableDBInstanceOptions"
2099
2238
  o.http_method = "POST"
@@ -2144,6 +2283,18 @@ module Aws::Neptune
2144
2283
  o.errors << Shapes::ShapeRef.new(shape: InvalidDBInstanceStateFault)
2145
2284
  end)
2146
2285
 
2286
+ api.add_operation(:failover_global_cluster, Seahorse::Model::Operation.new.tap do |o|
2287
+ o.name = "FailoverGlobalCluster"
2288
+ o.http_method = "POST"
2289
+ o.http_request_uri = "/"
2290
+ o.input = Shapes::ShapeRef.new(shape: FailoverGlobalClusterMessage)
2291
+ o.output = Shapes::ShapeRef.new(shape: FailoverGlobalClusterResult)
2292
+ o.errors << Shapes::ShapeRef.new(shape: GlobalClusterNotFoundFault)
2293
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGlobalClusterStateFault)
2294
+ o.errors << Shapes::ShapeRef.new(shape: InvalidDBClusterStateFault)
2295
+ o.errors << Shapes::ShapeRef.new(shape: DBClusterNotFoundFault)
2296
+ end)
2297
+
2147
2298
  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
2148
2299
  o.name = "ListTagsForResource"
2149
2300
  o.http_method = "POST"
@@ -2269,6 +2420,16 @@ module Aws::Neptune
2269
2420
  o.errors << Shapes::ShapeRef.new(shape: SubscriptionCategoryNotFoundFault)
2270
2421
  end)
2271
2422
 
2423
+ api.add_operation(:modify_global_cluster, Seahorse::Model::Operation.new.tap do |o|
2424
+ o.name = "ModifyGlobalCluster"
2425
+ o.http_method = "POST"
2426
+ o.http_request_uri = "/"
2427
+ o.input = Shapes::ShapeRef.new(shape: ModifyGlobalClusterMessage)
2428
+ o.output = Shapes::ShapeRef.new(shape: ModifyGlobalClusterResult)
2429
+ o.errors << Shapes::ShapeRef.new(shape: GlobalClusterNotFoundFault)
2430
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGlobalClusterStateFault)
2431
+ end)
2432
+
2272
2433
  api.add_operation(:promote_read_replica_db_cluster, Seahorse::Model::Operation.new.tap do |o|
2273
2434
  o.name = "PromoteReadReplicaDBCluster"
2274
2435
  o.http_method = "POST"
@@ -2289,6 +2450,17 @@ module Aws::Neptune
2289
2450
  o.errors << Shapes::ShapeRef.new(shape: DBInstanceNotFoundFault)
2290
2451
  end)
2291
2452
 
2453
+ api.add_operation(:remove_from_global_cluster, Seahorse::Model::Operation.new.tap do |o|
2454
+ o.name = "RemoveFromGlobalCluster"
2455
+ o.http_method = "POST"
2456
+ o.http_request_uri = "/"
2457
+ o.input = Shapes::ShapeRef.new(shape: RemoveFromGlobalClusterMessage)
2458
+ o.output = Shapes::ShapeRef.new(shape: RemoveFromGlobalClusterResult)
2459
+ o.errors << Shapes::ShapeRef.new(shape: GlobalClusterNotFoundFault)
2460
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGlobalClusterStateFault)
2461
+ o.errors << Shapes::ShapeRef.new(shape: DBClusterNotFoundFault)
2462
+ end)
2463
+
2292
2464
  api.add_operation(:remove_role_from_db_cluster, Seahorse::Model::Operation.new.tap do |o|
2293
2465
  o.name = "RemoveRoleFromDBCluster"
2294
2466
  o.http_method = "POST"
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::Neptune
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ self[:use_dual_stack] = options[:use_dual_stack]
54
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
+ if self[:use_dual_stack].nil?
56
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
+ end
58
+ self[:use_fips] = options[:use_fips]
59
+ self[:use_fips] = false if self[:use_fips].nil?
60
+ if self[:use_fips].nil?
61
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
+ end
63
+ self[:endpoint] = options[:endpoint]
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,137 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::Neptune
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
+ )
21
+ end
22
+ @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
+ end
24
+
25
+ def resolve_endpoint(parameters)
26
+ @provider.resolve_endpoint(parameters)
27
+ end
28
+
29
+ # @api private
30
+ RULES = <<-JSON
31
+ eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
+ bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
33
+ dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
34
+ cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
35
+ dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
36
+ ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
37
+ ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
38
+ ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
39
+ aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
40
+ OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
41
+ UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
42
+ dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
43
+ UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
44
+ dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
45
+ ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
46
+ IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
47
+ aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
48
+ bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
49
+ ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
50
+ Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
51
+ cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
52
+ InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
53
+ aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
54
+ cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
55
+ InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
56
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
57
+ UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
58
+ SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
59
+ eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
60
+ InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
61
+ LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
62
+ ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
63
+ b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
64
+ fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
65
+ RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
66
+ ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
67
+ ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
68
+ ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
69
+ dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
70
+ dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
71
+ Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
72
+ In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
73
+ YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
74
+ YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
75
+ cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
76
+ dCI6eyJ1cmwiOiJodHRwczovL3Jkcy1maXBzLntSZWdpb259LntQYXJ0aXRp
77
+ b25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9
78
+ LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRp
79
+ b25zIjpbXSwiZXJyb3IiOiJGSVBTIGFuZCBEdWFsU3RhY2sgYXJlIGVuYWJs
80
+ ZWQsIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0IG9uZSBv
81
+ ciBib3RoIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7ImZu
82
+ IjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJUFMifSx0
83
+ cnVlXX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpb
84
+ eyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0
85
+ QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBw
86
+ b3J0c0ZJUFMiXX1dfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
87
+ dGlvbnMiOltdLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25z
88
+ IjpbeyJmbiI6InN0cmluZ0VxdWFscyIsImFyZ3YiOlt7InJlZiI6IlJlZ2lv
89
+ biJ9LCJyZHMuY2EtY2VudHJhbC0xIl19XSwiZW5kcG9pbnQiOnsidXJsIjoi
90
+ aHR0cHM6Ly9yZHMtZmlwcy5jYS1jZW50cmFsLTEuYW1hem9uYXdzLmNvbSIs
91
+ InByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2lu
92
+ dCJ9LHsiY29uZGl0aW9ucyI6W3siZm4iOiJzdHJpbmdFcXVhbHMiLCJhcmd2
93
+ IjpbeyJyZWYiOiJSZWdpb24ifSwicmRzLnVzLWVhc3QtMSJdfV0sImVuZHBv
94
+ aW50Ijp7InVybCI6Imh0dHBzOi8vcmRzLWZpcHMudXMtZWFzdC0xLmFtYXpv
95
+ bmF3cy5jb20iLCJwcm9wZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBl
96
+ IjoiZW5kcG9pbnQifSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoic3RyaW5nRXF1
97
+ YWxzIiwiYXJndiI6W3sicmVmIjoiUmVnaW9uIn0sInJkcy51cy1lYXN0LTIi
98
+ XX1dLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL3Jkcy1maXBzLnVzLWVh
99
+ c3QtMi5hbWF6b25hd3MuY29tIiwicHJvcGVydGllcyI6e30sImhlYWRlcnMi
100
+ Ont9fSwidHlwZSI6ImVuZHBvaW50In0seyJjb25kaXRpb25zIjpbeyJmbiI6
101
+ InN0cmluZ0VxdWFscyIsImFyZ3YiOlt7InJlZiI6IlJlZ2lvbiJ9LCJyZHMu
102
+ dXMtd2VzdC0xIl19XSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9yZHMt
103
+ Zmlwcy51cy13ZXN0LTEuYW1hem9uYXdzLmNvbSIsInByb3BlcnRpZXMiOnt9
104
+ LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9LHsiY29uZGl0aW9u
105
+ cyI6W3siZm4iOiJzdHJpbmdFcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJSZWdp
106
+ b24ifSwicmRzLnVzLXdlc3QtMiJdfV0sImVuZHBvaW50Ijp7InVybCI6Imh0
107
+ dHBzOi8vcmRzLWZpcHMudXMtd2VzdC0yLmFtYXpvbmF3cy5jb20iLCJwcm9w
108
+ ZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifSx7
109
+ ImNvbmRpdGlvbnMiOlt7ImZuIjoic3RyaW5nRXF1YWxzIiwiYXJndiI6WyJh
110
+ d3MtdXMtZ292Iix7ImZuIjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBh
111
+ cnRpdGlvblJlc3VsdCJ9LCJuYW1lIl19XX1dLCJlbmRwb2ludCI6eyJ1cmwi
112
+ OiJodHRwczovL3Jkcy57UmVnaW9ufS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1
113
+ ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoi
114
+ ZW5kcG9pbnQifSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwi
115
+ OiJodHRwczovL3Jkcy1maXBzLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQj
116
+ ZG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5
117
+ cGUiOiJlbmRwb2ludCJ9XX1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6
118
+ IkZJUFMgaXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qg
119
+ c3VwcG9ydCBGSVBTIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMi
120
+ Olt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1
121
+ YWxTdGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNv
122
+ bmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVl
123
+ LHsiZm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVz
124
+ dWx0In0sInN1cHBvcnRzRHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIs
125
+ InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoi
126
+ aHR0cHM6Ly9yZHMue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkdWFsU3Rh
127
+ Y2tEbnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwi
128
+ dHlwZSI6ImVuZHBvaW50In1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6
129
+ IkR1YWxTdGFjayBpcyBlbmFibGVkIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2Vz
130
+ IG5vdCBzdXBwb3J0IER1YWxTdGFjayIsInR5cGUiOiJlcnJvciJ9XX0seyJj
131
+ b25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9yZHMu
132
+ e1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNTdWZmaXh9IiwicHJvcGVy
133
+ dGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfV19
134
+
135
+ JSON
136
+ end
137
+ end