amazonka-docdb (empty) → 2.0
raw patch · 206 files changed
+25798/−0 lines, 206 filesdep +amazonka-coredep +amazonka-docdbdep +amazonka-test
Dependencies added: amazonka-core, amazonka-docdb, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-docdb.cabal +171/−0
- fixture/AddSourceIdentifierToSubscription.yaml +10/−0
- fixture/AddSourceIdentifierToSubscriptionResponse.proto +0/−0
- fixture/AddTagsToResource.yaml +10/−0
- fixture/AddTagsToResourceResponse.proto +0/−0
- fixture/ApplyPendingMaintenanceAction.yaml +10/−0
- fixture/ApplyPendingMaintenanceActionResponse.proto +0/−0
- fixture/CopyDBClusterParameterGroup.yaml +10/−0
- fixture/CopyDBClusterParameterGroupResponse.proto +0/−0
- fixture/CopyDBClusterSnapshot.yaml +10/−0
- fixture/CopyDBClusterSnapshotResponse.proto +0/−0
- fixture/CreateDBCluster.yaml +10/−0
- fixture/CreateDBClusterParameterGroup.yaml +10/−0
- fixture/CreateDBClusterParameterGroupResponse.proto +0/−0
- fixture/CreateDBClusterResponse.proto +0/−0
- fixture/CreateDBClusterSnapshot.yaml +10/−0
- fixture/CreateDBClusterSnapshotResponse.proto +0/−0
- fixture/CreateDBInstance.yaml +10/−0
- fixture/CreateDBInstanceResponse.proto +0/−0
- fixture/CreateDBSubnetGroup.yaml +10/−0
- fixture/CreateDBSubnetGroupResponse.proto +0/−0
- fixture/CreateEventSubscription.yaml +10/−0
- fixture/CreateEventSubscriptionResponse.proto +0/−0
- fixture/CreateGlobalCluster.yaml +10/−0
- fixture/CreateGlobalClusterResponse.proto +0/−0
- fixture/DeleteDBCluster.yaml +10/−0
- fixture/DeleteDBClusterParameterGroup.yaml +10/−0
- fixture/DeleteDBClusterParameterGroupResponse.proto +0/−0
- fixture/DeleteDBClusterResponse.proto +0/−0
- fixture/DeleteDBClusterSnapshot.yaml +10/−0
- fixture/DeleteDBClusterSnapshotResponse.proto +0/−0
- fixture/DeleteDBInstance.yaml +10/−0
- fixture/DeleteDBInstanceResponse.proto +0/−0
- fixture/DeleteDBSubnetGroup.yaml +10/−0
- fixture/DeleteDBSubnetGroupResponse.proto +0/−0
- fixture/DeleteEventSubscription.yaml +10/−0
- fixture/DeleteEventSubscriptionResponse.proto +0/−0
- fixture/DeleteGlobalCluster.yaml +10/−0
- fixture/DeleteGlobalClusterResponse.proto +0/−0
- fixture/DescribeCertificates.yaml +10/−0
- fixture/DescribeCertificatesResponse.proto +0/−0
- fixture/DescribeDBClusterParameterGroups.yaml +10/−0
- fixture/DescribeDBClusterParameterGroupsResponse.proto +0/−0
- fixture/DescribeDBClusterParameters.yaml +10/−0
- fixture/DescribeDBClusterParametersResponse.proto +0/−0
- fixture/DescribeDBClusterSnapshotAttributes.yaml +10/−0
- fixture/DescribeDBClusterSnapshotAttributesResponse.proto +0/−0
- fixture/DescribeDBClusterSnapshots.yaml +10/−0
- fixture/DescribeDBClusterSnapshotsResponse.proto +0/−0
- fixture/DescribeDBClusters.yaml +10/−0
- fixture/DescribeDBClustersResponse.proto +0/−0
- fixture/DescribeDBEngineVersions.yaml +10/−0
- fixture/DescribeDBEngineVersionsResponse.proto +0/−0
- fixture/DescribeDBInstances.yaml +10/−0
- fixture/DescribeDBInstancesResponse.proto +0/−0
- fixture/DescribeDBSubnetGroups.yaml +10/−0
- fixture/DescribeDBSubnetGroupsResponse.proto +0/−0
- fixture/DescribeEngineDefaultClusterParameters.yaml +10/−0
- fixture/DescribeEngineDefaultClusterParametersResponse.proto +0/−0
- fixture/DescribeEventCategories.yaml +10/−0
- fixture/DescribeEventCategoriesResponse.proto +0/−0
- fixture/DescribeEventSubscriptions.yaml +10/−0
- fixture/DescribeEventSubscriptionsResponse.proto +0/−0
- fixture/DescribeEvents.yaml +10/−0
- fixture/DescribeEventsResponse.proto +0/−0
- fixture/DescribeGlobalClusters.yaml +10/−0
- fixture/DescribeGlobalClustersResponse.proto +0/−0
- fixture/DescribeOrderableDBInstanceOptions.yaml +10/−0
- fixture/DescribeOrderableDBInstanceOptionsResponse.proto +0/−0
- fixture/DescribePendingMaintenanceActions.yaml +10/−0
- fixture/DescribePendingMaintenanceActionsResponse.proto +0/−0
- fixture/FailoverDBCluster.yaml +10/−0
- fixture/FailoverDBClusterResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/ModifyDBCluster.yaml +10/−0
- fixture/ModifyDBClusterParameterGroup.yaml +10/−0
- fixture/ModifyDBClusterParameterGroupResponse.proto +0/−0
- fixture/ModifyDBClusterResponse.proto +0/−0
- fixture/ModifyDBClusterSnapshotAttribute.yaml +10/−0
- fixture/ModifyDBClusterSnapshotAttributeResponse.proto +0/−0
- fixture/ModifyDBInstance.yaml +10/−0
- fixture/ModifyDBInstanceResponse.proto +0/−0
- fixture/ModifyDBSubnetGroup.yaml +10/−0
- fixture/ModifyDBSubnetGroupResponse.proto +0/−0
- fixture/ModifyEventSubscription.yaml +10/−0
- fixture/ModifyEventSubscriptionResponse.proto +0/−0
- fixture/ModifyGlobalCluster.yaml +10/−0
- fixture/ModifyGlobalClusterResponse.proto +0/−0
- fixture/RebootDBInstance.yaml +10/−0
- fixture/RebootDBInstanceResponse.proto +0/−0
- fixture/RemoveFromGlobalCluster.yaml +10/−0
- fixture/RemoveFromGlobalClusterResponse.proto +0/−0
- fixture/RemoveSourceIdentifierFromSubscription.yaml +10/−0
- fixture/RemoveSourceIdentifierFromSubscriptionResponse.proto +0/−0
- fixture/RemoveTagsFromResource.yaml +10/−0
- fixture/RemoveTagsFromResourceResponse.proto +0/−0
- fixture/ResetDBClusterParameterGroup.yaml +10/−0
- fixture/ResetDBClusterParameterGroupResponse.proto +0/−0
- fixture/RestoreDBClusterFromSnapshot.yaml +10/−0
- fixture/RestoreDBClusterFromSnapshotResponse.proto +0/−0
- fixture/RestoreDBClusterToPointInTime.yaml +10/−0
- fixture/RestoreDBClusterToPointInTimeResponse.proto +0/−0
- fixture/StartDBCluster.yaml +10/−0
- fixture/StartDBClusterResponse.proto +0/−0
- fixture/StopDBCluster.yaml +10/−0
- fixture/StopDBClusterResponse.proto +0/−0
- gen/Amazonka/DocumentDB.hs +747/−0
- gen/Amazonka/DocumentDB/AddSourceIdentifierToSubscription.hs +245/−0
- gen/Amazonka/DocumentDB/AddTagsToResource.hs +146/−0
- gen/Amazonka/DocumentDB/ApplyPendingMaintenanceAction.hs +250/−0
- gen/Amazonka/DocumentDB/CopyDBClusterParameterGroup.hs +303/−0
- gen/Amazonka/DocumentDB/CopyDBClusterSnapshot.hs +484/−0
- gen/Amazonka/DocumentDB/CreateDBCluster.hs +701/−0
- gen/Amazonka/DocumentDB/CreateDBClusterParameterGroup.hs +262/−0
- gen/Amazonka/DocumentDB/CreateDBClusterSnapshot.hs +253/−0
- gen/Amazonka/DocumentDB/CreateDBInstance.hs +472/−0
- gen/Amazonka/DocumentDB/CreateDBSubnetGroup.hs +230/−0
- gen/Amazonka/DocumentDB/CreateEventSubscription.hs +373/−0
- gen/Amazonka/DocumentDB/CreateGlobalCluster.hs +267/−0
- gen/Amazonka/DocumentDB/DeleteDBCluster.hs +267/−0
- gen/Amazonka/DocumentDB/DeleteDBClusterParameterGroup.hs +167/−0
- gen/Amazonka/DocumentDB/DeleteDBClusterSnapshot.hs +180/−0
- gen/Amazonka/DocumentDB/DeleteDBInstance.hs +177/−0
- gen/Amazonka/DocumentDB/DeleteDBSubnetGroup.hs +154/−0
- gen/Amazonka/DocumentDB/DeleteEventSubscription.hs +168/−0
- gen/Amazonka/DocumentDB/DeleteGlobalCluster.hs +168/−0
- gen/Amazonka/DocumentDB/DescribeCertificates.hs +318/−0
- gen/Amazonka/DocumentDB/DescribeDBClusterParameterGroups.hs +323/−0
- gen/Amazonka/DocumentDB/DescribeDBClusterParameters.hs +323/−0
- gen/Amazonka/DocumentDB/DescribeDBClusterSnapshotAttributes.hs +200/−0
- gen/Amazonka/DocumentDB/DescribeDBClusterSnapshots.hs +473/−0
- gen/Amazonka/DocumentDB/DescribeDBClusters.hs +319/−0
- gen/Amazonka/DocumentDB/DescribeDBEngineVersions.hs +382/−0
- gen/Amazonka/DocumentDB/DescribeDBInstances.hs +330/−0
- gen/Amazonka/DocumentDB/DescribeDBSubnetGroups.hs +283/−0
- gen/Amazonka/DocumentDB/DescribeEngineDefaultClusterParameters.hs +266/−0
- gen/Amazonka/DocumentDB/DescribeEventCategories.hs +192/−0
- gen/Amazonka/DocumentDB/DescribeEventSubscriptions.hs +290/−0
- gen/Amazonka/DocumentDB/DescribeEvents.hs +439/−0
- gen/Amazonka/DocumentDB/DescribeGlobalClusters.hs +279/−0
- gen/Amazonka/DocumentDB/DescribeOrderableDBInstanceOptions.hs +375/−0
- gen/Amazonka/DocumentDB/DescribePendingMaintenanceActions.hs +345/−0
- gen/Amazonka/DocumentDB/FailoverDBCluster.hs +208/−0
- gen/Amazonka/DocumentDB/Lens.hs +839/−0
- gen/Amazonka/DocumentDB/ListTagsForResource.hs +187/−0
- gen/Amazonka/DocumentDB/ModifyDBCluster.hs +568/−0
- gen/Amazonka/DocumentDB/ModifyDBClusterParameterGroup.hs +155/−0
- gen/Amazonka/DocumentDB/ModifyDBClusterSnapshotAttribute.hs +316/−0
- gen/Amazonka/DocumentDB/ModifyDBInstance.hs +505/−0
- gen/Amazonka/DocumentDB/ModifyDBSubnetGroup.hs +211/−0
- gen/Amazonka/DocumentDB/ModifyEventSubscription.hs +245/−0
- gen/Amazonka/DocumentDB/ModifyGlobalCluster.hs +241/−0
- gen/Amazonka/DocumentDB/RebootDBInstance.hs +203/−0
- gen/Amazonka/DocumentDB/RemoveFromGlobalCluster.hs +195/−0
- gen/Amazonka/DocumentDB/RemoveSourceIdentifierFromSubscription.hs +216/−0
- gen/Amazonka/DocumentDB/RemoveTagsFromResource.hs +148/−0
- gen/Amazonka/DocumentDB/ResetDBClusterParameterGroup.hs +176/−0
- gen/Amazonka/DocumentDB/RestoreDBClusterFromSnapshot.hs +509/−0
- gen/Amazonka/DocumentDB/RestoreDBClusterToPointInTime.hs +585/−0
- gen/Amazonka/DocumentDB/StartDBCluster.hs +165/−0
- gen/Amazonka/DocumentDB/StopDBCluster.hs +164/−0
- gen/Amazonka/DocumentDB/Types.hs +1022/−0
- gen/Amazonka/DocumentDB/Types/ApplyMethod.hs +71/−0
- gen/Amazonka/DocumentDB/Types/AvailabilityZone.hs +63/−0
- gen/Amazonka/DocumentDB/Types/Certificate.hs +159/−0
- gen/Amazonka/DocumentDB/Types/CloudwatchLogsExportConfiguration.hs +106/−0
- gen/Amazonka/DocumentDB/Types/DBCluster.hs +592/−0
- gen/Amazonka/DocumentDB/Types/DBClusterMember.hs +117/−0
- gen/Amazonka/DocumentDB/Types/DBClusterParameterGroup.hs +111/−0
- gen/Amazonka/DocumentDB/Types/DBClusterParameterGroupNameMessage.hs +110/−0
- gen/Amazonka/DocumentDB/Types/DBClusterRole.hs +114/−0
- gen/Amazonka/DocumentDB/Types/DBClusterSnapshot.hs +289/−0
- gen/Amazonka/DocumentDB/Types/DBClusterSnapshotAttribute.hs +118/−0
- gen/Amazonka/DocumentDB/Types/DBClusterSnapshotAttributesResult.hs +100/−0
- gen/Amazonka/DocumentDB/Types/DBEngineVersion.hs +171/−0
- gen/Amazonka/DocumentDB/Types/DBInstance.hs +479/−0
- gen/Amazonka/DocumentDB/Types/DBInstanceStatusInfo.hs +113/−0
- gen/Amazonka/DocumentDB/Types/DBSubnetGroup.hs +133/−0
- gen/Amazonka/DocumentDB/Types/Endpoint.hs +97/−0
- gen/Amazonka/DocumentDB/Types/EngineDefaults.hs +108/−0
- gen/Amazonka/DocumentDB/Types/Event.hs +133/−0
- gen/Amazonka/DocumentDB/Types/EventCategoriesMap.hs +85/−0
- gen/Amazonka/DocumentDB/Types/EventSubscription.hs +230/−0
- gen/Amazonka/DocumentDB/Types/Filter.hs +83/−0
- gen/Amazonka/DocumentDB/Types/GlobalCluster.hs +196/−0
- gen/Amazonka/DocumentDB/Types/GlobalClusterMember.hs +107/−0
- gen/Amazonka/DocumentDB/Types/OrderableDBInstanceOption.hs +134/−0
- gen/Amazonka/DocumentDB/Types/Parameter.hs +198/−0
- gen/Amazonka/DocumentDB/Types/PendingCloudwatchLogsExports.hs +99/−0
- gen/Amazonka/DocumentDB/Types/PendingMaintenanceAction.hs +155/−0
- gen/Amazonka/DocumentDB/Types/PendingModifiedValues.hs +263/−0
- gen/Amazonka/DocumentDB/Types/ResourcePendingMaintenanceActions.hs +104/−0
- gen/Amazonka/DocumentDB/Types/SourceType.hs +91/−0
- gen/Amazonka/DocumentDB/Types/Subnet.hs +93/−0
- gen/Amazonka/DocumentDB/Types/Tag.hs +109/−0
- gen/Amazonka/DocumentDB/Types/UpgradeTarget.hs +122/−0
- gen/Amazonka/DocumentDB/Types/VpcSecurityGroupMembership.hs +82/−0
- gen/Amazonka/DocumentDB/Waiters.hs +193/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/DocumentDB.hs +20/−0
- test/Test/Amazonka/DocumentDB/Internal.hs +8/−0
- test/Test/Amazonka/Gen/DocumentDB.hs +1098/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon DocumentDB with MongoDB compatibility SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2014-10-31@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-docdb)+and the [AWS API Reference](https://aws.amazon.com/documentation/).++The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information, sending requests,+and receiving responses.++Lenses are used for constructing and manipulating types,+due to the depth of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core).++See [Amazonka.DocumentDB](http://hackage.haskell.org/package/amazonka-docdb/docs/Amazonka-DocumentDB.html)+or [the AWS documentation](https://aws.amazon.com/documentation/) to get started.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`amazonka-docdb` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).++Parts of the code are derived from AWS service descriptions, licensed under Apache 2.0.+Source files subject to this contain an additional licensing clause in their header.
+ amazonka-docdb.cabal view
@@ -0,0 +1,171 @@+cabal-version: 2.2+name: amazonka-docdb+version: 2.0+synopsis: Amazon DocumentDB with MongoDB compatibility SDK.+homepage: https://github.com/brendanhay/amazonka+bug-reports: https://github.com/brendanhay/amazonka/issues+license: MPL-2.0+license-file: LICENSE+author: Brendan Hay+maintainer:+ Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright: Copyright (c) 2013-2023 Brendan Hay+category: AWS+build-type: Simple+extra-source-files:+ fixture/*.proto+ fixture/*.yaml+ README.md+ src/.gitkeep++description:+ Derived from API version @2014-10-31@ of the AWS service descriptions, licensed under Apache 2.0.+ .+ The types from this library are intended to be used with <http://hackage.haskell.org/package/amazonka amazonka>,+ which provides mechanisms for specifying AuthN/AuthZ information, sending requests, and receiving responses.+ .+ It is recommended to use generic lenses or optics from packages such as <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify optional fields and deconstruct responses.+ .+ Generated lenses can be found in "Amazonka.DocumentDB.Lens" and are+ suitable for use with a lens package such as <http://hackage.haskell.org/package/lens lens> or <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Amazonka.DocumentDB" and the <https://aws.amazon.com/documentation/ AWS documentation> to get started.++source-repository head+ type: git+ location: git://github.com/brendanhay/amazonka.git+ subdir: amazonka-docdb++library+ default-language: Haskell2010+ hs-source-dirs: src gen+ ghc-options:+ -Wall -fwarn-incomplete-uni-patterns+ -fwarn-incomplete-record-updates -funbox-strict-fields++ exposed-modules:+ Amazonka.DocumentDB+ Amazonka.DocumentDB.AddSourceIdentifierToSubscription+ Amazonka.DocumentDB.AddTagsToResource+ Amazonka.DocumentDB.ApplyPendingMaintenanceAction+ Amazonka.DocumentDB.CopyDBClusterParameterGroup+ Amazonka.DocumentDB.CopyDBClusterSnapshot+ Amazonka.DocumentDB.CreateDBCluster+ Amazonka.DocumentDB.CreateDBClusterParameterGroup+ Amazonka.DocumentDB.CreateDBClusterSnapshot+ Amazonka.DocumentDB.CreateDBInstance+ Amazonka.DocumentDB.CreateDBSubnetGroup+ Amazonka.DocumentDB.CreateEventSubscription+ Amazonka.DocumentDB.CreateGlobalCluster+ Amazonka.DocumentDB.DeleteDBCluster+ Amazonka.DocumentDB.DeleteDBClusterParameterGroup+ Amazonka.DocumentDB.DeleteDBClusterSnapshot+ Amazonka.DocumentDB.DeleteDBInstance+ Amazonka.DocumentDB.DeleteDBSubnetGroup+ Amazonka.DocumentDB.DeleteEventSubscription+ Amazonka.DocumentDB.DeleteGlobalCluster+ Amazonka.DocumentDB.DescribeCertificates+ Amazonka.DocumentDB.DescribeDBClusterParameterGroups+ Amazonka.DocumentDB.DescribeDBClusterParameters+ Amazonka.DocumentDB.DescribeDBClusters+ Amazonka.DocumentDB.DescribeDBClusterSnapshotAttributes+ Amazonka.DocumentDB.DescribeDBClusterSnapshots+ Amazonka.DocumentDB.DescribeDBEngineVersions+ Amazonka.DocumentDB.DescribeDBInstances+ Amazonka.DocumentDB.DescribeDBSubnetGroups+ Amazonka.DocumentDB.DescribeEngineDefaultClusterParameters+ Amazonka.DocumentDB.DescribeEventCategories+ Amazonka.DocumentDB.DescribeEvents+ Amazonka.DocumentDB.DescribeEventSubscriptions+ Amazonka.DocumentDB.DescribeGlobalClusters+ Amazonka.DocumentDB.DescribeOrderableDBInstanceOptions+ Amazonka.DocumentDB.DescribePendingMaintenanceActions+ Amazonka.DocumentDB.FailoverDBCluster+ Amazonka.DocumentDB.Lens+ Amazonka.DocumentDB.ListTagsForResource+ Amazonka.DocumentDB.ModifyDBCluster+ Amazonka.DocumentDB.ModifyDBClusterParameterGroup+ Amazonka.DocumentDB.ModifyDBClusterSnapshotAttribute+ Amazonka.DocumentDB.ModifyDBInstance+ Amazonka.DocumentDB.ModifyDBSubnetGroup+ Amazonka.DocumentDB.ModifyEventSubscription+ Amazonka.DocumentDB.ModifyGlobalCluster+ Amazonka.DocumentDB.RebootDBInstance+ Amazonka.DocumentDB.RemoveFromGlobalCluster+ Amazonka.DocumentDB.RemoveSourceIdentifierFromSubscription+ Amazonka.DocumentDB.RemoveTagsFromResource+ Amazonka.DocumentDB.ResetDBClusterParameterGroup+ Amazonka.DocumentDB.RestoreDBClusterFromSnapshot+ Amazonka.DocumentDB.RestoreDBClusterToPointInTime+ Amazonka.DocumentDB.StartDBCluster+ Amazonka.DocumentDB.StopDBCluster+ Amazonka.DocumentDB.Types+ Amazonka.DocumentDB.Types.ApplyMethod+ Amazonka.DocumentDB.Types.AvailabilityZone+ Amazonka.DocumentDB.Types.Certificate+ Amazonka.DocumentDB.Types.CloudwatchLogsExportConfiguration+ Amazonka.DocumentDB.Types.DBCluster+ Amazonka.DocumentDB.Types.DBClusterMember+ Amazonka.DocumentDB.Types.DBClusterParameterGroup+ Amazonka.DocumentDB.Types.DBClusterParameterGroupNameMessage+ Amazonka.DocumentDB.Types.DBClusterRole+ Amazonka.DocumentDB.Types.DBClusterSnapshot+ Amazonka.DocumentDB.Types.DBClusterSnapshotAttribute+ Amazonka.DocumentDB.Types.DBClusterSnapshotAttributesResult+ Amazonka.DocumentDB.Types.DBEngineVersion+ Amazonka.DocumentDB.Types.DBInstance+ Amazonka.DocumentDB.Types.DBInstanceStatusInfo+ Amazonka.DocumentDB.Types.DBSubnetGroup+ Amazonka.DocumentDB.Types.Endpoint+ Amazonka.DocumentDB.Types.EngineDefaults+ Amazonka.DocumentDB.Types.Event+ Amazonka.DocumentDB.Types.EventCategoriesMap+ Amazonka.DocumentDB.Types.EventSubscription+ Amazonka.DocumentDB.Types.Filter+ Amazonka.DocumentDB.Types.GlobalCluster+ Amazonka.DocumentDB.Types.GlobalClusterMember+ Amazonka.DocumentDB.Types.OrderableDBInstanceOption+ Amazonka.DocumentDB.Types.Parameter+ Amazonka.DocumentDB.Types.PendingCloudwatchLogsExports+ Amazonka.DocumentDB.Types.PendingMaintenanceAction+ Amazonka.DocumentDB.Types.PendingModifiedValues+ Amazonka.DocumentDB.Types.ResourcePendingMaintenanceActions+ Amazonka.DocumentDB.Types.SourceType+ Amazonka.DocumentDB.Types.Subnet+ Amazonka.DocumentDB.Types.Tag+ Amazonka.DocumentDB.Types.UpgradeTarget+ Amazonka.DocumentDB.Types.VpcSecurityGroupMembership+ Amazonka.DocumentDB.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-docdb-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs+ ghc-options: -Wall -threaded++ -- This section is encoded by the template and any modules added by+ -- hand outside these namespaces will not correctly be added to the+ -- distribution package.+ other-modules:+ Test.Amazonka.DocumentDB+ Test.Amazonka.DocumentDB.Internal+ Test.Amazonka.Gen.DocumentDB++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-docdb+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/AddSourceIdentifierToSubscription.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/AddSourceIdentifierToSubscriptionResponse.proto view
+ fixture/AddTagsToResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/AddTagsToResourceResponse.proto view
+ fixture/ApplyPendingMaintenanceAction.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ApplyPendingMaintenanceActionResponse.proto view
+ fixture/CopyDBClusterParameterGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CopyDBClusterParameterGroupResponse.proto view
+ fixture/CopyDBClusterSnapshot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CopyDBClusterSnapshotResponse.proto view
+ fixture/CreateDBCluster.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateDBClusterParameterGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateDBClusterParameterGroupResponse.proto view
+ fixture/CreateDBClusterResponse.proto view
+ fixture/CreateDBClusterSnapshot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateDBClusterSnapshotResponse.proto view
+ fixture/CreateDBInstance.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateDBInstanceResponse.proto view
+ fixture/CreateDBSubnetGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateDBSubnetGroupResponse.proto view
+ fixture/CreateEventSubscription.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateEventSubscriptionResponse.proto view
+ fixture/CreateGlobalCluster.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateGlobalClusterResponse.proto view
+ fixture/DeleteDBCluster.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteDBClusterParameterGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteDBClusterParameterGroupResponse.proto view
+ fixture/DeleteDBClusterResponse.proto view
+ fixture/DeleteDBClusterSnapshot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteDBClusterSnapshotResponse.proto view
+ fixture/DeleteDBInstance.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteDBInstanceResponse.proto view
+ fixture/DeleteDBSubnetGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteDBSubnetGroupResponse.proto view
+ fixture/DeleteEventSubscription.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteEventSubscriptionResponse.proto view
+ fixture/DeleteGlobalCluster.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteGlobalClusterResponse.proto view
+ fixture/DescribeCertificates.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeCertificatesResponse.proto view
+ fixture/DescribeDBClusterParameterGroups.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeDBClusterParameterGroupsResponse.proto view
+ fixture/DescribeDBClusterParameters.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeDBClusterParametersResponse.proto view
+ fixture/DescribeDBClusterSnapshotAttributes.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeDBClusterSnapshotAttributesResponse.proto view
+ fixture/DescribeDBClusterSnapshots.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeDBClusterSnapshotsResponse.proto view
+ fixture/DescribeDBClusters.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeDBClustersResponse.proto view
+ fixture/DescribeDBEngineVersions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeDBEngineVersionsResponse.proto view
+ fixture/DescribeDBInstances.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeDBInstancesResponse.proto view
+ fixture/DescribeDBSubnetGroups.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeDBSubnetGroupsResponse.proto view
+ fixture/DescribeEngineDefaultClusterParameters.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeEngineDefaultClusterParametersResponse.proto view
+ fixture/DescribeEventCategories.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeEventCategoriesResponse.proto view
+ fixture/DescribeEventSubscriptions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeEventSubscriptionsResponse.proto view
+ fixture/DescribeEvents.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeEventsResponse.proto view
+ fixture/DescribeGlobalClusters.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeGlobalClustersResponse.proto view
+ fixture/DescribeOrderableDBInstanceOptions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeOrderableDBInstanceOptionsResponse.proto view
+ fixture/DescribePendingMaintenanceActions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribePendingMaintenanceActionsResponse.proto view
+ fixture/FailoverDBCluster.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/FailoverDBClusterResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListTagsForResourceResponse.proto view
+ fixture/ModifyDBCluster.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ModifyDBClusterParameterGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ModifyDBClusterParameterGroupResponse.proto view
+ fixture/ModifyDBClusterResponse.proto view
+ fixture/ModifyDBClusterSnapshotAttribute.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ModifyDBClusterSnapshotAttributeResponse.proto view
+ fixture/ModifyDBInstance.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ModifyDBInstanceResponse.proto view
+ fixture/ModifyDBSubnetGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ModifyDBSubnetGroupResponse.proto view
+ fixture/ModifyEventSubscription.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ModifyEventSubscriptionResponse.proto view
+ fixture/ModifyGlobalCluster.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ModifyGlobalClusterResponse.proto view
+ fixture/RebootDBInstance.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/RebootDBInstanceResponse.proto view
+ fixture/RemoveFromGlobalCluster.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/RemoveFromGlobalClusterResponse.proto view
+ fixture/RemoveSourceIdentifierFromSubscription.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/RemoveSourceIdentifierFromSubscriptionResponse.proto view
+ fixture/RemoveTagsFromResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/RemoveTagsFromResourceResponse.proto view
+ fixture/ResetDBClusterParameterGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ResetDBClusterParameterGroupResponse.proto view
+ fixture/RestoreDBClusterFromSnapshot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/RestoreDBClusterFromSnapshotResponse.proto view
+ fixture/RestoreDBClusterToPointInTime.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/RestoreDBClusterToPointInTimeResponse.proto view
+ fixture/StartDBCluster.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/StartDBClusterResponse.proto view
+ fixture/StopDBCluster.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/rds/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: rds.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/StopDBClusterResponse.proto view
+ gen/Amazonka/DocumentDB.hs view
@@ -0,0 +1,747 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.DocumentDB+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2014-10-31@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- Amazon DocumentDB API documentation+module Amazonka.DocumentDB+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AuthorizationNotFoundFault+ _AuthorizationNotFoundFault,++ -- ** CertificateNotFoundFault+ _CertificateNotFoundFault,++ -- ** DBClusterAlreadyExistsFault+ _DBClusterAlreadyExistsFault,++ -- ** DBClusterNotFoundFault+ _DBClusterNotFoundFault,++ -- ** DBClusterParameterGroupNotFoundFault+ _DBClusterParameterGroupNotFoundFault,++ -- ** DBClusterQuotaExceededFault+ _DBClusterQuotaExceededFault,++ -- ** DBClusterSnapshotAlreadyExistsFault+ _DBClusterSnapshotAlreadyExistsFault,++ -- ** DBClusterSnapshotNotFoundFault+ _DBClusterSnapshotNotFoundFault,++ -- ** DBInstanceAlreadyExistsFault+ _DBInstanceAlreadyExistsFault,++ -- ** DBInstanceNotFoundFault+ _DBInstanceNotFoundFault,++ -- ** DBParameterGroupAlreadyExistsFault+ _DBParameterGroupAlreadyExistsFault,++ -- ** DBParameterGroupNotFoundFault+ _DBParameterGroupNotFoundFault,++ -- ** DBParameterGroupQuotaExceededFault+ _DBParameterGroupQuotaExceededFault,++ -- ** DBSecurityGroupNotFoundFault+ _DBSecurityGroupNotFoundFault,++ -- ** DBSnapshotAlreadyExistsFault+ _DBSnapshotAlreadyExistsFault,++ -- ** DBSnapshotNotFoundFault+ _DBSnapshotNotFoundFault,++ -- ** DBSubnetGroupAlreadyExistsFault+ _DBSubnetGroupAlreadyExistsFault,++ -- ** DBSubnetGroupDoesNotCoverEnoughAZs+ _DBSubnetGroupDoesNotCoverEnoughAZs,++ -- ** DBSubnetGroupNotFoundFault+ _DBSubnetGroupNotFoundFault,++ -- ** DBSubnetGroupQuotaExceededFault+ _DBSubnetGroupQuotaExceededFault,++ -- ** DBSubnetQuotaExceededFault+ _DBSubnetQuotaExceededFault,++ -- ** DBUpgradeDependencyFailureFault+ _DBUpgradeDependencyFailureFault,++ -- ** EventSubscriptionQuotaExceededFault+ _EventSubscriptionQuotaExceededFault,++ -- ** GlobalClusterAlreadyExistsFault+ _GlobalClusterAlreadyExistsFault,++ -- ** GlobalClusterNotFoundFault+ _GlobalClusterNotFoundFault,++ -- ** GlobalClusterQuotaExceededFault+ _GlobalClusterQuotaExceededFault,++ -- ** InstanceQuotaExceededFault+ _InstanceQuotaExceededFault,++ -- ** InsufficientDBClusterCapacityFault+ _InsufficientDBClusterCapacityFault,++ -- ** InsufficientDBInstanceCapacityFault+ _InsufficientDBInstanceCapacityFault,++ -- ** InsufficientStorageClusterCapacityFault+ _InsufficientStorageClusterCapacityFault,++ -- ** InvalidDBClusterSnapshotStateFault+ _InvalidDBClusterSnapshotStateFault,++ -- ** InvalidDBClusterStateFault+ _InvalidDBClusterStateFault,++ -- ** InvalidDBInstanceStateFault+ _InvalidDBInstanceStateFault,++ -- ** InvalidDBParameterGroupStateFault+ _InvalidDBParameterGroupStateFault,++ -- ** InvalidDBSecurityGroupStateFault+ _InvalidDBSecurityGroupStateFault,++ -- ** InvalidDBSnapshotStateFault+ _InvalidDBSnapshotStateFault,++ -- ** InvalidDBSubnetGroupStateFault+ _InvalidDBSubnetGroupStateFault,++ -- ** InvalidDBSubnetStateFault+ _InvalidDBSubnetStateFault,++ -- ** InvalidEventSubscriptionStateFault+ _InvalidEventSubscriptionStateFault,++ -- ** InvalidGlobalClusterStateFault+ _InvalidGlobalClusterStateFault,++ -- ** InvalidRestoreFault+ _InvalidRestoreFault,++ -- ** InvalidSubnet+ _InvalidSubnet,++ -- ** InvalidVPCNetworkStateFault+ _InvalidVPCNetworkStateFault,++ -- ** KMSKeyNotAccessibleFault+ _KMSKeyNotAccessibleFault,++ -- ** ResourceNotFoundFault+ _ResourceNotFoundFault,++ -- ** SNSInvalidTopicFault+ _SNSInvalidTopicFault,++ -- ** SNSNoAuthorizationFault+ _SNSNoAuthorizationFault,++ -- ** SNSTopicArnNotFoundFault+ _SNSTopicArnNotFoundFault,++ -- ** SharedSnapshotQuotaExceededFault+ _SharedSnapshotQuotaExceededFault,++ -- ** SnapshotQuotaExceededFault+ _SnapshotQuotaExceededFault,++ -- ** SourceNotFoundFault+ _SourceNotFoundFault,++ -- ** StorageQuotaExceededFault+ _StorageQuotaExceededFault,++ -- ** StorageTypeNotSupportedFault+ _StorageTypeNotSupportedFault,++ -- ** SubnetAlreadyInUse+ _SubnetAlreadyInUse,++ -- ** SubscriptionAlreadyExistFault+ _SubscriptionAlreadyExistFault,++ -- ** SubscriptionCategoryNotFoundFault+ _SubscriptionCategoryNotFoundFault,++ -- ** SubscriptionNotFoundFault+ _SubscriptionNotFoundFault,++ -- * Waiters+ -- $waiters++ -- ** DBInstanceAvailable+ newDBInstanceAvailable,++ -- ** DBInstanceDeleted+ newDBInstanceDeleted,++ -- * Operations+ -- $operations++ -- ** AddSourceIdentifierToSubscription+ AddSourceIdentifierToSubscription (AddSourceIdentifierToSubscription'),+ newAddSourceIdentifierToSubscription,+ AddSourceIdentifierToSubscriptionResponse (AddSourceIdentifierToSubscriptionResponse'),+ newAddSourceIdentifierToSubscriptionResponse,++ -- ** AddTagsToResource+ AddTagsToResource (AddTagsToResource'),+ newAddTagsToResource,+ AddTagsToResourceResponse (AddTagsToResourceResponse'),+ newAddTagsToResourceResponse,++ -- ** ApplyPendingMaintenanceAction+ ApplyPendingMaintenanceAction (ApplyPendingMaintenanceAction'),+ newApplyPendingMaintenanceAction,+ ApplyPendingMaintenanceActionResponse (ApplyPendingMaintenanceActionResponse'),+ newApplyPendingMaintenanceActionResponse,++ -- ** CopyDBClusterParameterGroup+ CopyDBClusterParameterGroup (CopyDBClusterParameterGroup'),+ newCopyDBClusterParameterGroup,+ CopyDBClusterParameterGroupResponse (CopyDBClusterParameterGroupResponse'),+ newCopyDBClusterParameterGroupResponse,++ -- ** CopyDBClusterSnapshot+ CopyDBClusterSnapshot (CopyDBClusterSnapshot'),+ newCopyDBClusterSnapshot,+ CopyDBClusterSnapshotResponse (CopyDBClusterSnapshotResponse'),+ newCopyDBClusterSnapshotResponse,++ -- ** CreateDBCluster+ CreateDBCluster (CreateDBCluster'),+ newCreateDBCluster,+ CreateDBClusterResponse (CreateDBClusterResponse'),+ newCreateDBClusterResponse,++ -- ** CreateDBClusterParameterGroup+ CreateDBClusterParameterGroup (CreateDBClusterParameterGroup'),+ newCreateDBClusterParameterGroup,+ CreateDBClusterParameterGroupResponse (CreateDBClusterParameterGroupResponse'),+ newCreateDBClusterParameterGroupResponse,++ -- ** CreateDBClusterSnapshot+ CreateDBClusterSnapshot (CreateDBClusterSnapshot'),+ newCreateDBClusterSnapshot,+ CreateDBClusterSnapshotResponse (CreateDBClusterSnapshotResponse'),+ newCreateDBClusterSnapshotResponse,++ -- ** CreateDBInstance+ CreateDBInstance (CreateDBInstance'),+ newCreateDBInstance,+ CreateDBInstanceResponse (CreateDBInstanceResponse'),+ newCreateDBInstanceResponse,++ -- ** CreateDBSubnetGroup+ CreateDBSubnetGroup (CreateDBSubnetGroup'),+ newCreateDBSubnetGroup,+ CreateDBSubnetGroupResponse (CreateDBSubnetGroupResponse'),+ newCreateDBSubnetGroupResponse,++ -- ** CreateEventSubscription+ CreateEventSubscription (CreateEventSubscription'),+ newCreateEventSubscription,+ CreateEventSubscriptionResponse (CreateEventSubscriptionResponse'),+ newCreateEventSubscriptionResponse,++ -- ** CreateGlobalCluster+ CreateGlobalCluster (CreateGlobalCluster'),+ newCreateGlobalCluster,+ CreateGlobalClusterResponse (CreateGlobalClusterResponse'),+ newCreateGlobalClusterResponse,++ -- ** DeleteDBCluster+ DeleteDBCluster (DeleteDBCluster'),+ newDeleteDBCluster,+ DeleteDBClusterResponse (DeleteDBClusterResponse'),+ newDeleteDBClusterResponse,++ -- ** DeleteDBClusterParameterGroup+ DeleteDBClusterParameterGroup (DeleteDBClusterParameterGroup'),+ newDeleteDBClusterParameterGroup,+ DeleteDBClusterParameterGroupResponse (DeleteDBClusterParameterGroupResponse'),+ newDeleteDBClusterParameterGroupResponse,++ -- ** DeleteDBClusterSnapshot+ DeleteDBClusterSnapshot (DeleteDBClusterSnapshot'),+ newDeleteDBClusterSnapshot,+ DeleteDBClusterSnapshotResponse (DeleteDBClusterSnapshotResponse'),+ newDeleteDBClusterSnapshotResponse,++ -- ** DeleteDBInstance+ DeleteDBInstance (DeleteDBInstance'),+ newDeleteDBInstance,+ DeleteDBInstanceResponse (DeleteDBInstanceResponse'),+ newDeleteDBInstanceResponse,++ -- ** DeleteDBSubnetGroup+ DeleteDBSubnetGroup (DeleteDBSubnetGroup'),+ newDeleteDBSubnetGroup,+ DeleteDBSubnetGroupResponse (DeleteDBSubnetGroupResponse'),+ newDeleteDBSubnetGroupResponse,++ -- ** DeleteEventSubscription+ DeleteEventSubscription (DeleteEventSubscription'),+ newDeleteEventSubscription,+ DeleteEventSubscriptionResponse (DeleteEventSubscriptionResponse'),+ newDeleteEventSubscriptionResponse,++ -- ** DeleteGlobalCluster+ DeleteGlobalCluster (DeleteGlobalCluster'),+ newDeleteGlobalCluster,+ DeleteGlobalClusterResponse (DeleteGlobalClusterResponse'),+ newDeleteGlobalClusterResponse,++ -- ** DescribeCertificates (Paginated)+ DescribeCertificates (DescribeCertificates'),+ newDescribeCertificates,+ DescribeCertificatesResponse (DescribeCertificatesResponse'),+ newDescribeCertificatesResponse,++ -- ** DescribeDBClusterParameterGroups (Paginated)+ DescribeDBClusterParameterGroups (DescribeDBClusterParameterGroups'),+ newDescribeDBClusterParameterGroups,+ DescribeDBClusterParameterGroupsResponse (DescribeDBClusterParameterGroupsResponse'),+ newDescribeDBClusterParameterGroupsResponse,++ -- ** DescribeDBClusterParameters (Paginated)+ DescribeDBClusterParameters (DescribeDBClusterParameters'),+ newDescribeDBClusterParameters,+ DescribeDBClusterParametersResponse (DescribeDBClusterParametersResponse'),+ newDescribeDBClusterParametersResponse,++ -- ** DescribeDBClusterSnapshotAttributes+ DescribeDBClusterSnapshotAttributes (DescribeDBClusterSnapshotAttributes'),+ newDescribeDBClusterSnapshotAttributes,+ DescribeDBClusterSnapshotAttributesResponse (DescribeDBClusterSnapshotAttributesResponse'),+ newDescribeDBClusterSnapshotAttributesResponse,++ -- ** DescribeDBClusterSnapshots (Paginated)+ DescribeDBClusterSnapshots (DescribeDBClusterSnapshots'),+ newDescribeDBClusterSnapshots,+ DescribeDBClusterSnapshotsResponse (DescribeDBClusterSnapshotsResponse'),+ newDescribeDBClusterSnapshotsResponse,++ -- ** DescribeDBClusters (Paginated)+ DescribeDBClusters (DescribeDBClusters'),+ newDescribeDBClusters,+ DescribeDBClustersResponse (DescribeDBClustersResponse'),+ newDescribeDBClustersResponse,++ -- ** DescribeDBEngineVersions (Paginated)+ DescribeDBEngineVersions (DescribeDBEngineVersions'),+ newDescribeDBEngineVersions,+ DescribeDBEngineVersionsResponse (DescribeDBEngineVersionsResponse'),+ newDescribeDBEngineVersionsResponse,++ -- ** DescribeDBInstances (Paginated)+ DescribeDBInstances (DescribeDBInstances'),+ newDescribeDBInstances,+ DescribeDBInstancesResponse (DescribeDBInstancesResponse'),+ newDescribeDBInstancesResponse,++ -- ** DescribeDBSubnetGroups (Paginated)+ DescribeDBSubnetGroups (DescribeDBSubnetGroups'),+ newDescribeDBSubnetGroups,+ DescribeDBSubnetGroupsResponse (DescribeDBSubnetGroupsResponse'),+ newDescribeDBSubnetGroupsResponse,++ -- ** DescribeEngineDefaultClusterParameters+ DescribeEngineDefaultClusterParameters (DescribeEngineDefaultClusterParameters'),+ newDescribeEngineDefaultClusterParameters,+ DescribeEngineDefaultClusterParametersResponse (DescribeEngineDefaultClusterParametersResponse'),+ newDescribeEngineDefaultClusterParametersResponse,++ -- ** DescribeEventCategories+ DescribeEventCategories (DescribeEventCategories'),+ newDescribeEventCategories,+ DescribeEventCategoriesResponse (DescribeEventCategoriesResponse'),+ newDescribeEventCategoriesResponse,++ -- ** DescribeEventSubscriptions (Paginated)+ DescribeEventSubscriptions (DescribeEventSubscriptions'),+ newDescribeEventSubscriptions,+ DescribeEventSubscriptionsResponse (DescribeEventSubscriptionsResponse'),+ newDescribeEventSubscriptionsResponse,++ -- ** DescribeEvents (Paginated)+ DescribeEvents (DescribeEvents'),+ newDescribeEvents,+ DescribeEventsResponse (DescribeEventsResponse'),+ newDescribeEventsResponse,++ -- ** DescribeGlobalClusters (Paginated)+ DescribeGlobalClusters (DescribeGlobalClusters'),+ newDescribeGlobalClusters,+ DescribeGlobalClustersResponse (DescribeGlobalClustersResponse'),+ newDescribeGlobalClustersResponse,++ -- ** DescribeOrderableDBInstanceOptions (Paginated)+ DescribeOrderableDBInstanceOptions (DescribeOrderableDBInstanceOptions'),+ newDescribeOrderableDBInstanceOptions,+ DescribeOrderableDBInstanceOptionsResponse (DescribeOrderableDBInstanceOptionsResponse'),+ newDescribeOrderableDBInstanceOptionsResponse,++ -- ** DescribePendingMaintenanceActions (Paginated)+ DescribePendingMaintenanceActions (DescribePendingMaintenanceActions'),+ newDescribePendingMaintenanceActions,+ DescribePendingMaintenanceActionsResponse (DescribePendingMaintenanceActionsResponse'),+ newDescribePendingMaintenanceActionsResponse,++ -- ** FailoverDBCluster+ FailoverDBCluster (FailoverDBCluster'),+ newFailoverDBCluster,+ FailoverDBClusterResponse (FailoverDBClusterResponse'),+ newFailoverDBClusterResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** ModifyDBCluster+ ModifyDBCluster (ModifyDBCluster'),+ newModifyDBCluster,+ ModifyDBClusterResponse (ModifyDBClusterResponse'),+ newModifyDBClusterResponse,++ -- ** ModifyDBClusterParameterGroup+ ModifyDBClusterParameterGroup (ModifyDBClusterParameterGroup'),+ newModifyDBClusterParameterGroup,+ DBClusterParameterGroupNameMessage (DBClusterParameterGroupNameMessage'),+ newDBClusterParameterGroupNameMessage,++ -- ** ModifyDBClusterSnapshotAttribute+ ModifyDBClusterSnapshotAttribute (ModifyDBClusterSnapshotAttribute'),+ newModifyDBClusterSnapshotAttribute,+ ModifyDBClusterSnapshotAttributeResponse (ModifyDBClusterSnapshotAttributeResponse'),+ newModifyDBClusterSnapshotAttributeResponse,++ -- ** ModifyDBInstance+ ModifyDBInstance (ModifyDBInstance'),+ newModifyDBInstance,+ ModifyDBInstanceResponse (ModifyDBInstanceResponse'),+ newModifyDBInstanceResponse,++ -- ** ModifyDBSubnetGroup+ ModifyDBSubnetGroup (ModifyDBSubnetGroup'),+ newModifyDBSubnetGroup,+ ModifyDBSubnetGroupResponse (ModifyDBSubnetGroupResponse'),+ newModifyDBSubnetGroupResponse,++ -- ** ModifyEventSubscription+ ModifyEventSubscription (ModifyEventSubscription'),+ newModifyEventSubscription,+ ModifyEventSubscriptionResponse (ModifyEventSubscriptionResponse'),+ newModifyEventSubscriptionResponse,++ -- ** ModifyGlobalCluster+ ModifyGlobalCluster (ModifyGlobalCluster'),+ newModifyGlobalCluster,+ ModifyGlobalClusterResponse (ModifyGlobalClusterResponse'),+ newModifyGlobalClusterResponse,++ -- ** RebootDBInstance+ RebootDBInstance (RebootDBInstance'),+ newRebootDBInstance,+ RebootDBInstanceResponse (RebootDBInstanceResponse'),+ newRebootDBInstanceResponse,++ -- ** RemoveFromGlobalCluster+ RemoveFromGlobalCluster (RemoveFromGlobalCluster'),+ newRemoveFromGlobalCluster,+ RemoveFromGlobalClusterResponse (RemoveFromGlobalClusterResponse'),+ newRemoveFromGlobalClusterResponse,++ -- ** RemoveSourceIdentifierFromSubscription+ RemoveSourceIdentifierFromSubscription (RemoveSourceIdentifierFromSubscription'),+ newRemoveSourceIdentifierFromSubscription,+ RemoveSourceIdentifierFromSubscriptionResponse (RemoveSourceIdentifierFromSubscriptionResponse'),+ newRemoveSourceIdentifierFromSubscriptionResponse,++ -- ** RemoveTagsFromResource+ RemoveTagsFromResource (RemoveTagsFromResource'),+ newRemoveTagsFromResource,+ RemoveTagsFromResourceResponse (RemoveTagsFromResourceResponse'),+ newRemoveTagsFromResourceResponse,++ -- ** ResetDBClusterParameterGroup+ ResetDBClusterParameterGroup (ResetDBClusterParameterGroup'),+ newResetDBClusterParameterGroup,+ DBClusterParameterGroupNameMessage (DBClusterParameterGroupNameMessage'),+ newDBClusterParameterGroupNameMessage,++ -- ** RestoreDBClusterFromSnapshot+ RestoreDBClusterFromSnapshot (RestoreDBClusterFromSnapshot'),+ newRestoreDBClusterFromSnapshot,+ RestoreDBClusterFromSnapshotResponse (RestoreDBClusterFromSnapshotResponse'),+ newRestoreDBClusterFromSnapshotResponse,++ -- ** RestoreDBClusterToPointInTime+ RestoreDBClusterToPointInTime (RestoreDBClusterToPointInTime'),+ newRestoreDBClusterToPointInTime,+ RestoreDBClusterToPointInTimeResponse (RestoreDBClusterToPointInTimeResponse'),+ newRestoreDBClusterToPointInTimeResponse,++ -- ** StartDBCluster+ StartDBCluster (StartDBCluster'),+ newStartDBCluster,+ StartDBClusterResponse (StartDBClusterResponse'),+ newStartDBClusterResponse,++ -- ** StopDBCluster+ StopDBCluster (StopDBCluster'),+ newStopDBCluster,+ StopDBClusterResponse (StopDBClusterResponse'),+ newStopDBClusterResponse,++ -- * Types++ -- ** ApplyMethod+ ApplyMethod (..),++ -- ** SourceType+ SourceType (..),++ -- ** AvailabilityZone+ AvailabilityZone (AvailabilityZone'),+ newAvailabilityZone,++ -- ** Certificate+ Certificate (Certificate'),+ newCertificate,++ -- ** CloudwatchLogsExportConfiguration+ CloudwatchLogsExportConfiguration (CloudwatchLogsExportConfiguration'),+ newCloudwatchLogsExportConfiguration,++ -- ** DBCluster+ DBCluster (DBCluster'),+ newDBCluster,++ -- ** DBClusterMember+ DBClusterMember (DBClusterMember'),+ newDBClusterMember,++ -- ** DBClusterParameterGroup+ DBClusterParameterGroup (DBClusterParameterGroup'),+ newDBClusterParameterGroup,++ -- ** DBClusterParameterGroupNameMessage+ DBClusterParameterGroupNameMessage (DBClusterParameterGroupNameMessage'),+ newDBClusterParameterGroupNameMessage,++ -- ** DBClusterRole+ DBClusterRole (DBClusterRole'),+ newDBClusterRole,++ -- ** DBClusterSnapshot+ DBClusterSnapshot (DBClusterSnapshot'),+ newDBClusterSnapshot,++ -- ** DBClusterSnapshotAttribute+ DBClusterSnapshotAttribute (DBClusterSnapshotAttribute'),+ newDBClusterSnapshotAttribute,++ -- ** DBClusterSnapshotAttributesResult+ DBClusterSnapshotAttributesResult (DBClusterSnapshotAttributesResult'),+ newDBClusterSnapshotAttributesResult,++ -- ** DBEngineVersion+ DBEngineVersion (DBEngineVersion'),+ newDBEngineVersion,++ -- ** DBInstance+ DBInstance (DBInstance'),+ newDBInstance,++ -- ** DBInstanceStatusInfo+ DBInstanceStatusInfo (DBInstanceStatusInfo'),+ newDBInstanceStatusInfo,++ -- ** DBSubnetGroup+ DBSubnetGroup (DBSubnetGroup'),+ newDBSubnetGroup,++ -- ** Endpoint+ Endpoint (Endpoint'),+ newEndpoint,++ -- ** EngineDefaults+ EngineDefaults (EngineDefaults'),+ newEngineDefaults,++ -- ** Event+ Event (Event'),+ newEvent,++ -- ** EventCategoriesMap+ EventCategoriesMap (EventCategoriesMap'),+ newEventCategoriesMap,++ -- ** EventSubscription+ EventSubscription (EventSubscription'),+ newEventSubscription,++ -- ** Filter+ Filter (Filter'),+ newFilter,++ -- ** GlobalCluster+ GlobalCluster (GlobalCluster'),+ newGlobalCluster,++ -- ** GlobalClusterMember+ GlobalClusterMember (GlobalClusterMember'),+ newGlobalClusterMember,++ -- ** OrderableDBInstanceOption+ OrderableDBInstanceOption (OrderableDBInstanceOption'),+ newOrderableDBInstanceOption,++ -- ** Parameter+ Parameter (Parameter'),+ newParameter,++ -- ** PendingCloudwatchLogsExports+ PendingCloudwatchLogsExports (PendingCloudwatchLogsExports'),+ newPendingCloudwatchLogsExports,++ -- ** PendingMaintenanceAction+ PendingMaintenanceAction (PendingMaintenanceAction'),+ newPendingMaintenanceAction,++ -- ** PendingModifiedValues+ PendingModifiedValues (PendingModifiedValues'),+ newPendingModifiedValues,++ -- ** ResourcePendingMaintenanceActions+ ResourcePendingMaintenanceActions (ResourcePendingMaintenanceActions'),+ newResourcePendingMaintenanceActions,++ -- ** Subnet+ Subnet (Subnet'),+ newSubnet,++ -- ** Tag+ Tag (Tag'),+ newTag,++ -- ** UpgradeTarget+ UpgradeTarget (UpgradeTarget'),+ newUpgradeTarget,++ -- ** VpcSecurityGroupMembership+ VpcSecurityGroupMembership (VpcSecurityGroupMembership'),+ newVpcSecurityGroupMembership,+ )+where++import Amazonka.DocumentDB.AddSourceIdentifierToSubscription+import Amazonka.DocumentDB.AddTagsToResource+import Amazonka.DocumentDB.ApplyPendingMaintenanceAction+import Amazonka.DocumentDB.CopyDBClusterParameterGroup+import Amazonka.DocumentDB.CopyDBClusterSnapshot+import Amazonka.DocumentDB.CreateDBCluster+import Amazonka.DocumentDB.CreateDBClusterParameterGroup+import Amazonka.DocumentDB.CreateDBClusterSnapshot+import Amazonka.DocumentDB.CreateDBInstance+import Amazonka.DocumentDB.CreateDBSubnetGroup+import Amazonka.DocumentDB.CreateEventSubscription+import Amazonka.DocumentDB.CreateGlobalCluster+import Amazonka.DocumentDB.DeleteDBCluster+import Amazonka.DocumentDB.DeleteDBClusterParameterGroup+import Amazonka.DocumentDB.DeleteDBClusterSnapshot+import Amazonka.DocumentDB.DeleteDBInstance+import Amazonka.DocumentDB.DeleteDBSubnetGroup+import Amazonka.DocumentDB.DeleteEventSubscription+import Amazonka.DocumentDB.DeleteGlobalCluster+import Amazonka.DocumentDB.DescribeCertificates+import Amazonka.DocumentDB.DescribeDBClusterParameterGroups+import Amazonka.DocumentDB.DescribeDBClusterParameters+import Amazonka.DocumentDB.DescribeDBClusterSnapshotAttributes+import Amazonka.DocumentDB.DescribeDBClusterSnapshots+import Amazonka.DocumentDB.DescribeDBClusters+import Amazonka.DocumentDB.DescribeDBEngineVersions+import Amazonka.DocumentDB.DescribeDBInstances+import Amazonka.DocumentDB.DescribeDBSubnetGroups+import Amazonka.DocumentDB.DescribeEngineDefaultClusterParameters+import Amazonka.DocumentDB.DescribeEventCategories+import Amazonka.DocumentDB.DescribeEventSubscriptions+import Amazonka.DocumentDB.DescribeEvents+import Amazonka.DocumentDB.DescribeGlobalClusters+import Amazonka.DocumentDB.DescribeOrderableDBInstanceOptions+import Amazonka.DocumentDB.DescribePendingMaintenanceActions+import Amazonka.DocumentDB.FailoverDBCluster+import Amazonka.DocumentDB.Lens+import Amazonka.DocumentDB.ListTagsForResource+import Amazonka.DocumentDB.ModifyDBCluster+import Amazonka.DocumentDB.ModifyDBClusterParameterGroup+import Amazonka.DocumentDB.ModifyDBClusterSnapshotAttribute+import Amazonka.DocumentDB.ModifyDBInstance+import Amazonka.DocumentDB.ModifyDBSubnetGroup+import Amazonka.DocumentDB.ModifyEventSubscription+import Amazonka.DocumentDB.ModifyGlobalCluster+import Amazonka.DocumentDB.RebootDBInstance+import Amazonka.DocumentDB.RemoveFromGlobalCluster+import Amazonka.DocumentDB.RemoveSourceIdentifierFromSubscription+import Amazonka.DocumentDB.RemoveTagsFromResource+import Amazonka.DocumentDB.ResetDBClusterParameterGroup+import Amazonka.DocumentDB.RestoreDBClusterFromSnapshot+import Amazonka.DocumentDB.RestoreDBClusterToPointInTime+import Amazonka.DocumentDB.StartDBCluster+import Amazonka.DocumentDB.StopDBCluster+import Amazonka.DocumentDB.Types+import Amazonka.DocumentDB.Waiters++-- $errors+-- Error matchers are designed for use with the functions provided by+-- <http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+-- This allows catching (and rethrowing) service specific errors returned+-- by 'DocumentDB'.++-- $operations+-- Some AWS operations return results that are incomplete and require subsequent+-- requests in order to obtain the entire result set. The process of sending+-- subsequent requests to continue where a previous request left off is called+-- pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+-- 1000 objects at a time, and you must send subsequent requests with the+-- appropriate Marker in order to retrieve the next page of results.+--+-- Operations that have an 'AWSPager' instance can transparently perform subsequent+-- requests, correctly setting Markers and other request facets to iterate through+-- the entire result set of a truncated API operation. Operations which support+-- this have an additional note in the documentation.+--+-- Many operations have the ability to filter results on the server side. See the+-- individual operation parameters for details.++-- $waiters+-- Waiters poll by repeatedly sending a request until some remote success condition+-- configured by the 'Wait' specification is fulfilled. The 'Wait' specification+-- determines how many attempts should be made, in addition to delay and retry strategies.
+ gen/Amazonka/DocumentDB/AddSourceIdentifierToSubscription.hs view
@@ -0,0 +1,245 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.AddSourceIdentifierToSubscription+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds a source identifier to an existing event notification subscription.+module Amazonka.DocumentDB.AddSourceIdentifierToSubscription+ ( -- * Creating a Request+ AddSourceIdentifierToSubscription (..),+ newAddSourceIdentifierToSubscription,++ -- * Request Lenses+ addSourceIdentifierToSubscription_subscriptionName,+ addSourceIdentifierToSubscription_sourceIdentifier,++ -- * Destructuring the Response+ AddSourceIdentifierToSubscriptionResponse (..),+ newAddSourceIdentifierToSubscriptionResponse,++ -- * Response Lenses+ addSourceIdentifierToSubscriptionResponse_eventSubscription,+ addSourceIdentifierToSubscriptionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to AddSourceIdentifierToSubscription.+--+-- /See:/ 'newAddSourceIdentifierToSubscription' smart constructor.+data AddSourceIdentifierToSubscription = AddSourceIdentifierToSubscription'+ { -- | The name of the Amazon DocumentDB event notification subscription that+ -- you want to add a source identifier to.+ subscriptionName :: Prelude.Text,+ -- | The identifier of the event source to be added:+ --+ -- - If the source type is an instance, a @DBInstanceIdentifier@ must be+ -- provided.+ --+ -- - If the source type is a security group, a @DBSecurityGroupName@ must+ -- be provided.+ --+ -- - If the source type is a parameter group, a @DBParameterGroupName@+ -- must be provided.+ --+ -- - If the source type is a snapshot, a @DBSnapshotIdentifier@ must be+ -- provided.+ sourceIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddSourceIdentifierToSubscription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'subscriptionName', 'addSourceIdentifierToSubscription_subscriptionName' - The name of the Amazon DocumentDB event notification subscription that+-- you want to add a source identifier to.+--+-- 'sourceIdentifier', 'addSourceIdentifierToSubscription_sourceIdentifier' - The identifier of the event source to be added:+--+-- - If the source type is an instance, a @DBInstanceIdentifier@ must be+-- provided.+--+-- - If the source type is a security group, a @DBSecurityGroupName@ must+-- be provided.+--+-- - If the source type is a parameter group, a @DBParameterGroupName@+-- must be provided.+--+-- - If the source type is a snapshot, a @DBSnapshotIdentifier@ must be+-- provided.+newAddSourceIdentifierToSubscription ::+ -- | 'subscriptionName'+ Prelude.Text ->+ -- | 'sourceIdentifier'+ Prelude.Text ->+ AddSourceIdentifierToSubscription+newAddSourceIdentifierToSubscription+ pSubscriptionName_+ pSourceIdentifier_ =+ AddSourceIdentifierToSubscription'+ { subscriptionName =+ pSubscriptionName_,+ sourceIdentifier = pSourceIdentifier_+ }++-- | The name of the Amazon DocumentDB event notification subscription that+-- you want to add a source identifier to.+addSourceIdentifierToSubscription_subscriptionName :: Lens.Lens' AddSourceIdentifierToSubscription Prelude.Text+addSourceIdentifierToSubscription_subscriptionName = Lens.lens (\AddSourceIdentifierToSubscription' {subscriptionName} -> subscriptionName) (\s@AddSourceIdentifierToSubscription' {} a -> s {subscriptionName = a} :: AddSourceIdentifierToSubscription)++-- | The identifier of the event source to be added:+--+-- - If the source type is an instance, a @DBInstanceIdentifier@ must be+-- provided.+--+-- - If the source type is a security group, a @DBSecurityGroupName@ must+-- be provided.+--+-- - If the source type is a parameter group, a @DBParameterGroupName@+-- must be provided.+--+-- - If the source type is a snapshot, a @DBSnapshotIdentifier@ must be+-- provided.+addSourceIdentifierToSubscription_sourceIdentifier :: Lens.Lens' AddSourceIdentifierToSubscription Prelude.Text+addSourceIdentifierToSubscription_sourceIdentifier = Lens.lens (\AddSourceIdentifierToSubscription' {sourceIdentifier} -> sourceIdentifier) (\s@AddSourceIdentifierToSubscription' {} a -> s {sourceIdentifier = a} :: AddSourceIdentifierToSubscription)++instance+ Core.AWSRequest+ AddSourceIdentifierToSubscription+ where+ type+ AWSResponse AddSourceIdentifierToSubscription =+ AddSourceIdentifierToSubscriptionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "AddSourceIdentifierToSubscriptionResult"+ ( \s h x ->+ AddSourceIdentifierToSubscriptionResponse'+ Prelude.<$> (x Data..@? "EventSubscription")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ AddSourceIdentifierToSubscription+ where+ hashWithSalt+ _salt+ AddSourceIdentifierToSubscription' {..} =+ _salt+ `Prelude.hashWithSalt` subscriptionName+ `Prelude.hashWithSalt` sourceIdentifier++instance+ Prelude.NFData+ AddSourceIdentifierToSubscription+ where+ rnf AddSourceIdentifierToSubscription' {..} =+ Prelude.rnf subscriptionName+ `Prelude.seq` Prelude.rnf sourceIdentifier++instance+ Data.ToHeaders+ AddSourceIdentifierToSubscription+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ AddSourceIdentifierToSubscription+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ AddSourceIdentifierToSubscription+ where+ toQuery AddSourceIdentifierToSubscription' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "AddSourceIdentifierToSubscription" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "SubscriptionName" Data.=: subscriptionName,+ "SourceIdentifier" Data.=: sourceIdentifier+ ]++-- | /See:/ 'newAddSourceIdentifierToSubscriptionResponse' smart constructor.+data AddSourceIdentifierToSubscriptionResponse = AddSourceIdentifierToSubscriptionResponse'+ { eventSubscription :: Prelude.Maybe EventSubscription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddSourceIdentifierToSubscriptionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventSubscription', 'addSourceIdentifierToSubscriptionResponse_eventSubscription' - Undocumented member.+--+-- 'httpStatus', 'addSourceIdentifierToSubscriptionResponse_httpStatus' - The response's http status code.+newAddSourceIdentifierToSubscriptionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ AddSourceIdentifierToSubscriptionResponse+newAddSourceIdentifierToSubscriptionResponse+ pHttpStatus_ =+ AddSourceIdentifierToSubscriptionResponse'+ { eventSubscription =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+addSourceIdentifierToSubscriptionResponse_eventSubscription :: Lens.Lens' AddSourceIdentifierToSubscriptionResponse (Prelude.Maybe EventSubscription)+addSourceIdentifierToSubscriptionResponse_eventSubscription = Lens.lens (\AddSourceIdentifierToSubscriptionResponse' {eventSubscription} -> eventSubscription) (\s@AddSourceIdentifierToSubscriptionResponse' {} a -> s {eventSubscription = a} :: AddSourceIdentifierToSubscriptionResponse)++-- | The response's http status code.+addSourceIdentifierToSubscriptionResponse_httpStatus :: Lens.Lens' AddSourceIdentifierToSubscriptionResponse Prelude.Int+addSourceIdentifierToSubscriptionResponse_httpStatus = Lens.lens (\AddSourceIdentifierToSubscriptionResponse' {httpStatus} -> httpStatus) (\s@AddSourceIdentifierToSubscriptionResponse' {} a -> s {httpStatus = a} :: AddSourceIdentifierToSubscriptionResponse)++instance+ Prelude.NFData+ AddSourceIdentifierToSubscriptionResponse+ where+ rnf AddSourceIdentifierToSubscriptionResponse' {..} =+ Prelude.rnf eventSubscription+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/AddTagsToResource.hs view
@@ -0,0 +1,146 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.AddTagsToResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds metadata tags to an Amazon DocumentDB resource. You can use these+-- tags with cost allocation reporting to track costs that are associated+-- with Amazon DocumentDB resources or in a @Condition@ statement in an+-- Identity and Access Management (IAM) policy for Amazon DocumentDB.+module Amazonka.DocumentDB.AddTagsToResource+ ( -- * Creating a Request+ AddTagsToResource (..),+ newAddTagsToResource,++ -- * Request Lenses+ addTagsToResource_resourceName,+ addTagsToResource_tags,++ -- * Destructuring the Response+ AddTagsToResourceResponse (..),+ newAddTagsToResourceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to AddTagsToResource.+--+-- /See:/ 'newAddTagsToResource' smart constructor.+data AddTagsToResource = AddTagsToResource'+ { -- | The Amazon DocumentDB resource that the tags are added to. This value is+ -- an Amazon Resource Name .+ resourceName :: Prelude.Text,+ -- | The tags to be assigned to the Amazon DocumentDB resource.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddTagsToResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceName', 'addTagsToResource_resourceName' - The Amazon DocumentDB resource that the tags are added to. This value is+-- an Amazon Resource Name .+--+-- 'tags', 'addTagsToResource_tags' - The tags to be assigned to the Amazon DocumentDB resource.+newAddTagsToResource ::+ -- | 'resourceName'+ Prelude.Text ->+ AddTagsToResource+newAddTagsToResource pResourceName_ =+ AddTagsToResource'+ { resourceName = pResourceName_,+ tags = Prelude.mempty+ }++-- | The Amazon DocumentDB resource that the tags are added to. This value is+-- an Amazon Resource Name .+addTagsToResource_resourceName :: Lens.Lens' AddTagsToResource Prelude.Text+addTagsToResource_resourceName = Lens.lens (\AddTagsToResource' {resourceName} -> resourceName) (\s@AddTagsToResource' {} a -> s {resourceName = a} :: AddTagsToResource)++-- | The tags to be assigned to the Amazon DocumentDB resource.+addTagsToResource_tags :: Lens.Lens' AddTagsToResource [Tag]+addTagsToResource_tags = Lens.lens (\AddTagsToResource' {tags} -> tags) (\s@AddTagsToResource' {} a -> s {tags = a} :: AddTagsToResource) Prelude.. Lens.coerced++instance Core.AWSRequest AddTagsToResource where+ type+ AWSResponse AddTagsToResource =+ AddTagsToResourceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull AddTagsToResourceResponse'++instance Prelude.Hashable AddTagsToResource where+ hashWithSalt _salt AddTagsToResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceName+ `Prelude.hashWithSalt` tags++instance Prelude.NFData AddTagsToResource where+ rnf AddTagsToResource' {..} =+ Prelude.rnf resourceName+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders AddTagsToResource where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath AddTagsToResource where+ toPath = Prelude.const "/"++instance Data.ToQuery AddTagsToResource where+ toQuery AddTagsToResource' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("AddTagsToResource" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "ResourceName" Data.=: resourceName,+ "Tags" Data.=: Data.toQueryList "Tag" tags+ ]++-- | /See:/ 'newAddTagsToResourceResponse' smart constructor.+data AddTagsToResourceResponse = AddTagsToResourceResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddTagsToResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newAddTagsToResourceResponse ::+ AddTagsToResourceResponse+newAddTagsToResourceResponse =+ AddTagsToResourceResponse'++instance Prelude.NFData AddTagsToResourceResponse where+ rnf _ = ()
+ gen/Amazonka/DocumentDB/ApplyPendingMaintenanceAction.hs view
@@ -0,0 +1,250 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.ApplyPendingMaintenanceAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Applies a pending maintenance action to a resource (for example, to an+-- Amazon DocumentDB instance).+module Amazonka.DocumentDB.ApplyPendingMaintenanceAction+ ( -- * Creating a Request+ ApplyPendingMaintenanceAction (..),+ newApplyPendingMaintenanceAction,++ -- * Request Lenses+ applyPendingMaintenanceAction_resourceIdentifier,+ applyPendingMaintenanceAction_applyAction,+ applyPendingMaintenanceAction_optInType,++ -- * Destructuring the Response+ ApplyPendingMaintenanceActionResponse (..),+ newApplyPendingMaintenanceActionResponse,++ -- * Response Lenses+ applyPendingMaintenanceActionResponse_resourcePendingMaintenanceActions,+ applyPendingMaintenanceActionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to ApplyPendingMaintenanceAction.+--+-- /See:/ 'newApplyPendingMaintenanceAction' smart constructor.+data ApplyPendingMaintenanceAction = ApplyPendingMaintenanceAction'+ { -- | The Amazon Resource Name (ARN) of the resource that the pending+ -- maintenance action applies to.+ resourceIdentifier :: Prelude.Text,+ -- | The pending maintenance action to apply to this resource.+ --+ -- Valid values: @system-update@, @db-upgrade@+ applyAction :: Prelude.Text,+ -- | A value that specifies the type of opt-in request or undoes an opt-in+ -- request. An opt-in request of type @immediate@ can\'t be undone.+ --+ -- Valid values:+ --+ -- - @immediate@ - Apply the maintenance action immediately.+ --+ -- - @next-maintenance@ - Apply the maintenance action during the next+ -- maintenance window for the resource.+ --+ -- - @undo-opt-in@ - Cancel any existing @next-maintenance@ opt-in+ -- requests.+ optInType :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplyPendingMaintenanceAction' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceIdentifier', 'applyPendingMaintenanceAction_resourceIdentifier' - The Amazon Resource Name (ARN) of the resource that the pending+-- maintenance action applies to.+--+-- 'applyAction', 'applyPendingMaintenanceAction_applyAction' - The pending maintenance action to apply to this resource.+--+-- Valid values: @system-update@, @db-upgrade@+--+-- 'optInType', 'applyPendingMaintenanceAction_optInType' - A value that specifies the type of opt-in request or undoes an opt-in+-- request. An opt-in request of type @immediate@ can\'t be undone.+--+-- Valid values:+--+-- - @immediate@ - Apply the maintenance action immediately.+--+-- - @next-maintenance@ - Apply the maintenance action during the next+-- maintenance window for the resource.+--+-- - @undo-opt-in@ - Cancel any existing @next-maintenance@ opt-in+-- requests.+newApplyPendingMaintenanceAction ::+ -- | 'resourceIdentifier'+ Prelude.Text ->+ -- | 'applyAction'+ Prelude.Text ->+ -- | 'optInType'+ Prelude.Text ->+ ApplyPendingMaintenanceAction+newApplyPendingMaintenanceAction+ pResourceIdentifier_+ pApplyAction_+ pOptInType_ =+ ApplyPendingMaintenanceAction'+ { resourceIdentifier =+ pResourceIdentifier_,+ applyAction = pApplyAction_,+ optInType = pOptInType_+ }++-- | The Amazon Resource Name (ARN) of the resource that the pending+-- maintenance action applies to.+applyPendingMaintenanceAction_resourceIdentifier :: Lens.Lens' ApplyPendingMaintenanceAction Prelude.Text+applyPendingMaintenanceAction_resourceIdentifier = Lens.lens (\ApplyPendingMaintenanceAction' {resourceIdentifier} -> resourceIdentifier) (\s@ApplyPendingMaintenanceAction' {} a -> s {resourceIdentifier = a} :: ApplyPendingMaintenanceAction)++-- | The pending maintenance action to apply to this resource.+--+-- Valid values: @system-update@, @db-upgrade@+applyPendingMaintenanceAction_applyAction :: Lens.Lens' ApplyPendingMaintenanceAction Prelude.Text+applyPendingMaintenanceAction_applyAction = Lens.lens (\ApplyPendingMaintenanceAction' {applyAction} -> applyAction) (\s@ApplyPendingMaintenanceAction' {} a -> s {applyAction = a} :: ApplyPendingMaintenanceAction)++-- | A value that specifies the type of opt-in request or undoes an opt-in+-- request. An opt-in request of type @immediate@ can\'t be undone.+--+-- Valid values:+--+-- - @immediate@ - Apply the maintenance action immediately.+--+-- - @next-maintenance@ - Apply the maintenance action during the next+-- maintenance window for the resource.+--+-- - @undo-opt-in@ - Cancel any existing @next-maintenance@ opt-in+-- requests.+applyPendingMaintenanceAction_optInType :: Lens.Lens' ApplyPendingMaintenanceAction Prelude.Text+applyPendingMaintenanceAction_optInType = Lens.lens (\ApplyPendingMaintenanceAction' {optInType} -> optInType) (\s@ApplyPendingMaintenanceAction' {} a -> s {optInType = a} :: ApplyPendingMaintenanceAction)++instance+ Core.AWSRequest+ ApplyPendingMaintenanceAction+ where+ type+ AWSResponse ApplyPendingMaintenanceAction =+ ApplyPendingMaintenanceActionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ApplyPendingMaintenanceActionResult"+ ( \s h x ->+ ApplyPendingMaintenanceActionResponse'+ Prelude.<$> (x Data..@? "ResourcePendingMaintenanceActions")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ApplyPendingMaintenanceAction+ where+ hashWithSalt _salt ApplyPendingMaintenanceAction' {..} =+ _salt+ `Prelude.hashWithSalt` resourceIdentifier+ `Prelude.hashWithSalt` applyAction+ `Prelude.hashWithSalt` optInType++instance Prelude.NFData ApplyPendingMaintenanceAction where+ rnf ApplyPendingMaintenanceAction' {..} =+ Prelude.rnf resourceIdentifier+ `Prelude.seq` Prelude.rnf applyAction+ `Prelude.seq` Prelude.rnf optInType++instance Data.ToHeaders ApplyPendingMaintenanceAction where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ApplyPendingMaintenanceAction where+ toPath = Prelude.const "/"++instance Data.ToQuery ApplyPendingMaintenanceAction where+ toQuery ApplyPendingMaintenanceAction' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "ApplyPendingMaintenanceAction" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "ResourceIdentifier" Data.=: resourceIdentifier,+ "ApplyAction" Data.=: applyAction,+ "OptInType" Data.=: optInType+ ]++-- | /See:/ 'newApplyPendingMaintenanceActionResponse' smart constructor.+data ApplyPendingMaintenanceActionResponse = ApplyPendingMaintenanceActionResponse'+ { resourcePendingMaintenanceActions :: Prelude.Maybe ResourcePendingMaintenanceActions,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplyPendingMaintenanceActionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourcePendingMaintenanceActions', 'applyPendingMaintenanceActionResponse_resourcePendingMaintenanceActions' - Undocumented member.+--+-- 'httpStatus', 'applyPendingMaintenanceActionResponse_httpStatus' - The response's http status code.+newApplyPendingMaintenanceActionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ApplyPendingMaintenanceActionResponse+newApplyPendingMaintenanceActionResponse pHttpStatus_ =+ ApplyPendingMaintenanceActionResponse'+ { resourcePendingMaintenanceActions =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+applyPendingMaintenanceActionResponse_resourcePendingMaintenanceActions :: Lens.Lens' ApplyPendingMaintenanceActionResponse (Prelude.Maybe ResourcePendingMaintenanceActions)+applyPendingMaintenanceActionResponse_resourcePendingMaintenanceActions = Lens.lens (\ApplyPendingMaintenanceActionResponse' {resourcePendingMaintenanceActions} -> resourcePendingMaintenanceActions) (\s@ApplyPendingMaintenanceActionResponse' {} a -> s {resourcePendingMaintenanceActions = a} :: ApplyPendingMaintenanceActionResponse)++-- | The response's http status code.+applyPendingMaintenanceActionResponse_httpStatus :: Lens.Lens' ApplyPendingMaintenanceActionResponse Prelude.Int+applyPendingMaintenanceActionResponse_httpStatus = Lens.lens (\ApplyPendingMaintenanceActionResponse' {httpStatus} -> httpStatus) (\s@ApplyPendingMaintenanceActionResponse' {} a -> s {httpStatus = a} :: ApplyPendingMaintenanceActionResponse)++instance+ Prelude.NFData+ ApplyPendingMaintenanceActionResponse+ where+ rnf ApplyPendingMaintenanceActionResponse' {..} =+ Prelude.rnf resourcePendingMaintenanceActions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/CopyDBClusterParameterGroup.hs view
@@ -0,0 +1,303 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.CopyDBClusterParameterGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Copies the specified cluster parameter group.+module Amazonka.DocumentDB.CopyDBClusterParameterGroup+ ( -- * Creating a Request+ CopyDBClusterParameterGroup (..),+ newCopyDBClusterParameterGroup,++ -- * Request Lenses+ copyDBClusterParameterGroup_tags,+ copyDBClusterParameterGroup_sourceDBClusterParameterGroupIdentifier,+ copyDBClusterParameterGroup_targetDBClusterParameterGroupIdentifier,+ copyDBClusterParameterGroup_targetDBClusterParameterGroupDescription,++ -- * Destructuring the Response+ CopyDBClusterParameterGroupResponse (..),+ newCopyDBClusterParameterGroupResponse,++ -- * Response Lenses+ copyDBClusterParameterGroupResponse_dbClusterParameterGroup,+ copyDBClusterParameterGroupResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to CopyDBClusterParameterGroup.+--+-- /See:/ 'newCopyDBClusterParameterGroup' smart constructor.+data CopyDBClusterParameterGroup = CopyDBClusterParameterGroup'+ { -- | The tags that are to be assigned to the parameter group.+ tags :: Prelude.Maybe [Tag],+ -- | The identifier or Amazon Resource Name (ARN) for the source cluster+ -- parameter group.+ --+ -- Constraints:+ --+ -- - Must specify a valid cluster parameter group.+ --+ -- - If the source cluster parameter group is in the same Amazon Web+ -- Services Region as the copy, specify a valid parameter group+ -- identifier; for example, @my-db-cluster-param-group@, or a valid+ -- ARN.+ --+ -- - If the source parameter group is in a different Amazon Web Services+ -- Region than the copy, specify a valid cluster parameter group ARN;+ -- for example,+ -- @arn:aws:rds:us-east-1:123456789012:sample-cluster:sample-parameter-group@.+ sourceDBClusterParameterGroupIdentifier :: Prelude.Text,+ -- | The identifier for the copied cluster parameter group.+ --+ -- Constraints:+ --+ -- - Cannot be null, empty, or blank.+ --+ -- - Must contain from 1 to 255 letters, numbers, or hyphens.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ --+ -- Example: @my-cluster-param-group1@+ targetDBClusterParameterGroupIdentifier :: Prelude.Text,+ -- | A description for the copied cluster parameter group.+ targetDBClusterParameterGroupDescription :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CopyDBClusterParameterGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'copyDBClusterParameterGroup_tags' - The tags that are to be assigned to the parameter group.+--+-- 'sourceDBClusterParameterGroupIdentifier', 'copyDBClusterParameterGroup_sourceDBClusterParameterGroupIdentifier' - The identifier or Amazon Resource Name (ARN) for the source cluster+-- parameter group.+--+-- Constraints:+--+-- - Must specify a valid cluster parameter group.+--+-- - If the source cluster parameter group is in the same Amazon Web+-- Services Region as the copy, specify a valid parameter group+-- identifier; for example, @my-db-cluster-param-group@, or a valid+-- ARN.+--+-- - If the source parameter group is in a different Amazon Web Services+-- Region than the copy, specify a valid cluster parameter group ARN;+-- for example,+-- @arn:aws:rds:us-east-1:123456789012:sample-cluster:sample-parameter-group@.+--+-- 'targetDBClusterParameterGroupIdentifier', 'copyDBClusterParameterGroup_targetDBClusterParameterGroupIdentifier' - The identifier for the copied cluster parameter group.+--+-- Constraints:+--+-- - Cannot be null, empty, or blank.+--+-- - Must contain from 1 to 255 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-cluster-param-group1@+--+-- 'targetDBClusterParameterGroupDescription', 'copyDBClusterParameterGroup_targetDBClusterParameterGroupDescription' - A description for the copied cluster parameter group.+newCopyDBClusterParameterGroup ::+ -- | 'sourceDBClusterParameterGroupIdentifier'+ Prelude.Text ->+ -- | 'targetDBClusterParameterGroupIdentifier'+ Prelude.Text ->+ -- | 'targetDBClusterParameterGroupDescription'+ Prelude.Text ->+ CopyDBClusterParameterGroup+newCopyDBClusterParameterGroup+ pSourceDBClusterParameterGroupIdentifier_+ pTargetDBClusterParameterGroupIdentifier_+ pTargetDBClusterParameterGroupDescription_ =+ CopyDBClusterParameterGroup'+ { tags =+ Prelude.Nothing,+ sourceDBClusterParameterGroupIdentifier =+ pSourceDBClusterParameterGroupIdentifier_,+ targetDBClusterParameterGroupIdentifier =+ pTargetDBClusterParameterGroupIdentifier_,+ targetDBClusterParameterGroupDescription =+ pTargetDBClusterParameterGroupDescription_+ }++-- | The tags that are to be assigned to the parameter group.+copyDBClusterParameterGroup_tags :: Lens.Lens' CopyDBClusterParameterGroup (Prelude.Maybe [Tag])+copyDBClusterParameterGroup_tags = Lens.lens (\CopyDBClusterParameterGroup' {tags} -> tags) (\s@CopyDBClusterParameterGroup' {} a -> s {tags = a} :: CopyDBClusterParameterGroup) Prelude.. Lens.mapping Lens.coerced++-- | The identifier or Amazon Resource Name (ARN) for the source cluster+-- parameter group.+--+-- Constraints:+--+-- - Must specify a valid cluster parameter group.+--+-- - If the source cluster parameter group is in the same Amazon Web+-- Services Region as the copy, specify a valid parameter group+-- identifier; for example, @my-db-cluster-param-group@, or a valid+-- ARN.+--+-- - If the source parameter group is in a different Amazon Web Services+-- Region than the copy, specify a valid cluster parameter group ARN;+-- for example,+-- @arn:aws:rds:us-east-1:123456789012:sample-cluster:sample-parameter-group@.+copyDBClusterParameterGroup_sourceDBClusterParameterGroupIdentifier :: Lens.Lens' CopyDBClusterParameterGroup Prelude.Text+copyDBClusterParameterGroup_sourceDBClusterParameterGroupIdentifier = Lens.lens (\CopyDBClusterParameterGroup' {sourceDBClusterParameterGroupIdentifier} -> sourceDBClusterParameterGroupIdentifier) (\s@CopyDBClusterParameterGroup' {} a -> s {sourceDBClusterParameterGroupIdentifier = a} :: CopyDBClusterParameterGroup)++-- | The identifier for the copied cluster parameter group.+--+-- Constraints:+--+-- - Cannot be null, empty, or blank.+--+-- - Must contain from 1 to 255 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-cluster-param-group1@+copyDBClusterParameterGroup_targetDBClusterParameterGroupIdentifier :: Lens.Lens' CopyDBClusterParameterGroup Prelude.Text+copyDBClusterParameterGroup_targetDBClusterParameterGroupIdentifier = Lens.lens (\CopyDBClusterParameterGroup' {targetDBClusterParameterGroupIdentifier} -> targetDBClusterParameterGroupIdentifier) (\s@CopyDBClusterParameterGroup' {} a -> s {targetDBClusterParameterGroupIdentifier = a} :: CopyDBClusterParameterGroup)++-- | A description for the copied cluster parameter group.+copyDBClusterParameterGroup_targetDBClusterParameterGroupDescription :: Lens.Lens' CopyDBClusterParameterGroup Prelude.Text+copyDBClusterParameterGroup_targetDBClusterParameterGroupDescription = Lens.lens (\CopyDBClusterParameterGroup' {targetDBClusterParameterGroupDescription} -> targetDBClusterParameterGroupDescription) (\s@CopyDBClusterParameterGroup' {} a -> s {targetDBClusterParameterGroupDescription = a} :: CopyDBClusterParameterGroup)++instance Core.AWSRequest CopyDBClusterParameterGroup where+ type+ AWSResponse CopyDBClusterParameterGroup =+ CopyDBClusterParameterGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CopyDBClusterParameterGroupResult"+ ( \s h x ->+ CopyDBClusterParameterGroupResponse'+ Prelude.<$> (x Data..@? "DBClusterParameterGroup")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CopyDBClusterParameterGroup where+ hashWithSalt _salt CopyDBClusterParameterGroup' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` sourceDBClusterParameterGroupIdentifier+ `Prelude.hashWithSalt` targetDBClusterParameterGroupIdentifier+ `Prelude.hashWithSalt` targetDBClusterParameterGroupDescription++instance Prelude.NFData CopyDBClusterParameterGroup where+ rnf CopyDBClusterParameterGroup' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf sourceDBClusterParameterGroupIdentifier+ `Prelude.seq` Prelude.rnf targetDBClusterParameterGroupIdentifier+ `Prelude.seq` Prelude.rnf targetDBClusterParameterGroupDescription++instance Data.ToHeaders CopyDBClusterParameterGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CopyDBClusterParameterGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery CopyDBClusterParameterGroup where+ toQuery CopyDBClusterParameterGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "CopyDBClusterParameterGroup" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "Tag" Prelude.<$> tags),+ "SourceDBClusterParameterGroupIdentifier"+ Data.=: sourceDBClusterParameterGroupIdentifier,+ "TargetDBClusterParameterGroupIdentifier"+ Data.=: targetDBClusterParameterGroupIdentifier,+ "TargetDBClusterParameterGroupDescription"+ Data.=: targetDBClusterParameterGroupDescription+ ]++-- | /See:/ 'newCopyDBClusterParameterGroupResponse' smart constructor.+data CopyDBClusterParameterGroupResponse = CopyDBClusterParameterGroupResponse'+ { dbClusterParameterGroup :: Prelude.Maybe DBClusterParameterGroup,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CopyDBClusterParameterGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterParameterGroup', 'copyDBClusterParameterGroupResponse_dbClusterParameterGroup' - Undocumented member.+--+-- 'httpStatus', 'copyDBClusterParameterGroupResponse_httpStatus' - The response's http status code.+newCopyDBClusterParameterGroupResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CopyDBClusterParameterGroupResponse+newCopyDBClusterParameterGroupResponse pHttpStatus_ =+ CopyDBClusterParameterGroupResponse'+ { dbClusterParameterGroup =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+copyDBClusterParameterGroupResponse_dbClusterParameterGroup :: Lens.Lens' CopyDBClusterParameterGroupResponse (Prelude.Maybe DBClusterParameterGroup)+copyDBClusterParameterGroupResponse_dbClusterParameterGroup = Lens.lens (\CopyDBClusterParameterGroupResponse' {dbClusterParameterGroup} -> dbClusterParameterGroup) (\s@CopyDBClusterParameterGroupResponse' {} a -> s {dbClusterParameterGroup = a} :: CopyDBClusterParameterGroupResponse)++-- | The response's http status code.+copyDBClusterParameterGroupResponse_httpStatus :: Lens.Lens' CopyDBClusterParameterGroupResponse Prelude.Int+copyDBClusterParameterGroupResponse_httpStatus = Lens.lens (\CopyDBClusterParameterGroupResponse' {httpStatus} -> httpStatus) (\s@CopyDBClusterParameterGroupResponse' {} a -> s {httpStatus = a} :: CopyDBClusterParameterGroupResponse)++instance+ Prelude.NFData+ CopyDBClusterParameterGroupResponse+ where+ rnf CopyDBClusterParameterGroupResponse' {..} =+ Prelude.rnf dbClusterParameterGroup+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/CopyDBClusterSnapshot.hs view
@@ -0,0 +1,484 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.CopyDBClusterSnapshot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Copies a snapshot of a cluster.+--+-- To copy a cluster snapshot from a shared manual cluster snapshot,+-- @SourceDBClusterSnapshotIdentifier@ must be the Amazon Resource Name+-- (ARN) of the shared cluster snapshot. You can only copy a shared DB+-- cluster snapshot, whether encrypted or not, in the same Amazon Web+-- Services Region.+--+-- To cancel the copy operation after it is in progress, delete the target+-- cluster snapshot identified by @TargetDBClusterSnapshotIdentifier@ while+-- that cluster snapshot is in the /copying/ status.+module Amazonka.DocumentDB.CopyDBClusterSnapshot+ ( -- * Creating a Request+ CopyDBClusterSnapshot (..),+ newCopyDBClusterSnapshot,++ -- * Request Lenses+ copyDBClusterSnapshot_copyTags,+ copyDBClusterSnapshot_kmsKeyId,+ copyDBClusterSnapshot_preSignedUrl,+ copyDBClusterSnapshot_tags,+ copyDBClusterSnapshot_sourceDBClusterSnapshotIdentifier,+ copyDBClusterSnapshot_targetDBClusterSnapshotIdentifier,++ -- * Destructuring the Response+ CopyDBClusterSnapshotResponse (..),+ newCopyDBClusterSnapshotResponse,++ -- * Response Lenses+ copyDBClusterSnapshotResponse_dbClusterSnapshot,+ copyDBClusterSnapshotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to CopyDBClusterSnapshot.+--+-- /See:/ 'newCopyDBClusterSnapshot' smart constructor.+data CopyDBClusterSnapshot = CopyDBClusterSnapshot'+ { -- | Set to @true@ to copy all tags from the source cluster snapshot to the+ -- target cluster snapshot, and otherwise @false@. The default is @false@.+ copyTags :: Prelude.Maybe Prelude.Bool,+ -- | The KMS key ID for an encrypted cluster snapshot. The KMS key ID is the+ -- Amazon Resource Name (ARN), KMS key identifier, or the KMS key alias for+ -- the KMS encryption key.+ --+ -- If you copy an encrypted cluster snapshot from your Amazon Web Services+ -- account, you can specify a value for @KmsKeyId@ to encrypt the copy with+ -- a new KMS encryption key. If you don\'t specify a value for @KmsKeyId@,+ -- then the copy of the cluster snapshot is encrypted with the same KMS key+ -- as the source cluster snapshot.+ --+ -- If you copy an encrypted cluster snapshot that is shared from another+ -- Amazon Web Services account, then you must specify a value for+ -- @KmsKeyId@.+ --+ -- To copy an encrypted cluster snapshot to another Amazon Web Services+ -- Region, set @KmsKeyId@ to the KMS key ID that you want to use to encrypt+ -- the copy of the cluster snapshot in the destination Region. KMS+ -- encryption keys are specific to the Amazon Web Services Region that they+ -- are created in, and you can\'t use encryption keys from one Amazon Web+ -- Services Region in another Amazon Web Services Region.+ --+ -- If you copy an unencrypted cluster snapshot and specify a value for the+ -- @KmsKeyId@ parameter, an error is returned.+ kmsKeyId :: Prelude.Maybe Prelude.Text,+ -- | The URL that contains a Signature Version 4 signed request for+ -- the@CopyDBClusterSnapshot@ API action in the Amazon Web Services Region+ -- that contains the source cluster snapshot to copy. You must use the+ -- @PreSignedUrl@ parameter when copying a cluster snapshot from another+ -- Amazon Web Services Region.+ --+ -- If you are using an Amazon Web Services SDK tool or the CLI, you can+ -- specify @SourceRegion@ (or @--source-region@ for the CLI) instead of+ -- specifying @PreSignedUrl@ manually. Specifying @SourceRegion@+ -- autogenerates a pre-signed URL that is a valid request for the operation+ -- that can be executed in the source Amazon Web Services Region.+ --+ -- The presigned URL must be a valid request for the+ -- @CopyDBClusterSnapshot@ API action that can be executed in the source+ -- Amazon Web Services Region that contains the cluster snapshot to be+ -- copied. The presigned URL request must contain the following parameter+ -- values:+ --+ -- - @SourceRegion@ - The ID of the region that contains the snapshot to+ -- be copied.+ --+ -- - @SourceDBClusterSnapshotIdentifier@ - The identifier for the the+ -- encrypted cluster snapshot to be copied. This identifier must be in+ -- the Amazon Resource Name (ARN) format for the source Amazon Web+ -- Services Region. For example, if you are copying an encrypted+ -- cluster snapshot from the us-east-1 Amazon Web Services Region, then+ -- your @SourceDBClusterSnapshotIdentifier@ looks something like the+ -- following:+ -- @arn:aws:rds:us-east-1:12345678012:sample-cluster:sample-cluster-snapshot@.+ --+ -- - @TargetDBClusterSnapshotIdentifier@ - The identifier for the new+ -- cluster snapshot to be created. This parameter isn\'t case+ -- sensitive.+ preSignedUrl :: Prelude.Maybe Prelude.Text,+ -- | The tags to be assigned to the cluster snapshot.+ tags :: Prelude.Maybe [Tag],+ -- | The identifier of the cluster snapshot to copy. This parameter is not+ -- case sensitive.+ --+ -- Constraints:+ --+ -- - Must specify a valid system snapshot in the /available/ state.+ --+ -- - If the source snapshot is in the same Amazon Web Services Region as+ -- the copy, specify a valid snapshot identifier.+ --+ -- - If the source snapshot is in a different Amazon Web Services Region+ -- than the copy, specify a valid cluster snapshot ARN.+ --+ -- Example: @my-cluster-snapshot1@+ sourceDBClusterSnapshotIdentifier :: Prelude.Text,+ -- | The identifier of the new cluster snapshot to create from the source+ -- cluster snapshot. This parameter is not case sensitive.+ --+ -- Constraints:+ --+ -- - Must contain from 1 to 63 letters, numbers, or hyphens.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ --+ -- Example: @my-cluster-snapshot2@+ targetDBClusterSnapshotIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CopyDBClusterSnapshot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'copyTags', 'copyDBClusterSnapshot_copyTags' - Set to @true@ to copy all tags from the source cluster snapshot to the+-- target cluster snapshot, and otherwise @false@. The default is @false@.+--+-- 'kmsKeyId', 'copyDBClusterSnapshot_kmsKeyId' - The KMS key ID for an encrypted cluster snapshot. The KMS key ID is the+-- Amazon Resource Name (ARN), KMS key identifier, or the KMS key alias for+-- the KMS encryption key.+--+-- If you copy an encrypted cluster snapshot from your Amazon Web Services+-- account, you can specify a value for @KmsKeyId@ to encrypt the copy with+-- a new KMS encryption key. If you don\'t specify a value for @KmsKeyId@,+-- then the copy of the cluster snapshot is encrypted with the same KMS key+-- as the source cluster snapshot.+--+-- If you copy an encrypted cluster snapshot that is shared from another+-- Amazon Web Services account, then you must specify a value for+-- @KmsKeyId@.+--+-- To copy an encrypted cluster snapshot to another Amazon Web Services+-- Region, set @KmsKeyId@ to the KMS key ID that you want to use to encrypt+-- the copy of the cluster snapshot in the destination Region. KMS+-- encryption keys are specific to the Amazon Web Services Region that they+-- are created in, and you can\'t use encryption keys from one Amazon Web+-- Services Region in another Amazon Web Services Region.+--+-- If you copy an unencrypted cluster snapshot and specify a value for the+-- @KmsKeyId@ parameter, an error is returned.+--+-- 'preSignedUrl', 'copyDBClusterSnapshot_preSignedUrl' - The URL that contains a Signature Version 4 signed request for+-- the@CopyDBClusterSnapshot@ API action in the Amazon Web Services Region+-- that contains the source cluster snapshot to copy. You must use the+-- @PreSignedUrl@ parameter when copying a cluster snapshot from another+-- Amazon Web Services Region.+--+-- If you are using an Amazon Web Services SDK tool or the CLI, you can+-- specify @SourceRegion@ (or @--source-region@ for the CLI) instead of+-- specifying @PreSignedUrl@ manually. Specifying @SourceRegion@+-- autogenerates a pre-signed URL that is a valid request for the operation+-- that can be executed in the source Amazon Web Services Region.+--+-- The presigned URL must be a valid request for the+-- @CopyDBClusterSnapshot@ API action that can be executed in the source+-- Amazon Web Services Region that contains the cluster snapshot to be+-- copied. The presigned URL request must contain the following parameter+-- values:+--+-- - @SourceRegion@ - The ID of the region that contains the snapshot to+-- be copied.+--+-- - @SourceDBClusterSnapshotIdentifier@ - The identifier for the the+-- encrypted cluster snapshot to be copied. This identifier must be in+-- the Amazon Resource Name (ARN) format for the source Amazon Web+-- Services Region. For example, if you are copying an encrypted+-- cluster snapshot from the us-east-1 Amazon Web Services Region, then+-- your @SourceDBClusterSnapshotIdentifier@ looks something like the+-- following:+-- @arn:aws:rds:us-east-1:12345678012:sample-cluster:sample-cluster-snapshot@.+--+-- - @TargetDBClusterSnapshotIdentifier@ - The identifier for the new+-- cluster snapshot to be created. This parameter isn\'t case+-- sensitive.+--+-- 'tags', 'copyDBClusterSnapshot_tags' - The tags to be assigned to the cluster snapshot.+--+-- 'sourceDBClusterSnapshotIdentifier', 'copyDBClusterSnapshot_sourceDBClusterSnapshotIdentifier' - The identifier of the cluster snapshot to copy. This parameter is not+-- case sensitive.+--+-- Constraints:+--+-- - Must specify a valid system snapshot in the /available/ state.+--+-- - If the source snapshot is in the same Amazon Web Services Region as+-- the copy, specify a valid snapshot identifier.+--+-- - If the source snapshot is in a different Amazon Web Services Region+-- than the copy, specify a valid cluster snapshot ARN.+--+-- Example: @my-cluster-snapshot1@+--+-- 'targetDBClusterSnapshotIdentifier', 'copyDBClusterSnapshot_targetDBClusterSnapshotIdentifier' - The identifier of the new cluster snapshot to create from the source+-- cluster snapshot. This parameter is not case sensitive.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-cluster-snapshot2@+newCopyDBClusterSnapshot ::+ -- | 'sourceDBClusterSnapshotIdentifier'+ Prelude.Text ->+ -- | 'targetDBClusterSnapshotIdentifier'+ Prelude.Text ->+ CopyDBClusterSnapshot+newCopyDBClusterSnapshot+ pSourceDBClusterSnapshotIdentifier_+ pTargetDBClusterSnapshotIdentifier_ =+ CopyDBClusterSnapshot'+ { copyTags = Prelude.Nothing,+ kmsKeyId = Prelude.Nothing,+ preSignedUrl = Prelude.Nothing,+ tags = Prelude.Nothing,+ sourceDBClusterSnapshotIdentifier =+ pSourceDBClusterSnapshotIdentifier_,+ targetDBClusterSnapshotIdentifier =+ pTargetDBClusterSnapshotIdentifier_+ }++-- | Set to @true@ to copy all tags from the source cluster snapshot to the+-- target cluster snapshot, and otherwise @false@. The default is @false@.+copyDBClusterSnapshot_copyTags :: Lens.Lens' CopyDBClusterSnapshot (Prelude.Maybe Prelude.Bool)+copyDBClusterSnapshot_copyTags = Lens.lens (\CopyDBClusterSnapshot' {copyTags} -> copyTags) (\s@CopyDBClusterSnapshot' {} a -> s {copyTags = a} :: CopyDBClusterSnapshot)++-- | The KMS key ID for an encrypted cluster snapshot. The KMS key ID is the+-- Amazon Resource Name (ARN), KMS key identifier, or the KMS key alias for+-- the KMS encryption key.+--+-- If you copy an encrypted cluster snapshot from your Amazon Web Services+-- account, you can specify a value for @KmsKeyId@ to encrypt the copy with+-- a new KMS encryption key. If you don\'t specify a value for @KmsKeyId@,+-- then the copy of the cluster snapshot is encrypted with the same KMS key+-- as the source cluster snapshot.+--+-- If you copy an encrypted cluster snapshot that is shared from another+-- Amazon Web Services account, then you must specify a value for+-- @KmsKeyId@.+--+-- To copy an encrypted cluster snapshot to another Amazon Web Services+-- Region, set @KmsKeyId@ to the KMS key ID that you want to use to encrypt+-- the copy of the cluster snapshot in the destination Region. KMS+-- encryption keys are specific to the Amazon Web Services Region that they+-- are created in, and you can\'t use encryption keys from one Amazon Web+-- Services Region in another Amazon Web Services Region.+--+-- If you copy an unencrypted cluster snapshot and specify a value for the+-- @KmsKeyId@ parameter, an error is returned.+copyDBClusterSnapshot_kmsKeyId :: Lens.Lens' CopyDBClusterSnapshot (Prelude.Maybe Prelude.Text)+copyDBClusterSnapshot_kmsKeyId = Lens.lens (\CopyDBClusterSnapshot' {kmsKeyId} -> kmsKeyId) (\s@CopyDBClusterSnapshot' {} a -> s {kmsKeyId = a} :: CopyDBClusterSnapshot)++-- | The URL that contains a Signature Version 4 signed request for+-- the@CopyDBClusterSnapshot@ API action in the Amazon Web Services Region+-- that contains the source cluster snapshot to copy. You must use the+-- @PreSignedUrl@ parameter when copying a cluster snapshot from another+-- Amazon Web Services Region.+--+-- If you are using an Amazon Web Services SDK tool or the CLI, you can+-- specify @SourceRegion@ (or @--source-region@ for the CLI) instead of+-- specifying @PreSignedUrl@ manually. Specifying @SourceRegion@+-- autogenerates a pre-signed URL that is a valid request for the operation+-- that can be executed in the source Amazon Web Services Region.+--+-- The presigned URL must be a valid request for the+-- @CopyDBClusterSnapshot@ API action that can be executed in the source+-- Amazon Web Services Region that contains the cluster snapshot to be+-- copied. The presigned URL request must contain the following parameter+-- values:+--+-- - @SourceRegion@ - The ID of the region that contains the snapshot to+-- be copied.+--+-- - @SourceDBClusterSnapshotIdentifier@ - The identifier for the the+-- encrypted cluster snapshot to be copied. This identifier must be in+-- the Amazon Resource Name (ARN) format for the source Amazon Web+-- Services Region. For example, if you are copying an encrypted+-- cluster snapshot from the us-east-1 Amazon Web Services Region, then+-- your @SourceDBClusterSnapshotIdentifier@ looks something like the+-- following:+-- @arn:aws:rds:us-east-1:12345678012:sample-cluster:sample-cluster-snapshot@.+--+-- - @TargetDBClusterSnapshotIdentifier@ - The identifier for the new+-- cluster snapshot to be created. This parameter isn\'t case+-- sensitive.+copyDBClusterSnapshot_preSignedUrl :: Lens.Lens' CopyDBClusterSnapshot (Prelude.Maybe Prelude.Text)+copyDBClusterSnapshot_preSignedUrl = Lens.lens (\CopyDBClusterSnapshot' {preSignedUrl} -> preSignedUrl) (\s@CopyDBClusterSnapshot' {} a -> s {preSignedUrl = a} :: CopyDBClusterSnapshot)++-- | The tags to be assigned to the cluster snapshot.+copyDBClusterSnapshot_tags :: Lens.Lens' CopyDBClusterSnapshot (Prelude.Maybe [Tag])+copyDBClusterSnapshot_tags = Lens.lens (\CopyDBClusterSnapshot' {tags} -> tags) (\s@CopyDBClusterSnapshot' {} a -> s {tags = a} :: CopyDBClusterSnapshot) Prelude.. Lens.mapping Lens.coerced++-- | The identifier of the cluster snapshot to copy. This parameter is not+-- case sensitive.+--+-- Constraints:+--+-- - Must specify a valid system snapshot in the /available/ state.+--+-- - If the source snapshot is in the same Amazon Web Services Region as+-- the copy, specify a valid snapshot identifier.+--+-- - If the source snapshot is in a different Amazon Web Services Region+-- than the copy, specify a valid cluster snapshot ARN.+--+-- Example: @my-cluster-snapshot1@+copyDBClusterSnapshot_sourceDBClusterSnapshotIdentifier :: Lens.Lens' CopyDBClusterSnapshot Prelude.Text+copyDBClusterSnapshot_sourceDBClusterSnapshotIdentifier = Lens.lens (\CopyDBClusterSnapshot' {sourceDBClusterSnapshotIdentifier} -> sourceDBClusterSnapshotIdentifier) (\s@CopyDBClusterSnapshot' {} a -> s {sourceDBClusterSnapshotIdentifier = a} :: CopyDBClusterSnapshot)++-- | The identifier of the new cluster snapshot to create from the source+-- cluster snapshot. This parameter is not case sensitive.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-cluster-snapshot2@+copyDBClusterSnapshot_targetDBClusterSnapshotIdentifier :: Lens.Lens' CopyDBClusterSnapshot Prelude.Text+copyDBClusterSnapshot_targetDBClusterSnapshotIdentifier = Lens.lens (\CopyDBClusterSnapshot' {targetDBClusterSnapshotIdentifier} -> targetDBClusterSnapshotIdentifier) (\s@CopyDBClusterSnapshot' {} a -> s {targetDBClusterSnapshotIdentifier = a} :: CopyDBClusterSnapshot)++instance Core.AWSRequest CopyDBClusterSnapshot where+ type+ AWSResponse CopyDBClusterSnapshot =+ CopyDBClusterSnapshotResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CopyDBClusterSnapshotResult"+ ( \s h x ->+ CopyDBClusterSnapshotResponse'+ Prelude.<$> (x Data..@? "DBClusterSnapshot")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CopyDBClusterSnapshot where+ hashWithSalt _salt CopyDBClusterSnapshot' {..} =+ _salt+ `Prelude.hashWithSalt` copyTags+ `Prelude.hashWithSalt` kmsKeyId+ `Prelude.hashWithSalt` preSignedUrl+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` sourceDBClusterSnapshotIdentifier+ `Prelude.hashWithSalt` targetDBClusterSnapshotIdentifier++instance Prelude.NFData CopyDBClusterSnapshot where+ rnf CopyDBClusterSnapshot' {..} =+ Prelude.rnf copyTags+ `Prelude.seq` Prelude.rnf kmsKeyId+ `Prelude.seq` Prelude.rnf preSignedUrl+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf sourceDBClusterSnapshotIdentifier+ `Prelude.seq` Prelude.rnf targetDBClusterSnapshotIdentifier++instance Data.ToHeaders CopyDBClusterSnapshot where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CopyDBClusterSnapshot where+ toPath = Prelude.const "/"++instance Data.ToQuery CopyDBClusterSnapshot where+ toQuery CopyDBClusterSnapshot' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CopyDBClusterSnapshot" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "CopyTags" Data.=: copyTags,+ "KmsKeyId" Data.=: kmsKeyId,+ "PreSignedUrl" Data.=: preSignedUrl,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "Tag" Prelude.<$> tags),+ "SourceDBClusterSnapshotIdentifier"+ Data.=: sourceDBClusterSnapshotIdentifier,+ "TargetDBClusterSnapshotIdentifier"+ Data.=: targetDBClusterSnapshotIdentifier+ ]++-- | /See:/ 'newCopyDBClusterSnapshotResponse' smart constructor.+data CopyDBClusterSnapshotResponse = CopyDBClusterSnapshotResponse'+ { dbClusterSnapshot :: Prelude.Maybe DBClusterSnapshot,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CopyDBClusterSnapshotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterSnapshot', 'copyDBClusterSnapshotResponse_dbClusterSnapshot' - Undocumented member.+--+-- 'httpStatus', 'copyDBClusterSnapshotResponse_httpStatus' - The response's http status code.+newCopyDBClusterSnapshotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CopyDBClusterSnapshotResponse+newCopyDBClusterSnapshotResponse pHttpStatus_ =+ CopyDBClusterSnapshotResponse'+ { dbClusterSnapshot =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+copyDBClusterSnapshotResponse_dbClusterSnapshot :: Lens.Lens' CopyDBClusterSnapshotResponse (Prelude.Maybe DBClusterSnapshot)+copyDBClusterSnapshotResponse_dbClusterSnapshot = Lens.lens (\CopyDBClusterSnapshotResponse' {dbClusterSnapshot} -> dbClusterSnapshot) (\s@CopyDBClusterSnapshotResponse' {} a -> s {dbClusterSnapshot = a} :: CopyDBClusterSnapshotResponse)++-- | The response's http status code.+copyDBClusterSnapshotResponse_httpStatus :: Lens.Lens' CopyDBClusterSnapshotResponse Prelude.Int+copyDBClusterSnapshotResponse_httpStatus = Lens.lens (\CopyDBClusterSnapshotResponse' {httpStatus} -> httpStatus) (\s@CopyDBClusterSnapshotResponse' {} a -> s {httpStatus = a} :: CopyDBClusterSnapshotResponse)++instance Prelude.NFData CopyDBClusterSnapshotResponse where+ rnf CopyDBClusterSnapshotResponse' {..} =+ Prelude.rnf dbClusterSnapshot+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/CreateDBCluster.hs view
@@ -0,0 +1,701 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.CreateDBCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new Amazon DocumentDB cluster.+module Amazonka.DocumentDB.CreateDBCluster+ ( -- * Creating a Request+ CreateDBCluster (..),+ newCreateDBCluster,++ -- * Request Lenses+ createDBCluster_availabilityZones,+ createDBCluster_backupRetentionPeriod,+ createDBCluster_dbClusterParameterGroupName,+ createDBCluster_dbSubnetGroupName,+ createDBCluster_deletionProtection,+ createDBCluster_enableCloudwatchLogsExports,+ createDBCluster_engineVersion,+ createDBCluster_globalClusterIdentifier,+ createDBCluster_kmsKeyId,+ createDBCluster_masterUserPassword,+ createDBCluster_masterUsername,+ createDBCluster_port,+ createDBCluster_preSignedUrl,+ createDBCluster_preferredBackupWindow,+ createDBCluster_preferredMaintenanceWindow,+ createDBCluster_storageEncrypted,+ createDBCluster_tags,+ createDBCluster_vpcSecurityGroupIds,+ createDBCluster_dbClusterIdentifier,+ createDBCluster_engine,++ -- * Destructuring the Response+ CreateDBClusterResponse (..),+ newCreateDBClusterResponse,++ -- * Response Lenses+ createDBClusterResponse_dbCluster,+ createDBClusterResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to CreateDBCluster.+--+-- /See:/ 'newCreateDBCluster' smart constructor.+data CreateDBCluster = CreateDBCluster'+ { -- | A list of Amazon EC2 Availability Zones that instances in the cluster+ -- can be created in.+ availabilityZones :: Prelude.Maybe [Prelude.Text],+ -- | The number of days for which automated backups are retained. You must+ -- specify a minimum value of 1.+ --+ -- Default: 1+ --+ -- Constraints:+ --+ -- - Must be a value from 1 to 35.+ backupRetentionPeriod :: Prelude.Maybe Prelude.Int,+ -- | The name of the cluster parameter group to associate with this cluster.+ dbClusterParameterGroupName :: Prelude.Maybe Prelude.Text,+ -- | A subnet group to associate with this cluster.+ --+ -- Constraints: Must match the name of an existing @DBSubnetGroup@. Must+ -- not be default.+ --+ -- Example: @mySubnetgroup@+ dbSubnetGroupName :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether this cluster can be deleted. If @DeletionProtection@+ -- is enabled, the cluster cannot be deleted unless it is modified and+ -- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+ -- from being accidentally deleted.+ deletionProtection :: Prelude.Maybe Prelude.Bool,+ -- | A list of log types that need to be enabled for exporting to Amazon+ -- CloudWatch Logs. You can enable audit logs or profiler logs. For more+ -- information, see+ -- <https://docs.aws.amazon.com/documentdb/latest/developerguide/event-auditing.html Auditing Amazon DocumentDB Events>+ -- and+ -- <https://docs.aws.amazon.com/documentdb/latest/developerguide/profiling.html Profiling Amazon DocumentDB Operations>.+ enableCloudwatchLogsExports :: Prelude.Maybe [Prelude.Text],+ -- | The version number of the database engine to use. The @--engine-version@+ -- will default to the latest major engine version. For production+ -- workloads, we recommend explicitly declaring this parameter with the+ -- intended major engine version.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | The cluster identifier of the new global cluster.+ globalClusterIdentifier :: Prelude.Maybe Prelude.Text,+ -- | The KMS key identifier for an encrypted cluster.+ --+ -- The KMS key identifier is the Amazon Resource Name (ARN) for the KMS+ -- encryption key. If you are creating a cluster using the same Amazon Web+ -- Services account that owns the KMS encryption key that is used to+ -- encrypt the new cluster, you can use the KMS key alias instead of the+ -- ARN for the KMS encryption key.+ --+ -- If an encryption key is not specified in @KmsKeyId@:+ --+ -- - If the @StorageEncrypted@ parameter is @true@, Amazon DocumentDB+ -- uses your default encryption key.+ --+ -- KMS creates the default encryption key for your Amazon Web Services+ -- account. Your Amazon Web Services account has a different default+ -- encryption key for each Amazon Web Services Regions.+ kmsKeyId :: Prelude.Maybe Prelude.Text,+ -- | The password for the master database user. This password can contain any+ -- printable ASCII character except forward slash (\/), double quote (\"),+ -- or the \"at\" symbol (\@).+ --+ -- Constraints: Must contain from 8 to 100 characters.+ masterUserPassword :: Prelude.Maybe Prelude.Text,+ -- | The name of the master user for the cluster.+ --+ -- Constraints:+ --+ -- - Must be from 1 to 63 letters or numbers.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot be a reserved word for the chosen database engine.+ masterUsername :: Prelude.Maybe Prelude.Text,+ -- | The port number on which the instances in the cluster accept+ -- connections.+ port :: Prelude.Maybe Prelude.Int,+ -- | Not currently supported.+ preSignedUrl :: Prelude.Maybe Prelude.Text,+ -- | The daily time range during which automated backups are created if+ -- automated backups are enabled using the @BackupRetentionPeriod@+ -- parameter.+ --+ -- The default is a 30-minute window selected at random from an 8-hour+ -- block of time for each Amazon Web Services Region.+ --+ -- Constraints:+ --+ -- - Must be in the format @hh24:mi-hh24:mi@.+ --+ -- - Must be in Universal Coordinated Time (UTC).+ --+ -- - Must not conflict with the preferred maintenance window.+ --+ -- - Must be at least 30 minutes.+ preferredBackupWindow :: Prelude.Maybe Prelude.Text,+ -- | The weekly time range during which system maintenance can occur, in+ -- Universal Coordinated Time (UTC).+ --+ -- Format: @ddd:hh24:mi-ddd:hh24:mi@+ --+ -- The default is a 30-minute window selected at random from an 8-hour+ -- block of time for each Amazon Web Services Region, occurring on a random+ -- day of the week.+ --+ -- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+ --+ -- Constraints: Minimum 30-minute window.+ preferredMaintenanceWindow :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether the cluster is encrypted.+ storageEncrypted :: Prelude.Maybe Prelude.Bool,+ -- | The tags to be assigned to the cluster.+ tags :: Prelude.Maybe [Tag],+ -- | A list of EC2 VPC security groups to associate with this cluster.+ vpcSecurityGroupIds :: Prelude.Maybe [Prelude.Text],+ -- | The cluster identifier. This parameter is stored as a lowercase string.+ --+ -- Constraints:+ --+ -- - Must contain from 1 to 63 letters, numbers, or hyphens.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ --+ -- Example: @my-cluster@+ dbClusterIdentifier :: Prelude.Text,+ -- | The name of the database engine to be used for this cluster.+ --+ -- Valid values: @docdb@+ engine :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDBCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'availabilityZones', 'createDBCluster_availabilityZones' - A list of Amazon EC2 Availability Zones that instances in the cluster+-- can be created in.+--+-- 'backupRetentionPeriod', 'createDBCluster_backupRetentionPeriod' - The number of days for which automated backups are retained. You must+-- specify a minimum value of 1.+--+-- Default: 1+--+-- Constraints:+--+-- - Must be a value from 1 to 35.+--+-- 'dbClusterParameterGroupName', 'createDBCluster_dbClusterParameterGroupName' - The name of the cluster parameter group to associate with this cluster.+--+-- 'dbSubnetGroupName', 'createDBCluster_dbSubnetGroupName' - A subnet group to associate with this cluster.+--+-- Constraints: Must match the name of an existing @DBSubnetGroup@. Must+-- not be default.+--+-- Example: @mySubnetgroup@+--+-- 'deletionProtection', 'createDBCluster_deletionProtection' - Specifies whether this cluster can be deleted. If @DeletionProtection@+-- is enabled, the cluster cannot be deleted unless it is modified and+-- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+-- from being accidentally deleted.+--+-- 'enableCloudwatchLogsExports', 'createDBCluster_enableCloudwatchLogsExports' - A list of log types that need to be enabled for exporting to Amazon+-- CloudWatch Logs. You can enable audit logs or profiler logs. For more+-- information, see+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/event-auditing.html Auditing Amazon DocumentDB Events>+-- and+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/profiling.html Profiling Amazon DocumentDB Operations>.+--+-- 'engineVersion', 'createDBCluster_engineVersion' - The version number of the database engine to use. The @--engine-version@+-- will default to the latest major engine version. For production+-- workloads, we recommend explicitly declaring this parameter with the+-- intended major engine version.+--+-- 'globalClusterIdentifier', 'createDBCluster_globalClusterIdentifier' - The cluster identifier of the new global cluster.+--+-- 'kmsKeyId', 'createDBCluster_kmsKeyId' - The KMS key identifier for an encrypted cluster.+--+-- The KMS key identifier is the Amazon Resource Name (ARN) for the KMS+-- encryption key. If you are creating a cluster using the same Amazon Web+-- Services account that owns the KMS encryption key that is used to+-- encrypt the new cluster, you can use the KMS key alias instead of the+-- ARN for the KMS encryption key.+--+-- If an encryption key is not specified in @KmsKeyId@:+--+-- - If the @StorageEncrypted@ parameter is @true@, Amazon DocumentDB+-- uses your default encryption key.+--+-- KMS creates the default encryption key for your Amazon Web Services+-- account. Your Amazon Web Services account has a different default+-- encryption key for each Amazon Web Services Regions.+--+-- 'masterUserPassword', 'createDBCluster_masterUserPassword' - The password for the master database user. This password can contain any+-- printable ASCII character except forward slash (\/), double quote (\"),+-- or the \"at\" symbol (\@).+--+-- Constraints: Must contain from 8 to 100 characters.+--+-- 'masterUsername', 'createDBCluster_masterUsername' - The name of the master user for the cluster.+--+-- Constraints:+--+-- - Must be from 1 to 63 letters or numbers.+--+-- - The first character must be a letter.+--+-- - Cannot be a reserved word for the chosen database engine.+--+-- 'port', 'createDBCluster_port' - The port number on which the instances in the cluster accept+-- connections.+--+-- 'preSignedUrl', 'createDBCluster_preSignedUrl' - Not currently supported.+--+-- 'preferredBackupWindow', 'createDBCluster_preferredBackupWindow' - The daily time range during which automated backups are created if+-- automated backups are enabled using the @BackupRetentionPeriod@+-- parameter.+--+-- The default is a 30-minute window selected at random from an 8-hour+-- block of time for each Amazon Web Services Region.+--+-- Constraints:+--+-- - Must be in the format @hh24:mi-hh24:mi@.+--+-- - Must be in Universal Coordinated Time (UTC).+--+-- - Must not conflict with the preferred maintenance window.+--+-- - Must be at least 30 minutes.+--+-- 'preferredMaintenanceWindow', 'createDBCluster_preferredMaintenanceWindow' - The weekly time range during which system maintenance can occur, in+-- Universal Coordinated Time (UTC).+--+-- Format: @ddd:hh24:mi-ddd:hh24:mi@+--+-- The default is a 30-minute window selected at random from an 8-hour+-- block of time for each Amazon Web Services Region, occurring on a random+-- day of the week.+--+-- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+--+-- Constraints: Minimum 30-minute window.+--+-- 'storageEncrypted', 'createDBCluster_storageEncrypted' - Specifies whether the cluster is encrypted.+--+-- 'tags', 'createDBCluster_tags' - The tags to be assigned to the cluster.+--+-- 'vpcSecurityGroupIds', 'createDBCluster_vpcSecurityGroupIds' - A list of EC2 VPC security groups to associate with this cluster.+--+-- 'dbClusterIdentifier', 'createDBCluster_dbClusterIdentifier' - The cluster identifier. This parameter is stored as a lowercase string.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-cluster@+--+-- 'engine', 'createDBCluster_engine' - The name of the database engine to be used for this cluster.+--+-- Valid values: @docdb@+newCreateDBCluster ::+ -- | 'dbClusterIdentifier'+ Prelude.Text ->+ -- | 'engine'+ Prelude.Text ->+ CreateDBCluster+newCreateDBCluster pDBClusterIdentifier_ pEngine_ =+ CreateDBCluster'+ { availabilityZones =+ Prelude.Nothing,+ backupRetentionPeriod = Prelude.Nothing,+ dbClusterParameterGroupName = Prelude.Nothing,+ dbSubnetGroupName = Prelude.Nothing,+ deletionProtection = Prelude.Nothing,+ enableCloudwatchLogsExports = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ globalClusterIdentifier = Prelude.Nothing,+ kmsKeyId = Prelude.Nothing,+ masterUserPassword = Prelude.Nothing,+ masterUsername = Prelude.Nothing,+ port = Prelude.Nothing,+ preSignedUrl = Prelude.Nothing,+ preferredBackupWindow = Prelude.Nothing,+ preferredMaintenanceWindow = Prelude.Nothing,+ storageEncrypted = Prelude.Nothing,+ tags = Prelude.Nothing,+ vpcSecurityGroupIds = Prelude.Nothing,+ dbClusterIdentifier = pDBClusterIdentifier_,+ engine = pEngine_+ }++-- | A list of Amazon EC2 Availability Zones that instances in the cluster+-- can be created in.+createDBCluster_availabilityZones :: Lens.Lens' CreateDBCluster (Prelude.Maybe [Prelude.Text])+createDBCluster_availabilityZones = Lens.lens (\CreateDBCluster' {availabilityZones} -> availabilityZones) (\s@CreateDBCluster' {} a -> s {availabilityZones = a} :: CreateDBCluster) Prelude.. Lens.mapping Lens.coerced++-- | The number of days for which automated backups are retained. You must+-- specify a minimum value of 1.+--+-- Default: 1+--+-- Constraints:+--+-- - Must be a value from 1 to 35.+createDBCluster_backupRetentionPeriod :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Int)+createDBCluster_backupRetentionPeriod = Lens.lens (\CreateDBCluster' {backupRetentionPeriod} -> backupRetentionPeriod) (\s@CreateDBCluster' {} a -> s {backupRetentionPeriod = a} :: CreateDBCluster)++-- | The name of the cluster parameter group to associate with this cluster.+createDBCluster_dbClusterParameterGroupName :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Text)+createDBCluster_dbClusterParameterGroupName = Lens.lens (\CreateDBCluster' {dbClusterParameterGroupName} -> dbClusterParameterGroupName) (\s@CreateDBCluster' {} a -> s {dbClusterParameterGroupName = a} :: CreateDBCluster)++-- | A subnet group to associate with this cluster.+--+-- Constraints: Must match the name of an existing @DBSubnetGroup@. Must+-- not be default.+--+-- Example: @mySubnetgroup@+createDBCluster_dbSubnetGroupName :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Text)+createDBCluster_dbSubnetGroupName = Lens.lens (\CreateDBCluster' {dbSubnetGroupName} -> dbSubnetGroupName) (\s@CreateDBCluster' {} a -> s {dbSubnetGroupName = a} :: CreateDBCluster)++-- | Specifies whether this cluster can be deleted. If @DeletionProtection@+-- is enabled, the cluster cannot be deleted unless it is modified and+-- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+-- from being accidentally deleted.+createDBCluster_deletionProtection :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Bool)+createDBCluster_deletionProtection = Lens.lens (\CreateDBCluster' {deletionProtection} -> deletionProtection) (\s@CreateDBCluster' {} a -> s {deletionProtection = a} :: CreateDBCluster)++-- | A list of log types that need to be enabled for exporting to Amazon+-- CloudWatch Logs. You can enable audit logs or profiler logs. For more+-- information, see+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/event-auditing.html Auditing Amazon DocumentDB Events>+-- and+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/profiling.html Profiling Amazon DocumentDB Operations>.+createDBCluster_enableCloudwatchLogsExports :: Lens.Lens' CreateDBCluster (Prelude.Maybe [Prelude.Text])+createDBCluster_enableCloudwatchLogsExports = Lens.lens (\CreateDBCluster' {enableCloudwatchLogsExports} -> enableCloudwatchLogsExports) (\s@CreateDBCluster' {} a -> s {enableCloudwatchLogsExports = a} :: CreateDBCluster) Prelude.. Lens.mapping Lens.coerced++-- | The version number of the database engine to use. The @--engine-version@+-- will default to the latest major engine version. For production+-- workloads, we recommend explicitly declaring this parameter with the+-- intended major engine version.+createDBCluster_engineVersion :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Text)+createDBCluster_engineVersion = Lens.lens (\CreateDBCluster' {engineVersion} -> engineVersion) (\s@CreateDBCluster' {} a -> s {engineVersion = a} :: CreateDBCluster)++-- | The cluster identifier of the new global cluster.+createDBCluster_globalClusterIdentifier :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Text)+createDBCluster_globalClusterIdentifier = Lens.lens (\CreateDBCluster' {globalClusterIdentifier} -> globalClusterIdentifier) (\s@CreateDBCluster' {} a -> s {globalClusterIdentifier = a} :: CreateDBCluster)++-- | The KMS key identifier for an encrypted cluster.+--+-- The KMS key identifier is the Amazon Resource Name (ARN) for the KMS+-- encryption key. If you are creating a cluster using the same Amazon Web+-- Services account that owns the KMS encryption key that is used to+-- encrypt the new cluster, you can use the KMS key alias instead of the+-- ARN for the KMS encryption key.+--+-- If an encryption key is not specified in @KmsKeyId@:+--+-- - If the @StorageEncrypted@ parameter is @true@, Amazon DocumentDB+-- uses your default encryption key.+--+-- KMS creates the default encryption key for your Amazon Web Services+-- account. Your Amazon Web Services account has a different default+-- encryption key for each Amazon Web Services Regions.+createDBCluster_kmsKeyId :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Text)+createDBCluster_kmsKeyId = Lens.lens (\CreateDBCluster' {kmsKeyId} -> kmsKeyId) (\s@CreateDBCluster' {} a -> s {kmsKeyId = a} :: CreateDBCluster)++-- | The password for the master database user. This password can contain any+-- printable ASCII character except forward slash (\/), double quote (\"),+-- or the \"at\" symbol (\@).+--+-- Constraints: Must contain from 8 to 100 characters.+createDBCluster_masterUserPassword :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Text)+createDBCluster_masterUserPassword = Lens.lens (\CreateDBCluster' {masterUserPassword} -> masterUserPassword) (\s@CreateDBCluster' {} a -> s {masterUserPassword = a} :: CreateDBCluster)++-- | The name of the master user for the cluster.+--+-- Constraints:+--+-- - Must be from 1 to 63 letters or numbers.+--+-- - The first character must be a letter.+--+-- - Cannot be a reserved word for the chosen database engine.+createDBCluster_masterUsername :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Text)+createDBCluster_masterUsername = Lens.lens (\CreateDBCluster' {masterUsername} -> masterUsername) (\s@CreateDBCluster' {} a -> s {masterUsername = a} :: CreateDBCluster)++-- | The port number on which the instances in the cluster accept+-- connections.+createDBCluster_port :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Int)+createDBCluster_port = Lens.lens (\CreateDBCluster' {port} -> port) (\s@CreateDBCluster' {} a -> s {port = a} :: CreateDBCluster)++-- | Not currently supported.+createDBCluster_preSignedUrl :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Text)+createDBCluster_preSignedUrl = Lens.lens (\CreateDBCluster' {preSignedUrl} -> preSignedUrl) (\s@CreateDBCluster' {} a -> s {preSignedUrl = a} :: CreateDBCluster)++-- | The daily time range during which automated backups are created if+-- automated backups are enabled using the @BackupRetentionPeriod@+-- parameter.+--+-- The default is a 30-minute window selected at random from an 8-hour+-- block of time for each Amazon Web Services Region.+--+-- Constraints:+--+-- - Must be in the format @hh24:mi-hh24:mi@.+--+-- - Must be in Universal Coordinated Time (UTC).+--+-- - Must not conflict with the preferred maintenance window.+--+-- - Must be at least 30 minutes.+createDBCluster_preferredBackupWindow :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Text)+createDBCluster_preferredBackupWindow = Lens.lens (\CreateDBCluster' {preferredBackupWindow} -> preferredBackupWindow) (\s@CreateDBCluster' {} a -> s {preferredBackupWindow = a} :: CreateDBCluster)++-- | The weekly time range during which system maintenance can occur, in+-- Universal Coordinated Time (UTC).+--+-- Format: @ddd:hh24:mi-ddd:hh24:mi@+--+-- The default is a 30-minute window selected at random from an 8-hour+-- block of time for each Amazon Web Services Region, occurring on a random+-- day of the week.+--+-- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+--+-- Constraints: Minimum 30-minute window.+createDBCluster_preferredMaintenanceWindow :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Text)+createDBCluster_preferredMaintenanceWindow = Lens.lens (\CreateDBCluster' {preferredMaintenanceWindow} -> preferredMaintenanceWindow) (\s@CreateDBCluster' {} a -> s {preferredMaintenanceWindow = a} :: CreateDBCluster)++-- | Specifies whether the cluster is encrypted.+createDBCluster_storageEncrypted :: Lens.Lens' CreateDBCluster (Prelude.Maybe Prelude.Bool)+createDBCluster_storageEncrypted = Lens.lens (\CreateDBCluster' {storageEncrypted} -> storageEncrypted) (\s@CreateDBCluster' {} a -> s {storageEncrypted = a} :: CreateDBCluster)++-- | The tags to be assigned to the cluster.+createDBCluster_tags :: Lens.Lens' CreateDBCluster (Prelude.Maybe [Tag])+createDBCluster_tags = Lens.lens (\CreateDBCluster' {tags} -> tags) (\s@CreateDBCluster' {} a -> s {tags = a} :: CreateDBCluster) Prelude.. Lens.mapping Lens.coerced++-- | A list of EC2 VPC security groups to associate with this cluster.+createDBCluster_vpcSecurityGroupIds :: Lens.Lens' CreateDBCluster (Prelude.Maybe [Prelude.Text])+createDBCluster_vpcSecurityGroupIds = Lens.lens (\CreateDBCluster' {vpcSecurityGroupIds} -> vpcSecurityGroupIds) (\s@CreateDBCluster' {} a -> s {vpcSecurityGroupIds = a} :: CreateDBCluster) Prelude.. Lens.mapping Lens.coerced++-- | The cluster identifier. This parameter is stored as a lowercase string.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-cluster@+createDBCluster_dbClusterIdentifier :: Lens.Lens' CreateDBCluster Prelude.Text+createDBCluster_dbClusterIdentifier = Lens.lens (\CreateDBCluster' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@CreateDBCluster' {} a -> s {dbClusterIdentifier = a} :: CreateDBCluster)++-- | The name of the database engine to be used for this cluster.+--+-- Valid values: @docdb@+createDBCluster_engine :: Lens.Lens' CreateDBCluster Prelude.Text+createDBCluster_engine = Lens.lens (\CreateDBCluster' {engine} -> engine) (\s@CreateDBCluster' {} a -> s {engine = a} :: CreateDBCluster)++instance Core.AWSRequest CreateDBCluster where+ type+ AWSResponse CreateDBCluster =+ CreateDBClusterResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateDBClusterResult"+ ( \s h x ->+ CreateDBClusterResponse'+ Prelude.<$> (x Data..@? "DBCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateDBCluster where+ hashWithSalt _salt CreateDBCluster' {..} =+ _salt+ `Prelude.hashWithSalt` availabilityZones+ `Prelude.hashWithSalt` backupRetentionPeriod+ `Prelude.hashWithSalt` dbClusterParameterGroupName+ `Prelude.hashWithSalt` dbSubnetGroupName+ `Prelude.hashWithSalt` deletionProtection+ `Prelude.hashWithSalt` enableCloudwatchLogsExports+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` globalClusterIdentifier+ `Prelude.hashWithSalt` kmsKeyId+ `Prelude.hashWithSalt` masterUserPassword+ `Prelude.hashWithSalt` masterUsername+ `Prelude.hashWithSalt` port+ `Prelude.hashWithSalt` preSignedUrl+ `Prelude.hashWithSalt` preferredBackupWindow+ `Prelude.hashWithSalt` preferredMaintenanceWindow+ `Prelude.hashWithSalt` storageEncrypted+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` vpcSecurityGroupIds+ `Prelude.hashWithSalt` dbClusterIdentifier+ `Prelude.hashWithSalt` engine++instance Prelude.NFData CreateDBCluster where+ rnf CreateDBCluster' {..} =+ Prelude.rnf availabilityZones+ `Prelude.seq` Prelude.rnf backupRetentionPeriod+ `Prelude.seq` Prelude.rnf dbClusterParameterGroupName+ `Prelude.seq` Prelude.rnf dbSubnetGroupName+ `Prelude.seq` Prelude.rnf deletionProtection+ `Prelude.seq` Prelude.rnf enableCloudwatchLogsExports+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf globalClusterIdentifier+ `Prelude.seq` Prelude.rnf kmsKeyId+ `Prelude.seq` Prelude.rnf masterUserPassword+ `Prelude.seq` Prelude.rnf masterUsername+ `Prelude.seq` Prelude.rnf port+ `Prelude.seq` Prelude.rnf preSignedUrl+ `Prelude.seq` Prelude.rnf preferredBackupWindow+ `Prelude.seq` Prelude.rnf preferredMaintenanceWindow+ `Prelude.seq` Prelude.rnf storageEncrypted+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vpcSecurityGroupIds+ `Prelude.seq` Prelude.rnf dbClusterIdentifier+ `Prelude.seq` Prelude.rnf engine++instance Data.ToHeaders CreateDBCluster where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateDBCluster where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateDBCluster where+ toQuery CreateDBCluster' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateDBCluster" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "AvailabilityZones"+ Data.=: Data.toQuery+ ( Data.toQueryList "AvailabilityZone"+ Prelude.<$> availabilityZones+ ),+ "BackupRetentionPeriod"+ Data.=: backupRetentionPeriod,+ "DBClusterParameterGroupName"+ Data.=: dbClusterParameterGroupName,+ "DBSubnetGroupName" Data.=: dbSubnetGroupName,+ "DeletionProtection" Data.=: deletionProtection,+ "EnableCloudwatchLogsExports"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> enableCloudwatchLogsExports+ ),+ "EngineVersion" Data.=: engineVersion,+ "GlobalClusterIdentifier"+ Data.=: globalClusterIdentifier,+ "KmsKeyId" Data.=: kmsKeyId,+ "MasterUserPassword" Data.=: masterUserPassword,+ "MasterUsername" Data.=: masterUsername,+ "Port" Data.=: port,+ "PreSignedUrl" Data.=: preSignedUrl,+ "PreferredBackupWindow"+ Data.=: preferredBackupWindow,+ "PreferredMaintenanceWindow"+ Data.=: preferredMaintenanceWindow,+ "StorageEncrypted" Data.=: storageEncrypted,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "Tag" Prelude.<$> tags),+ "VpcSecurityGroupIds"+ Data.=: Data.toQuery+ ( Data.toQueryList "VpcSecurityGroupId"+ Prelude.<$> vpcSecurityGroupIds+ ),+ "DBClusterIdentifier" Data.=: dbClusterIdentifier,+ "Engine" Data.=: engine+ ]++-- | /See:/ 'newCreateDBClusterResponse' smart constructor.+data CreateDBClusterResponse = CreateDBClusterResponse'+ { dbCluster :: Prelude.Maybe DBCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDBClusterResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbCluster', 'createDBClusterResponse_dbCluster' - Undocumented member.+--+-- 'httpStatus', 'createDBClusterResponse_httpStatus' - The response's http status code.+newCreateDBClusterResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateDBClusterResponse+newCreateDBClusterResponse pHttpStatus_ =+ CreateDBClusterResponse'+ { dbCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createDBClusterResponse_dbCluster :: Lens.Lens' CreateDBClusterResponse (Prelude.Maybe DBCluster)+createDBClusterResponse_dbCluster = Lens.lens (\CreateDBClusterResponse' {dbCluster} -> dbCluster) (\s@CreateDBClusterResponse' {} a -> s {dbCluster = a} :: CreateDBClusterResponse)++-- | The response's http status code.+createDBClusterResponse_httpStatus :: Lens.Lens' CreateDBClusterResponse Prelude.Int+createDBClusterResponse_httpStatus = Lens.lens (\CreateDBClusterResponse' {httpStatus} -> httpStatus) (\s@CreateDBClusterResponse' {} a -> s {httpStatus = a} :: CreateDBClusterResponse)++instance Prelude.NFData CreateDBClusterResponse where+ rnf CreateDBClusterResponse' {..} =+ Prelude.rnf dbCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/CreateDBClusterParameterGroup.hs view
@@ -0,0 +1,262 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.CreateDBClusterParameterGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new cluster parameter group.+--+-- Parameters in a cluster parameter group apply to all of the instances in+-- a cluster.+--+-- A cluster parameter group is initially created with the default+-- parameters for the database engine used by instances in the cluster. In+-- Amazon DocumentDB, you cannot make modifications directly to the+-- @default.docdb3.6@ cluster parameter group. If your Amazon DocumentDB+-- cluster is using the default cluster parameter group and you want to+-- modify a value in it, you must first+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/cluster_parameter_group-create.html create a new parameter group>+-- or+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/cluster_parameter_group-copy.html copy an existing parameter group>,+-- modify it, and then apply the modified parameter group to your cluster.+-- For the new cluster parameter group and associated settings to take+-- effect, you must then reboot the instances in the cluster without+-- failover. For more information, see+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/cluster_parameter_group-modify.html Modifying Amazon DocumentDB Cluster Parameter Groups>.+module Amazonka.DocumentDB.CreateDBClusterParameterGroup+ ( -- * Creating a Request+ CreateDBClusterParameterGroup (..),+ newCreateDBClusterParameterGroup,++ -- * Request Lenses+ createDBClusterParameterGroup_tags,+ createDBClusterParameterGroup_dbClusterParameterGroupName,+ createDBClusterParameterGroup_dbParameterGroupFamily,+ createDBClusterParameterGroup_description,++ -- * Destructuring the Response+ CreateDBClusterParameterGroupResponse (..),+ newCreateDBClusterParameterGroupResponse,++ -- * Response Lenses+ createDBClusterParameterGroupResponse_dbClusterParameterGroup,+ createDBClusterParameterGroupResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input of CreateDBClusterParameterGroup.+--+-- /See:/ 'newCreateDBClusterParameterGroup' smart constructor.+data CreateDBClusterParameterGroup = CreateDBClusterParameterGroup'+ { -- | The tags to be assigned to the cluster parameter group.+ tags :: Prelude.Maybe [Tag],+ -- | The name of the cluster parameter group.+ --+ -- Constraints:+ --+ -- - Must not match the name of an existing @DBClusterParameterGroup@.+ --+ -- This value is stored as a lowercase string.+ dbClusterParameterGroupName :: Prelude.Text,+ -- | The cluster parameter group family name.+ dbParameterGroupFamily :: Prelude.Text,+ -- | The description for the cluster parameter group.+ description :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDBClusterParameterGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'createDBClusterParameterGroup_tags' - The tags to be assigned to the cluster parameter group.+--+-- 'dbClusterParameterGroupName', 'createDBClusterParameterGroup_dbClusterParameterGroupName' - The name of the cluster parameter group.+--+-- Constraints:+--+-- - Must not match the name of an existing @DBClusterParameterGroup@.+--+-- This value is stored as a lowercase string.+--+-- 'dbParameterGroupFamily', 'createDBClusterParameterGroup_dbParameterGroupFamily' - The cluster parameter group family name.+--+-- 'description', 'createDBClusterParameterGroup_description' - The description for the cluster parameter group.+newCreateDBClusterParameterGroup ::+ -- | 'dbClusterParameterGroupName'+ Prelude.Text ->+ -- | 'dbParameterGroupFamily'+ Prelude.Text ->+ -- | 'description'+ Prelude.Text ->+ CreateDBClusterParameterGroup+newCreateDBClusterParameterGroup+ pDBClusterParameterGroupName_+ pDBParameterGroupFamily_+ pDescription_ =+ CreateDBClusterParameterGroup'+ { tags =+ Prelude.Nothing,+ dbClusterParameterGroupName =+ pDBClusterParameterGroupName_,+ dbParameterGroupFamily =+ pDBParameterGroupFamily_,+ description = pDescription_+ }++-- | The tags to be assigned to the cluster parameter group.+createDBClusterParameterGroup_tags :: Lens.Lens' CreateDBClusterParameterGroup (Prelude.Maybe [Tag])+createDBClusterParameterGroup_tags = Lens.lens (\CreateDBClusterParameterGroup' {tags} -> tags) (\s@CreateDBClusterParameterGroup' {} a -> s {tags = a} :: CreateDBClusterParameterGroup) Prelude.. Lens.mapping Lens.coerced++-- | The name of the cluster parameter group.+--+-- Constraints:+--+-- - Must not match the name of an existing @DBClusterParameterGroup@.+--+-- This value is stored as a lowercase string.+createDBClusterParameterGroup_dbClusterParameterGroupName :: Lens.Lens' CreateDBClusterParameterGroup Prelude.Text+createDBClusterParameterGroup_dbClusterParameterGroupName = Lens.lens (\CreateDBClusterParameterGroup' {dbClusterParameterGroupName} -> dbClusterParameterGroupName) (\s@CreateDBClusterParameterGroup' {} a -> s {dbClusterParameterGroupName = a} :: CreateDBClusterParameterGroup)++-- | The cluster parameter group family name.+createDBClusterParameterGroup_dbParameterGroupFamily :: Lens.Lens' CreateDBClusterParameterGroup Prelude.Text+createDBClusterParameterGroup_dbParameterGroupFamily = Lens.lens (\CreateDBClusterParameterGroup' {dbParameterGroupFamily} -> dbParameterGroupFamily) (\s@CreateDBClusterParameterGroup' {} a -> s {dbParameterGroupFamily = a} :: CreateDBClusterParameterGroup)++-- | The description for the cluster parameter group.+createDBClusterParameterGroup_description :: Lens.Lens' CreateDBClusterParameterGroup Prelude.Text+createDBClusterParameterGroup_description = Lens.lens (\CreateDBClusterParameterGroup' {description} -> description) (\s@CreateDBClusterParameterGroup' {} a -> s {description = a} :: CreateDBClusterParameterGroup)++instance+ Core.AWSRequest+ CreateDBClusterParameterGroup+ where+ type+ AWSResponse CreateDBClusterParameterGroup =+ CreateDBClusterParameterGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateDBClusterParameterGroupResult"+ ( \s h x ->+ CreateDBClusterParameterGroupResponse'+ Prelude.<$> (x Data..@? "DBClusterParameterGroup")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ CreateDBClusterParameterGroup+ where+ hashWithSalt _salt CreateDBClusterParameterGroup' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` dbClusterParameterGroupName+ `Prelude.hashWithSalt` dbParameterGroupFamily+ `Prelude.hashWithSalt` description++instance Prelude.NFData CreateDBClusterParameterGroup where+ rnf CreateDBClusterParameterGroup' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf dbClusterParameterGroupName+ `Prelude.seq` Prelude.rnf dbParameterGroupFamily+ `Prelude.seq` Prelude.rnf description++instance Data.ToHeaders CreateDBClusterParameterGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateDBClusterParameterGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateDBClusterParameterGroup where+ toQuery CreateDBClusterParameterGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "CreateDBClusterParameterGroup" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "Tag" Prelude.<$> tags),+ "DBClusterParameterGroupName"+ Data.=: dbClusterParameterGroupName,+ "DBParameterGroupFamily"+ Data.=: dbParameterGroupFamily,+ "Description" Data.=: description+ ]++-- | /See:/ 'newCreateDBClusterParameterGroupResponse' smart constructor.+data CreateDBClusterParameterGroupResponse = CreateDBClusterParameterGroupResponse'+ { dbClusterParameterGroup :: Prelude.Maybe DBClusterParameterGroup,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDBClusterParameterGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterParameterGroup', 'createDBClusterParameterGroupResponse_dbClusterParameterGroup' - Undocumented member.+--+-- 'httpStatus', 'createDBClusterParameterGroupResponse_httpStatus' - The response's http status code.+newCreateDBClusterParameterGroupResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateDBClusterParameterGroupResponse+newCreateDBClusterParameterGroupResponse pHttpStatus_ =+ CreateDBClusterParameterGroupResponse'+ { dbClusterParameterGroup =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createDBClusterParameterGroupResponse_dbClusterParameterGroup :: Lens.Lens' CreateDBClusterParameterGroupResponse (Prelude.Maybe DBClusterParameterGroup)+createDBClusterParameterGroupResponse_dbClusterParameterGroup = Lens.lens (\CreateDBClusterParameterGroupResponse' {dbClusterParameterGroup} -> dbClusterParameterGroup) (\s@CreateDBClusterParameterGroupResponse' {} a -> s {dbClusterParameterGroup = a} :: CreateDBClusterParameterGroupResponse)++-- | The response's http status code.+createDBClusterParameterGroupResponse_httpStatus :: Lens.Lens' CreateDBClusterParameterGroupResponse Prelude.Int+createDBClusterParameterGroupResponse_httpStatus = Lens.lens (\CreateDBClusterParameterGroupResponse' {httpStatus} -> httpStatus) (\s@CreateDBClusterParameterGroupResponse' {} a -> s {httpStatus = a} :: CreateDBClusterParameterGroupResponse)++instance+ Prelude.NFData+ CreateDBClusterParameterGroupResponse+ where+ rnf CreateDBClusterParameterGroupResponse' {..} =+ Prelude.rnf dbClusterParameterGroup+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/CreateDBClusterSnapshot.hs view
@@ -0,0 +1,253 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.CreateDBClusterSnapshot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a snapshot of a cluster.+module Amazonka.DocumentDB.CreateDBClusterSnapshot+ ( -- * Creating a Request+ CreateDBClusterSnapshot (..),+ newCreateDBClusterSnapshot,++ -- * Request Lenses+ createDBClusterSnapshot_tags,+ createDBClusterSnapshot_dbClusterSnapshotIdentifier,+ createDBClusterSnapshot_dbClusterIdentifier,++ -- * Destructuring the Response+ CreateDBClusterSnapshotResponse (..),+ newCreateDBClusterSnapshotResponse,++ -- * Response Lenses+ createDBClusterSnapshotResponse_dbClusterSnapshot,+ createDBClusterSnapshotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input of CreateDBClusterSnapshot.+--+-- /See:/ 'newCreateDBClusterSnapshot' smart constructor.+data CreateDBClusterSnapshot = CreateDBClusterSnapshot'+ { -- | The tags to be assigned to the cluster snapshot.+ tags :: Prelude.Maybe [Tag],+ -- | The identifier of the cluster snapshot. This parameter is stored as a+ -- lowercase string.+ --+ -- Constraints:+ --+ -- - Must contain from 1 to 63 letters, numbers, or hyphens.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ --+ -- Example: @my-cluster-snapshot1@+ dbClusterSnapshotIdentifier :: Prelude.Text,+ -- | The identifier of the cluster to create a snapshot for. This parameter+ -- is not case sensitive.+ --+ -- Constraints:+ --+ -- - Must match the identifier of an existing @DBCluster@.+ --+ -- Example: @my-cluster@+ dbClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDBClusterSnapshot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'createDBClusterSnapshot_tags' - The tags to be assigned to the cluster snapshot.+--+-- 'dbClusterSnapshotIdentifier', 'createDBClusterSnapshot_dbClusterSnapshotIdentifier' - The identifier of the cluster snapshot. This parameter is stored as a+-- lowercase string.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-cluster-snapshot1@+--+-- 'dbClusterIdentifier', 'createDBClusterSnapshot_dbClusterIdentifier' - The identifier of the cluster to create a snapshot for. This parameter+-- is not case sensitive.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBCluster@.+--+-- Example: @my-cluster@+newCreateDBClusterSnapshot ::+ -- | 'dbClusterSnapshotIdentifier'+ Prelude.Text ->+ -- | 'dbClusterIdentifier'+ Prelude.Text ->+ CreateDBClusterSnapshot+newCreateDBClusterSnapshot+ pDBClusterSnapshotIdentifier_+ pDBClusterIdentifier_ =+ CreateDBClusterSnapshot'+ { tags = Prelude.Nothing,+ dbClusterSnapshotIdentifier =+ pDBClusterSnapshotIdentifier_,+ dbClusterIdentifier = pDBClusterIdentifier_+ }++-- | The tags to be assigned to the cluster snapshot.+createDBClusterSnapshot_tags :: Lens.Lens' CreateDBClusterSnapshot (Prelude.Maybe [Tag])+createDBClusterSnapshot_tags = Lens.lens (\CreateDBClusterSnapshot' {tags} -> tags) (\s@CreateDBClusterSnapshot' {} a -> s {tags = a} :: CreateDBClusterSnapshot) Prelude.. Lens.mapping Lens.coerced++-- | The identifier of the cluster snapshot. This parameter is stored as a+-- lowercase string.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-cluster-snapshot1@+createDBClusterSnapshot_dbClusterSnapshotIdentifier :: Lens.Lens' CreateDBClusterSnapshot Prelude.Text+createDBClusterSnapshot_dbClusterSnapshotIdentifier = Lens.lens (\CreateDBClusterSnapshot' {dbClusterSnapshotIdentifier} -> dbClusterSnapshotIdentifier) (\s@CreateDBClusterSnapshot' {} a -> s {dbClusterSnapshotIdentifier = a} :: CreateDBClusterSnapshot)++-- | The identifier of the cluster to create a snapshot for. This parameter+-- is not case sensitive.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBCluster@.+--+-- Example: @my-cluster@+createDBClusterSnapshot_dbClusterIdentifier :: Lens.Lens' CreateDBClusterSnapshot Prelude.Text+createDBClusterSnapshot_dbClusterIdentifier = Lens.lens (\CreateDBClusterSnapshot' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@CreateDBClusterSnapshot' {} a -> s {dbClusterIdentifier = a} :: CreateDBClusterSnapshot)++instance Core.AWSRequest CreateDBClusterSnapshot where+ type+ AWSResponse CreateDBClusterSnapshot =+ CreateDBClusterSnapshotResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateDBClusterSnapshotResult"+ ( \s h x ->+ CreateDBClusterSnapshotResponse'+ Prelude.<$> (x Data..@? "DBClusterSnapshot")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateDBClusterSnapshot where+ hashWithSalt _salt CreateDBClusterSnapshot' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` dbClusterSnapshotIdentifier+ `Prelude.hashWithSalt` dbClusterIdentifier++instance Prelude.NFData CreateDBClusterSnapshot where+ rnf CreateDBClusterSnapshot' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf dbClusterSnapshotIdentifier+ `Prelude.seq` Prelude.rnf dbClusterIdentifier++instance Data.ToHeaders CreateDBClusterSnapshot where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateDBClusterSnapshot where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateDBClusterSnapshot where+ toQuery CreateDBClusterSnapshot' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateDBClusterSnapshot" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "Tag" Prelude.<$> tags),+ "DBClusterSnapshotIdentifier"+ Data.=: dbClusterSnapshotIdentifier,+ "DBClusterIdentifier" Data.=: dbClusterIdentifier+ ]++-- | /See:/ 'newCreateDBClusterSnapshotResponse' smart constructor.+data CreateDBClusterSnapshotResponse = CreateDBClusterSnapshotResponse'+ { dbClusterSnapshot :: Prelude.Maybe DBClusterSnapshot,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDBClusterSnapshotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterSnapshot', 'createDBClusterSnapshotResponse_dbClusterSnapshot' - Undocumented member.+--+-- 'httpStatus', 'createDBClusterSnapshotResponse_httpStatus' - The response's http status code.+newCreateDBClusterSnapshotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateDBClusterSnapshotResponse+newCreateDBClusterSnapshotResponse pHttpStatus_ =+ CreateDBClusterSnapshotResponse'+ { dbClusterSnapshot =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createDBClusterSnapshotResponse_dbClusterSnapshot :: Lens.Lens' CreateDBClusterSnapshotResponse (Prelude.Maybe DBClusterSnapshot)+createDBClusterSnapshotResponse_dbClusterSnapshot = Lens.lens (\CreateDBClusterSnapshotResponse' {dbClusterSnapshot} -> dbClusterSnapshot) (\s@CreateDBClusterSnapshotResponse' {} a -> s {dbClusterSnapshot = a} :: CreateDBClusterSnapshotResponse)++-- | The response's http status code.+createDBClusterSnapshotResponse_httpStatus :: Lens.Lens' CreateDBClusterSnapshotResponse Prelude.Int+createDBClusterSnapshotResponse_httpStatus = Lens.lens (\CreateDBClusterSnapshotResponse' {httpStatus} -> httpStatus) (\s@CreateDBClusterSnapshotResponse' {} a -> s {httpStatus = a} :: CreateDBClusterSnapshotResponse)++instance+ Prelude.NFData+ CreateDBClusterSnapshotResponse+ where+ rnf CreateDBClusterSnapshotResponse' {..} =+ Prelude.rnf dbClusterSnapshot+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/CreateDBInstance.hs view
@@ -0,0 +1,472 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.CreateDBInstance+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new instance.+module Amazonka.DocumentDB.CreateDBInstance+ ( -- * Creating a Request+ CreateDBInstance (..),+ newCreateDBInstance,++ -- * Request Lenses+ createDBInstance_autoMinorVersionUpgrade,+ createDBInstance_availabilityZone,+ createDBInstance_copyTagsToSnapshot,+ createDBInstance_enablePerformanceInsights,+ createDBInstance_performanceInsightsKMSKeyId,+ createDBInstance_preferredMaintenanceWindow,+ createDBInstance_promotionTier,+ createDBInstance_tags,+ createDBInstance_dbInstanceIdentifier,+ createDBInstance_dbInstanceClass,+ createDBInstance_engine,+ createDBInstance_dbClusterIdentifier,++ -- * Destructuring the Response+ CreateDBInstanceResponse (..),+ newCreateDBInstanceResponse,++ -- * Response Lenses+ createDBInstanceResponse_dbInstance,+ createDBInstanceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to CreateDBInstance.+--+-- /See:/ 'newCreateDBInstance' smart constructor.+data CreateDBInstance = CreateDBInstance'+ { -- | This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB+ -- does not perform minor version upgrades regardless of the value set.+ --+ -- Default: @false@+ autoMinorVersionUpgrade :: Prelude.Maybe Prelude.Bool,+ -- | The Amazon EC2 Availability Zone that the instance is created in.+ --+ -- Default: A random, system-chosen Availability Zone in the endpoint\'s+ -- Amazon Web Services Region.+ --+ -- Example: @us-east-1d@+ availabilityZone :: Prelude.Maybe Prelude.Text,+ -- | A value that indicates whether to copy tags from the DB instance to+ -- snapshots of the DB instance. By default, tags are not copied.+ copyTagsToSnapshot :: Prelude.Maybe Prelude.Bool,+ -- | A value that indicates whether to enable Performance Insights for the DB+ -- Instance. For more information, see+ -- <https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html Using Amazon Performance Insights>.+ enablePerformanceInsights :: Prelude.Maybe Prelude.Bool,+ -- | The KMS key identifier for encryption of Performance Insights data.+ --+ -- The KMS key identifier is the key ARN, key ID, alias ARN, or alias name+ -- for the KMS key.+ --+ -- If you do not specify a value for PerformanceInsightsKMSKeyId, then+ -- Amazon DocumentDB uses your default KMS key. There is a default KMS key+ -- for your Amazon Web Services account. Your Amazon Web Services account+ -- has a different default KMS key for each Amazon Web Services region.+ performanceInsightsKMSKeyId :: Prelude.Maybe Prelude.Text,+ -- | The time range each week during which system maintenance can occur, in+ -- Universal Coordinated Time (UTC).+ --+ -- Format: @ddd:hh24:mi-ddd:hh24:mi@+ --+ -- The default is a 30-minute window selected at random from an 8-hour+ -- block of time for each Amazon Web Services Region, occurring on a random+ -- day of the week.+ --+ -- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+ --+ -- Constraints: Minimum 30-minute window.+ preferredMaintenanceWindow :: Prelude.Maybe Prelude.Text,+ -- | A value that specifies the order in which an Amazon DocumentDB replica+ -- is promoted to the primary instance after a failure of the existing+ -- primary instance.+ --+ -- Default: 1+ --+ -- Valid values: 0-15+ promotionTier :: Prelude.Maybe Prelude.Int,+ -- | The tags to be assigned to the instance. You can assign up to 10 tags to+ -- an instance.+ tags :: Prelude.Maybe [Tag],+ -- | The instance identifier. This parameter is stored as a lowercase string.+ --+ -- Constraints:+ --+ -- - Must contain from 1 to 63 letters, numbers, or hyphens.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ --+ -- Example: @mydbinstance@+ dbInstanceIdentifier :: Prelude.Text,+ -- | The compute and memory capacity of the instance; for example,+ -- @db.r5.large@.+ dbInstanceClass :: Prelude.Text,+ -- | The name of the database engine to be used for this instance.+ --+ -- Valid value: @docdb@+ engine :: Prelude.Text,+ -- | The identifier of the cluster that the instance will belong to.+ dbClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDBInstance' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'autoMinorVersionUpgrade', 'createDBInstance_autoMinorVersionUpgrade' - This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB+-- does not perform minor version upgrades regardless of the value set.+--+-- Default: @false@+--+-- 'availabilityZone', 'createDBInstance_availabilityZone' - The Amazon EC2 Availability Zone that the instance is created in.+--+-- Default: A random, system-chosen Availability Zone in the endpoint\'s+-- Amazon Web Services Region.+--+-- Example: @us-east-1d@+--+-- 'copyTagsToSnapshot', 'createDBInstance_copyTagsToSnapshot' - A value that indicates whether to copy tags from the DB instance to+-- snapshots of the DB instance. By default, tags are not copied.+--+-- 'enablePerformanceInsights', 'createDBInstance_enablePerformanceInsights' - A value that indicates whether to enable Performance Insights for the DB+-- Instance. For more information, see+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html Using Amazon Performance Insights>.+--+-- 'performanceInsightsKMSKeyId', 'createDBInstance_performanceInsightsKMSKeyId' - The KMS key identifier for encryption of Performance Insights data.+--+-- The KMS key identifier is the key ARN, key ID, alias ARN, or alias name+-- for the KMS key.+--+-- If you do not specify a value for PerformanceInsightsKMSKeyId, then+-- Amazon DocumentDB uses your default KMS key. There is a default KMS key+-- for your Amazon Web Services account. Your Amazon Web Services account+-- has a different default KMS key for each Amazon Web Services region.+--+-- 'preferredMaintenanceWindow', 'createDBInstance_preferredMaintenanceWindow' - The time range each week during which system maintenance can occur, in+-- Universal Coordinated Time (UTC).+--+-- Format: @ddd:hh24:mi-ddd:hh24:mi@+--+-- The default is a 30-minute window selected at random from an 8-hour+-- block of time for each Amazon Web Services Region, occurring on a random+-- day of the week.+--+-- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+--+-- Constraints: Minimum 30-minute window.+--+-- 'promotionTier', 'createDBInstance_promotionTier' - A value that specifies the order in which an Amazon DocumentDB replica+-- is promoted to the primary instance after a failure of the existing+-- primary instance.+--+-- Default: 1+--+-- Valid values: 0-15+--+-- 'tags', 'createDBInstance_tags' - The tags to be assigned to the instance. You can assign up to 10 tags to+-- an instance.+--+-- 'dbInstanceIdentifier', 'createDBInstance_dbInstanceIdentifier' - The instance identifier. This parameter is stored as a lowercase string.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @mydbinstance@+--+-- 'dbInstanceClass', 'createDBInstance_dbInstanceClass' - The compute and memory capacity of the instance; for example,+-- @db.r5.large@.+--+-- 'engine', 'createDBInstance_engine' - The name of the database engine to be used for this instance.+--+-- Valid value: @docdb@+--+-- 'dbClusterIdentifier', 'createDBInstance_dbClusterIdentifier' - The identifier of the cluster that the instance will belong to.+newCreateDBInstance ::+ -- | 'dbInstanceIdentifier'+ Prelude.Text ->+ -- | 'dbInstanceClass'+ Prelude.Text ->+ -- | 'engine'+ Prelude.Text ->+ -- | 'dbClusterIdentifier'+ Prelude.Text ->+ CreateDBInstance+newCreateDBInstance+ pDBInstanceIdentifier_+ pDBInstanceClass_+ pEngine_+ pDBClusterIdentifier_ =+ CreateDBInstance'+ { autoMinorVersionUpgrade =+ Prelude.Nothing,+ availabilityZone = Prelude.Nothing,+ copyTagsToSnapshot = Prelude.Nothing,+ enablePerformanceInsights = Prelude.Nothing,+ performanceInsightsKMSKeyId = Prelude.Nothing,+ preferredMaintenanceWindow = Prelude.Nothing,+ promotionTier = Prelude.Nothing,+ tags = Prelude.Nothing,+ dbInstanceIdentifier = pDBInstanceIdentifier_,+ dbInstanceClass = pDBInstanceClass_,+ engine = pEngine_,+ dbClusterIdentifier = pDBClusterIdentifier_+ }++-- | This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB+-- does not perform minor version upgrades regardless of the value set.+--+-- Default: @false@+createDBInstance_autoMinorVersionUpgrade :: Lens.Lens' CreateDBInstance (Prelude.Maybe Prelude.Bool)+createDBInstance_autoMinorVersionUpgrade = Lens.lens (\CreateDBInstance' {autoMinorVersionUpgrade} -> autoMinorVersionUpgrade) (\s@CreateDBInstance' {} a -> s {autoMinorVersionUpgrade = a} :: CreateDBInstance)++-- | The Amazon EC2 Availability Zone that the instance is created in.+--+-- Default: A random, system-chosen Availability Zone in the endpoint\'s+-- Amazon Web Services Region.+--+-- Example: @us-east-1d@+createDBInstance_availabilityZone :: Lens.Lens' CreateDBInstance (Prelude.Maybe Prelude.Text)+createDBInstance_availabilityZone = Lens.lens (\CreateDBInstance' {availabilityZone} -> availabilityZone) (\s@CreateDBInstance' {} a -> s {availabilityZone = a} :: CreateDBInstance)++-- | A value that indicates whether to copy tags from the DB instance to+-- snapshots of the DB instance. By default, tags are not copied.+createDBInstance_copyTagsToSnapshot :: Lens.Lens' CreateDBInstance (Prelude.Maybe Prelude.Bool)+createDBInstance_copyTagsToSnapshot = Lens.lens (\CreateDBInstance' {copyTagsToSnapshot} -> copyTagsToSnapshot) (\s@CreateDBInstance' {} a -> s {copyTagsToSnapshot = a} :: CreateDBInstance)++-- | A value that indicates whether to enable Performance Insights for the DB+-- Instance. For more information, see+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html Using Amazon Performance Insights>.+createDBInstance_enablePerformanceInsights :: Lens.Lens' CreateDBInstance (Prelude.Maybe Prelude.Bool)+createDBInstance_enablePerformanceInsights = Lens.lens (\CreateDBInstance' {enablePerformanceInsights} -> enablePerformanceInsights) (\s@CreateDBInstance' {} a -> s {enablePerformanceInsights = a} :: CreateDBInstance)++-- | The KMS key identifier for encryption of Performance Insights data.+--+-- The KMS key identifier is the key ARN, key ID, alias ARN, or alias name+-- for the KMS key.+--+-- If you do not specify a value for PerformanceInsightsKMSKeyId, then+-- Amazon DocumentDB uses your default KMS key. There is a default KMS key+-- for your Amazon Web Services account. Your Amazon Web Services account+-- has a different default KMS key for each Amazon Web Services region.+createDBInstance_performanceInsightsKMSKeyId :: Lens.Lens' CreateDBInstance (Prelude.Maybe Prelude.Text)+createDBInstance_performanceInsightsKMSKeyId = Lens.lens (\CreateDBInstance' {performanceInsightsKMSKeyId} -> performanceInsightsKMSKeyId) (\s@CreateDBInstance' {} a -> s {performanceInsightsKMSKeyId = a} :: CreateDBInstance)++-- | The time range each week during which system maintenance can occur, in+-- Universal Coordinated Time (UTC).+--+-- Format: @ddd:hh24:mi-ddd:hh24:mi@+--+-- The default is a 30-minute window selected at random from an 8-hour+-- block of time for each Amazon Web Services Region, occurring on a random+-- day of the week.+--+-- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+--+-- Constraints: Minimum 30-minute window.+createDBInstance_preferredMaintenanceWindow :: Lens.Lens' CreateDBInstance (Prelude.Maybe Prelude.Text)+createDBInstance_preferredMaintenanceWindow = Lens.lens (\CreateDBInstance' {preferredMaintenanceWindow} -> preferredMaintenanceWindow) (\s@CreateDBInstance' {} a -> s {preferredMaintenanceWindow = a} :: CreateDBInstance)++-- | A value that specifies the order in which an Amazon DocumentDB replica+-- is promoted to the primary instance after a failure of the existing+-- primary instance.+--+-- Default: 1+--+-- Valid values: 0-15+createDBInstance_promotionTier :: Lens.Lens' CreateDBInstance (Prelude.Maybe Prelude.Int)+createDBInstance_promotionTier = Lens.lens (\CreateDBInstance' {promotionTier} -> promotionTier) (\s@CreateDBInstance' {} a -> s {promotionTier = a} :: CreateDBInstance)++-- | The tags to be assigned to the instance. You can assign up to 10 tags to+-- an instance.+createDBInstance_tags :: Lens.Lens' CreateDBInstance (Prelude.Maybe [Tag])+createDBInstance_tags = Lens.lens (\CreateDBInstance' {tags} -> tags) (\s@CreateDBInstance' {} a -> s {tags = a} :: CreateDBInstance) Prelude.. Lens.mapping Lens.coerced++-- | The instance identifier. This parameter is stored as a lowercase string.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @mydbinstance@+createDBInstance_dbInstanceIdentifier :: Lens.Lens' CreateDBInstance Prelude.Text+createDBInstance_dbInstanceIdentifier = Lens.lens (\CreateDBInstance' {dbInstanceIdentifier} -> dbInstanceIdentifier) (\s@CreateDBInstance' {} a -> s {dbInstanceIdentifier = a} :: CreateDBInstance)++-- | The compute and memory capacity of the instance; for example,+-- @db.r5.large@.+createDBInstance_dbInstanceClass :: Lens.Lens' CreateDBInstance Prelude.Text+createDBInstance_dbInstanceClass = Lens.lens (\CreateDBInstance' {dbInstanceClass} -> dbInstanceClass) (\s@CreateDBInstance' {} a -> s {dbInstanceClass = a} :: CreateDBInstance)++-- | The name of the database engine to be used for this instance.+--+-- Valid value: @docdb@+createDBInstance_engine :: Lens.Lens' CreateDBInstance Prelude.Text+createDBInstance_engine = Lens.lens (\CreateDBInstance' {engine} -> engine) (\s@CreateDBInstance' {} a -> s {engine = a} :: CreateDBInstance)++-- | The identifier of the cluster that the instance will belong to.+createDBInstance_dbClusterIdentifier :: Lens.Lens' CreateDBInstance Prelude.Text+createDBInstance_dbClusterIdentifier = Lens.lens (\CreateDBInstance' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@CreateDBInstance' {} a -> s {dbClusterIdentifier = a} :: CreateDBInstance)++instance Core.AWSRequest CreateDBInstance where+ type+ AWSResponse CreateDBInstance =+ CreateDBInstanceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateDBInstanceResult"+ ( \s h x ->+ CreateDBInstanceResponse'+ Prelude.<$> (x Data..@? "DBInstance")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateDBInstance where+ hashWithSalt _salt CreateDBInstance' {..} =+ _salt+ `Prelude.hashWithSalt` autoMinorVersionUpgrade+ `Prelude.hashWithSalt` availabilityZone+ `Prelude.hashWithSalt` copyTagsToSnapshot+ `Prelude.hashWithSalt` enablePerformanceInsights+ `Prelude.hashWithSalt` performanceInsightsKMSKeyId+ `Prelude.hashWithSalt` preferredMaintenanceWindow+ `Prelude.hashWithSalt` promotionTier+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` dbInstanceIdentifier+ `Prelude.hashWithSalt` dbInstanceClass+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` dbClusterIdentifier++instance Prelude.NFData CreateDBInstance where+ rnf CreateDBInstance' {..} =+ Prelude.rnf autoMinorVersionUpgrade+ `Prelude.seq` Prelude.rnf availabilityZone+ `Prelude.seq` Prelude.rnf copyTagsToSnapshot+ `Prelude.seq` Prelude.rnf enablePerformanceInsights+ `Prelude.seq` Prelude.rnf performanceInsightsKMSKeyId+ `Prelude.seq` Prelude.rnf preferredMaintenanceWindow+ `Prelude.seq` Prelude.rnf promotionTier+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf dbInstanceIdentifier+ `Prelude.seq` Prelude.rnf dbInstanceClass+ `Prelude.seq` Prelude.rnf engine+ `Prelude.seq` Prelude.rnf dbClusterIdentifier++instance Data.ToHeaders CreateDBInstance where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateDBInstance where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateDBInstance where+ toQuery CreateDBInstance' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateDBInstance" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "AutoMinorVersionUpgrade"+ Data.=: autoMinorVersionUpgrade,+ "AvailabilityZone" Data.=: availabilityZone,+ "CopyTagsToSnapshot" Data.=: copyTagsToSnapshot,+ "EnablePerformanceInsights"+ Data.=: enablePerformanceInsights,+ "PerformanceInsightsKMSKeyId"+ Data.=: performanceInsightsKMSKeyId,+ "PreferredMaintenanceWindow"+ Data.=: preferredMaintenanceWindow,+ "PromotionTier" Data.=: promotionTier,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "Tag" Prelude.<$> tags),+ "DBInstanceIdentifier" Data.=: dbInstanceIdentifier,+ "DBInstanceClass" Data.=: dbInstanceClass,+ "Engine" Data.=: engine,+ "DBClusterIdentifier" Data.=: dbClusterIdentifier+ ]++-- | /See:/ 'newCreateDBInstanceResponse' smart constructor.+data CreateDBInstanceResponse = CreateDBInstanceResponse'+ { dbInstance :: Prelude.Maybe DBInstance,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDBInstanceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbInstance', 'createDBInstanceResponse_dbInstance' - Undocumented member.+--+-- 'httpStatus', 'createDBInstanceResponse_httpStatus' - The response's http status code.+newCreateDBInstanceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateDBInstanceResponse+newCreateDBInstanceResponse pHttpStatus_ =+ CreateDBInstanceResponse'+ { dbInstance =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createDBInstanceResponse_dbInstance :: Lens.Lens' CreateDBInstanceResponse (Prelude.Maybe DBInstance)+createDBInstanceResponse_dbInstance = Lens.lens (\CreateDBInstanceResponse' {dbInstance} -> dbInstance) (\s@CreateDBInstanceResponse' {} a -> s {dbInstance = a} :: CreateDBInstanceResponse)++-- | The response's http status code.+createDBInstanceResponse_httpStatus :: Lens.Lens' CreateDBInstanceResponse Prelude.Int+createDBInstanceResponse_httpStatus = Lens.lens (\CreateDBInstanceResponse' {httpStatus} -> httpStatus) (\s@CreateDBInstanceResponse' {} a -> s {httpStatus = a} :: CreateDBInstanceResponse)++instance Prelude.NFData CreateDBInstanceResponse where+ rnf CreateDBInstanceResponse' {..} =+ Prelude.rnf dbInstance+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/CreateDBSubnetGroup.hs view
@@ -0,0 +1,230 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.CreateDBSubnetGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new subnet group. subnet groups must contain at least one+-- subnet in at least two Availability Zones in the Amazon Web Services+-- Region.+module Amazonka.DocumentDB.CreateDBSubnetGroup+ ( -- * Creating a Request+ CreateDBSubnetGroup (..),+ newCreateDBSubnetGroup,++ -- * Request Lenses+ createDBSubnetGroup_tags,+ createDBSubnetGroup_dbSubnetGroupName,+ createDBSubnetGroup_dbSubnetGroupDescription,+ createDBSubnetGroup_subnetIds,++ -- * Destructuring the Response+ CreateDBSubnetGroupResponse (..),+ newCreateDBSubnetGroupResponse,++ -- * Response Lenses+ createDBSubnetGroupResponse_dbSubnetGroup,+ createDBSubnetGroupResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to CreateDBSubnetGroup.+--+-- /See:/ 'newCreateDBSubnetGroup' smart constructor.+data CreateDBSubnetGroup = CreateDBSubnetGroup'+ { -- | The tags to be assigned to the subnet group.+ tags :: Prelude.Maybe [Tag],+ -- | The name for the subnet group. This value is stored as a lowercase+ -- string.+ --+ -- Constraints: Must contain no more than 255 letters, numbers, periods,+ -- underscores, spaces, or hyphens. Must not be default.+ --+ -- Example: @mySubnetgroup@+ dbSubnetGroupName :: Prelude.Text,+ -- | The description for the subnet group.+ dbSubnetGroupDescription :: Prelude.Text,+ -- | The Amazon EC2 subnet IDs for the subnet group.+ subnetIds :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDBSubnetGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'createDBSubnetGroup_tags' - The tags to be assigned to the subnet group.+--+-- 'dbSubnetGroupName', 'createDBSubnetGroup_dbSubnetGroupName' - The name for the subnet group. This value is stored as a lowercase+-- string.+--+-- Constraints: Must contain no more than 255 letters, numbers, periods,+-- underscores, spaces, or hyphens. Must not be default.+--+-- Example: @mySubnetgroup@+--+-- 'dbSubnetGroupDescription', 'createDBSubnetGroup_dbSubnetGroupDescription' - The description for the subnet group.+--+-- 'subnetIds', 'createDBSubnetGroup_subnetIds' - The Amazon EC2 subnet IDs for the subnet group.+newCreateDBSubnetGroup ::+ -- | 'dbSubnetGroupName'+ Prelude.Text ->+ -- | 'dbSubnetGroupDescription'+ Prelude.Text ->+ CreateDBSubnetGroup+newCreateDBSubnetGroup+ pDBSubnetGroupName_+ pDBSubnetGroupDescription_ =+ CreateDBSubnetGroup'+ { tags = Prelude.Nothing,+ dbSubnetGroupName = pDBSubnetGroupName_,+ dbSubnetGroupDescription =+ pDBSubnetGroupDescription_,+ subnetIds = Prelude.mempty+ }++-- | The tags to be assigned to the subnet group.+createDBSubnetGroup_tags :: Lens.Lens' CreateDBSubnetGroup (Prelude.Maybe [Tag])+createDBSubnetGroup_tags = Lens.lens (\CreateDBSubnetGroup' {tags} -> tags) (\s@CreateDBSubnetGroup' {} a -> s {tags = a} :: CreateDBSubnetGroup) Prelude.. Lens.mapping Lens.coerced++-- | The name for the subnet group. This value is stored as a lowercase+-- string.+--+-- Constraints: Must contain no more than 255 letters, numbers, periods,+-- underscores, spaces, or hyphens. Must not be default.+--+-- Example: @mySubnetgroup@+createDBSubnetGroup_dbSubnetGroupName :: Lens.Lens' CreateDBSubnetGroup Prelude.Text+createDBSubnetGroup_dbSubnetGroupName = Lens.lens (\CreateDBSubnetGroup' {dbSubnetGroupName} -> dbSubnetGroupName) (\s@CreateDBSubnetGroup' {} a -> s {dbSubnetGroupName = a} :: CreateDBSubnetGroup)++-- | The description for the subnet group.+createDBSubnetGroup_dbSubnetGroupDescription :: Lens.Lens' CreateDBSubnetGroup Prelude.Text+createDBSubnetGroup_dbSubnetGroupDescription = Lens.lens (\CreateDBSubnetGroup' {dbSubnetGroupDescription} -> dbSubnetGroupDescription) (\s@CreateDBSubnetGroup' {} a -> s {dbSubnetGroupDescription = a} :: CreateDBSubnetGroup)++-- | The Amazon EC2 subnet IDs for the subnet group.+createDBSubnetGroup_subnetIds :: Lens.Lens' CreateDBSubnetGroup [Prelude.Text]+createDBSubnetGroup_subnetIds = Lens.lens (\CreateDBSubnetGroup' {subnetIds} -> subnetIds) (\s@CreateDBSubnetGroup' {} a -> s {subnetIds = a} :: CreateDBSubnetGroup) Prelude.. Lens.coerced++instance Core.AWSRequest CreateDBSubnetGroup where+ type+ AWSResponse CreateDBSubnetGroup =+ CreateDBSubnetGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateDBSubnetGroupResult"+ ( \s h x ->+ CreateDBSubnetGroupResponse'+ Prelude.<$> (x Data..@? "DBSubnetGroup")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateDBSubnetGroup where+ hashWithSalt _salt CreateDBSubnetGroup' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` dbSubnetGroupName+ `Prelude.hashWithSalt` dbSubnetGroupDescription+ `Prelude.hashWithSalt` subnetIds++instance Prelude.NFData CreateDBSubnetGroup where+ rnf CreateDBSubnetGroup' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf dbSubnetGroupName+ `Prelude.seq` Prelude.rnf dbSubnetGroupDescription+ `Prelude.seq` Prelude.rnf subnetIds++instance Data.ToHeaders CreateDBSubnetGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateDBSubnetGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateDBSubnetGroup where+ toQuery CreateDBSubnetGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateDBSubnetGroup" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "Tag" Prelude.<$> tags),+ "DBSubnetGroupName" Data.=: dbSubnetGroupName,+ "DBSubnetGroupDescription"+ Data.=: dbSubnetGroupDescription,+ "SubnetIds"+ Data.=: Data.toQueryList "SubnetIdentifier" subnetIds+ ]++-- | /See:/ 'newCreateDBSubnetGroupResponse' smart constructor.+data CreateDBSubnetGroupResponse = CreateDBSubnetGroupResponse'+ { dbSubnetGroup :: Prelude.Maybe DBSubnetGroup,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDBSubnetGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbSubnetGroup', 'createDBSubnetGroupResponse_dbSubnetGroup' - Undocumented member.+--+-- 'httpStatus', 'createDBSubnetGroupResponse_httpStatus' - The response's http status code.+newCreateDBSubnetGroupResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateDBSubnetGroupResponse+newCreateDBSubnetGroupResponse pHttpStatus_ =+ CreateDBSubnetGroupResponse'+ { dbSubnetGroup =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createDBSubnetGroupResponse_dbSubnetGroup :: Lens.Lens' CreateDBSubnetGroupResponse (Prelude.Maybe DBSubnetGroup)+createDBSubnetGroupResponse_dbSubnetGroup = Lens.lens (\CreateDBSubnetGroupResponse' {dbSubnetGroup} -> dbSubnetGroup) (\s@CreateDBSubnetGroupResponse' {} a -> s {dbSubnetGroup = a} :: CreateDBSubnetGroupResponse)++-- | The response's http status code.+createDBSubnetGroupResponse_httpStatus :: Lens.Lens' CreateDBSubnetGroupResponse Prelude.Int+createDBSubnetGroupResponse_httpStatus = Lens.lens (\CreateDBSubnetGroupResponse' {httpStatus} -> httpStatus) (\s@CreateDBSubnetGroupResponse' {} a -> s {httpStatus = a} :: CreateDBSubnetGroupResponse)++instance Prelude.NFData CreateDBSubnetGroupResponse where+ rnf CreateDBSubnetGroupResponse' {..} =+ Prelude.rnf dbSubnetGroup+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/CreateEventSubscription.hs view
@@ -0,0 +1,373 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.CreateEventSubscription+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an Amazon DocumentDB event notification subscription. This+-- action requires a topic Amazon Resource Name (ARN) created by using the+-- Amazon DocumentDB console, the Amazon SNS console, or the Amazon SNS+-- API. To obtain an ARN with Amazon SNS, you must create a topic in Amazon+-- SNS and subscribe to the topic. The ARN is displayed in the Amazon SNS+-- console.+--+-- You can specify the type of source (@SourceType@) that you want to be+-- notified of. You can also provide a list of Amazon DocumentDB sources+-- (@SourceIds@) that trigger the events, and you can provide a list of+-- event categories (@EventCategories@) for events that you want to be+-- notified of. For example, you can specify @SourceType = db-instance@,+-- @SourceIds = mydbinstance1, mydbinstance2@ and+-- @EventCategories = Availability, Backup@.+--+-- If you specify both the @SourceType@ and @SourceIds@ (such as+-- @SourceType = db-instance@ and @SourceIdentifier = myDBInstance1@), you+-- are notified of all the @db-instance@ events for the specified source.+-- If you specify a @SourceType@ but do not specify a @SourceIdentifier@,+-- you receive notice of the events for that source type for all your+-- Amazon DocumentDB sources. If you do not specify either the @SourceType@+-- or the @SourceIdentifier@, you are notified of events generated from all+-- Amazon DocumentDB sources belonging to your customer account.+module Amazonka.DocumentDB.CreateEventSubscription+ ( -- * Creating a Request+ CreateEventSubscription (..),+ newCreateEventSubscription,++ -- * Request Lenses+ createEventSubscription_enabled,+ createEventSubscription_eventCategories,+ createEventSubscription_sourceIds,+ createEventSubscription_sourceType,+ createEventSubscription_tags,+ createEventSubscription_subscriptionName,+ createEventSubscription_snsTopicArn,++ -- * Destructuring the Response+ CreateEventSubscriptionResponse (..),+ newCreateEventSubscriptionResponse,++ -- * Response Lenses+ createEventSubscriptionResponse_eventSubscription,+ createEventSubscriptionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to CreateEventSubscription.+--+-- /See:/ 'newCreateEventSubscription' smart constructor.+data CreateEventSubscription = CreateEventSubscription'+ { -- | A Boolean value; set to @true@ to activate the subscription, set to+ -- @false@ to create the subscription but not active it.+ enabled :: Prelude.Maybe Prelude.Bool,+ -- | A list of event categories for a @SourceType@ that you want to subscribe+ -- to.+ eventCategories :: Prelude.Maybe [Prelude.Text],+ -- | The list of identifiers of the event sources for which events are+ -- returned. If not specified, then all sources are included in the+ -- response. An identifier must begin with a letter and must contain only+ -- ASCII letters, digits, and hyphens; it can\'t end with a hyphen or+ -- contain two consecutive hyphens.+ --+ -- Constraints:+ --+ -- - If @SourceIds@ are provided, @SourceType@ must also be provided.+ --+ -- - If the source type is an instance, a @DBInstanceIdentifier@ must be+ -- provided.+ --+ -- - If the source type is a security group, a @DBSecurityGroupName@ must+ -- be provided.+ --+ -- - If the source type is a parameter group, a @DBParameterGroupName@+ -- must be provided.+ --+ -- - If the source type is a snapshot, a @DBSnapshotIdentifier@ must be+ -- provided.+ sourceIds :: Prelude.Maybe [Prelude.Text],+ -- | The type of source that is generating the events. For example, if you+ -- want to be notified of events generated by an instance, you would set+ -- this parameter to @db-instance@. If this value is not specified, all+ -- events are returned.+ --+ -- Valid values: @db-instance@, @db-cluster@, @db-parameter-group@,+ -- @db-security-group@, @db-cluster-snapshot@+ sourceType :: Prelude.Maybe Prelude.Text,+ -- | The tags to be assigned to the event subscription.+ tags :: Prelude.Maybe [Tag],+ -- | The name of the subscription.+ --+ -- Constraints: The name must be fewer than 255 characters.+ subscriptionName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the SNS topic created for event+ -- notification. Amazon SNS creates the ARN when you create a topic and+ -- subscribe to it.+ snsTopicArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEventSubscription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'createEventSubscription_enabled' - A Boolean value; set to @true@ to activate the subscription, set to+-- @false@ to create the subscription but not active it.+--+-- 'eventCategories', 'createEventSubscription_eventCategories' - A list of event categories for a @SourceType@ that you want to subscribe+-- to.+--+-- 'sourceIds', 'createEventSubscription_sourceIds' - The list of identifiers of the event sources for which events are+-- returned. If not specified, then all sources are included in the+-- response. An identifier must begin with a letter and must contain only+-- ASCII letters, digits, and hyphens; it can\'t end with a hyphen or+-- contain two consecutive hyphens.+--+-- Constraints:+--+-- - If @SourceIds@ are provided, @SourceType@ must also be provided.+--+-- - If the source type is an instance, a @DBInstanceIdentifier@ must be+-- provided.+--+-- - If the source type is a security group, a @DBSecurityGroupName@ must+-- be provided.+--+-- - If the source type is a parameter group, a @DBParameterGroupName@+-- must be provided.+--+-- - If the source type is a snapshot, a @DBSnapshotIdentifier@ must be+-- provided.+--+-- 'sourceType', 'createEventSubscription_sourceType' - The type of source that is generating the events. For example, if you+-- want to be notified of events generated by an instance, you would set+-- this parameter to @db-instance@. If this value is not specified, all+-- events are returned.+--+-- Valid values: @db-instance@, @db-cluster@, @db-parameter-group@,+-- @db-security-group@, @db-cluster-snapshot@+--+-- 'tags', 'createEventSubscription_tags' - The tags to be assigned to the event subscription.+--+-- 'subscriptionName', 'createEventSubscription_subscriptionName' - The name of the subscription.+--+-- Constraints: The name must be fewer than 255 characters.+--+-- 'snsTopicArn', 'createEventSubscription_snsTopicArn' - The Amazon Resource Name (ARN) of the SNS topic created for event+-- notification. Amazon SNS creates the ARN when you create a topic and+-- subscribe to it.+newCreateEventSubscription ::+ -- | 'subscriptionName'+ Prelude.Text ->+ -- | 'snsTopicArn'+ Prelude.Text ->+ CreateEventSubscription+newCreateEventSubscription+ pSubscriptionName_+ pSnsTopicArn_ =+ CreateEventSubscription'+ { enabled = Prelude.Nothing,+ eventCategories = Prelude.Nothing,+ sourceIds = Prelude.Nothing,+ sourceType = Prelude.Nothing,+ tags = Prelude.Nothing,+ subscriptionName = pSubscriptionName_,+ snsTopicArn = pSnsTopicArn_+ }++-- | A Boolean value; set to @true@ to activate the subscription, set to+-- @false@ to create the subscription but not active it.+createEventSubscription_enabled :: Lens.Lens' CreateEventSubscription (Prelude.Maybe Prelude.Bool)+createEventSubscription_enabled = Lens.lens (\CreateEventSubscription' {enabled} -> enabled) (\s@CreateEventSubscription' {} a -> s {enabled = a} :: CreateEventSubscription)++-- | A list of event categories for a @SourceType@ that you want to subscribe+-- to.+createEventSubscription_eventCategories :: Lens.Lens' CreateEventSubscription (Prelude.Maybe [Prelude.Text])+createEventSubscription_eventCategories = Lens.lens (\CreateEventSubscription' {eventCategories} -> eventCategories) (\s@CreateEventSubscription' {} a -> s {eventCategories = a} :: CreateEventSubscription) Prelude.. Lens.mapping Lens.coerced++-- | The list of identifiers of the event sources for which events are+-- returned. If not specified, then all sources are included in the+-- response. An identifier must begin with a letter and must contain only+-- ASCII letters, digits, and hyphens; it can\'t end with a hyphen or+-- contain two consecutive hyphens.+--+-- Constraints:+--+-- - If @SourceIds@ are provided, @SourceType@ must also be provided.+--+-- - If the source type is an instance, a @DBInstanceIdentifier@ must be+-- provided.+--+-- - If the source type is a security group, a @DBSecurityGroupName@ must+-- be provided.+--+-- - If the source type is a parameter group, a @DBParameterGroupName@+-- must be provided.+--+-- - If the source type is a snapshot, a @DBSnapshotIdentifier@ must be+-- provided.+createEventSubscription_sourceIds :: Lens.Lens' CreateEventSubscription (Prelude.Maybe [Prelude.Text])+createEventSubscription_sourceIds = Lens.lens (\CreateEventSubscription' {sourceIds} -> sourceIds) (\s@CreateEventSubscription' {} a -> s {sourceIds = a} :: CreateEventSubscription) Prelude.. Lens.mapping Lens.coerced++-- | The type of source that is generating the events. For example, if you+-- want to be notified of events generated by an instance, you would set+-- this parameter to @db-instance@. If this value is not specified, all+-- events are returned.+--+-- Valid values: @db-instance@, @db-cluster@, @db-parameter-group@,+-- @db-security-group@, @db-cluster-snapshot@+createEventSubscription_sourceType :: Lens.Lens' CreateEventSubscription (Prelude.Maybe Prelude.Text)+createEventSubscription_sourceType = Lens.lens (\CreateEventSubscription' {sourceType} -> sourceType) (\s@CreateEventSubscription' {} a -> s {sourceType = a} :: CreateEventSubscription)++-- | The tags to be assigned to the event subscription.+createEventSubscription_tags :: Lens.Lens' CreateEventSubscription (Prelude.Maybe [Tag])+createEventSubscription_tags = Lens.lens (\CreateEventSubscription' {tags} -> tags) (\s@CreateEventSubscription' {} a -> s {tags = a} :: CreateEventSubscription) Prelude.. Lens.mapping Lens.coerced++-- | The name of the subscription.+--+-- Constraints: The name must be fewer than 255 characters.+createEventSubscription_subscriptionName :: Lens.Lens' CreateEventSubscription Prelude.Text+createEventSubscription_subscriptionName = Lens.lens (\CreateEventSubscription' {subscriptionName} -> subscriptionName) (\s@CreateEventSubscription' {} a -> s {subscriptionName = a} :: CreateEventSubscription)++-- | The Amazon Resource Name (ARN) of the SNS topic created for event+-- notification. Amazon SNS creates the ARN when you create a topic and+-- subscribe to it.+createEventSubscription_snsTopicArn :: Lens.Lens' CreateEventSubscription Prelude.Text+createEventSubscription_snsTopicArn = Lens.lens (\CreateEventSubscription' {snsTopicArn} -> snsTopicArn) (\s@CreateEventSubscription' {} a -> s {snsTopicArn = a} :: CreateEventSubscription)++instance Core.AWSRequest CreateEventSubscription where+ type+ AWSResponse CreateEventSubscription =+ CreateEventSubscriptionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateEventSubscriptionResult"+ ( \s h x ->+ CreateEventSubscriptionResponse'+ Prelude.<$> (x Data..@? "EventSubscription")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateEventSubscription where+ hashWithSalt _salt CreateEventSubscription' {..} =+ _salt+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` eventCategories+ `Prelude.hashWithSalt` sourceIds+ `Prelude.hashWithSalt` sourceType+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` subscriptionName+ `Prelude.hashWithSalt` snsTopicArn++instance Prelude.NFData CreateEventSubscription where+ rnf CreateEventSubscription' {..} =+ Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf eventCategories+ `Prelude.seq` Prelude.rnf sourceIds+ `Prelude.seq` Prelude.rnf sourceType+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf subscriptionName+ `Prelude.seq` Prelude.rnf snsTopicArn++instance Data.ToHeaders CreateEventSubscription where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateEventSubscription where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateEventSubscription where+ toQuery CreateEventSubscription' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateEventSubscription" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Enabled" Data.=: enabled,+ "EventCategories"+ Data.=: Data.toQuery+ ( Data.toQueryList "EventCategory"+ Prelude.<$> eventCategories+ ),+ "SourceIds"+ Data.=: Data.toQuery+ (Data.toQueryList "SourceId" Prelude.<$> sourceIds),+ "SourceType" Data.=: sourceType,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "Tag" Prelude.<$> tags),+ "SubscriptionName" Data.=: subscriptionName,+ "SnsTopicArn" Data.=: snsTopicArn+ ]++-- | /See:/ 'newCreateEventSubscriptionResponse' smart constructor.+data CreateEventSubscriptionResponse = CreateEventSubscriptionResponse'+ { eventSubscription :: Prelude.Maybe EventSubscription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEventSubscriptionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventSubscription', 'createEventSubscriptionResponse_eventSubscription' - Undocumented member.+--+-- 'httpStatus', 'createEventSubscriptionResponse_httpStatus' - The response's http status code.+newCreateEventSubscriptionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateEventSubscriptionResponse+newCreateEventSubscriptionResponse pHttpStatus_ =+ CreateEventSubscriptionResponse'+ { eventSubscription =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createEventSubscriptionResponse_eventSubscription :: Lens.Lens' CreateEventSubscriptionResponse (Prelude.Maybe EventSubscription)+createEventSubscriptionResponse_eventSubscription = Lens.lens (\CreateEventSubscriptionResponse' {eventSubscription} -> eventSubscription) (\s@CreateEventSubscriptionResponse' {} a -> s {eventSubscription = a} :: CreateEventSubscriptionResponse)++-- | The response's http status code.+createEventSubscriptionResponse_httpStatus :: Lens.Lens' CreateEventSubscriptionResponse Prelude.Int+createEventSubscriptionResponse_httpStatus = Lens.lens (\CreateEventSubscriptionResponse' {httpStatus} -> httpStatus) (\s@CreateEventSubscriptionResponse' {} a -> s {httpStatus = a} :: CreateEventSubscriptionResponse)++instance+ Prelude.NFData+ CreateEventSubscriptionResponse+ where+ rnf CreateEventSubscriptionResponse' {..} =+ Prelude.rnf eventSubscription+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/CreateGlobalCluster.hs view
@@ -0,0 +1,267 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.CreateGlobalCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an Amazon DocumentDB global cluster that can span multiple+-- multiple Amazon Web Services Regions. The global cluster contains one+-- primary cluster with read-write capability, and up-to give read-only+-- secondary clusters. Global clusters uses storage-based fast replication+-- across regions with latencies less than one second, using dedicated+-- infrastructure with no impact to your workload’s performance.+--+-- You can create a global cluster that is initially empty, and then add a+-- primary and a secondary to it. Or you can specify an existing cluster+-- during the create operation, and this cluster becomes the primary of the+-- global cluster.+--+-- This action only applies to Amazon DocumentDB clusters.+module Amazonka.DocumentDB.CreateGlobalCluster+ ( -- * Creating a Request+ CreateGlobalCluster (..),+ newCreateGlobalCluster,++ -- * Request Lenses+ createGlobalCluster_databaseName,+ createGlobalCluster_deletionProtection,+ createGlobalCluster_engine,+ createGlobalCluster_engineVersion,+ createGlobalCluster_sourceDBClusterIdentifier,+ createGlobalCluster_storageEncrypted,+ createGlobalCluster_globalClusterIdentifier,++ -- * Destructuring the Response+ CreateGlobalClusterResponse (..),+ newCreateGlobalClusterResponse,++ -- * Response Lenses+ createGlobalClusterResponse_globalCluster,+ createGlobalClusterResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to CreateGlobalCluster.+--+-- /See:/ 'newCreateGlobalCluster' smart constructor.+data CreateGlobalCluster = CreateGlobalCluster'+ { -- | The name for your database of up to 64 alpha-numeric characters. If you+ -- do not provide a name, Amazon DocumentDB will not create a database in+ -- the global cluster you are creating.+ databaseName :: Prelude.Maybe Prelude.Text,+ -- | The deletion protection setting for the new global cluster. The global+ -- cluster can\'t be deleted when deletion protection is enabled.+ deletionProtection :: Prelude.Maybe Prelude.Bool,+ -- | The name of the database engine to be used for this cluster.+ engine :: Prelude.Maybe Prelude.Text,+ -- | The engine version of the global cluster.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) to use as the primary cluster of the+ -- global cluster. This parameter is optional.+ sourceDBClusterIdentifier :: Prelude.Maybe Prelude.Text,+ -- | The storage encryption setting for the new global cluster.+ storageEncrypted :: Prelude.Maybe Prelude.Bool,+ -- | The cluster identifier of the new global cluster.+ globalClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateGlobalCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'databaseName', 'createGlobalCluster_databaseName' - The name for your database of up to 64 alpha-numeric characters. If you+-- do not provide a name, Amazon DocumentDB will not create a database in+-- the global cluster you are creating.+--+-- 'deletionProtection', 'createGlobalCluster_deletionProtection' - The deletion protection setting for the new global cluster. The global+-- cluster can\'t be deleted when deletion protection is enabled.+--+-- 'engine', 'createGlobalCluster_engine' - The name of the database engine to be used for this cluster.+--+-- 'engineVersion', 'createGlobalCluster_engineVersion' - The engine version of the global cluster.+--+-- 'sourceDBClusterIdentifier', 'createGlobalCluster_sourceDBClusterIdentifier' - The Amazon Resource Name (ARN) to use as the primary cluster of the+-- global cluster. This parameter is optional.+--+-- 'storageEncrypted', 'createGlobalCluster_storageEncrypted' - The storage encryption setting for the new global cluster.+--+-- 'globalClusterIdentifier', 'createGlobalCluster_globalClusterIdentifier' - The cluster identifier of the new global cluster.+newCreateGlobalCluster ::+ -- | 'globalClusterIdentifier'+ Prelude.Text ->+ CreateGlobalCluster+newCreateGlobalCluster pGlobalClusterIdentifier_ =+ CreateGlobalCluster'+ { databaseName =+ Prelude.Nothing,+ deletionProtection = Prelude.Nothing,+ engine = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ sourceDBClusterIdentifier = Prelude.Nothing,+ storageEncrypted = Prelude.Nothing,+ globalClusterIdentifier = pGlobalClusterIdentifier_+ }++-- | The name for your database of up to 64 alpha-numeric characters. If you+-- do not provide a name, Amazon DocumentDB will not create a database in+-- the global cluster you are creating.+createGlobalCluster_databaseName :: Lens.Lens' CreateGlobalCluster (Prelude.Maybe Prelude.Text)+createGlobalCluster_databaseName = Lens.lens (\CreateGlobalCluster' {databaseName} -> databaseName) (\s@CreateGlobalCluster' {} a -> s {databaseName = a} :: CreateGlobalCluster)++-- | The deletion protection setting for the new global cluster. The global+-- cluster can\'t be deleted when deletion protection is enabled.+createGlobalCluster_deletionProtection :: Lens.Lens' CreateGlobalCluster (Prelude.Maybe Prelude.Bool)+createGlobalCluster_deletionProtection = Lens.lens (\CreateGlobalCluster' {deletionProtection} -> deletionProtection) (\s@CreateGlobalCluster' {} a -> s {deletionProtection = a} :: CreateGlobalCluster)++-- | The name of the database engine to be used for this cluster.+createGlobalCluster_engine :: Lens.Lens' CreateGlobalCluster (Prelude.Maybe Prelude.Text)+createGlobalCluster_engine = Lens.lens (\CreateGlobalCluster' {engine} -> engine) (\s@CreateGlobalCluster' {} a -> s {engine = a} :: CreateGlobalCluster)++-- | The engine version of the global cluster.+createGlobalCluster_engineVersion :: Lens.Lens' CreateGlobalCluster (Prelude.Maybe Prelude.Text)+createGlobalCluster_engineVersion = Lens.lens (\CreateGlobalCluster' {engineVersion} -> engineVersion) (\s@CreateGlobalCluster' {} a -> s {engineVersion = a} :: CreateGlobalCluster)++-- | The Amazon Resource Name (ARN) to use as the primary cluster of the+-- global cluster. This parameter is optional.+createGlobalCluster_sourceDBClusterIdentifier :: Lens.Lens' CreateGlobalCluster (Prelude.Maybe Prelude.Text)+createGlobalCluster_sourceDBClusterIdentifier = Lens.lens (\CreateGlobalCluster' {sourceDBClusterIdentifier} -> sourceDBClusterIdentifier) (\s@CreateGlobalCluster' {} a -> s {sourceDBClusterIdentifier = a} :: CreateGlobalCluster)++-- | The storage encryption setting for the new global cluster.+createGlobalCluster_storageEncrypted :: Lens.Lens' CreateGlobalCluster (Prelude.Maybe Prelude.Bool)+createGlobalCluster_storageEncrypted = Lens.lens (\CreateGlobalCluster' {storageEncrypted} -> storageEncrypted) (\s@CreateGlobalCluster' {} a -> s {storageEncrypted = a} :: CreateGlobalCluster)++-- | The cluster identifier of the new global cluster.+createGlobalCluster_globalClusterIdentifier :: Lens.Lens' CreateGlobalCluster Prelude.Text+createGlobalCluster_globalClusterIdentifier = Lens.lens (\CreateGlobalCluster' {globalClusterIdentifier} -> globalClusterIdentifier) (\s@CreateGlobalCluster' {} a -> s {globalClusterIdentifier = a} :: CreateGlobalCluster)++instance Core.AWSRequest CreateGlobalCluster where+ type+ AWSResponse CreateGlobalCluster =+ CreateGlobalClusterResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateGlobalClusterResult"+ ( \s h x ->+ CreateGlobalClusterResponse'+ Prelude.<$> (x Data..@? "GlobalCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateGlobalCluster where+ hashWithSalt _salt CreateGlobalCluster' {..} =+ _salt+ `Prelude.hashWithSalt` databaseName+ `Prelude.hashWithSalt` deletionProtection+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` sourceDBClusterIdentifier+ `Prelude.hashWithSalt` storageEncrypted+ `Prelude.hashWithSalt` globalClusterIdentifier++instance Prelude.NFData CreateGlobalCluster where+ rnf CreateGlobalCluster' {..} =+ Prelude.rnf databaseName+ `Prelude.seq` Prelude.rnf deletionProtection+ `Prelude.seq` Prelude.rnf engine+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf sourceDBClusterIdentifier+ `Prelude.seq` Prelude.rnf storageEncrypted+ `Prelude.seq` Prelude.rnf globalClusterIdentifier++instance Data.ToHeaders CreateGlobalCluster where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateGlobalCluster where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateGlobalCluster where+ toQuery CreateGlobalCluster' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateGlobalCluster" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DatabaseName" Data.=: databaseName,+ "DeletionProtection" Data.=: deletionProtection,+ "Engine" Data.=: engine,+ "EngineVersion" Data.=: engineVersion,+ "SourceDBClusterIdentifier"+ Data.=: sourceDBClusterIdentifier,+ "StorageEncrypted" Data.=: storageEncrypted,+ "GlobalClusterIdentifier"+ Data.=: globalClusterIdentifier+ ]++-- | /See:/ 'newCreateGlobalClusterResponse' smart constructor.+data CreateGlobalClusterResponse = CreateGlobalClusterResponse'+ { globalCluster :: Prelude.Maybe GlobalCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateGlobalClusterResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'globalCluster', 'createGlobalClusterResponse_globalCluster' - Undocumented member.+--+-- 'httpStatus', 'createGlobalClusterResponse_httpStatus' - The response's http status code.+newCreateGlobalClusterResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateGlobalClusterResponse+newCreateGlobalClusterResponse pHttpStatus_ =+ CreateGlobalClusterResponse'+ { globalCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createGlobalClusterResponse_globalCluster :: Lens.Lens' CreateGlobalClusterResponse (Prelude.Maybe GlobalCluster)+createGlobalClusterResponse_globalCluster = Lens.lens (\CreateGlobalClusterResponse' {globalCluster} -> globalCluster) (\s@CreateGlobalClusterResponse' {} a -> s {globalCluster = a} :: CreateGlobalClusterResponse)++-- | The response's http status code.+createGlobalClusterResponse_httpStatus :: Lens.Lens' CreateGlobalClusterResponse Prelude.Int+createGlobalClusterResponse_httpStatus = Lens.lens (\CreateGlobalClusterResponse' {httpStatus} -> httpStatus) (\s@CreateGlobalClusterResponse' {} a -> s {httpStatus = a} :: CreateGlobalClusterResponse)++instance Prelude.NFData CreateGlobalClusterResponse where+ rnf CreateGlobalClusterResponse' {..} =+ Prelude.rnf globalCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DeleteDBCluster.hs view
@@ -0,0 +1,267 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DeleteDBCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a previously provisioned cluster. When you delete a cluster, all+-- automated backups for that cluster are deleted and can\'t be recovered.+-- Manual DB cluster snapshots of the specified cluster are not deleted.+module Amazonka.DocumentDB.DeleteDBCluster+ ( -- * Creating a Request+ DeleteDBCluster (..),+ newDeleteDBCluster,++ -- * Request Lenses+ deleteDBCluster_finalDBSnapshotIdentifier,+ deleteDBCluster_skipFinalSnapshot,+ deleteDBCluster_dbClusterIdentifier,++ -- * Destructuring the Response+ DeleteDBClusterResponse (..),+ newDeleteDBClusterResponse,++ -- * Response Lenses+ deleteDBClusterResponse_dbCluster,+ deleteDBClusterResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DeleteDBCluster.+--+-- /See:/ 'newDeleteDBCluster' smart constructor.+data DeleteDBCluster = DeleteDBCluster'+ { -- | The cluster snapshot identifier of the new cluster snapshot created when+ -- @SkipFinalSnapshot@ is set to @false@.+ --+ -- Specifying this parameter and also setting the @SkipFinalShapshot@+ -- parameter to @true@ results in an error.+ --+ -- Constraints:+ --+ -- - Must be from 1 to 255 letters, numbers, or hyphens.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ finalDBSnapshotIdentifier :: Prelude.Maybe Prelude.Text,+ -- | Determines whether a final cluster snapshot is created before the+ -- cluster is deleted. If @true@ is specified, no cluster snapshot is+ -- created. If @false@ is specified, a cluster snapshot is created before+ -- the DB cluster is deleted.+ --+ -- If @SkipFinalSnapshot@ is @false@, you must specify a+ -- @FinalDBSnapshotIdentifier@ parameter.+ --+ -- Default: @false@+ skipFinalSnapshot :: Prelude.Maybe Prelude.Bool,+ -- | The cluster identifier for the cluster to be deleted. This parameter+ -- isn\'t case sensitive.+ --+ -- Constraints:+ --+ -- - Must match an existing @DBClusterIdentifier@.+ dbClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDBCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'finalDBSnapshotIdentifier', 'deleteDBCluster_finalDBSnapshotIdentifier' - The cluster snapshot identifier of the new cluster snapshot created when+-- @SkipFinalSnapshot@ is set to @false@.+--+-- Specifying this parameter and also setting the @SkipFinalShapshot@+-- parameter to @true@ results in an error.+--+-- Constraints:+--+-- - Must be from 1 to 255 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- 'skipFinalSnapshot', 'deleteDBCluster_skipFinalSnapshot' - Determines whether a final cluster snapshot is created before the+-- cluster is deleted. If @true@ is specified, no cluster snapshot is+-- created. If @false@ is specified, a cluster snapshot is created before+-- the DB cluster is deleted.+--+-- If @SkipFinalSnapshot@ is @false@, you must specify a+-- @FinalDBSnapshotIdentifier@ parameter.+--+-- Default: @false@+--+-- 'dbClusterIdentifier', 'deleteDBCluster_dbClusterIdentifier' - The cluster identifier for the cluster to be deleted. This parameter+-- isn\'t case sensitive.+--+-- Constraints:+--+-- - Must match an existing @DBClusterIdentifier@.+newDeleteDBCluster ::+ -- | 'dbClusterIdentifier'+ Prelude.Text ->+ DeleteDBCluster+newDeleteDBCluster pDBClusterIdentifier_ =+ DeleteDBCluster'+ { finalDBSnapshotIdentifier =+ Prelude.Nothing,+ skipFinalSnapshot = Prelude.Nothing,+ dbClusterIdentifier = pDBClusterIdentifier_+ }++-- | The cluster snapshot identifier of the new cluster snapshot created when+-- @SkipFinalSnapshot@ is set to @false@.+--+-- Specifying this parameter and also setting the @SkipFinalShapshot@+-- parameter to @true@ results in an error.+--+-- Constraints:+--+-- - Must be from 1 to 255 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+deleteDBCluster_finalDBSnapshotIdentifier :: Lens.Lens' DeleteDBCluster (Prelude.Maybe Prelude.Text)+deleteDBCluster_finalDBSnapshotIdentifier = Lens.lens (\DeleteDBCluster' {finalDBSnapshotIdentifier} -> finalDBSnapshotIdentifier) (\s@DeleteDBCluster' {} a -> s {finalDBSnapshotIdentifier = a} :: DeleteDBCluster)++-- | Determines whether a final cluster snapshot is created before the+-- cluster is deleted. If @true@ is specified, no cluster snapshot is+-- created. If @false@ is specified, a cluster snapshot is created before+-- the DB cluster is deleted.+--+-- If @SkipFinalSnapshot@ is @false@, you must specify a+-- @FinalDBSnapshotIdentifier@ parameter.+--+-- Default: @false@+deleteDBCluster_skipFinalSnapshot :: Lens.Lens' DeleteDBCluster (Prelude.Maybe Prelude.Bool)+deleteDBCluster_skipFinalSnapshot = Lens.lens (\DeleteDBCluster' {skipFinalSnapshot} -> skipFinalSnapshot) (\s@DeleteDBCluster' {} a -> s {skipFinalSnapshot = a} :: DeleteDBCluster)++-- | The cluster identifier for the cluster to be deleted. This parameter+-- isn\'t case sensitive.+--+-- Constraints:+--+-- - Must match an existing @DBClusterIdentifier@.+deleteDBCluster_dbClusterIdentifier :: Lens.Lens' DeleteDBCluster Prelude.Text+deleteDBCluster_dbClusterIdentifier = Lens.lens (\DeleteDBCluster' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@DeleteDBCluster' {} a -> s {dbClusterIdentifier = a} :: DeleteDBCluster)++instance Core.AWSRequest DeleteDBCluster where+ type+ AWSResponse DeleteDBCluster =+ DeleteDBClusterResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DeleteDBClusterResult"+ ( \s h x ->+ DeleteDBClusterResponse'+ Prelude.<$> (x Data..@? "DBCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteDBCluster where+ hashWithSalt _salt DeleteDBCluster' {..} =+ _salt+ `Prelude.hashWithSalt` finalDBSnapshotIdentifier+ `Prelude.hashWithSalt` skipFinalSnapshot+ `Prelude.hashWithSalt` dbClusterIdentifier++instance Prelude.NFData DeleteDBCluster where+ rnf DeleteDBCluster' {..} =+ Prelude.rnf finalDBSnapshotIdentifier+ `Prelude.seq` Prelude.rnf skipFinalSnapshot+ `Prelude.seq` Prelude.rnf dbClusterIdentifier++instance Data.ToHeaders DeleteDBCluster where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteDBCluster where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteDBCluster where+ toQuery DeleteDBCluster' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteDBCluster" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "FinalDBSnapshotIdentifier"+ Data.=: finalDBSnapshotIdentifier,+ "SkipFinalSnapshot" Data.=: skipFinalSnapshot,+ "DBClusterIdentifier" Data.=: dbClusterIdentifier+ ]++-- | /See:/ 'newDeleteDBClusterResponse' smart constructor.+data DeleteDBClusterResponse = DeleteDBClusterResponse'+ { dbCluster :: Prelude.Maybe DBCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDBClusterResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbCluster', 'deleteDBClusterResponse_dbCluster' - Undocumented member.+--+-- 'httpStatus', 'deleteDBClusterResponse_httpStatus' - The response's http status code.+newDeleteDBClusterResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteDBClusterResponse+newDeleteDBClusterResponse pHttpStatus_ =+ DeleteDBClusterResponse'+ { dbCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+deleteDBClusterResponse_dbCluster :: Lens.Lens' DeleteDBClusterResponse (Prelude.Maybe DBCluster)+deleteDBClusterResponse_dbCluster = Lens.lens (\DeleteDBClusterResponse' {dbCluster} -> dbCluster) (\s@DeleteDBClusterResponse' {} a -> s {dbCluster = a} :: DeleteDBClusterResponse)++-- | The response's http status code.+deleteDBClusterResponse_httpStatus :: Lens.Lens' DeleteDBClusterResponse Prelude.Int+deleteDBClusterResponse_httpStatus = Lens.lens (\DeleteDBClusterResponse' {httpStatus} -> httpStatus) (\s@DeleteDBClusterResponse' {} a -> s {httpStatus = a} :: DeleteDBClusterResponse)++instance Prelude.NFData DeleteDBClusterResponse where+ rnf DeleteDBClusterResponse' {..} =+ Prelude.rnf dbCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DeleteDBClusterParameterGroup.hs view
@@ -0,0 +1,167 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DeleteDBClusterParameterGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a specified cluster parameter group. The cluster parameter group+-- to be deleted can\'t be associated with any clusters.+module Amazonka.DocumentDB.DeleteDBClusterParameterGroup+ ( -- * Creating a Request+ DeleteDBClusterParameterGroup (..),+ newDeleteDBClusterParameterGroup,++ -- * Request Lenses+ deleteDBClusterParameterGroup_dbClusterParameterGroupName,++ -- * Destructuring the Response+ DeleteDBClusterParameterGroupResponse (..),+ newDeleteDBClusterParameterGroupResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DeleteDBClusterParameterGroup.+--+-- /See:/ 'newDeleteDBClusterParameterGroup' smart constructor.+data DeleteDBClusterParameterGroup = DeleteDBClusterParameterGroup'+ { -- | The name of the cluster parameter group.+ --+ -- Constraints:+ --+ -- - Must be the name of an existing cluster parameter group.+ --+ -- - You can\'t delete a default cluster parameter group.+ --+ -- - Cannot be associated with any clusters.+ dbClusterParameterGroupName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDBClusterParameterGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterParameterGroupName', 'deleteDBClusterParameterGroup_dbClusterParameterGroupName' - The name of the cluster parameter group.+--+-- Constraints:+--+-- - Must be the name of an existing cluster parameter group.+--+-- - You can\'t delete a default cluster parameter group.+--+-- - Cannot be associated with any clusters.+newDeleteDBClusterParameterGroup ::+ -- | 'dbClusterParameterGroupName'+ Prelude.Text ->+ DeleteDBClusterParameterGroup+newDeleteDBClusterParameterGroup+ pDBClusterParameterGroupName_ =+ DeleteDBClusterParameterGroup'+ { dbClusterParameterGroupName =+ pDBClusterParameterGroupName_+ }++-- | The name of the cluster parameter group.+--+-- Constraints:+--+-- - Must be the name of an existing cluster parameter group.+--+-- - You can\'t delete a default cluster parameter group.+--+-- - Cannot be associated with any clusters.+deleteDBClusterParameterGroup_dbClusterParameterGroupName :: Lens.Lens' DeleteDBClusterParameterGroup Prelude.Text+deleteDBClusterParameterGroup_dbClusterParameterGroupName = Lens.lens (\DeleteDBClusterParameterGroup' {dbClusterParameterGroupName} -> dbClusterParameterGroupName) (\s@DeleteDBClusterParameterGroup' {} a -> s {dbClusterParameterGroupName = a} :: DeleteDBClusterParameterGroup)++instance+ Core.AWSRequest+ DeleteDBClusterParameterGroup+ where+ type+ AWSResponse DeleteDBClusterParameterGroup =+ DeleteDBClusterParameterGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ DeleteDBClusterParameterGroupResponse'++instance+ Prelude.Hashable+ DeleteDBClusterParameterGroup+ where+ hashWithSalt _salt DeleteDBClusterParameterGroup' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterParameterGroupName++instance Prelude.NFData DeleteDBClusterParameterGroup where+ rnf DeleteDBClusterParameterGroup' {..} =+ Prelude.rnf dbClusterParameterGroupName++instance Data.ToHeaders DeleteDBClusterParameterGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteDBClusterParameterGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteDBClusterParameterGroup where+ toQuery DeleteDBClusterParameterGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DeleteDBClusterParameterGroup" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBClusterParameterGroupName"+ Data.=: dbClusterParameterGroupName+ ]++-- | /See:/ 'newDeleteDBClusterParameterGroupResponse' smart constructor.+data DeleteDBClusterParameterGroupResponse = DeleteDBClusterParameterGroupResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDBClusterParameterGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteDBClusterParameterGroupResponse ::+ DeleteDBClusterParameterGroupResponse+newDeleteDBClusterParameterGroupResponse =+ DeleteDBClusterParameterGroupResponse'++instance+ Prelude.NFData+ DeleteDBClusterParameterGroupResponse+ where+ rnf _ = ()
+ gen/Amazonka/DocumentDB/DeleteDBClusterSnapshot.hs view
@@ -0,0 +1,180 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DeleteDBClusterSnapshot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a cluster snapshot. If the snapshot is being copied, the copy+-- operation is terminated.+--+-- The cluster snapshot must be in the @available@ state to be deleted.+module Amazonka.DocumentDB.DeleteDBClusterSnapshot+ ( -- * Creating a Request+ DeleteDBClusterSnapshot (..),+ newDeleteDBClusterSnapshot,++ -- * Request Lenses+ deleteDBClusterSnapshot_dbClusterSnapshotIdentifier,++ -- * Destructuring the Response+ DeleteDBClusterSnapshotResponse (..),+ newDeleteDBClusterSnapshotResponse,++ -- * Response Lenses+ deleteDBClusterSnapshotResponse_dbClusterSnapshot,+ deleteDBClusterSnapshotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DeleteDBClusterSnapshot.+--+-- /See:/ 'newDeleteDBClusterSnapshot' smart constructor.+data DeleteDBClusterSnapshot = DeleteDBClusterSnapshot'+ { -- | The identifier of the cluster snapshot to delete.+ --+ -- Constraints: Must be the name of an existing cluster snapshot in the+ -- @available@ state.+ dbClusterSnapshotIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDBClusterSnapshot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterSnapshotIdentifier', 'deleteDBClusterSnapshot_dbClusterSnapshotIdentifier' - The identifier of the cluster snapshot to delete.+--+-- Constraints: Must be the name of an existing cluster snapshot in the+-- @available@ state.+newDeleteDBClusterSnapshot ::+ -- | 'dbClusterSnapshotIdentifier'+ Prelude.Text ->+ DeleteDBClusterSnapshot+newDeleteDBClusterSnapshot+ pDBClusterSnapshotIdentifier_ =+ DeleteDBClusterSnapshot'+ { dbClusterSnapshotIdentifier =+ pDBClusterSnapshotIdentifier_+ }++-- | The identifier of the cluster snapshot to delete.+--+-- Constraints: Must be the name of an existing cluster snapshot in the+-- @available@ state.+deleteDBClusterSnapshot_dbClusterSnapshotIdentifier :: Lens.Lens' DeleteDBClusterSnapshot Prelude.Text+deleteDBClusterSnapshot_dbClusterSnapshotIdentifier = Lens.lens (\DeleteDBClusterSnapshot' {dbClusterSnapshotIdentifier} -> dbClusterSnapshotIdentifier) (\s@DeleteDBClusterSnapshot' {} a -> s {dbClusterSnapshotIdentifier = a} :: DeleteDBClusterSnapshot)++instance Core.AWSRequest DeleteDBClusterSnapshot where+ type+ AWSResponse DeleteDBClusterSnapshot =+ DeleteDBClusterSnapshotResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DeleteDBClusterSnapshotResult"+ ( \s h x ->+ DeleteDBClusterSnapshotResponse'+ Prelude.<$> (x Data..@? "DBClusterSnapshot")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteDBClusterSnapshot where+ hashWithSalt _salt DeleteDBClusterSnapshot' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterSnapshotIdentifier++instance Prelude.NFData DeleteDBClusterSnapshot where+ rnf DeleteDBClusterSnapshot' {..} =+ Prelude.rnf dbClusterSnapshotIdentifier++instance Data.ToHeaders DeleteDBClusterSnapshot where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteDBClusterSnapshot where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteDBClusterSnapshot where+ toQuery DeleteDBClusterSnapshot' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteDBClusterSnapshot" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBClusterSnapshotIdentifier"+ Data.=: dbClusterSnapshotIdentifier+ ]++-- | /See:/ 'newDeleteDBClusterSnapshotResponse' smart constructor.+data DeleteDBClusterSnapshotResponse = DeleteDBClusterSnapshotResponse'+ { dbClusterSnapshot :: Prelude.Maybe DBClusterSnapshot,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDBClusterSnapshotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterSnapshot', 'deleteDBClusterSnapshotResponse_dbClusterSnapshot' - Undocumented member.+--+-- 'httpStatus', 'deleteDBClusterSnapshotResponse_httpStatus' - The response's http status code.+newDeleteDBClusterSnapshotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteDBClusterSnapshotResponse+newDeleteDBClusterSnapshotResponse pHttpStatus_ =+ DeleteDBClusterSnapshotResponse'+ { dbClusterSnapshot =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+deleteDBClusterSnapshotResponse_dbClusterSnapshot :: Lens.Lens' DeleteDBClusterSnapshotResponse (Prelude.Maybe DBClusterSnapshot)+deleteDBClusterSnapshotResponse_dbClusterSnapshot = Lens.lens (\DeleteDBClusterSnapshotResponse' {dbClusterSnapshot} -> dbClusterSnapshot) (\s@DeleteDBClusterSnapshotResponse' {} a -> s {dbClusterSnapshot = a} :: DeleteDBClusterSnapshotResponse)++-- | The response's http status code.+deleteDBClusterSnapshotResponse_httpStatus :: Lens.Lens' DeleteDBClusterSnapshotResponse Prelude.Int+deleteDBClusterSnapshotResponse_httpStatus = Lens.lens (\DeleteDBClusterSnapshotResponse' {httpStatus} -> httpStatus) (\s@DeleteDBClusterSnapshotResponse' {} a -> s {httpStatus = a} :: DeleteDBClusterSnapshotResponse)++instance+ Prelude.NFData+ DeleteDBClusterSnapshotResponse+ where+ rnf DeleteDBClusterSnapshotResponse' {..} =+ Prelude.rnf dbClusterSnapshot+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DeleteDBInstance.hs view
@@ -0,0 +1,177 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DeleteDBInstance+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a previously provisioned instance.+module Amazonka.DocumentDB.DeleteDBInstance+ ( -- * Creating a Request+ DeleteDBInstance (..),+ newDeleteDBInstance,++ -- * Request Lenses+ deleteDBInstance_dbInstanceIdentifier,++ -- * Destructuring the Response+ DeleteDBInstanceResponse (..),+ newDeleteDBInstanceResponse,++ -- * Response Lenses+ deleteDBInstanceResponse_dbInstance,+ deleteDBInstanceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DeleteDBInstance.+--+-- /See:/ 'newDeleteDBInstance' smart constructor.+data DeleteDBInstance = DeleteDBInstance'+ { -- | The instance identifier for the instance to be deleted. This parameter+ -- isn\'t case sensitive.+ --+ -- Constraints:+ --+ -- - Must match the name of an existing instance.+ dbInstanceIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDBInstance' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbInstanceIdentifier', 'deleteDBInstance_dbInstanceIdentifier' - The instance identifier for the instance to be deleted. This parameter+-- isn\'t case sensitive.+--+-- Constraints:+--+-- - Must match the name of an existing instance.+newDeleteDBInstance ::+ -- | 'dbInstanceIdentifier'+ Prelude.Text ->+ DeleteDBInstance+newDeleteDBInstance pDBInstanceIdentifier_ =+ DeleteDBInstance'+ { dbInstanceIdentifier =+ pDBInstanceIdentifier_+ }++-- | The instance identifier for the instance to be deleted. This parameter+-- isn\'t case sensitive.+--+-- Constraints:+--+-- - Must match the name of an existing instance.+deleteDBInstance_dbInstanceIdentifier :: Lens.Lens' DeleteDBInstance Prelude.Text+deleteDBInstance_dbInstanceIdentifier = Lens.lens (\DeleteDBInstance' {dbInstanceIdentifier} -> dbInstanceIdentifier) (\s@DeleteDBInstance' {} a -> s {dbInstanceIdentifier = a} :: DeleteDBInstance)++instance Core.AWSRequest DeleteDBInstance where+ type+ AWSResponse DeleteDBInstance =+ DeleteDBInstanceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DeleteDBInstanceResult"+ ( \s h x ->+ DeleteDBInstanceResponse'+ Prelude.<$> (x Data..@? "DBInstance")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteDBInstance where+ hashWithSalt _salt DeleteDBInstance' {..} =+ _salt `Prelude.hashWithSalt` dbInstanceIdentifier++instance Prelude.NFData DeleteDBInstance where+ rnf DeleteDBInstance' {..} =+ Prelude.rnf dbInstanceIdentifier++instance Data.ToHeaders DeleteDBInstance where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteDBInstance where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteDBInstance where+ toQuery DeleteDBInstance' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteDBInstance" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBInstanceIdentifier" Data.=: dbInstanceIdentifier+ ]++-- | /See:/ 'newDeleteDBInstanceResponse' smart constructor.+data DeleteDBInstanceResponse = DeleteDBInstanceResponse'+ { dbInstance :: Prelude.Maybe DBInstance,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDBInstanceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbInstance', 'deleteDBInstanceResponse_dbInstance' - Undocumented member.+--+-- 'httpStatus', 'deleteDBInstanceResponse_httpStatus' - The response's http status code.+newDeleteDBInstanceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteDBInstanceResponse+newDeleteDBInstanceResponse pHttpStatus_ =+ DeleteDBInstanceResponse'+ { dbInstance =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+deleteDBInstanceResponse_dbInstance :: Lens.Lens' DeleteDBInstanceResponse (Prelude.Maybe DBInstance)+deleteDBInstanceResponse_dbInstance = Lens.lens (\DeleteDBInstanceResponse' {dbInstance} -> dbInstance) (\s@DeleteDBInstanceResponse' {} a -> s {dbInstance = a} :: DeleteDBInstanceResponse)++-- | The response's http status code.+deleteDBInstanceResponse_httpStatus :: Lens.Lens' DeleteDBInstanceResponse Prelude.Int+deleteDBInstanceResponse_httpStatus = Lens.lens (\DeleteDBInstanceResponse' {httpStatus} -> httpStatus) (\s@DeleteDBInstanceResponse' {} a -> s {httpStatus = a} :: DeleteDBInstanceResponse)++instance Prelude.NFData DeleteDBInstanceResponse where+ rnf DeleteDBInstanceResponse' {..} =+ Prelude.rnf dbInstance+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DeleteDBSubnetGroup.hs view
@@ -0,0 +1,154 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DeleteDBSubnetGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a subnet group.+--+-- The specified database subnet group must not be associated with any DB+-- instances.+module Amazonka.DocumentDB.DeleteDBSubnetGroup+ ( -- * Creating a Request+ DeleteDBSubnetGroup (..),+ newDeleteDBSubnetGroup,++ -- * Request Lenses+ deleteDBSubnetGroup_dbSubnetGroupName,++ -- * Destructuring the Response+ DeleteDBSubnetGroupResponse (..),+ newDeleteDBSubnetGroupResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DeleteDBSubnetGroup.+--+-- /See:/ 'newDeleteDBSubnetGroup' smart constructor.+data DeleteDBSubnetGroup = DeleteDBSubnetGroup'+ { -- | The name of the database subnet group to delete.+ --+ -- You can\'t delete the default subnet group.+ --+ -- Constraints:+ --+ -- Must match the name of an existing @DBSubnetGroup@. Must not be default.+ --+ -- Example: @mySubnetgroup@+ dbSubnetGroupName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDBSubnetGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbSubnetGroupName', 'deleteDBSubnetGroup_dbSubnetGroupName' - The name of the database subnet group to delete.+--+-- You can\'t delete the default subnet group.+--+-- Constraints:+--+-- Must match the name of an existing @DBSubnetGroup@. Must not be default.+--+-- Example: @mySubnetgroup@+newDeleteDBSubnetGroup ::+ -- | 'dbSubnetGroupName'+ Prelude.Text ->+ DeleteDBSubnetGroup+newDeleteDBSubnetGroup pDBSubnetGroupName_ =+ DeleteDBSubnetGroup'+ { dbSubnetGroupName =+ pDBSubnetGroupName_+ }++-- | The name of the database subnet group to delete.+--+-- You can\'t delete the default subnet group.+--+-- Constraints:+--+-- Must match the name of an existing @DBSubnetGroup@. Must not be default.+--+-- Example: @mySubnetgroup@+deleteDBSubnetGroup_dbSubnetGroupName :: Lens.Lens' DeleteDBSubnetGroup Prelude.Text+deleteDBSubnetGroup_dbSubnetGroupName = Lens.lens (\DeleteDBSubnetGroup' {dbSubnetGroupName} -> dbSubnetGroupName) (\s@DeleteDBSubnetGroup' {} a -> s {dbSubnetGroupName = a} :: DeleteDBSubnetGroup)++instance Core.AWSRequest DeleteDBSubnetGroup where+ type+ AWSResponse DeleteDBSubnetGroup =+ DeleteDBSubnetGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeleteDBSubnetGroupResponse'++instance Prelude.Hashable DeleteDBSubnetGroup where+ hashWithSalt _salt DeleteDBSubnetGroup' {..} =+ _salt `Prelude.hashWithSalt` dbSubnetGroupName++instance Prelude.NFData DeleteDBSubnetGroup where+ rnf DeleteDBSubnetGroup' {..} =+ Prelude.rnf dbSubnetGroupName++instance Data.ToHeaders DeleteDBSubnetGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteDBSubnetGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteDBSubnetGroup where+ toQuery DeleteDBSubnetGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteDBSubnetGroup" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBSubnetGroupName" Data.=: dbSubnetGroupName+ ]++-- | /See:/ 'newDeleteDBSubnetGroupResponse' smart constructor.+data DeleteDBSubnetGroupResponse = DeleteDBSubnetGroupResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDBSubnetGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteDBSubnetGroupResponse ::+ DeleteDBSubnetGroupResponse+newDeleteDBSubnetGroupResponse =+ DeleteDBSubnetGroupResponse'++instance Prelude.NFData DeleteDBSubnetGroupResponse where+ rnf _ = ()
+ gen/Amazonka/DocumentDB/DeleteEventSubscription.hs view
@@ -0,0 +1,168 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DeleteEventSubscription+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes an Amazon DocumentDB event notification subscription.+module Amazonka.DocumentDB.DeleteEventSubscription+ ( -- * Creating a Request+ DeleteEventSubscription (..),+ newDeleteEventSubscription,++ -- * Request Lenses+ deleteEventSubscription_subscriptionName,++ -- * Destructuring the Response+ DeleteEventSubscriptionResponse (..),+ newDeleteEventSubscriptionResponse,++ -- * Response Lenses+ deleteEventSubscriptionResponse_eventSubscription,+ deleteEventSubscriptionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DeleteEventSubscription.+--+-- /See:/ 'newDeleteEventSubscription' smart constructor.+data DeleteEventSubscription = DeleteEventSubscription'+ { -- | The name of the Amazon DocumentDB event notification subscription that+ -- you want to delete.+ subscriptionName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEventSubscription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'subscriptionName', 'deleteEventSubscription_subscriptionName' - The name of the Amazon DocumentDB event notification subscription that+-- you want to delete.+newDeleteEventSubscription ::+ -- | 'subscriptionName'+ Prelude.Text ->+ DeleteEventSubscription+newDeleteEventSubscription pSubscriptionName_ =+ DeleteEventSubscription'+ { subscriptionName =+ pSubscriptionName_+ }++-- | The name of the Amazon DocumentDB event notification subscription that+-- you want to delete.+deleteEventSubscription_subscriptionName :: Lens.Lens' DeleteEventSubscription Prelude.Text+deleteEventSubscription_subscriptionName = Lens.lens (\DeleteEventSubscription' {subscriptionName} -> subscriptionName) (\s@DeleteEventSubscription' {} a -> s {subscriptionName = a} :: DeleteEventSubscription)++instance Core.AWSRequest DeleteEventSubscription where+ type+ AWSResponse DeleteEventSubscription =+ DeleteEventSubscriptionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DeleteEventSubscriptionResult"+ ( \s h x ->+ DeleteEventSubscriptionResponse'+ Prelude.<$> (x Data..@? "EventSubscription")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteEventSubscription where+ hashWithSalt _salt DeleteEventSubscription' {..} =+ _salt `Prelude.hashWithSalt` subscriptionName++instance Prelude.NFData DeleteEventSubscription where+ rnf DeleteEventSubscription' {..} =+ Prelude.rnf subscriptionName++instance Data.ToHeaders DeleteEventSubscription where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteEventSubscription where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteEventSubscription where+ toQuery DeleteEventSubscription' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteEventSubscription" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "SubscriptionName" Data.=: subscriptionName+ ]++-- | /See:/ 'newDeleteEventSubscriptionResponse' smart constructor.+data DeleteEventSubscriptionResponse = DeleteEventSubscriptionResponse'+ { eventSubscription :: Prelude.Maybe EventSubscription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEventSubscriptionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventSubscription', 'deleteEventSubscriptionResponse_eventSubscription' - Undocumented member.+--+-- 'httpStatus', 'deleteEventSubscriptionResponse_httpStatus' - The response's http status code.+newDeleteEventSubscriptionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteEventSubscriptionResponse+newDeleteEventSubscriptionResponse pHttpStatus_ =+ DeleteEventSubscriptionResponse'+ { eventSubscription =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+deleteEventSubscriptionResponse_eventSubscription :: Lens.Lens' DeleteEventSubscriptionResponse (Prelude.Maybe EventSubscription)+deleteEventSubscriptionResponse_eventSubscription = Lens.lens (\DeleteEventSubscriptionResponse' {eventSubscription} -> eventSubscription) (\s@DeleteEventSubscriptionResponse' {} a -> s {eventSubscription = a} :: DeleteEventSubscriptionResponse)++-- | The response's http status code.+deleteEventSubscriptionResponse_httpStatus :: Lens.Lens' DeleteEventSubscriptionResponse Prelude.Int+deleteEventSubscriptionResponse_httpStatus = Lens.lens (\DeleteEventSubscriptionResponse' {httpStatus} -> httpStatus) (\s@DeleteEventSubscriptionResponse' {} a -> s {httpStatus = a} :: DeleteEventSubscriptionResponse)++instance+ Prelude.NFData+ DeleteEventSubscriptionResponse+ where+ rnf DeleteEventSubscriptionResponse' {..} =+ Prelude.rnf eventSubscription+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DeleteGlobalCluster.hs view
@@ -0,0 +1,168 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DeleteGlobalCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a global cluster. The primary and secondary clusters must+-- already be detached or deleted before attempting to delete a global+-- cluster.+--+-- This action only applies to Amazon DocumentDB clusters.+module Amazonka.DocumentDB.DeleteGlobalCluster+ ( -- * Creating a Request+ DeleteGlobalCluster (..),+ newDeleteGlobalCluster,++ -- * Request Lenses+ deleteGlobalCluster_globalClusterIdentifier,++ -- * Destructuring the Response+ DeleteGlobalClusterResponse (..),+ newDeleteGlobalClusterResponse,++ -- * Response Lenses+ deleteGlobalClusterResponse_globalCluster,+ deleteGlobalClusterResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DeleteGlobalCluster.+--+-- /See:/ 'newDeleteGlobalCluster' smart constructor.+data DeleteGlobalCluster = DeleteGlobalCluster'+ { -- | The cluster identifier of the global cluster being deleted.+ globalClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteGlobalCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'globalClusterIdentifier', 'deleteGlobalCluster_globalClusterIdentifier' - The cluster identifier of the global cluster being deleted.+newDeleteGlobalCluster ::+ -- | 'globalClusterIdentifier'+ Prelude.Text ->+ DeleteGlobalCluster+newDeleteGlobalCluster pGlobalClusterIdentifier_ =+ DeleteGlobalCluster'+ { globalClusterIdentifier =+ pGlobalClusterIdentifier_+ }++-- | The cluster identifier of the global cluster being deleted.+deleteGlobalCluster_globalClusterIdentifier :: Lens.Lens' DeleteGlobalCluster Prelude.Text+deleteGlobalCluster_globalClusterIdentifier = Lens.lens (\DeleteGlobalCluster' {globalClusterIdentifier} -> globalClusterIdentifier) (\s@DeleteGlobalCluster' {} a -> s {globalClusterIdentifier = a} :: DeleteGlobalCluster)++instance Core.AWSRequest DeleteGlobalCluster where+ type+ AWSResponse DeleteGlobalCluster =+ DeleteGlobalClusterResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DeleteGlobalClusterResult"+ ( \s h x ->+ DeleteGlobalClusterResponse'+ Prelude.<$> (x Data..@? "GlobalCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteGlobalCluster where+ hashWithSalt _salt DeleteGlobalCluster' {..} =+ _salt+ `Prelude.hashWithSalt` globalClusterIdentifier++instance Prelude.NFData DeleteGlobalCluster where+ rnf DeleteGlobalCluster' {..} =+ Prelude.rnf globalClusterIdentifier++instance Data.ToHeaders DeleteGlobalCluster where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteGlobalCluster where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteGlobalCluster where+ toQuery DeleteGlobalCluster' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteGlobalCluster" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "GlobalClusterIdentifier"+ Data.=: globalClusterIdentifier+ ]++-- | /See:/ 'newDeleteGlobalClusterResponse' smart constructor.+data DeleteGlobalClusterResponse = DeleteGlobalClusterResponse'+ { globalCluster :: Prelude.Maybe GlobalCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteGlobalClusterResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'globalCluster', 'deleteGlobalClusterResponse_globalCluster' - Undocumented member.+--+-- 'httpStatus', 'deleteGlobalClusterResponse_httpStatus' - The response's http status code.+newDeleteGlobalClusterResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteGlobalClusterResponse+newDeleteGlobalClusterResponse pHttpStatus_ =+ DeleteGlobalClusterResponse'+ { globalCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+deleteGlobalClusterResponse_globalCluster :: Lens.Lens' DeleteGlobalClusterResponse (Prelude.Maybe GlobalCluster)+deleteGlobalClusterResponse_globalCluster = Lens.lens (\DeleteGlobalClusterResponse' {globalCluster} -> globalCluster) (\s@DeleteGlobalClusterResponse' {} a -> s {globalCluster = a} :: DeleteGlobalClusterResponse)++-- | The response's http status code.+deleteGlobalClusterResponse_httpStatus :: Lens.Lens' DeleteGlobalClusterResponse Prelude.Int+deleteGlobalClusterResponse_httpStatus = Lens.lens (\DeleteGlobalClusterResponse' {httpStatus} -> httpStatus) (\s@DeleteGlobalClusterResponse' {} a -> s {httpStatus = a} :: DeleteGlobalClusterResponse)++instance Prelude.NFData DeleteGlobalClusterResponse where+ rnf DeleteGlobalClusterResponse' {..} =+ Prelude.rnf globalCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeCertificates.hs view
@@ -0,0 +1,318 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeCertificates+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of certificate authority (CA) certificates provided by+-- Amazon DocumentDB for this Amazon Web Services account.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeCertificates+ ( -- * Creating a Request+ DescribeCertificates (..),+ newDescribeCertificates,++ -- * Request Lenses+ describeCertificates_certificateIdentifier,+ describeCertificates_filters,+ describeCertificates_marker,+ describeCertificates_maxRecords,++ -- * Destructuring the Response+ DescribeCertificatesResponse (..),+ newDescribeCertificatesResponse,++ -- * Response Lenses+ describeCertificatesResponse_certificates,+ describeCertificatesResponse_marker,+ describeCertificatesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeCertificates' smart constructor.+data DescribeCertificates = DescribeCertificates'+ { -- | The user-supplied certificate identifier. If this parameter is+ -- specified, information for only the specified certificate is returned.+ -- If this parameter is omitted, a list of up to @MaxRecords@ certificates+ -- is returned. This parameter is not case sensitive.+ --+ -- Constraints+ --+ -- - Must match an existing @CertificateIdentifier@.+ certificateIdentifier :: Prelude.Maybe Prelude.Text,+ -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | An optional pagination token provided by a previous+ -- @DescribeCertificates@ request. If this parameter is specified, the+ -- response includes only records beyond the marker, up to the value+ -- specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- called a marker is included in the response so that the remaining+ -- results can be retrieved.+ --+ -- Default: 100+ --+ -- Constraints:+ --+ -- - Minimum: 20+ --+ -- - Maximum: 100+ maxRecords :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeCertificates' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'certificateIdentifier', 'describeCertificates_certificateIdentifier' - The user-supplied certificate identifier. If this parameter is+-- specified, information for only the specified certificate is returned.+-- If this parameter is omitted, a list of up to @MaxRecords@ certificates+-- is returned. This parameter is not case sensitive.+--+-- Constraints+--+-- - Must match an existing @CertificateIdentifier@.+--+-- 'filters', 'describeCertificates_filters' - This parameter is not currently supported.+--+-- 'marker', 'describeCertificates_marker' - An optional pagination token provided by a previous+-- @DescribeCertificates@ request. If this parameter is specified, the+-- response includes only records beyond the marker, up to the value+-- specified by @MaxRecords@.+--+-- 'maxRecords', 'describeCertificates_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- called a marker is included in the response so that the remaining+-- results can be retrieved.+--+-- Default: 100+--+-- Constraints:+--+-- - Minimum: 20+--+-- - Maximum: 100+newDescribeCertificates ::+ DescribeCertificates+newDescribeCertificates =+ DescribeCertificates'+ { certificateIdentifier =+ Prelude.Nothing,+ filters = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing+ }++-- | The user-supplied certificate identifier. If this parameter is+-- specified, information for only the specified certificate is returned.+-- If this parameter is omitted, a list of up to @MaxRecords@ certificates+-- is returned. This parameter is not case sensitive.+--+-- Constraints+--+-- - Must match an existing @CertificateIdentifier@.+describeCertificates_certificateIdentifier :: Lens.Lens' DescribeCertificates (Prelude.Maybe Prelude.Text)+describeCertificates_certificateIdentifier = Lens.lens (\DescribeCertificates' {certificateIdentifier} -> certificateIdentifier) (\s@DescribeCertificates' {} a -> s {certificateIdentifier = a} :: DescribeCertificates)++-- | This parameter is not currently supported.+describeCertificates_filters :: Lens.Lens' DescribeCertificates (Prelude.Maybe [Filter])+describeCertificates_filters = Lens.lens (\DescribeCertificates' {filters} -> filters) (\s@DescribeCertificates' {} a -> s {filters = a} :: DescribeCertificates) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous+-- @DescribeCertificates@ request. If this parameter is specified, the+-- response includes only records beyond the marker, up to the value+-- specified by @MaxRecords@.+describeCertificates_marker :: Lens.Lens' DescribeCertificates (Prelude.Maybe Prelude.Text)+describeCertificates_marker = Lens.lens (\DescribeCertificates' {marker} -> marker) (\s@DescribeCertificates' {} a -> s {marker = a} :: DescribeCertificates)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- called a marker is included in the response so that the remaining+-- results can be retrieved.+--+-- Default: 100+--+-- Constraints:+--+-- - Minimum: 20+--+-- - Maximum: 100+describeCertificates_maxRecords :: Lens.Lens' DescribeCertificates (Prelude.Maybe Prelude.Int)+describeCertificates_maxRecords = Lens.lens (\DescribeCertificates' {maxRecords} -> maxRecords) (\s@DescribeCertificates' {} a -> s {maxRecords = a} :: DescribeCertificates)++instance Core.AWSPager DescribeCertificates where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeCertificatesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeCertificatesResponse_certificates+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeCertificates_marker+ Lens..~ rs+ Lens.^? describeCertificatesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeCertificates where+ type+ AWSResponse DescribeCertificates =+ DescribeCertificatesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeCertificatesResult"+ ( \s h x ->+ DescribeCertificatesResponse'+ Prelude.<$> ( x+ Data..@? "Certificates"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "Certificate")+ )+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeCertificates where+ hashWithSalt _salt DescribeCertificates' {..} =+ _salt+ `Prelude.hashWithSalt` certificateIdentifier+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords++instance Prelude.NFData DescribeCertificates where+ rnf DescribeCertificates' {..} =+ Prelude.rnf certificateIdentifier+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords++instance Data.ToHeaders DescribeCertificates where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeCertificates where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeCertificates where+ toQuery DescribeCertificates' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DescribeCertificates" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "CertificateIdentifier"+ Data.=: certificateIdentifier,+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords+ ]++-- | /See:/ 'newDescribeCertificatesResponse' smart constructor.+data DescribeCertificatesResponse = DescribeCertificatesResponse'+ { -- | A list of certificates for this Amazon Web Services account.+ certificates :: Prelude.Maybe [Certificate],+ -- | An optional pagination token provided if the number of records retrieved+ -- is greater than @MaxRecords@. If this parameter is specified, the marker+ -- specifies the next record in the list. Including the value of @Marker@+ -- in the next call to @DescribeCertificates@ results in the next page of+ -- certificates.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeCertificatesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'certificates', 'describeCertificatesResponse_certificates' - A list of certificates for this Amazon Web Services account.+--+-- 'marker', 'describeCertificatesResponse_marker' - An optional pagination token provided if the number of records retrieved+-- is greater than @MaxRecords@. If this parameter is specified, the marker+-- specifies the next record in the list. Including the value of @Marker@+-- in the next call to @DescribeCertificates@ results in the next page of+-- certificates.+--+-- 'httpStatus', 'describeCertificatesResponse_httpStatus' - The response's http status code.+newDescribeCertificatesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeCertificatesResponse+newDescribeCertificatesResponse pHttpStatus_ =+ DescribeCertificatesResponse'+ { certificates =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of certificates for this Amazon Web Services account.+describeCertificatesResponse_certificates :: Lens.Lens' DescribeCertificatesResponse (Prelude.Maybe [Certificate])+describeCertificatesResponse_certificates = Lens.lens (\DescribeCertificatesResponse' {certificates} -> certificates) (\s@DescribeCertificatesResponse' {} a -> s {certificates = a} :: DescribeCertificatesResponse) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided if the number of records retrieved+-- is greater than @MaxRecords@. If this parameter is specified, the marker+-- specifies the next record in the list. Including the value of @Marker@+-- in the next call to @DescribeCertificates@ results in the next page of+-- certificates.+describeCertificatesResponse_marker :: Lens.Lens' DescribeCertificatesResponse (Prelude.Maybe Prelude.Text)+describeCertificatesResponse_marker = Lens.lens (\DescribeCertificatesResponse' {marker} -> marker) (\s@DescribeCertificatesResponse' {} a -> s {marker = a} :: DescribeCertificatesResponse)++-- | The response's http status code.+describeCertificatesResponse_httpStatus :: Lens.Lens' DescribeCertificatesResponse Prelude.Int+describeCertificatesResponse_httpStatus = Lens.lens (\DescribeCertificatesResponse' {httpStatus} -> httpStatus) (\s@DescribeCertificatesResponse' {} a -> s {httpStatus = a} :: DescribeCertificatesResponse)++instance Prelude.NFData DescribeCertificatesResponse where+ rnf DescribeCertificatesResponse' {..} =+ Prelude.rnf certificates+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeDBClusterParameterGroups.hs view
@@ -0,0 +1,323 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeDBClusterParameterGroups+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of @DBClusterParameterGroup@ descriptions. If a+-- @DBClusterParameterGroupName@ parameter is specified, the list contains+-- only the description of the specified cluster parameter group.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeDBClusterParameterGroups+ ( -- * Creating a Request+ DescribeDBClusterParameterGroups (..),+ newDescribeDBClusterParameterGroups,++ -- * Request Lenses+ describeDBClusterParameterGroups_dbClusterParameterGroupName,+ describeDBClusterParameterGroups_filters,+ describeDBClusterParameterGroups_marker,+ describeDBClusterParameterGroups_maxRecords,++ -- * Destructuring the Response+ DescribeDBClusterParameterGroupsResponse (..),+ newDescribeDBClusterParameterGroupsResponse,++ -- * Response Lenses+ describeDBClusterParameterGroupsResponse_dbClusterParameterGroups,+ describeDBClusterParameterGroupsResponse_marker,+ describeDBClusterParameterGroupsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeDBClusterParameterGroups.+--+-- /See:/ 'newDescribeDBClusterParameterGroups' smart constructor.+data DescribeDBClusterParameterGroups = DescribeDBClusterParameterGroups'+ { -- | The name of a specific cluster parameter group to return details for.+ --+ -- Constraints:+ --+ -- - If provided, must match the name of an existing+ -- @DBClusterParameterGroup@.+ dbClusterParameterGroupName :: Prelude.Maybe Prelude.Text,+ -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBClusterParameterGroups' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterParameterGroupName', 'describeDBClusterParameterGroups_dbClusterParameterGroupName' - The name of a specific cluster parameter group to return details for.+--+-- Constraints:+--+-- - If provided, must match the name of an existing+-- @DBClusterParameterGroup@.+--+-- 'filters', 'describeDBClusterParameterGroups_filters' - This parameter is not currently supported.+--+-- 'marker', 'describeDBClusterParameterGroups_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeDBClusterParameterGroups_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+newDescribeDBClusterParameterGroups ::+ DescribeDBClusterParameterGroups+newDescribeDBClusterParameterGroups =+ DescribeDBClusterParameterGroups'+ { dbClusterParameterGroupName =+ Prelude.Nothing,+ filters = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing+ }++-- | The name of a specific cluster parameter group to return details for.+--+-- Constraints:+--+-- - If provided, must match the name of an existing+-- @DBClusterParameterGroup@.+describeDBClusterParameterGroups_dbClusterParameterGroupName :: Lens.Lens' DescribeDBClusterParameterGroups (Prelude.Maybe Prelude.Text)+describeDBClusterParameterGroups_dbClusterParameterGroupName = Lens.lens (\DescribeDBClusterParameterGroups' {dbClusterParameterGroupName} -> dbClusterParameterGroupName) (\s@DescribeDBClusterParameterGroups' {} a -> s {dbClusterParameterGroupName = a} :: DescribeDBClusterParameterGroups)++-- | This parameter is not currently supported.+describeDBClusterParameterGroups_filters :: Lens.Lens' DescribeDBClusterParameterGroups (Prelude.Maybe [Filter])+describeDBClusterParameterGroups_filters = Lens.lens (\DescribeDBClusterParameterGroups' {filters} -> filters) (\s@DescribeDBClusterParameterGroups' {} a -> s {filters = a} :: DescribeDBClusterParameterGroups) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBClusterParameterGroups_marker :: Lens.Lens' DescribeDBClusterParameterGroups (Prelude.Maybe Prelude.Text)+describeDBClusterParameterGroups_marker = Lens.lens (\DescribeDBClusterParameterGroups' {marker} -> marker) (\s@DescribeDBClusterParameterGroups' {} a -> s {marker = a} :: DescribeDBClusterParameterGroups)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeDBClusterParameterGroups_maxRecords :: Lens.Lens' DescribeDBClusterParameterGroups (Prelude.Maybe Prelude.Int)+describeDBClusterParameterGroups_maxRecords = Lens.lens (\DescribeDBClusterParameterGroups' {maxRecords} -> maxRecords) (\s@DescribeDBClusterParameterGroups' {} a -> s {maxRecords = a} :: DescribeDBClusterParameterGroups)++instance+ Core.AWSPager+ DescribeDBClusterParameterGroups+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeDBClusterParameterGroupsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeDBClusterParameterGroupsResponse_dbClusterParameterGroups+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeDBClusterParameterGroups_marker+ Lens..~ rs+ Lens.^? describeDBClusterParameterGroupsResponse_marker+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ DescribeDBClusterParameterGroups+ where+ type+ AWSResponse DescribeDBClusterParameterGroups =+ DescribeDBClusterParameterGroupsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeDBClusterParameterGroupsResult"+ ( \s h x ->+ DescribeDBClusterParameterGroupsResponse'+ Prelude.<$> ( x+ Data..@? "DBClusterParameterGroups"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may+ (Data.parseXMLList "DBClusterParameterGroup")+ )+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeDBClusterParameterGroups+ where+ hashWithSalt+ _salt+ DescribeDBClusterParameterGroups' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterParameterGroupName+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords++instance+ Prelude.NFData+ DescribeDBClusterParameterGroups+ where+ rnf DescribeDBClusterParameterGroups' {..} =+ Prelude.rnf dbClusterParameterGroupName+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords++instance+ Data.ToHeaders+ DescribeDBClusterParameterGroups+ where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDBClusterParameterGroups where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DescribeDBClusterParameterGroups+ where+ toQuery DescribeDBClusterParameterGroups' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DescribeDBClusterParameterGroups" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBClusterParameterGroupName"+ Data.=: dbClusterParameterGroupName,+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords+ ]++-- | Represents the output of DBClusterParameterGroups.+--+-- /See:/ 'newDescribeDBClusterParameterGroupsResponse' smart constructor.+data DescribeDBClusterParameterGroupsResponse = DescribeDBClusterParameterGroupsResponse'+ { -- | A list of cluster parameter groups.+ dbClusterParameterGroups :: Prelude.Maybe [DBClusterParameterGroup],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBClusterParameterGroupsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterParameterGroups', 'describeDBClusterParameterGroupsResponse_dbClusterParameterGroups' - A list of cluster parameter groups.+--+-- 'marker', 'describeDBClusterParameterGroupsResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'httpStatus', 'describeDBClusterParameterGroupsResponse_httpStatus' - The response's http status code.+newDescribeDBClusterParameterGroupsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDBClusterParameterGroupsResponse+newDescribeDBClusterParameterGroupsResponse+ pHttpStatus_ =+ DescribeDBClusterParameterGroupsResponse'+ { dbClusterParameterGroups =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of cluster parameter groups.+describeDBClusterParameterGroupsResponse_dbClusterParameterGroups :: Lens.Lens' DescribeDBClusterParameterGroupsResponse (Prelude.Maybe [DBClusterParameterGroup])+describeDBClusterParameterGroupsResponse_dbClusterParameterGroups = Lens.lens (\DescribeDBClusterParameterGroupsResponse' {dbClusterParameterGroups} -> dbClusterParameterGroups) (\s@DescribeDBClusterParameterGroupsResponse' {} a -> s {dbClusterParameterGroups = a} :: DescribeDBClusterParameterGroupsResponse) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBClusterParameterGroupsResponse_marker :: Lens.Lens' DescribeDBClusterParameterGroupsResponse (Prelude.Maybe Prelude.Text)+describeDBClusterParameterGroupsResponse_marker = Lens.lens (\DescribeDBClusterParameterGroupsResponse' {marker} -> marker) (\s@DescribeDBClusterParameterGroupsResponse' {} a -> s {marker = a} :: DescribeDBClusterParameterGroupsResponse)++-- | The response's http status code.+describeDBClusterParameterGroupsResponse_httpStatus :: Lens.Lens' DescribeDBClusterParameterGroupsResponse Prelude.Int+describeDBClusterParameterGroupsResponse_httpStatus = Lens.lens (\DescribeDBClusterParameterGroupsResponse' {httpStatus} -> httpStatus) (\s@DescribeDBClusterParameterGroupsResponse' {} a -> s {httpStatus = a} :: DescribeDBClusterParameterGroupsResponse)++instance+ Prelude.NFData+ DescribeDBClusterParameterGroupsResponse+ where+ rnf DescribeDBClusterParameterGroupsResponse' {..} =+ Prelude.rnf dbClusterParameterGroups+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeDBClusterParameters.hs view
@@ -0,0 +1,323 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeDBClusterParameters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the detailed parameter list for a particular cluster parameter+-- group.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeDBClusterParameters+ ( -- * Creating a Request+ DescribeDBClusterParameters (..),+ newDescribeDBClusterParameters,++ -- * Request Lenses+ describeDBClusterParameters_filters,+ describeDBClusterParameters_marker,+ describeDBClusterParameters_maxRecords,+ describeDBClusterParameters_source,+ describeDBClusterParameters_dbClusterParameterGroupName,++ -- * Destructuring the Response+ DescribeDBClusterParametersResponse (..),+ newDescribeDBClusterParametersResponse,++ -- * Response Lenses+ describeDBClusterParametersResponse_marker,+ describeDBClusterParametersResponse_parameters,+ describeDBClusterParametersResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeDBClusterParameters.+--+-- /See:/ 'newDescribeDBClusterParameters' smart constructor.+data DescribeDBClusterParameters = DescribeDBClusterParameters'+ { -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int,+ -- | A value that indicates to return only parameters for a specific source.+ -- Parameter sources can be @engine@, @service@, or @customer@.+ source :: Prelude.Maybe Prelude.Text,+ -- | The name of a specific cluster parameter group to return parameter+ -- details for.+ --+ -- Constraints:+ --+ -- - If provided, must match the name of an existing+ -- @DBClusterParameterGroup@.+ dbClusterParameterGroupName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBClusterParameters' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'describeDBClusterParameters_filters' - This parameter is not currently supported.+--+-- 'marker', 'describeDBClusterParameters_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeDBClusterParameters_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+--+-- 'source', 'describeDBClusterParameters_source' - A value that indicates to return only parameters for a specific source.+-- Parameter sources can be @engine@, @service@, or @customer@.+--+-- 'dbClusterParameterGroupName', 'describeDBClusterParameters_dbClusterParameterGroupName' - The name of a specific cluster parameter group to return parameter+-- details for.+--+-- Constraints:+--+-- - If provided, must match the name of an existing+-- @DBClusterParameterGroup@.+newDescribeDBClusterParameters ::+ -- | 'dbClusterParameterGroupName'+ Prelude.Text ->+ DescribeDBClusterParameters+newDescribeDBClusterParameters+ pDBClusterParameterGroupName_ =+ DescribeDBClusterParameters'+ { filters =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing,+ source = Prelude.Nothing,+ dbClusterParameterGroupName =+ pDBClusterParameterGroupName_+ }++-- | This parameter is not currently supported.+describeDBClusterParameters_filters :: Lens.Lens' DescribeDBClusterParameters (Prelude.Maybe [Filter])+describeDBClusterParameters_filters = Lens.lens (\DescribeDBClusterParameters' {filters} -> filters) (\s@DescribeDBClusterParameters' {} a -> s {filters = a} :: DescribeDBClusterParameters) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBClusterParameters_marker :: Lens.Lens' DescribeDBClusterParameters (Prelude.Maybe Prelude.Text)+describeDBClusterParameters_marker = Lens.lens (\DescribeDBClusterParameters' {marker} -> marker) (\s@DescribeDBClusterParameters' {} a -> s {marker = a} :: DescribeDBClusterParameters)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeDBClusterParameters_maxRecords :: Lens.Lens' DescribeDBClusterParameters (Prelude.Maybe Prelude.Int)+describeDBClusterParameters_maxRecords = Lens.lens (\DescribeDBClusterParameters' {maxRecords} -> maxRecords) (\s@DescribeDBClusterParameters' {} a -> s {maxRecords = a} :: DescribeDBClusterParameters)++-- | A value that indicates to return only parameters for a specific source.+-- Parameter sources can be @engine@, @service@, or @customer@.+describeDBClusterParameters_source :: Lens.Lens' DescribeDBClusterParameters (Prelude.Maybe Prelude.Text)+describeDBClusterParameters_source = Lens.lens (\DescribeDBClusterParameters' {source} -> source) (\s@DescribeDBClusterParameters' {} a -> s {source = a} :: DescribeDBClusterParameters)++-- | The name of a specific cluster parameter group to return parameter+-- details for.+--+-- Constraints:+--+-- - If provided, must match the name of an existing+-- @DBClusterParameterGroup@.+describeDBClusterParameters_dbClusterParameterGroupName :: Lens.Lens' DescribeDBClusterParameters Prelude.Text+describeDBClusterParameters_dbClusterParameterGroupName = Lens.lens (\DescribeDBClusterParameters' {dbClusterParameterGroupName} -> dbClusterParameterGroupName) (\s@DescribeDBClusterParameters' {} a -> s {dbClusterParameterGroupName = a} :: DescribeDBClusterParameters)++instance Core.AWSPager DescribeDBClusterParameters where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeDBClusterParametersResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeDBClusterParametersResponse_parameters+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeDBClusterParameters_marker+ Lens..~ rs+ Lens.^? describeDBClusterParametersResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeDBClusterParameters where+ type+ AWSResponse DescribeDBClusterParameters =+ DescribeDBClusterParametersResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeDBClusterParametersResult"+ ( \s h x ->+ DescribeDBClusterParametersResponse'+ Prelude.<$> (x Data..@? "Marker")+ Prelude.<*> ( x+ Data..@? "Parameters"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "Parameter")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeDBClusterParameters where+ hashWithSalt _salt DescribeDBClusterParameters' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords+ `Prelude.hashWithSalt` source+ `Prelude.hashWithSalt` dbClusterParameterGroupName++instance Prelude.NFData DescribeDBClusterParameters where+ rnf DescribeDBClusterParameters' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords+ `Prelude.seq` Prelude.rnf source+ `Prelude.seq` Prelude.rnf dbClusterParameterGroupName++instance Data.ToHeaders DescribeDBClusterParameters where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDBClusterParameters where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeDBClusterParameters where+ toQuery DescribeDBClusterParameters' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DescribeDBClusterParameters" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords,+ "Source" Data.=: source,+ "DBClusterParameterGroupName"+ Data.=: dbClusterParameterGroupName+ ]++-- | Represents the output of DBClusterParameterGroup.+--+-- /See:/ 'newDescribeDBClusterParametersResponse' smart constructor.+data DescribeDBClusterParametersResponse = DescribeDBClusterParametersResponse'+ { -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Provides a list of parameters for the cluster parameter group.+ parameters :: Prelude.Maybe [Parameter],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBClusterParametersResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'describeDBClusterParametersResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'parameters', 'describeDBClusterParametersResponse_parameters' - Provides a list of parameters for the cluster parameter group.+--+-- 'httpStatus', 'describeDBClusterParametersResponse_httpStatus' - The response's http status code.+newDescribeDBClusterParametersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDBClusterParametersResponse+newDescribeDBClusterParametersResponse pHttpStatus_ =+ DescribeDBClusterParametersResponse'+ { marker =+ Prelude.Nothing,+ parameters = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBClusterParametersResponse_marker :: Lens.Lens' DescribeDBClusterParametersResponse (Prelude.Maybe Prelude.Text)+describeDBClusterParametersResponse_marker = Lens.lens (\DescribeDBClusterParametersResponse' {marker} -> marker) (\s@DescribeDBClusterParametersResponse' {} a -> s {marker = a} :: DescribeDBClusterParametersResponse)++-- | Provides a list of parameters for the cluster parameter group.+describeDBClusterParametersResponse_parameters :: Lens.Lens' DescribeDBClusterParametersResponse (Prelude.Maybe [Parameter])+describeDBClusterParametersResponse_parameters = Lens.lens (\DescribeDBClusterParametersResponse' {parameters} -> parameters) (\s@DescribeDBClusterParametersResponse' {} a -> s {parameters = a} :: DescribeDBClusterParametersResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeDBClusterParametersResponse_httpStatus :: Lens.Lens' DescribeDBClusterParametersResponse Prelude.Int+describeDBClusterParametersResponse_httpStatus = Lens.lens (\DescribeDBClusterParametersResponse' {httpStatus} -> httpStatus) (\s@DescribeDBClusterParametersResponse' {} a -> s {httpStatus = a} :: DescribeDBClusterParametersResponse)++instance+ Prelude.NFData+ DescribeDBClusterParametersResponse+ where+ rnf DescribeDBClusterParametersResponse' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf parameters+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeDBClusterSnapshotAttributes.hs view
@@ -0,0 +1,200 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeDBClusterSnapshotAttributes+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of cluster snapshot attribute names and values for a+-- manual DB cluster snapshot.+--+-- When you share snapshots with other Amazon Web Services accounts,+-- @DescribeDBClusterSnapshotAttributes@ returns the @restore@ attribute+-- and a list of IDs for the Amazon Web Services accounts that are+-- authorized to copy or restore the manual cluster snapshot. If @all@ is+-- included in the list of values for the @restore@ attribute, then the+-- manual cluster snapshot is public and can be copied or restored by all+-- Amazon Web Services accounts.+module Amazonka.DocumentDB.DescribeDBClusterSnapshotAttributes+ ( -- * Creating a Request+ DescribeDBClusterSnapshotAttributes (..),+ newDescribeDBClusterSnapshotAttributes,++ -- * Request Lenses+ describeDBClusterSnapshotAttributes_dbClusterSnapshotIdentifier,++ -- * Destructuring the Response+ DescribeDBClusterSnapshotAttributesResponse (..),+ newDescribeDBClusterSnapshotAttributesResponse,++ -- * Response Lenses+ describeDBClusterSnapshotAttributesResponse_dbClusterSnapshotAttributesResult,+ describeDBClusterSnapshotAttributesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeDBClusterSnapshotAttributes.+--+-- /See:/ 'newDescribeDBClusterSnapshotAttributes' smart constructor.+data DescribeDBClusterSnapshotAttributes = DescribeDBClusterSnapshotAttributes'+ { -- | The identifier for the cluster snapshot to describe the attributes for.+ dbClusterSnapshotIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBClusterSnapshotAttributes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterSnapshotIdentifier', 'describeDBClusterSnapshotAttributes_dbClusterSnapshotIdentifier' - The identifier for the cluster snapshot to describe the attributes for.+newDescribeDBClusterSnapshotAttributes ::+ -- | 'dbClusterSnapshotIdentifier'+ Prelude.Text ->+ DescribeDBClusterSnapshotAttributes+newDescribeDBClusterSnapshotAttributes+ pDBClusterSnapshotIdentifier_ =+ DescribeDBClusterSnapshotAttributes'+ { dbClusterSnapshotIdentifier =+ pDBClusterSnapshotIdentifier_+ }++-- | The identifier for the cluster snapshot to describe the attributes for.+describeDBClusterSnapshotAttributes_dbClusterSnapshotIdentifier :: Lens.Lens' DescribeDBClusterSnapshotAttributes Prelude.Text+describeDBClusterSnapshotAttributes_dbClusterSnapshotIdentifier = Lens.lens (\DescribeDBClusterSnapshotAttributes' {dbClusterSnapshotIdentifier} -> dbClusterSnapshotIdentifier) (\s@DescribeDBClusterSnapshotAttributes' {} a -> s {dbClusterSnapshotIdentifier = a} :: DescribeDBClusterSnapshotAttributes)++instance+ Core.AWSRequest+ DescribeDBClusterSnapshotAttributes+ where+ type+ AWSResponse DescribeDBClusterSnapshotAttributes =+ DescribeDBClusterSnapshotAttributesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeDBClusterSnapshotAttributesResult"+ ( \s h x ->+ DescribeDBClusterSnapshotAttributesResponse'+ Prelude.<$> (x Data..@? "DBClusterSnapshotAttributesResult")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeDBClusterSnapshotAttributes+ where+ hashWithSalt+ _salt+ DescribeDBClusterSnapshotAttributes' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterSnapshotIdentifier++instance+ Prelude.NFData+ DescribeDBClusterSnapshotAttributes+ where+ rnf DescribeDBClusterSnapshotAttributes' {..} =+ Prelude.rnf dbClusterSnapshotIdentifier++instance+ Data.ToHeaders+ DescribeDBClusterSnapshotAttributes+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ DescribeDBClusterSnapshotAttributes+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DescribeDBClusterSnapshotAttributes+ where+ toQuery DescribeDBClusterSnapshotAttributes' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DescribeDBClusterSnapshotAttributes" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBClusterSnapshotIdentifier"+ Data.=: dbClusterSnapshotIdentifier+ ]++-- | /See:/ 'newDescribeDBClusterSnapshotAttributesResponse' smart constructor.+data DescribeDBClusterSnapshotAttributesResponse = DescribeDBClusterSnapshotAttributesResponse'+ { dbClusterSnapshotAttributesResult :: Prelude.Maybe DBClusterSnapshotAttributesResult,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBClusterSnapshotAttributesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterSnapshotAttributesResult', 'describeDBClusterSnapshotAttributesResponse_dbClusterSnapshotAttributesResult' - Undocumented member.+--+-- 'httpStatus', 'describeDBClusterSnapshotAttributesResponse_httpStatus' - The response's http status code.+newDescribeDBClusterSnapshotAttributesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDBClusterSnapshotAttributesResponse+newDescribeDBClusterSnapshotAttributesResponse+ pHttpStatus_ =+ DescribeDBClusterSnapshotAttributesResponse'+ { dbClusterSnapshotAttributesResult =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+describeDBClusterSnapshotAttributesResponse_dbClusterSnapshotAttributesResult :: Lens.Lens' DescribeDBClusterSnapshotAttributesResponse (Prelude.Maybe DBClusterSnapshotAttributesResult)+describeDBClusterSnapshotAttributesResponse_dbClusterSnapshotAttributesResult = Lens.lens (\DescribeDBClusterSnapshotAttributesResponse' {dbClusterSnapshotAttributesResult} -> dbClusterSnapshotAttributesResult) (\s@DescribeDBClusterSnapshotAttributesResponse' {} a -> s {dbClusterSnapshotAttributesResult = a} :: DescribeDBClusterSnapshotAttributesResponse)++-- | The response's http status code.+describeDBClusterSnapshotAttributesResponse_httpStatus :: Lens.Lens' DescribeDBClusterSnapshotAttributesResponse Prelude.Int+describeDBClusterSnapshotAttributesResponse_httpStatus = Lens.lens (\DescribeDBClusterSnapshotAttributesResponse' {httpStatus} -> httpStatus) (\s@DescribeDBClusterSnapshotAttributesResponse' {} a -> s {httpStatus = a} :: DescribeDBClusterSnapshotAttributesResponse)++instance+ Prelude.NFData+ DescribeDBClusterSnapshotAttributesResponse+ where+ rnf DescribeDBClusterSnapshotAttributesResponse' {..} =+ Prelude.rnf dbClusterSnapshotAttributesResult+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeDBClusterSnapshots.hs view
@@ -0,0 +1,473 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeDBClusterSnapshots+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns information about cluster snapshots. This API operation supports+-- pagination.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeDBClusterSnapshots+ ( -- * Creating a Request+ DescribeDBClusterSnapshots (..),+ newDescribeDBClusterSnapshots,++ -- * Request Lenses+ describeDBClusterSnapshots_dbClusterIdentifier,+ describeDBClusterSnapshots_dbClusterSnapshotIdentifier,+ describeDBClusterSnapshots_filters,+ describeDBClusterSnapshots_includePublic,+ describeDBClusterSnapshots_includeShared,+ describeDBClusterSnapshots_marker,+ describeDBClusterSnapshots_maxRecords,+ describeDBClusterSnapshots_snapshotType,++ -- * Destructuring the Response+ DescribeDBClusterSnapshotsResponse (..),+ newDescribeDBClusterSnapshotsResponse,++ -- * Response Lenses+ describeDBClusterSnapshotsResponse_dbClusterSnapshots,+ describeDBClusterSnapshotsResponse_marker,+ describeDBClusterSnapshotsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeDBClusterSnapshots.+--+-- /See:/ 'newDescribeDBClusterSnapshots' smart constructor.+data DescribeDBClusterSnapshots = DescribeDBClusterSnapshots'+ { -- | The ID of the cluster to retrieve the list of cluster snapshots for.+ -- This parameter can\'t be used with the @DBClusterSnapshotIdentifier@+ -- parameter. This parameter is not case sensitive.+ --+ -- Constraints:+ --+ -- - If provided, must match the identifier of an existing @DBCluster@.+ dbClusterIdentifier :: Prelude.Maybe Prelude.Text,+ -- | A specific cluster snapshot identifier to describe. This parameter+ -- can\'t be used with the @DBClusterIdentifier@ parameter. This value is+ -- stored as a lowercase string.+ --+ -- Constraints:+ --+ -- - If provided, must match the identifier of an existing+ -- @DBClusterSnapshot@.+ --+ -- - If this identifier is for an automated snapshot, the @SnapshotType@+ -- parameter must also be specified.+ dbClusterSnapshotIdentifier :: Prelude.Maybe Prelude.Text,+ -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | Set to @true@ to include manual cluster snapshots that are public and+ -- can be copied or restored by any Amazon Web Services account, and+ -- otherwise @false@. The default is @false@.+ includePublic :: Prelude.Maybe Prelude.Bool,+ -- | Set to @true@ to include shared manual cluster snapshots from other+ -- Amazon Web Services accounts that this Amazon Web Services account has+ -- been given permission to copy or restore, and otherwise @false@. The+ -- default is @false@.+ includeShared :: Prelude.Maybe Prelude.Bool,+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int,+ -- | The type of cluster snapshots to be returned. You can specify one of the+ -- following values:+ --+ -- - @automated@ - Return all cluster snapshots that Amazon DocumentDB+ -- has automatically created for your Amazon Web Services account.+ --+ -- - @manual@ - Return all cluster snapshots that you have manually+ -- created for your Amazon Web Services account.+ --+ -- - @shared@ - Return all manual cluster snapshots that have been shared+ -- to your Amazon Web Services account.+ --+ -- - @public@ - Return all cluster snapshots that have been marked as+ -- public.+ --+ -- If you don\'t specify a @SnapshotType@ value, then both automated and+ -- manual cluster snapshots are returned. You can include shared cluster+ -- snapshots with these results by setting the @IncludeShared@ parameter to+ -- @true@. You can include public cluster snapshots with these results by+ -- setting the@IncludePublic@ parameter to @true@.+ --+ -- The @IncludeShared@ and @IncludePublic@ parameters don\'t apply for+ -- @SnapshotType@ values of @manual@ or @automated@. The @IncludePublic@+ -- parameter doesn\'t apply when @SnapshotType@ is set to @shared@. The+ -- @IncludeShared@ parameter doesn\'t apply when @SnapshotType@ is set to+ -- @public@.+ snapshotType :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBClusterSnapshots' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterIdentifier', 'describeDBClusterSnapshots_dbClusterIdentifier' - The ID of the cluster to retrieve the list of cluster snapshots for.+-- This parameter can\'t be used with the @DBClusterSnapshotIdentifier@+-- parameter. This parameter is not case sensitive.+--+-- Constraints:+--+-- - If provided, must match the identifier of an existing @DBCluster@.+--+-- 'dbClusterSnapshotIdentifier', 'describeDBClusterSnapshots_dbClusterSnapshotIdentifier' - A specific cluster snapshot identifier to describe. This parameter+-- can\'t be used with the @DBClusterIdentifier@ parameter. This value is+-- stored as a lowercase string.+--+-- Constraints:+--+-- - If provided, must match the identifier of an existing+-- @DBClusterSnapshot@.+--+-- - If this identifier is for an automated snapshot, the @SnapshotType@+-- parameter must also be specified.+--+-- 'filters', 'describeDBClusterSnapshots_filters' - This parameter is not currently supported.+--+-- 'includePublic', 'describeDBClusterSnapshots_includePublic' - Set to @true@ to include manual cluster snapshots that are public and+-- can be copied or restored by any Amazon Web Services account, and+-- otherwise @false@. The default is @false@.+--+-- 'includeShared', 'describeDBClusterSnapshots_includeShared' - Set to @true@ to include shared manual cluster snapshots from other+-- Amazon Web Services accounts that this Amazon Web Services account has+-- been given permission to copy or restore, and otherwise @false@. The+-- default is @false@.+--+-- 'marker', 'describeDBClusterSnapshots_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeDBClusterSnapshots_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+--+-- 'snapshotType', 'describeDBClusterSnapshots_snapshotType' - The type of cluster snapshots to be returned. You can specify one of the+-- following values:+--+-- - @automated@ - Return all cluster snapshots that Amazon DocumentDB+-- has automatically created for your Amazon Web Services account.+--+-- - @manual@ - Return all cluster snapshots that you have manually+-- created for your Amazon Web Services account.+--+-- - @shared@ - Return all manual cluster snapshots that have been shared+-- to your Amazon Web Services account.+--+-- - @public@ - Return all cluster snapshots that have been marked as+-- public.+--+-- If you don\'t specify a @SnapshotType@ value, then both automated and+-- manual cluster snapshots are returned. You can include shared cluster+-- snapshots with these results by setting the @IncludeShared@ parameter to+-- @true@. You can include public cluster snapshots with these results by+-- setting the@IncludePublic@ parameter to @true@.+--+-- The @IncludeShared@ and @IncludePublic@ parameters don\'t apply for+-- @SnapshotType@ values of @manual@ or @automated@. The @IncludePublic@+-- parameter doesn\'t apply when @SnapshotType@ is set to @shared@. The+-- @IncludeShared@ parameter doesn\'t apply when @SnapshotType@ is set to+-- @public@.+newDescribeDBClusterSnapshots ::+ DescribeDBClusterSnapshots+newDescribeDBClusterSnapshots =+ DescribeDBClusterSnapshots'+ { dbClusterIdentifier =+ Prelude.Nothing,+ dbClusterSnapshotIdentifier = Prelude.Nothing,+ filters = Prelude.Nothing,+ includePublic = Prelude.Nothing,+ includeShared = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing,+ snapshotType = Prelude.Nothing+ }++-- | The ID of the cluster to retrieve the list of cluster snapshots for.+-- This parameter can\'t be used with the @DBClusterSnapshotIdentifier@+-- parameter. This parameter is not case sensitive.+--+-- Constraints:+--+-- - If provided, must match the identifier of an existing @DBCluster@.+describeDBClusterSnapshots_dbClusterIdentifier :: Lens.Lens' DescribeDBClusterSnapshots (Prelude.Maybe Prelude.Text)+describeDBClusterSnapshots_dbClusterIdentifier = Lens.lens (\DescribeDBClusterSnapshots' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@DescribeDBClusterSnapshots' {} a -> s {dbClusterIdentifier = a} :: DescribeDBClusterSnapshots)++-- | A specific cluster snapshot identifier to describe. This parameter+-- can\'t be used with the @DBClusterIdentifier@ parameter. This value is+-- stored as a lowercase string.+--+-- Constraints:+--+-- - If provided, must match the identifier of an existing+-- @DBClusterSnapshot@.+--+-- - If this identifier is for an automated snapshot, the @SnapshotType@+-- parameter must also be specified.+describeDBClusterSnapshots_dbClusterSnapshotIdentifier :: Lens.Lens' DescribeDBClusterSnapshots (Prelude.Maybe Prelude.Text)+describeDBClusterSnapshots_dbClusterSnapshotIdentifier = Lens.lens (\DescribeDBClusterSnapshots' {dbClusterSnapshotIdentifier} -> dbClusterSnapshotIdentifier) (\s@DescribeDBClusterSnapshots' {} a -> s {dbClusterSnapshotIdentifier = a} :: DescribeDBClusterSnapshots)++-- | This parameter is not currently supported.+describeDBClusterSnapshots_filters :: Lens.Lens' DescribeDBClusterSnapshots (Prelude.Maybe [Filter])+describeDBClusterSnapshots_filters = Lens.lens (\DescribeDBClusterSnapshots' {filters} -> filters) (\s@DescribeDBClusterSnapshots' {} a -> s {filters = a} :: DescribeDBClusterSnapshots) Prelude.. Lens.mapping Lens.coerced++-- | Set to @true@ to include manual cluster snapshots that are public and+-- can be copied or restored by any Amazon Web Services account, and+-- otherwise @false@. The default is @false@.+describeDBClusterSnapshots_includePublic :: Lens.Lens' DescribeDBClusterSnapshots (Prelude.Maybe Prelude.Bool)+describeDBClusterSnapshots_includePublic = Lens.lens (\DescribeDBClusterSnapshots' {includePublic} -> includePublic) (\s@DescribeDBClusterSnapshots' {} a -> s {includePublic = a} :: DescribeDBClusterSnapshots)++-- | Set to @true@ to include shared manual cluster snapshots from other+-- Amazon Web Services accounts that this Amazon Web Services account has+-- been given permission to copy or restore, and otherwise @false@. The+-- default is @false@.+describeDBClusterSnapshots_includeShared :: Lens.Lens' DescribeDBClusterSnapshots (Prelude.Maybe Prelude.Bool)+describeDBClusterSnapshots_includeShared = Lens.lens (\DescribeDBClusterSnapshots' {includeShared} -> includeShared) (\s@DescribeDBClusterSnapshots' {} a -> s {includeShared = a} :: DescribeDBClusterSnapshots)++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBClusterSnapshots_marker :: Lens.Lens' DescribeDBClusterSnapshots (Prelude.Maybe Prelude.Text)+describeDBClusterSnapshots_marker = Lens.lens (\DescribeDBClusterSnapshots' {marker} -> marker) (\s@DescribeDBClusterSnapshots' {} a -> s {marker = a} :: DescribeDBClusterSnapshots)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeDBClusterSnapshots_maxRecords :: Lens.Lens' DescribeDBClusterSnapshots (Prelude.Maybe Prelude.Int)+describeDBClusterSnapshots_maxRecords = Lens.lens (\DescribeDBClusterSnapshots' {maxRecords} -> maxRecords) (\s@DescribeDBClusterSnapshots' {} a -> s {maxRecords = a} :: DescribeDBClusterSnapshots)++-- | The type of cluster snapshots to be returned. You can specify one of the+-- following values:+--+-- - @automated@ - Return all cluster snapshots that Amazon DocumentDB+-- has automatically created for your Amazon Web Services account.+--+-- - @manual@ - Return all cluster snapshots that you have manually+-- created for your Amazon Web Services account.+--+-- - @shared@ - Return all manual cluster snapshots that have been shared+-- to your Amazon Web Services account.+--+-- - @public@ - Return all cluster snapshots that have been marked as+-- public.+--+-- If you don\'t specify a @SnapshotType@ value, then both automated and+-- manual cluster snapshots are returned. You can include shared cluster+-- snapshots with these results by setting the @IncludeShared@ parameter to+-- @true@. You can include public cluster snapshots with these results by+-- setting the@IncludePublic@ parameter to @true@.+--+-- The @IncludeShared@ and @IncludePublic@ parameters don\'t apply for+-- @SnapshotType@ values of @manual@ or @automated@. The @IncludePublic@+-- parameter doesn\'t apply when @SnapshotType@ is set to @shared@. The+-- @IncludeShared@ parameter doesn\'t apply when @SnapshotType@ is set to+-- @public@.+describeDBClusterSnapshots_snapshotType :: Lens.Lens' DescribeDBClusterSnapshots (Prelude.Maybe Prelude.Text)+describeDBClusterSnapshots_snapshotType = Lens.lens (\DescribeDBClusterSnapshots' {snapshotType} -> snapshotType) (\s@DescribeDBClusterSnapshots' {} a -> s {snapshotType = a} :: DescribeDBClusterSnapshots)++instance Core.AWSPager DescribeDBClusterSnapshots where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeDBClusterSnapshotsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeDBClusterSnapshotsResponse_dbClusterSnapshots+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeDBClusterSnapshots_marker+ Lens..~ rs+ Lens.^? describeDBClusterSnapshotsResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeDBClusterSnapshots where+ type+ AWSResponse DescribeDBClusterSnapshots =+ DescribeDBClusterSnapshotsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeDBClusterSnapshotsResult"+ ( \s h x ->+ DescribeDBClusterSnapshotsResponse'+ Prelude.<$> ( x+ Data..@? "DBClusterSnapshots"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "DBClusterSnapshot")+ )+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeDBClusterSnapshots where+ hashWithSalt _salt DescribeDBClusterSnapshots' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterIdentifier+ `Prelude.hashWithSalt` dbClusterSnapshotIdentifier+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` includePublic+ `Prelude.hashWithSalt` includeShared+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords+ `Prelude.hashWithSalt` snapshotType++instance Prelude.NFData DescribeDBClusterSnapshots where+ rnf DescribeDBClusterSnapshots' {..} =+ Prelude.rnf dbClusterIdentifier+ `Prelude.seq` Prelude.rnf dbClusterSnapshotIdentifier+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf includePublic+ `Prelude.seq` Prelude.rnf includeShared+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords+ `Prelude.seq` Prelude.rnf snapshotType++instance Data.ToHeaders DescribeDBClusterSnapshots where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDBClusterSnapshots where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeDBClusterSnapshots where+ toQuery DescribeDBClusterSnapshots' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DescribeDBClusterSnapshots" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBClusterIdentifier" Data.=: dbClusterIdentifier,+ "DBClusterSnapshotIdentifier"+ Data.=: dbClusterSnapshotIdentifier,+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "IncludePublic" Data.=: includePublic,+ "IncludeShared" Data.=: includeShared,+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords,+ "SnapshotType" Data.=: snapshotType+ ]++-- | Represents the output of DescribeDBClusterSnapshots.+--+-- /See:/ 'newDescribeDBClusterSnapshotsResponse' smart constructor.+data DescribeDBClusterSnapshotsResponse = DescribeDBClusterSnapshotsResponse'+ { -- | Provides a list of cluster snapshots.+ dbClusterSnapshots :: Prelude.Maybe [DBClusterSnapshot],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBClusterSnapshotsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterSnapshots', 'describeDBClusterSnapshotsResponse_dbClusterSnapshots' - Provides a list of cluster snapshots.+--+-- 'marker', 'describeDBClusterSnapshotsResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'httpStatus', 'describeDBClusterSnapshotsResponse_httpStatus' - The response's http status code.+newDescribeDBClusterSnapshotsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDBClusterSnapshotsResponse+newDescribeDBClusterSnapshotsResponse pHttpStatus_ =+ DescribeDBClusterSnapshotsResponse'+ { dbClusterSnapshots =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Provides a list of cluster snapshots.+describeDBClusterSnapshotsResponse_dbClusterSnapshots :: Lens.Lens' DescribeDBClusterSnapshotsResponse (Prelude.Maybe [DBClusterSnapshot])+describeDBClusterSnapshotsResponse_dbClusterSnapshots = Lens.lens (\DescribeDBClusterSnapshotsResponse' {dbClusterSnapshots} -> dbClusterSnapshots) (\s@DescribeDBClusterSnapshotsResponse' {} a -> s {dbClusterSnapshots = a} :: DescribeDBClusterSnapshotsResponse) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBClusterSnapshotsResponse_marker :: Lens.Lens' DescribeDBClusterSnapshotsResponse (Prelude.Maybe Prelude.Text)+describeDBClusterSnapshotsResponse_marker = Lens.lens (\DescribeDBClusterSnapshotsResponse' {marker} -> marker) (\s@DescribeDBClusterSnapshotsResponse' {} a -> s {marker = a} :: DescribeDBClusterSnapshotsResponse)++-- | The response's http status code.+describeDBClusterSnapshotsResponse_httpStatus :: Lens.Lens' DescribeDBClusterSnapshotsResponse Prelude.Int+describeDBClusterSnapshotsResponse_httpStatus = Lens.lens (\DescribeDBClusterSnapshotsResponse' {httpStatus} -> httpStatus) (\s@DescribeDBClusterSnapshotsResponse' {} a -> s {httpStatus = a} :: DescribeDBClusterSnapshotsResponse)++instance+ Prelude.NFData+ DescribeDBClusterSnapshotsResponse+ where+ rnf DescribeDBClusterSnapshotsResponse' {..} =+ Prelude.rnf dbClusterSnapshots+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeDBClusters.hs view
@@ -0,0 +1,319 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeDBClusters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns information about provisioned Amazon DocumentDB clusters. This+-- API operation supports pagination. For certain management features such+-- as cluster and instance lifecycle management, Amazon DocumentDB+-- leverages operational technology that is shared with Amazon RDS and+-- Amazon Neptune. Use the @filterName=engine,Values=docdb@ filter+-- parameter to return only Amazon DocumentDB clusters.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeDBClusters+ ( -- * Creating a Request+ DescribeDBClusters (..),+ newDescribeDBClusters,++ -- * Request Lenses+ describeDBClusters_dbClusterIdentifier,+ describeDBClusters_filters,+ describeDBClusters_marker,+ describeDBClusters_maxRecords,++ -- * Destructuring the Response+ DescribeDBClustersResponse (..),+ newDescribeDBClustersResponse,++ -- * Response Lenses+ describeDBClustersResponse_dbClusters,+ describeDBClustersResponse_marker,+ describeDBClustersResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeDBClusters.+--+-- /See:/ 'newDescribeDBClusters' smart constructor.+data DescribeDBClusters = DescribeDBClusters'+ { -- | The user-provided cluster identifier. If this parameter is specified,+ -- information from only the specific cluster is returned. This parameter+ -- isn\'t case sensitive.+ --+ -- Constraints:+ --+ -- - If provided, must match an existing @DBClusterIdentifier@.+ dbClusterIdentifier :: Prelude.Maybe Prelude.Text,+ -- | A filter that specifies one or more clusters to describe.+ --+ -- Supported filters:+ --+ -- - @db-cluster-id@ - Accepts cluster identifiers and cluster Amazon+ -- Resource Names (ARNs). The results list only includes information+ -- about the clusters identified by these ARNs.+ filters :: Prelude.Maybe [Filter],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBClusters' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterIdentifier', 'describeDBClusters_dbClusterIdentifier' - The user-provided cluster identifier. If this parameter is specified,+-- information from only the specific cluster is returned. This parameter+-- isn\'t case sensitive.+--+-- Constraints:+--+-- - If provided, must match an existing @DBClusterIdentifier@.+--+-- 'filters', 'describeDBClusters_filters' - A filter that specifies one or more clusters to describe.+--+-- Supported filters:+--+-- - @db-cluster-id@ - Accepts cluster identifiers and cluster Amazon+-- Resource Names (ARNs). The results list only includes information+-- about the clusters identified by these ARNs.+--+-- 'marker', 'describeDBClusters_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeDBClusters_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+newDescribeDBClusters ::+ DescribeDBClusters+newDescribeDBClusters =+ DescribeDBClusters'+ { dbClusterIdentifier =+ Prelude.Nothing,+ filters = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing+ }++-- | The user-provided cluster identifier. If this parameter is specified,+-- information from only the specific cluster is returned. This parameter+-- isn\'t case sensitive.+--+-- Constraints:+--+-- - If provided, must match an existing @DBClusterIdentifier@.+describeDBClusters_dbClusterIdentifier :: Lens.Lens' DescribeDBClusters (Prelude.Maybe Prelude.Text)+describeDBClusters_dbClusterIdentifier = Lens.lens (\DescribeDBClusters' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@DescribeDBClusters' {} a -> s {dbClusterIdentifier = a} :: DescribeDBClusters)++-- | A filter that specifies one or more clusters to describe.+--+-- Supported filters:+--+-- - @db-cluster-id@ - Accepts cluster identifiers and cluster Amazon+-- Resource Names (ARNs). The results list only includes information+-- about the clusters identified by these ARNs.+describeDBClusters_filters :: Lens.Lens' DescribeDBClusters (Prelude.Maybe [Filter])+describeDBClusters_filters = Lens.lens (\DescribeDBClusters' {filters} -> filters) (\s@DescribeDBClusters' {} a -> s {filters = a} :: DescribeDBClusters) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBClusters_marker :: Lens.Lens' DescribeDBClusters (Prelude.Maybe Prelude.Text)+describeDBClusters_marker = Lens.lens (\DescribeDBClusters' {marker} -> marker) (\s@DescribeDBClusters' {} a -> s {marker = a} :: DescribeDBClusters)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeDBClusters_maxRecords :: Lens.Lens' DescribeDBClusters (Prelude.Maybe Prelude.Int)+describeDBClusters_maxRecords = Lens.lens (\DescribeDBClusters' {maxRecords} -> maxRecords) (\s@DescribeDBClusters' {} a -> s {maxRecords = a} :: DescribeDBClusters)++instance Core.AWSPager DescribeDBClusters where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeDBClustersResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeDBClustersResponse_dbClusters+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeDBClusters_marker+ Lens..~ rs+ Lens.^? describeDBClustersResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeDBClusters where+ type+ AWSResponse DescribeDBClusters =+ DescribeDBClustersResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeDBClustersResult"+ ( \s h x ->+ DescribeDBClustersResponse'+ Prelude.<$> ( x+ Data..@? "DBClusters"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "DBCluster")+ )+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeDBClusters where+ hashWithSalt _salt DescribeDBClusters' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterIdentifier+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords++instance Prelude.NFData DescribeDBClusters where+ rnf DescribeDBClusters' {..} =+ Prelude.rnf dbClusterIdentifier+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords++instance Data.ToHeaders DescribeDBClusters where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDBClusters where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeDBClusters where+ toQuery DescribeDBClusters' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DescribeDBClusters" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBClusterIdentifier" Data.=: dbClusterIdentifier,+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords+ ]++-- | Represents the output of DescribeDBClusters.+--+-- /See:/ 'newDescribeDBClustersResponse' smart constructor.+data DescribeDBClustersResponse = DescribeDBClustersResponse'+ { -- | A list of clusters.+ dbClusters :: Prelude.Maybe [DBCluster],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBClustersResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusters', 'describeDBClustersResponse_dbClusters' - A list of clusters.+--+-- 'marker', 'describeDBClustersResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'httpStatus', 'describeDBClustersResponse_httpStatus' - The response's http status code.+newDescribeDBClustersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDBClustersResponse+newDescribeDBClustersResponse pHttpStatus_ =+ DescribeDBClustersResponse'+ { dbClusters =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of clusters.+describeDBClustersResponse_dbClusters :: Lens.Lens' DescribeDBClustersResponse (Prelude.Maybe [DBCluster])+describeDBClustersResponse_dbClusters = Lens.lens (\DescribeDBClustersResponse' {dbClusters} -> dbClusters) (\s@DescribeDBClustersResponse' {} a -> s {dbClusters = a} :: DescribeDBClustersResponse) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBClustersResponse_marker :: Lens.Lens' DescribeDBClustersResponse (Prelude.Maybe Prelude.Text)+describeDBClustersResponse_marker = Lens.lens (\DescribeDBClustersResponse' {marker} -> marker) (\s@DescribeDBClustersResponse' {} a -> s {marker = a} :: DescribeDBClustersResponse)++-- | The response's http status code.+describeDBClustersResponse_httpStatus :: Lens.Lens' DescribeDBClustersResponse Prelude.Int+describeDBClustersResponse_httpStatus = Lens.lens (\DescribeDBClustersResponse' {httpStatus} -> httpStatus) (\s@DescribeDBClustersResponse' {} a -> s {httpStatus = a} :: DescribeDBClustersResponse)++instance Prelude.NFData DescribeDBClustersResponse where+ rnf DescribeDBClustersResponse' {..} =+ Prelude.rnf dbClusters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeDBEngineVersions.hs view
@@ -0,0 +1,382 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeDBEngineVersions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of the available engines.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeDBEngineVersions+ ( -- * Creating a Request+ DescribeDBEngineVersions (..),+ newDescribeDBEngineVersions,++ -- * Request Lenses+ describeDBEngineVersions_dbParameterGroupFamily,+ describeDBEngineVersions_defaultOnly,+ describeDBEngineVersions_engine,+ describeDBEngineVersions_engineVersion,+ describeDBEngineVersions_filters,+ describeDBEngineVersions_listSupportedCharacterSets,+ describeDBEngineVersions_listSupportedTimezones,+ describeDBEngineVersions_marker,+ describeDBEngineVersions_maxRecords,++ -- * Destructuring the Response+ DescribeDBEngineVersionsResponse (..),+ newDescribeDBEngineVersionsResponse,++ -- * Response Lenses+ describeDBEngineVersionsResponse_dbEngineVersions,+ describeDBEngineVersionsResponse_marker,+ describeDBEngineVersionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeDBEngineVersions.+--+-- /See:/ 'newDescribeDBEngineVersions' smart constructor.+data DescribeDBEngineVersions = DescribeDBEngineVersions'+ { -- | The name of a specific parameter group family to return details for.+ --+ -- Constraints:+ --+ -- - If provided, must match an existing @DBParameterGroupFamily@.+ dbParameterGroupFamily :: Prelude.Maybe Prelude.Text,+ -- | Indicates that only the default version of the specified engine or+ -- engine and major version combination is returned.+ defaultOnly :: Prelude.Maybe Prelude.Bool,+ -- | The database engine to return.+ engine :: Prelude.Maybe Prelude.Text,+ -- | The database engine version to return.+ --+ -- Example: @3.6.0@+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | If this parameter is specified and the requested engine supports the+ -- @CharacterSetName@ parameter for @CreateDBInstance@, the response+ -- includes a list of supported character sets for each engine version.+ listSupportedCharacterSets :: Prelude.Maybe Prelude.Bool,+ -- | If this parameter is specified and the requested engine supports the+ -- @TimeZone@ parameter for @CreateDBInstance@, the response includes a+ -- list of supported time zones for each engine version.+ listSupportedTimezones :: Prelude.Maybe Prelude.Bool,+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBEngineVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbParameterGroupFamily', 'describeDBEngineVersions_dbParameterGroupFamily' - The name of a specific parameter group family to return details for.+--+-- Constraints:+--+-- - If provided, must match an existing @DBParameterGroupFamily@.+--+-- 'defaultOnly', 'describeDBEngineVersions_defaultOnly' - Indicates that only the default version of the specified engine or+-- engine and major version combination is returned.+--+-- 'engine', 'describeDBEngineVersions_engine' - The database engine to return.+--+-- 'engineVersion', 'describeDBEngineVersions_engineVersion' - The database engine version to return.+--+-- Example: @3.6.0@+--+-- 'filters', 'describeDBEngineVersions_filters' - This parameter is not currently supported.+--+-- 'listSupportedCharacterSets', 'describeDBEngineVersions_listSupportedCharacterSets' - If this parameter is specified and the requested engine supports the+-- @CharacterSetName@ parameter for @CreateDBInstance@, the response+-- includes a list of supported character sets for each engine version.+--+-- 'listSupportedTimezones', 'describeDBEngineVersions_listSupportedTimezones' - If this parameter is specified and the requested engine supports the+-- @TimeZone@ parameter for @CreateDBInstance@, the response includes a+-- list of supported time zones for each engine version.+--+-- 'marker', 'describeDBEngineVersions_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeDBEngineVersions_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+newDescribeDBEngineVersions ::+ DescribeDBEngineVersions+newDescribeDBEngineVersions =+ DescribeDBEngineVersions'+ { dbParameterGroupFamily =+ Prelude.Nothing,+ defaultOnly = Prelude.Nothing,+ engine = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ filters = Prelude.Nothing,+ listSupportedCharacterSets = Prelude.Nothing,+ listSupportedTimezones = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing+ }++-- | The name of a specific parameter group family to return details for.+--+-- Constraints:+--+-- - If provided, must match an existing @DBParameterGroupFamily@.+describeDBEngineVersions_dbParameterGroupFamily :: Lens.Lens' DescribeDBEngineVersions (Prelude.Maybe Prelude.Text)+describeDBEngineVersions_dbParameterGroupFamily = Lens.lens (\DescribeDBEngineVersions' {dbParameterGroupFamily} -> dbParameterGroupFamily) (\s@DescribeDBEngineVersions' {} a -> s {dbParameterGroupFamily = a} :: DescribeDBEngineVersions)++-- | Indicates that only the default version of the specified engine or+-- engine and major version combination is returned.+describeDBEngineVersions_defaultOnly :: Lens.Lens' DescribeDBEngineVersions (Prelude.Maybe Prelude.Bool)+describeDBEngineVersions_defaultOnly = Lens.lens (\DescribeDBEngineVersions' {defaultOnly} -> defaultOnly) (\s@DescribeDBEngineVersions' {} a -> s {defaultOnly = a} :: DescribeDBEngineVersions)++-- | The database engine to return.+describeDBEngineVersions_engine :: Lens.Lens' DescribeDBEngineVersions (Prelude.Maybe Prelude.Text)+describeDBEngineVersions_engine = Lens.lens (\DescribeDBEngineVersions' {engine} -> engine) (\s@DescribeDBEngineVersions' {} a -> s {engine = a} :: DescribeDBEngineVersions)++-- | The database engine version to return.+--+-- Example: @3.6.0@+describeDBEngineVersions_engineVersion :: Lens.Lens' DescribeDBEngineVersions (Prelude.Maybe Prelude.Text)+describeDBEngineVersions_engineVersion = Lens.lens (\DescribeDBEngineVersions' {engineVersion} -> engineVersion) (\s@DescribeDBEngineVersions' {} a -> s {engineVersion = a} :: DescribeDBEngineVersions)++-- | This parameter is not currently supported.+describeDBEngineVersions_filters :: Lens.Lens' DescribeDBEngineVersions (Prelude.Maybe [Filter])+describeDBEngineVersions_filters = Lens.lens (\DescribeDBEngineVersions' {filters} -> filters) (\s@DescribeDBEngineVersions' {} a -> s {filters = a} :: DescribeDBEngineVersions) Prelude.. Lens.mapping Lens.coerced++-- | If this parameter is specified and the requested engine supports the+-- @CharacterSetName@ parameter for @CreateDBInstance@, the response+-- includes a list of supported character sets for each engine version.+describeDBEngineVersions_listSupportedCharacterSets :: Lens.Lens' DescribeDBEngineVersions (Prelude.Maybe Prelude.Bool)+describeDBEngineVersions_listSupportedCharacterSets = Lens.lens (\DescribeDBEngineVersions' {listSupportedCharacterSets} -> listSupportedCharacterSets) (\s@DescribeDBEngineVersions' {} a -> s {listSupportedCharacterSets = a} :: DescribeDBEngineVersions)++-- | If this parameter is specified and the requested engine supports the+-- @TimeZone@ parameter for @CreateDBInstance@, the response includes a+-- list of supported time zones for each engine version.+describeDBEngineVersions_listSupportedTimezones :: Lens.Lens' DescribeDBEngineVersions (Prelude.Maybe Prelude.Bool)+describeDBEngineVersions_listSupportedTimezones = Lens.lens (\DescribeDBEngineVersions' {listSupportedTimezones} -> listSupportedTimezones) (\s@DescribeDBEngineVersions' {} a -> s {listSupportedTimezones = a} :: DescribeDBEngineVersions)++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBEngineVersions_marker :: Lens.Lens' DescribeDBEngineVersions (Prelude.Maybe Prelude.Text)+describeDBEngineVersions_marker = Lens.lens (\DescribeDBEngineVersions' {marker} -> marker) (\s@DescribeDBEngineVersions' {} a -> s {marker = a} :: DescribeDBEngineVersions)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeDBEngineVersions_maxRecords :: Lens.Lens' DescribeDBEngineVersions (Prelude.Maybe Prelude.Int)+describeDBEngineVersions_maxRecords = Lens.lens (\DescribeDBEngineVersions' {maxRecords} -> maxRecords) (\s@DescribeDBEngineVersions' {} a -> s {maxRecords = a} :: DescribeDBEngineVersions)++instance Core.AWSPager DescribeDBEngineVersions where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeDBEngineVersionsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeDBEngineVersionsResponse_dbEngineVersions+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeDBEngineVersions_marker+ Lens..~ rs+ Lens.^? describeDBEngineVersionsResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeDBEngineVersions where+ type+ AWSResponse DescribeDBEngineVersions =+ DescribeDBEngineVersionsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeDBEngineVersionsResult"+ ( \s h x ->+ DescribeDBEngineVersionsResponse'+ Prelude.<$> ( x+ Data..@? "DBEngineVersions"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "DBEngineVersion")+ )+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeDBEngineVersions where+ hashWithSalt _salt DescribeDBEngineVersions' {..} =+ _salt+ `Prelude.hashWithSalt` dbParameterGroupFamily+ `Prelude.hashWithSalt` defaultOnly+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` listSupportedCharacterSets+ `Prelude.hashWithSalt` listSupportedTimezones+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords++instance Prelude.NFData DescribeDBEngineVersions where+ rnf DescribeDBEngineVersions' {..} =+ Prelude.rnf dbParameterGroupFamily+ `Prelude.seq` Prelude.rnf defaultOnly+ `Prelude.seq` Prelude.rnf engine+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf listSupportedCharacterSets+ `Prelude.seq` Prelude.rnf listSupportedTimezones+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords++instance Data.ToHeaders DescribeDBEngineVersions where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDBEngineVersions where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeDBEngineVersions where+ toQuery DescribeDBEngineVersions' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DescribeDBEngineVersions" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBParameterGroupFamily"+ Data.=: dbParameterGroupFamily,+ "DefaultOnly" Data.=: defaultOnly,+ "Engine" Data.=: engine,+ "EngineVersion" Data.=: engineVersion,+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "ListSupportedCharacterSets"+ Data.=: listSupportedCharacterSets,+ "ListSupportedTimezones"+ Data.=: listSupportedTimezones,+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords+ ]++-- | Represents the output of DescribeDBEngineVersions.+--+-- /See:/ 'newDescribeDBEngineVersionsResponse' smart constructor.+data DescribeDBEngineVersionsResponse = DescribeDBEngineVersionsResponse'+ { -- | Detailed information about one or more engine versions.+ dbEngineVersions :: Prelude.Maybe [DBEngineVersion],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBEngineVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbEngineVersions', 'describeDBEngineVersionsResponse_dbEngineVersions' - Detailed information about one or more engine versions.+--+-- 'marker', 'describeDBEngineVersionsResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'httpStatus', 'describeDBEngineVersionsResponse_httpStatus' - The response's http status code.+newDescribeDBEngineVersionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDBEngineVersionsResponse+newDescribeDBEngineVersionsResponse pHttpStatus_ =+ DescribeDBEngineVersionsResponse'+ { dbEngineVersions =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Detailed information about one or more engine versions.+describeDBEngineVersionsResponse_dbEngineVersions :: Lens.Lens' DescribeDBEngineVersionsResponse (Prelude.Maybe [DBEngineVersion])+describeDBEngineVersionsResponse_dbEngineVersions = Lens.lens (\DescribeDBEngineVersionsResponse' {dbEngineVersions} -> dbEngineVersions) (\s@DescribeDBEngineVersionsResponse' {} a -> s {dbEngineVersions = a} :: DescribeDBEngineVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBEngineVersionsResponse_marker :: Lens.Lens' DescribeDBEngineVersionsResponse (Prelude.Maybe Prelude.Text)+describeDBEngineVersionsResponse_marker = Lens.lens (\DescribeDBEngineVersionsResponse' {marker} -> marker) (\s@DescribeDBEngineVersionsResponse' {} a -> s {marker = a} :: DescribeDBEngineVersionsResponse)++-- | The response's http status code.+describeDBEngineVersionsResponse_httpStatus :: Lens.Lens' DescribeDBEngineVersionsResponse Prelude.Int+describeDBEngineVersionsResponse_httpStatus = Lens.lens (\DescribeDBEngineVersionsResponse' {httpStatus} -> httpStatus) (\s@DescribeDBEngineVersionsResponse' {} a -> s {httpStatus = a} :: DescribeDBEngineVersionsResponse)++instance+ Prelude.NFData+ DescribeDBEngineVersionsResponse+ where+ rnf DescribeDBEngineVersionsResponse' {..} =+ Prelude.rnf dbEngineVersions+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeDBInstances.hs view
@@ -0,0 +1,330 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeDBInstances+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns information about provisioned Amazon DocumentDB instances. This+-- API supports pagination.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeDBInstances+ ( -- * Creating a Request+ DescribeDBInstances (..),+ newDescribeDBInstances,++ -- * Request Lenses+ describeDBInstances_dbInstanceIdentifier,+ describeDBInstances_filters,+ describeDBInstances_marker,+ describeDBInstances_maxRecords,++ -- * Destructuring the Response+ DescribeDBInstancesResponse (..),+ newDescribeDBInstancesResponse,++ -- * Response Lenses+ describeDBInstancesResponse_dbInstances,+ describeDBInstancesResponse_marker,+ describeDBInstancesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeDBInstances.+--+-- /See:/ 'newDescribeDBInstances' smart constructor.+data DescribeDBInstances = DescribeDBInstances'+ { -- | The user-provided instance identifier. If this parameter is specified,+ -- information from only the specific instance is returned. This parameter+ -- isn\'t case sensitive.+ --+ -- Constraints:+ --+ -- - If provided, must match the identifier of an existing @DBInstance@.+ dbInstanceIdentifier :: Prelude.Maybe Prelude.Text,+ -- | A filter that specifies one or more instances to describe.+ --+ -- Supported filters:+ --+ -- - @db-cluster-id@ - Accepts cluster identifiers and cluster Amazon+ -- Resource Names (ARNs). The results list includes only the+ -- information about the instances that are associated with the+ -- clusters that are identified by these ARNs.+ --+ -- - @db-instance-id@ - Accepts instance identifiers and instance ARNs.+ -- The results list includes only the information about the instances+ -- that are identified by these ARNs.+ filters :: Prelude.Maybe [Filter],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBInstances' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbInstanceIdentifier', 'describeDBInstances_dbInstanceIdentifier' - The user-provided instance identifier. If this parameter is specified,+-- information from only the specific instance is returned. This parameter+-- isn\'t case sensitive.+--+-- Constraints:+--+-- - If provided, must match the identifier of an existing @DBInstance@.+--+-- 'filters', 'describeDBInstances_filters' - A filter that specifies one or more instances to describe.+--+-- Supported filters:+--+-- - @db-cluster-id@ - Accepts cluster identifiers and cluster Amazon+-- Resource Names (ARNs). The results list includes only the+-- information about the instances that are associated with the+-- clusters that are identified by these ARNs.+--+-- - @db-instance-id@ - Accepts instance identifiers and instance ARNs.+-- The results list includes only the information about the instances+-- that are identified by these ARNs.+--+-- 'marker', 'describeDBInstances_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeDBInstances_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+newDescribeDBInstances ::+ DescribeDBInstances+newDescribeDBInstances =+ DescribeDBInstances'+ { dbInstanceIdentifier =+ Prelude.Nothing,+ filters = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing+ }++-- | The user-provided instance identifier. If this parameter is specified,+-- information from only the specific instance is returned. This parameter+-- isn\'t case sensitive.+--+-- Constraints:+--+-- - If provided, must match the identifier of an existing @DBInstance@.+describeDBInstances_dbInstanceIdentifier :: Lens.Lens' DescribeDBInstances (Prelude.Maybe Prelude.Text)+describeDBInstances_dbInstanceIdentifier = Lens.lens (\DescribeDBInstances' {dbInstanceIdentifier} -> dbInstanceIdentifier) (\s@DescribeDBInstances' {} a -> s {dbInstanceIdentifier = a} :: DescribeDBInstances)++-- | A filter that specifies one or more instances to describe.+--+-- Supported filters:+--+-- - @db-cluster-id@ - Accepts cluster identifiers and cluster Amazon+-- Resource Names (ARNs). The results list includes only the+-- information about the instances that are associated with the+-- clusters that are identified by these ARNs.+--+-- - @db-instance-id@ - Accepts instance identifiers and instance ARNs.+-- The results list includes only the information about the instances+-- that are identified by these ARNs.+describeDBInstances_filters :: Lens.Lens' DescribeDBInstances (Prelude.Maybe [Filter])+describeDBInstances_filters = Lens.lens (\DescribeDBInstances' {filters} -> filters) (\s@DescribeDBInstances' {} a -> s {filters = a} :: DescribeDBInstances) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBInstances_marker :: Lens.Lens' DescribeDBInstances (Prelude.Maybe Prelude.Text)+describeDBInstances_marker = Lens.lens (\DescribeDBInstances' {marker} -> marker) (\s@DescribeDBInstances' {} a -> s {marker = a} :: DescribeDBInstances)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeDBInstances_maxRecords :: Lens.Lens' DescribeDBInstances (Prelude.Maybe Prelude.Int)+describeDBInstances_maxRecords = Lens.lens (\DescribeDBInstances' {maxRecords} -> maxRecords) (\s@DescribeDBInstances' {} a -> s {maxRecords = a} :: DescribeDBInstances)++instance Core.AWSPager DescribeDBInstances where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeDBInstancesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeDBInstances_marker+ Lens..~ rs+ Lens.^? describeDBInstancesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeDBInstances where+ type+ AWSResponse DescribeDBInstances =+ DescribeDBInstancesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeDBInstancesResult"+ ( \s h x ->+ DescribeDBInstancesResponse'+ Prelude.<$> ( x+ Data..@? "DBInstances"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "DBInstance")+ )+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeDBInstances where+ hashWithSalt _salt DescribeDBInstances' {..} =+ _salt+ `Prelude.hashWithSalt` dbInstanceIdentifier+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords++instance Prelude.NFData DescribeDBInstances where+ rnf DescribeDBInstances' {..} =+ Prelude.rnf dbInstanceIdentifier+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords++instance Data.ToHeaders DescribeDBInstances where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDBInstances where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeDBInstances where+ toQuery DescribeDBInstances' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DescribeDBInstances" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBInstanceIdentifier" Data.=: dbInstanceIdentifier,+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords+ ]++-- | Represents the output of DescribeDBInstances.+--+-- /See:/ 'newDescribeDBInstancesResponse' smart constructor.+data DescribeDBInstancesResponse = DescribeDBInstancesResponse'+ { -- | Detailed information about one or more instances.+ dbInstances :: Prelude.Maybe [DBInstance],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBInstancesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbInstances', 'describeDBInstancesResponse_dbInstances' - Detailed information about one or more instances.+--+-- 'marker', 'describeDBInstancesResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'httpStatus', 'describeDBInstancesResponse_httpStatus' - The response's http status code.+newDescribeDBInstancesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDBInstancesResponse+newDescribeDBInstancesResponse pHttpStatus_ =+ DescribeDBInstancesResponse'+ { dbInstances =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Detailed information about one or more instances.+describeDBInstancesResponse_dbInstances :: Lens.Lens' DescribeDBInstancesResponse (Prelude.Maybe [DBInstance])+describeDBInstancesResponse_dbInstances = Lens.lens (\DescribeDBInstancesResponse' {dbInstances} -> dbInstances) (\s@DescribeDBInstancesResponse' {} a -> s {dbInstances = a} :: DescribeDBInstancesResponse) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBInstancesResponse_marker :: Lens.Lens' DescribeDBInstancesResponse (Prelude.Maybe Prelude.Text)+describeDBInstancesResponse_marker = Lens.lens (\DescribeDBInstancesResponse' {marker} -> marker) (\s@DescribeDBInstancesResponse' {} a -> s {marker = a} :: DescribeDBInstancesResponse)++-- | The response's http status code.+describeDBInstancesResponse_httpStatus :: Lens.Lens' DescribeDBInstancesResponse Prelude.Int+describeDBInstancesResponse_httpStatus = Lens.lens (\DescribeDBInstancesResponse' {httpStatus} -> httpStatus) (\s@DescribeDBInstancesResponse' {} a -> s {httpStatus = a} :: DescribeDBInstancesResponse)++instance Prelude.NFData DescribeDBInstancesResponse where+ rnf DescribeDBInstancesResponse' {..} =+ Prelude.rnf dbInstances+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeDBSubnetGroups.hs view
@@ -0,0 +1,283 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeDBSubnetGroups+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of @DBSubnetGroup@ descriptions. If a @DBSubnetGroupName@+-- is specified, the list will contain only the descriptions of the+-- specified @DBSubnetGroup@.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeDBSubnetGroups+ ( -- * Creating a Request+ DescribeDBSubnetGroups (..),+ newDescribeDBSubnetGroups,++ -- * Request Lenses+ describeDBSubnetGroups_dbSubnetGroupName,+ describeDBSubnetGroups_filters,+ describeDBSubnetGroups_marker,+ describeDBSubnetGroups_maxRecords,++ -- * Destructuring the Response+ DescribeDBSubnetGroupsResponse (..),+ newDescribeDBSubnetGroupsResponse,++ -- * Response Lenses+ describeDBSubnetGroupsResponse_dbSubnetGroups,+ describeDBSubnetGroupsResponse_marker,+ describeDBSubnetGroupsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeDBSubnetGroups.+--+-- /See:/ 'newDescribeDBSubnetGroups' smart constructor.+data DescribeDBSubnetGroups = DescribeDBSubnetGroups'+ { -- | The name of the subnet group to return details for.+ dbSubnetGroupName :: Prelude.Maybe Prelude.Text,+ -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBSubnetGroups' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbSubnetGroupName', 'describeDBSubnetGroups_dbSubnetGroupName' - The name of the subnet group to return details for.+--+-- 'filters', 'describeDBSubnetGroups_filters' - This parameter is not currently supported.+--+-- 'marker', 'describeDBSubnetGroups_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeDBSubnetGroups_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+newDescribeDBSubnetGroups ::+ DescribeDBSubnetGroups+newDescribeDBSubnetGroups =+ DescribeDBSubnetGroups'+ { dbSubnetGroupName =+ Prelude.Nothing,+ filters = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing+ }++-- | The name of the subnet group to return details for.+describeDBSubnetGroups_dbSubnetGroupName :: Lens.Lens' DescribeDBSubnetGroups (Prelude.Maybe Prelude.Text)+describeDBSubnetGroups_dbSubnetGroupName = Lens.lens (\DescribeDBSubnetGroups' {dbSubnetGroupName} -> dbSubnetGroupName) (\s@DescribeDBSubnetGroups' {} a -> s {dbSubnetGroupName = a} :: DescribeDBSubnetGroups)++-- | This parameter is not currently supported.+describeDBSubnetGroups_filters :: Lens.Lens' DescribeDBSubnetGroups (Prelude.Maybe [Filter])+describeDBSubnetGroups_filters = Lens.lens (\DescribeDBSubnetGroups' {filters} -> filters) (\s@DescribeDBSubnetGroups' {} a -> s {filters = a} :: DescribeDBSubnetGroups) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBSubnetGroups_marker :: Lens.Lens' DescribeDBSubnetGroups (Prelude.Maybe Prelude.Text)+describeDBSubnetGroups_marker = Lens.lens (\DescribeDBSubnetGroups' {marker} -> marker) (\s@DescribeDBSubnetGroups' {} a -> s {marker = a} :: DescribeDBSubnetGroups)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeDBSubnetGroups_maxRecords :: Lens.Lens' DescribeDBSubnetGroups (Prelude.Maybe Prelude.Int)+describeDBSubnetGroups_maxRecords = Lens.lens (\DescribeDBSubnetGroups' {maxRecords} -> maxRecords) (\s@DescribeDBSubnetGroups' {} a -> s {maxRecords = a} :: DescribeDBSubnetGroups)++instance Core.AWSPager DescribeDBSubnetGroups where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeDBSubnetGroupsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeDBSubnetGroupsResponse_dbSubnetGroups+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeDBSubnetGroups_marker+ Lens..~ rs+ Lens.^? describeDBSubnetGroupsResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeDBSubnetGroups where+ type+ AWSResponse DescribeDBSubnetGroups =+ DescribeDBSubnetGroupsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeDBSubnetGroupsResult"+ ( \s h x ->+ DescribeDBSubnetGroupsResponse'+ Prelude.<$> ( x+ Data..@? "DBSubnetGroups"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "DBSubnetGroup")+ )+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeDBSubnetGroups where+ hashWithSalt _salt DescribeDBSubnetGroups' {..} =+ _salt+ `Prelude.hashWithSalt` dbSubnetGroupName+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords++instance Prelude.NFData DescribeDBSubnetGroups where+ rnf DescribeDBSubnetGroups' {..} =+ Prelude.rnf dbSubnetGroupName+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords++instance Data.ToHeaders DescribeDBSubnetGroups where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDBSubnetGroups where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeDBSubnetGroups where+ toQuery DescribeDBSubnetGroups' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DescribeDBSubnetGroups" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBSubnetGroupName" Data.=: dbSubnetGroupName,+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords+ ]++-- | Represents the output of DescribeDBSubnetGroups.+--+-- /See:/ 'newDescribeDBSubnetGroupsResponse' smart constructor.+data DescribeDBSubnetGroupsResponse = DescribeDBSubnetGroupsResponse'+ { -- | Detailed information about one or more subnet groups.+ dbSubnetGroups :: Prelude.Maybe [DBSubnetGroup],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDBSubnetGroupsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbSubnetGroups', 'describeDBSubnetGroupsResponse_dbSubnetGroups' - Detailed information about one or more subnet groups.+--+-- 'marker', 'describeDBSubnetGroupsResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'httpStatus', 'describeDBSubnetGroupsResponse_httpStatus' - The response's http status code.+newDescribeDBSubnetGroupsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDBSubnetGroupsResponse+newDescribeDBSubnetGroupsResponse pHttpStatus_ =+ DescribeDBSubnetGroupsResponse'+ { dbSubnetGroups =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Detailed information about one or more subnet groups.+describeDBSubnetGroupsResponse_dbSubnetGroups :: Lens.Lens' DescribeDBSubnetGroupsResponse (Prelude.Maybe [DBSubnetGroup])+describeDBSubnetGroupsResponse_dbSubnetGroups = Lens.lens (\DescribeDBSubnetGroupsResponse' {dbSubnetGroups} -> dbSubnetGroups) (\s@DescribeDBSubnetGroupsResponse' {} a -> s {dbSubnetGroups = a} :: DescribeDBSubnetGroupsResponse) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeDBSubnetGroupsResponse_marker :: Lens.Lens' DescribeDBSubnetGroupsResponse (Prelude.Maybe Prelude.Text)+describeDBSubnetGroupsResponse_marker = Lens.lens (\DescribeDBSubnetGroupsResponse' {marker} -> marker) (\s@DescribeDBSubnetGroupsResponse' {} a -> s {marker = a} :: DescribeDBSubnetGroupsResponse)++-- | The response's http status code.+describeDBSubnetGroupsResponse_httpStatus :: Lens.Lens' DescribeDBSubnetGroupsResponse Prelude.Int+describeDBSubnetGroupsResponse_httpStatus = Lens.lens (\DescribeDBSubnetGroupsResponse' {httpStatus} -> httpStatus) (\s@DescribeDBSubnetGroupsResponse' {} a -> s {httpStatus = a} :: DescribeDBSubnetGroupsResponse)++instance+ Prelude.NFData+ DescribeDBSubnetGroupsResponse+ where+ rnf DescribeDBSubnetGroupsResponse' {..} =+ Prelude.rnf dbSubnetGroups+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeEngineDefaultClusterParameters.hs view
@@ -0,0 +1,266 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeEngineDefaultClusterParameters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the default engine and system parameter information for the+-- cluster database engine.+module Amazonka.DocumentDB.DescribeEngineDefaultClusterParameters+ ( -- * Creating a Request+ DescribeEngineDefaultClusterParameters (..),+ newDescribeEngineDefaultClusterParameters,++ -- * Request Lenses+ describeEngineDefaultClusterParameters_filters,+ describeEngineDefaultClusterParameters_marker,+ describeEngineDefaultClusterParameters_maxRecords,+ describeEngineDefaultClusterParameters_dbParameterGroupFamily,++ -- * Destructuring the Response+ DescribeEngineDefaultClusterParametersResponse (..),+ newDescribeEngineDefaultClusterParametersResponse,++ -- * Response Lenses+ describeEngineDefaultClusterParametersResponse_engineDefaults,+ describeEngineDefaultClusterParametersResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeEngineDefaultClusterParameters.+--+-- /See:/ 'newDescribeEngineDefaultClusterParameters' smart constructor.+data DescribeEngineDefaultClusterParameters = DescribeEngineDefaultClusterParameters'+ { -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int,+ -- | The name of the cluster parameter group family to return the engine+ -- parameter information for.+ dbParameterGroupFamily :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeEngineDefaultClusterParameters' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'describeEngineDefaultClusterParameters_filters' - This parameter is not currently supported.+--+-- 'marker', 'describeEngineDefaultClusterParameters_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeEngineDefaultClusterParameters_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+--+-- 'dbParameterGroupFamily', 'describeEngineDefaultClusterParameters_dbParameterGroupFamily' - The name of the cluster parameter group family to return the engine+-- parameter information for.+newDescribeEngineDefaultClusterParameters ::+ -- | 'dbParameterGroupFamily'+ Prelude.Text ->+ DescribeEngineDefaultClusterParameters+newDescribeEngineDefaultClusterParameters+ pDBParameterGroupFamily_ =+ DescribeEngineDefaultClusterParameters'+ { filters =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing,+ dbParameterGroupFamily =+ pDBParameterGroupFamily_+ }++-- | This parameter is not currently supported.+describeEngineDefaultClusterParameters_filters :: Lens.Lens' DescribeEngineDefaultClusterParameters (Prelude.Maybe [Filter])+describeEngineDefaultClusterParameters_filters = Lens.lens (\DescribeEngineDefaultClusterParameters' {filters} -> filters) (\s@DescribeEngineDefaultClusterParameters' {} a -> s {filters = a} :: DescribeEngineDefaultClusterParameters) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeEngineDefaultClusterParameters_marker :: Lens.Lens' DescribeEngineDefaultClusterParameters (Prelude.Maybe Prelude.Text)+describeEngineDefaultClusterParameters_marker = Lens.lens (\DescribeEngineDefaultClusterParameters' {marker} -> marker) (\s@DescribeEngineDefaultClusterParameters' {} a -> s {marker = a} :: DescribeEngineDefaultClusterParameters)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeEngineDefaultClusterParameters_maxRecords :: Lens.Lens' DescribeEngineDefaultClusterParameters (Prelude.Maybe Prelude.Int)+describeEngineDefaultClusterParameters_maxRecords = Lens.lens (\DescribeEngineDefaultClusterParameters' {maxRecords} -> maxRecords) (\s@DescribeEngineDefaultClusterParameters' {} a -> s {maxRecords = a} :: DescribeEngineDefaultClusterParameters)++-- | The name of the cluster parameter group family to return the engine+-- parameter information for.+describeEngineDefaultClusterParameters_dbParameterGroupFamily :: Lens.Lens' DescribeEngineDefaultClusterParameters Prelude.Text+describeEngineDefaultClusterParameters_dbParameterGroupFamily = Lens.lens (\DescribeEngineDefaultClusterParameters' {dbParameterGroupFamily} -> dbParameterGroupFamily) (\s@DescribeEngineDefaultClusterParameters' {} a -> s {dbParameterGroupFamily = a} :: DescribeEngineDefaultClusterParameters)++instance+ Core.AWSRequest+ DescribeEngineDefaultClusterParameters+ where+ type+ AWSResponse+ DescribeEngineDefaultClusterParameters =+ DescribeEngineDefaultClusterParametersResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeEngineDefaultClusterParametersResult"+ ( \s h x ->+ DescribeEngineDefaultClusterParametersResponse'+ Prelude.<$> (x Data..@? "EngineDefaults")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeEngineDefaultClusterParameters+ where+ hashWithSalt+ _salt+ DescribeEngineDefaultClusterParameters' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords+ `Prelude.hashWithSalt` dbParameterGroupFamily++instance+ Prelude.NFData+ DescribeEngineDefaultClusterParameters+ where+ rnf DescribeEngineDefaultClusterParameters' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords+ `Prelude.seq` Prelude.rnf dbParameterGroupFamily++instance+ Data.ToHeaders+ DescribeEngineDefaultClusterParameters+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ DescribeEngineDefaultClusterParameters+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DescribeEngineDefaultClusterParameters+ where+ toQuery DescribeEngineDefaultClusterParameters' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DescribeEngineDefaultClusterParameters" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords,+ "DBParameterGroupFamily"+ Data.=: dbParameterGroupFamily+ ]++-- | /See:/ 'newDescribeEngineDefaultClusterParametersResponse' smart constructor.+data DescribeEngineDefaultClusterParametersResponse = DescribeEngineDefaultClusterParametersResponse'+ { engineDefaults :: Prelude.Maybe EngineDefaults,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeEngineDefaultClusterParametersResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'engineDefaults', 'describeEngineDefaultClusterParametersResponse_engineDefaults' - Undocumented member.+--+-- 'httpStatus', 'describeEngineDefaultClusterParametersResponse_httpStatus' - The response's http status code.+newDescribeEngineDefaultClusterParametersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeEngineDefaultClusterParametersResponse+newDescribeEngineDefaultClusterParametersResponse+ pHttpStatus_ =+ DescribeEngineDefaultClusterParametersResponse'+ { engineDefaults =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+describeEngineDefaultClusterParametersResponse_engineDefaults :: Lens.Lens' DescribeEngineDefaultClusterParametersResponse (Prelude.Maybe EngineDefaults)+describeEngineDefaultClusterParametersResponse_engineDefaults = Lens.lens (\DescribeEngineDefaultClusterParametersResponse' {engineDefaults} -> engineDefaults) (\s@DescribeEngineDefaultClusterParametersResponse' {} a -> s {engineDefaults = a} :: DescribeEngineDefaultClusterParametersResponse)++-- | The response's http status code.+describeEngineDefaultClusterParametersResponse_httpStatus :: Lens.Lens' DescribeEngineDefaultClusterParametersResponse Prelude.Int+describeEngineDefaultClusterParametersResponse_httpStatus = Lens.lens (\DescribeEngineDefaultClusterParametersResponse' {httpStatus} -> httpStatus) (\s@DescribeEngineDefaultClusterParametersResponse' {} a -> s {httpStatus = a} :: DescribeEngineDefaultClusterParametersResponse)++instance+ Prelude.NFData+ DescribeEngineDefaultClusterParametersResponse+ where+ rnf+ DescribeEngineDefaultClusterParametersResponse' {..} =+ Prelude.rnf engineDefaults+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeEventCategories.hs view
@@ -0,0 +1,192 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeEventCategories+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Displays a list of categories for all event source types, or, if+-- specified, for a specified source type.+module Amazonka.DocumentDB.DescribeEventCategories+ ( -- * Creating a Request+ DescribeEventCategories (..),+ newDescribeEventCategories,++ -- * Request Lenses+ describeEventCategories_filters,+ describeEventCategories_sourceType,++ -- * Destructuring the Response+ DescribeEventCategoriesResponse (..),+ newDescribeEventCategoriesResponse,++ -- * Response Lenses+ describeEventCategoriesResponse_eventCategoriesMapList,+ describeEventCategoriesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeEventCategories.+--+-- /See:/ 'newDescribeEventCategories' smart constructor.+data DescribeEventCategories = DescribeEventCategories'+ { -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | The type of source that is generating the events.+ --+ -- Valid values: @db-instance@, @db-parameter-group@, @db-security-group@+ sourceType :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeEventCategories' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'describeEventCategories_filters' - This parameter is not currently supported.+--+-- 'sourceType', 'describeEventCategories_sourceType' - The type of source that is generating the events.+--+-- Valid values: @db-instance@, @db-parameter-group@, @db-security-group@+newDescribeEventCategories ::+ DescribeEventCategories+newDescribeEventCategories =+ DescribeEventCategories'+ { filters = Prelude.Nothing,+ sourceType = Prelude.Nothing+ }++-- | This parameter is not currently supported.+describeEventCategories_filters :: Lens.Lens' DescribeEventCategories (Prelude.Maybe [Filter])+describeEventCategories_filters = Lens.lens (\DescribeEventCategories' {filters} -> filters) (\s@DescribeEventCategories' {} a -> s {filters = a} :: DescribeEventCategories) Prelude.. Lens.mapping Lens.coerced++-- | The type of source that is generating the events.+--+-- Valid values: @db-instance@, @db-parameter-group@, @db-security-group@+describeEventCategories_sourceType :: Lens.Lens' DescribeEventCategories (Prelude.Maybe Prelude.Text)+describeEventCategories_sourceType = Lens.lens (\DescribeEventCategories' {sourceType} -> sourceType) (\s@DescribeEventCategories' {} a -> s {sourceType = a} :: DescribeEventCategories)++instance Core.AWSRequest DescribeEventCategories where+ type+ AWSResponse DescribeEventCategories =+ DescribeEventCategoriesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeEventCategoriesResult"+ ( \s h x ->+ DescribeEventCategoriesResponse'+ Prelude.<$> ( x+ Data..@? "EventCategoriesMapList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "EventCategoriesMap")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeEventCategories where+ hashWithSalt _salt DescribeEventCategories' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` sourceType++instance Prelude.NFData DescribeEventCategories where+ rnf DescribeEventCategories' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf sourceType++instance Data.ToHeaders DescribeEventCategories where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeEventCategories where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeEventCategories where+ toQuery DescribeEventCategories' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DescribeEventCategories" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "SourceType" Data.=: sourceType+ ]++-- | Represents the output of DescribeEventCategories.+--+-- /See:/ 'newDescribeEventCategoriesResponse' smart constructor.+data DescribeEventCategoriesResponse = DescribeEventCategoriesResponse'+ { -- | A list of event category maps.+ eventCategoriesMapList :: Prelude.Maybe [EventCategoriesMap],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeEventCategoriesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventCategoriesMapList', 'describeEventCategoriesResponse_eventCategoriesMapList' - A list of event category maps.+--+-- 'httpStatus', 'describeEventCategoriesResponse_httpStatus' - The response's http status code.+newDescribeEventCategoriesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeEventCategoriesResponse+newDescribeEventCategoriesResponse pHttpStatus_ =+ DescribeEventCategoriesResponse'+ { eventCategoriesMapList =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of event category maps.+describeEventCategoriesResponse_eventCategoriesMapList :: Lens.Lens' DescribeEventCategoriesResponse (Prelude.Maybe [EventCategoriesMap])+describeEventCategoriesResponse_eventCategoriesMapList = Lens.lens (\DescribeEventCategoriesResponse' {eventCategoriesMapList} -> eventCategoriesMapList) (\s@DescribeEventCategoriesResponse' {} a -> s {eventCategoriesMapList = a} :: DescribeEventCategoriesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeEventCategoriesResponse_httpStatus :: Lens.Lens' DescribeEventCategoriesResponse Prelude.Int+describeEventCategoriesResponse_httpStatus = Lens.lens (\DescribeEventCategoriesResponse' {httpStatus} -> httpStatus) (\s@DescribeEventCategoriesResponse' {} a -> s {httpStatus = a} :: DescribeEventCategoriesResponse)++instance+ Prelude.NFData+ DescribeEventCategoriesResponse+ where+ rnf DescribeEventCategoriesResponse' {..} =+ Prelude.rnf eventCategoriesMapList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeEventSubscriptions.hs view
@@ -0,0 +1,290 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeEventSubscriptions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the subscription descriptions for a customer account. The+-- description for a subscription includes @SubscriptionName@,+-- @SNSTopicARN@, @CustomerID@, @SourceType@, @SourceID@, @CreationTime@,+-- and @Status@.+--+-- If you specify a @SubscriptionName@, lists the description for that+-- subscription.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeEventSubscriptions+ ( -- * Creating a Request+ DescribeEventSubscriptions (..),+ newDescribeEventSubscriptions,++ -- * Request Lenses+ describeEventSubscriptions_filters,+ describeEventSubscriptions_marker,+ describeEventSubscriptions_maxRecords,+ describeEventSubscriptions_subscriptionName,++ -- * Destructuring the Response+ DescribeEventSubscriptionsResponse (..),+ newDescribeEventSubscriptionsResponse,++ -- * Response Lenses+ describeEventSubscriptionsResponse_eventSubscriptionsList,+ describeEventSubscriptionsResponse_marker,+ describeEventSubscriptionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeEventSubscriptions.+--+-- /See:/ 'newDescribeEventSubscriptions' smart constructor.+data DescribeEventSubscriptions = DescribeEventSubscriptions'+ { -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int,+ -- | The name of the Amazon DocumentDB event notification subscription that+ -- you want to describe.+ subscriptionName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeEventSubscriptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'describeEventSubscriptions_filters' - This parameter is not currently supported.+--+-- 'marker', 'describeEventSubscriptions_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeEventSubscriptions_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+--+-- 'subscriptionName', 'describeEventSubscriptions_subscriptionName' - The name of the Amazon DocumentDB event notification subscription that+-- you want to describe.+newDescribeEventSubscriptions ::+ DescribeEventSubscriptions+newDescribeEventSubscriptions =+ DescribeEventSubscriptions'+ { filters =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing,+ subscriptionName = Prelude.Nothing+ }++-- | This parameter is not currently supported.+describeEventSubscriptions_filters :: Lens.Lens' DescribeEventSubscriptions (Prelude.Maybe [Filter])+describeEventSubscriptions_filters = Lens.lens (\DescribeEventSubscriptions' {filters} -> filters) (\s@DescribeEventSubscriptions' {} a -> s {filters = a} :: DescribeEventSubscriptions) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeEventSubscriptions_marker :: Lens.Lens' DescribeEventSubscriptions (Prelude.Maybe Prelude.Text)+describeEventSubscriptions_marker = Lens.lens (\DescribeEventSubscriptions' {marker} -> marker) (\s@DescribeEventSubscriptions' {} a -> s {marker = a} :: DescribeEventSubscriptions)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeEventSubscriptions_maxRecords :: Lens.Lens' DescribeEventSubscriptions (Prelude.Maybe Prelude.Int)+describeEventSubscriptions_maxRecords = Lens.lens (\DescribeEventSubscriptions' {maxRecords} -> maxRecords) (\s@DescribeEventSubscriptions' {} a -> s {maxRecords = a} :: DescribeEventSubscriptions)++-- | The name of the Amazon DocumentDB event notification subscription that+-- you want to describe.+describeEventSubscriptions_subscriptionName :: Lens.Lens' DescribeEventSubscriptions (Prelude.Maybe Prelude.Text)+describeEventSubscriptions_subscriptionName = Lens.lens (\DescribeEventSubscriptions' {subscriptionName} -> subscriptionName) (\s@DescribeEventSubscriptions' {} a -> s {subscriptionName = a} :: DescribeEventSubscriptions)++instance Core.AWSPager DescribeEventSubscriptions where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeEventSubscriptionsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeEventSubscriptionsResponse_eventSubscriptionsList+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeEventSubscriptions_marker+ Lens..~ rs+ Lens.^? describeEventSubscriptionsResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeEventSubscriptions where+ type+ AWSResponse DescribeEventSubscriptions =+ DescribeEventSubscriptionsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeEventSubscriptionsResult"+ ( \s h x ->+ DescribeEventSubscriptionsResponse'+ Prelude.<$> ( x+ Data..@? "EventSubscriptionsList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "EventSubscription")+ )+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeEventSubscriptions where+ hashWithSalt _salt DescribeEventSubscriptions' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords+ `Prelude.hashWithSalt` subscriptionName++instance Prelude.NFData DescribeEventSubscriptions where+ rnf DescribeEventSubscriptions' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords+ `Prelude.seq` Prelude.rnf subscriptionName++instance Data.ToHeaders DescribeEventSubscriptions where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeEventSubscriptions where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeEventSubscriptions where+ toQuery DescribeEventSubscriptions' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DescribeEventSubscriptions" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords,+ "SubscriptionName" Data.=: subscriptionName+ ]++-- | Represents the output of DescribeEventSubscriptions.+--+-- /See:/ 'newDescribeEventSubscriptionsResponse' smart constructor.+data DescribeEventSubscriptionsResponse = DescribeEventSubscriptionsResponse'+ { -- | A list of event subscriptions.+ eventSubscriptionsList :: Prelude.Maybe [EventSubscription],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeEventSubscriptionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventSubscriptionsList', 'describeEventSubscriptionsResponse_eventSubscriptionsList' - A list of event subscriptions.+--+-- 'marker', 'describeEventSubscriptionsResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'httpStatus', 'describeEventSubscriptionsResponse_httpStatus' - The response's http status code.+newDescribeEventSubscriptionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeEventSubscriptionsResponse+newDescribeEventSubscriptionsResponse pHttpStatus_ =+ DescribeEventSubscriptionsResponse'+ { eventSubscriptionsList =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of event subscriptions.+describeEventSubscriptionsResponse_eventSubscriptionsList :: Lens.Lens' DescribeEventSubscriptionsResponse (Prelude.Maybe [EventSubscription])+describeEventSubscriptionsResponse_eventSubscriptionsList = Lens.lens (\DescribeEventSubscriptionsResponse' {eventSubscriptionsList} -> eventSubscriptionsList) (\s@DescribeEventSubscriptionsResponse' {} a -> s {eventSubscriptionsList = a} :: DescribeEventSubscriptionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeEventSubscriptionsResponse_marker :: Lens.Lens' DescribeEventSubscriptionsResponse (Prelude.Maybe Prelude.Text)+describeEventSubscriptionsResponse_marker = Lens.lens (\DescribeEventSubscriptionsResponse' {marker} -> marker) (\s@DescribeEventSubscriptionsResponse' {} a -> s {marker = a} :: DescribeEventSubscriptionsResponse)++-- | The response's http status code.+describeEventSubscriptionsResponse_httpStatus :: Lens.Lens' DescribeEventSubscriptionsResponse Prelude.Int+describeEventSubscriptionsResponse_httpStatus = Lens.lens (\DescribeEventSubscriptionsResponse' {httpStatus} -> httpStatus) (\s@DescribeEventSubscriptionsResponse' {} a -> s {httpStatus = a} :: DescribeEventSubscriptionsResponse)++instance+ Prelude.NFData+ DescribeEventSubscriptionsResponse+ where+ rnf DescribeEventSubscriptionsResponse' {..} =+ Prelude.rnf eventSubscriptionsList+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeEvents.hs view
@@ -0,0 +1,439 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeEvents+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns events related to instances, security groups, snapshots, and DB+-- parameter groups for the past 14 days. You can obtain events specific to+-- a particular DB instance, security group, snapshot, or parameter group+-- by providing the name as a parameter. By default, the events of the past+-- hour are returned.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeEvents+ ( -- * Creating a Request+ DescribeEvents (..),+ newDescribeEvents,++ -- * Request Lenses+ describeEvents_duration,+ describeEvents_endTime,+ describeEvents_eventCategories,+ describeEvents_filters,+ describeEvents_marker,+ describeEvents_maxRecords,+ describeEvents_sourceIdentifier,+ describeEvents_sourceType,+ describeEvents_startTime,++ -- * Destructuring the Response+ DescribeEventsResponse (..),+ newDescribeEventsResponse,++ -- * Response Lenses+ describeEventsResponse_events,+ describeEventsResponse_marker,+ describeEventsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeEvents.+--+-- /See:/ 'newDescribeEvents' smart constructor.+data DescribeEvents = DescribeEvents'+ { -- | The number of minutes to retrieve events for.+ --+ -- Default: 60+ duration :: Prelude.Maybe Prelude.Int,+ -- | The end of the time interval for which to retrieve events, specified in+ -- ISO 8601 format.+ --+ -- Example: 2009-07-08T18:00Z+ endTime :: Prelude.Maybe Data.ISO8601,+ -- | A list of event categories that trigger notifications for an event+ -- notification subscription.+ eventCategories :: Prelude.Maybe [Prelude.Text],+ -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int,+ -- | The identifier of the event source for which events are returned. If not+ -- specified, then all sources are included in the response.+ --+ -- Constraints:+ --+ -- - If @SourceIdentifier@ is provided, @SourceType@ must also be+ -- provided.+ --+ -- - If the source type is @DBInstance@, a @DBInstanceIdentifier@ must be+ -- provided.+ --+ -- - If the source type is @DBSecurityGroup@, a @DBSecurityGroupName@+ -- must be provided.+ --+ -- - If the source type is @DBParameterGroup@, a @DBParameterGroupName@+ -- must be provided.+ --+ -- - If the source type is @DBSnapshot@, a @DBSnapshotIdentifier@ must be+ -- provided.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ sourceIdentifier :: Prelude.Maybe Prelude.Text,+ -- | The event source to retrieve events for. If no value is specified, all+ -- events are returned.+ sourceType :: Prelude.Maybe SourceType,+ -- | The beginning of the time interval to retrieve events for, specified in+ -- ISO 8601 format.+ --+ -- Example: 2009-07-08T18:00Z+ startTime :: Prelude.Maybe Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeEvents' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'duration', 'describeEvents_duration' - The number of minutes to retrieve events for.+--+-- Default: 60+--+-- 'endTime', 'describeEvents_endTime' - The end of the time interval for which to retrieve events, specified in+-- ISO 8601 format.+--+-- Example: 2009-07-08T18:00Z+--+-- 'eventCategories', 'describeEvents_eventCategories' - A list of event categories that trigger notifications for an event+-- notification subscription.+--+-- 'filters', 'describeEvents_filters' - This parameter is not currently supported.+--+-- 'marker', 'describeEvents_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeEvents_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+--+-- 'sourceIdentifier', 'describeEvents_sourceIdentifier' - The identifier of the event source for which events are returned. If not+-- specified, then all sources are included in the response.+--+-- Constraints:+--+-- - If @SourceIdentifier@ is provided, @SourceType@ must also be+-- provided.+--+-- - If the source type is @DBInstance@, a @DBInstanceIdentifier@ must be+-- provided.+--+-- - If the source type is @DBSecurityGroup@, a @DBSecurityGroupName@+-- must be provided.+--+-- - If the source type is @DBParameterGroup@, a @DBParameterGroupName@+-- must be provided.+--+-- - If the source type is @DBSnapshot@, a @DBSnapshotIdentifier@ must be+-- provided.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- 'sourceType', 'describeEvents_sourceType' - The event source to retrieve events for. If no value is specified, all+-- events are returned.+--+-- 'startTime', 'describeEvents_startTime' - The beginning of the time interval to retrieve events for, specified in+-- ISO 8601 format.+--+-- Example: 2009-07-08T18:00Z+newDescribeEvents ::+ DescribeEvents+newDescribeEvents =+ DescribeEvents'+ { duration = Prelude.Nothing,+ endTime = Prelude.Nothing,+ eventCategories = Prelude.Nothing,+ filters = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing,+ sourceIdentifier = Prelude.Nothing,+ sourceType = Prelude.Nothing,+ startTime = Prelude.Nothing+ }++-- | The number of minutes to retrieve events for.+--+-- Default: 60+describeEvents_duration :: Lens.Lens' DescribeEvents (Prelude.Maybe Prelude.Int)+describeEvents_duration = Lens.lens (\DescribeEvents' {duration} -> duration) (\s@DescribeEvents' {} a -> s {duration = a} :: DescribeEvents)++-- | The end of the time interval for which to retrieve events, specified in+-- ISO 8601 format.+--+-- Example: 2009-07-08T18:00Z+describeEvents_endTime :: Lens.Lens' DescribeEvents (Prelude.Maybe Prelude.UTCTime)+describeEvents_endTime = Lens.lens (\DescribeEvents' {endTime} -> endTime) (\s@DescribeEvents' {} a -> s {endTime = a} :: DescribeEvents) Prelude.. Lens.mapping Data._Time++-- | A list of event categories that trigger notifications for an event+-- notification subscription.+describeEvents_eventCategories :: Lens.Lens' DescribeEvents (Prelude.Maybe [Prelude.Text])+describeEvents_eventCategories = Lens.lens (\DescribeEvents' {eventCategories} -> eventCategories) (\s@DescribeEvents' {} a -> s {eventCategories = a} :: DescribeEvents) Prelude.. Lens.mapping Lens.coerced++-- | This parameter is not currently supported.+describeEvents_filters :: Lens.Lens' DescribeEvents (Prelude.Maybe [Filter])+describeEvents_filters = Lens.lens (\DescribeEvents' {filters} -> filters) (\s@DescribeEvents' {} a -> s {filters = a} :: DescribeEvents) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeEvents_marker :: Lens.Lens' DescribeEvents (Prelude.Maybe Prelude.Text)+describeEvents_marker = Lens.lens (\DescribeEvents' {marker} -> marker) (\s@DescribeEvents' {} a -> s {marker = a} :: DescribeEvents)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeEvents_maxRecords :: Lens.Lens' DescribeEvents (Prelude.Maybe Prelude.Int)+describeEvents_maxRecords = Lens.lens (\DescribeEvents' {maxRecords} -> maxRecords) (\s@DescribeEvents' {} a -> s {maxRecords = a} :: DescribeEvents)++-- | The identifier of the event source for which events are returned. If not+-- specified, then all sources are included in the response.+--+-- Constraints:+--+-- - If @SourceIdentifier@ is provided, @SourceType@ must also be+-- provided.+--+-- - If the source type is @DBInstance@, a @DBInstanceIdentifier@ must be+-- provided.+--+-- - If the source type is @DBSecurityGroup@, a @DBSecurityGroupName@+-- must be provided.+--+-- - If the source type is @DBParameterGroup@, a @DBParameterGroupName@+-- must be provided.+--+-- - If the source type is @DBSnapshot@, a @DBSnapshotIdentifier@ must be+-- provided.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+describeEvents_sourceIdentifier :: Lens.Lens' DescribeEvents (Prelude.Maybe Prelude.Text)+describeEvents_sourceIdentifier = Lens.lens (\DescribeEvents' {sourceIdentifier} -> sourceIdentifier) (\s@DescribeEvents' {} a -> s {sourceIdentifier = a} :: DescribeEvents)++-- | The event source to retrieve events for. If no value is specified, all+-- events are returned.+describeEvents_sourceType :: Lens.Lens' DescribeEvents (Prelude.Maybe SourceType)+describeEvents_sourceType = Lens.lens (\DescribeEvents' {sourceType} -> sourceType) (\s@DescribeEvents' {} a -> s {sourceType = a} :: DescribeEvents)++-- | The beginning of the time interval to retrieve events for, specified in+-- ISO 8601 format.+--+-- Example: 2009-07-08T18:00Z+describeEvents_startTime :: Lens.Lens' DescribeEvents (Prelude.Maybe Prelude.UTCTime)+describeEvents_startTime = Lens.lens (\DescribeEvents' {startTime} -> startTime) (\s@DescribeEvents' {} a -> s {startTime = a} :: DescribeEvents) Prelude.. Lens.mapping Data._Time++instance Core.AWSPager DescribeEvents where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeEventsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeEventsResponse_events+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeEvents_marker+ Lens..~ rs+ Lens.^? describeEventsResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeEvents where+ type+ AWSResponse DescribeEvents =+ DescribeEventsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeEventsResult"+ ( \s h x ->+ DescribeEventsResponse'+ Prelude.<$> ( x+ Data..@? "Events"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "Event")+ )+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeEvents where+ hashWithSalt _salt DescribeEvents' {..} =+ _salt+ `Prelude.hashWithSalt` duration+ `Prelude.hashWithSalt` endTime+ `Prelude.hashWithSalt` eventCategories+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords+ `Prelude.hashWithSalt` sourceIdentifier+ `Prelude.hashWithSalt` sourceType+ `Prelude.hashWithSalt` startTime++instance Prelude.NFData DescribeEvents where+ rnf DescribeEvents' {..} =+ Prelude.rnf duration+ `Prelude.seq` Prelude.rnf endTime+ `Prelude.seq` Prelude.rnf eventCategories+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords+ `Prelude.seq` Prelude.rnf sourceIdentifier+ `Prelude.seq` Prelude.rnf sourceType+ `Prelude.seq` Prelude.rnf startTime++instance Data.ToHeaders DescribeEvents where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeEvents where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeEvents where+ toQuery DescribeEvents' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DescribeEvents" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Duration" Data.=: duration,+ "EndTime" Data.=: endTime,+ "EventCategories"+ Data.=: Data.toQuery+ ( Data.toQueryList "EventCategory"+ Prelude.<$> eventCategories+ ),+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords,+ "SourceIdentifier" Data.=: sourceIdentifier,+ "SourceType" Data.=: sourceType,+ "StartTime" Data.=: startTime+ ]++-- | Represents the output of DescribeEvents.+--+-- /See:/ 'newDescribeEventsResponse' smart constructor.+data DescribeEventsResponse = DescribeEventsResponse'+ { -- | Detailed information about one or more events.+ events :: Prelude.Maybe [Event],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeEventsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'events', 'describeEventsResponse_events' - Detailed information about one or more events.+--+-- 'marker', 'describeEventsResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'httpStatus', 'describeEventsResponse_httpStatus' - The response's http status code.+newDescribeEventsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeEventsResponse+newDescribeEventsResponse pHttpStatus_ =+ DescribeEventsResponse'+ { events = Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Detailed information about one or more events.+describeEventsResponse_events :: Lens.Lens' DescribeEventsResponse (Prelude.Maybe [Event])+describeEventsResponse_events = Lens.lens (\DescribeEventsResponse' {events} -> events) (\s@DescribeEventsResponse' {} a -> s {events = a} :: DescribeEventsResponse) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeEventsResponse_marker :: Lens.Lens' DescribeEventsResponse (Prelude.Maybe Prelude.Text)+describeEventsResponse_marker = Lens.lens (\DescribeEventsResponse' {marker} -> marker) (\s@DescribeEventsResponse' {} a -> s {marker = a} :: DescribeEventsResponse)++-- | The response's http status code.+describeEventsResponse_httpStatus :: Lens.Lens' DescribeEventsResponse Prelude.Int+describeEventsResponse_httpStatus = Lens.lens (\DescribeEventsResponse' {httpStatus} -> httpStatus) (\s@DescribeEventsResponse' {} a -> s {httpStatus = a} :: DescribeEventsResponse)++instance Prelude.NFData DescribeEventsResponse where+ rnf DescribeEventsResponse' {..} =+ Prelude.rnf events+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeGlobalClusters.hs view
@@ -0,0 +1,279 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeGlobalClusters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns information about Amazon DocumentDB global clusters. This API+-- supports pagination.+--+-- This action only applies to Amazon DocumentDB clusters.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeGlobalClusters+ ( -- * Creating a Request+ DescribeGlobalClusters (..),+ newDescribeGlobalClusters,++ -- * Request Lenses+ describeGlobalClusters_filters,+ describeGlobalClusters_globalClusterIdentifier,+ describeGlobalClusters_marker,+ describeGlobalClusters_maxRecords,++ -- * Destructuring the Response+ DescribeGlobalClustersResponse (..),+ newDescribeGlobalClustersResponse,++ -- * Response Lenses+ describeGlobalClustersResponse_globalClusters,+ describeGlobalClustersResponse_marker,+ describeGlobalClustersResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeGlobalClusters' smart constructor.+data DescribeGlobalClusters = DescribeGlobalClusters'+ { -- | A filter that specifies one or more global DB clusters to describe.+ --+ -- Supported filters: @db-cluster-id@ accepts cluster identifiers and+ -- cluster Amazon Resource Names (ARNs). The results list will only include+ -- information about the clusters identified by these ARNs.+ filters :: Prelude.Maybe [Filter],+ -- | The user-supplied cluster identifier. If this parameter is specified,+ -- information from only the specific cluster is returned. This parameter+ -- isn\'t case-sensitive.+ globalClusterIdentifier :: Prelude.Maybe Prelude.Text,+ -- | An optional pagination token provided by a previous+ -- @DescribeGlobalClusters@ request. If this parameter is specified, the+ -- response includes only records beyond the marker, up to the value+ -- specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- called a marker is included in the response so that you can retrieve the+ -- remaining results.+ maxRecords :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeGlobalClusters' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'describeGlobalClusters_filters' - A filter that specifies one or more global DB clusters to describe.+--+-- Supported filters: @db-cluster-id@ accepts cluster identifiers and+-- cluster Amazon Resource Names (ARNs). The results list will only include+-- information about the clusters identified by these ARNs.+--+-- 'globalClusterIdentifier', 'describeGlobalClusters_globalClusterIdentifier' - The user-supplied cluster identifier. If this parameter is specified,+-- information from only the specific cluster is returned. This parameter+-- isn\'t case-sensitive.+--+-- 'marker', 'describeGlobalClusters_marker' - An optional pagination token provided by a previous+-- @DescribeGlobalClusters@ request. If this parameter is specified, the+-- response includes only records beyond the marker, up to the value+-- specified by @MaxRecords@.+--+-- 'maxRecords', 'describeGlobalClusters_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- called a marker is included in the response so that you can retrieve the+-- remaining results.+newDescribeGlobalClusters ::+ DescribeGlobalClusters+newDescribeGlobalClusters =+ DescribeGlobalClusters'+ { filters = Prelude.Nothing,+ globalClusterIdentifier = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing+ }++-- | A filter that specifies one or more global DB clusters to describe.+--+-- Supported filters: @db-cluster-id@ accepts cluster identifiers and+-- cluster Amazon Resource Names (ARNs). The results list will only include+-- information about the clusters identified by these ARNs.+describeGlobalClusters_filters :: Lens.Lens' DescribeGlobalClusters (Prelude.Maybe [Filter])+describeGlobalClusters_filters = Lens.lens (\DescribeGlobalClusters' {filters} -> filters) (\s@DescribeGlobalClusters' {} a -> s {filters = a} :: DescribeGlobalClusters) Prelude.. Lens.mapping Lens.coerced++-- | The user-supplied cluster identifier. If this parameter is specified,+-- information from only the specific cluster is returned. This parameter+-- isn\'t case-sensitive.+describeGlobalClusters_globalClusterIdentifier :: Lens.Lens' DescribeGlobalClusters (Prelude.Maybe Prelude.Text)+describeGlobalClusters_globalClusterIdentifier = Lens.lens (\DescribeGlobalClusters' {globalClusterIdentifier} -> globalClusterIdentifier) (\s@DescribeGlobalClusters' {} a -> s {globalClusterIdentifier = a} :: DescribeGlobalClusters)++-- | An optional pagination token provided by a previous+-- @DescribeGlobalClusters@ request. If this parameter is specified, the+-- response includes only records beyond the marker, up to the value+-- specified by @MaxRecords@.+describeGlobalClusters_marker :: Lens.Lens' DescribeGlobalClusters (Prelude.Maybe Prelude.Text)+describeGlobalClusters_marker = Lens.lens (\DescribeGlobalClusters' {marker} -> marker) (\s@DescribeGlobalClusters' {} a -> s {marker = a} :: DescribeGlobalClusters)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- called a marker is included in the response so that you can retrieve the+-- remaining results.+describeGlobalClusters_maxRecords :: Lens.Lens' DescribeGlobalClusters (Prelude.Maybe Prelude.Int)+describeGlobalClusters_maxRecords = Lens.lens (\DescribeGlobalClusters' {maxRecords} -> maxRecords) (\s@DescribeGlobalClusters' {} a -> s {maxRecords = a} :: DescribeGlobalClusters)++instance Core.AWSPager DescribeGlobalClusters where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeGlobalClustersResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeGlobalClustersResponse_globalClusters+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeGlobalClusters_marker+ Lens..~ rs+ Lens.^? describeGlobalClustersResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeGlobalClusters where+ type+ AWSResponse DescribeGlobalClusters =+ DescribeGlobalClustersResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeGlobalClustersResult"+ ( \s h x ->+ DescribeGlobalClustersResponse'+ Prelude.<$> ( x+ Data..@? "GlobalClusters"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "GlobalClusterMember")+ )+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeGlobalClusters where+ hashWithSalt _salt DescribeGlobalClusters' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` globalClusterIdentifier+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords++instance Prelude.NFData DescribeGlobalClusters where+ rnf DescribeGlobalClusters' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf globalClusterIdentifier+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords++instance Data.ToHeaders DescribeGlobalClusters where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeGlobalClusters where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribeGlobalClusters where+ toQuery DescribeGlobalClusters' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DescribeGlobalClusters" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "GlobalClusterIdentifier"+ Data.=: globalClusterIdentifier,+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords+ ]++-- | /See:/ 'newDescribeGlobalClustersResponse' smart constructor.+data DescribeGlobalClustersResponse = DescribeGlobalClustersResponse'+ { globalClusters :: Prelude.Maybe [GlobalCluster],+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeGlobalClustersResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'globalClusters', 'describeGlobalClustersResponse_globalClusters' -+--+-- 'marker', 'describeGlobalClustersResponse_marker' -+--+-- 'httpStatus', 'describeGlobalClustersResponse_httpStatus' - The response's http status code.+newDescribeGlobalClustersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeGlobalClustersResponse+newDescribeGlobalClustersResponse pHttpStatus_ =+ DescribeGlobalClustersResponse'+ { globalClusters =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++describeGlobalClustersResponse_globalClusters :: Lens.Lens' DescribeGlobalClustersResponse (Prelude.Maybe [GlobalCluster])+describeGlobalClustersResponse_globalClusters = Lens.lens (\DescribeGlobalClustersResponse' {globalClusters} -> globalClusters) (\s@DescribeGlobalClustersResponse' {} a -> s {globalClusters = a} :: DescribeGlobalClustersResponse) Prelude.. Lens.mapping Lens.coerced++describeGlobalClustersResponse_marker :: Lens.Lens' DescribeGlobalClustersResponse (Prelude.Maybe Prelude.Text)+describeGlobalClustersResponse_marker = Lens.lens (\DescribeGlobalClustersResponse' {marker} -> marker) (\s@DescribeGlobalClustersResponse' {} a -> s {marker = a} :: DescribeGlobalClustersResponse)++-- | The response's http status code.+describeGlobalClustersResponse_httpStatus :: Lens.Lens' DescribeGlobalClustersResponse Prelude.Int+describeGlobalClustersResponse_httpStatus = Lens.lens (\DescribeGlobalClustersResponse' {httpStatus} -> httpStatus) (\s@DescribeGlobalClustersResponse' {} a -> s {httpStatus = a} :: DescribeGlobalClustersResponse)++instance+ Prelude.NFData+ DescribeGlobalClustersResponse+ where+ rnf DescribeGlobalClustersResponse' {..} =+ Prelude.rnf globalClusters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribeOrderableDBInstanceOptions.hs view
@@ -0,0 +1,375 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribeOrderableDBInstanceOptions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of orderable instance options for the specified engine.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribeOrderableDBInstanceOptions+ ( -- * Creating a Request+ DescribeOrderableDBInstanceOptions (..),+ newDescribeOrderableDBInstanceOptions,++ -- * Request Lenses+ describeOrderableDBInstanceOptions_dbInstanceClass,+ describeOrderableDBInstanceOptions_engineVersion,+ describeOrderableDBInstanceOptions_filters,+ describeOrderableDBInstanceOptions_licenseModel,+ describeOrderableDBInstanceOptions_marker,+ describeOrderableDBInstanceOptions_maxRecords,+ describeOrderableDBInstanceOptions_vpc,+ describeOrderableDBInstanceOptions_engine,++ -- * Destructuring the Response+ DescribeOrderableDBInstanceOptionsResponse (..),+ newDescribeOrderableDBInstanceOptionsResponse,++ -- * Response Lenses+ describeOrderableDBInstanceOptionsResponse_marker,+ describeOrderableDBInstanceOptionsResponse_orderableDBInstanceOptions,+ describeOrderableDBInstanceOptionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribeOrderableDBInstanceOptions.+--+-- /See:/ 'newDescribeOrderableDBInstanceOptions' smart constructor.+data DescribeOrderableDBInstanceOptions = DescribeOrderableDBInstanceOptions'+ { -- | The instance class filter value. Specify this parameter to show only the+ -- available offerings that match the specified instance class.+ dbInstanceClass :: Prelude.Maybe Prelude.Text,+ -- | The engine version filter value. Specify this parameter to show only the+ -- available offerings that match the specified engine version.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | The license model filter value. Specify this parameter to show only the+ -- available offerings that match the specified license model.+ licenseModel :: Prelude.Maybe Prelude.Text,+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int,+ -- | The virtual private cloud (VPC) filter value. Specify this parameter to+ -- show only the available VPC or non-VPC offerings.+ vpc :: Prelude.Maybe Prelude.Bool,+ -- | The name of the engine to retrieve instance options for.+ engine :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeOrderableDBInstanceOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbInstanceClass', 'describeOrderableDBInstanceOptions_dbInstanceClass' - The instance class filter value. Specify this parameter to show only the+-- available offerings that match the specified instance class.+--+-- 'engineVersion', 'describeOrderableDBInstanceOptions_engineVersion' - The engine version filter value. Specify this parameter to show only the+-- available offerings that match the specified engine version.+--+-- 'filters', 'describeOrderableDBInstanceOptions_filters' - This parameter is not currently supported.+--+-- 'licenseModel', 'describeOrderableDBInstanceOptions_licenseModel' - The license model filter value. Specify this parameter to show only the+-- available offerings that match the specified license model.+--+-- 'marker', 'describeOrderableDBInstanceOptions_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describeOrderableDBInstanceOptions_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+--+-- 'vpc', 'describeOrderableDBInstanceOptions_vpc' - The virtual private cloud (VPC) filter value. Specify this parameter to+-- show only the available VPC or non-VPC offerings.+--+-- 'engine', 'describeOrderableDBInstanceOptions_engine' - The name of the engine to retrieve instance options for.+newDescribeOrderableDBInstanceOptions ::+ -- | 'engine'+ Prelude.Text ->+ DescribeOrderableDBInstanceOptions+newDescribeOrderableDBInstanceOptions pEngine_ =+ DescribeOrderableDBInstanceOptions'+ { dbInstanceClass =+ Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ filters = Prelude.Nothing,+ licenseModel = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing,+ vpc = Prelude.Nothing,+ engine = pEngine_+ }++-- | The instance class filter value. Specify this parameter to show only the+-- available offerings that match the specified instance class.+describeOrderableDBInstanceOptions_dbInstanceClass :: Lens.Lens' DescribeOrderableDBInstanceOptions (Prelude.Maybe Prelude.Text)+describeOrderableDBInstanceOptions_dbInstanceClass = Lens.lens (\DescribeOrderableDBInstanceOptions' {dbInstanceClass} -> dbInstanceClass) (\s@DescribeOrderableDBInstanceOptions' {} a -> s {dbInstanceClass = a} :: DescribeOrderableDBInstanceOptions)++-- | The engine version filter value. Specify this parameter to show only the+-- available offerings that match the specified engine version.+describeOrderableDBInstanceOptions_engineVersion :: Lens.Lens' DescribeOrderableDBInstanceOptions (Prelude.Maybe Prelude.Text)+describeOrderableDBInstanceOptions_engineVersion = Lens.lens (\DescribeOrderableDBInstanceOptions' {engineVersion} -> engineVersion) (\s@DescribeOrderableDBInstanceOptions' {} a -> s {engineVersion = a} :: DescribeOrderableDBInstanceOptions)++-- | This parameter is not currently supported.+describeOrderableDBInstanceOptions_filters :: Lens.Lens' DescribeOrderableDBInstanceOptions (Prelude.Maybe [Filter])+describeOrderableDBInstanceOptions_filters = Lens.lens (\DescribeOrderableDBInstanceOptions' {filters} -> filters) (\s@DescribeOrderableDBInstanceOptions' {} a -> s {filters = a} :: DescribeOrderableDBInstanceOptions) Prelude.. Lens.mapping Lens.coerced++-- | The license model filter value. Specify this parameter to show only the+-- available offerings that match the specified license model.+describeOrderableDBInstanceOptions_licenseModel :: Lens.Lens' DescribeOrderableDBInstanceOptions (Prelude.Maybe Prelude.Text)+describeOrderableDBInstanceOptions_licenseModel = Lens.lens (\DescribeOrderableDBInstanceOptions' {licenseModel} -> licenseModel) (\s@DescribeOrderableDBInstanceOptions' {} a -> s {licenseModel = a} :: DescribeOrderableDBInstanceOptions)++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeOrderableDBInstanceOptions_marker :: Lens.Lens' DescribeOrderableDBInstanceOptions (Prelude.Maybe Prelude.Text)+describeOrderableDBInstanceOptions_marker = Lens.lens (\DescribeOrderableDBInstanceOptions' {marker} -> marker) (\s@DescribeOrderableDBInstanceOptions' {} a -> s {marker = a} :: DescribeOrderableDBInstanceOptions)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describeOrderableDBInstanceOptions_maxRecords :: Lens.Lens' DescribeOrderableDBInstanceOptions (Prelude.Maybe Prelude.Int)+describeOrderableDBInstanceOptions_maxRecords = Lens.lens (\DescribeOrderableDBInstanceOptions' {maxRecords} -> maxRecords) (\s@DescribeOrderableDBInstanceOptions' {} a -> s {maxRecords = a} :: DescribeOrderableDBInstanceOptions)++-- | The virtual private cloud (VPC) filter value. Specify this parameter to+-- show only the available VPC or non-VPC offerings.+describeOrderableDBInstanceOptions_vpc :: Lens.Lens' DescribeOrderableDBInstanceOptions (Prelude.Maybe Prelude.Bool)+describeOrderableDBInstanceOptions_vpc = Lens.lens (\DescribeOrderableDBInstanceOptions' {vpc} -> vpc) (\s@DescribeOrderableDBInstanceOptions' {} a -> s {vpc = a} :: DescribeOrderableDBInstanceOptions)++-- | The name of the engine to retrieve instance options for.+describeOrderableDBInstanceOptions_engine :: Lens.Lens' DescribeOrderableDBInstanceOptions Prelude.Text+describeOrderableDBInstanceOptions_engine = Lens.lens (\DescribeOrderableDBInstanceOptions' {engine} -> engine) (\s@DescribeOrderableDBInstanceOptions' {} a -> s {engine = a} :: DescribeOrderableDBInstanceOptions)++instance+ Core.AWSPager+ DescribeOrderableDBInstanceOptions+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeOrderableDBInstanceOptionsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeOrderableDBInstanceOptionsResponse_orderableDBInstanceOptions+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeOrderableDBInstanceOptions_marker+ Lens..~ rs+ Lens.^? describeOrderableDBInstanceOptionsResponse_marker+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ DescribeOrderableDBInstanceOptions+ where+ type+ AWSResponse DescribeOrderableDBInstanceOptions =+ DescribeOrderableDBInstanceOptionsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribeOrderableDBInstanceOptionsResult"+ ( \s h x ->+ DescribeOrderableDBInstanceOptionsResponse'+ Prelude.<$> (x Data..@? "Marker")+ Prelude.<*> ( x+ Data..@? "OrderableDBInstanceOptions"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may+ (Data.parseXMLList "OrderableDBInstanceOption")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeOrderableDBInstanceOptions+ where+ hashWithSalt+ _salt+ DescribeOrderableDBInstanceOptions' {..} =+ _salt+ `Prelude.hashWithSalt` dbInstanceClass+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` licenseModel+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords+ `Prelude.hashWithSalt` vpc+ `Prelude.hashWithSalt` engine++instance+ Prelude.NFData+ DescribeOrderableDBInstanceOptions+ where+ rnf DescribeOrderableDBInstanceOptions' {..} =+ Prelude.rnf dbInstanceClass+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf licenseModel+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords+ `Prelude.seq` Prelude.rnf vpc+ `Prelude.seq` Prelude.rnf engine++instance+ Data.ToHeaders+ DescribeOrderableDBInstanceOptions+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ DescribeOrderableDBInstanceOptions+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DescribeOrderableDBInstanceOptions+ where+ toQuery DescribeOrderableDBInstanceOptions' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DescribeOrderableDBInstanceOptions" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBInstanceClass" Data.=: dbInstanceClass,+ "EngineVersion" Data.=: engineVersion,+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "LicenseModel" Data.=: licenseModel,+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords,+ "Vpc" Data.=: vpc,+ "Engine" Data.=: engine+ ]++-- | Represents the output of DescribeOrderableDBInstanceOptions.+--+-- /See:/ 'newDescribeOrderableDBInstanceOptionsResponse' smart constructor.+data DescribeOrderableDBInstanceOptionsResponse = DescribeOrderableDBInstanceOptionsResponse'+ { -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The options that are available for a particular orderable instance.+ orderableDBInstanceOptions :: Prelude.Maybe [OrderableDBInstanceOption],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeOrderableDBInstanceOptionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'describeOrderableDBInstanceOptionsResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'orderableDBInstanceOptions', 'describeOrderableDBInstanceOptionsResponse_orderableDBInstanceOptions' - The options that are available for a particular orderable instance.+--+-- 'httpStatus', 'describeOrderableDBInstanceOptionsResponse_httpStatus' - The response's http status code.+newDescribeOrderableDBInstanceOptionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeOrderableDBInstanceOptionsResponse+newDescribeOrderableDBInstanceOptionsResponse+ pHttpStatus_ =+ DescribeOrderableDBInstanceOptionsResponse'+ { marker =+ Prelude.Nothing,+ orderableDBInstanceOptions =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describeOrderableDBInstanceOptionsResponse_marker :: Lens.Lens' DescribeOrderableDBInstanceOptionsResponse (Prelude.Maybe Prelude.Text)+describeOrderableDBInstanceOptionsResponse_marker = Lens.lens (\DescribeOrderableDBInstanceOptionsResponse' {marker} -> marker) (\s@DescribeOrderableDBInstanceOptionsResponse' {} a -> s {marker = a} :: DescribeOrderableDBInstanceOptionsResponse)++-- | The options that are available for a particular orderable instance.+describeOrderableDBInstanceOptionsResponse_orderableDBInstanceOptions :: Lens.Lens' DescribeOrderableDBInstanceOptionsResponse (Prelude.Maybe [OrderableDBInstanceOption])+describeOrderableDBInstanceOptionsResponse_orderableDBInstanceOptions = Lens.lens (\DescribeOrderableDBInstanceOptionsResponse' {orderableDBInstanceOptions} -> orderableDBInstanceOptions) (\s@DescribeOrderableDBInstanceOptionsResponse' {} a -> s {orderableDBInstanceOptions = a} :: DescribeOrderableDBInstanceOptionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeOrderableDBInstanceOptionsResponse_httpStatus :: Lens.Lens' DescribeOrderableDBInstanceOptionsResponse Prelude.Int+describeOrderableDBInstanceOptionsResponse_httpStatus = Lens.lens (\DescribeOrderableDBInstanceOptionsResponse' {httpStatus} -> httpStatus) (\s@DescribeOrderableDBInstanceOptionsResponse' {} a -> s {httpStatus = a} :: DescribeOrderableDBInstanceOptionsResponse)++instance+ Prelude.NFData+ DescribeOrderableDBInstanceOptionsResponse+ where+ rnf DescribeOrderableDBInstanceOptionsResponse' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf orderableDBInstanceOptions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/DescribePendingMaintenanceActions.hs view
@@ -0,0 +1,345 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.DescribePendingMaintenanceActions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of resources (for example, instances) that have at least+-- one pending maintenance action.+--+-- This operation returns paginated results.+module Amazonka.DocumentDB.DescribePendingMaintenanceActions+ ( -- * Creating a Request+ DescribePendingMaintenanceActions (..),+ newDescribePendingMaintenanceActions,++ -- * Request Lenses+ describePendingMaintenanceActions_filters,+ describePendingMaintenanceActions_marker,+ describePendingMaintenanceActions_maxRecords,+ describePendingMaintenanceActions_resourceIdentifier,++ -- * Destructuring the Response+ DescribePendingMaintenanceActionsResponse (..),+ newDescribePendingMaintenanceActionsResponse,++ -- * Response Lenses+ describePendingMaintenanceActionsResponse_marker,+ describePendingMaintenanceActionsResponse_pendingMaintenanceActions,+ describePendingMaintenanceActionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to DescribePendingMaintenanceActions.+--+-- /See:/ 'newDescribePendingMaintenanceActions' smart constructor.+data DescribePendingMaintenanceActions = DescribePendingMaintenanceActions'+ { -- | A filter that specifies one or more resources to return pending+ -- maintenance actions for.+ --+ -- Supported filters:+ --+ -- - @db-cluster-id@ - Accepts cluster identifiers and cluster Amazon+ -- Resource Names (ARNs). The results list includes only pending+ -- maintenance actions for the clusters identified by these ARNs.+ --+ -- - @db-instance-id@ - Accepts instance identifiers and instance ARNs.+ -- The results list includes only pending maintenance actions for the+ -- DB instances identified by these ARNs.+ filters :: Prelude.Maybe [Filter],+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of records to include in the response. If more+ -- records exist than the specified @MaxRecords@ value, a pagination token+ -- (marker) is included in the response so that the remaining results can+ -- be retrieved.+ --+ -- Default: 100+ --+ -- Constraints: Minimum 20, maximum 100.+ maxRecords :: Prelude.Maybe Prelude.Int,+ -- | The ARN of a resource to return pending maintenance actions for.+ resourceIdentifier :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePendingMaintenanceActions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'describePendingMaintenanceActions_filters' - A filter that specifies one or more resources to return pending+-- maintenance actions for.+--+-- Supported filters:+--+-- - @db-cluster-id@ - Accepts cluster identifiers and cluster Amazon+-- Resource Names (ARNs). The results list includes only pending+-- maintenance actions for the clusters identified by these ARNs.+--+-- - @db-instance-id@ - Accepts instance identifiers and instance ARNs.+-- The results list includes only pending maintenance actions for the+-- DB instances identified by these ARNs.+--+-- 'marker', 'describePendingMaintenanceActions_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'maxRecords', 'describePendingMaintenanceActions_maxRecords' - The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+--+-- 'resourceIdentifier', 'describePendingMaintenanceActions_resourceIdentifier' - The ARN of a resource to return pending maintenance actions for.+newDescribePendingMaintenanceActions ::+ DescribePendingMaintenanceActions+newDescribePendingMaintenanceActions =+ DescribePendingMaintenanceActions'+ { filters =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ maxRecords = Prelude.Nothing,+ resourceIdentifier = Prelude.Nothing+ }++-- | A filter that specifies one or more resources to return pending+-- maintenance actions for.+--+-- Supported filters:+--+-- - @db-cluster-id@ - Accepts cluster identifiers and cluster Amazon+-- Resource Names (ARNs). The results list includes only pending+-- maintenance actions for the clusters identified by these ARNs.+--+-- - @db-instance-id@ - Accepts instance identifiers and instance ARNs.+-- The results list includes only pending maintenance actions for the+-- DB instances identified by these ARNs.+describePendingMaintenanceActions_filters :: Lens.Lens' DescribePendingMaintenanceActions (Prelude.Maybe [Filter])+describePendingMaintenanceActions_filters = Lens.lens (\DescribePendingMaintenanceActions' {filters} -> filters) (\s@DescribePendingMaintenanceActions' {} a -> s {filters = a} :: DescribePendingMaintenanceActions) Prelude.. Lens.mapping Lens.coerced++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describePendingMaintenanceActions_marker :: Lens.Lens' DescribePendingMaintenanceActions (Prelude.Maybe Prelude.Text)+describePendingMaintenanceActions_marker = Lens.lens (\DescribePendingMaintenanceActions' {marker} -> marker) (\s@DescribePendingMaintenanceActions' {} a -> s {marker = a} :: DescribePendingMaintenanceActions)++-- | The maximum number of records to include in the response. If more+-- records exist than the specified @MaxRecords@ value, a pagination token+-- (marker) is included in the response so that the remaining results can+-- be retrieved.+--+-- Default: 100+--+-- Constraints: Minimum 20, maximum 100.+describePendingMaintenanceActions_maxRecords :: Lens.Lens' DescribePendingMaintenanceActions (Prelude.Maybe Prelude.Int)+describePendingMaintenanceActions_maxRecords = Lens.lens (\DescribePendingMaintenanceActions' {maxRecords} -> maxRecords) (\s@DescribePendingMaintenanceActions' {} a -> s {maxRecords = a} :: DescribePendingMaintenanceActions)++-- | The ARN of a resource to return pending maintenance actions for.+describePendingMaintenanceActions_resourceIdentifier :: Lens.Lens' DescribePendingMaintenanceActions (Prelude.Maybe Prelude.Text)+describePendingMaintenanceActions_resourceIdentifier = Lens.lens (\DescribePendingMaintenanceActions' {resourceIdentifier} -> resourceIdentifier) (\s@DescribePendingMaintenanceActions' {} a -> s {resourceIdentifier = a} :: DescribePendingMaintenanceActions)++instance+ Core.AWSPager+ DescribePendingMaintenanceActions+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describePendingMaintenanceActionsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describePendingMaintenanceActionsResponse_pendingMaintenanceActions+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describePendingMaintenanceActions_marker+ Lens..~ rs+ Lens.^? describePendingMaintenanceActionsResponse_marker+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ DescribePendingMaintenanceActions+ where+ type+ AWSResponse DescribePendingMaintenanceActions =+ DescribePendingMaintenanceActionsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DescribePendingMaintenanceActionsResult"+ ( \s h x ->+ DescribePendingMaintenanceActionsResponse'+ Prelude.<$> (x Data..@? "Marker")+ Prelude.<*> ( x+ Data..@? "PendingMaintenanceActions"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may+ ( Data.parseXMLList+ "ResourcePendingMaintenanceActions"+ )+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribePendingMaintenanceActions+ where+ hashWithSalt+ _salt+ DescribePendingMaintenanceActions' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxRecords+ `Prelude.hashWithSalt` resourceIdentifier++instance+ Prelude.NFData+ DescribePendingMaintenanceActions+ where+ rnf DescribePendingMaintenanceActions' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxRecords+ `Prelude.seq` Prelude.rnf resourceIdentifier++instance+ Data.ToHeaders+ DescribePendingMaintenanceActions+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ DescribePendingMaintenanceActions+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DescribePendingMaintenanceActions+ where+ toQuery DescribePendingMaintenanceActions' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DescribePendingMaintenanceActions" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "Marker" Data.=: marker,+ "MaxRecords" Data.=: maxRecords,+ "ResourceIdentifier" Data.=: resourceIdentifier+ ]++-- | Represents the output of DescribePendingMaintenanceActions.+--+-- /See:/ 'newDescribePendingMaintenanceActionsResponse' smart constructor.+data DescribePendingMaintenanceActionsResponse = DescribePendingMaintenanceActionsResponse'+ { -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The maintenance actions to be applied.+ pendingMaintenanceActions :: Prelude.Maybe [ResourcePendingMaintenanceActions],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePendingMaintenanceActionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'describePendingMaintenanceActionsResponse_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'pendingMaintenanceActions', 'describePendingMaintenanceActionsResponse_pendingMaintenanceActions' - The maintenance actions to be applied.+--+-- 'httpStatus', 'describePendingMaintenanceActionsResponse_httpStatus' - The response's http status code.+newDescribePendingMaintenanceActionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribePendingMaintenanceActionsResponse+newDescribePendingMaintenanceActionsResponse+ pHttpStatus_ =+ DescribePendingMaintenanceActionsResponse'+ { marker =+ Prelude.Nothing,+ pendingMaintenanceActions =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+describePendingMaintenanceActionsResponse_marker :: Lens.Lens' DescribePendingMaintenanceActionsResponse (Prelude.Maybe Prelude.Text)+describePendingMaintenanceActionsResponse_marker = Lens.lens (\DescribePendingMaintenanceActionsResponse' {marker} -> marker) (\s@DescribePendingMaintenanceActionsResponse' {} a -> s {marker = a} :: DescribePendingMaintenanceActionsResponse)++-- | The maintenance actions to be applied.+describePendingMaintenanceActionsResponse_pendingMaintenanceActions :: Lens.Lens' DescribePendingMaintenanceActionsResponse (Prelude.Maybe [ResourcePendingMaintenanceActions])+describePendingMaintenanceActionsResponse_pendingMaintenanceActions = Lens.lens (\DescribePendingMaintenanceActionsResponse' {pendingMaintenanceActions} -> pendingMaintenanceActions) (\s@DescribePendingMaintenanceActionsResponse' {} a -> s {pendingMaintenanceActions = a} :: DescribePendingMaintenanceActionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describePendingMaintenanceActionsResponse_httpStatus :: Lens.Lens' DescribePendingMaintenanceActionsResponse Prelude.Int+describePendingMaintenanceActionsResponse_httpStatus = Lens.lens (\DescribePendingMaintenanceActionsResponse' {httpStatus} -> httpStatus) (\s@DescribePendingMaintenanceActionsResponse' {} a -> s {httpStatus = a} :: DescribePendingMaintenanceActionsResponse)++instance+ Prelude.NFData+ DescribePendingMaintenanceActionsResponse+ where+ rnf DescribePendingMaintenanceActionsResponse' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf pendingMaintenanceActions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/FailoverDBCluster.hs view
@@ -0,0 +1,208 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.FailoverDBCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Forces a failover for a cluster.+--+-- A failover for a cluster promotes one of the Amazon DocumentDB replicas+-- (read-only instances) in the cluster to be the primary instance (the+-- cluster writer).+--+-- If the primary instance fails, Amazon DocumentDB automatically fails+-- over to an Amazon DocumentDB replica, if one exists. You can force a+-- failover when you want to simulate a failure of a primary instance for+-- testing.+module Amazonka.DocumentDB.FailoverDBCluster+ ( -- * Creating a Request+ FailoverDBCluster (..),+ newFailoverDBCluster,++ -- * Request Lenses+ failoverDBCluster_dbClusterIdentifier,+ failoverDBCluster_targetDBInstanceIdentifier,++ -- * Destructuring the Response+ FailoverDBClusterResponse (..),+ newFailoverDBClusterResponse,++ -- * Response Lenses+ failoverDBClusterResponse_dbCluster,+ failoverDBClusterResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to FailoverDBCluster.+--+-- /See:/ 'newFailoverDBCluster' smart constructor.+data FailoverDBCluster = FailoverDBCluster'+ { -- | A cluster identifier to force a failover for. This parameter is not case+ -- sensitive.+ --+ -- Constraints:+ --+ -- - Must match the identifier of an existing @DBCluster@.+ dbClusterIdentifier :: Prelude.Maybe Prelude.Text,+ -- | The name of the instance to promote to the primary instance.+ --+ -- You must specify the instance identifier for an Amazon DocumentDB+ -- replica in the cluster. For example, @mydbcluster-replica1@.+ targetDBInstanceIdentifier :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FailoverDBCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterIdentifier', 'failoverDBCluster_dbClusterIdentifier' - A cluster identifier to force a failover for. This parameter is not case+-- sensitive.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBCluster@.+--+-- 'targetDBInstanceIdentifier', 'failoverDBCluster_targetDBInstanceIdentifier' - The name of the instance to promote to the primary instance.+--+-- You must specify the instance identifier for an Amazon DocumentDB+-- replica in the cluster. For example, @mydbcluster-replica1@.+newFailoverDBCluster ::+ FailoverDBCluster+newFailoverDBCluster =+ FailoverDBCluster'+ { dbClusterIdentifier =+ Prelude.Nothing,+ targetDBInstanceIdentifier = Prelude.Nothing+ }++-- | A cluster identifier to force a failover for. This parameter is not case+-- sensitive.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBCluster@.+failoverDBCluster_dbClusterIdentifier :: Lens.Lens' FailoverDBCluster (Prelude.Maybe Prelude.Text)+failoverDBCluster_dbClusterIdentifier = Lens.lens (\FailoverDBCluster' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@FailoverDBCluster' {} a -> s {dbClusterIdentifier = a} :: FailoverDBCluster)++-- | The name of the instance to promote to the primary instance.+--+-- You must specify the instance identifier for an Amazon DocumentDB+-- replica in the cluster. For example, @mydbcluster-replica1@.+failoverDBCluster_targetDBInstanceIdentifier :: Lens.Lens' FailoverDBCluster (Prelude.Maybe Prelude.Text)+failoverDBCluster_targetDBInstanceIdentifier = Lens.lens (\FailoverDBCluster' {targetDBInstanceIdentifier} -> targetDBInstanceIdentifier) (\s@FailoverDBCluster' {} a -> s {targetDBInstanceIdentifier = a} :: FailoverDBCluster)++instance Core.AWSRequest FailoverDBCluster where+ type+ AWSResponse FailoverDBCluster =+ FailoverDBClusterResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "FailoverDBClusterResult"+ ( \s h x ->+ FailoverDBClusterResponse'+ Prelude.<$> (x Data..@? "DBCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable FailoverDBCluster where+ hashWithSalt _salt FailoverDBCluster' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterIdentifier+ `Prelude.hashWithSalt` targetDBInstanceIdentifier++instance Prelude.NFData FailoverDBCluster where+ rnf FailoverDBCluster' {..} =+ Prelude.rnf dbClusterIdentifier+ `Prelude.seq` Prelude.rnf targetDBInstanceIdentifier++instance Data.ToHeaders FailoverDBCluster where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath FailoverDBCluster where+ toPath = Prelude.const "/"++instance Data.ToQuery FailoverDBCluster where+ toQuery FailoverDBCluster' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("FailoverDBCluster" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBClusterIdentifier" Data.=: dbClusterIdentifier,+ "TargetDBInstanceIdentifier"+ Data.=: targetDBInstanceIdentifier+ ]++-- | /See:/ 'newFailoverDBClusterResponse' smart constructor.+data FailoverDBClusterResponse = FailoverDBClusterResponse'+ { dbCluster :: Prelude.Maybe DBCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FailoverDBClusterResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbCluster', 'failoverDBClusterResponse_dbCluster' - Undocumented member.+--+-- 'httpStatus', 'failoverDBClusterResponse_httpStatus' - The response's http status code.+newFailoverDBClusterResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ FailoverDBClusterResponse+newFailoverDBClusterResponse pHttpStatus_ =+ FailoverDBClusterResponse'+ { dbCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+failoverDBClusterResponse_dbCluster :: Lens.Lens' FailoverDBClusterResponse (Prelude.Maybe DBCluster)+failoverDBClusterResponse_dbCluster = Lens.lens (\FailoverDBClusterResponse' {dbCluster} -> dbCluster) (\s@FailoverDBClusterResponse' {} a -> s {dbCluster = a} :: FailoverDBClusterResponse)++-- | The response's http status code.+failoverDBClusterResponse_httpStatus :: Lens.Lens' FailoverDBClusterResponse Prelude.Int+failoverDBClusterResponse_httpStatus = Lens.lens (\FailoverDBClusterResponse' {httpStatus} -> httpStatus) (\s@FailoverDBClusterResponse' {} a -> s {httpStatus = a} :: FailoverDBClusterResponse)++instance Prelude.NFData FailoverDBClusterResponse where+ rnf FailoverDBClusterResponse' {..} =+ Prelude.rnf dbCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/Lens.hs view
@@ -0,0 +1,839 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Lens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Lens+ ( -- * Operations++ -- ** AddSourceIdentifierToSubscription+ addSourceIdentifierToSubscription_subscriptionName,+ addSourceIdentifierToSubscription_sourceIdentifier,+ addSourceIdentifierToSubscriptionResponse_eventSubscription,+ addSourceIdentifierToSubscriptionResponse_httpStatus,++ -- ** AddTagsToResource+ addTagsToResource_resourceName,+ addTagsToResource_tags,++ -- ** ApplyPendingMaintenanceAction+ applyPendingMaintenanceAction_resourceIdentifier,+ applyPendingMaintenanceAction_applyAction,+ applyPendingMaintenanceAction_optInType,+ applyPendingMaintenanceActionResponse_resourcePendingMaintenanceActions,+ applyPendingMaintenanceActionResponse_httpStatus,++ -- ** CopyDBClusterParameterGroup+ copyDBClusterParameterGroup_tags,+ copyDBClusterParameterGroup_sourceDBClusterParameterGroupIdentifier,+ copyDBClusterParameterGroup_targetDBClusterParameterGroupIdentifier,+ copyDBClusterParameterGroup_targetDBClusterParameterGroupDescription,+ copyDBClusterParameterGroupResponse_dbClusterParameterGroup,+ copyDBClusterParameterGroupResponse_httpStatus,++ -- ** CopyDBClusterSnapshot+ copyDBClusterSnapshot_copyTags,+ copyDBClusterSnapshot_kmsKeyId,+ copyDBClusterSnapshot_preSignedUrl,+ copyDBClusterSnapshot_tags,+ copyDBClusterSnapshot_sourceDBClusterSnapshotIdentifier,+ copyDBClusterSnapshot_targetDBClusterSnapshotIdentifier,+ copyDBClusterSnapshotResponse_dbClusterSnapshot,+ copyDBClusterSnapshotResponse_httpStatus,++ -- ** CreateDBCluster+ createDBCluster_availabilityZones,+ createDBCluster_backupRetentionPeriod,+ createDBCluster_dbClusterParameterGroupName,+ createDBCluster_dbSubnetGroupName,+ createDBCluster_deletionProtection,+ createDBCluster_enableCloudwatchLogsExports,+ createDBCluster_engineVersion,+ createDBCluster_globalClusterIdentifier,+ createDBCluster_kmsKeyId,+ createDBCluster_masterUserPassword,+ createDBCluster_masterUsername,+ createDBCluster_port,+ createDBCluster_preSignedUrl,+ createDBCluster_preferredBackupWindow,+ createDBCluster_preferredMaintenanceWindow,+ createDBCluster_storageEncrypted,+ createDBCluster_tags,+ createDBCluster_vpcSecurityGroupIds,+ createDBCluster_dbClusterIdentifier,+ createDBCluster_engine,+ createDBClusterResponse_dbCluster,+ createDBClusterResponse_httpStatus,++ -- ** CreateDBClusterParameterGroup+ createDBClusterParameterGroup_tags,+ createDBClusterParameterGroup_dbClusterParameterGroupName,+ createDBClusterParameterGroup_dbParameterGroupFamily,+ createDBClusterParameterGroup_description,+ createDBClusterParameterGroupResponse_dbClusterParameterGroup,+ createDBClusterParameterGroupResponse_httpStatus,++ -- ** CreateDBClusterSnapshot+ createDBClusterSnapshot_tags,+ createDBClusterSnapshot_dbClusterSnapshotIdentifier,+ createDBClusterSnapshot_dbClusterIdentifier,+ createDBClusterSnapshotResponse_dbClusterSnapshot,+ createDBClusterSnapshotResponse_httpStatus,++ -- ** CreateDBInstance+ createDBInstance_autoMinorVersionUpgrade,+ createDBInstance_availabilityZone,+ createDBInstance_copyTagsToSnapshot,+ createDBInstance_enablePerformanceInsights,+ createDBInstance_performanceInsightsKMSKeyId,+ createDBInstance_preferredMaintenanceWindow,+ createDBInstance_promotionTier,+ createDBInstance_tags,+ createDBInstance_dbInstanceIdentifier,+ createDBInstance_dbInstanceClass,+ createDBInstance_engine,+ createDBInstance_dbClusterIdentifier,+ createDBInstanceResponse_dbInstance,+ createDBInstanceResponse_httpStatus,++ -- ** CreateDBSubnetGroup+ createDBSubnetGroup_tags,+ createDBSubnetGroup_dbSubnetGroupName,+ createDBSubnetGroup_dbSubnetGroupDescription,+ createDBSubnetGroup_subnetIds,+ createDBSubnetGroupResponse_dbSubnetGroup,+ createDBSubnetGroupResponse_httpStatus,++ -- ** CreateEventSubscription+ createEventSubscription_enabled,+ createEventSubscription_eventCategories,+ createEventSubscription_sourceIds,+ createEventSubscription_sourceType,+ createEventSubscription_tags,+ createEventSubscription_subscriptionName,+ createEventSubscription_snsTopicArn,+ createEventSubscriptionResponse_eventSubscription,+ createEventSubscriptionResponse_httpStatus,++ -- ** CreateGlobalCluster+ createGlobalCluster_databaseName,+ createGlobalCluster_deletionProtection,+ createGlobalCluster_engine,+ createGlobalCluster_engineVersion,+ createGlobalCluster_sourceDBClusterIdentifier,+ createGlobalCluster_storageEncrypted,+ createGlobalCluster_globalClusterIdentifier,+ createGlobalClusterResponse_globalCluster,+ createGlobalClusterResponse_httpStatus,++ -- ** DeleteDBCluster+ deleteDBCluster_finalDBSnapshotIdentifier,+ deleteDBCluster_skipFinalSnapshot,+ deleteDBCluster_dbClusterIdentifier,+ deleteDBClusterResponse_dbCluster,+ deleteDBClusterResponse_httpStatus,++ -- ** DeleteDBClusterParameterGroup+ deleteDBClusterParameterGroup_dbClusterParameterGroupName,++ -- ** DeleteDBClusterSnapshot+ deleteDBClusterSnapshot_dbClusterSnapshotIdentifier,+ deleteDBClusterSnapshotResponse_dbClusterSnapshot,+ deleteDBClusterSnapshotResponse_httpStatus,++ -- ** DeleteDBInstance+ deleteDBInstance_dbInstanceIdentifier,+ deleteDBInstanceResponse_dbInstance,+ deleteDBInstanceResponse_httpStatus,++ -- ** DeleteDBSubnetGroup+ deleteDBSubnetGroup_dbSubnetGroupName,++ -- ** DeleteEventSubscription+ deleteEventSubscription_subscriptionName,+ deleteEventSubscriptionResponse_eventSubscription,+ deleteEventSubscriptionResponse_httpStatus,++ -- ** DeleteGlobalCluster+ deleteGlobalCluster_globalClusterIdentifier,+ deleteGlobalClusterResponse_globalCluster,+ deleteGlobalClusterResponse_httpStatus,++ -- ** DescribeCertificates+ describeCertificates_certificateIdentifier,+ describeCertificates_filters,+ describeCertificates_marker,+ describeCertificates_maxRecords,+ describeCertificatesResponse_certificates,+ describeCertificatesResponse_marker,+ describeCertificatesResponse_httpStatus,++ -- ** DescribeDBClusterParameterGroups+ describeDBClusterParameterGroups_dbClusterParameterGroupName,+ describeDBClusterParameterGroups_filters,+ describeDBClusterParameterGroups_marker,+ describeDBClusterParameterGroups_maxRecords,+ describeDBClusterParameterGroupsResponse_dbClusterParameterGroups,+ describeDBClusterParameterGroupsResponse_marker,+ describeDBClusterParameterGroupsResponse_httpStatus,++ -- ** DescribeDBClusterParameters+ describeDBClusterParameters_filters,+ describeDBClusterParameters_marker,+ describeDBClusterParameters_maxRecords,+ describeDBClusterParameters_source,+ describeDBClusterParameters_dbClusterParameterGroupName,+ describeDBClusterParametersResponse_marker,+ describeDBClusterParametersResponse_parameters,+ describeDBClusterParametersResponse_httpStatus,++ -- ** DescribeDBClusterSnapshotAttributes+ describeDBClusterSnapshotAttributes_dbClusterSnapshotIdentifier,+ describeDBClusterSnapshotAttributesResponse_dbClusterSnapshotAttributesResult,+ describeDBClusterSnapshotAttributesResponse_httpStatus,++ -- ** DescribeDBClusterSnapshots+ describeDBClusterSnapshots_dbClusterIdentifier,+ describeDBClusterSnapshots_dbClusterSnapshotIdentifier,+ describeDBClusterSnapshots_filters,+ describeDBClusterSnapshots_includePublic,+ describeDBClusterSnapshots_includeShared,+ describeDBClusterSnapshots_marker,+ describeDBClusterSnapshots_maxRecords,+ describeDBClusterSnapshots_snapshotType,+ describeDBClusterSnapshotsResponse_dbClusterSnapshots,+ describeDBClusterSnapshotsResponse_marker,+ describeDBClusterSnapshotsResponse_httpStatus,++ -- ** DescribeDBClusters+ describeDBClusters_dbClusterIdentifier,+ describeDBClusters_filters,+ describeDBClusters_marker,+ describeDBClusters_maxRecords,+ describeDBClustersResponse_dbClusters,+ describeDBClustersResponse_marker,+ describeDBClustersResponse_httpStatus,++ -- ** DescribeDBEngineVersions+ describeDBEngineVersions_dbParameterGroupFamily,+ describeDBEngineVersions_defaultOnly,+ describeDBEngineVersions_engine,+ describeDBEngineVersions_engineVersion,+ describeDBEngineVersions_filters,+ describeDBEngineVersions_listSupportedCharacterSets,+ describeDBEngineVersions_listSupportedTimezones,+ describeDBEngineVersions_marker,+ describeDBEngineVersions_maxRecords,+ describeDBEngineVersionsResponse_dbEngineVersions,+ describeDBEngineVersionsResponse_marker,+ describeDBEngineVersionsResponse_httpStatus,++ -- ** DescribeDBInstances+ describeDBInstances_dbInstanceIdentifier,+ describeDBInstances_filters,+ describeDBInstances_marker,+ describeDBInstances_maxRecords,+ describeDBInstancesResponse_dbInstances,+ describeDBInstancesResponse_marker,+ describeDBInstancesResponse_httpStatus,++ -- ** DescribeDBSubnetGroups+ describeDBSubnetGroups_dbSubnetGroupName,+ describeDBSubnetGroups_filters,+ describeDBSubnetGroups_marker,+ describeDBSubnetGroups_maxRecords,+ describeDBSubnetGroupsResponse_dbSubnetGroups,+ describeDBSubnetGroupsResponse_marker,+ describeDBSubnetGroupsResponse_httpStatus,++ -- ** DescribeEngineDefaultClusterParameters+ describeEngineDefaultClusterParameters_filters,+ describeEngineDefaultClusterParameters_marker,+ describeEngineDefaultClusterParameters_maxRecords,+ describeEngineDefaultClusterParameters_dbParameterGroupFamily,+ describeEngineDefaultClusterParametersResponse_engineDefaults,+ describeEngineDefaultClusterParametersResponse_httpStatus,++ -- ** DescribeEventCategories+ describeEventCategories_filters,+ describeEventCategories_sourceType,+ describeEventCategoriesResponse_eventCategoriesMapList,+ describeEventCategoriesResponse_httpStatus,++ -- ** DescribeEventSubscriptions+ describeEventSubscriptions_filters,+ describeEventSubscriptions_marker,+ describeEventSubscriptions_maxRecords,+ describeEventSubscriptions_subscriptionName,+ describeEventSubscriptionsResponse_eventSubscriptionsList,+ describeEventSubscriptionsResponse_marker,+ describeEventSubscriptionsResponse_httpStatus,++ -- ** DescribeEvents+ describeEvents_duration,+ describeEvents_endTime,+ describeEvents_eventCategories,+ describeEvents_filters,+ describeEvents_marker,+ describeEvents_maxRecords,+ describeEvents_sourceIdentifier,+ describeEvents_sourceType,+ describeEvents_startTime,+ describeEventsResponse_events,+ describeEventsResponse_marker,+ describeEventsResponse_httpStatus,++ -- ** DescribeGlobalClusters+ describeGlobalClusters_filters,+ describeGlobalClusters_globalClusterIdentifier,+ describeGlobalClusters_marker,+ describeGlobalClusters_maxRecords,+ describeGlobalClustersResponse_globalClusters,+ describeGlobalClustersResponse_marker,+ describeGlobalClustersResponse_httpStatus,++ -- ** DescribeOrderableDBInstanceOptions+ describeOrderableDBInstanceOptions_dbInstanceClass,+ describeOrderableDBInstanceOptions_engineVersion,+ describeOrderableDBInstanceOptions_filters,+ describeOrderableDBInstanceOptions_licenseModel,+ describeOrderableDBInstanceOptions_marker,+ describeOrderableDBInstanceOptions_maxRecords,+ describeOrderableDBInstanceOptions_vpc,+ describeOrderableDBInstanceOptions_engine,+ describeOrderableDBInstanceOptionsResponse_marker,+ describeOrderableDBInstanceOptionsResponse_orderableDBInstanceOptions,+ describeOrderableDBInstanceOptionsResponse_httpStatus,++ -- ** DescribePendingMaintenanceActions+ describePendingMaintenanceActions_filters,+ describePendingMaintenanceActions_marker,+ describePendingMaintenanceActions_maxRecords,+ describePendingMaintenanceActions_resourceIdentifier,+ describePendingMaintenanceActionsResponse_marker,+ describePendingMaintenanceActionsResponse_pendingMaintenanceActions,+ describePendingMaintenanceActionsResponse_httpStatus,++ -- ** FailoverDBCluster+ failoverDBCluster_dbClusterIdentifier,+ failoverDBCluster_targetDBInstanceIdentifier,+ failoverDBClusterResponse_dbCluster,+ failoverDBClusterResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_filters,+ listTagsForResource_resourceName,+ listTagsForResourceResponse_tagList,+ listTagsForResourceResponse_httpStatus,++ -- ** ModifyDBCluster+ modifyDBCluster_applyImmediately,+ modifyDBCluster_backupRetentionPeriod,+ modifyDBCluster_cloudwatchLogsExportConfiguration,+ modifyDBCluster_dbClusterParameterGroupName,+ modifyDBCluster_deletionProtection,+ modifyDBCluster_engineVersion,+ modifyDBCluster_masterUserPassword,+ modifyDBCluster_newDBClusterIdentifier,+ modifyDBCluster_port,+ modifyDBCluster_preferredBackupWindow,+ modifyDBCluster_preferredMaintenanceWindow,+ modifyDBCluster_vpcSecurityGroupIds,+ modifyDBCluster_dbClusterIdentifier,+ modifyDBClusterResponse_dbCluster,+ modifyDBClusterResponse_httpStatus,++ -- ** ModifyDBClusterParameterGroup+ modifyDBClusterParameterGroup_dbClusterParameterGroupName,+ modifyDBClusterParameterGroup_parameters,+ dbClusterParameterGroupNameMessage_dbClusterParameterGroupName,++ -- ** ModifyDBClusterSnapshotAttribute+ modifyDBClusterSnapshotAttribute_valuesToAdd,+ modifyDBClusterSnapshotAttribute_valuesToRemove,+ modifyDBClusterSnapshotAttribute_dbClusterSnapshotIdentifier,+ modifyDBClusterSnapshotAttribute_attributeName,+ modifyDBClusterSnapshotAttributeResponse_dbClusterSnapshotAttributesResult,+ modifyDBClusterSnapshotAttributeResponse_httpStatus,++ -- ** ModifyDBInstance+ modifyDBInstance_applyImmediately,+ modifyDBInstance_autoMinorVersionUpgrade,+ modifyDBInstance_cACertificateIdentifier,+ modifyDBInstance_copyTagsToSnapshot,+ modifyDBInstance_dbInstanceClass,+ modifyDBInstance_enablePerformanceInsights,+ modifyDBInstance_newDBInstanceIdentifier,+ modifyDBInstance_performanceInsightsKMSKeyId,+ modifyDBInstance_preferredMaintenanceWindow,+ modifyDBInstance_promotionTier,+ modifyDBInstance_dbInstanceIdentifier,+ modifyDBInstanceResponse_dbInstance,+ modifyDBInstanceResponse_httpStatus,++ -- ** ModifyDBSubnetGroup+ modifyDBSubnetGroup_dbSubnetGroupDescription,+ modifyDBSubnetGroup_dbSubnetGroupName,+ modifyDBSubnetGroup_subnetIds,+ modifyDBSubnetGroupResponse_dbSubnetGroup,+ modifyDBSubnetGroupResponse_httpStatus,++ -- ** ModifyEventSubscription+ modifyEventSubscription_enabled,+ modifyEventSubscription_eventCategories,+ modifyEventSubscription_snsTopicArn,+ modifyEventSubscription_sourceType,+ modifyEventSubscription_subscriptionName,+ modifyEventSubscriptionResponse_eventSubscription,+ modifyEventSubscriptionResponse_httpStatus,++ -- ** ModifyGlobalCluster+ modifyGlobalCluster_deletionProtection,+ modifyGlobalCluster_newGlobalClusterIdentifier,+ modifyGlobalCluster_globalClusterIdentifier,+ modifyGlobalClusterResponse_globalCluster,+ modifyGlobalClusterResponse_httpStatus,++ -- ** RebootDBInstance+ rebootDBInstance_forceFailover,+ rebootDBInstance_dbInstanceIdentifier,+ rebootDBInstanceResponse_dbInstance,+ rebootDBInstanceResponse_httpStatus,++ -- ** RemoveFromGlobalCluster+ removeFromGlobalCluster_globalClusterIdentifier,+ removeFromGlobalCluster_dbClusterIdentifier,+ removeFromGlobalClusterResponse_globalCluster,+ removeFromGlobalClusterResponse_httpStatus,++ -- ** RemoveSourceIdentifierFromSubscription+ removeSourceIdentifierFromSubscription_subscriptionName,+ removeSourceIdentifierFromSubscription_sourceIdentifier,+ removeSourceIdentifierFromSubscriptionResponse_eventSubscription,+ removeSourceIdentifierFromSubscriptionResponse_httpStatus,++ -- ** RemoveTagsFromResource+ removeTagsFromResource_resourceName,+ removeTagsFromResource_tagKeys,++ -- ** ResetDBClusterParameterGroup+ resetDBClusterParameterGroup_parameters,+ resetDBClusterParameterGroup_resetAllParameters,+ resetDBClusterParameterGroup_dbClusterParameterGroupName,+ dbClusterParameterGroupNameMessage_dbClusterParameterGroupName,++ -- ** RestoreDBClusterFromSnapshot+ restoreDBClusterFromSnapshot_availabilityZones,+ restoreDBClusterFromSnapshot_dbSubnetGroupName,+ restoreDBClusterFromSnapshot_deletionProtection,+ restoreDBClusterFromSnapshot_enableCloudwatchLogsExports,+ restoreDBClusterFromSnapshot_engineVersion,+ restoreDBClusterFromSnapshot_kmsKeyId,+ restoreDBClusterFromSnapshot_port,+ restoreDBClusterFromSnapshot_tags,+ restoreDBClusterFromSnapshot_vpcSecurityGroupIds,+ restoreDBClusterFromSnapshot_dbClusterIdentifier,+ restoreDBClusterFromSnapshot_snapshotIdentifier,+ restoreDBClusterFromSnapshot_engine,+ restoreDBClusterFromSnapshotResponse_dbCluster,+ restoreDBClusterFromSnapshotResponse_httpStatus,++ -- ** RestoreDBClusterToPointInTime+ restoreDBClusterToPointInTime_dbSubnetGroupName,+ restoreDBClusterToPointInTime_deletionProtection,+ restoreDBClusterToPointInTime_enableCloudwatchLogsExports,+ restoreDBClusterToPointInTime_kmsKeyId,+ restoreDBClusterToPointInTime_port,+ restoreDBClusterToPointInTime_restoreToTime,+ restoreDBClusterToPointInTime_restoreType,+ restoreDBClusterToPointInTime_tags,+ restoreDBClusterToPointInTime_useLatestRestorableTime,+ restoreDBClusterToPointInTime_vpcSecurityGroupIds,+ restoreDBClusterToPointInTime_dbClusterIdentifier,+ restoreDBClusterToPointInTime_sourceDBClusterIdentifier,+ restoreDBClusterToPointInTimeResponse_dbCluster,+ restoreDBClusterToPointInTimeResponse_httpStatus,++ -- ** StartDBCluster+ startDBCluster_dbClusterIdentifier,+ startDBClusterResponse_dbCluster,+ startDBClusterResponse_httpStatus,++ -- ** StopDBCluster+ stopDBCluster_dbClusterIdentifier,+ stopDBClusterResponse_dbCluster,+ stopDBClusterResponse_httpStatus,++ -- * Types++ -- ** AvailabilityZone+ availabilityZone_name,++ -- ** Certificate+ certificate_certificateArn,+ certificate_certificateIdentifier,+ certificate_certificateType,+ certificate_thumbprint,+ certificate_validFrom,+ certificate_validTill,++ -- ** CloudwatchLogsExportConfiguration+ cloudwatchLogsExportConfiguration_disableLogTypes,+ cloudwatchLogsExportConfiguration_enableLogTypes,++ -- ** DBCluster+ dbCluster_associatedRoles,+ dbCluster_availabilityZones,+ dbCluster_backupRetentionPeriod,+ dbCluster_cloneGroupId,+ dbCluster_clusterCreateTime,+ dbCluster_dbClusterArn,+ dbCluster_dbClusterIdentifier,+ dbCluster_dbClusterMembers,+ dbCluster_dbClusterParameterGroup,+ dbCluster_dbSubnetGroup,+ dbCluster_dbClusterResourceId,+ dbCluster_deletionProtection,+ dbCluster_earliestRestorableTime,+ dbCluster_enabledCloudwatchLogsExports,+ dbCluster_endpoint,+ dbCluster_engine,+ dbCluster_engineVersion,+ dbCluster_hostedZoneId,+ dbCluster_kmsKeyId,+ dbCluster_latestRestorableTime,+ dbCluster_masterUsername,+ dbCluster_multiAZ,+ dbCluster_percentProgress,+ dbCluster_port,+ dbCluster_preferredBackupWindow,+ dbCluster_preferredMaintenanceWindow,+ dbCluster_readReplicaIdentifiers,+ dbCluster_readerEndpoint,+ dbCluster_replicationSourceIdentifier,+ dbCluster_status,+ dbCluster_storageEncrypted,+ dbCluster_vpcSecurityGroups,++ -- ** DBClusterMember+ dbClusterMember_dbClusterParameterGroupStatus,+ dbClusterMember_dbInstanceIdentifier,+ dbClusterMember_isClusterWriter,+ dbClusterMember_promotionTier,++ -- ** DBClusterParameterGroup+ dbClusterParameterGroup_dbClusterParameterGroupArn,+ dbClusterParameterGroup_dbClusterParameterGroupName,+ dbClusterParameterGroup_dbParameterGroupFamily,+ dbClusterParameterGroup_description,++ -- ** DBClusterParameterGroupNameMessage+ dbClusterParameterGroupNameMessage_dbClusterParameterGroupName,++ -- ** DBClusterRole+ dbClusterRole_roleArn,+ dbClusterRole_status,++ -- ** DBClusterSnapshot+ dbClusterSnapshot_availabilityZones,+ dbClusterSnapshot_clusterCreateTime,+ dbClusterSnapshot_dbClusterIdentifier,+ dbClusterSnapshot_dbClusterSnapshotArn,+ dbClusterSnapshot_dbClusterSnapshotIdentifier,+ dbClusterSnapshot_engine,+ dbClusterSnapshot_engineVersion,+ dbClusterSnapshot_kmsKeyId,+ dbClusterSnapshot_masterUsername,+ dbClusterSnapshot_percentProgress,+ dbClusterSnapshot_port,+ dbClusterSnapshot_snapshotCreateTime,+ dbClusterSnapshot_snapshotType,+ dbClusterSnapshot_sourceDBClusterSnapshotArn,+ dbClusterSnapshot_status,+ dbClusterSnapshot_storageEncrypted,+ dbClusterSnapshot_vpcId,++ -- ** DBClusterSnapshotAttribute+ dbClusterSnapshotAttribute_attributeName,+ dbClusterSnapshotAttribute_attributeValues,++ -- ** DBClusterSnapshotAttributesResult+ dbClusterSnapshotAttributesResult_dbClusterSnapshotAttributes,+ dbClusterSnapshotAttributesResult_dbClusterSnapshotIdentifier,++ -- ** DBEngineVersion+ dbEngineVersion_dbEngineDescription,+ dbEngineVersion_dbEngineVersionDescription,+ dbEngineVersion_dbParameterGroupFamily,+ dbEngineVersion_engine,+ dbEngineVersion_engineVersion,+ dbEngineVersion_exportableLogTypes,+ dbEngineVersion_supportsLogExportsToCloudwatchLogs,+ dbEngineVersion_validUpgradeTarget,++ -- ** DBInstance+ dbInstance_autoMinorVersionUpgrade,+ dbInstance_availabilityZone,+ dbInstance_backupRetentionPeriod,+ dbInstance_cACertificateIdentifier,+ dbInstance_copyTagsToSnapshot,+ dbInstance_dbClusterIdentifier,+ dbInstance_dbInstanceArn,+ dbInstance_dbInstanceClass,+ dbInstance_dbInstanceIdentifier,+ dbInstance_dbInstanceStatus,+ dbInstance_dbSubnetGroup,+ dbInstance_dbiResourceId,+ dbInstance_enabledCloudwatchLogsExports,+ dbInstance_endpoint,+ dbInstance_engine,+ dbInstance_engineVersion,+ dbInstance_instanceCreateTime,+ dbInstance_kmsKeyId,+ dbInstance_latestRestorableTime,+ dbInstance_pendingModifiedValues,+ dbInstance_preferredBackupWindow,+ dbInstance_preferredMaintenanceWindow,+ dbInstance_promotionTier,+ dbInstance_publiclyAccessible,+ dbInstance_statusInfos,+ dbInstance_storageEncrypted,+ dbInstance_vpcSecurityGroups,++ -- ** DBInstanceStatusInfo+ dbInstanceStatusInfo_message,+ dbInstanceStatusInfo_normal,+ dbInstanceStatusInfo_status,+ dbInstanceStatusInfo_statusType,++ -- ** DBSubnetGroup+ dbSubnetGroup_dbSubnetGroupArn,+ dbSubnetGroup_dbSubnetGroupDescription,+ dbSubnetGroup_dbSubnetGroupName,+ dbSubnetGroup_subnetGroupStatus,+ dbSubnetGroup_subnets,+ dbSubnetGroup_vpcId,++ -- ** Endpoint+ endpoint_address,+ endpoint_hostedZoneId,+ endpoint_port,++ -- ** EngineDefaults+ engineDefaults_dbParameterGroupFamily,+ engineDefaults_marker,+ engineDefaults_parameters,++ -- ** Event+ event_date,+ event_eventCategories,+ event_message,+ event_sourceArn,+ event_sourceIdentifier,+ event_sourceType,++ -- ** EventCategoriesMap+ eventCategoriesMap_eventCategories,+ eventCategoriesMap_sourceType,++ -- ** EventSubscription+ eventSubscription_custSubscriptionId,+ eventSubscription_customerAwsId,+ eventSubscription_enabled,+ eventSubscription_eventCategoriesList,+ eventSubscription_eventSubscriptionArn,+ eventSubscription_snsTopicArn,+ eventSubscription_sourceIdsList,+ eventSubscription_sourceType,+ eventSubscription_status,+ eventSubscription_subscriptionCreationTime,++ -- ** Filter+ filter_name,+ filter_values,++ -- ** GlobalCluster+ globalCluster_databaseName,+ globalCluster_deletionProtection,+ globalCluster_engine,+ globalCluster_engineVersion,+ globalCluster_globalClusterArn,+ globalCluster_globalClusterIdentifier,+ globalCluster_globalClusterMembers,+ globalCluster_globalClusterResourceId,+ globalCluster_status,+ globalCluster_storageEncrypted,++ -- ** GlobalClusterMember+ globalClusterMember_dbClusterArn,+ globalClusterMember_isWriter,+ globalClusterMember_readers,++ -- ** OrderableDBInstanceOption+ orderableDBInstanceOption_availabilityZones,+ orderableDBInstanceOption_dbInstanceClass,+ orderableDBInstanceOption_engine,+ orderableDBInstanceOption_engineVersion,+ orderableDBInstanceOption_licenseModel,+ orderableDBInstanceOption_vpc,++ -- ** Parameter+ parameter_allowedValues,+ parameter_applyMethod,+ parameter_applyType,+ parameter_dataType,+ parameter_description,+ parameter_isModifiable,+ parameter_minimumEngineVersion,+ parameter_parameterName,+ parameter_parameterValue,+ parameter_source,++ -- ** PendingCloudwatchLogsExports+ pendingCloudwatchLogsExports_logTypesToDisable,+ pendingCloudwatchLogsExports_logTypesToEnable,++ -- ** PendingMaintenanceAction+ pendingMaintenanceAction_action,+ pendingMaintenanceAction_autoAppliedAfterDate,+ pendingMaintenanceAction_currentApplyDate,+ pendingMaintenanceAction_description,+ pendingMaintenanceAction_forcedApplyDate,+ pendingMaintenanceAction_optInStatus,++ -- ** PendingModifiedValues+ pendingModifiedValues_allocatedStorage,+ pendingModifiedValues_backupRetentionPeriod,+ pendingModifiedValues_cACertificateIdentifier,+ pendingModifiedValues_dbInstanceClass,+ pendingModifiedValues_dbInstanceIdentifier,+ pendingModifiedValues_dbSubnetGroupName,+ pendingModifiedValues_engineVersion,+ pendingModifiedValues_iops,+ pendingModifiedValues_licenseModel,+ pendingModifiedValues_masterUserPassword,+ pendingModifiedValues_multiAZ,+ pendingModifiedValues_pendingCloudwatchLogsExports,+ pendingModifiedValues_port,+ pendingModifiedValues_storageType,++ -- ** ResourcePendingMaintenanceActions+ resourcePendingMaintenanceActions_pendingMaintenanceActionDetails,+ resourcePendingMaintenanceActions_resourceIdentifier,++ -- ** Subnet+ subnet_subnetAvailabilityZone,+ subnet_subnetIdentifier,+ subnet_subnetStatus,++ -- ** Tag+ tag_key,+ tag_value,++ -- ** UpgradeTarget+ upgradeTarget_autoUpgrade,+ upgradeTarget_description,+ upgradeTarget_engine,+ upgradeTarget_engineVersion,+ upgradeTarget_isMajorVersionUpgrade,++ -- ** VpcSecurityGroupMembership+ vpcSecurityGroupMembership_status,+ vpcSecurityGroupMembership_vpcSecurityGroupId,+ )+where++import Amazonka.DocumentDB.AddSourceIdentifierToSubscription+import Amazonka.DocumentDB.AddTagsToResource+import Amazonka.DocumentDB.ApplyPendingMaintenanceAction+import Amazonka.DocumentDB.CopyDBClusterParameterGroup+import Amazonka.DocumentDB.CopyDBClusterSnapshot+import Amazonka.DocumentDB.CreateDBCluster+import Amazonka.DocumentDB.CreateDBClusterParameterGroup+import Amazonka.DocumentDB.CreateDBClusterSnapshot+import Amazonka.DocumentDB.CreateDBInstance+import Amazonka.DocumentDB.CreateDBSubnetGroup+import Amazonka.DocumentDB.CreateEventSubscription+import Amazonka.DocumentDB.CreateGlobalCluster+import Amazonka.DocumentDB.DeleteDBCluster+import Amazonka.DocumentDB.DeleteDBClusterParameterGroup+import Amazonka.DocumentDB.DeleteDBClusterSnapshot+import Amazonka.DocumentDB.DeleteDBInstance+import Amazonka.DocumentDB.DeleteDBSubnetGroup+import Amazonka.DocumentDB.DeleteEventSubscription+import Amazonka.DocumentDB.DeleteGlobalCluster+import Amazonka.DocumentDB.DescribeCertificates+import Amazonka.DocumentDB.DescribeDBClusterParameterGroups+import Amazonka.DocumentDB.DescribeDBClusterParameters+import Amazonka.DocumentDB.DescribeDBClusterSnapshotAttributes+import Amazonka.DocumentDB.DescribeDBClusterSnapshots+import Amazonka.DocumentDB.DescribeDBClusters+import Amazonka.DocumentDB.DescribeDBEngineVersions+import Amazonka.DocumentDB.DescribeDBInstances+import Amazonka.DocumentDB.DescribeDBSubnetGroups+import Amazonka.DocumentDB.DescribeEngineDefaultClusterParameters+import Amazonka.DocumentDB.DescribeEventCategories+import Amazonka.DocumentDB.DescribeEventSubscriptions+import Amazonka.DocumentDB.DescribeEvents+import Amazonka.DocumentDB.DescribeGlobalClusters+import Amazonka.DocumentDB.DescribeOrderableDBInstanceOptions+import Amazonka.DocumentDB.DescribePendingMaintenanceActions+import Amazonka.DocumentDB.FailoverDBCluster+import Amazonka.DocumentDB.ListTagsForResource+import Amazonka.DocumentDB.ModifyDBCluster+import Amazonka.DocumentDB.ModifyDBClusterParameterGroup+import Amazonka.DocumentDB.ModifyDBClusterSnapshotAttribute+import Amazonka.DocumentDB.ModifyDBInstance+import Amazonka.DocumentDB.ModifyDBSubnetGroup+import Amazonka.DocumentDB.ModifyEventSubscription+import Amazonka.DocumentDB.ModifyGlobalCluster+import Amazonka.DocumentDB.RebootDBInstance+import Amazonka.DocumentDB.RemoveFromGlobalCluster+import Amazonka.DocumentDB.RemoveSourceIdentifierFromSubscription+import Amazonka.DocumentDB.RemoveTagsFromResource+import Amazonka.DocumentDB.ResetDBClusterParameterGroup+import Amazonka.DocumentDB.RestoreDBClusterFromSnapshot+import Amazonka.DocumentDB.RestoreDBClusterToPointInTime+import Amazonka.DocumentDB.StartDBCluster+import Amazonka.DocumentDB.StopDBCluster+import Amazonka.DocumentDB.Types.AvailabilityZone+import Amazonka.DocumentDB.Types.Certificate+import Amazonka.DocumentDB.Types.CloudwatchLogsExportConfiguration+import Amazonka.DocumentDB.Types.DBCluster+import Amazonka.DocumentDB.Types.DBClusterMember+import Amazonka.DocumentDB.Types.DBClusterParameterGroup+import Amazonka.DocumentDB.Types.DBClusterParameterGroupNameMessage+import Amazonka.DocumentDB.Types.DBClusterRole+import Amazonka.DocumentDB.Types.DBClusterSnapshot+import Amazonka.DocumentDB.Types.DBClusterSnapshotAttribute+import Amazonka.DocumentDB.Types.DBClusterSnapshotAttributesResult+import Amazonka.DocumentDB.Types.DBEngineVersion+import Amazonka.DocumentDB.Types.DBInstance+import Amazonka.DocumentDB.Types.DBInstanceStatusInfo+import Amazonka.DocumentDB.Types.DBSubnetGroup+import Amazonka.DocumentDB.Types.Endpoint+import Amazonka.DocumentDB.Types.EngineDefaults+import Amazonka.DocumentDB.Types.Event+import Amazonka.DocumentDB.Types.EventCategoriesMap+import Amazonka.DocumentDB.Types.EventSubscription+import Amazonka.DocumentDB.Types.Filter+import Amazonka.DocumentDB.Types.GlobalCluster+import Amazonka.DocumentDB.Types.GlobalClusterMember+import Amazonka.DocumentDB.Types.OrderableDBInstanceOption+import Amazonka.DocumentDB.Types.Parameter+import Amazonka.DocumentDB.Types.PendingCloudwatchLogsExports+import Amazonka.DocumentDB.Types.PendingMaintenanceAction+import Amazonka.DocumentDB.Types.PendingModifiedValues+import Amazonka.DocumentDB.Types.ResourcePendingMaintenanceActions+import Amazonka.DocumentDB.Types.Subnet+import Amazonka.DocumentDB.Types.Tag+import Amazonka.DocumentDB.Types.UpgradeTarget+import Amazonka.DocumentDB.Types.VpcSecurityGroupMembership
+ gen/Amazonka/DocumentDB/ListTagsForResource.hs view
@@ -0,0 +1,187 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.ListTagsForResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all tags on an Amazon DocumentDB resource.+module Amazonka.DocumentDB.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_filters,+ listTagsForResource_resourceName,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tagList,+ listTagsForResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to ListTagsForResource.+--+-- /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { -- | This parameter is not currently supported.+ filters :: Prelude.Maybe [Filter],+ -- | The Amazon DocumentDB resource with tags to be listed. This value is an+ -- Amazon Resource Name (ARN).+ resourceName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listTagsForResource_filters' - This parameter is not currently supported.+--+-- 'resourceName', 'listTagsForResource_resourceName' - The Amazon DocumentDB resource with tags to be listed. This value is an+-- Amazon Resource Name (ARN).+newListTagsForResource ::+ -- | 'resourceName'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceName_ =+ ListTagsForResource'+ { filters = Prelude.Nothing,+ resourceName = pResourceName_+ }++-- | This parameter is not currently supported.+listTagsForResource_filters :: Lens.Lens' ListTagsForResource (Prelude.Maybe [Filter])+listTagsForResource_filters = Lens.lens (\ListTagsForResource' {filters} -> filters) (\s@ListTagsForResource' {} a -> s {filters = a} :: ListTagsForResource) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon DocumentDB resource with tags to be listed. This value is an+-- Amazon Resource Name (ARN).+listTagsForResource_resourceName :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_resourceName = Lens.lens (\ListTagsForResource' {resourceName} -> resourceName) (\s@ListTagsForResource' {} a -> s {resourceName = a} :: ListTagsForResource)++instance Core.AWSRequest ListTagsForResource where+ type+ AWSResponse ListTagsForResource =+ ListTagsForResourceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListTagsForResourceResult"+ ( \s h x ->+ ListTagsForResourceResponse'+ Prelude.<$> ( x+ Data..@? "TagList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "Tag")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTagsForResource where+ hashWithSalt _salt ListTagsForResource' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` resourceName++instance Prelude.NFData ListTagsForResource where+ rnf ListTagsForResource' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf resourceName++instance Data.ToHeaders ListTagsForResource where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListTagsForResource where+ toPath = Prelude.const "/"++instance Data.ToQuery ListTagsForResource where+ toQuery ListTagsForResource' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListTagsForResource" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Filters"+ Data.=: Data.toQuery+ (Data.toQueryList "Filter" Prelude.<$> filters),+ "ResourceName" Data.=: resourceName+ ]++-- | Represents the output of ListTagsForResource.+--+-- /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | A list of one or more tags.+ tagList :: Prelude.Maybe [Tag],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tagList', 'listTagsForResourceResponse_tagList' - A list of one or more tags.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tagList =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of one or more tags.+listTagsForResourceResponse_tagList :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe [Tag])+listTagsForResourceResponse_tagList = Lens.lens (\ListTagsForResourceResponse' {tagList} -> tagList) (\s@ListTagsForResourceResponse' {} a -> s {tagList = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+ rnf ListTagsForResourceResponse' {..} =+ Prelude.rnf tagList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/ModifyDBCluster.hs view
@@ -0,0 +1,568 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.ModifyDBCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modifies a setting for an Amazon DocumentDB cluster. You can change one+-- or more database configuration parameters by specifying these parameters+-- and the new values in the request.+module Amazonka.DocumentDB.ModifyDBCluster+ ( -- * Creating a Request+ ModifyDBCluster (..),+ newModifyDBCluster,++ -- * Request Lenses+ modifyDBCluster_applyImmediately,+ modifyDBCluster_backupRetentionPeriod,+ modifyDBCluster_cloudwatchLogsExportConfiguration,+ modifyDBCluster_dbClusterParameterGroupName,+ modifyDBCluster_deletionProtection,+ modifyDBCluster_engineVersion,+ modifyDBCluster_masterUserPassword,+ modifyDBCluster_newDBClusterIdentifier,+ modifyDBCluster_port,+ modifyDBCluster_preferredBackupWindow,+ modifyDBCluster_preferredMaintenanceWindow,+ modifyDBCluster_vpcSecurityGroupIds,+ modifyDBCluster_dbClusterIdentifier,++ -- * Destructuring the Response+ ModifyDBClusterResponse (..),+ newModifyDBClusterResponse,++ -- * Response Lenses+ modifyDBClusterResponse_dbCluster,+ modifyDBClusterResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to ModifyDBCluster.+--+-- /See:/ 'newModifyDBCluster' smart constructor.+data ModifyDBCluster = ModifyDBCluster'+ { -- | A value that specifies whether the changes in this request and any+ -- pending changes are asynchronously applied as soon as possible,+ -- regardless of the @PreferredMaintenanceWindow@ setting for the cluster.+ -- If this parameter is set to @false@, changes to the cluster are applied+ -- during the next maintenance window.+ --+ -- The @ApplyImmediately@ parameter affects only the+ -- @NewDBClusterIdentifier@ and @MasterUserPassword@ values. If you set+ -- this parameter value to @false@, the changes to the+ -- @NewDBClusterIdentifier@ and @MasterUserPassword@ values are applied+ -- during the next maintenance window. All other changes are applied+ -- immediately, regardless of the value of the @ApplyImmediately@+ -- parameter.+ --+ -- Default: @false@+ applyImmediately :: Prelude.Maybe Prelude.Bool,+ -- | The number of days for which automated backups are retained. You must+ -- specify a minimum value of 1.+ --+ -- Default: 1+ --+ -- Constraints:+ --+ -- - Must be a value from 1 to 35.+ backupRetentionPeriod :: Prelude.Maybe Prelude.Int,+ -- | The configuration setting for the log types to be enabled for export to+ -- Amazon CloudWatch Logs for a specific instance or cluster. The+ -- @EnableLogTypes@ and @DisableLogTypes@ arrays determine which logs are+ -- exported (or not exported) to CloudWatch Logs.+ cloudwatchLogsExportConfiguration :: Prelude.Maybe CloudwatchLogsExportConfiguration,+ -- | The name of the cluster parameter group to use for the cluster.+ dbClusterParameterGroupName :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether this cluster can be deleted. If @DeletionProtection@+ -- is enabled, the cluster cannot be deleted unless it is modified and+ -- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+ -- from being accidentally deleted.+ deletionProtection :: Prelude.Maybe Prelude.Bool,+ -- | The version number of the database engine to which you want to upgrade.+ -- Modifying engine version is not supported on Amazon DocumentDB.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | The password for the master database user. This password can contain any+ -- printable ASCII character except forward slash (\/), double quote (\"),+ -- or the \"at\" symbol (\@).+ --+ -- Constraints: Must contain from 8 to 100 characters.+ masterUserPassword :: Prelude.Maybe Prelude.Text,+ -- | The new cluster identifier for the cluster when renaming a cluster. This+ -- value is stored as a lowercase string.+ --+ -- Constraints:+ --+ -- - Must contain from 1 to 63 letters, numbers, or hyphens.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ --+ -- Example: @my-cluster2@+ newDBClusterIdentifier' :: Prelude.Maybe Prelude.Text,+ -- | The port number on which the cluster accepts connections.+ --+ -- Constraints: Must be a value from @1150@ to @65535@.+ --+ -- Default: The same port as the original cluster.+ port :: Prelude.Maybe Prelude.Int,+ -- | The daily time range during which automated backups are created if+ -- automated backups are enabled, using the @BackupRetentionPeriod@+ -- parameter.+ --+ -- The default is a 30-minute window selected at random from an 8-hour+ -- block of time for each Amazon Web Services Region.+ --+ -- Constraints:+ --+ -- - Must be in the format @hh24:mi-hh24:mi@.+ --+ -- - Must be in Universal Coordinated Time (UTC).+ --+ -- - Must not conflict with the preferred maintenance window.+ --+ -- - Must be at least 30 minutes.+ preferredBackupWindow :: Prelude.Maybe Prelude.Text,+ -- | The weekly time range during which system maintenance can occur, in+ -- Universal Coordinated Time (UTC).+ --+ -- Format: @ddd:hh24:mi-ddd:hh24:mi@+ --+ -- The default is a 30-minute window selected at random from an 8-hour+ -- block of time for each Amazon Web Services Region, occurring on a random+ -- day of the week.+ --+ -- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+ --+ -- Constraints: Minimum 30-minute window.+ preferredMaintenanceWindow :: Prelude.Maybe Prelude.Text,+ -- | A list of virtual private cloud (VPC) security groups that the cluster+ -- will belong to.+ vpcSecurityGroupIds :: Prelude.Maybe [Prelude.Text],+ -- | The cluster identifier for the cluster that is being modified. This+ -- parameter is not case sensitive.+ --+ -- Constraints:+ --+ -- - Must match the identifier of an existing @DBCluster@.+ dbClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyDBCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applyImmediately', 'modifyDBCluster_applyImmediately' - A value that specifies whether the changes in this request and any+-- pending changes are asynchronously applied as soon as possible,+-- regardless of the @PreferredMaintenanceWindow@ setting for the cluster.+-- If this parameter is set to @false@, changes to the cluster are applied+-- during the next maintenance window.+--+-- The @ApplyImmediately@ parameter affects only the+-- @NewDBClusterIdentifier@ and @MasterUserPassword@ values. If you set+-- this parameter value to @false@, the changes to the+-- @NewDBClusterIdentifier@ and @MasterUserPassword@ values are applied+-- during the next maintenance window. All other changes are applied+-- immediately, regardless of the value of the @ApplyImmediately@+-- parameter.+--+-- Default: @false@+--+-- 'backupRetentionPeriod', 'modifyDBCluster_backupRetentionPeriod' - The number of days for which automated backups are retained. You must+-- specify a minimum value of 1.+--+-- Default: 1+--+-- Constraints:+--+-- - Must be a value from 1 to 35.+--+-- 'cloudwatchLogsExportConfiguration', 'modifyDBCluster_cloudwatchLogsExportConfiguration' - The configuration setting for the log types to be enabled for export to+-- Amazon CloudWatch Logs for a specific instance or cluster. The+-- @EnableLogTypes@ and @DisableLogTypes@ arrays determine which logs are+-- exported (or not exported) to CloudWatch Logs.+--+-- 'dbClusterParameterGroupName', 'modifyDBCluster_dbClusterParameterGroupName' - The name of the cluster parameter group to use for the cluster.+--+-- 'deletionProtection', 'modifyDBCluster_deletionProtection' - Specifies whether this cluster can be deleted. If @DeletionProtection@+-- is enabled, the cluster cannot be deleted unless it is modified and+-- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+-- from being accidentally deleted.+--+-- 'engineVersion', 'modifyDBCluster_engineVersion' - The version number of the database engine to which you want to upgrade.+-- Modifying engine version is not supported on Amazon DocumentDB.+--+-- 'masterUserPassword', 'modifyDBCluster_masterUserPassword' - The password for the master database user. This password can contain any+-- printable ASCII character except forward slash (\/), double quote (\"),+-- or the \"at\" symbol (\@).+--+-- Constraints: Must contain from 8 to 100 characters.+--+-- 'newDBClusterIdentifier'', 'modifyDBCluster_newDBClusterIdentifier' - The new cluster identifier for the cluster when renaming a cluster. This+-- value is stored as a lowercase string.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-cluster2@+--+-- 'port', 'modifyDBCluster_port' - The port number on which the cluster accepts connections.+--+-- Constraints: Must be a value from @1150@ to @65535@.+--+-- Default: The same port as the original cluster.+--+-- 'preferredBackupWindow', 'modifyDBCluster_preferredBackupWindow' - The daily time range during which automated backups are created if+-- automated backups are enabled, using the @BackupRetentionPeriod@+-- parameter.+--+-- The default is a 30-minute window selected at random from an 8-hour+-- block of time for each Amazon Web Services Region.+--+-- Constraints:+--+-- - Must be in the format @hh24:mi-hh24:mi@.+--+-- - Must be in Universal Coordinated Time (UTC).+--+-- - Must not conflict with the preferred maintenance window.+--+-- - Must be at least 30 minutes.+--+-- 'preferredMaintenanceWindow', 'modifyDBCluster_preferredMaintenanceWindow' - The weekly time range during which system maintenance can occur, in+-- Universal Coordinated Time (UTC).+--+-- Format: @ddd:hh24:mi-ddd:hh24:mi@+--+-- The default is a 30-minute window selected at random from an 8-hour+-- block of time for each Amazon Web Services Region, occurring on a random+-- day of the week.+--+-- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+--+-- Constraints: Minimum 30-minute window.+--+-- 'vpcSecurityGroupIds', 'modifyDBCluster_vpcSecurityGroupIds' - A list of virtual private cloud (VPC) security groups that the cluster+-- will belong to.+--+-- 'dbClusterIdentifier', 'modifyDBCluster_dbClusterIdentifier' - The cluster identifier for the cluster that is being modified. This+-- parameter is not case sensitive.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBCluster@.+newModifyDBCluster ::+ -- | 'dbClusterIdentifier'+ Prelude.Text ->+ ModifyDBCluster+newModifyDBCluster pDBClusterIdentifier_ =+ ModifyDBCluster'+ { applyImmediately =+ Prelude.Nothing,+ backupRetentionPeriod = Prelude.Nothing,+ cloudwatchLogsExportConfiguration = Prelude.Nothing,+ dbClusterParameterGroupName = Prelude.Nothing,+ deletionProtection = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ masterUserPassword = Prelude.Nothing,+ newDBClusterIdentifier' = Prelude.Nothing,+ port = Prelude.Nothing,+ preferredBackupWindow = Prelude.Nothing,+ preferredMaintenanceWindow = Prelude.Nothing,+ vpcSecurityGroupIds = Prelude.Nothing,+ dbClusterIdentifier = pDBClusterIdentifier_+ }++-- | A value that specifies whether the changes in this request and any+-- pending changes are asynchronously applied as soon as possible,+-- regardless of the @PreferredMaintenanceWindow@ setting for the cluster.+-- If this parameter is set to @false@, changes to the cluster are applied+-- during the next maintenance window.+--+-- The @ApplyImmediately@ parameter affects only the+-- @NewDBClusterIdentifier@ and @MasterUserPassword@ values. If you set+-- this parameter value to @false@, the changes to the+-- @NewDBClusterIdentifier@ and @MasterUserPassword@ values are applied+-- during the next maintenance window. All other changes are applied+-- immediately, regardless of the value of the @ApplyImmediately@+-- parameter.+--+-- Default: @false@+modifyDBCluster_applyImmediately :: Lens.Lens' ModifyDBCluster (Prelude.Maybe Prelude.Bool)+modifyDBCluster_applyImmediately = Lens.lens (\ModifyDBCluster' {applyImmediately} -> applyImmediately) (\s@ModifyDBCluster' {} a -> s {applyImmediately = a} :: ModifyDBCluster)++-- | The number of days for which automated backups are retained. You must+-- specify a minimum value of 1.+--+-- Default: 1+--+-- Constraints:+--+-- - Must be a value from 1 to 35.+modifyDBCluster_backupRetentionPeriod :: Lens.Lens' ModifyDBCluster (Prelude.Maybe Prelude.Int)+modifyDBCluster_backupRetentionPeriod = Lens.lens (\ModifyDBCluster' {backupRetentionPeriod} -> backupRetentionPeriod) (\s@ModifyDBCluster' {} a -> s {backupRetentionPeriod = a} :: ModifyDBCluster)++-- | The configuration setting for the log types to be enabled for export to+-- Amazon CloudWatch Logs for a specific instance or cluster. The+-- @EnableLogTypes@ and @DisableLogTypes@ arrays determine which logs are+-- exported (or not exported) to CloudWatch Logs.+modifyDBCluster_cloudwatchLogsExportConfiguration :: Lens.Lens' ModifyDBCluster (Prelude.Maybe CloudwatchLogsExportConfiguration)+modifyDBCluster_cloudwatchLogsExportConfiguration = Lens.lens (\ModifyDBCluster' {cloudwatchLogsExportConfiguration} -> cloudwatchLogsExportConfiguration) (\s@ModifyDBCluster' {} a -> s {cloudwatchLogsExportConfiguration = a} :: ModifyDBCluster)++-- | The name of the cluster parameter group to use for the cluster.+modifyDBCluster_dbClusterParameterGroupName :: Lens.Lens' ModifyDBCluster (Prelude.Maybe Prelude.Text)+modifyDBCluster_dbClusterParameterGroupName = Lens.lens (\ModifyDBCluster' {dbClusterParameterGroupName} -> dbClusterParameterGroupName) (\s@ModifyDBCluster' {} a -> s {dbClusterParameterGroupName = a} :: ModifyDBCluster)++-- | Specifies whether this cluster can be deleted. If @DeletionProtection@+-- is enabled, the cluster cannot be deleted unless it is modified and+-- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+-- from being accidentally deleted.+modifyDBCluster_deletionProtection :: Lens.Lens' ModifyDBCluster (Prelude.Maybe Prelude.Bool)+modifyDBCluster_deletionProtection = Lens.lens (\ModifyDBCluster' {deletionProtection} -> deletionProtection) (\s@ModifyDBCluster' {} a -> s {deletionProtection = a} :: ModifyDBCluster)++-- | The version number of the database engine to which you want to upgrade.+-- Modifying engine version is not supported on Amazon DocumentDB.+modifyDBCluster_engineVersion :: Lens.Lens' ModifyDBCluster (Prelude.Maybe Prelude.Text)+modifyDBCluster_engineVersion = Lens.lens (\ModifyDBCluster' {engineVersion} -> engineVersion) (\s@ModifyDBCluster' {} a -> s {engineVersion = a} :: ModifyDBCluster)++-- | The password for the master database user. This password can contain any+-- printable ASCII character except forward slash (\/), double quote (\"),+-- or the \"at\" symbol (\@).+--+-- Constraints: Must contain from 8 to 100 characters.+modifyDBCluster_masterUserPassword :: Lens.Lens' ModifyDBCluster (Prelude.Maybe Prelude.Text)+modifyDBCluster_masterUserPassword = Lens.lens (\ModifyDBCluster' {masterUserPassword} -> masterUserPassword) (\s@ModifyDBCluster' {} a -> s {masterUserPassword = a} :: ModifyDBCluster)++-- | The new cluster identifier for the cluster when renaming a cluster. This+-- value is stored as a lowercase string.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-cluster2@+modifyDBCluster_newDBClusterIdentifier :: Lens.Lens' ModifyDBCluster (Prelude.Maybe Prelude.Text)+modifyDBCluster_newDBClusterIdentifier = Lens.lens (\ModifyDBCluster' {newDBClusterIdentifier'} -> newDBClusterIdentifier') (\s@ModifyDBCluster' {} a -> s {newDBClusterIdentifier' = a} :: ModifyDBCluster)++-- | The port number on which the cluster accepts connections.+--+-- Constraints: Must be a value from @1150@ to @65535@.+--+-- Default: The same port as the original cluster.+modifyDBCluster_port :: Lens.Lens' ModifyDBCluster (Prelude.Maybe Prelude.Int)+modifyDBCluster_port = Lens.lens (\ModifyDBCluster' {port} -> port) (\s@ModifyDBCluster' {} a -> s {port = a} :: ModifyDBCluster)++-- | The daily time range during which automated backups are created if+-- automated backups are enabled, using the @BackupRetentionPeriod@+-- parameter.+--+-- The default is a 30-minute window selected at random from an 8-hour+-- block of time for each Amazon Web Services Region.+--+-- Constraints:+--+-- - Must be in the format @hh24:mi-hh24:mi@.+--+-- - Must be in Universal Coordinated Time (UTC).+--+-- - Must not conflict with the preferred maintenance window.+--+-- - Must be at least 30 minutes.+modifyDBCluster_preferredBackupWindow :: Lens.Lens' ModifyDBCluster (Prelude.Maybe Prelude.Text)+modifyDBCluster_preferredBackupWindow = Lens.lens (\ModifyDBCluster' {preferredBackupWindow} -> preferredBackupWindow) (\s@ModifyDBCluster' {} a -> s {preferredBackupWindow = a} :: ModifyDBCluster)++-- | The weekly time range during which system maintenance can occur, in+-- Universal Coordinated Time (UTC).+--+-- Format: @ddd:hh24:mi-ddd:hh24:mi@+--+-- The default is a 30-minute window selected at random from an 8-hour+-- block of time for each Amazon Web Services Region, occurring on a random+-- day of the week.+--+-- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+--+-- Constraints: Minimum 30-minute window.+modifyDBCluster_preferredMaintenanceWindow :: Lens.Lens' ModifyDBCluster (Prelude.Maybe Prelude.Text)+modifyDBCluster_preferredMaintenanceWindow = Lens.lens (\ModifyDBCluster' {preferredMaintenanceWindow} -> preferredMaintenanceWindow) (\s@ModifyDBCluster' {} a -> s {preferredMaintenanceWindow = a} :: ModifyDBCluster)++-- | A list of virtual private cloud (VPC) security groups that the cluster+-- will belong to.+modifyDBCluster_vpcSecurityGroupIds :: Lens.Lens' ModifyDBCluster (Prelude.Maybe [Prelude.Text])+modifyDBCluster_vpcSecurityGroupIds = Lens.lens (\ModifyDBCluster' {vpcSecurityGroupIds} -> vpcSecurityGroupIds) (\s@ModifyDBCluster' {} a -> s {vpcSecurityGroupIds = a} :: ModifyDBCluster) Prelude.. Lens.mapping Lens.coerced++-- | The cluster identifier for the cluster that is being modified. This+-- parameter is not case sensitive.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBCluster@.+modifyDBCluster_dbClusterIdentifier :: Lens.Lens' ModifyDBCluster Prelude.Text+modifyDBCluster_dbClusterIdentifier = Lens.lens (\ModifyDBCluster' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@ModifyDBCluster' {} a -> s {dbClusterIdentifier = a} :: ModifyDBCluster)++instance Core.AWSRequest ModifyDBCluster where+ type+ AWSResponse ModifyDBCluster =+ ModifyDBClusterResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ModifyDBClusterResult"+ ( \s h x ->+ ModifyDBClusterResponse'+ Prelude.<$> (x Data..@? "DBCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ModifyDBCluster where+ hashWithSalt _salt ModifyDBCluster' {..} =+ _salt+ `Prelude.hashWithSalt` applyImmediately+ `Prelude.hashWithSalt` backupRetentionPeriod+ `Prelude.hashWithSalt` cloudwatchLogsExportConfiguration+ `Prelude.hashWithSalt` dbClusterParameterGroupName+ `Prelude.hashWithSalt` deletionProtection+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` masterUserPassword+ `Prelude.hashWithSalt` newDBClusterIdentifier'+ `Prelude.hashWithSalt` port+ `Prelude.hashWithSalt` preferredBackupWindow+ `Prelude.hashWithSalt` preferredMaintenanceWindow+ `Prelude.hashWithSalt` vpcSecurityGroupIds+ `Prelude.hashWithSalt` dbClusterIdentifier++instance Prelude.NFData ModifyDBCluster where+ rnf ModifyDBCluster' {..} =+ Prelude.rnf applyImmediately+ `Prelude.seq` Prelude.rnf backupRetentionPeriod+ `Prelude.seq` Prelude.rnf cloudwatchLogsExportConfiguration+ `Prelude.seq` Prelude.rnf dbClusterParameterGroupName+ `Prelude.seq` Prelude.rnf deletionProtection+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf masterUserPassword+ `Prelude.seq` Prelude.rnf newDBClusterIdentifier'+ `Prelude.seq` Prelude.rnf port+ `Prelude.seq` Prelude.rnf preferredBackupWindow+ `Prelude.seq` Prelude.rnf preferredMaintenanceWindow+ `Prelude.seq` Prelude.rnf vpcSecurityGroupIds+ `Prelude.seq` Prelude.rnf dbClusterIdentifier++instance Data.ToHeaders ModifyDBCluster where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ModifyDBCluster where+ toPath = Prelude.const "/"++instance Data.ToQuery ModifyDBCluster where+ toQuery ModifyDBCluster' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ModifyDBCluster" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "ApplyImmediately" Data.=: applyImmediately,+ "BackupRetentionPeriod"+ Data.=: backupRetentionPeriod,+ "CloudwatchLogsExportConfiguration"+ Data.=: cloudwatchLogsExportConfiguration,+ "DBClusterParameterGroupName"+ Data.=: dbClusterParameterGroupName,+ "DeletionProtection" Data.=: deletionProtection,+ "EngineVersion" Data.=: engineVersion,+ "MasterUserPassword" Data.=: masterUserPassword,+ "NewDBClusterIdentifier"+ Data.=: newDBClusterIdentifier',+ "Port" Data.=: port,+ "PreferredBackupWindow"+ Data.=: preferredBackupWindow,+ "PreferredMaintenanceWindow"+ Data.=: preferredMaintenanceWindow,+ "VpcSecurityGroupIds"+ Data.=: Data.toQuery+ ( Data.toQueryList "VpcSecurityGroupId"+ Prelude.<$> vpcSecurityGroupIds+ ),+ "DBClusterIdentifier" Data.=: dbClusterIdentifier+ ]++-- | /See:/ 'newModifyDBClusterResponse' smart constructor.+data ModifyDBClusterResponse = ModifyDBClusterResponse'+ { dbCluster :: Prelude.Maybe DBCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyDBClusterResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbCluster', 'modifyDBClusterResponse_dbCluster' - Undocumented member.+--+-- 'httpStatus', 'modifyDBClusterResponse_httpStatus' - The response's http status code.+newModifyDBClusterResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ModifyDBClusterResponse+newModifyDBClusterResponse pHttpStatus_ =+ ModifyDBClusterResponse'+ { dbCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+modifyDBClusterResponse_dbCluster :: Lens.Lens' ModifyDBClusterResponse (Prelude.Maybe DBCluster)+modifyDBClusterResponse_dbCluster = Lens.lens (\ModifyDBClusterResponse' {dbCluster} -> dbCluster) (\s@ModifyDBClusterResponse' {} a -> s {dbCluster = a} :: ModifyDBClusterResponse)++-- | The response's http status code.+modifyDBClusterResponse_httpStatus :: Lens.Lens' ModifyDBClusterResponse Prelude.Int+modifyDBClusterResponse_httpStatus = Lens.lens (\ModifyDBClusterResponse' {httpStatus} -> httpStatus) (\s@ModifyDBClusterResponse' {} a -> s {httpStatus = a} :: ModifyDBClusterResponse)++instance Prelude.NFData ModifyDBClusterResponse where+ rnf ModifyDBClusterResponse' {..} =+ Prelude.rnf dbCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/ModifyDBClusterParameterGroup.hs view
@@ -0,0 +1,155 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.ModifyDBClusterParameterGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modifies the parameters of a cluster parameter group. To modify more+-- than one parameter, submit a list of the following: @ParameterName@,+-- @ParameterValue@, and @ApplyMethod@. A maximum of 20 parameters can be+-- modified in a single request.+--+-- Changes to dynamic parameters are applied immediately. Changes to static+-- parameters require a reboot or maintenance window before the change can+-- take effect.+--+-- After you create a cluster parameter group, you should wait at least 5+-- minutes before creating your first cluster that uses that cluster+-- parameter group as the default parameter group. This allows Amazon+-- DocumentDB to fully complete the create action before the parameter+-- group is used as the default for a new cluster. This step is especially+-- important for parameters that are critical when creating the default+-- database for a cluster, such as the character set for the default+-- database defined by the @character_set_database@ parameter.+module Amazonka.DocumentDB.ModifyDBClusterParameterGroup+ ( -- * Creating a Request+ ModifyDBClusterParameterGroup (..),+ newModifyDBClusterParameterGroup,++ -- * Request Lenses+ modifyDBClusterParameterGroup_dbClusterParameterGroupName,+ modifyDBClusterParameterGroup_parameters,++ -- * Destructuring the Response+ DBClusterParameterGroupNameMessage (..),+ newDBClusterParameterGroupNameMessage,++ -- * Response Lenses+ dbClusterParameterGroupNameMessage_dbClusterParameterGroupName,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to ModifyDBClusterParameterGroup.+--+-- /See:/ 'newModifyDBClusterParameterGroup' smart constructor.+data ModifyDBClusterParameterGroup = ModifyDBClusterParameterGroup'+ { -- | The name of the cluster parameter group to modify.+ dbClusterParameterGroupName :: Prelude.Text,+ -- | A list of parameters in the cluster parameter group to modify.+ parameters :: [Parameter]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyDBClusterParameterGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterParameterGroupName', 'modifyDBClusterParameterGroup_dbClusterParameterGroupName' - The name of the cluster parameter group to modify.+--+-- 'parameters', 'modifyDBClusterParameterGroup_parameters' - A list of parameters in the cluster parameter group to modify.+newModifyDBClusterParameterGroup ::+ -- | 'dbClusterParameterGroupName'+ Prelude.Text ->+ ModifyDBClusterParameterGroup+newModifyDBClusterParameterGroup+ pDBClusterParameterGroupName_ =+ ModifyDBClusterParameterGroup'+ { dbClusterParameterGroupName =+ pDBClusterParameterGroupName_,+ parameters = Prelude.mempty+ }++-- | The name of the cluster parameter group to modify.+modifyDBClusterParameterGroup_dbClusterParameterGroupName :: Lens.Lens' ModifyDBClusterParameterGroup Prelude.Text+modifyDBClusterParameterGroup_dbClusterParameterGroupName = Lens.lens (\ModifyDBClusterParameterGroup' {dbClusterParameterGroupName} -> dbClusterParameterGroupName) (\s@ModifyDBClusterParameterGroup' {} a -> s {dbClusterParameterGroupName = a} :: ModifyDBClusterParameterGroup)++-- | A list of parameters in the cluster parameter group to modify.+modifyDBClusterParameterGroup_parameters :: Lens.Lens' ModifyDBClusterParameterGroup [Parameter]+modifyDBClusterParameterGroup_parameters = Lens.lens (\ModifyDBClusterParameterGroup' {parameters} -> parameters) (\s@ModifyDBClusterParameterGroup' {} a -> s {parameters = a} :: ModifyDBClusterParameterGroup) Prelude.. Lens.coerced++instance+ Core.AWSRequest+ ModifyDBClusterParameterGroup+ where+ type+ AWSResponse ModifyDBClusterParameterGroup =+ DBClusterParameterGroupNameMessage+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ModifyDBClusterParameterGroupResult"+ (\s h x -> Data.parseXML x)++instance+ Prelude.Hashable+ ModifyDBClusterParameterGroup+ where+ hashWithSalt _salt ModifyDBClusterParameterGroup' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterParameterGroupName+ `Prelude.hashWithSalt` parameters++instance Prelude.NFData ModifyDBClusterParameterGroup where+ rnf ModifyDBClusterParameterGroup' {..} =+ Prelude.rnf dbClusterParameterGroupName+ `Prelude.seq` Prelude.rnf parameters++instance Data.ToHeaders ModifyDBClusterParameterGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ModifyDBClusterParameterGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery ModifyDBClusterParameterGroup where+ toQuery ModifyDBClusterParameterGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "ModifyDBClusterParameterGroup" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBClusterParameterGroupName"+ Data.=: dbClusterParameterGroupName,+ "Parameters"+ Data.=: Data.toQueryList "Parameter" parameters+ ]
+ gen/Amazonka/DocumentDB/ModifyDBClusterSnapshotAttribute.hs view
@@ -0,0 +1,316 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.ModifyDBClusterSnapshotAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds an attribute and values to, or removes an attribute and values+-- from, a manual cluster snapshot.+--+-- To share a manual cluster snapshot with other Amazon Web Services+-- accounts, specify @restore@ as the @AttributeName@, and use the+-- @ValuesToAdd@ parameter to add a list of IDs of the Amazon Web Services+-- accounts that are authorized to restore the manual cluster snapshot. Use+-- the value @all@ to make the manual cluster snapshot public, which means+-- that it can be copied or restored by all Amazon Web Services accounts.+-- Do not add the @all@ value for any manual cluster snapshots that contain+-- private information that you don\'t want available to all Amazon Web+-- Services accounts. If a manual cluster snapshot is encrypted, it can be+-- shared, but only by specifying a list of authorized Amazon Web Services+-- account IDs for the @ValuesToAdd@ parameter. You can\'t use @all@ as a+-- value for that parameter in this case.+module Amazonka.DocumentDB.ModifyDBClusterSnapshotAttribute+ ( -- * Creating a Request+ ModifyDBClusterSnapshotAttribute (..),+ newModifyDBClusterSnapshotAttribute,++ -- * Request Lenses+ modifyDBClusterSnapshotAttribute_valuesToAdd,+ modifyDBClusterSnapshotAttribute_valuesToRemove,+ modifyDBClusterSnapshotAttribute_dbClusterSnapshotIdentifier,+ modifyDBClusterSnapshotAttribute_attributeName,++ -- * Destructuring the Response+ ModifyDBClusterSnapshotAttributeResponse (..),+ newModifyDBClusterSnapshotAttributeResponse,++ -- * Response Lenses+ modifyDBClusterSnapshotAttributeResponse_dbClusterSnapshotAttributesResult,+ modifyDBClusterSnapshotAttributeResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to ModifyDBClusterSnapshotAttribute.+--+-- /See:/ 'newModifyDBClusterSnapshotAttribute' smart constructor.+data ModifyDBClusterSnapshotAttribute = ModifyDBClusterSnapshotAttribute'+ { -- | A list of cluster snapshot attributes to add to the attribute specified+ -- by @AttributeName@.+ --+ -- To authorize other Amazon Web Services accounts to copy or restore a+ -- manual cluster snapshot, set this list to include one or more Amazon Web+ -- Services account IDs. To make the manual cluster snapshot restorable by+ -- any Amazon Web Services account, set it to @all@. Do not add the @all@+ -- value for any manual cluster snapshots that contain private information+ -- that you don\'t want to be available to all Amazon Web Services+ -- accounts.+ valuesToAdd :: Prelude.Maybe [Prelude.Text],+ -- | A list of cluster snapshot attributes to remove from the attribute+ -- specified by @AttributeName@.+ --+ -- To remove authorization for other Amazon Web Services accounts to copy+ -- or restore a manual cluster snapshot, set this list to include one or+ -- more Amazon Web Services account identifiers. To remove authorization+ -- for any Amazon Web Services account to copy or restore the cluster+ -- snapshot, set it to @all@ . If you specify @all@, an Amazon Web Services+ -- account whose account ID is explicitly added to the @restore@ attribute+ -- can still copy or restore a manual cluster snapshot.+ valuesToRemove :: Prelude.Maybe [Prelude.Text],+ -- | The identifier for the cluster snapshot to modify the attributes for.+ dbClusterSnapshotIdentifier :: Prelude.Text,+ -- | The name of the cluster snapshot attribute to modify.+ --+ -- To manage authorization for other Amazon Web Services accounts to copy+ -- or restore a manual cluster snapshot, set this value to @restore@.+ attributeName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyDBClusterSnapshotAttribute' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'valuesToAdd', 'modifyDBClusterSnapshotAttribute_valuesToAdd' - A list of cluster snapshot attributes to add to the attribute specified+-- by @AttributeName@.+--+-- To authorize other Amazon Web Services accounts to copy or restore a+-- manual cluster snapshot, set this list to include one or more Amazon Web+-- Services account IDs. To make the manual cluster snapshot restorable by+-- any Amazon Web Services account, set it to @all@. Do not add the @all@+-- value for any manual cluster snapshots that contain private information+-- that you don\'t want to be available to all Amazon Web Services+-- accounts.+--+-- 'valuesToRemove', 'modifyDBClusterSnapshotAttribute_valuesToRemove' - A list of cluster snapshot attributes to remove from the attribute+-- specified by @AttributeName@.+--+-- To remove authorization for other Amazon Web Services accounts to copy+-- or restore a manual cluster snapshot, set this list to include one or+-- more Amazon Web Services account identifiers. To remove authorization+-- for any Amazon Web Services account to copy or restore the cluster+-- snapshot, set it to @all@ . If you specify @all@, an Amazon Web Services+-- account whose account ID is explicitly added to the @restore@ attribute+-- can still copy or restore a manual cluster snapshot.+--+-- 'dbClusterSnapshotIdentifier', 'modifyDBClusterSnapshotAttribute_dbClusterSnapshotIdentifier' - The identifier for the cluster snapshot to modify the attributes for.+--+-- 'attributeName', 'modifyDBClusterSnapshotAttribute_attributeName' - The name of the cluster snapshot attribute to modify.+--+-- To manage authorization for other Amazon Web Services accounts to copy+-- or restore a manual cluster snapshot, set this value to @restore@.+newModifyDBClusterSnapshotAttribute ::+ -- | 'dbClusterSnapshotIdentifier'+ Prelude.Text ->+ -- | 'attributeName'+ Prelude.Text ->+ ModifyDBClusterSnapshotAttribute+newModifyDBClusterSnapshotAttribute+ pDBClusterSnapshotIdentifier_+ pAttributeName_ =+ ModifyDBClusterSnapshotAttribute'+ { valuesToAdd =+ Prelude.Nothing,+ valuesToRemove = Prelude.Nothing,+ dbClusterSnapshotIdentifier =+ pDBClusterSnapshotIdentifier_,+ attributeName = pAttributeName_+ }++-- | A list of cluster snapshot attributes to add to the attribute specified+-- by @AttributeName@.+--+-- To authorize other Amazon Web Services accounts to copy or restore a+-- manual cluster snapshot, set this list to include one or more Amazon Web+-- Services account IDs. To make the manual cluster snapshot restorable by+-- any Amazon Web Services account, set it to @all@. Do not add the @all@+-- value for any manual cluster snapshots that contain private information+-- that you don\'t want to be available to all Amazon Web Services+-- accounts.+modifyDBClusterSnapshotAttribute_valuesToAdd :: Lens.Lens' ModifyDBClusterSnapshotAttribute (Prelude.Maybe [Prelude.Text])+modifyDBClusterSnapshotAttribute_valuesToAdd = Lens.lens (\ModifyDBClusterSnapshotAttribute' {valuesToAdd} -> valuesToAdd) (\s@ModifyDBClusterSnapshotAttribute' {} a -> s {valuesToAdd = a} :: ModifyDBClusterSnapshotAttribute) Prelude.. Lens.mapping Lens.coerced++-- | A list of cluster snapshot attributes to remove from the attribute+-- specified by @AttributeName@.+--+-- To remove authorization for other Amazon Web Services accounts to copy+-- or restore a manual cluster snapshot, set this list to include one or+-- more Amazon Web Services account identifiers. To remove authorization+-- for any Amazon Web Services account to copy or restore the cluster+-- snapshot, set it to @all@ . If you specify @all@, an Amazon Web Services+-- account whose account ID is explicitly added to the @restore@ attribute+-- can still copy or restore a manual cluster snapshot.+modifyDBClusterSnapshotAttribute_valuesToRemove :: Lens.Lens' ModifyDBClusterSnapshotAttribute (Prelude.Maybe [Prelude.Text])+modifyDBClusterSnapshotAttribute_valuesToRemove = Lens.lens (\ModifyDBClusterSnapshotAttribute' {valuesToRemove} -> valuesToRemove) (\s@ModifyDBClusterSnapshotAttribute' {} a -> s {valuesToRemove = a} :: ModifyDBClusterSnapshotAttribute) Prelude.. Lens.mapping Lens.coerced++-- | The identifier for the cluster snapshot to modify the attributes for.+modifyDBClusterSnapshotAttribute_dbClusterSnapshotIdentifier :: Lens.Lens' ModifyDBClusterSnapshotAttribute Prelude.Text+modifyDBClusterSnapshotAttribute_dbClusterSnapshotIdentifier = Lens.lens (\ModifyDBClusterSnapshotAttribute' {dbClusterSnapshotIdentifier} -> dbClusterSnapshotIdentifier) (\s@ModifyDBClusterSnapshotAttribute' {} a -> s {dbClusterSnapshotIdentifier = a} :: ModifyDBClusterSnapshotAttribute)++-- | The name of the cluster snapshot attribute to modify.+--+-- To manage authorization for other Amazon Web Services accounts to copy+-- or restore a manual cluster snapshot, set this value to @restore@.+modifyDBClusterSnapshotAttribute_attributeName :: Lens.Lens' ModifyDBClusterSnapshotAttribute Prelude.Text+modifyDBClusterSnapshotAttribute_attributeName = Lens.lens (\ModifyDBClusterSnapshotAttribute' {attributeName} -> attributeName) (\s@ModifyDBClusterSnapshotAttribute' {} a -> s {attributeName = a} :: ModifyDBClusterSnapshotAttribute)++instance+ Core.AWSRequest+ ModifyDBClusterSnapshotAttribute+ where+ type+ AWSResponse ModifyDBClusterSnapshotAttribute =+ ModifyDBClusterSnapshotAttributeResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ModifyDBClusterSnapshotAttributeResult"+ ( \s h x ->+ ModifyDBClusterSnapshotAttributeResponse'+ Prelude.<$> (x Data..@? "DBClusterSnapshotAttributesResult")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ModifyDBClusterSnapshotAttribute+ where+ hashWithSalt+ _salt+ ModifyDBClusterSnapshotAttribute' {..} =+ _salt+ `Prelude.hashWithSalt` valuesToAdd+ `Prelude.hashWithSalt` valuesToRemove+ `Prelude.hashWithSalt` dbClusterSnapshotIdentifier+ `Prelude.hashWithSalt` attributeName++instance+ Prelude.NFData+ ModifyDBClusterSnapshotAttribute+ where+ rnf ModifyDBClusterSnapshotAttribute' {..} =+ Prelude.rnf valuesToAdd+ `Prelude.seq` Prelude.rnf valuesToRemove+ `Prelude.seq` Prelude.rnf dbClusterSnapshotIdentifier+ `Prelude.seq` Prelude.rnf attributeName++instance+ Data.ToHeaders+ ModifyDBClusterSnapshotAttribute+ where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ModifyDBClusterSnapshotAttribute where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ ModifyDBClusterSnapshotAttribute+ where+ toQuery ModifyDBClusterSnapshotAttribute' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "ModifyDBClusterSnapshotAttribute" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "ValuesToAdd"+ Data.=: Data.toQuery+ ( Data.toQueryList "AttributeValue"+ Prelude.<$> valuesToAdd+ ),+ "ValuesToRemove"+ Data.=: Data.toQuery+ ( Data.toQueryList "AttributeValue"+ Prelude.<$> valuesToRemove+ ),+ "DBClusterSnapshotIdentifier"+ Data.=: dbClusterSnapshotIdentifier,+ "AttributeName" Data.=: attributeName+ ]++-- | /See:/ 'newModifyDBClusterSnapshotAttributeResponse' smart constructor.+data ModifyDBClusterSnapshotAttributeResponse = ModifyDBClusterSnapshotAttributeResponse'+ { dbClusterSnapshotAttributesResult :: Prelude.Maybe DBClusterSnapshotAttributesResult,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyDBClusterSnapshotAttributeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterSnapshotAttributesResult', 'modifyDBClusterSnapshotAttributeResponse_dbClusterSnapshotAttributesResult' - Undocumented member.+--+-- 'httpStatus', 'modifyDBClusterSnapshotAttributeResponse_httpStatus' - The response's http status code.+newModifyDBClusterSnapshotAttributeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ModifyDBClusterSnapshotAttributeResponse+newModifyDBClusterSnapshotAttributeResponse+ pHttpStatus_ =+ ModifyDBClusterSnapshotAttributeResponse'+ { dbClusterSnapshotAttributesResult =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+modifyDBClusterSnapshotAttributeResponse_dbClusterSnapshotAttributesResult :: Lens.Lens' ModifyDBClusterSnapshotAttributeResponse (Prelude.Maybe DBClusterSnapshotAttributesResult)+modifyDBClusterSnapshotAttributeResponse_dbClusterSnapshotAttributesResult = Lens.lens (\ModifyDBClusterSnapshotAttributeResponse' {dbClusterSnapshotAttributesResult} -> dbClusterSnapshotAttributesResult) (\s@ModifyDBClusterSnapshotAttributeResponse' {} a -> s {dbClusterSnapshotAttributesResult = a} :: ModifyDBClusterSnapshotAttributeResponse)++-- | The response's http status code.+modifyDBClusterSnapshotAttributeResponse_httpStatus :: Lens.Lens' ModifyDBClusterSnapshotAttributeResponse Prelude.Int+modifyDBClusterSnapshotAttributeResponse_httpStatus = Lens.lens (\ModifyDBClusterSnapshotAttributeResponse' {httpStatus} -> httpStatus) (\s@ModifyDBClusterSnapshotAttributeResponse' {} a -> s {httpStatus = a} :: ModifyDBClusterSnapshotAttributeResponse)++instance+ Prelude.NFData+ ModifyDBClusterSnapshotAttributeResponse+ where+ rnf ModifyDBClusterSnapshotAttributeResponse' {..} =+ Prelude.rnf dbClusterSnapshotAttributesResult+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/ModifyDBInstance.hs view
@@ -0,0 +1,505 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.ModifyDBInstance+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modifies settings for an instance. You can change one or more database+-- configuration parameters by specifying these parameters and the new+-- values in the request.+module Amazonka.DocumentDB.ModifyDBInstance+ ( -- * Creating a Request+ ModifyDBInstance (..),+ newModifyDBInstance,++ -- * Request Lenses+ modifyDBInstance_applyImmediately,+ modifyDBInstance_autoMinorVersionUpgrade,+ modifyDBInstance_cACertificateIdentifier,+ modifyDBInstance_copyTagsToSnapshot,+ modifyDBInstance_dbInstanceClass,+ modifyDBInstance_enablePerformanceInsights,+ modifyDBInstance_newDBInstanceIdentifier,+ modifyDBInstance_performanceInsightsKMSKeyId,+ modifyDBInstance_preferredMaintenanceWindow,+ modifyDBInstance_promotionTier,+ modifyDBInstance_dbInstanceIdentifier,++ -- * Destructuring the Response+ ModifyDBInstanceResponse (..),+ newModifyDBInstanceResponse,++ -- * Response Lenses+ modifyDBInstanceResponse_dbInstance,+ modifyDBInstanceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to ModifyDBInstance.+--+-- /See:/ 'newModifyDBInstance' smart constructor.+data ModifyDBInstance = ModifyDBInstance'+ { -- | Specifies whether the modifications in this request and any pending+ -- modifications are asynchronously applied as soon as possible, regardless+ -- of the @PreferredMaintenanceWindow@ setting for the instance.+ --+ -- If this parameter is set to @false@, changes to the instance are applied+ -- during the next maintenance window. Some parameter changes can cause an+ -- outage and are applied on the next reboot.+ --+ -- Default: @false@+ applyImmediately :: Prelude.Maybe Prelude.Bool,+ -- | This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB+ -- does not perform minor version upgrades regardless of the value set.+ autoMinorVersionUpgrade :: Prelude.Maybe Prelude.Bool,+ -- | Indicates the certificate that needs to be associated with the instance.+ cACertificateIdentifier :: Prelude.Maybe Prelude.Text,+ -- | A value that indicates whether to copy all tags from the DB instance to+ -- snapshots of the DB instance. By default, tags are not copied.+ copyTagsToSnapshot :: Prelude.Maybe Prelude.Bool,+ -- | The new compute and memory capacity of the instance; for example,+ -- @db.r5.large@. Not all instance classes are available in all Amazon Web+ -- Services Regions.+ --+ -- If you modify the instance class, an outage occurs during the change.+ -- The change is applied during the next maintenance window, unless+ -- @ApplyImmediately@ is specified as @true@ for this request.+ --+ -- Default: Uses existing setting.+ dbInstanceClass :: Prelude.Maybe Prelude.Text,+ -- | A value that indicates whether to enable Performance Insights for the DB+ -- Instance. For more information, see+ -- <https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html Using Amazon Performance Insights>.+ enablePerformanceInsights :: Prelude.Maybe Prelude.Bool,+ -- | The new instance identifier for the instance when renaming an instance.+ -- When you change the instance identifier, an instance reboot occurs+ -- immediately if you set @Apply Immediately@ to @true@. It occurs during+ -- the next maintenance window if you set @Apply Immediately@ to @false@.+ -- This value is stored as a lowercase string.+ --+ -- Constraints:+ --+ -- - Must contain from 1 to 63 letters, numbers, or hyphens.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ --+ -- Example: @mydbinstance@+ newDBInstanceIdentifier' :: Prelude.Maybe Prelude.Text,+ -- | The KMS key identifier for encryption of Performance Insights data.+ --+ -- The KMS key identifier is the key ARN, key ID, alias ARN, or alias name+ -- for the KMS key.+ --+ -- If you do not specify a value for PerformanceInsightsKMSKeyId, then+ -- Amazon DocumentDB uses your default KMS key. There is a default KMS key+ -- for your Amazon Web Services account. Your Amazon Web Services account+ -- has a different default KMS key for each Amazon Web Services region.+ performanceInsightsKMSKeyId :: Prelude.Maybe Prelude.Text,+ -- | The weekly time range (in UTC) during which system maintenance can+ -- occur, which might result in an outage. Changing this parameter doesn\'t+ -- result in an outage except in the following situation, and the change is+ -- asynchronously applied as soon as possible. If there are pending actions+ -- that cause a reboot, and the maintenance window is changed to include+ -- the current time, changing this parameter causes a reboot of the+ -- instance. If you are moving this window to the current time, there must+ -- be at least 30 minutes between the current time and end of the window to+ -- ensure that pending changes are applied.+ --+ -- Default: Uses existing setting.+ --+ -- Format: @ddd:hh24:mi-ddd:hh24:mi@+ --+ -- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+ --+ -- Constraints: Must be at least 30 minutes.+ preferredMaintenanceWindow :: Prelude.Maybe Prelude.Text,+ -- | A value that specifies the order in which an Amazon DocumentDB replica+ -- is promoted to the primary instance after a failure of the existing+ -- primary instance.+ --+ -- Default: 1+ --+ -- Valid values: 0-15+ promotionTier :: Prelude.Maybe Prelude.Int,+ -- | The instance identifier. This value is stored as a lowercase string.+ --+ -- Constraints:+ --+ -- - Must match the identifier of an existing @DBInstance@.+ dbInstanceIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyDBInstance' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applyImmediately', 'modifyDBInstance_applyImmediately' - Specifies whether the modifications in this request and any pending+-- modifications are asynchronously applied as soon as possible, regardless+-- of the @PreferredMaintenanceWindow@ setting for the instance.+--+-- If this parameter is set to @false@, changes to the instance are applied+-- during the next maintenance window. Some parameter changes can cause an+-- outage and are applied on the next reboot.+--+-- Default: @false@+--+-- 'autoMinorVersionUpgrade', 'modifyDBInstance_autoMinorVersionUpgrade' - This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB+-- does not perform minor version upgrades regardless of the value set.+--+-- 'cACertificateIdentifier', 'modifyDBInstance_cACertificateIdentifier' - Indicates the certificate that needs to be associated with the instance.+--+-- 'copyTagsToSnapshot', 'modifyDBInstance_copyTagsToSnapshot' - A value that indicates whether to copy all tags from the DB instance to+-- snapshots of the DB instance. By default, tags are not copied.+--+-- 'dbInstanceClass', 'modifyDBInstance_dbInstanceClass' - The new compute and memory capacity of the instance; for example,+-- @db.r5.large@. Not all instance classes are available in all Amazon Web+-- Services Regions.+--+-- If you modify the instance class, an outage occurs during the change.+-- The change is applied during the next maintenance window, unless+-- @ApplyImmediately@ is specified as @true@ for this request.+--+-- Default: Uses existing setting.+--+-- 'enablePerformanceInsights', 'modifyDBInstance_enablePerformanceInsights' - A value that indicates whether to enable Performance Insights for the DB+-- Instance. For more information, see+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html Using Amazon Performance Insights>.+--+-- 'newDBInstanceIdentifier'', 'modifyDBInstance_newDBInstanceIdentifier' - The new instance identifier for the instance when renaming an instance.+-- When you change the instance identifier, an instance reboot occurs+-- immediately if you set @Apply Immediately@ to @true@. It occurs during+-- the next maintenance window if you set @Apply Immediately@ to @false@.+-- This value is stored as a lowercase string.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @mydbinstance@+--+-- 'performanceInsightsKMSKeyId', 'modifyDBInstance_performanceInsightsKMSKeyId' - The KMS key identifier for encryption of Performance Insights data.+--+-- The KMS key identifier is the key ARN, key ID, alias ARN, or alias name+-- for the KMS key.+--+-- If you do not specify a value for PerformanceInsightsKMSKeyId, then+-- Amazon DocumentDB uses your default KMS key. There is a default KMS key+-- for your Amazon Web Services account. Your Amazon Web Services account+-- has a different default KMS key for each Amazon Web Services region.+--+-- 'preferredMaintenanceWindow', 'modifyDBInstance_preferredMaintenanceWindow' - The weekly time range (in UTC) during which system maintenance can+-- occur, which might result in an outage. Changing this parameter doesn\'t+-- result in an outage except in the following situation, and the change is+-- asynchronously applied as soon as possible. If there are pending actions+-- that cause a reboot, and the maintenance window is changed to include+-- the current time, changing this parameter causes a reboot of the+-- instance. If you are moving this window to the current time, there must+-- be at least 30 minutes between the current time and end of the window to+-- ensure that pending changes are applied.+--+-- Default: Uses existing setting.+--+-- Format: @ddd:hh24:mi-ddd:hh24:mi@+--+-- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+--+-- Constraints: Must be at least 30 minutes.+--+-- 'promotionTier', 'modifyDBInstance_promotionTier' - A value that specifies the order in which an Amazon DocumentDB replica+-- is promoted to the primary instance after a failure of the existing+-- primary instance.+--+-- Default: 1+--+-- Valid values: 0-15+--+-- 'dbInstanceIdentifier', 'modifyDBInstance_dbInstanceIdentifier' - The instance identifier. This value is stored as a lowercase string.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBInstance@.+newModifyDBInstance ::+ -- | 'dbInstanceIdentifier'+ Prelude.Text ->+ ModifyDBInstance+newModifyDBInstance pDBInstanceIdentifier_ =+ ModifyDBInstance'+ { applyImmediately =+ Prelude.Nothing,+ autoMinorVersionUpgrade = Prelude.Nothing,+ cACertificateIdentifier = Prelude.Nothing,+ copyTagsToSnapshot = Prelude.Nothing,+ dbInstanceClass = Prelude.Nothing,+ enablePerformanceInsights = Prelude.Nothing,+ newDBInstanceIdentifier' = Prelude.Nothing,+ performanceInsightsKMSKeyId = Prelude.Nothing,+ preferredMaintenanceWindow = Prelude.Nothing,+ promotionTier = Prelude.Nothing,+ dbInstanceIdentifier = pDBInstanceIdentifier_+ }++-- | Specifies whether the modifications in this request and any pending+-- modifications are asynchronously applied as soon as possible, regardless+-- of the @PreferredMaintenanceWindow@ setting for the instance.+--+-- If this parameter is set to @false@, changes to the instance are applied+-- during the next maintenance window. Some parameter changes can cause an+-- outage and are applied on the next reboot.+--+-- Default: @false@+modifyDBInstance_applyImmediately :: Lens.Lens' ModifyDBInstance (Prelude.Maybe Prelude.Bool)+modifyDBInstance_applyImmediately = Lens.lens (\ModifyDBInstance' {applyImmediately} -> applyImmediately) (\s@ModifyDBInstance' {} a -> s {applyImmediately = a} :: ModifyDBInstance)++-- | This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB+-- does not perform minor version upgrades regardless of the value set.+modifyDBInstance_autoMinorVersionUpgrade :: Lens.Lens' ModifyDBInstance (Prelude.Maybe Prelude.Bool)+modifyDBInstance_autoMinorVersionUpgrade = Lens.lens (\ModifyDBInstance' {autoMinorVersionUpgrade} -> autoMinorVersionUpgrade) (\s@ModifyDBInstance' {} a -> s {autoMinorVersionUpgrade = a} :: ModifyDBInstance)++-- | Indicates the certificate that needs to be associated with the instance.+modifyDBInstance_cACertificateIdentifier :: Lens.Lens' ModifyDBInstance (Prelude.Maybe Prelude.Text)+modifyDBInstance_cACertificateIdentifier = Lens.lens (\ModifyDBInstance' {cACertificateIdentifier} -> cACertificateIdentifier) (\s@ModifyDBInstance' {} a -> s {cACertificateIdentifier = a} :: ModifyDBInstance)++-- | A value that indicates whether to copy all tags from the DB instance to+-- snapshots of the DB instance. By default, tags are not copied.+modifyDBInstance_copyTagsToSnapshot :: Lens.Lens' ModifyDBInstance (Prelude.Maybe Prelude.Bool)+modifyDBInstance_copyTagsToSnapshot = Lens.lens (\ModifyDBInstance' {copyTagsToSnapshot} -> copyTagsToSnapshot) (\s@ModifyDBInstance' {} a -> s {copyTagsToSnapshot = a} :: ModifyDBInstance)++-- | The new compute and memory capacity of the instance; for example,+-- @db.r5.large@. Not all instance classes are available in all Amazon Web+-- Services Regions.+--+-- If you modify the instance class, an outage occurs during the change.+-- The change is applied during the next maintenance window, unless+-- @ApplyImmediately@ is specified as @true@ for this request.+--+-- Default: Uses existing setting.+modifyDBInstance_dbInstanceClass :: Lens.Lens' ModifyDBInstance (Prelude.Maybe Prelude.Text)+modifyDBInstance_dbInstanceClass = Lens.lens (\ModifyDBInstance' {dbInstanceClass} -> dbInstanceClass) (\s@ModifyDBInstance' {} a -> s {dbInstanceClass = a} :: ModifyDBInstance)++-- | A value that indicates whether to enable Performance Insights for the DB+-- Instance. For more information, see+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html Using Amazon Performance Insights>.+modifyDBInstance_enablePerformanceInsights :: Lens.Lens' ModifyDBInstance (Prelude.Maybe Prelude.Bool)+modifyDBInstance_enablePerformanceInsights = Lens.lens (\ModifyDBInstance' {enablePerformanceInsights} -> enablePerformanceInsights) (\s@ModifyDBInstance' {} a -> s {enablePerformanceInsights = a} :: ModifyDBInstance)++-- | The new instance identifier for the instance when renaming an instance.+-- When you change the instance identifier, an instance reboot occurs+-- immediately if you set @Apply Immediately@ to @true@. It occurs during+-- the next maintenance window if you set @Apply Immediately@ to @false@.+-- This value is stored as a lowercase string.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @mydbinstance@+modifyDBInstance_newDBInstanceIdentifier :: Lens.Lens' ModifyDBInstance (Prelude.Maybe Prelude.Text)+modifyDBInstance_newDBInstanceIdentifier = Lens.lens (\ModifyDBInstance' {newDBInstanceIdentifier'} -> newDBInstanceIdentifier') (\s@ModifyDBInstance' {} a -> s {newDBInstanceIdentifier' = a} :: ModifyDBInstance)++-- | The KMS key identifier for encryption of Performance Insights data.+--+-- The KMS key identifier is the key ARN, key ID, alias ARN, or alias name+-- for the KMS key.+--+-- If you do not specify a value for PerformanceInsightsKMSKeyId, then+-- Amazon DocumentDB uses your default KMS key. There is a default KMS key+-- for your Amazon Web Services account. Your Amazon Web Services account+-- has a different default KMS key for each Amazon Web Services region.+modifyDBInstance_performanceInsightsKMSKeyId :: Lens.Lens' ModifyDBInstance (Prelude.Maybe Prelude.Text)+modifyDBInstance_performanceInsightsKMSKeyId = Lens.lens (\ModifyDBInstance' {performanceInsightsKMSKeyId} -> performanceInsightsKMSKeyId) (\s@ModifyDBInstance' {} a -> s {performanceInsightsKMSKeyId = a} :: ModifyDBInstance)++-- | The weekly time range (in UTC) during which system maintenance can+-- occur, which might result in an outage. Changing this parameter doesn\'t+-- result in an outage except in the following situation, and the change is+-- asynchronously applied as soon as possible. If there are pending actions+-- that cause a reboot, and the maintenance window is changed to include+-- the current time, changing this parameter causes a reboot of the+-- instance. If you are moving this window to the current time, there must+-- be at least 30 minutes between the current time and end of the window to+-- ensure that pending changes are applied.+--+-- Default: Uses existing setting.+--+-- Format: @ddd:hh24:mi-ddd:hh24:mi@+--+-- Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun+--+-- Constraints: Must be at least 30 minutes.+modifyDBInstance_preferredMaintenanceWindow :: Lens.Lens' ModifyDBInstance (Prelude.Maybe Prelude.Text)+modifyDBInstance_preferredMaintenanceWindow = Lens.lens (\ModifyDBInstance' {preferredMaintenanceWindow} -> preferredMaintenanceWindow) (\s@ModifyDBInstance' {} a -> s {preferredMaintenanceWindow = a} :: ModifyDBInstance)++-- | A value that specifies the order in which an Amazon DocumentDB replica+-- is promoted to the primary instance after a failure of the existing+-- primary instance.+--+-- Default: 1+--+-- Valid values: 0-15+modifyDBInstance_promotionTier :: Lens.Lens' ModifyDBInstance (Prelude.Maybe Prelude.Int)+modifyDBInstance_promotionTier = Lens.lens (\ModifyDBInstance' {promotionTier} -> promotionTier) (\s@ModifyDBInstance' {} a -> s {promotionTier = a} :: ModifyDBInstance)++-- | The instance identifier. This value is stored as a lowercase string.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBInstance@.+modifyDBInstance_dbInstanceIdentifier :: Lens.Lens' ModifyDBInstance Prelude.Text+modifyDBInstance_dbInstanceIdentifier = Lens.lens (\ModifyDBInstance' {dbInstanceIdentifier} -> dbInstanceIdentifier) (\s@ModifyDBInstance' {} a -> s {dbInstanceIdentifier = a} :: ModifyDBInstance)++instance Core.AWSRequest ModifyDBInstance where+ type+ AWSResponse ModifyDBInstance =+ ModifyDBInstanceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ModifyDBInstanceResult"+ ( \s h x ->+ ModifyDBInstanceResponse'+ Prelude.<$> (x Data..@? "DBInstance")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ModifyDBInstance where+ hashWithSalt _salt ModifyDBInstance' {..} =+ _salt+ `Prelude.hashWithSalt` applyImmediately+ `Prelude.hashWithSalt` autoMinorVersionUpgrade+ `Prelude.hashWithSalt` cACertificateIdentifier+ `Prelude.hashWithSalt` copyTagsToSnapshot+ `Prelude.hashWithSalt` dbInstanceClass+ `Prelude.hashWithSalt` enablePerformanceInsights+ `Prelude.hashWithSalt` newDBInstanceIdentifier'+ `Prelude.hashWithSalt` performanceInsightsKMSKeyId+ `Prelude.hashWithSalt` preferredMaintenanceWindow+ `Prelude.hashWithSalt` promotionTier+ `Prelude.hashWithSalt` dbInstanceIdentifier++instance Prelude.NFData ModifyDBInstance where+ rnf ModifyDBInstance' {..} =+ Prelude.rnf applyImmediately+ `Prelude.seq` Prelude.rnf autoMinorVersionUpgrade+ `Prelude.seq` Prelude.rnf cACertificateIdentifier+ `Prelude.seq` Prelude.rnf copyTagsToSnapshot+ `Prelude.seq` Prelude.rnf dbInstanceClass+ `Prelude.seq` Prelude.rnf enablePerformanceInsights+ `Prelude.seq` Prelude.rnf newDBInstanceIdentifier'+ `Prelude.seq` Prelude.rnf performanceInsightsKMSKeyId+ `Prelude.seq` Prelude.rnf preferredMaintenanceWindow+ `Prelude.seq` Prelude.rnf promotionTier+ `Prelude.seq` Prelude.rnf dbInstanceIdentifier++instance Data.ToHeaders ModifyDBInstance where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ModifyDBInstance where+ toPath = Prelude.const "/"++instance Data.ToQuery ModifyDBInstance where+ toQuery ModifyDBInstance' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ModifyDBInstance" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "ApplyImmediately" Data.=: applyImmediately,+ "AutoMinorVersionUpgrade"+ Data.=: autoMinorVersionUpgrade,+ "CACertificateIdentifier"+ Data.=: cACertificateIdentifier,+ "CopyTagsToSnapshot" Data.=: copyTagsToSnapshot,+ "DBInstanceClass" Data.=: dbInstanceClass,+ "EnablePerformanceInsights"+ Data.=: enablePerformanceInsights,+ "NewDBInstanceIdentifier"+ Data.=: newDBInstanceIdentifier',+ "PerformanceInsightsKMSKeyId"+ Data.=: performanceInsightsKMSKeyId,+ "PreferredMaintenanceWindow"+ Data.=: preferredMaintenanceWindow,+ "PromotionTier" Data.=: promotionTier,+ "DBInstanceIdentifier" Data.=: dbInstanceIdentifier+ ]++-- | /See:/ 'newModifyDBInstanceResponse' smart constructor.+data ModifyDBInstanceResponse = ModifyDBInstanceResponse'+ { dbInstance :: Prelude.Maybe DBInstance,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyDBInstanceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbInstance', 'modifyDBInstanceResponse_dbInstance' - Undocumented member.+--+-- 'httpStatus', 'modifyDBInstanceResponse_httpStatus' - The response's http status code.+newModifyDBInstanceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ModifyDBInstanceResponse+newModifyDBInstanceResponse pHttpStatus_ =+ ModifyDBInstanceResponse'+ { dbInstance =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+modifyDBInstanceResponse_dbInstance :: Lens.Lens' ModifyDBInstanceResponse (Prelude.Maybe DBInstance)+modifyDBInstanceResponse_dbInstance = Lens.lens (\ModifyDBInstanceResponse' {dbInstance} -> dbInstance) (\s@ModifyDBInstanceResponse' {} a -> s {dbInstance = a} :: ModifyDBInstanceResponse)++-- | The response's http status code.+modifyDBInstanceResponse_httpStatus :: Lens.Lens' ModifyDBInstanceResponse Prelude.Int+modifyDBInstanceResponse_httpStatus = Lens.lens (\ModifyDBInstanceResponse' {httpStatus} -> httpStatus) (\s@ModifyDBInstanceResponse' {} a -> s {httpStatus = a} :: ModifyDBInstanceResponse)++instance Prelude.NFData ModifyDBInstanceResponse where+ rnf ModifyDBInstanceResponse' {..} =+ Prelude.rnf dbInstance+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/ModifyDBSubnetGroup.hs view
@@ -0,0 +1,211 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.ModifyDBSubnetGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modifies an existing subnet group. subnet groups must contain at least+-- one subnet in at least two Availability Zones in the Amazon Web Services+-- Region.+module Amazonka.DocumentDB.ModifyDBSubnetGroup+ ( -- * Creating a Request+ ModifyDBSubnetGroup (..),+ newModifyDBSubnetGroup,++ -- * Request Lenses+ modifyDBSubnetGroup_dbSubnetGroupDescription,+ modifyDBSubnetGroup_dbSubnetGroupName,+ modifyDBSubnetGroup_subnetIds,++ -- * Destructuring the Response+ ModifyDBSubnetGroupResponse (..),+ newModifyDBSubnetGroupResponse,++ -- * Response Lenses+ modifyDBSubnetGroupResponse_dbSubnetGroup,+ modifyDBSubnetGroupResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to ModifyDBSubnetGroup.+--+-- /See:/ 'newModifyDBSubnetGroup' smart constructor.+data ModifyDBSubnetGroup = ModifyDBSubnetGroup'+ { -- | The description for the subnet group.+ dbSubnetGroupDescription :: Prelude.Maybe Prelude.Text,+ -- | The name for the subnet group. This value is stored as a lowercase+ -- string. You can\'t modify the default subnet group.+ --+ -- Constraints: Must match the name of an existing @DBSubnetGroup@. Must+ -- not be default.+ --+ -- Example: @mySubnetgroup@+ dbSubnetGroupName :: Prelude.Text,+ -- | The Amazon EC2 subnet IDs for the subnet group.+ subnetIds :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyDBSubnetGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbSubnetGroupDescription', 'modifyDBSubnetGroup_dbSubnetGroupDescription' - The description for the subnet group.+--+-- 'dbSubnetGroupName', 'modifyDBSubnetGroup_dbSubnetGroupName' - The name for the subnet group. This value is stored as a lowercase+-- string. You can\'t modify the default subnet group.+--+-- Constraints: Must match the name of an existing @DBSubnetGroup@. Must+-- not be default.+--+-- Example: @mySubnetgroup@+--+-- 'subnetIds', 'modifyDBSubnetGroup_subnetIds' - The Amazon EC2 subnet IDs for the subnet group.+newModifyDBSubnetGroup ::+ -- | 'dbSubnetGroupName'+ Prelude.Text ->+ ModifyDBSubnetGroup+newModifyDBSubnetGroup pDBSubnetGroupName_ =+ ModifyDBSubnetGroup'+ { dbSubnetGroupDescription =+ Prelude.Nothing,+ dbSubnetGroupName = pDBSubnetGroupName_,+ subnetIds = Prelude.mempty+ }++-- | The description for the subnet group.+modifyDBSubnetGroup_dbSubnetGroupDescription :: Lens.Lens' ModifyDBSubnetGroup (Prelude.Maybe Prelude.Text)+modifyDBSubnetGroup_dbSubnetGroupDescription = Lens.lens (\ModifyDBSubnetGroup' {dbSubnetGroupDescription} -> dbSubnetGroupDescription) (\s@ModifyDBSubnetGroup' {} a -> s {dbSubnetGroupDescription = a} :: ModifyDBSubnetGroup)++-- | The name for the subnet group. This value is stored as a lowercase+-- string. You can\'t modify the default subnet group.+--+-- Constraints: Must match the name of an existing @DBSubnetGroup@. Must+-- not be default.+--+-- Example: @mySubnetgroup@+modifyDBSubnetGroup_dbSubnetGroupName :: Lens.Lens' ModifyDBSubnetGroup Prelude.Text+modifyDBSubnetGroup_dbSubnetGroupName = Lens.lens (\ModifyDBSubnetGroup' {dbSubnetGroupName} -> dbSubnetGroupName) (\s@ModifyDBSubnetGroup' {} a -> s {dbSubnetGroupName = a} :: ModifyDBSubnetGroup)++-- | The Amazon EC2 subnet IDs for the subnet group.+modifyDBSubnetGroup_subnetIds :: Lens.Lens' ModifyDBSubnetGroup [Prelude.Text]+modifyDBSubnetGroup_subnetIds = Lens.lens (\ModifyDBSubnetGroup' {subnetIds} -> subnetIds) (\s@ModifyDBSubnetGroup' {} a -> s {subnetIds = a} :: ModifyDBSubnetGroup) Prelude.. Lens.coerced++instance Core.AWSRequest ModifyDBSubnetGroup where+ type+ AWSResponse ModifyDBSubnetGroup =+ ModifyDBSubnetGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ModifyDBSubnetGroupResult"+ ( \s h x ->+ ModifyDBSubnetGroupResponse'+ Prelude.<$> (x Data..@? "DBSubnetGroup")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ModifyDBSubnetGroup where+ hashWithSalt _salt ModifyDBSubnetGroup' {..} =+ _salt+ `Prelude.hashWithSalt` dbSubnetGroupDescription+ `Prelude.hashWithSalt` dbSubnetGroupName+ `Prelude.hashWithSalt` subnetIds++instance Prelude.NFData ModifyDBSubnetGroup where+ rnf ModifyDBSubnetGroup' {..} =+ Prelude.rnf dbSubnetGroupDescription+ `Prelude.seq` Prelude.rnf dbSubnetGroupName+ `Prelude.seq` Prelude.rnf subnetIds++instance Data.ToHeaders ModifyDBSubnetGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ModifyDBSubnetGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery ModifyDBSubnetGroup where+ toQuery ModifyDBSubnetGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ModifyDBSubnetGroup" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBSubnetGroupDescription"+ Data.=: dbSubnetGroupDescription,+ "DBSubnetGroupName" Data.=: dbSubnetGroupName,+ "SubnetIds"+ Data.=: Data.toQueryList "SubnetIdentifier" subnetIds+ ]++-- | /See:/ 'newModifyDBSubnetGroupResponse' smart constructor.+data ModifyDBSubnetGroupResponse = ModifyDBSubnetGroupResponse'+ { dbSubnetGroup :: Prelude.Maybe DBSubnetGroup,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyDBSubnetGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbSubnetGroup', 'modifyDBSubnetGroupResponse_dbSubnetGroup' - Undocumented member.+--+-- 'httpStatus', 'modifyDBSubnetGroupResponse_httpStatus' - The response's http status code.+newModifyDBSubnetGroupResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ModifyDBSubnetGroupResponse+newModifyDBSubnetGroupResponse pHttpStatus_ =+ ModifyDBSubnetGroupResponse'+ { dbSubnetGroup =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+modifyDBSubnetGroupResponse_dbSubnetGroup :: Lens.Lens' ModifyDBSubnetGroupResponse (Prelude.Maybe DBSubnetGroup)+modifyDBSubnetGroupResponse_dbSubnetGroup = Lens.lens (\ModifyDBSubnetGroupResponse' {dbSubnetGroup} -> dbSubnetGroup) (\s@ModifyDBSubnetGroupResponse' {} a -> s {dbSubnetGroup = a} :: ModifyDBSubnetGroupResponse)++-- | The response's http status code.+modifyDBSubnetGroupResponse_httpStatus :: Lens.Lens' ModifyDBSubnetGroupResponse Prelude.Int+modifyDBSubnetGroupResponse_httpStatus = Lens.lens (\ModifyDBSubnetGroupResponse' {httpStatus} -> httpStatus) (\s@ModifyDBSubnetGroupResponse' {} a -> s {httpStatus = a} :: ModifyDBSubnetGroupResponse)++instance Prelude.NFData ModifyDBSubnetGroupResponse where+ rnf ModifyDBSubnetGroupResponse' {..} =+ Prelude.rnf dbSubnetGroup+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/ModifyEventSubscription.hs view
@@ -0,0 +1,245 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.ModifyEventSubscription+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modifies an existing Amazon DocumentDB event notification subscription.+module Amazonka.DocumentDB.ModifyEventSubscription+ ( -- * Creating a Request+ ModifyEventSubscription (..),+ newModifyEventSubscription,++ -- * Request Lenses+ modifyEventSubscription_enabled,+ modifyEventSubscription_eventCategories,+ modifyEventSubscription_snsTopicArn,+ modifyEventSubscription_sourceType,+ modifyEventSubscription_subscriptionName,++ -- * Destructuring the Response+ ModifyEventSubscriptionResponse (..),+ newModifyEventSubscriptionResponse,++ -- * Response Lenses+ modifyEventSubscriptionResponse_eventSubscription,+ modifyEventSubscriptionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to ModifyEventSubscription.+--+-- /See:/ 'newModifyEventSubscription' smart constructor.+data ModifyEventSubscription = ModifyEventSubscription'+ { -- | A Boolean value; set to @true@ to activate the subscription.+ enabled :: Prelude.Maybe Prelude.Bool,+ -- | A list of event categories for a @SourceType@ that you want to subscribe+ -- to.+ eventCategories :: Prelude.Maybe [Prelude.Text],+ -- | The Amazon Resource Name (ARN) of the SNS topic created for event+ -- notification. The ARN is created by Amazon SNS when you create a topic+ -- and subscribe to it.+ snsTopicArn :: Prelude.Maybe Prelude.Text,+ -- | The type of source that is generating the events. For example, if you+ -- want to be notified of events generated by an instance, set this+ -- parameter to @db-instance@. If this value is not specified, all events+ -- are returned.+ --+ -- Valid values: @db-instance@, @db-parameter-group@, @db-security-group@+ sourceType :: Prelude.Maybe Prelude.Text,+ -- | The name of the Amazon DocumentDB event notification subscription.+ subscriptionName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyEventSubscription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'modifyEventSubscription_enabled' - A Boolean value; set to @true@ to activate the subscription.+--+-- 'eventCategories', 'modifyEventSubscription_eventCategories' - A list of event categories for a @SourceType@ that you want to subscribe+-- to.+--+-- 'snsTopicArn', 'modifyEventSubscription_snsTopicArn' - The Amazon Resource Name (ARN) of the SNS topic created for event+-- notification. The ARN is created by Amazon SNS when you create a topic+-- and subscribe to it.+--+-- 'sourceType', 'modifyEventSubscription_sourceType' - The type of source that is generating the events. For example, if you+-- want to be notified of events generated by an instance, set this+-- parameter to @db-instance@. If this value is not specified, all events+-- are returned.+--+-- Valid values: @db-instance@, @db-parameter-group@, @db-security-group@+--+-- 'subscriptionName', 'modifyEventSubscription_subscriptionName' - The name of the Amazon DocumentDB event notification subscription.+newModifyEventSubscription ::+ -- | 'subscriptionName'+ Prelude.Text ->+ ModifyEventSubscription+newModifyEventSubscription pSubscriptionName_ =+ ModifyEventSubscription'+ { enabled = Prelude.Nothing,+ eventCategories = Prelude.Nothing,+ snsTopicArn = Prelude.Nothing,+ sourceType = Prelude.Nothing,+ subscriptionName = pSubscriptionName_+ }++-- | A Boolean value; set to @true@ to activate the subscription.+modifyEventSubscription_enabled :: Lens.Lens' ModifyEventSubscription (Prelude.Maybe Prelude.Bool)+modifyEventSubscription_enabled = Lens.lens (\ModifyEventSubscription' {enabled} -> enabled) (\s@ModifyEventSubscription' {} a -> s {enabled = a} :: ModifyEventSubscription)++-- | A list of event categories for a @SourceType@ that you want to subscribe+-- to.+modifyEventSubscription_eventCategories :: Lens.Lens' ModifyEventSubscription (Prelude.Maybe [Prelude.Text])+modifyEventSubscription_eventCategories = Lens.lens (\ModifyEventSubscription' {eventCategories} -> eventCategories) (\s@ModifyEventSubscription' {} a -> s {eventCategories = a} :: ModifyEventSubscription) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Resource Name (ARN) of the SNS topic created for event+-- notification. The ARN is created by Amazon SNS when you create a topic+-- and subscribe to it.+modifyEventSubscription_snsTopicArn :: Lens.Lens' ModifyEventSubscription (Prelude.Maybe Prelude.Text)+modifyEventSubscription_snsTopicArn = Lens.lens (\ModifyEventSubscription' {snsTopicArn} -> snsTopicArn) (\s@ModifyEventSubscription' {} a -> s {snsTopicArn = a} :: ModifyEventSubscription)++-- | The type of source that is generating the events. For example, if you+-- want to be notified of events generated by an instance, set this+-- parameter to @db-instance@. If this value is not specified, all events+-- are returned.+--+-- Valid values: @db-instance@, @db-parameter-group@, @db-security-group@+modifyEventSubscription_sourceType :: Lens.Lens' ModifyEventSubscription (Prelude.Maybe Prelude.Text)+modifyEventSubscription_sourceType = Lens.lens (\ModifyEventSubscription' {sourceType} -> sourceType) (\s@ModifyEventSubscription' {} a -> s {sourceType = a} :: ModifyEventSubscription)++-- | The name of the Amazon DocumentDB event notification subscription.+modifyEventSubscription_subscriptionName :: Lens.Lens' ModifyEventSubscription Prelude.Text+modifyEventSubscription_subscriptionName = Lens.lens (\ModifyEventSubscription' {subscriptionName} -> subscriptionName) (\s@ModifyEventSubscription' {} a -> s {subscriptionName = a} :: ModifyEventSubscription)++instance Core.AWSRequest ModifyEventSubscription where+ type+ AWSResponse ModifyEventSubscription =+ ModifyEventSubscriptionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ModifyEventSubscriptionResult"+ ( \s h x ->+ ModifyEventSubscriptionResponse'+ Prelude.<$> (x Data..@? "EventSubscription")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ModifyEventSubscription where+ hashWithSalt _salt ModifyEventSubscription' {..} =+ _salt+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` eventCategories+ `Prelude.hashWithSalt` snsTopicArn+ `Prelude.hashWithSalt` sourceType+ `Prelude.hashWithSalt` subscriptionName++instance Prelude.NFData ModifyEventSubscription where+ rnf ModifyEventSubscription' {..} =+ Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf eventCategories+ `Prelude.seq` Prelude.rnf snsTopicArn+ `Prelude.seq` Prelude.rnf sourceType+ `Prelude.seq` Prelude.rnf subscriptionName++instance Data.ToHeaders ModifyEventSubscription where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ModifyEventSubscription where+ toPath = Prelude.const "/"++instance Data.ToQuery ModifyEventSubscription where+ toQuery ModifyEventSubscription' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ModifyEventSubscription" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Enabled" Data.=: enabled,+ "EventCategories"+ Data.=: Data.toQuery+ ( Data.toQueryList "EventCategory"+ Prelude.<$> eventCategories+ ),+ "SnsTopicArn" Data.=: snsTopicArn,+ "SourceType" Data.=: sourceType,+ "SubscriptionName" Data.=: subscriptionName+ ]++-- | /See:/ 'newModifyEventSubscriptionResponse' smart constructor.+data ModifyEventSubscriptionResponse = ModifyEventSubscriptionResponse'+ { eventSubscription :: Prelude.Maybe EventSubscription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyEventSubscriptionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventSubscription', 'modifyEventSubscriptionResponse_eventSubscription' - Undocumented member.+--+-- 'httpStatus', 'modifyEventSubscriptionResponse_httpStatus' - The response's http status code.+newModifyEventSubscriptionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ModifyEventSubscriptionResponse+newModifyEventSubscriptionResponse pHttpStatus_ =+ ModifyEventSubscriptionResponse'+ { eventSubscription =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+modifyEventSubscriptionResponse_eventSubscription :: Lens.Lens' ModifyEventSubscriptionResponse (Prelude.Maybe EventSubscription)+modifyEventSubscriptionResponse_eventSubscription = Lens.lens (\ModifyEventSubscriptionResponse' {eventSubscription} -> eventSubscription) (\s@ModifyEventSubscriptionResponse' {} a -> s {eventSubscription = a} :: ModifyEventSubscriptionResponse)++-- | The response's http status code.+modifyEventSubscriptionResponse_httpStatus :: Lens.Lens' ModifyEventSubscriptionResponse Prelude.Int+modifyEventSubscriptionResponse_httpStatus = Lens.lens (\ModifyEventSubscriptionResponse' {httpStatus} -> httpStatus) (\s@ModifyEventSubscriptionResponse' {} a -> s {httpStatus = a} :: ModifyEventSubscriptionResponse)++instance+ Prelude.NFData+ ModifyEventSubscriptionResponse+ where+ rnf ModifyEventSubscriptionResponse' {..} =+ Prelude.rnf eventSubscription+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/ModifyGlobalCluster.hs view
@@ -0,0 +1,241 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.ModifyGlobalCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modify a setting for an Amazon DocumentDB global cluster. You can change+-- one or more configuration parameters (for example: deletion protection),+-- or the global cluster identifier by specifying these parameters and the+-- new values in the request.+--+-- This action only applies to Amazon DocumentDB clusters.+module Amazonka.DocumentDB.ModifyGlobalCluster+ ( -- * Creating a Request+ ModifyGlobalCluster (..),+ newModifyGlobalCluster,++ -- * Request Lenses+ modifyGlobalCluster_deletionProtection,+ modifyGlobalCluster_newGlobalClusterIdentifier,+ modifyGlobalCluster_globalClusterIdentifier,++ -- * Destructuring the Response+ ModifyGlobalClusterResponse (..),+ newModifyGlobalClusterResponse,++ -- * Response Lenses+ modifyGlobalClusterResponse_globalCluster,+ modifyGlobalClusterResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to ModifyGlobalCluster.+--+-- /See:/ 'newModifyGlobalCluster' smart constructor.+data ModifyGlobalCluster = ModifyGlobalCluster'+ { -- | Indicates if the global cluster has deletion protection enabled. The+ -- global cluster can\'t be deleted when deletion protection is enabled.+ deletionProtection :: Prelude.Maybe Prelude.Bool,+ -- | The new identifier for a global cluster when you modify a global+ -- cluster. This value is stored as a lowercase string.+ --+ -- - Must contain from 1 to 63 letters, numbers, or hyphens+ --+ -- The first character must be a letter+ --+ -- Can\'t end with a hyphen or contain two consecutive hyphens+ --+ -- Example: @my-cluster2@+ newGlobalClusterIdentifier' :: Prelude.Maybe Prelude.Text,+ -- | The identifier for the global cluster being modified. This parameter+ -- isn\'t case-sensitive.+ --+ -- Constraints:+ --+ -- - Must match the identifier of an existing global cluster.+ globalClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyGlobalCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'deletionProtection', 'modifyGlobalCluster_deletionProtection' - Indicates if the global cluster has deletion protection enabled. The+-- global cluster can\'t be deleted when deletion protection is enabled.+--+-- 'newGlobalClusterIdentifier'', 'modifyGlobalCluster_newGlobalClusterIdentifier' - The new identifier for a global cluster when you modify a global+-- cluster. This value is stored as a lowercase string.+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens+--+-- The first character must be a letter+--+-- Can\'t end with a hyphen or contain two consecutive hyphens+--+-- Example: @my-cluster2@+--+-- 'globalClusterIdentifier', 'modifyGlobalCluster_globalClusterIdentifier' - The identifier for the global cluster being modified. This parameter+-- isn\'t case-sensitive.+--+-- Constraints:+--+-- - Must match the identifier of an existing global cluster.+newModifyGlobalCluster ::+ -- | 'globalClusterIdentifier'+ Prelude.Text ->+ ModifyGlobalCluster+newModifyGlobalCluster pGlobalClusterIdentifier_ =+ ModifyGlobalCluster'+ { deletionProtection =+ Prelude.Nothing,+ newGlobalClusterIdentifier' = Prelude.Nothing,+ globalClusterIdentifier = pGlobalClusterIdentifier_+ }++-- | Indicates if the global cluster has deletion protection enabled. The+-- global cluster can\'t be deleted when deletion protection is enabled.+modifyGlobalCluster_deletionProtection :: Lens.Lens' ModifyGlobalCluster (Prelude.Maybe Prelude.Bool)+modifyGlobalCluster_deletionProtection = Lens.lens (\ModifyGlobalCluster' {deletionProtection} -> deletionProtection) (\s@ModifyGlobalCluster' {} a -> s {deletionProtection = a} :: ModifyGlobalCluster)++-- | The new identifier for a global cluster when you modify a global+-- cluster. This value is stored as a lowercase string.+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens+--+-- The first character must be a letter+--+-- Can\'t end with a hyphen or contain two consecutive hyphens+--+-- Example: @my-cluster2@+modifyGlobalCluster_newGlobalClusterIdentifier :: Lens.Lens' ModifyGlobalCluster (Prelude.Maybe Prelude.Text)+modifyGlobalCluster_newGlobalClusterIdentifier = Lens.lens (\ModifyGlobalCluster' {newGlobalClusterIdentifier'} -> newGlobalClusterIdentifier') (\s@ModifyGlobalCluster' {} a -> s {newGlobalClusterIdentifier' = a} :: ModifyGlobalCluster)++-- | The identifier for the global cluster being modified. This parameter+-- isn\'t case-sensitive.+--+-- Constraints:+--+-- - Must match the identifier of an existing global cluster.+modifyGlobalCluster_globalClusterIdentifier :: Lens.Lens' ModifyGlobalCluster Prelude.Text+modifyGlobalCluster_globalClusterIdentifier = Lens.lens (\ModifyGlobalCluster' {globalClusterIdentifier} -> globalClusterIdentifier) (\s@ModifyGlobalCluster' {} a -> s {globalClusterIdentifier = a} :: ModifyGlobalCluster)++instance Core.AWSRequest ModifyGlobalCluster where+ type+ AWSResponse ModifyGlobalCluster =+ ModifyGlobalClusterResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ModifyGlobalClusterResult"+ ( \s h x ->+ ModifyGlobalClusterResponse'+ Prelude.<$> (x Data..@? "GlobalCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ModifyGlobalCluster where+ hashWithSalt _salt ModifyGlobalCluster' {..} =+ _salt+ `Prelude.hashWithSalt` deletionProtection+ `Prelude.hashWithSalt` newGlobalClusterIdentifier'+ `Prelude.hashWithSalt` globalClusterIdentifier++instance Prelude.NFData ModifyGlobalCluster where+ rnf ModifyGlobalCluster' {..} =+ Prelude.rnf deletionProtection+ `Prelude.seq` Prelude.rnf newGlobalClusterIdentifier'+ `Prelude.seq` Prelude.rnf globalClusterIdentifier++instance Data.ToHeaders ModifyGlobalCluster where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ModifyGlobalCluster where+ toPath = Prelude.const "/"++instance Data.ToQuery ModifyGlobalCluster where+ toQuery ModifyGlobalCluster' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ModifyGlobalCluster" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DeletionProtection" Data.=: deletionProtection,+ "NewGlobalClusterIdentifier"+ Data.=: newGlobalClusterIdentifier',+ "GlobalClusterIdentifier"+ Data.=: globalClusterIdentifier+ ]++-- | /See:/ 'newModifyGlobalClusterResponse' smart constructor.+data ModifyGlobalClusterResponse = ModifyGlobalClusterResponse'+ { globalCluster :: Prelude.Maybe GlobalCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ModifyGlobalClusterResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'globalCluster', 'modifyGlobalClusterResponse_globalCluster' - Undocumented member.+--+-- 'httpStatus', 'modifyGlobalClusterResponse_httpStatus' - The response's http status code.+newModifyGlobalClusterResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ModifyGlobalClusterResponse+newModifyGlobalClusterResponse pHttpStatus_ =+ ModifyGlobalClusterResponse'+ { globalCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+modifyGlobalClusterResponse_globalCluster :: Lens.Lens' ModifyGlobalClusterResponse (Prelude.Maybe GlobalCluster)+modifyGlobalClusterResponse_globalCluster = Lens.lens (\ModifyGlobalClusterResponse' {globalCluster} -> globalCluster) (\s@ModifyGlobalClusterResponse' {} a -> s {globalCluster = a} :: ModifyGlobalClusterResponse)++-- | The response's http status code.+modifyGlobalClusterResponse_httpStatus :: Lens.Lens' ModifyGlobalClusterResponse Prelude.Int+modifyGlobalClusterResponse_httpStatus = Lens.lens (\ModifyGlobalClusterResponse' {httpStatus} -> httpStatus) (\s@ModifyGlobalClusterResponse' {} a -> s {httpStatus = a} :: ModifyGlobalClusterResponse)++instance Prelude.NFData ModifyGlobalClusterResponse where+ rnf ModifyGlobalClusterResponse' {..} =+ Prelude.rnf globalCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/RebootDBInstance.hs view
@@ -0,0 +1,203 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.RebootDBInstance+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- You might need to reboot your instance, usually for maintenance reasons.+-- For example, if you make certain changes, or if you change the cluster+-- parameter group that is associated with the instance, you must reboot+-- the instance for the changes to take effect.+--+-- Rebooting an instance restarts the database engine service. Rebooting an+-- instance results in a momentary outage, during which the instance status+-- is set to /rebooting/.+module Amazonka.DocumentDB.RebootDBInstance+ ( -- * Creating a Request+ RebootDBInstance (..),+ newRebootDBInstance,++ -- * Request Lenses+ rebootDBInstance_forceFailover,+ rebootDBInstance_dbInstanceIdentifier,++ -- * Destructuring the Response+ RebootDBInstanceResponse (..),+ newRebootDBInstanceResponse,++ -- * Response Lenses+ rebootDBInstanceResponse_dbInstance,+ rebootDBInstanceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to RebootDBInstance.+--+-- /See:/ 'newRebootDBInstance' smart constructor.+data RebootDBInstance = RebootDBInstance'+ { -- | When @true@, the reboot is conducted through a Multi-AZ failover.+ --+ -- Constraint: You can\'t specify @true@ if the instance is not configured+ -- for Multi-AZ.+ forceFailover :: Prelude.Maybe Prelude.Bool,+ -- | The instance identifier. This parameter is stored as a lowercase string.+ --+ -- Constraints:+ --+ -- - Must match the identifier of an existing @DBInstance@.+ dbInstanceIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RebootDBInstance' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'forceFailover', 'rebootDBInstance_forceFailover' - When @true@, the reboot is conducted through a Multi-AZ failover.+--+-- Constraint: You can\'t specify @true@ if the instance is not configured+-- for Multi-AZ.+--+-- 'dbInstanceIdentifier', 'rebootDBInstance_dbInstanceIdentifier' - The instance identifier. This parameter is stored as a lowercase string.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBInstance@.+newRebootDBInstance ::+ -- | 'dbInstanceIdentifier'+ Prelude.Text ->+ RebootDBInstance+newRebootDBInstance pDBInstanceIdentifier_ =+ RebootDBInstance'+ { forceFailover = Prelude.Nothing,+ dbInstanceIdentifier = pDBInstanceIdentifier_+ }++-- | When @true@, the reboot is conducted through a Multi-AZ failover.+--+-- Constraint: You can\'t specify @true@ if the instance is not configured+-- for Multi-AZ.+rebootDBInstance_forceFailover :: Lens.Lens' RebootDBInstance (Prelude.Maybe Prelude.Bool)+rebootDBInstance_forceFailover = Lens.lens (\RebootDBInstance' {forceFailover} -> forceFailover) (\s@RebootDBInstance' {} a -> s {forceFailover = a} :: RebootDBInstance)++-- | The instance identifier. This parameter is stored as a lowercase string.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBInstance@.+rebootDBInstance_dbInstanceIdentifier :: Lens.Lens' RebootDBInstance Prelude.Text+rebootDBInstance_dbInstanceIdentifier = Lens.lens (\RebootDBInstance' {dbInstanceIdentifier} -> dbInstanceIdentifier) (\s@RebootDBInstance' {} a -> s {dbInstanceIdentifier = a} :: RebootDBInstance)++instance Core.AWSRequest RebootDBInstance where+ type+ AWSResponse RebootDBInstance =+ RebootDBInstanceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "RebootDBInstanceResult"+ ( \s h x ->+ RebootDBInstanceResponse'+ Prelude.<$> (x Data..@? "DBInstance")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable RebootDBInstance where+ hashWithSalt _salt RebootDBInstance' {..} =+ _salt+ `Prelude.hashWithSalt` forceFailover+ `Prelude.hashWithSalt` dbInstanceIdentifier++instance Prelude.NFData RebootDBInstance where+ rnf RebootDBInstance' {..} =+ Prelude.rnf forceFailover+ `Prelude.seq` Prelude.rnf dbInstanceIdentifier++instance Data.ToHeaders RebootDBInstance where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath RebootDBInstance where+ toPath = Prelude.const "/"++instance Data.ToQuery RebootDBInstance where+ toQuery RebootDBInstance' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("RebootDBInstance" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "ForceFailover" Data.=: forceFailover,+ "DBInstanceIdentifier" Data.=: dbInstanceIdentifier+ ]++-- | /See:/ 'newRebootDBInstanceResponse' smart constructor.+data RebootDBInstanceResponse = RebootDBInstanceResponse'+ { dbInstance :: Prelude.Maybe DBInstance,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RebootDBInstanceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbInstance', 'rebootDBInstanceResponse_dbInstance' - Undocumented member.+--+-- 'httpStatus', 'rebootDBInstanceResponse_httpStatus' - The response's http status code.+newRebootDBInstanceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RebootDBInstanceResponse+newRebootDBInstanceResponse pHttpStatus_ =+ RebootDBInstanceResponse'+ { dbInstance =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+rebootDBInstanceResponse_dbInstance :: Lens.Lens' RebootDBInstanceResponse (Prelude.Maybe DBInstance)+rebootDBInstanceResponse_dbInstance = Lens.lens (\RebootDBInstanceResponse' {dbInstance} -> dbInstance) (\s@RebootDBInstanceResponse' {} a -> s {dbInstance = a} :: RebootDBInstanceResponse)++-- | The response's http status code.+rebootDBInstanceResponse_httpStatus :: Lens.Lens' RebootDBInstanceResponse Prelude.Int+rebootDBInstanceResponse_httpStatus = Lens.lens (\RebootDBInstanceResponse' {httpStatus} -> httpStatus) (\s@RebootDBInstanceResponse' {} a -> s {httpStatus = a} :: RebootDBInstanceResponse)++instance Prelude.NFData RebootDBInstanceResponse where+ rnf RebootDBInstanceResponse' {..} =+ Prelude.rnf dbInstance+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/RemoveFromGlobalCluster.hs view
@@ -0,0 +1,195 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.RemoveFromGlobalCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Detaches an Amazon DocumentDB secondary cluster from a global cluster.+-- The cluster becomes a standalone cluster with read-write capability+-- instead of being read-only and receiving data from a primary in a+-- different region.+--+-- This action only applies to Amazon DocumentDB clusters.+module Amazonka.DocumentDB.RemoveFromGlobalCluster+ ( -- * Creating a Request+ RemoveFromGlobalCluster (..),+ newRemoveFromGlobalCluster,++ -- * Request Lenses+ removeFromGlobalCluster_globalClusterIdentifier,+ removeFromGlobalCluster_dbClusterIdentifier,++ -- * Destructuring the Response+ RemoveFromGlobalClusterResponse (..),+ newRemoveFromGlobalClusterResponse,++ -- * Response Lenses+ removeFromGlobalClusterResponse_globalCluster,+ removeFromGlobalClusterResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to RemoveFromGlobalCluster.+--+-- /See:/ 'newRemoveFromGlobalCluster' smart constructor.+data RemoveFromGlobalCluster = RemoveFromGlobalCluster'+ { -- | The cluster identifier to detach from the Amazon DocumentDB global+ -- cluster.+ globalClusterIdentifier :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) identifying the cluster that was detached+ -- from the Amazon DocumentDB global cluster.+ dbClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveFromGlobalCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'globalClusterIdentifier', 'removeFromGlobalCluster_globalClusterIdentifier' - The cluster identifier to detach from the Amazon DocumentDB global+-- cluster.+--+-- 'dbClusterIdentifier', 'removeFromGlobalCluster_dbClusterIdentifier' - The Amazon Resource Name (ARN) identifying the cluster that was detached+-- from the Amazon DocumentDB global cluster.+newRemoveFromGlobalCluster ::+ -- | 'globalClusterIdentifier'+ Prelude.Text ->+ -- | 'dbClusterIdentifier'+ Prelude.Text ->+ RemoveFromGlobalCluster+newRemoveFromGlobalCluster+ pGlobalClusterIdentifier_+ pDbClusterIdentifier_ =+ RemoveFromGlobalCluster'+ { globalClusterIdentifier =+ pGlobalClusterIdentifier_,+ dbClusterIdentifier = pDbClusterIdentifier_+ }++-- | The cluster identifier to detach from the Amazon DocumentDB global+-- cluster.+removeFromGlobalCluster_globalClusterIdentifier :: Lens.Lens' RemoveFromGlobalCluster Prelude.Text+removeFromGlobalCluster_globalClusterIdentifier = Lens.lens (\RemoveFromGlobalCluster' {globalClusterIdentifier} -> globalClusterIdentifier) (\s@RemoveFromGlobalCluster' {} a -> s {globalClusterIdentifier = a} :: RemoveFromGlobalCluster)++-- | The Amazon Resource Name (ARN) identifying the cluster that was detached+-- from the Amazon DocumentDB global cluster.+removeFromGlobalCluster_dbClusterIdentifier :: Lens.Lens' RemoveFromGlobalCluster Prelude.Text+removeFromGlobalCluster_dbClusterIdentifier = Lens.lens (\RemoveFromGlobalCluster' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@RemoveFromGlobalCluster' {} a -> s {dbClusterIdentifier = a} :: RemoveFromGlobalCluster)++instance Core.AWSRequest RemoveFromGlobalCluster where+ type+ AWSResponse RemoveFromGlobalCluster =+ RemoveFromGlobalClusterResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "RemoveFromGlobalClusterResult"+ ( \s h x ->+ RemoveFromGlobalClusterResponse'+ Prelude.<$> (x Data..@? "GlobalCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable RemoveFromGlobalCluster where+ hashWithSalt _salt RemoveFromGlobalCluster' {..} =+ _salt+ `Prelude.hashWithSalt` globalClusterIdentifier+ `Prelude.hashWithSalt` dbClusterIdentifier++instance Prelude.NFData RemoveFromGlobalCluster where+ rnf RemoveFromGlobalCluster' {..} =+ Prelude.rnf globalClusterIdentifier+ `Prelude.seq` Prelude.rnf dbClusterIdentifier++instance Data.ToHeaders RemoveFromGlobalCluster where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath RemoveFromGlobalCluster where+ toPath = Prelude.const "/"++instance Data.ToQuery RemoveFromGlobalCluster where+ toQuery RemoveFromGlobalCluster' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("RemoveFromGlobalCluster" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "GlobalClusterIdentifier"+ Data.=: globalClusterIdentifier,+ "DbClusterIdentifier" Data.=: dbClusterIdentifier+ ]++-- | /See:/ 'newRemoveFromGlobalClusterResponse' smart constructor.+data RemoveFromGlobalClusterResponse = RemoveFromGlobalClusterResponse'+ { globalCluster :: Prelude.Maybe GlobalCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveFromGlobalClusterResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'globalCluster', 'removeFromGlobalClusterResponse_globalCluster' - Undocumented member.+--+-- 'httpStatus', 'removeFromGlobalClusterResponse_httpStatus' - The response's http status code.+newRemoveFromGlobalClusterResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RemoveFromGlobalClusterResponse+newRemoveFromGlobalClusterResponse pHttpStatus_ =+ RemoveFromGlobalClusterResponse'+ { globalCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+removeFromGlobalClusterResponse_globalCluster :: Lens.Lens' RemoveFromGlobalClusterResponse (Prelude.Maybe GlobalCluster)+removeFromGlobalClusterResponse_globalCluster = Lens.lens (\RemoveFromGlobalClusterResponse' {globalCluster} -> globalCluster) (\s@RemoveFromGlobalClusterResponse' {} a -> s {globalCluster = a} :: RemoveFromGlobalClusterResponse)++-- | The response's http status code.+removeFromGlobalClusterResponse_httpStatus :: Lens.Lens' RemoveFromGlobalClusterResponse Prelude.Int+removeFromGlobalClusterResponse_httpStatus = Lens.lens (\RemoveFromGlobalClusterResponse' {httpStatus} -> httpStatus) (\s@RemoveFromGlobalClusterResponse' {} a -> s {httpStatus = a} :: RemoveFromGlobalClusterResponse)++instance+ Prelude.NFData+ RemoveFromGlobalClusterResponse+ where+ rnf RemoveFromGlobalClusterResponse' {..} =+ Prelude.rnf globalCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/RemoveSourceIdentifierFromSubscription.hs view
@@ -0,0 +1,216 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.RemoveSourceIdentifierFromSubscription+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes a source identifier from an existing Amazon DocumentDB event+-- notification subscription.+module Amazonka.DocumentDB.RemoveSourceIdentifierFromSubscription+ ( -- * Creating a Request+ RemoveSourceIdentifierFromSubscription (..),+ newRemoveSourceIdentifierFromSubscription,++ -- * Request Lenses+ removeSourceIdentifierFromSubscription_subscriptionName,+ removeSourceIdentifierFromSubscription_sourceIdentifier,++ -- * Destructuring the Response+ RemoveSourceIdentifierFromSubscriptionResponse (..),+ newRemoveSourceIdentifierFromSubscriptionResponse,++ -- * Response Lenses+ removeSourceIdentifierFromSubscriptionResponse_eventSubscription,+ removeSourceIdentifierFromSubscriptionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to RemoveSourceIdentifierFromSubscription.+--+-- /See:/ 'newRemoveSourceIdentifierFromSubscription' smart constructor.+data RemoveSourceIdentifierFromSubscription = RemoveSourceIdentifierFromSubscription'+ { -- | The name of the Amazon DocumentDB event notification subscription that+ -- you want to remove a source identifier from.+ subscriptionName :: Prelude.Text,+ -- | The source identifier to be removed from the subscription, such as the+ -- instance identifier for an instance, or the name of a security group.+ sourceIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveSourceIdentifierFromSubscription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'subscriptionName', 'removeSourceIdentifierFromSubscription_subscriptionName' - The name of the Amazon DocumentDB event notification subscription that+-- you want to remove a source identifier from.+--+-- 'sourceIdentifier', 'removeSourceIdentifierFromSubscription_sourceIdentifier' - The source identifier to be removed from the subscription, such as the+-- instance identifier for an instance, or the name of a security group.+newRemoveSourceIdentifierFromSubscription ::+ -- | 'subscriptionName'+ Prelude.Text ->+ -- | 'sourceIdentifier'+ Prelude.Text ->+ RemoveSourceIdentifierFromSubscription+newRemoveSourceIdentifierFromSubscription+ pSubscriptionName_+ pSourceIdentifier_ =+ RemoveSourceIdentifierFromSubscription'+ { subscriptionName =+ pSubscriptionName_,+ sourceIdentifier =+ pSourceIdentifier_+ }++-- | The name of the Amazon DocumentDB event notification subscription that+-- you want to remove a source identifier from.+removeSourceIdentifierFromSubscription_subscriptionName :: Lens.Lens' RemoveSourceIdentifierFromSubscription Prelude.Text+removeSourceIdentifierFromSubscription_subscriptionName = Lens.lens (\RemoveSourceIdentifierFromSubscription' {subscriptionName} -> subscriptionName) (\s@RemoveSourceIdentifierFromSubscription' {} a -> s {subscriptionName = a} :: RemoveSourceIdentifierFromSubscription)++-- | The source identifier to be removed from the subscription, such as the+-- instance identifier for an instance, or the name of a security group.+removeSourceIdentifierFromSubscription_sourceIdentifier :: Lens.Lens' RemoveSourceIdentifierFromSubscription Prelude.Text+removeSourceIdentifierFromSubscription_sourceIdentifier = Lens.lens (\RemoveSourceIdentifierFromSubscription' {sourceIdentifier} -> sourceIdentifier) (\s@RemoveSourceIdentifierFromSubscription' {} a -> s {sourceIdentifier = a} :: RemoveSourceIdentifierFromSubscription)++instance+ Core.AWSRequest+ RemoveSourceIdentifierFromSubscription+ where+ type+ AWSResponse+ RemoveSourceIdentifierFromSubscription =+ RemoveSourceIdentifierFromSubscriptionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "RemoveSourceIdentifierFromSubscriptionResult"+ ( \s h x ->+ RemoveSourceIdentifierFromSubscriptionResponse'+ Prelude.<$> (x Data..@? "EventSubscription")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ RemoveSourceIdentifierFromSubscription+ where+ hashWithSalt+ _salt+ RemoveSourceIdentifierFromSubscription' {..} =+ _salt+ `Prelude.hashWithSalt` subscriptionName+ `Prelude.hashWithSalt` sourceIdentifier++instance+ Prelude.NFData+ RemoveSourceIdentifierFromSubscription+ where+ rnf RemoveSourceIdentifierFromSubscription' {..} =+ Prelude.rnf subscriptionName+ `Prelude.seq` Prelude.rnf sourceIdentifier++instance+ Data.ToHeaders+ RemoveSourceIdentifierFromSubscription+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ RemoveSourceIdentifierFromSubscription+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ RemoveSourceIdentifierFromSubscription+ where+ toQuery RemoveSourceIdentifierFromSubscription' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "RemoveSourceIdentifierFromSubscription" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "SubscriptionName" Data.=: subscriptionName,+ "SourceIdentifier" Data.=: sourceIdentifier+ ]++-- | /See:/ 'newRemoveSourceIdentifierFromSubscriptionResponse' smart constructor.+data RemoveSourceIdentifierFromSubscriptionResponse = RemoveSourceIdentifierFromSubscriptionResponse'+ { eventSubscription :: Prelude.Maybe EventSubscription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveSourceIdentifierFromSubscriptionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventSubscription', 'removeSourceIdentifierFromSubscriptionResponse_eventSubscription' - Undocumented member.+--+-- 'httpStatus', 'removeSourceIdentifierFromSubscriptionResponse_httpStatus' - The response's http status code.+newRemoveSourceIdentifierFromSubscriptionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RemoveSourceIdentifierFromSubscriptionResponse+newRemoveSourceIdentifierFromSubscriptionResponse+ pHttpStatus_ =+ RemoveSourceIdentifierFromSubscriptionResponse'+ { eventSubscription =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+removeSourceIdentifierFromSubscriptionResponse_eventSubscription :: Lens.Lens' RemoveSourceIdentifierFromSubscriptionResponse (Prelude.Maybe EventSubscription)+removeSourceIdentifierFromSubscriptionResponse_eventSubscription = Lens.lens (\RemoveSourceIdentifierFromSubscriptionResponse' {eventSubscription} -> eventSubscription) (\s@RemoveSourceIdentifierFromSubscriptionResponse' {} a -> s {eventSubscription = a} :: RemoveSourceIdentifierFromSubscriptionResponse)++-- | The response's http status code.+removeSourceIdentifierFromSubscriptionResponse_httpStatus :: Lens.Lens' RemoveSourceIdentifierFromSubscriptionResponse Prelude.Int+removeSourceIdentifierFromSubscriptionResponse_httpStatus = Lens.lens (\RemoveSourceIdentifierFromSubscriptionResponse' {httpStatus} -> httpStatus) (\s@RemoveSourceIdentifierFromSubscriptionResponse' {} a -> s {httpStatus = a} :: RemoveSourceIdentifierFromSubscriptionResponse)++instance+ Prelude.NFData+ RemoveSourceIdentifierFromSubscriptionResponse+ where+ rnf+ RemoveSourceIdentifierFromSubscriptionResponse' {..} =+ Prelude.rnf eventSubscription+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/RemoveTagsFromResource.hs view
@@ -0,0 +1,148 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.RemoveTagsFromResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes metadata tags from an Amazon DocumentDB resource.+module Amazonka.DocumentDB.RemoveTagsFromResource+ ( -- * Creating a Request+ RemoveTagsFromResource (..),+ newRemoveTagsFromResource,++ -- * Request Lenses+ removeTagsFromResource_resourceName,+ removeTagsFromResource_tagKeys,++ -- * Destructuring the Response+ RemoveTagsFromResourceResponse (..),+ newRemoveTagsFromResourceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to RemoveTagsFromResource.+--+-- /See:/ 'newRemoveTagsFromResource' smart constructor.+data RemoveTagsFromResource = RemoveTagsFromResource'+ { -- | The Amazon DocumentDB resource that the tags are removed from. This+ -- value is an Amazon Resource Name (ARN).+ resourceName :: Prelude.Text,+ -- | The tag key (name) of the tag to be removed.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveTagsFromResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceName', 'removeTagsFromResource_resourceName' - The Amazon DocumentDB resource that the tags are removed from. This+-- value is an Amazon Resource Name (ARN).+--+-- 'tagKeys', 'removeTagsFromResource_tagKeys' - The tag key (name) of the tag to be removed.+newRemoveTagsFromResource ::+ -- | 'resourceName'+ Prelude.Text ->+ RemoveTagsFromResource+newRemoveTagsFromResource pResourceName_ =+ RemoveTagsFromResource'+ { resourceName =+ pResourceName_,+ tagKeys = Prelude.mempty+ }++-- | The Amazon DocumentDB resource that the tags are removed from. This+-- value is an Amazon Resource Name (ARN).+removeTagsFromResource_resourceName :: Lens.Lens' RemoveTagsFromResource Prelude.Text+removeTagsFromResource_resourceName = Lens.lens (\RemoveTagsFromResource' {resourceName} -> resourceName) (\s@RemoveTagsFromResource' {} a -> s {resourceName = a} :: RemoveTagsFromResource)++-- | The tag key (name) of the tag to be removed.+removeTagsFromResource_tagKeys :: Lens.Lens' RemoveTagsFromResource [Prelude.Text]+removeTagsFromResource_tagKeys = Lens.lens (\RemoveTagsFromResource' {tagKeys} -> tagKeys) (\s@RemoveTagsFromResource' {} a -> s {tagKeys = a} :: RemoveTagsFromResource) Prelude.. Lens.coerced++instance Core.AWSRequest RemoveTagsFromResource where+ type+ AWSResponse RemoveTagsFromResource =+ RemoveTagsFromResourceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ RemoveTagsFromResourceResponse'++instance Prelude.Hashable RemoveTagsFromResource where+ hashWithSalt _salt RemoveTagsFromResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceName+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData RemoveTagsFromResource where+ rnf RemoveTagsFromResource' {..} =+ Prelude.rnf resourceName+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders RemoveTagsFromResource where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath RemoveTagsFromResource where+ toPath = Prelude.const "/"++instance Data.ToQuery RemoveTagsFromResource where+ toQuery RemoveTagsFromResource' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("RemoveTagsFromResource" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "ResourceName" Data.=: resourceName,+ "TagKeys" Data.=: Data.toQueryList "member" tagKeys+ ]++-- | /See:/ 'newRemoveTagsFromResourceResponse' smart constructor.+data RemoveTagsFromResourceResponse = RemoveTagsFromResourceResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveTagsFromResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newRemoveTagsFromResourceResponse ::+ RemoveTagsFromResourceResponse+newRemoveTagsFromResourceResponse =+ RemoveTagsFromResourceResponse'++instance+ Prelude.NFData+ RemoveTagsFromResourceResponse+ where+ rnf _ = ()
+ gen/Amazonka/DocumentDB/ResetDBClusterParameterGroup.hs view
@@ -0,0 +1,176 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.ResetDBClusterParameterGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modifies the parameters of a cluster parameter group to the default+-- value. To reset specific parameters, submit a list of the following:+-- @ParameterName@ and @ApplyMethod@. To reset the entire cluster parameter+-- group, specify the @DBClusterParameterGroupName@ and+-- @ResetAllParameters@ parameters.+--+-- When you reset the entire group, dynamic parameters are updated+-- immediately and static parameters are set to @pending-reboot@ to take+-- effect on the next DB instance reboot.+module Amazonka.DocumentDB.ResetDBClusterParameterGroup+ ( -- * Creating a Request+ ResetDBClusterParameterGroup (..),+ newResetDBClusterParameterGroup,++ -- * Request Lenses+ resetDBClusterParameterGroup_parameters,+ resetDBClusterParameterGroup_resetAllParameters,+ resetDBClusterParameterGroup_dbClusterParameterGroupName,++ -- * Destructuring the Response+ DBClusterParameterGroupNameMessage (..),+ newDBClusterParameterGroupNameMessage,++ -- * Response Lenses+ dbClusterParameterGroupNameMessage_dbClusterParameterGroupName,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to ResetDBClusterParameterGroup.+--+-- /See:/ 'newResetDBClusterParameterGroup' smart constructor.+data ResetDBClusterParameterGroup = ResetDBClusterParameterGroup'+ { -- | A list of parameter names in the cluster parameter group to reset to the+ -- default values. You can\'t use this parameter if the+ -- @ResetAllParameters@ parameter is set to @true@.+ parameters :: Prelude.Maybe [Parameter],+ -- | A value that is set to @true@ to reset all parameters in the cluster+ -- parameter group to their default values, and @false@ otherwise. You+ -- can\'t use this parameter if there is a list of parameter names+ -- specified for the @Parameters@ parameter.+ resetAllParameters :: Prelude.Maybe Prelude.Bool,+ -- | The name of the cluster parameter group to reset.+ dbClusterParameterGroupName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResetDBClusterParameterGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'parameters', 'resetDBClusterParameterGroup_parameters' - A list of parameter names in the cluster parameter group to reset to the+-- default values. You can\'t use this parameter if the+-- @ResetAllParameters@ parameter is set to @true@.+--+-- 'resetAllParameters', 'resetDBClusterParameterGroup_resetAllParameters' - A value that is set to @true@ to reset all parameters in the cluster+-- parameter group to their default values, and @false@ otherwise. You+-- can\'t use this parameter if there is a list of parameter names+-- specified for the @Parameters@ parameter.+--+-- 'dbClusterParameterGroupName', 'resetDBClusterParameterGroup_dbClusterParameterGroupName' - The name of the cluster parameter group to reset.+newResetDBClusterParameterGroup ::+ -- | 'dbClusterParameterGroupName'+ Prelude.Text ->+ ResetDBClusterParameterGroup+newResetDBClusterParameterGroup+ pDBClusterParameterGroupName_ =+ ResetDBClusterParameterGroup'+ { parameters =+ Prelude.Nothing,+ resetAllParameters = Prelude.Nothing,+ dbClusterParameterGroupName =+ pDBClusterParameterGroupName_+ }++-- | A list of parameter names in the cluster parameter group to reset to the+-- default values. You can\'t use this parameter if the+-- @ResetAllParameters@ parameter is set to @true@.+resetDBClusterParameterGroup_parameters :: Lens.Lens' ResetDBClusterParameterGroup (Prelude.Maybe [Parameter])+resetDBClusterParameterGroup_parameters = Lens.lens (\ResetDBClusterParameterGroup' {parameters} -> parameters) (\s@ResetDBClusterParameterGroup' {} a -> s {parameters = a} :: ResetDBClusterParameterGroup) Prelude.. Lens.mapping Lens.coerced++-- | A value that is set to @true@ to reset all parameters in the cluster+-- parameter group to their default values, and @false@ otherwise. You+-- can\'t use this parameter if there is a list of parameter names+-- specified for the @Parameters@ parameter.+resetDBClusterParameterGroup_resetAllParameters :: Lens.Lens' ResetDBClusterParameterGroup (Prelude.Maybe Prelude.Bool)+resetDBClusterParameterGroup_resetAllParameters = Lens.lens (\ResetDBClusterParameterGroup' {resetAllParameters} -> resetAllParameters) (\s@ResetDBClusterParameterGroup' {} a -> s {resetAllParameters = a} :: ResetDBClusterParameterGroup)++-- | The name of the cluster parameter group to reset.+resetDBClusterParameterGroup_dbClusterParameterGroupName :: Lens.Lens' ResetDBClusterParameterGroup Prelude.Text+resetDBClusterParameterGroup_dbClusterParameterGroupName = Lens.lens (\ResetDBClusterParameterGroup' {dbClusterParameterGroupName} -> dbClusterParameterGroupName) (\s@ResetDBClusterParameterGroup' {} a -> s {dbClusterParameterGroupName = a} :: ResetDBClusterParameterGroup)++instance Core.AWSRequest ResetDBClusterParameterGroup where+ type+ AWSResponse ResetDBClusterParameterGroup =+ DBClusterParameterGroupNameMessage+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ResetDBClusterParameterGroupResult"+ (\s h x -> Data.parseXML x)++instance+ Prelude.Hashable+ ResetDBClusterParameterGroup+ where+ hashWithSalt _salt ResetDBClusterParameterGroup' {..} =+ _salt+ `Prelude.hashWithSalt` parameters+ `Prelude.hashWithSalt` resetAllParameters+ `Prelude.hashWithSalt` dbClusterParameterGroupName++instance Prelude.NFData ResetDBClusterParameterGroup where+ rnf ResetDBClusterParameterGroup' {..} =+ Prelude.rnf parameters+ `Prelude.seq` Prelude.rnf resetAllParameters+ `Prelude.seq` Prelude.rnf dbClusterParameterGroupName++instance Data.ToHeaders ResetDBClusterParameterGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ResetDBClusterParameterGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery ResetDBClusterParameterGroup where+ toQuery ResetDBClusterParameterGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "ResetDBClusterParameterGroup" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "Parameters"+ Data.=: Data.toQuery+ ( Data.toQueryList "Parameter"+ Prelude.<$> parameters+ ),+ "ResetAllParameters" Data.=: resetAllParameters,+ "DBClusterParameterGroupName"+ Data.=: dbClusterParameterGroupName+ ]
+ gen/Amazonka/DocumentDB/RestoreDBClusterFromSnapshot.hs view
@@ -0,0 +1,509 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.RestoreDBClusterFromSnapshot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new cluster from a snapshot or cluster snapshot.+--+-- If a snapshot is specified, the target cluster is created from the+-- source DB snapshot with a default configuration and default security+-- group.+--+-- If a cluster snapshot is specified, the target cluster is created from+-- the source cluster restore point with the same configuration as the+-- original source DB cluster, except that the new cluster is created with+-- the default security group.+module Amazonka.DocumentDB.RestoreDBClusterFromSnapshot+ ( -- * Creating a Request+ RestoreDBClusterFromSnapshot (..),+ newRestoreDBClusterFromSnapshot,++ -- * Request Lenses+ restoreDBClusterFromSnapshot_availabilityZones,+ restoreDBClusterFromSnapshot_dbSubnetGroupName,+ restoreDBClusterFromSnapshot_deletionProtection,+ restoreDBClusterFromSnapshot_enableCloudwatchLogsExports,+ restoreDBClusterFromSnapshot_engineVersion,+ restoreDBClusterFromSnapshot_kmsKeyId,+ restoreDBClusterFromSnapshot_port,+ restoreDBClusterFromSnapshot_tags,+ restoreDBClusterFromSnapshot_vpcSecurityGroupIds,+ restoreDBClusterFromSnapshot_dbClusterIdentifier,+ restoreDBClusterFromSnapshot_snapshotIdentifier,+ restoreDBClusterFromSnapshot_engine,++ -- * Destructuring the Response+ RestoreDBClusterFromSnapshotResponse (..),+ newRestoreDBClusterFromSnapshotResponse,++ -- * Response Lenses+ restoreDBClusterFromSnapshotResponse_dbCluster,+ restoreDBClusterFromSnapshotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to RestoreDBClusterFromSnapshot.+--+-- /See:/ 'newRestoreDBClusterFromSnapshot' smart constructor.+data RestoreDBClusterFromSnapshot = RestoreDBClusterFromSnapshot'+ { -- | Provides the list of Amazon EC2 Availability Zones that instances in the+ -- restored DB cluster can be created in.+ availabilityZones :: Prelude.Maybe [Prelude.Text],+ -- | The name of the subnet group to use for the new cluster.+ --+ -- Constraints: If provided, must match the name of an existing+ -- @DBSubnetGroup@.+ --+ -- Example: @mySubnetgroup@+ dbSubnetGroupName :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether this cluster can be deleted. If @DeletionProtection@+ -- is enabled, the cluster cannot be deleted unless it is modified and+ -- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+ -- from being accidentally deleted.+ deletionProtection :: Prelude.Maybe Prelude.Bool,+ -- | A list of log types that must be enabled for exporting to Amazon+ -- CloudWatch Logs.+ enableCloudwatchLogsExports :: Prelude.Maybe [Prelude.Text],+ -- | The version of the database engine to use for the new cluster.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | The KMS key identifier to use when restoring an encrypted cluster from a+ -- DB snapshot or cluster snapshot.+ --+ -- The KMS key identifier is the Amazon Resource Name (ARN) for the KMS+ -- encryption key. If you are restoring a cluster with the same Amazon Web+ -- Services account that owns the KMS encryption key used to encrypt the+ -- new cluster, then you can use the KMS key alias instead of the ARN for+ -- the KMS encryption key.+ --+ -- If you do not specify a value for the @KmsKeyId@ parameter, then the+ -- following occurs:+ --+ -- - If the snapshot or cluster snapshot in @SnapshotIdentifier@ is+ -- encrypted, then the restored cluster is encrypted using the KMS key+ -- that was used to encrypt the snapshot or the cluster snapshot.+ --+ -- - If the snapshot or the cluster snapshot in @SnapshotIdentifier@ is+ -- not encrypted, then the restored DB cluster is not encrypted.+ kmsKeyId :: Prelude.Maybe Prelude.Text,+ -- | The port number on which the new cluster accepts connections.+ --+ -- Constraints: Must be a value from @1150@ to @65535@.+ --+ -- Default: The same port as the original cluster.+ port :: Prelude.Maybe Prelude.Int,+ -- | The tags to be assigned to the restored cluster.+ tags :: Prelude.Maybe [Tag],+ -- | A list of virtual private cloud (VPC) security groups that the new+ -- cluster will belong to.+ vpcSecurityGroupIds :: Prelude.Maybe [Prelude.Text],+ -- | The name of the cluster to create from the snapshot or cluster snapshot.+ -- This parameter isn\'t case sensitive.+ --+ -- Constraints:+ --+ -- - Must contain from 1 to 63 letters, numbers, or hyphens.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ --+ -- Example: @my-snapshot-id@+ dbClusterIdentifier :: Prelude.Text,+ -- | The identifier for the snapshot or cluster snapshot to restore from.+ --+ -- You can use either the name or the Amazon Resource Name (ARN) to specify+ -- a cluster snapshot. However, you can use only the ARN to specify a+ -- snapshot.+ --+ -- Constraints:+ --+ -- - Must match the identifier of an existing snapshot.+ snapshotIdentifier :: Prelude.Text,+ -- | The database engine to use for the new cluster.+ --+ -- Default: The same as source.+ --+ -- Constraint: Must be compatible with the engine of the source.+ engine :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RestoreDBClusterFromSnapshot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'availabilityZones', 'restoreDBClusterFromSnapshot_availabilityZones' - Provides the list of Amazon EC2 Availability Zones that instances in the+-- restored DB cluster can be created in.+--+-- 'dbSubnetGroupName', 'restoreDBClusterFromSnapshot_dbSubnetGroupName' - The name of the subnet group to use for the new cluster.+--+-- Constraints: If provided, must match the name of an existing+-- @DBSubnetGroup@.+--+-- Example: @mySubnetgroup@+--+-- 'deletionProtection', 'restoreDBClusterFromSnapshot_deletionProtection' - Specifies whether this cluster can be deleted. If @DeletionProtection@+-- is enabled, the cluster cannot be deleted unless it is modified and+-- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+-- from being accidentally deleted.+--+-- 'enableCloudwatchLogsExports', 'restoreDBClusterFromSnapshot_enableCloudwatchLogsExports' - A list of log types that must be enabled for exporting to Amazon+-- CloudWatch Logs.+--+-- 'engineVersion', 'restoreDBClusterFromSnapshot_engineVersion' - The version of the database engine to use for the new cluster.+--+-- 'kmsKeyId', 'restoreDBClusterFromSnapshot_kmsKeyId' - The KMS key identifier to use when restoring an encrypted cluster from a+-- DB snapshot or cluster snapshot.+--+-- The KMS key identifier is the Amazon Resource Name (ARN) for the KMS+-- encryption key. If you are restoring a cluster with the same Amazon Web+-- Services account that owns the KMS encryption key used to encrypt the+-- new cluster, then you can use the KMS key alias instead of the ARN for+-- the KMS encryption key.+--+-- If you do not specify a value for the @KmsKeyId@ parameter, then the+-- following occurs:+--+-- - If the snapshot or cluster snapshot in @SnapshotIdentifier@ is+-- encrypted, then the restored cluster is encrypted using the KMS key+-- that was used to encrypt the snapshot or the cluster snapshot.+--+-- - If the snapshot or the cluster snapshot in @SnapshotIdentifier@ is+-- not encrypted, then the restored DB cluster is not encrypted.+--+-- 'port', 'restoreDBClusterFromSnapshot_port' - The port number on which the new cluster accepts connections.+--+-- Constraints: Must be a value from @1150@ to @65535@.+--+-- Default: The same port as the original cluster.+--+-- 'tags', 'restoreDBClusterFromSnapshot_tags' - The tags to be assigned to the restored cluster.+--+-- 'vpcSecurityGroupIds', 'restoreDBClusterFromSnapshot_vpcSecurityGroupIds' - A list of virtual private cloud (VPC) security groups that the new+-- cluster will belong to.+--+-- 'dbClusterIdentifier', 'restoreDBClusterFromSnapshot_dbClusterIdentifier' - The name of the cluster to create from the snapshot or cluster snapshot.+-- This parameter isn\'t case sensitive.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-snapshot-id@+--+-- 'snapshotIdentifier', 'restoreDBClusterFromSnapshot_snapshotIdentifier' - The identifier for the snapshot or cluster snapshot to restore from.+--+-- You can use either the name or the Amazon Resource Name (ARN) to specify+-- a cluster snapshot. However, you can use only the ARN to specify a+-- snapshot.+--+-- Constraints:+--+-- - Must match the identifier of an existing snapshot.+--+-- 'engine', 'restoreDBClusterFromSnapshot_engine' - The database engine to use for the new cluster.+--+-- Default: The same as source.+--+-- Constraint: Must be compatible with the engine of the source.+newRestoreDBClusterFromSnapshot ::+ -- | 'dbClusterIdentifier'+ Prelude.Text ->+ -- | 'snapshotIdentifier'+ Prelude.Text ->+ -- | 'engine'+ Prelude.Text ->+ RestoreDBClusterFromSnapshot+newRestoreDBClusterFromSnapshot+ pDBClusterIdentifier_+ pSnapshotIdentifier_+ pEngine_ =+ RestoreDBClusterFromSnapshot'+ { availabilityZones =+ Prelude.Nothing,+ dbSubnetGroupName = Prelude.Nothing,+ deletionProtection = Prelude.Nothing,+ enableCloudwatchLogsExports = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ kmsKeyId = Prelude.Nothing,+ port = Prelude.Nothing,+ tags = Prelude.Nothing,+ vpcSecurityGroupIds = Prelude.Nothing,+ dbClusterIdentifier = pDBClusterIdentifier_,+ snapshotIdentifier = pSnapshotIdentifier_,+ engine = pEngine_+ }++-- | Provides the list of Amazon EC2 Availability Zones that instances in the+-- restored DB cluster can be created in.+restoreDBClusterFromSnapshot_availabilityZones :: Lens.Lens' RestoreDBClusterFromSnapshot (Prelude.Maybe [Prelude.Text])+restoreDBClusterFromSnapshot_availabilityZones = Lens.lens (\RestoreDBClusterFromSnapshot' {availabilityZones} -> availabilityZones) (\s@RestoreDBClusterFromSnapshot' {} a -> s {availabilityZones = a} :: RestoreDBClusterFromSnapshot) Prelude.. Lens.mapping Lens.coerced++-- | The name of the subnet group to use for the new cluster.+--+-- Constraints: If provided, must match the name of an existing+-- @DBSubnetGroup@.+--+-- Example: @mySubnetgroup@+restoreDBClusterFromSnapshot_dbSubnetGroupName :: Lens.Lens' RestoreDBClusterFromSnapshot (Prelude.Maybe Prelude.Text)+restoreDBClusterFromSnapshot_dbSubnetGroupName = Lens.lens (\RestoreDBClusterFromSnapshot' {dbSubnetGroupName} -> dbSubnetGroupName) (\s@RestoreDBClusterFromSnapshot' {} a -> s {dbSubnetGroupName = a} :: RestoreDBClusterFromSnapshot)++-- | Specifies whether this cluster can be deleted. If @DeletionProtection@+-- is enabled, the cluster cannot be deleted unless it is modified and+-- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+-- from being accidentally deleted.+restoreDBClusterFromSnapshot_deletionProtection :: Lens.Lens' RestoreDBClusterFromSnapshot (Prelude.Maybe Prelude.Bool)+restoreDBClusterFromSnapshot_deletionProtection = Lens.lens (\RestoreDBClusterFromSnapshot' {deletionProtection} -> deletionProtection) (\s@RestoreDBClusterFromSnapshot' {} a -> s {deletionProtection = a} :: RestoreDBClusterFromSnapshot)++-- | A list of log types that must be enabled for exporting to Amazon+-- CloudWatch Logs.+restoreDBClusterFromSnapshot_enableCloudwatchLogsExports :: Lens.Lens' RestoreDBClusterFromSnapshot (Prelude.Maybe [Prelude.Text])+restoreDBClusterFromSnapshot_enableCloudwatchLogsExports = Lens.lens (\RestoreDBClusterFromSnapshot' {enableCloudwatchLogsExports} -> enableCloudwatchLogsExports) (\s@RestoreDBClusterFromSnapshot' {} a -> s {enableCloudwatchLogsExports = a} :: RestoreDBClusterFromSnapshot) Prelude.. Lens.mapping Lens.coerced++-- | The version of the database engine to use for the new cluster.+restoreDBClusterFromSnapshot_engineVersion :: Lens.Lens' RestoreDBClusterFromSnapshot (Prelude.Maybe Prelude.Text)+restoreDBClusterFromSnapshot_engineVersion = Lens.lens (\RestoreDBClusterFromSnapshot' {engineVersion} -> engineVersion) (\s@RestoreDBClusterFromSnapshot' {} a -> s {engineVersion = a} :: RestoreDBClusterFromSnapshot)++-- | The KMS key identifier to use when restoring an encrypted cluster from a+-- DB snapshot or cluster snapshot.+--+-- The KMS key identifier is the Amazon Resource Name (ARN) for the KMS+-- encryption key. If you are restoring a cluster with the same Amazon Web+-- Services account that owns the KMS encryption key used to encrypt the+-- new cluster, then you can use the KMS key alias instead of the ARN for+-- the KMS encryption key.+--+-- If you do not specify a value for the @KmsKeyId@ parameter, then the+-- following occurs:+--+-- - If the snapshot or cluster snapshot in @SnapshotIdentifier@ is+-- encrypted, then the restored cluster is encrypted using the KMS key+-- that was used to encrypt the snapshot or the cluster snapshot.+--+-- - If the snapshot or the cluster snapshot in @SnapshotIdentifier@ is+-- not encrypted, then the restored DB cluster is not encrypted.+restoreDBClusterFromSnapshot_kmsKeyId :: Lens.Lens' RestoreDBClusterFromSnapshot (Prelude.Maybe Prelude.Text)+restoreDBClusterFromSnapshot_kmsKeyId = Lens.lens (\RestoreDBClusterFromSnapshot' {kmsKeyId} -> kmsKeyId) (\s@RestoreDBClusterFromSnapshot' {} a -> s {kmsKeyId = a} :: RestoreDBClusterFromSnapshot)++-- | The port number on which the new cluster accepts connections.+--+-- Constraints: Must be a value from @1150@ to @65535@.+--+-- Default: The same port as the original cluster.+restoreDBClusterFromSnapshot_port :: Lens.Lens' RestoreDBClusterFromSnapshot (Prelude.Maybe Prelude.Int)+restoreDBClusterFromSnapshot_port = Lens.lens (\RestoreDBClusterFromSnapshot' {port} -> port) (\s@RestoreDBClusterFromSnapshot' {} a -> s {port = a} :: RestoreDBClusterFromSnapshot)++-- | The tags to be assigned to the restored cluster.+restoreDBClusterFromSnapshot_tags :: Lens.Lens' RestoreDBClusterFromSnapshot (Prelude.Maybe [Tag])+restoreDBClusterFromSnapshot_tags = Lens.lens (\RestoreDBClusterFromSnapshot' {tags} -> tags) (\s@RestoreDBClusterFromSnapshot' {} a -> s {tags = a} :: RestoreDBClusterFromSnapshot) Prelude.. Lens.mapping Lens.coerced++-- | A list of virtual private cloud (VPC) security groups that the new+-- cluster will belong to.+restoreDBClusterFromSnapshot_vpcSecurityGroupIds :: Lens.Lens' RestoreDBClusterFromSnapshot (Prelude.Maybe [Prelude.Text])+restoreDBClusterFromSnapshot_vpcSecurityGroupIds = Lens.lens (\RestoreDBClusterFromSnapshot' {vpcSecurityGroupIds} -> vpcSecurityGroupIds) (\s@RestoreDBClusterFromSnapshot' {} a -> s {vpcSecurityGroupIds = a} :: RestoreDBClusterFromSnapshot) Prelude.. Lens.mapping Lens.coerced++-- | The name of the cluster to create from the snapshot or cluster snapshot.+-- This parameter isn\'t case sensitive.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- Example: @my-snapshot-id@+restoreDBClusterFromSnapshot_dbClusterIdentifier :: Lens.Lens' RestoreDBClusterFromSnapshot Prelude.Text+restoreDBClusterFromSnapshot_dbClusterIdentifier = Lens.lens (\RestoreDBClusterFromSnapshot' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@RestoreDBClusterFromSnapshot' {} a -> s {dbClusterIdentifier = a} :: RestoreDBClusterFromSnapshot)++-- | The identifier for the snapshot or cluster snapshot to restore from.+--+-- You can use either the name or the Amazon Resource Name (ARN) to specify+-- a cluster snapshot. However, you can use only the ARN to specify a+-- snapshot.+--+-- Constraints:+--+-- - Must match the identifier of an existing snapshot.+restoreDBClusterFromSnapshot_snapshotIdentifier :: Lens.Lens' RestoreDBClusterFromSnapshot Prelude.Text+restoreDBClusterFromSnapshot_snapshotIdentifier = Lens.lens (\RestoreDBClusterFromSnapshot' {snapshotIdentifier} -> snapshotIdentifier) (\s@RestoreDBClusterFromSnapshot' {} a -> s {snapshotIdentifier = a} :: RestoreDBClusterFromSnapshot)++-- | The database engine to use for the new cluster.+--+-- Default: The same as source.+--+-- Constraint: Must be compatible with the engine of the source.+restoreDBClusterFromSnapshot_engine :: Lens.Lens' RestoreDBClusterFromSnapshot Prelude.Text+restoreDBClusterFromSnapshot_engine = Lens.lens (\RestoreDBClusterFromSnapshot' {engine} -> engine) (\s@RestoreDBClusterFromSnapshot' {} a -> s {engine = a} :: RestoreDBClusterFromSnapshot)++instance Core.AWSRequest RestoreDBClusterFromSnapshot where+ type+ AWSResponse RestoreDBClusterFromSnapshot =+ RestoreDBClusterFromSnapshotResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "RestoreDBClusterFromSnapshotResult"+ ( \s h x ->+ RestoreDBClusterFromSnapshotResponse'+ Prelude.<$> (x Data..@? "DBCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ RestoreDBClusterFromSnapshot+ where+ hashWithSalt _salt RestoreDBClusterFromSnapshot' {..} =+ _salt+ `Prelude.hashWithSalt` availabilityZones+ `Prelude.hashWithSalt` dbSubnetGroupName+ `Prelude.hashWithSalt` deletionProtection+ `Prelude.hashWithSalt` enableCloudwatchLogsExports+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` kmsKeyId+ `Prelude.hashWithSalt` port+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` vpcSecurityGroupIds+ `Prelude.hashWithSalt` dbClusterIdentifier+ `Prelude.hashWithSalt` snapshotIdentifier+ `Prelude.hashWithSalt` engine++instance Prelude.NFData RestoreDBClusterFromSnapshot where+ rnf RestoreDBClusterFromSnapshot' {..} =+ Prelude.rnf availabilityZones+ `Prelude.seq` Prelude.rnf dbSubnetGroupName+ `Prelude.seq` Prelude.rnf deletionProtection+ `Prelude.seq` Prelude.rnf enableCloudwatchLogsExports+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf kmsKeyId+ `Prelude.seq` Prelude.rnf port+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vpcSecurityGroupIds+ `Prelude.seq` Prelude.rnf dbClusterIdentifier+ `Prelude.seq` Prelude.rnf snapshotIdentifier+ `Prelude.seq` Prelude.rnf engine++instance Data.ToHeaders RestoreDBClusterFromSnapshot where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath RestoreDBClusterFromSnapshot where+ toPath = Prelude.const "/"++instance Data.ToQuery RestoreDBClusterFromSnapshot where+ toQuery RestoreDBClusterFromSnapshot' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "RestoreDBClusterFromSnapshot" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "AvailabilityZones"+ Data.=: Data.toQuery+ ( Data.toQueryList "AvailabilityZone"+ Prelude.<$> availabilityZones+ ),+ "DBSubnetGroupName" Data.=: dbSubnetGroupName,+ "DeletionProtection" Data.=: deletionProtection,+ "EnableCloudwatchLogsExports"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> enableCloudwatchLogsExports+ ),+ "EngineVersion" Data.=: engineVersion,+ "KmsKeyId" Data.=: kmsKeyId,+ "Port" Data.=: port,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "Tag" Prelude.<$> tags),+ "VpcSecurityGroupIds"+ Data.=: Data.toQuery+ ( Data.toQueryList "VpcSecurityGroupId"+ Prelude.<$> vpcSecurityGroupIds+ ),+ "DBClusterIdentifier" Data.=: dbClusterIdentifier,+ "SnapshotIdentifier" Data.=: snapshotIdentifier,+ "Engine" Data.=: engine+ ]++-- | /See:/ 'newRestoreDBClusterFromSnapshotResponse' smart constructor.+data RestoreDBClusterFromSnapshotResponse = RestoreDBClusterFromSnapshotResponse'+ { dbCluster :: Prelude.Maybe DBCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RestoreDBClusterFromSnapshotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbCluster', 'restoreDBClusterFromSnapshotResponse_dbCluster' - Undocumented member.+--+-- 'httpStatus', 'restoreDBClusterFromSnapshotResponse_httpStatus' - The response's http status code.+newRestoreDBClusterFromSnapshotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RestoreDBClusterFromSnapshotResponse+newRestoreDBClusterFromSnapshotResponse pHttpStatus_ =+ RestoreDBClusterFromSnapshotResponse'+ { dbCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+restoreDBClusterFromSnapshotResponse_dbCluster :: Lens.Lens' RestoreDBClusterFromSnapshotResponse (Prelude.Maybe DBCluster)+restoreDBClusterFromSnapshotResponse_dbCluster = Lens.lens (\RestoreDBClusterFromSnapshotResponse' {dbCluster} -> dbCluster) (\s@RestoreDBClusterFromSnapshotResponse' {} a -> s {dbCluster = a} :: RestoreDBClusterFromSnapshotResponse)++-- | The response's http status code.+restoreDBClusterFromSnapshotResponse_httpStatus :: Lens.Lens' RestoreDBClusterFromSnapshotResponse Prelude.Int+restoreDBClusterFromSnapshotResponse_httpStatus = Lens.lens (\RestoreDBClusterFromSnapshotResponse' {httpStatus} -> httpStatus) (\s@RestoreDBClusterFromSnapshotResponse' {} a -> s {httpStatus = a} :: RestoreDBClusterFromSnapshotResponse)++instance+ Prelude.NFData+ RestoreDBClusterFromSnapshotResponse+ where+ rnf RestoreDBClusterFromSnapshotResponse' {..} =+ Prelude.rnf dbCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/RestoreDBClusterToPointInTime.hs view
@@ -0,0 +1,585 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.RestoreDBClusterToPointInTime+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Restores a cluster to an arbitrary point in time. Users can restore to+-- any point in time before @LatestRestorableTime@ for up to+-- @BackupRetentionPeriod@ days. The target cluster is created from the+-- source cluster with the same configuration as the original cluster,+-- except that the new cluster is created with the default security group.+module Amazonka.DocumentDB.RestoreDBClusterToPointInTime+ ( -- * Creating a Request+ RestoreDBClusterToPointInTime (..),+ newRestoreDBClusterToPointInTime,++ -- * Request Lenses+ restoreDBClusterToPointInTime_dbSubnetGroupName,+ restoreDBClusterToPointInTime_deletionProtection,+ restoreDBClusterToPointInTime_enableCloudwatchLogsExports,+ restoreDBClusterToPointInTime_kmsKeyId,+ restoreDBClusterToPointInTime_port,+ restoreDBClusterToPointInTime_restoreToTime,+ restoreDBClusterToPointInTime_restoreType,+ restoreDBClusterToPointInTime_tags,+ restoreDBClusterToPointInTime_useLatestRestorableTime,+ restoreDBClusterToPointInTime_vpcSecurityGroupIds,+ restoreDBClusterToPointInTime_dbClusterIdentifier,+ restoreDBClusterToPointInTime_sourceDBClusterIdentifier,++ -- * Destructuring the Response+ RestoreDBClusterToPointInTimeResponse (..),+ newRestoreDBClusterToPointInTimeResponse,++ -- * Response Lenses+ restoreDBClusterToPointInTimeResponse_dbCluster,+ restoreDBClusterToPointInTimeResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Represents the input to RestoreDBClusterToPointInTime.+--+-- /See:/ 'newRestoreDBClusterToPointInTime' smart constructor.+data RestoreDBClusterToPointInTime = RestoreDBClusterToPointInTime'+ { -- | The subnet group name to use for the new cluster.+ --+ -- Constraints: If provided, must match the name of an existing+ -- @DBSubnetGroup@.+ --+ -- Example: @mySubnetgroup@+ dbSubnetGroupName :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether this cluster can be deleted. If @DeletionProtection@+ -- is enabled, the cluster cannot be deleted unless it is modified and+ -- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+ -- from being accidentally deleted.+ deletionProtection :: Prelude.Maybe Prelude.Bool,+ -- | A list of log types that must be enabled for exporting to Amazon+ -- CloudWatch Logs.+ enableCloudwatchLogsExports :: Prelude.Maybe [Prelude.Text],+ -- | The KMS key identifier to use when restoring an encrypted cluster from+ -- an encrypted cluster.+ --+ -- The KMS key identifier is the Amazon Resource Name (ARN) for the KMS+ -- encryption key. If you are restoring a cluster with the same Amazon Web+ -- Services account that owns the KMS encryption key used to encrypt the+ -- new cluster, then you can use the KMS key alias instead of the ARN for+ -- the KMS encryption key.+ --+ -- You can restore to a new cluster and encrypt the new cluster with an KMS+ -- key that is different from the KMS key used to encrypt the source+ -- cluster. The new DB cluster is encrypted with the KMS key identified by+ -- the @KmsKeyId@ parameter.+ --+ -- If you do not specify a value for the @KmsKeyId@ parameter, then the+ -- following occurs:+ --+ -- - If the cluster is encrypted, then the restored cluster is encrypted+ -- using the KMS key that was used to encrypt the source cluster.+ --+ -- - If the cluster is not encrypted, then the restored cluster is not+ -- encrypted.+ --+ -- If @DBClusterIdentifier@ refers to a cluster that is not encrypted, then+ -- the restore request is rejected.+ kmsKeyId :: Prelude.Maybe Prelude.Text,+ -- | The port number on which the new cluster accepts connections.+ --+ -- Constraints: Must be a value from @1150@ to @65535@.+ --+ -- Default: The default port for the engine.+ port :: Prelude.Maybe Prelude.Int,+ -- | The date and time to restore the cluster to.+ --+ -- Valid values: A time in Universal Coordinated Time (UTC) format.+ --+ -- Constraints:+ --+ -- - Must be before the latest restorable time for the instance.+ --+ -- - Must be specified if the @UseLatestRestorableTime@ parameter is not+ -- provided.+ --+ -- - Cannot be specified if the @UseLatestRestorableTime@ parameter is+ -- @true@.+ --+ -- - Cannot be specified if the @RestoreType@ parameter is+ -- @copy-on-write@.+ --+ -- Example: @2015-03-07T23:45:00Z@+ restoreToTime :: Prelude.Maybe Data.ISO8601,+ -- | The type of restore to be performed. You can specify one of the+ -- following values:+ --+ -- - @full-copy@ - The new DB cluster is restored as a full copy of the+ -- source DB cluster.+ --+ -- - @copy-on-write@ - The new DB cluster is restored as a clone of the+ -- source DB cluster.+ --+ -- If you don\'t specify a @RestoreType@ value, then the new DB cluster is+ -- restored as a full copy of the source DB cluster.+ restoreType :: Prelude.Maybe Prelude.Text,+ -- | The tags to be assigned to the restored cluster.+ tags :: Prelude.Maybe [Tag],+ -- | A value that is set to @true@ to restore the cluster to the latest+ -- restorable backup time, and @false@ otherwise.+ --+ -- Default: @false@+ --+ -- Constraints: Cannot be specified if the @RestoreToTime@ parameter is+ -- provided.+ useLatestRestorableTime :: Prelude.Maybe Prelude.Bool,+ -- | A list of VPC security groups that the new cluster belongs to.+ vpcSecurityGroupIds :: Prelude.Maybe [Prelude.Text],+ -- | The name of the new cluster to be created.+ --+ -- Constraints:+ --+ -- - Must contain from 1 to 63 letters, numbers, or hyphens.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ dbClusterIdentifier :: Prelude.Text,+ -- | The identifier of the source cluster from which to restore.+ --+ -- Constraints:+ --+ -- - Must match the identifier of an existing @DBCluster@.+ sourceDBClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RestoreDBClusterToPointInTime' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbSubnetGroupName', 'restoreDBClusterToPointInTime_dbSubnetGroupName' - The subnet group name to use for the new cluster.+--+-- Constraints: If provided, must match the name of an existing+-- @DBSubnetGroup@.+--+-- Example: @mySubnetgroup@+--+-- 'deletionProtection', 'restoreDBClusterToPointInTime_deletionProtection' - Specifies whether this cluster can be deleted. If @DeletionProtection@+-- is enabled, the cluster cannot be deleted unless it is modified and+-- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+-- from being accidentally deleted.+--+-- 'enableCloudwatchLogsExports', 'restoreDBClusterToPointInTime_enableCloudwatchLogsExports' - A list of log types that must be enabled for exporting to Amazon+-- CloudWatch Logs.+--+-- 'kmsKeyId', 'restoreDBClusterToPointInTime_kmsKeyId' - The KMS key identifier to use when restoring an encrypted cluster from+-- an encrypted cluster.+--+-- The KMS key identifier is the Amazon Resource Name (ARN) for the KMS+-- encryption key. If you are restoring a cluster with the same Amazon Web+-- Services account that owns the KMS encryption key used to encrypt the+-- new cluster, then you can use the KMS key alias instead of the ARN for+-- the KMS encryption key.+--+-- You can restore to a new cluster and encrypt the new cluster with an KMS+-- key that is different from the KMS key used to encrypt the source+-- cluster. The new DB cluster is encrypted with the KMS key identified by+-- the @KmsKeyId@ parameter.+--+-- If you do not specify a value for the @KmsKeyId@ parameter, then the+-- following occurs:+--+-- - If the cluster is encrypted, then the restored cluster is encrypted+-- using the KMS key that was used to encrypt the source cluster.+--+-- - If the cluster is not encrypted, then the restored cluster is not+-- encrypted.+--+-- If @DBClusterIdentifier@ refers to a cluster that is not encrypted, then+-- the restore request is rejected.+--+-- 'port', 'restoreDBClusterToPointInTime_port' - The port number on which the new cluster accepts connections.+--+-- Constraints: Must be a value from @1150@ to @65535@.+--+-- Default: The default port for the engine.+--+-- 'restoreToTime', 'restoreDBClusterToPointInTime_restoreToTime' - The date and time to restore the cluster to.+--+-- Valid values: A time in Universal Coordinated Time (UTC) format.+--+-- Constraints:+--+-- - Must be before the latest restorable time for the instance.+--+-- - Must be specified if the @UseLatestRestorableTime@ parameter is not+-- provided.+--+-- - Cannot be specified if the @UseLatestRestorableTime@ parameter is+-- @true@.+--+-- - Cannot be specified if the @RestoreType@ parameter is+-- @copy-on-write@.+--+-- Example: @2015-03-07T23:45:00Z@+--+-- 'restoreType', 'restoreDBClusterToPointInTime_restoreType' - The type of restore to be performed. You can specify one of the+-- following values:+--+-- - @full-copy@ - The new DB cluster is restored as a full copy of the+-- source DB cluster.+--+-- - @copy-on-write@ - The new DB cluster is restored as a clone of the+-- source DB cluster.+--+-- If you don\'t specify a @RestoreType@ value, then the new DB cluster is+-- restored as a full copy of the source DB cluster.+--+-- 'tags', 'restoreDBClusterToPointInTime_tags' - The tags to be assigned to the restored cluster.+--+-- 'useLatestRestorableTime', 'restoreDBClusterToPointInTime_useLatestRestorableTime' - A value that is set to @true@ to restore the cluster to the latest+-- restorable backup time, and @false@ otherwise.+--+-- Default: @false@+--+-- Constraints: Cannot be specified if the @RestoreToTime@ parameter is+-- provided.+--+-- 'vpcSecurityGroupIds', 'restoreDBClusterToPointInTime_vpcSecurityGroupIds' - A list of VPC security groups that the new cluster belongs to.+--+-- 'dbClusterIdentifier', 'restoreDBClusterToPointInTime_dbClusterIdentifier' - The name of the new cluster to be created.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- 'sourceDBClusterIdentifier', 'restoreDBClusterToPointInTime_sourceDBClusterIdentifier' - The identifier of the source cluster from which to restore.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBCluster@.+newRestoreDBClusterToPointInTime ::+ -- | 'dbClusterIdentifier'+ Prelude.Text ->+ -- | 'sourceDBClusterIdentifier'+ Prelude.Text ->+ RestoreDBClusterToPointInTime+newRestoreDBClusterToPointInTime+ pDBClusterIdentifier_+ pSourceDBClusterIdentifier_ =+ RestoreDBClusterToPointInTime'+ { dbSubnetGroupName =+ Prelude.Nothing,+ deletionProtection = Prelude.Nothing,+ enableCloudwatchLogsExports =+ Prelude.Nothing,+ kmsKeyId = Prelude.Nothing,+ port = Prelude.Nothing,+ restoreToTime = Prelude.Nothing,+ restoreType = Prelude.Nothing,+ tags = Prelude.Nothing,+ useLatestRestorableTime = Prelude.Nothing,+ vpcSecurityGroupIds = Prelude.Nothing,+ dbClusterIdentifier = pDBClusterIdentifier_,+ sourceDBClusterIdentifier =+ pSourceDBClusterIdentifier_+ }++-- | The subnet group name to use for the new cluster.+--+-- Constraints: If provided, must match the name of an existing+-- @DBSubnetGroup@.+--+-- Example: @mySubnetgroup@+restoreDBClusterToPointInTime_dbSubnetGroupName :: Lens.Lens' RestoreDBClusterToPointInTime (Prelude.Maybe Prelude.Text)+restoreDBClusterToPointInTime_dbSubnetGroupName = Lens.lens (\RestoreDBClusterToPointInTime' {dbSubnetGroupName} -> dbSubnetGroupName) (\s@RestoreDBClusterToPointInTime' {} a -> s {dbSubnetGroupName = a} :: RestoreDBClusterToPointInTime)++-- | Specifies whether this cluster can be deleted. If @DeletionProtection@+-- is enabled, the cluster cannot be deleted unless it is modified and+-- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+-- from being accidentally deleted.+restoreDBClusterToPointInTime_deletionProtection :: Lens.Lens' RestoreDBClusterToPointInTime (Prelude.Maybe Prelude.Bool)+restoreDBClusterToPointInTime_deletionProtection = Lens.lens (\RestoreDBClusterToPointInTime' {deletionProtection} -> deletionProtection) (\s@RestoreDBClusterToPointInTime' {} a -> s {deletionProtection = a} :: RestoreDBClusterToPointInTime)++-- | A list of log types that must be enabled for exporting to Amazon+-- CloudWatch Logs.+restoreDBClusterToPointInTime_enableCloudwatchLogsExports :: Lens.Lens' RestoreDBClusterToPointInTime (Prelude.Maybe [Prelude.Text])+restoreDBClusterToPointInTime_enableCloudwatchLogsExports = Lens.lens (\RestoreDBClusterToPointInTime' {enableCloudwatchLogsExports} -> enableCloudwatchLogsExports) (\s@RestoreDBClusterToPointInTime' {} a -> s {enableCloudwatchLogsExports = a} :: RestoreDBClusterToPointInTime) Prelude.. Lens.mapping Lens.coerced++-- | The KMS key identifier to use when restoring an encrypted cluster from+-- an encrypted cluster.+--+-- The KMS key identifier is the Amazon Resource Name (ARN) for the KMS+-- encryption key. If you are restoring a cluster with the same Amazon Web+-- Services account that owns the KMS encryption key used to encrypt the+-- new cluster, then you can use the KMS key alias instead of the ARN for+-- the KMS encryption key.+--+-- You can restore to a new cluster and encrypt the new cluster with an KMS+-- key that is different from the KMS key used to encrypt the source+-- cluster. The new DB cluster is encrypted with the KMS key identified by+-- the @KmsKeyId@ parameter.+--+-- If you do not specify a value for the @KmsKeyId@ parameter, then the+-- following occurs:+--+-- - If the cluster is encrypted, then the restored cluster is encrypted+-- using the KMS key that was used to encrypt the source cluster.+--+-- - If the cluster is not encrypted, then the restored cluster is not+-- encrypted.+--+-- If @DBClusterIdentifier@ refers to a cluster that is not encrypted, then+-- the restore request is rejected.+restoreDBClusterToPointInTime_kmsKeyId :: Lens.Lens' RestoreDBClusterToPointInTime (Prelude.Maybe Prelude.Text)+restoreDBClusterToPointInTime_kmsKeyId = Lens.lens (\RestoreDBClusterToPointInTime' {kmsKeyId} -> kmsKeyId) (\s@RestoreDBClusterToPointInTime' {} a -> s {kmsKeyId = a} :: RestoreDBClusterToPointInTime)++-- | The port number on which the new cluster accepts connections.+--+-- Constraints: Must be a value from @1150@ to @65535@.+--+-- Default: The default port for the engine.+restoreDBClusterToPointInTime_port :: Lens.Lens' RestoreDBClusterToPointInTime (Prelude.Maybe Prelude.Int)+restoreDBClusterToPointInTime_port = Lens.lens (\RestoreDBClusterToPointInTime' {port} -> port) (\s@RestoreDBClusterToPointInTime' {} a -> s {port = a} :: RestoreDBClusterToPointInTime)++-- | The date and time to restore the cluster to.+--+-- Valid values: A time in Universal Coordinated Time (UTC) format.+--+-- Constraints:+--+-- - Must be before the latest restorable time for the instance.+--+-- - Must be specified if the @UseLatestRestorableTime@ parameter is not+-- provided.+--+-- - Cannot be specified if the @UseLatestRestorableTime@ parameter is+-- @true@.+--+-- - Cannot be specified if the @RestoreType@ parameter is+-- @copy-on-write@.+--+-- Example: @2015-03-07T23:45:00Z@+restoreDBClusterToPointInTime_restoreToTime :: Lens.Lens' RestoreDBClusterToPointInTime (Prelude.Maybe Prelude.UTCTime)+restoreDBClusterToPointInTime_restoreToTime = Lens.lens (\RestoreDBClusterToPointInTime' {restoreToTime} -> restoreToTime) (\s@RestoreDBClusterToPointInTime' {} a -> s {restoreToTime = a} :: RestoreDBClusterToPointInTime) Prelude.. Lens.mapping Data._Time++-- | The type of restore to be performed. You can specify one of the+-- following values:+--+-- - @full-copy@ - The new DB cluster is restored as a full copy of the+-- source DB cluster.+--+-- - @copy-on-write@ - The new DB cluster is restored as a clone of the+-- source DB cluster.+--+-- If you don\'t specify a @RestoreType@ value, then the new DB cluster is+-- restored as a full copy of the source DB cluster.+restoreDBClusterToPointInTime_restoreType :: Lens.Lens' RestoreDBClusterToPointInTime (Prelude.Maybe Prelude.Text)+restoreDBClusterToPointInTime_restoreType = Lens.lens (\RestoreDBClusterToPointInTime' {restoreType} -> restoreType) (\s@RestoreDBClusterToPointInTime' {} a -> s {restoreType = a} :: RestoreDBClusterToPointInTime)++-- | The tags to be assigned to the restored cluster.+restoreDBClusterToPointInTime_tags :: Lens.Lens' RestoreDBClusterToPointInTime (Prelude.Maybe [Tag])+restoreDBClusterToPointInTime_tags = Lens.lens (\RestoreDBClusterToPointInTime' {tags} -> tags) (\s@RestoreDBClusterToPointInTime' {} a -> s {tags = a} :: RestoreDBClusterToPointInTime) Prelude.. Lens.mapping Lens.coerced++-- | A value that is set to @true@ to restore the cluster to the latest+-- restorable backup time, and @false@ otherwise.+--+-- Default: @false@+--+-- Constraints: Cannot be specified if the @RestoreToTime@ parameter is+-- provided.+restoreDBClusterToPointInTime_useLatestRestorableTime :: Lens.Lens' RestoreDBClusterToPointInTime (Prelude.Maybe Prelude.Bool)+restoreDBClusterToPointInTime_useLatestRestorableTime = Lens.lens (\RestoreDBClusterToPointInTime' {useLatestRestorableTime} -> useLatestRestorableTime) (\s@RestoreDBClusterToPointInTime' {} a -> s {useLatestRestorableTime = a} :: RestoreDBClusterToPointInTime)++-- | A list of VPC security groups that the new cluster belongs to.+restoreDBClusterToPointInTime_vpcSecurityGroupIds :: Lens.Lens' RestoreDBClusterToPointInTime (Prelude.Maybe [Prelude.Text])+restoreDBClusterToPointInTime_vpcSecurityGroupIds = Lens.lens (\RestoreDBClusterToPointInTime' {vpcSecurityGroupIds} -> vpcSecurityGroupIds) (\s@RestoreDBClusterToPointInTime' {} a -> s {vpcSecurityGroupIds = a} :: RestoreDBClusterToPointInTime) Prelude.. Lens.mapping Lens.coerced++-- | The name of the new cluster to be created.+--+-- Constraints:+--+-- - Must contain from 1 to 63 letters, numbers, or hyphens.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+restoreDBClusterToPointInTime_dbClusterIdentifier :: Lens.Lens' RestoreDBClusterToPointInTime Prelude.Text+restoreDBClusterToPointInTime_dbClusterIdentifier = Lens.lens (\RestoreDBClusterToPointInTime' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@RestoreDBClusterToPointInTime' {} a -> s {dbClusterIdentifier = a} :: RestoreDBClusterToPointInTime)++-- | The identifier of the source cluster from which to restore.+--+-- Constraints:+--+-- - Must match the identifier of an existing @DBCluster@.+restoreDBClusterToPointInTime_sourceDBClusterIdentifier :: Lens.Lens' RestoreDBClusterToPointInTime Prelude.Text+restoreDBClusterToPointInTime_sourceDBClusterIdentifier = Lens.lens (\RestoreDBClusterToPointInTime' {sourceDBClusterIdentifier} -> sourceDBClusterIdentifier) (\s@RestoreDBClusterToPointInTime' {} a -> s {sourceDBClusterIdentifier = a} :: RestoreDBClusterToPointInTime)++instance+ Core.AWSRequest+ RestoreDBClusterToPointInTime+ where+ type+ AWSResponse RestoreDBClusterToPointInTime =+ RestoreDBClusterToPointInTimeResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "RestoreDBClusterToPointInTimeResult"+ ( \s h x ->+ RestoreDBClusterToPointInTimeResponse'+ Prelude.<$> (x Data..@? "DBCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ RestoreDBClusterToPointInTime+ where+ hashWithSalt _salt RestoreDBClusterToPointInTime' {..} =+ _salt+ `Prelude.hashWithSalt` dbSubnetGroupName+ `Prelude.hashWithSalt` deletionProtection+ `Prelude.hashWithSalt` enableCloudwatchLogsExports+ `Prelude.hashWithSalt` kmsKeyId+ `Prelude.hashWithSalt` port+ `Prelude.hashWithSalt` restoreToTime+ `Prelude.hashWithSalt` restoreType+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` useLatestRestorableTime+ `Prelude.hashWithSalt` vpcSecurityGroupIds+ `Prelude.hashWithSalt` dbClusterIdentifier+ `Prelude.hashWithSalt` sourceDBClusterIdentifier++instance Prelude.NFData RestoreDBClusterToPointInTime where+ rnf RestoreDBClusterToPointInTime' {..} =+ Prelude.rnf dbSubnetGroupName+ `Prelude.seq` Prelude.rnf deletionProtection+ `Prelude.seq` Prelude.rnf enableCloudwatchLogsExports+ `Prelude.seq` Prelude.rnf kmsKeyId+ `Prelude.seq` Prelude.rnf port+ `Prelude.seq` Prelude.rnf restoreToTime+ `Prelude.seq` Prelude.rnf restoreType+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf useLatestRestorableTime+ `Prelude.seq` Prelude.rnf vpcSecurityGroupIds+ `Prelude.seq` Prelude.rnf dbClusterIdentifier+ `Prelude.seq` Prelude.rnf sourceDBClusterIdentifier++instance Data.ToHeaders RestoreDBClusterToPointInTime where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath RestoreDBClusterToPointInTime where+ toPath = Prelude.const "/"++instance Data.ToQuery RestoreDBClusterToPointInTime where+ toQuery RestoreDBClusterToPointInTime' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "RestoreDBClusterToPointInTime" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBSubnetGroupName" Data.=: dbSubnetGroupName,+ "DeletionProtection" Data.=: deletionProtection,+ "EnableCloudwatchLogsExports"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> enableCloudwatchLogsExports+ ),+ "KmsKeyId" Data.=: kmsKeyId,+ "Port" Data.=: port,+ "RestoreToTime" Data.=: restoreToTime,+ "RestoreType" Data.=: restoreType,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "Tag" Prelude.<$> tags),+ "UseLatestRestorableTime"+ Data.=: useLatestRestorableTime,+ "VpcSecurityGroupIds"+ Data.=: Data.toQuery+ ( Data.toQueryList "VpcSecurityGroupId"+ Prelude.<$> vpcSecurityGroupIds+ ),+ "DBClusterIdentifier" Data.=: dbClusterIdentifier,+ "SourceDBClusterIdentifier"+ Data.=: sourceDBClusterIdentifier+ ]++-- | /See:/ 'newRestoreDBClusterToPointInTimeResponse' smart constructor.+data RestoreDBClusterToPointInTimeResponse = RestoreDBClusterToPointInTimeResponse'+ { dbCluster :: Prelude.Maybe DBCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RestoreDBClusterToPointInTimeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbCluster', 'restoreDBClusterToPointInTimeResponse_dbCluster' - Undocumented member.+--+-- 'httpStatus', 'restoreDBClusterToPointInTimeResponse_httpStatus' - The response's http status code.+newRestoreDBClusterToPointInTimeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RestoreDBClusterToPointInTimeResponse+newRestoreDBClusterToPointInTimeResponse pHttpStatus_ =+ RestoreDBClusterToPointInTimeResponse'+ { dbCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+restoreDBClusterToPointInTimeResponse_dbCluster :: Lens.Lens' RestoreDBClusterToPointInTimeResponse (Prelude.Maybe DBCluster)+restoreDBClusterToPointInTimeResponse_dbCluster = Lens.lens (\RestoreDBClusterToPointInTimeResponse' {dbCluster} -> dbCluster) (\s@RestoreDBClusterToPointInTimeResponse' {} a -> s {dbCluster = a} :: RestoreDBClusterToPointInTimeResponse)++-- | The response's http status code.+restoreDBClusterToPointInTimeResponse_httpStatus :: Lens.Lens' RestoreDBClusterToPointInTimeResponse Prelude.Int+restoreDBClusterToPointInTimeResponse_httpStatus = Lens.lens (\RestoreDBClusterToPointInTimeResponse' {httpStatus} -> httpStatus) (\s@RestoreDBClusterToPointInTimeResponse' {} a -> s {httpStatus = a} :: RestoreDBClusterToPointInTimeResponse)++instance+ Prelude.NFData+ RestoreDBClusterToPointInTimeResponse+ where+ rnf RestoreDBClusterToPointInTimeResponse' {..} =+ Prelude.rnf dbCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/StartDBCluster.hs view
@@ -0,0 +1,165 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.StartDBCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Restarts the stopped cluster that is specified by @DBClusterIdentifier@.+-- For more information, see+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-stop-start.html Stopping and Starting an Amazon DocumentDB Cluster>.+module Amazonka.DocumentDB.StartDBCluster+ ( -- * Creating a Request+ StartDBCluster (..),+ newStartDBCluster,++ -- * Request Lenses+ startDBCluster_dbClusterIdentifier,++ -- * Destructuring the Response+ StartDBClusterResponse (..),+ newStartDBClusterResponse,++ -- * Response Lenses+ startDBClusterResponse_dbCluster,+ startDBClusterResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStartDBCluster' smart constructor.+data StartDBCluster = StartDBCluster'+ { -- | The identifier of the cluster to restart. Example:+ -- @docdb-2019-05-28-15-24-52@+ dbClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartDBCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterIdentifier', 'startDBCluster_dbClusterIdentifier' - The identifier of the cluster to restart. Example:+-- @docdb-2019-05-28-15-24-52@+newStartDBCluster ::+ -- | 'dbClusterIdentifier'+ Prelude.Text ->+ StartDBCluster+newStartDBCluster pDBClusterIdentifier_ =+ StartDBCluster'+ { dbClusterIdentifier =+ pDBClusterIdentifier_+ }++-- | The identifier of the cluster to restart. Example:+-- @docdb-2019-05-28-15-24-52@+startDBCluster_dbClusterIdentifier :: Lens.Lens' StartDBCluster Prelude.Text+startDBCluster_dbClusterIdentifier = Lens.lens (\StartDBCluster' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@StartDBCluster' {} a -> s {dbClusterIdentifier = a} :: StartDBCluster)++instance Core.AWSRequest StartDBCluster where+ type+ AWSResponse StartDBCluster =+ StartDBClusterResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "StartDBClusterResult"+ ( \s h x ->+ StartDBClusterResponse'+ Prelude.<$> (x Data..@? "DBCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable StartDBCluster where+ hashWithSalt _salt StartDBCluster' {..} =+ _salt `Prelude.hashWithSalt` dbClusterIdentifier++instance Prelude.NFData StartDBCluster where+ rnf StartDBCluster' {..} =+ Prelude.rnf dbClusterIdentifier++instance Data.ToHeaders StartDBCluster where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath StartDBCluster where+ toPath = Prelude.const "/"++instance Data.ToQuery StartDBCluster where+ toQuery StartDBCluster' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("StartDBCluster" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBClusterIdentifier" Data.=: dbClusterIdentifier+ ]++-- | /See:/ 'newStartDBClusterResponse' smart constructor.+data StartDBClusterResponse = StartDBClusterResponse'+ { dbCluster :: Prelude.Maybe DBCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartDBClusterResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbCluster', 'startDBClusterResponse_dbCluster' - Undocumented member.+--+-- 'httpStatus', 'startDBClusterResponse_httpStatus' - The response's http status code.+newStartDBClusterResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ StartDBClusterResponse+newStartDBClusterResponse pHttpStatus_ =+ StartDBClusterResponse'+ { dbCluster =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+startDBClusterResponse_dbCluster :: Lens.Lens' StartDBClusterResponse (Prelude.Maybe DBCluster)+startDBClusterResponse_dbCluster = Lens.lens (\StartDBClusterResponse' {dbCluster} -> dbCluster) (\s@StartDBClusterResponse' {} a -> s {dbCluster = a} :: StartDBClusterResponse)++-- | The response's http status code.+startDBClusterResponse_httpStatus :: Lens.Lens' StartDBClusterResponse Prelude.Int+startDBClusterResponse_httpStatus = Lens.lens (\StartDBClusterResponse' {httpStatus} -> httpStatus) (\s@StartDBClusterResponse' {} a -> s {httpStatus = a} :: StartDBClusterResponse)++instance Prelude.NFData StartDBClusterResponse where+ rnf StartDBClusterResponse' {..} =+ Prelude.rnf dbCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/StopDBCluster.hs view
@@ -0,0 +1,164 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.StopDBCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Stops the running cluster that is specified by @DBClusterIdentifier@.+-- The cluster must be in the /available/ state. For more information, see+-- <https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-stop-start.html Stopping and Starting an Amazon DocumentDB Cluster>.+module Amazonka.DocumentDB.StopDBCluster+ ( -- * Creating a Request+ StopDBCluster (..),+ newStopDBCluster,++ -- * Request Lenses+ stopDBCluster_dbClusterIdentifier,++ -- * Destructuring the Response+ StopDBClusterResponse (..),+ newStopDBClusterResponse,++ -- * Response Lenses+ stopDBClusterResponse_dbCluster,+ stopDBClusterResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStopDBCluster' smart constructor.+data StopDBCluster = StopDBCluster'+ { -- | The identifier of the cluster to stop. Example:+ -- @docdb-2019-05-28-15-24-52@+ dbClusterIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StopDBCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterIdentifier', 'stopDBCluster_dbClusterIdentifier' - The identifier of the cluster to stop. Example:+-- @docdb-2019-05-28-15-24-52@+newStopDBCluster ::+ -- | 'dbClusterIdentifier'+ Prelude.Text ->+ StopDBCluster+newStopDBCluster pDBClusterIdentifier_ =+ StopDBCluster'+ { dbClusterIdentifier =+ pDBClusterIdentifier_+ }++-- | The identifier of the cluster to stop. Example:+-- @docdb-2019-05-28-15-24-52@+stopDBCluster_dbClusterIdentifier :: Lens.Lens' StopDBCluster Prelude.Text+stopDBCluster_dbClusterIdentifier = Lens.lens (\StopDBCluster' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@StopDBCluster' {} a -> s {dbClusterIdentifier = a} :: StopDBCluster)++instance Core.AWSRequest StopDBCluster where+ type+ AWSResponse StopDBCluster =+ StopDBClusterResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "StopDBClusterResult"+ ( \s h x ->+ StopDBClusterResponse'+ Prelude.<$> (x Data..@? "DBCluster")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable StopDBCluster where+ hashWithSalt _salt StopDBCluster' {..} =+ _salt `Prelude.hashWithSalt` dbClusterIdentifier++instance Prelude.NFData StopDBCluster where+ rnf StopDBCluster' {..} =+ Prelude.rnf dbClusterIdentifier++instance Data.ToHeaders StopDBCluster where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath StopDBCluster where+ toPath = Prelude.const "/"++instance Data.ToQuery StopDBCluster where+ toQuery StopDBCluster' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("StopDBCluster" :: Prelude.ByteString),+ "Version"+ Data.=: ("2014-10-31" :: Prelude.ByteString),+ "DBClusterIdentifier" Data.=: dbClusterIdentifier+ ]++-- | /See:/ 'newStopDBClusterResponse' smart constructor.+data StopDBClusterResponse = StopDBClusterResponse'+ { dbCluster :: Prelude.Maybe DBCluster,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StopDBClusterResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbCluster', 'stopDBClusterResponse_dbCluster' - Undocumented member.+--+-- 'httpStatus', 'stopDBClusterResponse_httpStatus' - The response's http status code.+newStopDBClusterResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ StopDBClusterResponse+newStopDBClusterResponse pHttpStatus_ =+ StopDBClusterResponse'+ { dbCluster = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+stopDBClusterResponse_dbCluster :: Lens.Lens' StopDBClusterResponse (Prelude.Maybe DBCluster)+stopDBClusterResponse_dbCluster = Lens.lens (\StopDBClusterResponse' {dbCluster} -> dbCluster) (\s@StopDBClusterResponse' {} a -> s {dbCluster = a} :: StopDBClusterResponse)++-- | The response's http status code.+stopDBClusterResponse_httpStatus :: Lens.Lens' StopDBClusterResponse Prelude.Int+stopDBClusterResponse_httpStatus = Lens.lens (\StopDBClusterResponse' {httpStatus} -> httpStatus) (\s@StopDBClusterResponse' {} a -> s {httpStatus = a} :: StopDBClusterResponse)++instance Prelude.NFData StopDBClusterResponse where+ rnf StopDBClusterResponse' {..} =+ Prelude.rnf dbCluster+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DocumentDB/Types.hs view
@@ -0,0 +1,1022 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AuthorizationNotFoundFault,+ _CertificateNotFoundFault,+ _DBClusterAlreadyExistsFault,+ _DBClusterNotFoundFault,+ _DBClusterParameterGroupNotFoundFault,+ _DBClusterQuotaExceededFault,+ _DBClusterSnapshotAlreadyExistsFault,+ _DBClusterSnapshotNotFoundFault,+ _DBInstanceAlreadyExistsFault,+ _DBInstanceNotFoundFault,+ _DBParameterGroupAlreadyExistsFault,+ _DBParameterGroupNotFoundFault,+ _DBParameterGroupQuotaExceededFault,+ _DBSecurityGroupNotFoundFault,+ _DBSnapshotAlreadyExistsFault,+ _DBSnapshotNotFoundFault,+ _DBSubnetGroupAlreadyExistsFault,+ _DBSubnetGroupDoesNotCoverEnoughAZs,+ _DBSubnetGroupNotFoundFault,+ _DBSubnetGroupQuotaExceededFault,+ _DBSubnetQuotaExceededFault,+ _DBUpgradeDependencyFailureFault,+ _EventSubscriptionQuotaExceededFault,+ _GlobalClusterAlreadyExistsFault,+ _GlobalClusterNotFoundFault,+ _GlobalClusterQuotaExceededFault,+ _InstanceQuotaExceededFault,+ _InsufficientDBClusterCapacityFault,+ _InsufficientDBInstanceCapacityFault,+ _InsufficientStorageClusterCapacityFault,+ _InvalidDBClusterSnapshotStateFault,+ _InvalidDBClusterStateFault,+ _InvalidDBInstanceStateFault,+ _InvalidDBParameterGroupStateFault,+ _InvalidDBSecurityGroupStateFault,+ _InvalidDBSnapshotStateFault,+ _InvalidDBSubnetGroupStateFault,+ _InvalidDBSubnetStateFault,+ _InvalidEventSubscriptionStateFault,+ _InvalidGlobalClusterStateFault,+ _InvalidRestoreFault,+ _InvalidSubnet,+ _InvalidVPCNetworkStateFault,+ _KMSKeyNotAccessibleFault,+ _ResourceNotFoundFault,+ _SNSInvalidTopicFault,+ _SNSNoAuthorizationFault,+ _SNSTopicArnNotFoundFault,+ _SharedSnapshotQuotaExceededFault,+ _SnapshotQuotaExceededFault,+ _SourceNotFoundFault,+ _StorageQuotaExceededFault,+ _StorageTypeNotSupportedFault,+ _SubnetAlreadyInUse,+ _SubscriptionAlreadyExistFault,+ _SubscriptionCategoryNotFoundFault,+ _SubscriptionNotFoundFault,++ -- * ApplyMethod+ ApplyMethod (..),++ -- * SourceType+ SourceType (..),++ -- * AvailabilityZone+ AvailabilityZone (..),+ newAvailabilityZone,+ availabilityZone_name,++ -- * Certificate+ Certificate (..),+ newCertificate,+ certificate_certificateArn,+ certificate_certificateIdentifier,+ certificate_certificateType,+ certificate_thumbprint,+ certificate_validFrom,+ certificate_validTill,++ -- * CloudwatchLogsExportConfiguration+ CloudwatchLogsExportConfiguration (..),+ newCloudwatchLogsExportConfiguration,+ cloudwatchLogsExportConfiguration_disableLogTypes,+ cloudwatchLogsExportConfiguration_enableLogTypes,++ -- * DBCluster+ DBCluster (..),+ newDBCluster,+ dbCluster_associatedRoles,+ dbCluster_availabilityZones,+ dbCluster_backupRetentionPeriod,+ dbCluster_cloneGroupId,+ dbCluster_clusterCreateTime,+ dbCluster_dbClusterArn,+ dbCluster_dbClusterIdentifier,+ dbCluster_dbClusterMembers,+ dbCluster_dbClusterParameterGroup,+ dbCluster_dbSubnetGroup,+ dbCluster_dbClusterResourceId,+ dbCluster_deletionProtection,+ dbCluster_earliestRestorableTime,+ dbCluster_enabledCloudwatchLogsExports,+ dbCluster_endpoint,+ dbCluster_engine,+ dbCluster_engineVersion,+ dbCluster_hostedZoneId,+ dbCluster_kmsKeyId,+ dbCluster_latestRestorableTime,+ dbCluster_masterUsername,+ dbCluster_multiAZ,+ dbCluster_percentProgress,+ dbCluster_port,+ dbCluster_preferredBackupWindow,+ dbCluster_preferredMaintenanceWindow,+ dbCluster_readReplicaIdentifiers,+ dbCluster_readerEndpoint,+ dbCluster_replicationSourceIdentifier,+ dbCluster_status,+ dbCluster_storageEncrypted,+ dbCluster_vpcSecurityGroups,++ -- * DBClusterMember+ DBClusterMember (..),+ newDBClusterMember,+ dbClusterMember_dbClusterParameterGroupStatus,+ dbClusterMember_dbInstanceIdentifier,+ dbClusterMember_isClusterWriter,+ dbClusterMember_promotionTier,++ -- * DBClusterParameterGroup+ DBClusterParameterGroup (..),+ newDBClusterParameterGroup,+ dbClusterParameterGroup_dbClusterParameterGroupArn,+ dbClusterParameterGroup_dbClusterParameterGroupName,+ dbClusterParameterGroup_dbParameterGroupFamily,+ dbClusterParameterGroup_description,++ -- * DBClusterParameterGroupNameMessage+ DBClusterParameterGroupNameMessage (..),+ newDBClusterParameterGroupNameMessage,+ dbClusterParameterGroupNameMessage_dbClusterParameterGroupName,++ -- * DBClusterRole+ DBClusterRole (..),+ newDBClusterRole,+ dbClusterRole_roleArn,+ dbClusterRole_status,++ -- * DBClusterSnapshot+ DBClusterSnapshot (..),+ newDBClusterSnapshot,+ dbClusterSnapshot_availabilityZones,+ dbClusterSnapshot_clusterCreateTime,+ dbClusterSnapshot_dbClusterIdentifier,+ dbClusterSnapshot_dbClusterSnapshotArn,+ dbClusterSnapshot_dbClusterSnapshotIdentifier,+ dbClusterSnapshot_engine,+ dbClusterSnapshot_engineVersion,+ dbClusterSnapshot_kmsKeyId,+ dbClusterSnapshot_masterUsername,+ dbClusterSnapshot_percentProgress,+ dbClusterSnapshot_port,+ dbClusterSnapshot_snapshotCreateTime,+ dbClusterSnapshot_snapshotType,+ dbClusterSnapshot_sourceDBClusterSnapshotArn,+ dbClusterSnapshot_status,+ dbClusterSnapshot_storageEncrypted,+ dbClusterSnapshot_vpcId,++ -- * DBClusterSnapshotAttribute+ DBClusterSnapshotAttribute (..),+ newDBClusterSnapshotAttribute,+ dbClusterSnapshotAttribute_attributeName,+ dbClusterSnapshotAttribute_attributeValues,++ -- * DBClusterSnapshotAttributesResult+ DBClusterSnapshotAttributesResult (..),+ newDBClusterSnapshotAttributesResult,+ dbClusterSnapshotAttributesResult_dbClusterSnapshotAttributes,+ dbClusterSnapshotAttributesResult_dbClusterSnapshotIdentifier,++ -- * DBEngineVersion+ DBEngineVersion (..),+ newDBEngineVersion,+ dbEngineVersion_dbEngineDescription,+ dbEngineVersion_dbEngineVersionDescription,+ dbEngineVersion_dbParameterGroupFamily,+ dbEngineVersion_engine,+ dbEngineVersion_engineVersion,+ dbEngineVersion_exportableLogTypes,+ dbEngineVersion_supportsLogExportsToCloudwatchLogs,+ dbEngineVersion_validUpgradeTarget,++ -- * DBInstance+ DBInstance (..),+ newDBInstance,+ dbInstance_autoMinorVersionUpgrade,+ dbInstance_availabilityZone,+ dbInstance_backupRetentionPeriod,+ dbInstance_cACertificateIdentifier,+ dbInstance_copyTagsToSnapshot,+ dbInstance_dbClusterIdentifier,+ dbInstance_dbInstanceArn,+ dbInstance_dbInstanceClass,+ dbInstance_dbInstanceIdentifier,+ dbInstance_dbInstanceStatus,+ dbInstance_dbSubnetGroup,+ dbInstance_dbiResourceId,+ dbInstance_enabledCloudwatchLogsExports,+ dbInstance_endpoint,+ dbInstance_engine,+ dbInstance_engineVersion,+ dbInstance_instanceCreateTime,+ dbInstance_kmsKeyId,+ dbInstance_latestRestorableTime,+ dbInstance_pendingModifiedValues,+ dbInstance_preferredBackupWindow,+ dbInstance_preferredMaintenanceWindow,+ dbInstance_promotionTier,+ dbInstance_publiclyAccessible,+ dbInstance_statusInfos,+ dbInstance_storageEncrypted,+ dbInstance_vpcSecurityGroups,++ -- * DBInstanceStatusInfo+ DBInstanceStatusInfo (..),+ newDBInstanceStatusInfo,+ dbInstanceStatusInfo_message,+ dbInstanceStatusInfo_normal,+ dbInstanceStatusInfo_status,+ dbInstanceStatusInfo_statusType,++ -- * DBSubnetGroup+ DBSubnetGroup (..),+ newDBSubnetGroup,+ dbSubnetGroup_dbSubnetGroupArn,+ dbSubnetGroup_dbSubnetGroupDescription,+ dbSubnetGroup_dbSubnetGroupName,+ dbSubnetGroup_subnetGroupStatus,+ dbSubnetGroup_subnets,+ dbSubnetGroup_vpcId,++ -- * Endpoint+ Endpoint (..),+ newEndpoint,+ endpoint_address,+ endpoint_hostedZoneId,+ endpoint_port,++ -- * EngineDefaults+ EngineDefaults (..),+ newEngineDefaults,+ engineDefaults_dbParameterGroupFamily,+ engineDefaults_marker,+ engineDefaults_parameters,++ -- * Event+ Event (..),+ newEvent,+ event_date,+ event_eventCategories,+ event_message,+ event_sourceArn,+ event_sourceIdentifier,+ event_sourceType,++ -- * EventCategoriesMap+ EventCategoriesMap (..),+ newEventCategoriesMap,+ eventCategoriesMap_eventCategories,+ eventCategoriesMap_sourceType,++ -- * EventSubscription+ EventSubscription (..),+ newEventSubscription,+ eventSubscription_custSubscriptionId,+ eventSubscription_customerAwsId,+ eventSubscription_enabled,+ eventSubscription_eventCategoriesList,+ eventSubscription_eventSubscriptionArn,+ eventSubscription_snsTopicArn,+ eventSubscription_sourceIdsList,+ eventSubscription_sourceType,+ eventSubscription_status,+ eventSubscription_subscriptionCreationTime,++ -- * Filter+ Filter (..),+ newFilter,+ filter_name,+ filter_values,++ -- * GlobalCluster+ GlobalCluster (..),+ newGlobalCluster,+ globalCluster_databaseName,+ globalCluster_deletionProtection,+ globalCluster_engine,+ globalCluster_engineVersion,+ globalCluster_globalClusterArn,+ globalCluster_globalClusterIdentifier,+ globalCluster_globalClusterMembers,+ globalCluster_globalClusterResourceId,+ globalCluster_status,+ globalCluster_storageEncrypted,++ -- * GlobalClusterMember+ GlobalClusterMember (..),+ newGlobalClusterMember,+ globalClusterMember_dbClusterArn,+ globalClusterMember_isWriter,+ globalClusterMember_readers,++ -- * OrderableDBInstanceOption+ OrderableDBInstanceOption (..),+ newOrderableDBInstanceOption,+ orderableDBInstanceOption_availabilityZones,+ orderableDBInstanceOption_dbInstanceClass,+ orderableDBInstanceOption_engine,+ orderableDBInstanceOption_engineVersion,+ orderableDBInstanceOption_licenseModel,+ orderableDBInstanceOption_vpc,++ -- * Parameter+ Parameter (..),+ newParameter,+ parameter_allowedValues,+ parameter_applyMethod,+ parameter_applyType,+ parameter_dataType,+ parameter_description,+ parameter_isModifiable,+ parameter_minimumEngineVersion,+ parameter_parameterName,+ parameter_parameterValue,+ parameter_source,++ -- * PendingCloudwatchLogsExports+ PendingCloudwatchLogsExports (..),+ newPendingCloudwatchLogsExports,+ pendingCloudwatchLogsExports_logTypesToDisable,+ pendingCloudwatchLogsExports_logTypesToEnable,++ -- * PendingMaintenanceAction+ PendingMaintenanceAction (..),+ newPendingMaintenanceAction,+ pendingMaintenanceAction_action,+ pendingMaintenanceAction_autoAppliedAfterDate,+ pendingMaintenanceAction_currentApplyDate,+ pendingMaintenanceAction_description,+ pendingMaintenanceAction_forcedApplyDate,+ pendingMaintenanceAction_optInStatus,++ -- * PendingModifiedValues+ PendingModifiedValues (..),+ newPendingModifiedValues,+ pendingModifiedValues_allocatedStorage,+ pendingModifiedValues_backupRetentionPeriod,+ pendingModifiedValues_cACertificateIdentifier,+ pendingModifiedValues_dbInstanceClass,+ pendingModifiedValues_dbInstanceIdentifier,+ pendingModifiedValues_dbSubnetGroupName,+ pendingModifiedValues_engineVersion,+ pendingModifiedValues_iops,+ pendingModifiedValues_licenseModel,+ pendingModifiedValues_masterUserPassword,+ pendingModifiedValues_multiAZ,+ pendingModifiedValues_pendingCloudwatchLogsExports,+ pendingModifiedValues_port,+ pendingModifiedValues_storageType,++ -- * ResourcePendingMaintenanceActions+ ResourcePendingMaintenanceActions (..),+ newResourcePendingMaintenanceActions,+ resourcePendingMaintenanceActions_pendingMaintenanceActionDetails,+ resourcePendingMaintenanceActions_resourceIdentifier,++ -- * Subnet+ Subnet (..),+ newSubnet,+ subnet_subnetAvailabilityZone,+ subnet_subnetIdentifier,+ subnet_subnetStatus,++ -- * Tag+ Tag (..),+ newTag,+ tag_key,+ tag_value,++ -- * UpgradeTarget+ UpgradeTarget (..),+ newUpgradeTarget,+ upgradeTarget_autoUpgrade,+ upgradeTarget_description,+ upgradeTarget_engine,+ upgradeTarget_engineVersion,+ upgradeTarget_isMajorVersionUpgrade,++ -- * VpcSecurityGroupMembership+ VpcSecurityGroupMembership (..),+ newVpcSecurityGroupMembership,+ vpcSecurityGroupMembership_status,+ vpcSecurityGroupMembership_vpcSecurityGroupId,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.DocumentDB.Types.ApplyMethod+import Amazonka.DocumentDB.Types.AvailabilityZone+import Amazonka.DocumentDB.Types.Certificate+import Amazonka.DocumentDB.Types.CloudwatchLogsExportConfiguration+import Amazonka.DocumentDB.Types.DBCluster+import Amazonka.DocumentDB.Types.DBClusterMember+import Amazonka.DocumentDB.Types.DBClusterParameterGroup+import Amazonka.DocumentDB.Types.DBClusterParameterGroupNameMessage+import Amazonka.DocumentDB.Types.DBClusterRole+import Amazonka.DocumentDB.Types.DBClusterSnapshot+import Amazonka.DocumentDB.Types.DBClusterSnapshotAttribute+import Amazonka.DocumentDB.Types.DBClusterSnapshotAttributesResult+import Amazonka.DocumentDB.Types.DBEngineVersion+import Amazonka.DocumentDB.Types.DBInstance+import Amazonka.DocumentDB.Types.DBInstanceStatusInfo+import Amazonka.DocumentDB.Types.DBSubnetGroup+import Amazonka.DocumentDB.Types.Endpoint+import Amazonka.DocumentDB.Types.EngineDefaults+import Amazonka.DocumentDB.Types.Event+import Amazonka.DocumentDB.Types.EventCategoriesMap+import Amazonka.DocumentDB.Types.EventSubscription+import Amazonka.DocumentDB.Types.Filter+import Amazonka.DocumentDB.Types.GlobalCluster+import Amazonka.DocumentDB.Types.GlobalClusterMember+import Amazonka.DocumentDB.Types.OrderableDBInstanceOption+import Amazonka.DocumentDB.Types.Parameter+import Amazonka.DocumentDB.Types.PendingCloudwatchLogsExports+import Amazonka.DocumentDB.Types.PendingMaintenanceAction+import Amazonka.DocumentDB.Types.PendingModifiedValues+import Amazonka.DocumentDB.Types.ResourcePendingMaintenanceActions+import Amazonka.DocumentDB.Types.SourceType+import Amazonka.DocumentDB.Types.Subnet+import Amazonka.DocumentDB.Types.Tag+import Amazonka.DocumentDB.Types.UpgradeTarget+import Amazonka.DocumentDB.Types.VpcSecurityGroupMembership+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2014-10-31@ of the Amazon DocumentDB with MongoDB compatibility SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "DocumentDB",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "rds",+ Core.signingName = "rds",+ Core.version = "2014-10-31",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseXMLError "DocumentDB",+ Core.retry = retry+ }+ where+ retry =+ Core.Exponential+ { Core.base = 5.0e-2,+ Core.growth = 2,+ Core.attempts = 5,+ Core.check = check+ }+ check e+ | Lens.has (Core.hasStatus 502) e =+ Prelude.Just "bad_gateway"+ | Lens.has (Core.hasStatus 504) e =+ Prelude.Just "gateway_timeout"+ | Lens.has (Core.hasStatus 500) e =+ Prelude.Just "general_server_error"+ | Lens.has (Core.hasStatus 509) e =+ Prelude.Just "limit_exceeded"+ | Lens.has+ ( Core.hasCode "RequestThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "request_throttled_exception"+ | Lens.has (Core.hasStatus 503) e =+ Prelude.Just "service_unavailable"+ | Lens.has+ ( Core.hasCode "ThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttled_exception"+ | Lens.has+ ( Core.hasCode "Throttling"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling"+ | Lens.has+ ( Core.hasCode "ThrottlingException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling_exception"+ | Lens.has+ ( Core.hasCode+ "ProvisionedThroughputExceededException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throughput_exceeded"+ | Lens.has (Core.hasStatus 429) e =+ Prelude.Just "too_many_requests"+ | Prelude.otherwise = Prelude.Nothing++-- | The specified CIDR IP or Amazon EC2 security group isn\'t authorized for+-- the specified security group.+--+-- Amazon DocumentDB also might not be authorized to perform necessary+-- actions on your behalf using IAM.+_AuthorizationNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AuthorizationNotFoundFault =+ Core._MatchServiceError+ defaultService+ "AuthorizationNotFound"+ Prelude.. Core.hasStatus 404++-- | @CertificateIdentifier@ doesn\'t refer to an existing certificate.+_CertificateNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_CertificateNotFoundFault =+ Core._MatchServiceError+ defaultService+ "CertificateNotFound"+ Prelude.. Core.hasStatus 404++-- | You already have a cluster with the given identifier.+_DBClusterAlreadyExistsFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBClusterAlreadyExistsFault =+ Core._MatchServiceError+ defaultService+ "DBClusterAlreadyExistsFault"+ Prelude.. Core.hasStatus 400++-- | @DBClusterIdentifier@ doesn\'t refer to an existing cluster.+_DBClusterNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBClusterNotFoundFault =+ Core._MatchServiceError+ defaultService+ "DBClusterNotFoundFault"+ Prelude.. Core.hasStatus 404++-- | @DBClusterParameterGroupName@ doesn\'t refer to an existing cluster+-- parameter group.+_DBClusterParameterGroupNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBClusterParameterGroupNotFoundFault =+ Core._MatchServiceError+ defaultService+ "DBClusterParameterGroupNotFound"+ Prelude.. Core.hasStatus 404++-- | The cluster can\'t be created because you have reached the maximum+-- allowed quota of clusters.+_DBClusterQuotaExceededFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBClusterQuotaExceededFault =+ Core._MatchServiceError+ defaultService+ "DBClusterQuotaExceededFault"+ Prelude.. Core.hasStatus 403++-- | You already have a cluster snapshot with the given identifier.+_DBClusterSnapshotAlreadyExistsFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBClusterSnapshotAlreadyExistsFault =+ Core._MatchServiceError+ defaultService+ "DBClusterSnapshotAlreadyExistsFault"+ Prelude.. Core.hasStatus 400++-- | @DBClusterSnapshotIdentifier@ doesn\'t refer to an existing cluster+-- snapshot.+_DBClusterSnapshotNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBClusterSnapshotNotFoundFault =+ Core._MatchServiceError+ defaultService+ "DBClusterSnapshotNotFoundFault"+ Prelude.. Core.hasStatus 404++-- | You already have a instance with the given identifier.+_DBInstanceAlreadyExistsFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBInstanceAlreadyExistsFault =+ Core._MatchServiceError+ defaultService+ "DBInstanceAlreadyExists"+ Prelude.. Core.hasStatus 400++-- | @DBInstanceIdentifier@ doesn\'t refer to an existing instance.+_DBInstanceNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBInstanceNotFoundFault =+ Core._MatchServiceError+ defaultService+ "DBInstanceNotFound"+ Prelude.. Core.hasStatus 404++-- | A parameter group with the same name already exists.+_DBParameterGroupAlreadyExistsFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBParameterGroupAlreadyExistsFault =+ Core._MatchServiceError+ defaultService+ "DBParameterGroupAlreadyExists"+ Prelude.. Core.hasStatus 400++-- | @DBParameterGroupName@ doesn\'t refer to an existing parameter group.+_DBParameterGroupNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBParameterGroupNotFoundFault =+ Core._MatchServiceError+ defaultService+ "DBParameterGroupNotFound"+ Prelude.. Core.hasStatus 404++-- | This request would cause you to exceed the allowed number of parameter+-- groups.+_DBParameterGroupQuotaExceededFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBParameterGroupQuotaExceededFault =+ Core._MatchServiceError+ defaultService+ "DBParameterGroupQuotaExceeded"+ Prelude.. Core.hasStatus 400++-- | @DBSecurityGroupName@ doesn\'t refer to an existing security group.+_DBSecurityGroupNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBSecurityGroupNotFoundFault =+ Core._MatchServiceError+ defaultService+ "DBSecurityGroupNotFound"+ Prelude.. Core.hasStatus 404++-- | @DBSnapshotIdentifier@ is already being used by an existing snapshot.+_DBSnapshotAlreadyExistsFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBSnapshotAlreadyExistsFault =+ Core._MatchServiceError+ defaultService+ "DBSnapshotAlreadyExists"+ Prelude.. Core.hasStatus 400++-- | @DBSnapshotIdentifier@ doesn\'t refer to an existing snapshot.+_DBSnapshotNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBSnapshotNotFoundFault =+ Core._MatchServiceError+ defaultService+ "DBSnapshotNotFound"+ Prelude.. Core.hasStatus 404++-- | @DBSubnetGroupName@ is already being used by an existing subnet group.+_DBSubnetGroupAlreadyExistsFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBSubnetGroupAlreadyExistsFault =+ Core._MatchServiceError+ defaultService+ "DBSubnetGroupAlreadyExists"+ Prelude.. Core.hasStatus 400++-- | Subnets in the subnet group should cover at least two Availability Zones+-- unless there is only one Availability Zone.+_DBSubnetGroupDoesNotCoverEnoughAZs :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBSubnetGroupDoesNotCoverEnoughAZs =+ Core._MatchServiceError+ defaultService+ "DBSubnetGroupDoesNotCoverEnoughAZs"+ Prelude.. Core.hasStatus 400++-- | @DBSubnetGroupName@ doesn\'t refer to an existing subnet group.+_DBSubnetGroupNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBSubnetGroupNotFoundFault =+ Core._MatchServiceError+ defaultService+ "DBSubnetGroupNotFoundFault"+ Prelude.. Core.hasStatus 404++-- | The request would cause you to exceed the allowed number of subnet+-- groups.+_DBSubnetGroupQuotaExceededFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBSubnetGroupQuotaExceededFault =+ Core._MatchServiceError+ defaultService+ "DBSubnetGroupQuotaExceeded"+ Prelude.. Core.hasStatus 400++-- | The request would cause you to exceed the allowed number of subnets in a+-- subnet group.+_DBSubnetQuotaExceededFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBSubnetQuotaExceededFault =+ Core._MatchServiceError+ defaultService+ "DBSubnetQuotaExceededFault"+ Prelude.. Core.hasStatus 400++-- | The upgrade failed because a resource that the depends on can\'t be+-- modified.+_DBUpgradeDependencyFailureFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DBUpgradeDependencyFailureFault =+ Core._MatchServiceError+ defaultService+ "DBUpgradeDependencyFailure"+ Prelude.. Core.hasStatus 400++-- | You have reached the maximum number of event subscriptions.+_EventSubscriptionQuotaExceededFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_EventSubscriptionQuotaExceededFault =+ Core._MatchServiceError+ defaultService+ "EventSubscriptionQuotaExceeded"+ Prelude.. Core.hasStatus 400++-- | The @GlobalClusterIdentifier@ already exists. Choose a new global+-- cluster identifier (unique name) to create a new global cluster.+_GlobalClusterAlreadyExistsFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_GlobalClusterAlreadyExistsFault =+ Core._MatchServiceError+ defaultService+ "GlobalClusterAlreadyExistsFault"+ Prelude.. Core.hasStatus 400++-- | The @GlobalClusterIdentifier@ doesn\'t refer to an existing global+-- cluster.+_GlobalClusterNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_GlobalClusterNotFoundFault =+ Core._MatchServiceError+ defaultService+ "GlobalClusterNotFoundFault"+ Prelude.. Core.hasStatus 404++-- | The number of global clusters for this account is already at the maximum+-- allowed.+_GlobalClusterQuotaExceededFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_GlobalClusterQuotaExceededFault =+ Core._MatchServiceError+ defaultService+ "GlobalClusterQuotaExceededFault"+ Prelude.. Core.hasStatus 400++-- | The request would cause you to exceed the allowed number of instances.+_InstanceQuotaExceededFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InstanceQuotaExceededFault =+ Core._MatchServiceError+ defaultService+ "InstanceQuotaExceeded"+ Prelude.. Core.hasStatus 400++-- | The cluster doesn\'t have enough capacity for the current operation.+_InsufficientDBClusterCapacityFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InsufficientDBClusterCapacityFault =+ Core._MatchServiceError+ defaultService+ "InsufficientDBClusterCapacityFault"+ Prelude.. Core.hasStatus 403++-- | The specified instance class isn\'t available in the specified+-- Availability Zone.+_InsufficientDBInstanceCapacityFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InsufficientDBInstanceCapacityFault =+ Core._MatchServiceError+ defaultService+ "InsufficientDBInstanceCapacity"+ Prelude.. Core.hasStatus 400++-- | There is not enough storage available for the current action. You might+-- be able to resolve this error by updating your subnet group to use+-- different Availability Zones that have more storage available.+_InsufficientStorageClusterCapacityFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InsufficientStorageClusterCapacityFault =+ Core._MatchServiceError+ defaultService+ "InsufficientStorageClusterCapacity"+ Prelude.. Core.hasStatus 400++-- | The provided value isn\'t a valid cluster snapshot state.+_InvalidDBClusterSnapshotStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidDBClusterSnapshotStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidDBClusterSnapshotStateFault"+ Prelude.. Core.hasStatus 400++-- | The cluster isn\'t in a valid state.+_InvalidDBClusterStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidDBClusterStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidDBClusterStateFault"+ Prelude.. Core.hasStatus 400++-- | The specified instance isn\'t in the /available/ state.+_InvalidDBInstanceStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidDBInstanceStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidDBInstanceState"+ Prelude.. Core.hasStatus 400++-- | The parameter group is in use, or it is in a state that is not valid. If+-- you are trying to delete the parameter group, you can\'t delete it when+-- the parameter group is in this state.+_InvalidDBParameterGroupStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidDBParameterGroupStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidDBParameterGroupState"+ Prelude.. Core.hasStatus 400++-- | The state of the security group doesn\'t allow deletion.+_InvalidDBSecurityGroupStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidDBSecurityGroupStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidDBSecurityGroupState"+ Prelude.. Core.hasStatus 400++-- | The state of the snapshot doesn\'t allow deletion.+_InvalidDBSnapshotStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidDBSnapshotStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidDBSnapshotState"+ Prelude.. Core.hasStatus 400++-- | The subnet group can\'t be deleted because it\'s in use.+_InvalidDBSubnetGroupStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidDBSubnetGroupStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidDBSubnetGroupStateFault"+ Prelude.. Core.hasStatus 400++-- | The subnet isn\'t in the /available/ state.+_InvalidDBSubnetStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidDBSubnetStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidDBSubnetStateFault"+ Prelude.. Core.hasStatus 400++-- | Someone else might be modifying a subscription. Wait a few seconds, and+-- try again.+_InvalidEventSubscriptionStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidEventSubscriptionStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidEventSubscriptionState"+ Prelude.. Core.hasStatus 400++-- | The requested operation can\'t be performed while the cluster is in this+-- state.+_InvalidGlobalClusterStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidGlobalClusterStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidGlobalClusterStateFault"+ Prelude.. Core.hasStatus 400++-- | You cannot restore from a virtual private cloud (VPC) backup to a+-- non-VPC DB instance.+_InvalidRestoreFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidRestoreFault =+ Core._MatchServiceError+ defaultService+ "InvalidRestoreFault"+ Prelude.. Core.hasStatus 400++-- | The requested subnet is not valid, or multiple subnets were requested+-- that are not all in a common virtual private cloud (VPC).+_InvalidSubnet :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidSubnet =+ Core._MatchServiceError+ defaultService+ "InvalidSubnet"+ Prelude.. Core.hasStatus 400++-- | The subnet group doesn\'t cover all Availability Zones after it is+-- created because of changes that were made.+_InvalidVPCNetworkStateFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidVPCNetworkStateFault =+ Core._MatchServiceError+ defaultService+ "InvalidVPCNetworkStateFault"+ Prelude.. Core.hasStatus 400++-- | An error occurred when accessing an KMS key.+_KMSKeyNotAccessibleFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_KMSKeyNotAccessibleFault =+ Core._MatchServiceError+ defaultService+ "KMSKeyNotAccessibleFault"+ Prelude.. Core.hasStatus 400++-- | The specified resource ID was not found.+_ResourceNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundFault =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundFault"+ Prelude.. Core.hasStatus 404++-- | Amazon SNS has responded that there is a problem with the specified+-- topic.+_SNSInvalidTopicFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_SNSInvalidTopicFault =+ Core._MatchServiceError+ defaultService+ "SNSInvalidTopic"+ Prelude.. Core.hasStatus 400++-- | You do not have permission to publish to the SNS topic Amazon Resource+-- Name (ARN).+_SNSNoAuthorizationFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_SNSNoAuthorizationFault =+ Core._MatchServiceError+ defaultService+ "SNSNoAuthorization"+ Prelude.. Core.hasStatus 400++-- | The SNS topic Amazon Resource Name (ARN) does not exist.+_SNSTopicArnNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_SNSTopicArnNotFoundFault =+ Core._MatchServiceError+ defaultService+ "SNSTopicArnNotFound"+ Prelude.. Core.hasStatus 404++-- | You have exceeded the maximum number of accounts that you can share a+-- manual DB snapshot with.+_SharedSnapshotQuotaExceededFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_SharedSnapshotQuotaExceededFault =+ Core._MatchServiceError+ defaultService+ "SharedSnapshotQuotaExceeded"+ Prelude.. Core.hasStatus 400++-- | The request would cause you to exceed the allowed number of snapshots.+_SnapshotQuotaExceededFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_SnapshotQuotaExceededFault =+ Core._MatchServiceError+ defaultService+ "SnapshotQuotaExceeded"+ Prelude.. Core.hasStatus 400++-- | The requested source could not be found.+_SourceNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_SourceNotFoundFault =+ Core._MatchServiceError+ defaultService+ "SourceNotFound"+ Prelude.. Core.hasStatus 404++-- | The request would cause you to exceed the allowed amount of storage+-- available across all instances.+_StorageQuotaExceededFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_StorageQuotaExceededFault =+ Core._MatchServiceError+ defaultService+ "StorageQuotaExceeded"+ Prelude.. Core.hasStatus 400++-- | Storage of the specified @StorageType@ can\'t be associated with the DB+-- instance.+_StorageTypeNotSupportedFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_StorageTypeNotSupportedFault =+ Core._MatchServiceError+ defaultService+ "StorageTypeNotSupported"+ Prelude.. Core.hasStatus 400++-- | The subnet is already in use in the Availability Zone.+_SubnetAlreadyInUse :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_SubnetAlreadyInUse =+ Core._MatchServiceError+ defaultService+ "SubnetAlreadyInUse"+ Prelude.. Core.hasStatus 400++-- | The provided subscription name already exists.+_SubscriptionAlreadyExistFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_SubscriptionAlreadyExistFault =+ Core._MatchServiceError+ defaultService+ "SubscriptionAlreadyExist"+ Prelude.. Core.hasStatus 400++-- | The provided category does not exist.+_SubscriptionCategoryNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_SubscriptionCategoryNotFoundFault =+ Core._MatchServiceError+ defaultService+ "SubscriptionCategoryNotFound"+ Prelude.. Core.hasStatus 404++-- | The subscription name does not exist.+_SubscriptionNotFoundFault :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_SubscriptionNotFoundFault =+ Core._MatchServiceError+ defaultService+ "SubscriptionNotFound"+ Prelude.. Core.hasStatus 404
+ gen/Amazonka/DocumentDB/Types/ApplyMethod.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.ApplyMethod+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.ApplyMethod+ ( ApplyMethod+ ( ..,+ ApplyMethod_Immediate,+ ApplyMethod_Pending_reboot+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplyMethod = ApplyMethod'+ { fromApplyMethod ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ApplyMethod_Immediate :: ApplyMethod+pattern ApplyMethod_Immediate = ApplyMethod' "immediate"++pattern ApplyMethod_Pending_reboot :: ApplyMethod+pattern ApplyMethod_Pending_reboot = ApplyMethod' "pending-reboot"++{-# COMPLETE+ ApplyMethod_Immediate,+ ApplyMethod_Pending_reboot,+ ApplyMethod'+ #-}
+ gen/Amazonka/DocumentDB/Types/AvailabilityZone.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.AvailabilityZone+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.AvailabilityZone where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about an Availability Zone.+--+-- /See:/ 'newAvailabilityZone' smart constructor.+data AvailabilityZone = AvailabilityZone'+ { -- | The name of the Availability Zone.+ name :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AvailabilityZone' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'availabilityZone_name' - The name of the Availability Zone.+newAvailabilityZone ::+ AvailabilityZone+newAvailabilityZone =+ AvailabilityZone' {name = Prelude.Nothing}++-- | The name of the Availability Zone.+availabilityZone_name :: Lens.Lens' AvailabilityZone (Prelude.Maybe Prelude.Text)+availabilityZone_name = Lens.lens (\AvailabilityZone' {name} -> name) (\s@AvailabilityZone' {} a -> s {name = a} :: AvailabilityZone)++instance Data.FromXML AvailabilityZone where+ parseXML x =+ AvailabilityZone' Prelude.<$> (x Data..@? "Name")++instance Prelude.Hashable AvailabilityZone where+ hashWithSalt _salt AvailabilityZone' {..} =+ _salt `Prelude.hashWithSalt` name++instance Prelude.NFData AvailabilityZone where+ rnf AvailabilityZone' {..} = Prelude.rnf name
+ gen/Amazonka/DocumentDB/Types/Certificate.hs view
@@ -0,0 +1,159 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.Certificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.Certificate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A certificate authority (CA) certificate for an Amazon Web Services+-- account.+--+-- /See:/ 'newCertificate' smart constructor.+data Certificate = Certificate'+ { -- | The Amazon Resource Name (ARN) for the certificate.+ --+ -- Example: @arn:aws:rds:us-east-1::cert:rds-ca-2019@+ certificateArn :: Prelude.Maybe Prelude.Text,+ -- | The unique key that identifies a certificate.+ --+ -- Example: @rds-ca-2019@+ certificateIdentifier :: Prelude.Maybe Prelude.Text,+ -- | The type of the certificate.+ --+ -- Example: @CA@+ certificateType :: Prelude.Maybe Prelude.Text,+ -- | The thumbprint of the certificate.+ thumbprint :: Prelude.Maybe Prelude.Text,+ -- | The starting date-time from which the certificate is valid.+ --+ -- Example: @2019-07-31T17:57:09Z@+ validFrom :: Prelude.Maybe Data.ISO8601,+ -- | The date-time after which the certificate is no longer valid.+ --+ -- Example: @2024-07-31T17:57:09Z@+ validTill :: Prelude.Maybe Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Certificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'certificateArn', 'certificate_certificateArn' - The Amazon Resource Name (ARN) for the certificate.+--+-- Example: @arn:aws:rds:us-east-1::cert:rds-ca-2019@+--+-- 'certificateIdentifier', 'certificate_certificateIdentifier' - The unique key that identifies a certificate.+--+-- Example: @rds-ca-2019@+--+-- 'certificateType', 'certificate_certificateType' - The type of the certificate.+--+-- Example: @CA@+--+-- 'thumbprint', 'certificate_thumbprint' - The thumbprint of the certificate.+--+-- 'validFrom', 'certificate_validFrom' - The starting date-time from which the certificate is valid.+--+-- Example: @2019-07-31T17:57:09Z@+--+-- 'validTill', 'certificate_validTill' - The date-time after which the certificate is no longer valid.+--+-- Example: @2024-07-31T17:57:09Z@+newCertificate ::+ Certificate+newCertificate =+ Certificate'+ { certificateArn = Prelude.Nothing,+ certificateIdentifier = Prelude.Nothing,+ certificateType = Prelude.Nothing,+ thumbprint = Prelude.Nothing,+ validFrom = Prelude.Nothing,+ validTill = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) for the certificate.+--+-- Example: @arn:aws:rds:us-east-1::cert:rds-ca-2019@+certificate_certificateArn :: Lens.Lens' Certificate (Prelude.Maybe Prelude.Text)+certificate_certificateArn = Lens.lens (\Certificate' {certificateArn} -> certificateArn) (\s@Certificate' {} a -> s {certificateArn = a} :: Certificate)++-- | The unique key that identifies a certificate.+--+-- Example: @rds-ca-2019@+certificate_certificateIdentifier :: Lens.Lens' Certificate (Prelude.Maybe Prelude.Text)+certificate_certificateIdentifier = Lens.lens (\Certificate' {certificateIdentifier} -> certificateIdentifier) (\s@Certificate' {} a -> s {certificateIdentifier = a} :: Certificate)++-- | The type of the certificate.+--+-- Example: @CA@+certificate_certificateType :: Lens.Lens' Certificate (Prelude.Maybe Prelude.Text)+certificate_certificateType = Lens.lens (\Certificate' {certificateType} -> certificateType) (\s@Certificate' {} a -> s {certificateType = a} :: Certificate)++-- | The thumbprint of the certificate.+certificate_thumbprint :: Lens.Lens' Certificate (Prelude.Maybe Prelude.Text)+certificate_thumbprint = Lens.lens (\Certificate' {thumbprint} -> thumbprint) (\s@Certificate' {} a -> s {thumbprint = a} :: Certificate)++-- | The starting date-time from which the certificate is valid.+--+-- Example: @2019-07-31T17:57:09Z@+certificate_validFrom :: Lens.Lens' Certificate (Prelude.Maybe Prelude.UTCTime)+certificate_validFrom = Lens.lens (\Certificate' {validFrom} -> validFrom) (\s@Certificate' {} a -> s {validFrom = a} :: Certificate) Prelude.. Lens.mapping Data._Time++-- | The date-time after which the certificate is no longer valid.+--+-- Example: @2024-07-31T17:57:09Z@+certificate_validTill :: Lens.Lens' Certificate (Prelude.Maybe Prelude.UTCTime)+certificate_validTill = Lens.lens (\Certificate' {validTill} -> validTill) (\s@Certificate' {} a -> s {validTill = a} :: Certificate) Prelude.. Lens.mapping Data._Time++instance Data.FromXML Certificate where+ parseXML x =+ Certificate'+ Prelude.<$> (x Data..@? "CertificateArn")+ Prelude.<*> (x Data..@? "CertificateIdentifier")+ Prelude.<*> (x Data..@? "CertificateType")+ Prelude.<*> (x Data..@? "Thumbprint")+ Prelude.<*> (x Data..@? "ValidFrom")+ Prelude.<*> (x Data..@? "ValidTill")++instance Prelude.Hashable Certificate where+ hashWithSalt _salt Certificate' {..} =+ _salt+ `Prelude.hashWithSalt` certificateArn+ `Prelude.hashWithSalt` certificateIdentifier+ `Prelude.hashWithSalt` certificateType+ `Prelude.hashWithSalt` thumbprint+ `Prelude.hashWithSalt` validFrom+ `Prelude.hashWithSalt` validTill++instance Prelude.NFData Certificate where+ rnf Certificate' {..} =+ Prelude.rnf certificateArn+ `Prelude.seq` Prelude.rnf certificateIdentifier+ `Prelude.seq` Prelude.rnf certificateType+ `Prelude.seq` Prelude.rnf thumbprint+ `Prelude.seq` Prelude.rnf validFrom+ `Prelude.seq` Prelude.rnf validTill
+ gen/Amazonka/DocumentDB/Types/CloudwatchLogsExportConfiguration.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.CloudwatchLogsExportConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.CloudwatchLogsExportConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The configuration setting for the log types to be enabled for export to+-- Amazon CloudWatch Logs for a specific instance or cluster.+--+-- The @EnableLogTypes@ and @DisableLogTypes@ arrays determine which logs+-- are exported (or not exported) to CloudWatch Logs. The values within+-- these arrays depend on the engine that is being used.+--+-- /See:/ 'newCloudwatchLogsExportConfiguration' smart constructor.+data CloudwatchLogsExportConfiguration = CloudwatchLogsExportConfiguration'+ { -- | The list of log types to disable.+ disableLogTypes :: Prelude.Maybe [Prelude.Text],+ -- | The list of log types to enable.+ enableLogTypes :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CloudwatchLogsExportConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'disableLogTypes', 'cloudwatchLogsExportConfiguration_disableLogTypes' - The list of log types to disable.+--+-- 'enableLogTypes', 'cloudwatchLogsExportConfiguration_enableLogTypes' - The list of log types to enable.+newCloudwatchLogsExportConfiguration ::+ CloudwatchLogsExportConfiguration+newCloudwatchLogsExportConfiguration =+ CloudwatchLogsExportConfiguration'+ { disableLogTypes =+ Prelude.Nothing,+ enableLogTypes = Prelude.Nothing+ }++-- | The list of log types to disable.+cloudwatchLogsExportConfiguration_disableLogTypes :: Lens.Lens' CloudwatchLogsExportConfiguration (Prelude.Maybe [Prelude.Text])+cloudwatchLogsExportConfiguration_disableLogTypes = Lens.lens (\CloudwatchLogsExportConfiguration' {disableLogTypes} -> disableLogTypes) (\s@CloudwatchLogsExportConfiguration' {} a -> s {disableLogTypes = a} :: CloudwatchLogsExportConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | The list of log types to enable.+cloudwatchLogsExportConfiguration_enableLogTypes :: Lens.Lens' CloudwatchLogsExportConfiguration (Prelude.Maybe [Prelude.Text])+cloudwatchLogsExportConfiguration_enableLogTypes = Lens.lens (\CloudwatchLogsExportConfiguration' {enableLogTypes} -> enableLogTypes) (\s@CloudwatchLogsExportConfiguration' {} a -> s {enableLogTypes = a} :: CloudwatchLogsExportConfiguration) Prelude.. Lens.mapping Lens.coerced++instance+ Prelude.Hashable+ CloudwatchLogsExportConfiguration+ where+ hashWithSalt+ _salt+ CloudwatchLogsExportConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` disableLogTypes+ `Prelude.hashWithSalt` enableLogTypes++instance+ Prelude.NFData+ CloudwatchLogsExportConfiguration+ where+ rnf CloudwatchLogsExportConfiguration' {..} =+ Prelude.rnf disableLogTypes+ `Prelude.seq` Prelude.rnf enableLogTypes++instance+ Data.ToQuery+ CloudwatchLogsExportConfiguration+ where+ toQuery CloudwatchLogsExportConfiguration' {..} =+ Prelude.mconcat+ [ "DisableLogTypes"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> disableLogTypes+ ),+ "EnableLogTypes"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> enableLogTypes+ )+ ]
+ gen/Amazonka/DocumentDB/Types/DBCluster.hs view
@@ -0,0 +1,592 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBCluster where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.DBClusterMember+import Amazonka.DocumentDB.Types.DBClusterRole+import Amazonka.DocumentDB.Types.VpcSecurityGroupMembership+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about a cluster.+--+-- /See:/ 'newDBCluster' smart constructor.+data DBCluster = DBCluster'+ { -- | Provides a list of the Identity and Access Management (IAM) roles that+ -- are associated with the cluster. (IAM) roles that are associated with a+ -- cluster grant permission for the cluster to access other Amazon Web+ -- Services services on your behalf.+ associatedRoles :: Prelude.Maybe [DBClusterRole],+ -- | Provides the list of Amazon EC2 Availability Zones that instances in the+ -- cluster can be created in.+ availabilityZones :: Prelude.Maybe [Prelude.Text],+ -- | Specifies the number of days for which automatic snapshots are retained.+ backupRetentionPeriod :: Prelude.Maybe Prelude.Int,+ -- | Identifies the clone group to which the DB cluster is associated.+ cloneGroupId :: Prelude.Maybe Prelude.Text,+ -- | Specifies the time when the cluster was created, in Universal+ -- Coordinated Time (UTC).+ clusterCreateTime :: Prelude.Maybe Data.ISO8601,+ -- | The Amazon Resource Name (ARN) for the cluster.+ dbClusterArn :: Prelude.Maybe Prelude.Text,+ -- | Contains a user-supplied cluster identifier. This identifier is the+ -- unique key that identifies a cluster.+ dbClusterIdentifier :: Prelude.Maybe Prelude.Text,+ -- | Provides the list of instances that make up the cluster.+ dbClusterMembers :: Prelude.Maybe [DBClusterMember],+ -- | Specifies the name of the cluster parameter group for the cluster.+ dbClusterParameterGroup :: Prelude.Maybe Prelude.Text,+ -- | Specifies information on the subnet group that is associated with the+ -- cluster, including the name, description, and subnets in the subnet+ -- group.+ dbSubnetGroup :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services Region-unique, immutable identifier for the+ -- cluster. This identifier is found in CloudTrail log entries whenever the+ -- KMS key for the cluster is accessed.+ dbClusterResourceId :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether this cluster can be deleted. If @DeletionProtection@+ -- is enabled, the cluster cannot be deleted unless it is modified and+ -- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+ -- from being accidentally deleted.+ deletionProtection :: Prelude.Maybe Prelude.Bool,+ -- | The earliest time to which a database can be restored with point-in-time+ -- restore.+ earliestRestorableTime :: Prelude.Maybe Data.ISO8601,+ -- | A list of log types that this cluster is configured to export to Amazon+ -- CloudWatch Logs.+ enabledCloudwatchLogsExports :: Prelude.Maybe [Prelude.Text],+ -- | Specifies the connection endpoint for the primary instance of the+ -- cluster.+ endpoint :: Prelude.Maybe Prelude.Text,+ -- | Provides the name of the database engine to be used for this cluster.+ engine :: Prelude.Maybe Prelude.Text,+ -- | Indicates the database engine version.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | Specifies the ID that Amazon Route 53 assigns when you create a hosted+ -- zone.+ hostedZoneId :: Prelude.Maybe Prelude.Text,+ -- | If @StorageEncrypted@ is @true@, the KMS key identifier for the+ -- encrypted cluster.+ kmsKeyId :: Prelude.Maybe Prelude.Text,+ -- | Specifies the latest time to which a database can be restored with+ -- point-in-time restore.+ latestRestorableTime :: Prelude.Maybe Data.ISO8601,+ -- | Contains the master user name for the cluster.+ masterUsername :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether the cluster has instances in multiple Availability+ -- Zones.+ multiAZ :: Prelude.Maybe Prelude.Bool,+ -- | Specifies the progress of the operation as a percentage.+ percentProgress :: Prelude.Maybe Prelude.Text,+ -- | Specifies the port that the database engine is listening on.+ port :: Prelude.Maybe Prelude.Int,+ -- | Specifies the daily time range during which automated backups are+ -- created if automated backups are enabled, as determined by the+ -- @BackupRetentionPeriod@.+ preferredBackupWindow :: Prelude.Maybe Prelude.Text,+ -- | Specifies the weekly time range during which system maintenance can+ -- occur, in Universal Coordinated Time (UTC).+ preferredMaintenanceWindow :: Prelude.Maybe Prelude.Text,+ -- | Contains one or more identifiers of the secondary clusters that are+ -- associated with this cluster.+ readReplicaIdentifiers :: Prelude.Maybe [Prelude.Text],+ -- | The reader endpoint for the cluster. The reader endpoint for a cluster+ -- load balances connections across the Amazon DocumentDB replicas that are+ -- available in a cluster. As clients request new connections to the reader+ -- endpoint, Amazon DocumentDB distributes the connection requests among+ -- the Amazon DocumentDB replicas in the cluster. This functionality can+ -- help balance your read workload across multiple Amazon DocumentDB+ -- replicas in your cluster.+ --+ -- If a failover occurs, and the Amazon DocumentDB replica that you are+ -- connected to is promoted to be the primary instance, your connection is+ -- dropped. To continue sending your read workload to other Amazon+ -- DocumentDB replicas in the cluster, you can then reconnect to the reader+ -- endpoint.+ readerEndpoint :: Prelude.Maybe Prelude.Text,+ -- | Contains the identifier of the source cluster if this cluster is a+ -- secondary cluster.+ replicationSourceIdentifier :: Prelude.Maybe Prelude.Text,+ -- | Specifies the current state of this cluster.+ status :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether the cluster is encrypted.+ storageEncrypted :: Prelude.Maybe Prelude.Bool,+ -- | Provides a list of virtual private cloud (VPC) security groups that the+ -- cluster belongs to.+ vpcSecurityGroups :: Prelude.Maybe [VpcSecurityGroupMembership]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'associatedRoles', 'dbCluster_associatedRoles' - Provides a list of the Identity and Access Management (IAM) roles that+-- are associated with the cluster. (IAM) roles that are associated with a+-- cluster grant permission for the cluster to access other Amazon Web+-- Services services on your behalf.+--+-- 'availabilityZones', 'dbCluster_availabilityZones' - Provides the list of Amazon EC2 Availability Zones that instances in the+-- cluster can be created in.+--+-- 'backupRetentionPeriod', 'dbCluster_backupRetentionPeriod' - Specifies the number of days for which automatic snapshots are retained.+--+-- 'cloneGroupId', 'dbCluster_cloneGroupId' - Identifies the clone group to which the DB cluster is associated.+--+-- 'clusterCreateTime', 'dbCluster_clusterCreateTime' - Specifies the time when the cluster was created, in Universal+-- Coordinated Time (UTC).+--+-- 'dbClusterArn', 'dbCluster_dbClusterArn' - The Amazon Resource Name (ARN) for the cluster.+--+-- 'dbClusterIdentifier', 'dbCluster_dbClusterIdentifier' - Contains a user-supplied cluster identifier. This identifier is the+-- unique key that identifies a cluster.+--+-- 'dbClusterMembers', 'dbCluster_dbClusterMembers' - Provides the list of instances that make up the cluster.+--+-- 'dbClusterParameterGroup', 'dbCluster_dbClusterParameterGroup' - Specifies the name of the cluster parameter group for the cluster.+--+-- 'dbSubnetGroup', 'dbCluster_dbSubnetGroup' - Specifies information on the subnet group that is associated with the+-- cluster, including the name, description, and subnets in the subnet+-- group.+--+-- 'dbClusterResourceId', 'dbCluster_dbClusterResourceId' - The Amazon Web Services Region-unique, immutable identifier for the+-- cluster. This identifier is found in CloudTrail log entries whenever the+-- KMS key for the cluster is accessed.+--+-- 'deletionProtection', 'dbCluster_deletionProtection' - Specifies whether this cluster can be deleted. If @DeletionProtection@+-- is enabled, the cluster cannot be deleted unless it is modified and+-- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+-- from being accidentally deleted.+--+-- 'earliestRestorableTime', 'dbCluster_earliestRestorableTime' - The earliest time to which a database can be restored with point-in-time+-- restore.+--+-- 'enabledCloudwatchLogsExports', 'dbCluster_enabledCloudwatchLogsExports' - A list of log types that this cluster is configured to export to Amazon+-- CloudWatch Logs.+--+-- 'endpoint', 'dbCluster_endpoint' - Specifies the connection endpoint for the primary instance of the+-- cluster.+--+-- 'engine', 'dbCluster_engine' - Provides the name of the database engine to be used for this cluster.+--+-- 'engineVersion', 'dbCluster_engineVersion' - Indicates the database engine version.+--+-- 'hostedZoneId', 'dbCluster_hostedZoneId' - Specifies the ID that Amazon Route 53 assigns when you create a hosted+-- zone.+--+-- 'kmsKeyId', 'dbCluster_kmsKeyId' - If @StorageEncrypted@ is @true@, the KMS key identifier for the+-- encrypted cluster.+--+-- 'latestRestorableTime', 'dbCluster_latestRestorableTime' - Specifies the latest time to which a database can be restored with+-- point-in-time restore.+--+-- 'masterUsername', 'dbCluster_masterUsername' - Contains the master user name for the cluster.+--+-- 'multiAZ', 'dbCluster_multiAZ' - Specifies whether the cluster has instances in multiple Availability+-- Zones.+--+-- 'percentProgress', 'dbCluster_percentProgress' - Specifies the progress of the operation as a percentage.+--+-- 'port', 'dbCluster_port' - Specifies the port that the database engine is listening on.+--+-- 'preferredBackupWindow', 'dbCluster_preferredBackupWindow' - Specifies the daily time range during which automated backups are+-- created if automated backups are enabled, as determined by the+-- @BackupRetentionPeriod@.+--+-- 'preferredMaintenanceWindow', 'dbCluster_preferredMaintenanceWindow' - Specifies the weekly time range during which system maintenance can+-- occur, in Universal Coordinated Time (UTC).+--+-- 'readReplicaIdentifiers', 'dbCluster_readReplicaIdentifiers' - Contains one or more identifiers of the secondary clusters that are+-- associated with this cluster.+--+-- 'readerEndpoint', 'dbCluster_readerEndpoint' - The reader endpoint for the cluster. The reader endpoint for a cluster+-- load balances connections across the Amazon DocumentDB replicas that are+-- available in a cluster. As clients request new connections to the reader+-- endpoint, Amazon DocumentDB distributes the connection requests among+-- the Amazon DocumentDB replicas in the cluster. This functionality can+-- help balance your read workload across multiple Amazon DocumentDB+-- replicas in your cluster.+--+-- If a failover occurs, and the Amazon DocumentDB replica that you are+-- connected to is promoted to be the primary instance, your connection is+-- dropped. To continue sending your read workload to other Amazon+-- DocumentDB replicas in the cluster, you can then reconnect to the reader+-- endpoint.+--+-- 'replicationSourceIdentifier', 'dbCluster_replicationSourceIdentifier' - Contains the identifier of the source cluster if this cluster is a+-- secondary cluster.+--+-- 'status', 'dbCluster_status' - Specifies the current state of this cluster.+--+-- 'storageEncrypted', 'dbCluster_storageEncrypted' - Specifies whether the cluster is encrypted.+--+-- 'vpcSecurityGroups', 'dbCluster_vpcSecurityGroups' - Provides a list of virtual private cloud (VPC) security groups that the+-- cluster belongs to.+newDBCluster ::+ DBCluster+newDBCluster =+ DBCluster'+ { associatedRoles = Prelude.Nothing,+ availabilityZones = Prelude.Nothing,+ backupRetentionPeriod = Prelude.Nothing,+ cloneGroupId = Prelude.Nothing,+ clusterCreateTime = Prelude.Nothing,+ dbClusterArn = Prelude.Nothing,+ dbClusterIdentifier = Prelude.Nothing,+ dbClusterMembers = Prelude.Nothing,+ dbClusterParameterGroup = Prelude.Nothing,+ dbSubnetGroup = Prelude.Nothing,+ dbClusterResourceId = Prelude.Nothing,+ deletionProtection = Prelude.Nothing,+ earliestRestorableTime = Prelude.Nothing,+ enabledCloudwatchLogsExports = Prelude.Nothing,+ endpoint = Prelude.Nothing,+ engine = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ hostedZoneId = Prelude.Nothing,+ kmsKeyId = Prelude.Nothing,+ latestRestorableTime = Prelude.Nothing,+ masterUsername = Prelude.Nothing,+ multiAZ = Prelude.Nothing,+ percentProgress = Prelude.Nothing,+ port = Prelude.Nothing,+ preferredBackupWindow = Prelude.Nothing,+ preferredMaintenanceWindow = Prelude.Nothing,+ readReplicaIdentifiers = Prelude.Nothing,+ readerEndpoint = Prelude.Nothing,+ replicationSourceIdentifier = Prelude.Nothing,+ status = Prelude.Nothing,+ storageEncrypted = Prelude.Nothing,+ vpcSecurityGroups = Prelude.Nothing+ }++-- | Provides a list of the Identity and Access Management (IAM) roles that+-- are associated with the cluster. (IAM) roles that are associated with a+-- cluster grant permission for the cluster to access other Amazon Web+-- Services services on your behalf.+dbCluster_associatedRoles :: Lens.Lens' DBCluster (Prelude.Maybe [DBClusterRole])+dbCluster_associatedRoles = Lens.lens (\DBCluster' {associatedRoles} -> associatedRoles) (\s@DBCluster' {} a -> s {associatedRoles = a} :: DBCluster) Prelude.. Lens.mapping Lens.coerced++-- | Provides the list of Amazon EC2 Availability Zones that instances in the+-- cluster can be created in.+dbCluster_availabilityZones :: Lens.Lens' DBCluster (Prelude.Maybe [Prelude.Text])+dbCluster_availabilityZones = Lens.lens (\DBCluster' {availabilityZones} -> availabilityZones) (\s@DBCluster' {} a -> s {availabilityZones = a} :: DBCluster) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the number of days for which automatic snapshots are retained.+dbCluster_backupRetentionPeriod :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Int)+dbCluster_backupRetentionPeriod = Lens.lens (\DBCluster' {backupRetentionPeriod} -> backupRetentionPeriod) (\s@DBCluster' {} a -> s {backupRetentionPeriod = a} :: DBCluster)++-- | Identifies the clone group to which the DB cluster is associated.+dbCluster_cloneGroupId :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_cloneGroupId = Lens.lens (\DBCluster' {cloneGroupId} -> cloneGroupId) (\s@DBCluster' {} a -> s {cloneGroupId = a} :: DBCluster)++-- | Specifies the time when the cluster was created, in Universal+-- Coordinated Time (UTC).+dbCluster_clusterCreateTime :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.UTCTime)+dbCluster_clusterCreateTime = Lens.lens (\DBCluster' {clusterCreateTime} -> clusterCreateTime) (\s@DBCluster' {} a -> s {clusterCreateTime = a} :: DBCluster) Prelude.. Lens.mapping Data._Time++-- | The Amazon Resource Name (ARN) for the cluster.+dbCluster_dbClusterArn :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_dbClusterArn = Lens.lens (\DBCluster' {dbClusterArn} -> dbClusterArn) (\s@DBCluster' {} a -> s {dbClusterArn = a} :: DBCluster)++-- | Contains a user-supplied cluster identifier. This identifier is the+-- unique key that identifies a cluster.+dbCluster_dbClusterIdentifier :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_dbClusterIdentifier = Lens.lens (\DBCluster' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@DBCluster' {} a -> s {dbClusterIdentifier = a} :: DBCluster)++-- | Provides the list of instances that make up the cluster.+dbCluster_dbClusterMembers :: Lens.Lens' DBCluster (Prelude.Maybe [DBClusterMember])+dbCluster_dbClusterMembers = Lens.lens (\DBCluster' {dbClusterMembers} -> dbClusterMembers) (\s@DBCluster' {} a -> s {dbClusterMembers = a} :: DBCluster) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the name of the cluster parameter group for the cluster.+dbCluster_dbClusterParameterGroup :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_dbClusterParameterGroup = Lens.lens (\DBCluster' {dbClusterParameterGroup} -> dbClusterParameterGroup) (\s@DBCluster' {} a -> s {dbClusterParameterGroup = a} :: DBCluster)++-- | Specifies information on the subnet group that is associated with the+-- cluster, including the name, description, and subnets in the subnet+-- group.+dbCluster_dbSubnetGroup :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_dbSubnetGroup = Lens.lens (\DBCluster' {dbSubnetGroup} -> dbSubnetGroup) (\s@DBCluster' {} a -> s {dbSubnetGroup = a} :: DBCluster)++-- | The Amazon Web Services Region-unique, immutable identifier for the+-- cluster. This identifier is found in CloudTrail log entries whenever the+-- KMS key for the cluster is accessed.+dbCluster_dbClusterResourceId :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_dbClusterResourceId = Lens.lens (\DBCluster' {dbClusterResourceId} -> dbClusterResourceId) (\s@DBCluster' {} a -> s {dbClusterResourceId = a} :: DBCluster)++-- | Specifies whether this cluster can be deleted. If @DeletionProtection@+-- is enabled, the cluster cannot be deleted unless it is modified and+-- @DeletionProtection@ is disabled. @DeletionProtection@ protects clusters+-- from being accidentally deleted.+dbCluster_deletionProtection :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Bool)+dbCluster_deletionProtection = Lens.lens (\DBCluster' {deletionProtection} -> deletionProtection) (\s@DBCluster' {} a -> s {deletionProtection = a} :: DBCluster)++-- | The earliest time to which a database can be restored with point-in-time+-- restore.+dbCluster_earliestRestorableTime :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.UTCTime)+dbCluster_earliestRestorableTime = Lens.lens (\DBCluster' {earliestRestorableTime} -> earliestRestorableTime) (\s@DBCluster' {} a -> s {earliestRestorableTime = a} :: DBCluster) Prelude.. Lens.mapping Data._Time++-- | A list of log types that this cluster is configured to export to Amazon+-- CloudWatch Logs.+dbCluster_enabledCloudwatchLogsExports :: Lens.Lens' DBCluster (Prelude.Maybe [Prelude.Text])+dbCluster_enabledCloudwatchLogsExports = Lens.lens (\DBCluster' {enabledCloudwatchLogsExports} -> enabledCloudwatchLogsExports) (\s@DBCluster' {} a -> s {enabledCloudwatchLogsExports = a} :: DBCluster) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the connection endpoint for the primary instance of the+-- cluster.+dbCluster_endpoint :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_endpoint = Lens.lens (\DBCluster' {endpoint} -> endpoint) (\s@DBCluster' {} a -> s {endpoint = a} :: DBCluster)++-- | Provides the name of the database engine to be used for this cluster.+dbCluster_engine :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_engine = Lens.lens (\DBCluster' {engine} -> engine) (\s@DBCluster' {} a -> s {engine = a} :: DBCluster)++-- | Indicates the database engine version.+dbCluster_engineVersion :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_engineVersion = Lens.lens (\DBCluster' {engineVersion} -> engineVersion) (\s@DBCluster' {} a -> s {engineVersion = a} :: DBCluster)++-- | Specifies the ID that Amazon Route 53 assigns when you create a hosted+-- zone.+dbCluster_hostedZoneId :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_hostedZoneId = Lens.lens (\DBCluster' {hostedZoneId} -> hostedZoneId) (\s@DBCluster' {} a -> s {hostedZoneId = a} :: DBCluster)++-- | If @StorageEncrypted@ is @true@, the KMS key identifier for the+-- encrypted cluster.+dbCluster_kmsKeyId :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_kmsKeyId = Lens.lens (\DBCluster' {kmsKeyId} -> kmsKeyId) (\s@DBCluster' {} a -> s {kmsKeyId = a} :: DBCluster)++-- | Specifies the latest time to which a database can be restored with+-- point-in-time restore.+dbCluster_latestRestorableTime :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.UTCTime)+dbCluster_latestRestorableTime = Lens.lens (\DBCluster' {latestRestorableTime} -> latestRestorableTime) (\s@DBCluster' {} a -> s {latestRestorableTime = a} :: DBCluster) Prelude.. Lens.mapping Data._Time++-- | Contains the master user name for the cluster.+dbCluster_masterUsername :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_masterUsername = Lens.lens (\DBCluster' {masterUsername} -> masterUsername) (\s@DBCluster' {} a -> s {masterUsername = a} :: DBCluster)++-- | Specifies whether the cluster has instances in multiple Availability+-- Zones.+dbCluster_multiAZ :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Bool)+dbCluster_multiAZ = Lens.lens (\DBCluster' {multiAZ} -> multiAZ) (\s@DBCluster' {} a -> s {multiAZ = a} :: DBCluster)++-- | Specifies the progress of the operation as a percentage.+dbCluster_percentProgress :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_percentProgress = Lens.lens (\DBCluster' {percentProgress} -> percentProgress) (\s@DBCluster' {} a -> s {percentProgress = a} :: DBCluster)++-- | Specifies the port that the database engine is listening on.+dbCluster_port :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Int)+dbCluster_port = Lens.lens (\DBCluster' {port} -> port) (\s@DBCluster' {} a -> s {port = a} :: DBCluster)++-- | Specifies the daily time range during which automated backups are+-- created if automated backups are enabled, as determined by the+-- @BackupRetentionPeriod@.+dbCluster_preferredBackupWindow :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_preferredBackupWindow = Lens.lens (\DBCluster' {preferredBackupWindow} -> preferredBackupWindow) (\s@DBCluster' {} a -> s {preferredBackupWindow = a} :: DBCluster)++-- | Specifies the weekly time range during which system maintenance can+-- occur, in Universal Coordinated Time (UTC).+dbCluster_preferredMaintenanceWindow :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_preferredMaintenanceWindow = Lens.lens (\DBCluster' {preferredMaintenanceWindow} -> preferredMaintenanceWindow) (\s@DBCluster' {} a -> s {preferredMaintenanceWindow = a} :: DBCluster)++-- | Contains one or more identifiers of the secondary clusters that are+-- associated with this cluster.+dbCluster_readReplicaIdentifiers :: Lens.Lens' DBCluster (Prelude.Maybe [Prelude.Text])+dbCluster_readReplicaIdentifiers = Lens.lens (\DBCluster' {readReplicaIdentifiers} -> readReplicaIdentifiers) (\s@DBCluster' {} a -> s {readReplicaIdentifiers = a} :: DBCluster) Prelude.. Lens.mapping Lens.coerced++-- | The reader endpoint for the cluster. The reader endpoint for a cluster+-- load balances connections across the Amazon DocumentDB replicas that are+-- available in a cluster. As clients request new connections to the reader+-- endpoint, Amazon DocumentDB distributes the connection requests among+-- the Amazon DocumentDB replicas in the cluster. This functionality can+-- help balance your read workload across multiple Amazon DocumentDB+-- replicas in your cluster.+--+-- If a failover occurs, and the Amazon DocumentDB replica that you are+-- connected to is promoted to be the primary instance, your connection is+-- dropped. To continue sending your read workload to other Amazon+-- DocumentDB replicas in the cluster, you can then reconnect to the reader+-- endpoint.+dbCluster_readerEndpoint :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_readerEndpoint = Lens.lens (\DBCluster' {readerEndpoint} -> readerEndpoint) (\s@DBCluster' {} a -> s {readerEndpoint = a} :: DBCluster)++-- | Contains the identifier of the source cluster if this cluster is a+-- secondary cluster.+dbCluster_replicationSourceIdentifier :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_replicationSourceIdentifier = Lens.lens (\DBCluster' {replicationSourceIdentifier} -> replicationSourceIdentifier) (\s@DBCluster' {} a -> s {replicationSourceIdentifier = a} :: DBCluster)++-- | Specifies the current state of this cluster.+dbCluster_status :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Text)+dbCluster_status = Lens.lens (\DBCluster' {status} -> status) (\s@DBCluster' {} a -> s {status = a} :: DBCluster)++-- | Specifies whether the cluster is encrypted.+dbCluster_storageEncrypted :: Lens.Lens' DBCluster (Prelude.Maybe Prelude.Bool)+dbCluster_storageEncrypted = Lens.lens (\DBCluster' {storageEncrypted} -> storageEncrypted) (\s@DBCluster' {} a -> s {storageEncrypted = a} :: DBCluster)++-- | Provides a list of virtual private cloud (VPC) security groups that the+-- cluster belongs to.+dbCluster_vpcSecurityGroups :: Lens.Lens' DBCluster (Prelude.Maybe [VpcSecurityGroupMembership])+dbCluster_vpcSecurityGroups = Lens.lens (\DBCluster' {vpcSecurityGroups} -> vpcSecurityGroups) (\s@DBCluster' {} a -> s {vpcSecurityGroups = a} :: DBCluster) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML DBCluster where+ parseXML x =+ DBCluster'+ Prelude.<$> ( x+ Data..@? "AssociatedRoles"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "DBClusterRole")+ )+ Prelude.<*> ( x+ Data..@? "AvailabilityZones"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "AvailabilityZone")+ )+ Prelude.<*> (x Data..@? "BackupRetentionPeriod")+ Prelude.<*> (x Data..@? "CloneGroupId")+ Prelude.<*> (x Data..@? "ClusterCreateTime")+ Prelude.<*> (x Data..@? "DBClusterArn")+ Prelude.<*> (x Data..@? "DBClusterIdentifier")+ Prelude.<*> ( x+ Data..@? "DBClusterMembers"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "DBClusterMember")+ )+ Prelude.<*> (x Data..@? "DBClusterParameterGroup")+ Prelude.<*> (x Data..@? "DBSubnetGroup")+ Prelude.<*> (x Data..@? "DbClusterResourceId")+ Prelude.<*> (x Data..@? "DeletionProtection")+ Prelude.<*> (x Data..@? "EarliestRestorableTime")+ Prelude.<*> ( x+ Data..@? "EnabledCloudwatchLogsExports"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "Endpoint")+ Prelude.<*> (x Data..@? "Engine")+ Prelude.<*> (x Data..@? "EngineVersion")+ Prelude.<*> (x Data..@? "HostedZoneId")+ Prelude.<*> (x Data..@? "KmsKeyId")+ Prelude.<*> (x Data..@? "LatestRestorableTime")+ Prelude.<*> (x Data..@? "MasterUsername")+ Prelude.<*> (x Data..@? "MultiAZ")+ Prelude.<*> (x Data..@? "PercentProgress")+ Prelude.<*> (x Data..@? "Port")+ Prelude.<*> (x Data..@? "PreferredBackupWindow")+ Prelude.<*> (x Data..@? "PreferredMaintenanceWindow")+ Prelude.<*> ( x+ Data..@? "ReadReplicaIdentifiers"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "ReadReplicaIdentifier")+ )+ Prelude.<*> (x Data..@? "ReaderEndpoint")+ Prelude.<*> (x Data..@? "ReplicationSourceIdentifier")+ Prelude.<*> (x Data..@? "Status")+ Prelude.<*> (x Data..@? "StorageEncrypted")+ Prelude.<*> ( x+ Data..@? "VpcSecurityGroups"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may+ (Data.parseXMLList "VpcSecurityGroupMembership")+ )++instance Prelude.Hashable DBCluster where+ hashWithSalt _salt DBCluster' {..} =+ _salt+ `Prelude.hashWithSalt` associatedRoles+ `Prelude.hashWithSalt` availabilityZones+ `Prelude.hashWithSalt` backupRetentionPeriod+ `Prelude.hashWithSalt` cloneGroupId+ `Prelude.hashWithSalt` clusterCreateTime+ `Prelude.hashWithSalt` dbClusterArn+ `Prelude.hashWithSalt` dbClusterIdentifier+ `Prelude.hashWithSalt` dbClusterMembers+ `Prelude.hashWithSalt` dbClusterParameterGroup+ `Prelude.hashWithSalt` dbSubnetGroup+ `Prelude.hashWithSalt` dbClusterResourceId+ `Prelude.hashWithSalt` deletionProtection+ `Prelude.hashWithSalt` earliestRestorableTime+ `Prelude.hashWithSalt` enabledCloudwatchLogsExports+ `Prelude.hashWithSalt` endpoint+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` hostedZoneId+ `Prelude.hashWithSalt` kmsKeyId+ `Prelude.hashWithSalt` latestRestorableTime+ `Prelude.hashWithSalt` masterUsername+ `Prelude.hashWithSalt` multiAZ+ `Prelude.hashWithSalt` percentProgress+ `Prelude.hashWithSalt` port+ `Prelude.hashWithSalt` preferredBackupWindow+ `Prelude.hashWithSalt` preferredMaintenanceWindow+ `Prelude.hashWithSalt` readReplicaIdentifiers+ `Prelude.hashWithSalt` readerEndpoint+ `Prelude.hashWithSalt` replicationSourceIdentifier+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` storageEncrypted+ `Prelude.hashWithSalt` vpcSecurityGroups++instance Prelude.NFData DBCluster where+ rnf DBCluster' {..} =+ Prelude.rnf associatedRoles+ `Prelude.seq` Prelude.rnf availabilityZones+ `Prelude.seq` Prelude.rnf backupRetentionPeriod+ `Prelude.seq` Prelude.rnf cloneGroupId+ `Prelude.seq` Prelude.rnf clusterCreateTime+ `Prelude.seq` Prelude.rnf dbClusterArn+ `Prelude.seq` Prelude.rnf dbClusterIdentifier+ `Prelude.seq` Prelude.rnf dbClusterMembers+ `Prelude.seq` Prelude.rnf dbClusterParameterGroup+ `Prelude.seq` Prelude.rnf dbSubnetGroup+ `Prelude.seq` Prelude.rnf dbClusterResourceId+ `Prelude.seq` Prelude.rnf deletionProtection+ `Prelude.seq` Prelude.rnf earliestRestorableTime+ `Prelude.seq` Prelude.rnf enabledCloudwatchLogsExports+ `Prelude.seq` Prelude.rnf endpoint+ `Prelude.seq` Prelude.rnf engine+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf hostedZoneId+ `Prelude.seq` Prelude.rnf kmsKeyId+ `Prelude.seq` Prelude.rnf+ latestRestorableTime+ `Prelude.seq` Prelude.rnf masterUsername+ `Prelude.seq` Prelude.rnf multiAZ+ `Prelude.seq` Prelude.rnf+ percentProgress+ `Prelude.seq` Prelude.rnf port+ `Prelude.seq` Prelude.rnf+ preferredBackupWindow+ `Prelude.seq` Prelude.rnf+ preferredMaintenanceWindow+ `Prelude.seq` Prelude.rnf+ readReplicaIdentifiers+ `Prelude.seq` Prelude.rnf+ readerEndpoint+ `Prelude.seq` Prelude.rnf+ replicationSourceIdentifier+ `Prelude.seq` Prelude.rnf+ status+ `Prelude.seq` Prelude.rnf+ storageEncrypted+ `Prelude.seq` Prelude.rnf+ vpcSecurityGroups
+ gen/Amazonka/DocumentDB/Types/DBClusterMember.hs view
@@ -0,0 +1,117 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBClusterMember+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBClusterMember where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an instance that is part of a cluster.+--+-- /See:/ 'newDBClusterMember' smart constructor.+data DBClusterMember = DBClusterMember'+ { -- | Specifies the status of the cluster parameter group for this member of+ -- the DB cluster.+ dbClusterParameterGroupStatus :: Prelude.Maybe Prelude.Text,+ -- | Specifies the instance identifier for this member of the cluster.+ dbInstanceIdentifier :: Prelude.Maybe Prelude.Text,+ -- | A value that is @true@ if the cluster member is the primary instance for+ -- the cluster and @false@ otherwise.+ isClusterWriter :: Prelude.Maybe Prelude.Bool,+ -- | A value that specifies the order in which an Amazon DocumentDB replica+ -- is promoted to the primary instance after a failure of the existing+ -- primary instance.+ promotionTier :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBClusterMember' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterParameterGroupStatus', 'dbClusterMember_dbClusterParameterGroupStatus' - Specifies the status of the cluster parameter group for this member of+-- the DB cluster.+--+-- 'dbInstanceIdentifier', 'dbClusterMember_dbInstanceIdentifier' - Specifies the instance identifier for this member of the cluster.+--+-- 'isClusterWriter', 'dbClusterMember_isClusterWriter' - A value that is @true@ if the cluster member is the primary instance for+-- the cluster and @false@ otherwise.+--+-- 'promotionTier', 'dbClusterMember_promotionTier' - A value that specifies the order in which an Amazon DocumentDB replica+-- is promoted to the primary instance after a failure of the existing+-- primary instance.+newDBClusterMember ::+ DBClusterMember+newDBClusterMember =+ DBClusterMember'+ { dbClusterParameterGroupStatus =+ Prelude.Nothing,+ dbInstanceIdentifier = Prelude.Nothing,+ isClusterWriter = Prelude.Nothing,+ promotionTier = Prelude.Nothing+ }++-- | Specifies the status of the cluster parameter group for this member of+-- the DB cluster.+dbClusterMember_dbClusterParameterGroupStatus :: Lens.Lens' DBClusterMember (Prelude.Maybe Prelude.Text)+dbClusterMember_dbClusterParameterGroupStatus = Lens.lens (\DBClusterMember' {dbClusterParameterGroupStatus} -> dbClusterParameterGroupStatus) (\s@DBClusterMember' {} a -> s {dbClusterParameterGroupStatus = a} :: DBClusterMember)++-- | Specifies the instance identifier for this member of the cluster.+dbClusterMember_dbInstanceIdentifier :: Lens.Lens' DBClusterMember (Prelude.Maybe Prelude.Text)+dbClusterMember_dbInstanceIdentifier = Lens.lens (\DBClusterMember' {dbInstanceIdentifier} -> dbInstanceIdentifier) (\s@DBClusterMember' {} a -> s {dbInstanceIdentifier = a} :: DBClusterMember)++-- | A value that is @true@ if the cluster member is the primary instance for+-- the cluster and @false@ otherwise.+dbClusterMember_isClusterWriter :: Lens.Lens' DBClusterMember (Prelude.Maybe Prelude.Bool)+dbClusterMember_isClusterWriter = Lens.lens (\DBClusterMember' {isClusterWriter} -> isClusterWriter) (\s@DBClusterMember' {} a -> s {isClusterWriter = a} :: DBClusterMember)++-- | A value that specifies the order in which an Amazon DocumentDB replica+-- is promoted to the primary instance after a failure of the existing+-- primary instance.+dbClusterMember_promotionTier :: Lens.Lens' DBClusterMember (Prelude.Maybe Prelude.Int)+dbClusterMember_promotionTier = Lens.lens (\DBClusterMember' {promotionTier} -> promotionTier) (\s@DBClusterMember' {} a -> s {promotionTier = a} :: DBClusterMember)++instance Data.FromXML DBClusterMember where+ parseXML x =+ DBClusterMember'+ Prelude.<$> (x Data..@? "DBClusterParameterGroupStatus")+ Prelude.<*> (x Data..@? "DBInstanceIdentifier")+ Prelude.<*> (x Data..@? "IsClusterWriter")+ Prelude.<*> (x Data..@? "PromotionTier")++instance Prelude.Hashable DBClusterMember where+ hashWithSalt _salt DBClusterMember' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterParameterGroupStatus+ `Prelude.hashWithSalt` dbInstanceIdentifier+ `Prelude.hashWithSalt` isClusterWriter+ `Prelude.hashWithSalt` promotionTier++instance Prelude.NFData DBClusterMember where+ rnf DBClusterMember' {..} =+ Prelude.rnf dbClusterParameterGroupStatus+ `Prelude.seq` Prelude.rnf dbInstanceIdentifier+ `Prelude.seq` Prelude.rnf isClusterWriter+ `Prelude.seq` Prelude.rnf promotionTier
+ gen/Amazonka/DocumentDB/Types/DBClusterParameterGroup.hs view
@@ -0,0 +1,111 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBClusterParameterGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBClusterParameterGroup where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about a cluster parameter group.+--+-- /See:/ 'newDBClusterParameterGroup' smart constructor.+data DBClusterParameterGroup = DBClusterParameterGroup'+ { -- | The Amazon Resource Name (ARN) for the cluster parameter group.+ dbClusterParameterGroupArn :: Prelude.Maybe Prelude.Text,+ -- | Provides the name of the cluster parameter group.+ dbClusterParameterGroupName :: Prelude.Maybe Prelude.Text,+ -- | Provides the name of the parameter group family that this cluster+ -- parameter group is compatible with.+ dbParameterGroupFamily :: Prelude.Maybe Prelude.Text,+ -- | Provides the customer-specified description for this cluster parameter+ -- group.+ description :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBClusterParameterGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterParameterGroupArn', 'dbClusterParameterGroup_dbClusterParameterGroupArn' - The Amazon Resource Name (ARN) for the cluster parameter group.+--+-- 'dbClusterParameterGroupName', 'dbClusterParameterGroup_dbClusterParameterGroupName' - Provides the name of the cluster parameter group.+--+-- 'dbParameterGroupFamily', 'dbClusterParameterGroup_dbParameterGroupFamily' - Provides the name of the parameter group family that this cluster+-- parameter group is compatible with.+--+-- 'description', 'dbClusterParameterGroup_description' - Provides the customer-specified description for this cluster parameter+-- group.+newDBClusterParameterGroup ::+ DBClusterParameterGroup+newDBClusterParameterGroup =+ DBClusterParameterGroup'+ { dbClusterParameterGroupArn =+ Prelude.Nothing,+ dbClusterParameterGroupName = Prelude.Nothing,+ dbParameterGroupFamily = Prelude.Nothing,+ description = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) for the cluster parameter group.+dbClusterParameterGroup_dbClusterParameterGroupArn :: Lens.Lens' DBClusterParameterGroup (Prelude.Maybe Prelude.Text)+dbClusterParameterGroup_dbClusterParameterGroupArn = Lens.lens (\DBClusterParameterGroup' {dbClusterParameterGroupArn} -> dbClusterParameterGroupArn) (\s@DBClusterParameterGroup' {} a -> s {dbClusterParameterGroupArn = a} :: DBClusterParameterGroup)++-- | Provides the name of the cluster parameter group.+dbClusterParameterGroup_dbClusterParameterGroupName :: Lens.Lens' DBClusterParameterGroup (Prelude.Maybe Prelude.Text)+dbClusterParameterGroup_dbClusterParameterGroupName = Lens.lens (\DBClusterParameterGroup' {dbClusterParameterGroupName} -> dbClusterParameterGroupName) (\s@DBClusterParameterGroup' {} a -> s {dbClusterParameterGroupName = a} :: DBClusterParameterGroup)++-- | Provides the name of the parameter group family that this cluster+-- parameter group is compatible with.+dbClusterParameterGroup_dbParameterGroupFamily :: Lens.Lens' DBClusterParameterGroup (Prelude.Maybe Prelude.Text)+dbClusterParameterGroup_dbParameterGroupFamily = Lens.lens (\DBClusterParameterGroup' {dbParameterGroupFamily} -> dbParameterGroupFamily) (\s@DBClusterParameterGroup' {} a -> s {dbParameterGroupFamily = a} :: DBClusterParameterGroup)++-- | Provides the customer-specified description for this cluster parameter+-- group.+dbClusterParameterGroup_description :: Lens.Lens' DBClusterParameterGroup (Prelude.Maybe Prelude.Text)+dbClusterParameterGroup_description = Lens.lens (\DBClusterParameterGroup' {description} -> description) (\s@DBClusterParameterGroup' {} a -> s {description = a} :: DBClusterParameterGroup)++instance Data.FromXML DBClusterParameterGroup where+ parseXML x =+ DBClusterParameterGroup'+ Prelude.<$> (x Data..@? "DBClusterParameterGroupArn")+ Prelude.<*> (x Data..@? "DBClusterParameterGroupName")+ Prelude.<*> (x Data..@? "DBParameterGroupFamily")+ Prelude.<*> (x Data..@? "Description")++instance Prelude.Hashable DBClusterParameterGroup where+ hashWithSalt _salt DBClusterParameterGroup' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterParameterGroupArn+ `Prelude.hashWithSalt` dbClusterParameterGroupName+ `Prelude.hashWithSalt` dbParameterGroupFamily+ `Prelude.hashWithSalt` description++instance Prelude.NFData DBClusterParameterGroup where+ rnf DBClusterParameterGroup' {..} =+ Prelude.rnf dbClusterParameterGroupArn+ `Prelude.seq` Prelude.rnf dbClusterParameterGroupName+ `Prelude.seq` Prelude.rnf dbParameterGroupFamily+ `Prelude.seq` Prelude.rnf description
+ gen/Amazonka/DocumentDB/Types/DBClusterParameterGroupNameMessage.hs view
@@ -0,0 +1,110 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBClusterParameterGroupNameMessage+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBClusterParameterGroupNameMessage where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains the name of a cluster parameter group.+--+-- /See:/ 'newDBClusterParameterGroupNameMessage' smart constructor.+data DBClusterParameterGroupNameMessage = DBClusterParameterGroupNameMessage'+ { -- | The name of a cluster parameter group.+ --+ -- Constraints:+ --+ -- - Must be from 1 to 255 letters or numbers.+ --+ -- - The first character must be a letter.+ --+ -- - Cannot end with a hyphen or contain two consecutive hyphens.+ --+ -- This value is stored as a lowercase string.+ dbClusterParameterGroupName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBClusterParameterGroupNameMessage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterParameterGroupName', 'dbClusterParameterGroupNameMessage_dbClusterParameterGroupName' - The name of a cluster parameter group.+--+-- Constraints:+--+-- - Must be from 1 to 255 letters or numbers.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- This value is stored as a lowercase string.+newDBClusterParameterGroupNameMessage ::+ DBClusterParameterGroupNameMessage+newDBClusterParameterGroupNameMessage =+ DBClusterParameterGroupNameMessage'+ { dbClusterParameterGroupName =+ Prelude.Nothing+ }++-- | The name of a cluster parameter group.+--+-- Constraints:+--+-- - Must be from 1 to 255 letters or numbers.+--+-- - The first character must be a letter.+--+-- - Cannot end with a hyphen or contain two consecutive hyphens.+--+-- This value is stored as a lowercase string.+dbClusterParameterGroupNameMessage_dbClusterParameterGroupName :: Lens.Lens' DBClusterParameterGroupNameMessage (Prelude.Maybe Prelude.Text)+dbClusterParameterGroupNameMessage_dbClusterParameterGroupName = Lens.lens (\DBClusterParameterGroupNameMessage' {dbClusterParameterGroupName} -> dbClusterParameterGroupName) (\s@DBClusterParameterGroupNameMessage' {} a -> s {dbClusterParameterGroupName = a} :: DBClusterParameterGroupNameMessage)++instance+ Data.FromXML+ DBClusterParameterGroupNameMessage+ where+ parseXML x =+ DBClusterParameterGroupNameMessage'+ Prelude.<$> (x Data..@? "DBClusterParameterGroupName")++instance+ Prelude.Hashable+ DBClusterParameterGroupNameMessage+ where+ hashWithSalt+ _salt+ DBClusterParameterGroupNameMessage' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterParameterGroupName++instance+ Prelude.NFData+ DBClusterParameterGroupNameMessage+ where+ rnf DBClusterParameterGroupNameMessage' {..} =+ Prelude.rnf dbClusterParameterGroupName
+ gen/Amazonka/DocumentDB/Types/DBClusterRole.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBClusterRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBClusterRole where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes an Identity and Access Management (IAM) role that is+-- associated with a cluster.+--+-- /See:/ 'newDBClusterRole' smart constructor.+data DBClusterRole = DBClusterRole'+ { -- | The Amazon Resource Name (ARN) of the IAMrole that is associated with+ -- the DB cluster.+ roleArn :: Prelude.Maybe Prelude.Text,+ -- | Describes the state of association between the IAMrole and the cluster.+ -- The @Status@ property returns one of the following values:+ --+ -- - @ACTIVE@ - The IAMrole ARN is associated with the cluster and can be+ -- used to access other Amazon Web Services services on your behalf.+ --+ -- - @PENDING@ - The IAMrole ARN is being associated with the cluster.+ --+ -- - @INVALID@ - The IAMrole ARN is associated with the cluster, but the+ -- cluster cannot assume the IAMrole to access other Amazon Web+ -- Services services on your behalf.+ status :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBClusterRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleArn', 'dbClusterRole_roleArn' - The Amazon Resource Name (ARN) of the IAMrole that is associated with+-- the DB cluster.+--+-- 'status', 'dbClusterRole_status' - Describes the state of association between the IAMrole and the cluster.+-- The @Status@ property returns one of the following values:+--+-- - @ACTIVE@ - The IAMrole ARN is associated with the cluster and can be+-- used to access other Amazon Web Services services on your behalf.+--+-- - @PENDING@ - The IAMrole ARN is being associated with the cluster.+--+-- - @INVALID@ - The IAMrole ARN is associated with the cluster, but the+-- cluster cannot assume the IAMrole to access other Amazon Web+-- Services services on your behalf.+newDBClusterRole ::+ DBClusterRole+newDBClusterRole =+ DBClusterRole'+ { roleArn = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the IAMrole that is associated with+-- the DB cluster.+dbClusterRole_roleArn :: Lens.Lens' DBClusterRole (Prelude.Maybe Prelude.Text)+dbClusterRole_roleArn = Lens.lens (\DBClusterRole' {roleArn} -> roleArn) (\s@DBClusterRole' {} a -> s {roleArn = a} :: DBClusterRole)++-- | Describes the state of association between the IAMrole and the cluster.+-- The @Status@ property returns one of the following values:+--+-- - @ACTIVE@ - The IAMrole ARN is associated with the cluster and can be+-- used to access other Amazon Web Services services on your behalf.+--+-- - @PENDING@ - The IAMrole ARN is being associated with the cluster.+--+-- - @INVALID@ - The IAMrole ARN is associated with the cluster, but the+-- cluster cannot assume the IAMrole to access other Amazon Web+-- Services services on your behalf.+dbClusterRole_status :: Lens.Lens' DBClusterRole (Prelude.Maybe Prelude.Text)+dbClusterRole_status = Lens.lens (\DBClusterRole' {status} -> status) (\s@DBClusterRole' {} a -> s {status = a} :: DBClusterRole)++instance Data.FromXML DBClusterRole where+ parseXML x =+ DBClusterRole'+ Prelude.<$> (x Data..@? "RoleArn")+ Prelude.<*> (x Data..@? "Status")++instance Prelude.Hashable DBClusterRole where+ hashWithSalt _salt DBClusterRole' {..} =+ _salt+ `Prelude.hashWithSalt` roleArn+ `Prelude.hashWithSalt` status++instance Prelude.NFData DBClusterRole where+ rnf DBClusterRole' {..} =+ Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/DocumentDB/Types/DBClusterSnapshot.hs view
@@ -0,0 +1,289 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBClusterSnapshot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBClusterSnapshot where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about a cluster snapshot.+--+-- /See:/ 'newDBClusterSnapshot' smart constructor.+data DBClusterSnapshot = DBClusterSnapshot'+ { -- | Provides the list of Amazon EC2 Availability Zones that instances in the+ -- cluster snapshot can be restored in.+ availabilityZones :: Prelude.Maybe [Prelude.Text],+ -- | Specifies the time when the cluster was created, in Universal+ -- Coordinated Time (UTC).+ clusterCreateTime :: Prelude.Maybe Data.ISO8601,+ -- | Specifies the cluster identifier of the cluster that this cluster+ -- snapshot was created from.+ dbClusterIdentifier :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) for the cluster snapshot.+ dbClusterSnapshotArn :: Prelude.Maybe Prelude.Text,+ -- | Specifies the identifier for the cluster snapshot.+ dbClusterSnapshotIdentifier :: Prelude.Maybe Prelude.Text,+ -- | Specifies the name of the database engine.+ engine :: Prelude.Maybe Prelude.Text,+ -- | Provides the version of the database engine for this cluster snapshot.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | If @StorageEncrypted@ is @true@, the KMS key identifier for the+ -- encrypted cluster snapshot.+ kmsKeyId :: Prelude.Maybe Prelude.Text,+ -- | Provides the master user name for the cluster snapshot.+ masterUsername :: Prelude.Maybe Prelude.Text,+ -- | Specifies the percentage of the estimated data that has been+ -- transferred.+ percentProgress :: Prelude.Maybe Prelude.Int,+ -- | Specifies the port that the cluster was listening on at the time of the+ -- snapshot.+ port :: Prelude.Maybe Prelude.Int,+ -- | Provides the time when the snapshot was taken, in UTC.+ snapshotCreateTime :: Prelude.Maybe Data.ISO8601,+ -- | Provides the type of the cluster snapshot.+ snapshotType :: Prelude.Maybe Prelude.Text,+ -- | If the cluster snapshot was copied from a source cluster snapshot, the+ -- ARN for the source cluster snapshot; otherwise, a null value.+ sourceDBClusterSnapshotArn :: Prelude.Maybe Prelude.Text,+ -- | Specifies the status of this cluster snapshot.+ status :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether the cluster snapshot is encrypted.+ storageEncrypted :: Prelude.Maybe Prelude.Bool,+ -- | Provides the virtual private cloud (VPC) ID that is associated with the+ -- cluster snapshot.+ vpcId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBClusterSnapshot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'availabilityZones', 'dbClusterSnapshot_availabilityZones' - Provides the list of Amazon EC2 Availability Zones that instances in the+-- cluster snapshot can be restored in.+--+-- 'clusterCreateTime', 'dbClusterSnapshot_clusterCreateTime' - Specifies the time when the cluster was created, in Universal+-- Coordinated Time (UTC).+--+-- 'dbClusterIdentifier', 'dbClusterSnapshot_dbClusterIdentifier' - Specifies the cluster identifier of the cluster that this cluster+-- snapshot was created from.+--+-- 'dbClusterSnapshotArn', 'dbClusterSnapshot_dbClusterSnapshotArn' - The Amazon Resource Name (ARN) for the cluster snapshot.+--+-- 'dbClusterSnapshotIdentifier', 'dbClusterSnapshot_dbClusterSnapshotIdentifier' - Specifies the identifier for the cluster snapshot.+--+-- 'engine', 'dbClusterSnapshot_engine' - Specifies the name of the database engine.+--+-- 'engineVersion', 'dbClusterSnapshot_engineVersion' - Provides the version of the database engine for this cluster snapshot.+--+-- 'kmsKeyId', 'dbClusterSnapshot_kmsKeyId' - If @StorageEncrypted@ is @true@, the KMS key identifier for the+-- encrypted cluster snapshot.+--+-- 'masterUsername', 'dbClusterSnapshot_masterUsername' - Provides the master user name for the cluster snapshot.+--+-- 'percentProgress', 'dbClusterSnapshot_percentProgress' - Specifies the percentage of the estimated data that has been+-- transferred.+--+-- 'port', 'dbClusterSnapshot_port' - Specifies the port that the cluster was listening on at the time of the+-- snapshot.+--+-- 'snapshotCreateTime', 'dbClusterSnapshot_snapshotCreateTime' - Provides the time when the snapshot was taken, in UTC.+--+-- 'snapshotType', 'dbClusterSnapshot_snapshotType' - Provides the type of the cluster snapshot.+--+-- 'sourceDBClusterSnapshotArn', 'dbClusterSnapshot_sourceDBClusterSnapshotArn' - If the cluster snapshot was copied from a source cluster snapshot, the+-- ARN for the source cluster snapshot; otherwise, a null value.+--+-- 'status', 'dbClusterSnapshot_status' - Specifies the status of this cluster snapshot.+--+-- 'storageEncrypted', 'dbClusterSnapshot_storageEncrypted' - Specifies whether the cluster snapshot is encrypted.+--+-- 'vpcId', 'dbClusterSnapshot_vpcId' - Provides the virtual private cloud (VPC) ID that is associated with the+-- cluster snapshot.+newDBClusterSnapshot ::+ DBClusterSnapshot+newDBClusterSnapshot =+ DBClusterSnapshot'+ { availabilityZones =+ Prelude.Nothing,+ clusterCreateTime = Prelude.Nothing,+ dbClusterIdentifier = Prelude.Nothing,+ dbClusterSnapshotArn = Prelude.Nothing,+ dbClusterSnapshotIdentifier = Prelude.Nothing,+ engine = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ kmsKeyId = Prelude.Nothing,+ masterUsername = Prelude.Nothing,+ percentProgress = Prelude.Nothing,+ port = Prelude.Nothing,+ snapshotCreateTime = Prelude.Nothing,+ snapshotType = Prelude.Nothing,+ sourceDBClusterSnapshotArn = Prelude.Nothing,+ status = Prelude.Nothing,+ storageEncrypted = Prelude.Nothing,+ vpcId = Prelude.Nothing+ }++-- | Provides the list of Amazon EC2 Availability Zones that instances in the+-- cluster snapshot can be restored in.+dbClusterSnapshot_availabilityZones :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe [Prelude.Text])+dbClusterSnapshot_availabilityZones = Lens.lens (\DBClusterSnapshot' {availabilityZones} -> availabilityZones) (\s@DBClusterSnapshot' {} a -> s {availabilityZones = a} :: DBClusterSnapshot) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the time when the cluster was created, in Universal+-- Coordinated Time (UTC).+dbClusterSnapshot_clusterCreateTime :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.UTCTime)+dbClusterSnapshot_clusterCreateTime = Lens.lens (\DBClusterSnapshot' {clusterCreateTime} -> clusterCreateTime) (\s@DBClusterSnapshot' {} a -> s {clusterCreateTime = a} :: DBClusterSnapshot) Prelude.. Lens.mapping Data._Time++-- | Specifies the cluster identifier of the cluster that this cluster+-- snapshot was created from.+dbClusterSnapshot_dbClusterIdentifier :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_dbClusterIdentifier = Lens.lens (\DBClusterSnapshot' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@DBClusterSnapshot' {} a -> s {dbClusterIdentifier = a} :: DBClusterSnapshot)++-- | The Amazon Resource Name (ARN) for the cluster snapshot.+dbClusterSnapshot_dbClusterSnapshotArn :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_dbClusterSnapshotArn = Lens.lens (\DBClusterSnapshot' {dbClusterSnapshotArn} -> dbClusterSnapshotArn) (\s@DBClusterSnapshot' {} a -> s {dbClusterSnapshotArn = a} :: DBClusterSnapshot)++-- | Specifies the identifier for the cluster snapshot.+dbClusterSnapshot_dbClusterSnapshotIdentifier :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_dbClusterSnapshotIdentifier = Lens.lens (\DBClusterSnapshot' {dbClusterSnapshotIdentifier} -> dbClusterSnapshotIdentifier) (\s@DBClusterSnapshot' {} a -> s {dbClusterSnapshotIdentifier = a} :: DBClusterSnapshot)++-- | Specifies the name of the database engine.+dbClusterSnapshot_engine :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_engine = Lens.lens (\DBClusterSnapshot' {engine} -> engine) (\s@DBClusterSnapshot' {} a -> s {engine = a} :: DBClusterSnapshot)++-- | Provides the version of the database engine for this cluster snapshot.+dbClusterSnapshot_engineVersion :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_engineVersion = Lens.lens (\DBClusterSnapshot' {engineVersion} -> engineVersion) (\s@DBClusterSnapshot' {} a -> s {engineVersion = a} :: DBClusterSnapshot)++-- | If @StorageEncrypted@ is @true@, the KMS key identifier for the+-- encrypted cluster snapshot.+dbClusterSnapshot_kmsKeyId :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_kmsKeyId = Lens.lens (\DBClusterSnapshot' {kmsKeyId} -> kmsKeyId) (\s@DBClusterSnapshot' {} a -> s {kmsKeyId = a} :: DBClusterSnapshot)++-- | Provides the master user name for the cluster snapshot.+dbClusterSnapshot_masterUsername :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_masterUsername = Lens.lens (\DBClusterSnapshot' {masterUsername} -> masterUsername) (\s@DBClusterSnapshot' {} a -> s {masterUsername = a} :: DBClusterSnapshot)++-- | Specifies the percentage of the estimated data that has been+-- transferred.+dbClusterSnapshot_percentProgress :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Int)+dbClusterSnapshot_percentProgress = Lens.lens (\DBClusterSnapshot' {percentProgress} -> percentProgress) (\s@DBClusterSnapshot' {} a -> s {percentProgress = a} :: DBClusterSnapshot)++-- | Specifies the port that the cluster was listening on at the time of the+-- snapshot.+dbClusterSnapshot_port :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Int)+dbClusterSnapshot_port = Lens.lens (\DBClusterSnapshot' {port} -> port) (\s@DBClusterSnapshot' {} a -> s {port = a} :: DBClusterSnapshot)++-- | Provides the time when the snapshot was taken, in UTC.+dbClusterSnapshot_snapshotCreateTime :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.UTCTime)+dbClusterSnapshot_snapshotCreateTime = Lens.lens (\DBClusterSnapshot' {snapshotCreateTime} -> snapshotCreateTime) (\s@DBClusterSnapshot' {} a -> s {snapshotCreateTime = a} :: DBClusterSnapshot) Prelude.. Lens.mapping Data._Time++-- | Provides the type of the cluster snapshot.+dbClusterSnapshot_snapshotType :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_snapshotType = Lens.lens (\DBClusterSnapshot' {snapshotType} -> snapshotType) (\s@DBClusterSnapshot' {} a -> s {snapshotType = a} :: DBClusterSnapshot)++-- | If the cluster snapshot was copied from a source cluster snapshot, the+-- ARN for the source cluster snapshot; otherwise, a null value.+dbClusterSnapshot_sourceDBClusterSnapshotArn :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_sourceDBClusterSnapshotArn = Lens.lens (\DBClusterSnapshot' {sourceDBClusterSnapshotArn} -> sourceDBClusterSnapshotArn) (\s@DBClusterSnapshot' {} a -> s {sourceDBClusterSnapshotArn = a} :: DBClusterSnapshot)++-- | Specifies the status of this cluster snapshot.+dbClusterSnapshot_status :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_status = Lens.lens (\DBClusterSnapshot' {status} -> status) (\s@DBClusterSnapshot' {} a -> s {status = a} :: DBClusterSnapshot)++-- | Specifies whether the cluster snapshot is encrypted.+dbClusterSnapshot_storageEncrypted :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Bool)+dbClusterSnapshot_storageEncrypted = Lens.lens (\DBClusterSnapshot' {storageEncrypted} -> storageEncrypted) (\s@DBClusterSnapshot' {} a -> s {storageEncrypted = a} :: DBClusterSnapshot)++-- | Provides the virtual private cloud (VPC) ID that is associated with the+-- cluster snapshot.+dbClusterSnapshot_vpcId :: Lens.Lens' DBClusterSnapshot (Prelude.Maybe Prelude.Text)+dbClusterSnapshot_vpcId = Lens.lens (\DBClusterSnapshot' {vpcId} -> vpcId) (\s@DBClusterSnapshot' {} a -> s {vpcId = a} :: DBClusterSnapshot)++instance Data.FromXML DBClusterSnapshot where+ parseXML x =+ DBClusterSnapshot'+ Prelude.<$> ( x+ Data..@? "AvailabilityZones"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "AvailabilityZone")+ )+ Prelude.<*> (x Data..@? "ClusterCreateTime")+ Prelude.<*> (x Data..@? "DBClusterIdentifier")+ Prelude.<*> (x Data..@? "DBClusterSnapshotArn")+ Prelude.<*> (x Data..@? "DBClusterSnapshotIdentifier")+ Prelude.<*> (x Data..@? "Engine")+ Prelude.<*> (x Data..@? "EngineVersion")+ Prelude.<*> (x Data..@? "KmsKeyId")+ Prelude.<*> (x Data..@? "MasterUsername")+ Prelude.<*> (x Data..@? "PercentProgress")+ Prelude.<*> (x Data..@? "Port")+ Prelude.<*> (x Data..@? "SnapshotCreateTime")+ Prelude.<*> (x Data..@? "SnapshotType")+ Prelude.<*> (x Data..@? "SourceDBClusterSnapshotArn")+ Prelude.<*> (x Data..@? "Status")+ Prelude.<*> (x Data..@? "StorageEncrypted")+ Prelude.<*> (x Data..@? "VpcId")++instance Prelude.Hashable DBClusterSnapshot where+ hashWithSalt _salt DBClusterSnapshot' {..} =+ _salt+ `Prelude.hashWithSalt` availabilityZones+ `Prelude.hashWithSalt` clusterCreateTime+ `Prelude.hashWithSalt` dbClusterIdentifier+ `Prelude.hashWithSalt` dbClusterSnapshotArn+ `Prelude.hashWithSalt` dbClusterSnapshotIdentifier+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` kmsKeyId+ `Prelude.hashWithSalt` masterUsername+ `Prelude.hashWithSalt` percentProgress+ `Prelude.hashWithSalt` port+ `Prelude.hashWithSalt` snapshotCreateTime+ `Prelude.hashWithSalt` snapshotType+ `Prelude.hashWithSalt` sourceDBClusterSnapshotArn+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` storageEncrypted+ `Prelude.hashWithSalt` vpcId++instance Prelude.NFData DBClusterSnapshot where+ rnf DBClusterSnapshot' {..} =+ Prelude.rnf availabilityZones+ `Prelude.seq` Prelude.rnf clusterCreateTime+ `Prelude.seq` Prelude.rnf dbClusterIdentifier+ `Prelude.seq` Prelude.rnf dbClusterSnapshotArn+ `Prelude.seq` Prelude.rnf dbClusterSnapshotIdentifier+ `Prelude.seq` Prelude.rnf engine+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf kmsKeyId+ `Prelude.seq` Prelude.rnf masterUsername+ `Prelude.seq` Prelude.rnf percentProgress+ `Prelude.seq` Prelude.rnf port+ `Prelude.seq` Prelude.rnf snapshotCreateTime+ `Prelude.seq` Prelude.rnf snapshotType+ `Prelude.seq` Prelude.rnf sourceDBClusterSnapshotArn+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf storageEncrypted+ `Prelude.seq` Prelude.rnf vpcId
+ gen/Amazonka/DocumentDB/Types/DBClusterSnapshotAttribute.hs view
@@ -0,0 +1,118 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBClusterSnapshotAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBClusterSnapshotAttribute where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains the name and values of a manual cluster snapshot attribute.+--+-- Manual cluster snapshot attributes are used to authorize other Amazon+-- Web Services accounts to restore a manual cluster snapshot.+--+-- /See:/ 'newDBClusterSnapshotAttribute' smart constructor.+data DBClusterSnapshotAttribute = DBClusterSnapshotAttribute'+ { -- | The name of the manual cluster snapshot attribute.+ --+ -- The attribute named @restore@ refers to the list of Amazon Web Services+ -- accounts that have permission to copy or restore the manual cluster+ -- snapshot.+ attributeName :: Prelude.Maybe Prelude.Text,+ -- | The values for the manual cluster snapshot attribute.+ --+ -- If the @AttributeName@ field is set to @restore@, then this element+ -- returns a list of IDs of the Amazon Web Services accounts that are+ -- authorized to copy or restore the manual cluster snapshot. If a value of+ -- @all@ is in the list, then the manual cluster snapshot is public and+ -- available for any Amazon Web Services account to copy or restore.+ attributeValues :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBClusterSnapshotAttribute' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attributeName', 'dbClusterSnapshotAttribute_attributeName' - The name of the manual cluster snapshot attribute.+--+-- The attribute named @restore@ refers to the list of Amazon Web Services+-- accounts that have permission to copy or restore the manual cluster+-- snapshot.+--+-- 'attributeValues', 'dbClusterSnapshotAttribute_attributeValues' - The values for the manual cluster snapshot attribute.+--+-- If the @AttributeName@ field is set to @restore@, then this element+-- returns a list of IDs of the Amazon Web Services accounts that are+-- authorized to copy or restore the manual cluster snapshot. If a value of+-- @all@ is in the list, then the manual cluster snapshot is public and+-- available for any Amazon Web Services account to copy or restore.+newDBClusterSnapshotAttribute ::+ DBClusterSnapshotAttribute+newDBClusterSnapshotAttribute =+ DBClusterSnapshotAttribute'+ { attributeName =+ Prelude.Nothing,+ attributeValues = Prelude.Nothing+ }++-- | The name of the manual cluster snapshot attribute.+--+-- The attribute named @restore@ refers to the list of Amazon Web Services+-- accounts that have permission to copy or restore the manual cluster+-- snapshot.+dbClusterSnapshotAttribute_attributeName :: Lens.Lens' DBClusterSnapshotAttribute (Prelude.Maybe Prelude.Text)+dbClusterSnapshotAttribute_attributeName = Lens.lens (\DBClusterSnapshotAttribute' {attributeName} -> attributeName) (\s@DBClusterSnapshotAttribute' {} a -> s {attributeName = a} :: DBClusterSnapshotAttribute)++-- | The values for the manual cluster snapshot attribute.+--+-- If the @AttributeName@ field is set to @restore@, then this element+-- returns a list of IDs of the Amazon Web Services accounts that are+-- authorized to copy or restore the manual cluster snapshot. If a value of+-- @all@ is in the list, then the manual cluster snapshot is public and+-- available for any Amazon Web Services account to copy or restore.+dbClusterSnapshotAttribute_attributeValues :: Lens.Lens' DBClusterSnapshotAttribute (Prelude.Maybe [Prelude.Text])+dbClusterSnapshotAttribute_attributeValues = Lens.lens (\DBClusterSnapshotAttribute' {attributeValues} -> attributeValues) (\s@DBClusterSnapshotAttribute' {} a -> s {attributeValues = a} :: DBClusterSnapshotAttribute) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML DBClusterSnapshotAttribute where+ parseXML x =+ DBClusterSnapshotAttribute'+ Prelude.<$> (x Data..@? "AttributeName")+ Prelude.<*> ( x+ Data..@? "AttributeValues"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "AttributeValue")+ )++instance Prelude.Hashable DBClusterSnapshotAttribute where+ hashWithSalt _salt DBClusterSnapshotAttribute' {..} =+ _salt+ `Prelude.hashWithSalt` attributeName+ `Prelude.hashWithSalt` attributeValues++instance Prelude.NFData DBClusterSnapshotAttribute where+ rnf DBClusterSnapshotAttribute' {..} =+ Prelude.rnf attributeName+ `Prelude.seq` Prelude.rnf attributeValues
+ gen/Amazonka/DocumentDB/Types/DBClusterSnapshotAttributesResult.hs view
@@ -0,0 +1,100 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBClusterSnapshotAttributesResult+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBClusterSnapshotAttributesResult where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.DBClusterSnapshotAttribute+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about the attributes that are associated with a+-- cluster snapshot.+--+-- /See:/ 'newDBClusterSnapshotAttributesResult' smart constructor.+data DBClusterSnapshotAttributesResult = DBClusterSnapshotAttributesResult'+ { -- | The list of attributes and values for the cluster snapshot.+ dbClusterSnapshotAttributes :: Prelude.Maybe [DBClusterSnapshotAttribute],+ -- | The identifier of the cluster snapshot that the attributes apply to.+ dbClusterSnapshotIdentifier :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBClusterSnapshotAttributesResult' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterSnapshotAttributes', 'dbClusterSnapshotAttributesResult_dbClusterSnapshotAttributes' - The list of attributes and values for the cluster snapshot.+--+-- 'dbClusterSnapshotIdentifier', 'dbClusterSnapshotAttributesResult_dbClusterSnapshotIdentifier' - The identifier of the cluster snapshot that the attributes apply to.+newDBClusterSnapshotAttributesResult ::+ DBClusterSnapshotAttributesResult+newDBClusterSnapshotAttributesResult =+ DBClusterSnapshotAttributesResult'+ { dbClusterSnapshotAttributes =+ Prelude.Nothing,+ dbClusterSnapshotIdentifier =+ Prelude.Nothing+ }++-- | The list of attributes and values for the cluster snapshot.+dbClusterSnapshotAttributesResult_dbClusterSnapshotAttributes :: Lens.Lens' DBClusterSnapshotAttributesResult (Prelude.Maybe [DBClusterSnapshotAttribute])+dbClusterSnapshotAttributesResult_dbClusterSnapshotAttributes = Lens.lens (\DBClusterSnapshotAttributesResult' {dbClusterSnapshotAttributes} -> dbClusterSnapshotAttributes) (\s@DBClusterSnapshotAttributesResult' {} a -> s {dbClusterSnapshotAttributes = a} :: DBClusterSnapshotAttributesResult) Prelude.. Lens.mapping Lens.coerced++-- | The identifier of the cluster snapshot that the attributes apply to.+dbClusterSnapshotAttributesResult_dbClusterSnapshotIdentifier :: Lens.Lens' DBClusterSnapshotAttributesResult (Prelude.Maybe Prelude.Text)+dbClusterSnapshotAttributesResult_dbClusterSnapshotIdentifier = Lens.lens (\DBClusterSnapshotAttributesResult' {dbClusterSnapshotIdentifier} -> dbClusterSnapshotIdentifier) (\s@DBClusterSnapshotAttributesResult' {} a -> s {dbClusterSnapshotIdentifier = a} :: DBClusterSnapshotAttributesResult)++instance+ Data.FromXML+ DBClusterSnapshotAttributesResult+ where+ parseXML x =+ DBClusterSnapshotAttributesResult'+ Prelude.<$> ( x+ Data..@? "DBClusterSnapshotAttributes"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may+ (Data.parseXMLList "DBClusterSnapshotAttribute")+ )+ Prelude.<*> (x Data..@? "DBClusterSnapshotIdentifier")++instance+ Prelude.Hashable+ DBClusterSnapshotAttributesResult+ where+ hashWithSalt+ _salt+ DBClusterSnapshotAttributesResult' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterSnapshotAttributes+ `Prelude.hashWithSalt` dbClusterSnapshotIdentifier++instance+ Prelude.NFData+ DBClusterSnapshotAttributesResult+ where+ rnf DBClusterSnapshotAttributesResult' {..} =+ Prelude.rnf dbClusterSnapshotAttributes+ `Prelude.seq` Prelude.rnf dbClusterSnapshotIdentifier
+ gen/Amazonka/DocumentDB/Types/DBEngineVersion.hs view
@@ -0,0 +1,171 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBEngineVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBEngineVersion where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.UpgradeTarget+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about an engine version.+--+-- /See:/ 'newDBEngineVersion' smart constructor.+data DBEngineVersion = DBEngineVersion'+ { -- | The description of the database engine.+ dbEngineDescription :: Prelude.Maybe Prelude.Text,+ -- | The description of the database engine version.+ dbEngineVersionDescription :: Prelude.Maybe Prelude.Text,+ -- | The name of the parameter group family for the database engine.+ dbParameterGroupFamily :: Prelude.Maybe Prelude.Text,+ -- | The name of the database engine.+ engine :: Prelude.Maybe Prelude.Text,+ -- | The version number of the database engine.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | The types of logs that the database engine has available for export to+ -- Amazon CloudWatch Logs.+ exportableLogTypes :: Prelude.Maybe [Prelude.Text],+ -- | A value that indicates whether the engine version supports exporting the+ -- log types specified by @ExportableLogTypes@ to CloudWatch Logs.+ supportsLogExportsToCloudwatchLogs :: Prelude.Maybe Prelude.Bool,+ -- | A list of engine versions that this database engine version can be+ -- upgraded to.+ validUpgradeTarget :: Prelude.Maybe [UpgradeTarget]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBEngineVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbEngineDescription', 'dbEngineVersion_dbEngineDescription' - The description of the database engine.+--+-- 'dbEngineVersionDescription', 'dbEngineVersion_dbEngineVersionDescription' - The description of the database engine version.+--+-- 'dbParameterGroupFamily', 'dbEngineVersion_dbParameterGroupFamily' - The name of the parameter group family for the database engine.+--+-- 'engine', 'dbEngineVersion_engine' - The name of the database engine.+--+-- 'engineVersion', 'dbEngineVersion_engineVersion' - The version number of the database engine.+--+-- 'exportableLogTypes', 'dbEngineVersion_exportableLogTypes' - The types of logs that the database engine has available for export to+-- Amazon CloudWatch Logs.+--+-- 'supportsLogExportsToCloudwatchLogs', 'dbEngineVersion_supportsLogExportsToCloudwatchLogs' - A value that indicates whether the engine version supports exporting the+-- log types specified by @ExportableLogTypes@ to CloudWatch Logs.+--+-- 'validUpgradeTarget', 'dbEngineVersion_validUpgradeTarget' - A list of engine versions that this database engine version can be+-- upgraded to.+newDBEngineVersion ::+ DBEngineVersion+newDBEngineVersion =+ DBEngineVersion'+ { dbEngineDescription =+ Prelude.Nothing,+ dbEngineVersionDescription = Prelude.Nothing,+ dbParameterGroupFamily = Prelude.Nothing,+ engine = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ exportableLogTypes = Prelude.Nothing,+ supportsLogExportsToCloudwatchLogs = Prelude.Nothing,+ validUpgradeTarget = Prelude.Nothing+ }++-- | The description of the database engine.+dbEngineVersion_dbEngineDescription :: Lens.Lens' DBEngineVersion (Prelude.Maybe Prelude.Text)+dbEngineVersion_dbEngineDescription = Lens.lens (\DBEngineVersion' {dbEngineDescription} -> dbEngineDescription) (\s@DBEngineVersion' {} a -> s {dbEngineDescription = a} :: DBEngineVersion)++-- | The description of the database engine version.+dbEngineVersion_dbEngineVersionDescription :: Lens.Lens' DBEngineVersion (Prelude.Maybe Prelude.Text)+dbEngineVersion_dbEngineVersionDescription = Lens.lens (\DBEngineVersion' {dbEngineVersionDescription} -> dbEngineVersionDescription) (\s@DBEngineVersion' {} a -> s {dbEngineVersionDescription = a} :: DBEngineVersion)++-- | The name of the parameter group family for the database engine.+dbEngineVersion_dbParameterGroupFamily :: Lens.Lens' DBEngineVersion (Prelude.Maybe Prelude.Text)+dbEngineVersion_dbParameterGroupFamily = Lens.lens (\DBEngineVersion' {dbParameterGroupFamily} -> dbParameterGroupFamily) (\s@DBEngineVersion' {} a -> s {dbParameterGroupFamily = a} :: DBEngineVersion)++-- | The name of the database engine.+dbEngineVersion_engine :: Lens.Lens' DBEngineVersion (Prelude.Maybe Prelude.Text)+dbEngineVersion_engine = Lens.lens (\DBEngineVersion' {engine} -> engine) (\s@DBEngineVersion' {} a -> s {engine = a} :: DBEngineVersion)++-- | The version number of the database engine.+dbEngineVersion_engineVersion :: Lens.Lens' DBEngineVersion (Prelude.Maybe Prelude.Text)+dbEngineVersion_engineVersion = Lens.lens (\DBEngineVersion' {engineVersion} -> engineVersion) (\s@DBEngineVersion' {} a -> s {engineVersion = a} :: DBEngineVersion)++-- | The types of logs that the database engine has available for export to+-- Amazon CloudWatch Logs.+dbEngineVersion_exportableLogTypes :: Lens.Lens' DBEngineVersion (Prelude.Maybe [Prelude.Text])+dbEngineVersion_exportableLogTypes = Lens.lens (\DBEngineVersion' {exportableLogTypes} -> exportableLogTypes) (\s@DBEngineVersion' {} a -> s {exportableLogTypes = a} :: DBEngineVersion) Prelude.. Lens.mapping Lens.coerced++-- | A value that indicates whether the engine version supports exporting the+-- log types specified by @ExportableLogTypes@ to CloudWatch Logs.+dbEngineVersion_supportsLogExportsToCloudwatchLogs :: Lens.Lens' DBEngineVersion (Prelude.Maybe Prelude.Bool)+dbEngineVersion_supportsLogExportsToCloudwatchLogs = Lens.lens (\DBEngineVersion' {supportsLogExportsToCloudwatchLogs} -> supportsLogExportsToCloudwatchLogs) (\s@DBEngineVersion' {} a -> s {supportsLogExportsToCloudwatchLogs = a} :: DBEngineVersion)++-- | A list of engine versions that this database engine version can be+-- upgraded to.+dbEngineVersion_validUpgradeTarget :: Lens.Lens' DBEngineVersion (Prelude.Maybe [UpgradeTarget])+dbEngineVersion_validUpgradeTarget = Lens.lens (\DBEngineVersion' {validUpgradeTarget} -> validUpgradeTarget) (\s@DBEngineVersion' {} a -> s {validUpgradeTarget = a} :: DBEngineVersion) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML DBEngineVersion where+ parseXML x =+ DBEngineVersion'+ Prelude.<$> (x Data..@? "DBEngineDescription")+ Prelude.<*> (x Data..@? "DBEngineVersionDescription")+ Prelude.<*> (x Data..@? "DBParameterGroupFamily")+ Prelude.<*> (x Data..@? "Engine")+ Prelude.<*> (x Data..@? "EngineVersion")+ Prelude.<*> ( x+ Data..@? "ExportableLogTypes"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "SupportsLogExportsToCloudwatchLogs")+ Prelude.<*> ( x+ Data..@? "ValidUpgradeTarget"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "UpgradeTarget")+ )++instance Prelude.Hashable DBEngineVersion where+ hashWithSalt _salt DBEngineVersion' {..} =+ _salt+ `Prelude.hashWithSalt` dbEngineDescription+ `Prelude.hashWithSalt` dbEngineVersionDescription+ `Prelude.hashWithSalt` dbParameterGroupFamily+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` exportableLogTypes+ `Prelude.hashWithSalt` supportsLogExportsToCloudwatchLogs+ `Prelude.hashWithSalt` validUpgradeTarget++instance Prelude.NFData DBEngineVersion where+ rnf DBEngineVersion' {..} =+ Prelude.rnf dbEngineDescription+ `Prelude.seq` Prelude.rnf dbEngineVersionDescription+ `Prelude.seq` Prelude.rnf dbParameterGroupFamily+ `Prelude.seq` Prelude.rnf engine+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf exportableLogTypes+ `Prelude.seq` Prelude.rnf supportsLogExportsToCloudwatchLogs+ `Prelude.seq` Prelude.rnf validUpgradeTarget
+ gen/Amazonka/DocumentDB/Types/DBInstance.hs view
@@ -0,0 +1,479 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBInstance+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBInstance where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.DBInstanceStatusInfo+import Amazonka.DocumentDB.Types.DBSubnetGroup+import Amazonka.DocumentDB.Types.Endpoint+import Amazonka.DocumentDB.Types.PendingModifiedValues+import Amazonka.DocumentDB.Types.VpcSecurityGroupMembership+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about an instance.+--+-- /See:/ 'newDBInstance' smart constructor.+data DBInstance = DBInstance'+ { -- | Does not apply. This parameter does not apply to Amazon DocumentDB.+ -- Amazon DocumentDB does not perform minor version upgrades regardless of+ -- the value set.+ autoMinorVersionUpgrade :: Prelude.Maybe Prelude.Bool,+ -- | Specifies the name of the Availability Zone that the instance is located+ -- in.+ availabilityZone :: Prelude.Maybe Prelude.Text,+ -- | Specifies the number of days for which automatic snapshots are retained.+ backupRetentionPeriod :: Prelude.Maybe Prelude.Int,+ -- | The identifier of the CA certificate for this DB instance.+ cACertificateIdentifier :: Prelude.Maybe Prelude.Text,+ -- | A value that indicates whether to copy tags from the DB instance to+ -- snapshots of the DB instance. By default, tags are not copied.+ copyTagsToSnapshot :: Prelude.Maybe Prelude.Bool,+ -- | Contains the name of the cluster that the instance is a member of if the+ -- instance is a member of a cluster.+ dbClusterIdentifier :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) for the instance.+ dbInstanceArn :: Prelude.Maybe Prelude.Text,+ -- | Contains the name of the compute and memory capacity class of the+ -- instance.+ dbInstanceClass :: Prelude.Maybe Prelude.Text,+ -- | Contains a user-provided database identifier. This identifier is the+ -- unique key that identifies an instance.+ dbInstanceIdentifier :: Prelude.Maybe Prelude.Text,+ -- | Specifies the current state of this database.+ dbInstanceStatus :: Prelude.Maybe Prelude.Text,+ -- | Specifies information on the subnet group that is associated with the+ -- instance, including the name, description, and subnets in the subnet+ -- group.+ dbSubnetGroup :: Prelude.Maybe DBSubnetGroup,+ -- | The Amazon Web Services Region-unique, immutable identifier for the+ -- instance. This identifier is found in CloudTrail log entries whenever+ -- the KMS key for the instance is accessed.+ dbiResourceId :: Prelude.Maybe Prelude.Text,+ -- | A list of log types that this instance is configured to export to+ -- CloudWatch Logs.+ enabledCloudwatchLogsExports :: Prelude.Maybe [Prelude.Text],+ -- | Specifies the connection endpoint.+ endpoint :: Prelude.Maybe Endpoint,+ -- | Provides the name of the database engine to be used for this instance.+ engine :: Prelude.Maybe Prelude.Text,+ -- | Indicates the database engine version.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | Provides the date and time that the instance was created.+ instanceCreateTime :: Prelude.Maybe Data.ISO8601,+ -- | If @StorageEncrypted@ is @true@, the KMS key identifier for the+ -- encrypted instance.+ kmsKeyId :: Prelude.Maybe Prelude.Text,+ -- | Specifies the latest time to which a database can be restored with+ -- point-in-time restore.+ latestRestorableTime :: Prelude.Maybe Data.ISO8601,+ -- | Specifies that changes to the instance are pending. This element is+ -- included only when changes are pending. Specific changes are identified+ -- by subelements.+ pendingModifiedValues :: Prelude.Maybe PendingModifiedValues,+ -- | Specifies the daily time range during which automated backups are+ -- created if automated backups are enabled, as determined by the+ -- @BackupRetentionPeriod@.+ preferredBackupWindow :: Prelude.Maybe Prelude.Text,+ -- | Specifies the weekly time range during which system maintenance can+ -- occur, in Universal Coordinated Time (UTC).+ preferredMaintenanceWindow :: Prelude.Maybe Prelude.Text,+ -- | A value that specifies the order in which an Amazon DocumentDB replica+ -- is promoted to the primary instance after a failure of the existing+ -- primary instance.+ promotionTier :: Prelude.Maybe Prelude.Int,+ -- | Not supported. Amazon DocumentDB does not currently support public+ -- endpoints. The value of @PubliclyAccessible@ is always @false@.+ publiclyAccessible :: Prelude.Maybe Prelude.Bool,+ -- | The status of a read replica. If the instance is not a read replica,+ -- this is blank.+ statusInfos :: Prelude.Maybe [DBInstanceStatusInfo],+ -- | Specifies whether or not the instance is encrypted.+ storageEncrypted :: Prelude.Maybe Prelude.Bool,+ -- | Provides a list of VPC security group elements that the instance belongs+ -- to.+ vpcSecurityGroups :: Prelude.Maybe [VpcSecurityGroupMembership]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBInstance' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'autoMinorVersionUpgrade', 'dbInstance_autoMinorVersionUpgrade' - Does not apply. This parameter does not apply to Amazon DocumentDB.+-- Amazon DocumentDB does not perform minor version upgrades regardless of+-- the value set.+--+-- 'availabilityZone', 'dbInstance_availabilityZone' - Specifies the name of the Availability Zone that the instance is located+-- in.+--+-- 'backupRetentionPeriod', 'dbInstance_backupRetentionPeriod' - Specifies the number of days for which automatic snapshots are retained.+--+-- 'cACertificateIdentifier', 'dbInstance_cACertificateIdentifier' - The identifier of the CA certificate for this DB instance.+--+-- 'copyTagsToSnapshot', 'dbInstance_copyTagsToSnapshot' - A value that indicates whether to copy tags from the DB instance to+-- snapshots of the DB instance. By default, tags are not copied.+--+-- 'dbClusterIdentifier', 'dbInstance_dbClusterIdentifier' - Contains the name of the cluster that the instance is a member of if the+-- instance is a member of a cluster.+--+-- 'dbInstanceArn', 'dbInstance_dbInstanceArn' - The Amazon Resource Name (ARN) for the instance.+--+-- 'dbInstanceClass', 'dbInstance_dbInstanceClass' - Contains the name of the compute and memory capacity class of the+-- instance.+--+-- 'dbInstanceIdentifier', 'dbInstance_dbInstanceIdentifier' - Contains a user-provided database identifier. This identifier is the+-- unique key that identifies an instance.+--+-- 'dbInstanceStatus', 'dbInstance_dbInstanceStatus' - Specifies the current state of this database.+--+-- 'dbSubnetGroup', 'dbInstance_dbSubnetGroup' - Specifies information on the subnet group that is associated with the+-- instance, including the name, description, and subnets in the subnet+-- group.+--+-- 'dbiResourceId', 'dbInstance_dbiResourceId' - The Amazon Web Services Region-unique, immutable identifier for the+-- instance. This identifier is found in CloudTrail log entries whenever+-- the KMS key for the instance is accessed.+--+-- 'enabledCloudwatchLogsExports', 'dbInstance_enabledCloudwatchLogsExports' - A list of log types that this instance is configured to export to+-- CloudWatch Logs.+--+-- 'endpoint', 'dbInstance_endpoint' - Specifies the connection endpoint.+--+-- 'engine', 'dbInstance_engine' - Provides the name of the database engine to be used for this instance.+--+-- 'engineVersion', 'dbInstance_engineVersion' - Indicates the database engine version.+--+-- 'instanceCreateTime', 'dbInstance_instanceCreateTime' - Provides the date and time that the instance was created.+--+-- 'kmsKeyId', 'dbInstance_kmsKeyId' - If @StorageEncrypted@ is @true@, the KMS key identifier for the+-- encrypted instance.+--+-- 'latestRestorableTime', 'dbInstance_latestRestorableTime' - Specifies the latest time to which a database can be restored with+-- point-in-time restore.+--+-- 'pendingModifiedValues', 'dbInstance_pendingModifiedValues' - Specifies that changes to the instance are pending. This element is+-- included only when changes are pending. Specific changes are identified+-- by subelements.+--+-- 'preferredBackupWindow', 'dbInstance_preferredBackupWindow' - Specifies the daily time range during which automated backups are+-- created if automated backups are enabled, as determined by the+-- @BackupRetentionPeriod@.+--+-- 'preferredMaintenanceWindow', 'dbInstance_preferredMaintenanceWindow' - Specifies the weekly time range during which system maintenance can+-- occur, in Universal Coordinated Time (UTC).+--+-- 'promotionTier', 'dbInstance_promotionTier' - A value that specifies the order in which an Amazon DocumentDB replica+-- is promoted to the primary instance after a failure of the existing+-- primary instance.+--+-- 'publiclyAccessible', 'dbInstance_publiclyAccessible' - Not supported. Amazon DocumentDB does not currently support public+-- endpoints. The value of @PubliclyAccessible@ is always @false@.+--+-- 'statusInfos', 'dbInstance_statusInfos' - The status of a read replica. If the instance is not a read replica,+-- this is blank.+--+-- 'storageEncrypted', 'dbInstance_storageEncrypted' - Specifies whether or not the instance is encrypted.+--+-- 'vpcSecurityGroups', 'dbInstance_vpcSecurityGroups' - Provides a list of VPC security group elements that the instance belongs+-- to.+newDBInstance ::+ DBInstance+newDBInstance =+ DBInstance'+ { autoMinorVersionUpgrade =+ Prelude.Nothing,+ availabilityZone = Prelude.Nothing,+ backupRetentionPeriod = Prelude.Nothing,+ cACertificateIdentifier = Prelude.Nothing,+ copyTagsToSnapshot = Prelude.Nothing,+ dbClusterIdentifier = Prelude.Nothing,+ dbInstanceArn = Prelude.Nothing,+ dbInstanceClass = Prelude.Nothing,+ dbInstanceIdentifier = Prelude.Nothing,+ dbInstanceStatus = Prelude.Nothing,+ dbSubnetGroup = Prelude.Nothing,+ dbiResourceId = Prelude.Nothing,+ enabledCloudwatchLogsExports = Prelude.Nothing,+ endpoint = Prelude.Nothing,+ engine = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ instanceCreateTime = Prelude.Nothing,+ kmsKeyId = Prelude.Nothing,+ latestRestorableTime = Prelude.Nothing,+ pendingModifiedValues = Prelude.Nothing,+ preferredBackupWindow = Prelude.Nothing,+ preferredMaintenanceWindow = Prelude.Nothing,+ promotionTier = Prelude.Nothing,+ publiclyAccessible = Prelude.Nothing,+ statusInfos = Prelude.Nothing,+ storageEncrypted = Prelude.Nothing,+ vpcSecurityGroups = Prelude.Nothing+ }++-- | Does not apply. This parameter does not apply to Amazon DocumentDB.+-- Amazon DocumentDB does not perform minor version upgrades regardless of+-- the value set.+dbInstance_autoMinorVersionUpgrade :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Bool)+dbInstance_autoMinorVersionUpgrade = Lens.lens (\DBInstance' {autoMinorVersionUpgrade} -> autoMinorVersionUpgrade) (\s@DBInstance' {} a -> s {autoMinorVersionUpgrade = a} :: DBInstance)++-- | Specifies the name of the Availability Zone that the instance is located+-- in.+dbInstance_availabilityZone :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_availabilityZone = Lens.lens (\DBInstance' {availabilityZone} -> availabilityZone) (\s@DBInstance' {} a -> s {availabilityZone = a} :: DBInstance)++-- | Specifies the number of days for which automatic snapshots are retained.+dbInstance_backupRetentionPeriod :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Int)+dbInstance_backupRetentionPeriod = Lens.lens (\DBInstance' {backupRetentionPeriod} -> backupRetentionPeriod) (\s@DBInstance' {} a -> s {backupRetentionPeriod = a} :: DBInstance)++-- | The identifier of the CA certificate for this DB instance.+dbInstance_cACertificateIdentifier :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_cACertificateIdentifier = Lens.lens (\DBInstance' {cACertificateIdentifier} -> cACertificateIdentifier) (\s@DBInstance' {} a -> s {cACertificateIdentifier = a} :: DBInstance)++-- | A value that indicates whether to copy tags from the DB instance to+-- snapshots of the DB instance. By default, tags are not copied.+dbInstance_copyTagsToSnapshot :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Bool)+dbInstance_copyTagsToSnapshot = Lens.lens (\DBInstance' {copyTagsToSnapshot} -> copyTagsToSnapshot) (\s@DBInstance' {} a -> s {copyTagsToSnapshot = a} :: DBInstance)++-- | Contains the name of the cluster that the instance is a member of if the+-- instance is a member of a cluster.+dbInstance_dbClusterIdentifier :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_dbClusterIdentifier = Lens.lens (\DBInstance' {dbClusterIdentifier} -> dbClusterIdentifier) (\s@DBInstance' {} a -> s {dbClusterIdentifier = a} :: DBInstance)++-- | The Amazon Resource Name (ARN) for the instance.+dbInstance_dbInstanceArn :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_dbInstanceArn = Lens.lens (\DBInstance' {dbInstanceArn} -> dbInstanceArn) (\s@DBInstance' {} a -> s {dbInstanceArn = a} :: DBInstance)++-- | Contains the name of the compute and memory capacity class of the+-- instance.+dbInstance_dbInstanceClass :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_dbInstanceClass = Lens.lens (\DBInstance' {dbInstanceClass} -> dbInstanceClass) (\s@DBInstance' {} a -> s {dbInstanceClass = a} :: DBInstance)++-- | Contains a user-provided database identifier. This identifier is the+-- unique key that identifies an instance.+dbInstance_dbInstanceIdentifier :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_dbInstanceIdentifier = Lens.lens (\DBInstance' {dbInstanceIdentifier} -> dbInstanceIdentifier) (\s@DBInstance' {} a -> s {dbInstanceIdentifier = a} :: DBInstance)++-- | Specifies the current state of this database.+dbInstance_dbInstanceStatus :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_dbInstanceStatus = Lens.lens (\DBInstance' {dbInstanceStatus} -> dbInstanceStatus) (\s@DBInstance' {} a -> s {dbInstanceStatus = a} :: DBInstance)++-- | Specifies information on the subnet group that is associated with the+-- instance, including the name, description, and subnets in the subnet+-- group.+dbInstance_dbSubnetGroup :: Lens.Lens' DBInstance (Prelude.Maybe DBSubnetGroup)+dbInstance_dbSubnetGroup = Lens.lens (\DBInstance' {dbSubnetGroup} -> dbSubnetGroup) (\s@DBInstance' {} a -> s {dbSubnetGroup = a} :: DBInstance)++-- | The Amazon Web Services Region-unique, immutable identifier for the+-- instance. This identifier is found in CloudTrail log entries whenever+-- the KMS key for the instance is accessed.+dbInstance_dbiResourceId :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_dbiResourceId = Lens.lens (\DBInstance' {dbiResourceId} -> dbiResourceId) (\s@DBInstance' {} a -> s {dbiResourceId = a} :: DBInstance)++-- | A list of log types that this instance is configured to export to+-- CloudWatch Logs.+dbInstance_enabledCloudwatchLogsExports :: Lens.Lens' DBInstance (Prelude.Maybe [Prelude.Text])+dbInstance_enabledCloudwatchLogsExports = Lens.lens (\DBInstance' {enabledCloudwatchLogsExports} -> enabledCloudwatchLogsExports) (\s@DBInstance' {} a -> s {enabledCloudwatchLogsExports = a} :: DBInstance) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the connection endpoint.+dbInstance_endpoint :: Lens.Lens' DBInstance (Prelude.Maybe Endpoint)+dbInstance_endpoint = Lens.lens (\DBInstance' {endpoint} -> endpoint) (\s@DBInstance' {} a -> s {endpoint = a} :: DBInstance)++-- | Provides the name of the database engine to be used for this instance.+dbInstance_engine :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_engine = Lens.lens (\DBInstance' {engine} -> engine) (\s@DBInstance' {} a -> s {engine = a} :: DBInstance)++-- | Indicates the database engine version.+dbInstance_engineVersion :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_engineVersion = Lens.lens (\DBInstance' {engineVersion} -> engineVersion) (\s@DBInstance' {} a -> s {engineVersion = a} :: DBInstance)++-- | Provides the date and time that the instance was created.+dbInstance_instanceCreateTime :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.UTCTime)+dbInstance_instanceCreateTime = Lens.lens (\DBInstance' {instanceCreateTime} -> instanceCreateTime) (\s@DBInstance' {} a -> s {instanceCreateTime = a} :: DBInstance) Prelude.. Lens.mapping Data._Time++-- | If @StorageEncrypted@ is @true@, the KMS key identifier for the+-- encrypted instance.+dbInstance_kmsKeyId :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_kmsKeyId = Lens.lens (\DBInstance' {kmsKeyId} -> kmsKeyId) (\s@DBInstance' {} a -> s {kmsKeyId = a} :: DBInstance)++-- | Specifies the latest time to which a database can be restored with+-- point-in-time restore.+dbInstance_latestRestorableTime :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.UTCTime)+dbInstance_latestRestorableTime = Lens.lens (\DBInstance' {latestRestorableTime} -> latestRestorableTime) (\s@DBInstance' {} a -> s {latestRestorableTime = a} :: DBInstance) Prelude.. Lens.mapping Data._Time++-- | Specifies that changes to the instance are pending. This element is+-- included only when changes are pending. Specific changes are identified+-- by subelements.+dbInstance_pendingModifiedValues :: Lens.Lens' DBInstance (Prelude.Maybe PendingModifiedValues)+dbInstance_pendingModifiedValues = Lens.lens (\DBInstance' {pendingModifiedValues} -> pendingModifiedValues) (\s@DBInstance' {} a -> s {pendingModifiedValues = a} :: DBInstance)++-- | Specifies the daily time range during which automated backups are+-- created if automated backups are enabled, as determined by the+-- @BackupRetentionPeriod@.+dbInstance_preferredBackupWindow :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_preferredBackupWindow = Lens.lens (\DBInstance' {preferredBackupWindow} -> preferredBackupWindow) (\s@DBInstance' {} a -> s {preferredBackupWindow = a} :: DBInstance)++-- | Specifies the weekly time range during which system maintenance can+-- occur, in Universal Coordinated Time (UTC).+dbInstance_preferredMaintenanceWindow :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Text)+dbInstance_preferredMaintenanceWindow = Lens.lens (\DBInstance' {preferredMaintenanceWindow} -> preferredMaintenanceWindow) (\s@DBInstance' {} a -> s {preferredMaintenanceWindow = a} :: DBInstance)++-- | A value that specifies the order in which an Amazon DocumentDB replica+-- is promoted to the primary instance after a failure of the existing+-- primary instance.+dbInstance_promotionTier :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Int)+dbInstance_promotionTier = Lens.lens (\DBInstance' {promotionTier} -> promotionTier) (\s@DBInstance' {} a -> s {promotionTier = a} :: DBInstance)++-- | Not supported. Amazon DocumentDB does not currently support public+-- endpoints. The value of @PubliclyAccessible@ is always @false@.+dbInstance_publiclyAccessible :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Bool)+dbInstance_publiclyAccessible = Lens.lens (\DBInstance' {publiclyAccessible} -> publiclyAccessible) (\s@DBInstance' {} a -> s {publiclyAccessible = a} :: DBInstance)++-- | The status of a read replica. If the instance is not a read replica,+-- this is blank.+dbInstance_statusInfos :: Lens.Lens' DBInstance (Prelude.Maybe [DBInstanceStatusInfo])+dbInstance_statusInfos = Lens.lens (\DBInstance' {statusInfos} -> statusInfos) (\s@DBInstance' {} a -> s {statusInfos = a} :: DBInstance) Prelude.. Lens.mapping Lens.coerced++-- | Specifies whether or not the instance is encrypted.+dbInstance_storageEncrypted :: Lens.Lens' DBInstance (Prelude.Maybe Prelude.Bool)+dbInstance_storageEncrypted = Lens.lens (\DBInstance' {storageEncrypted} -> storageEncrypted) (\s@DBInstance' {} a -> s {storageEncrypted = a} :: DBInstance)++-- | Provides a list of VPC security group elements that the instance belongs+-- to.+dbInstance_vpcSecurityGroups :: Lens.Lens' DBInstance (Prelude.Maybe [VpcSecurityGroupMembership])+dbInstance_vpcSecurityGroups = Lens.lens (\DBInstance' {vpcSecurityGroups} -> vpcSecurityGroups) (\s@DBInstance' {} a -> s {vpcSecurityGroups = a} :: DBInstance) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML DBInstance where+ parseXML x =+ DBInstance'+ Prelude.<$> (x Data..@? "AutoMinorVersionUpgrade")+ Prelude.<*> (x Data..@? "AvailabilityZone")+ Prelude.<*> (x Data..@? "BackupRetentionPeriod")+ Prelude.<*> (x Data..@? "CACertificateIdentifier")+ Prelude.<*> (x Data..@? "CopyTagsToSnapshot")+ Prelude.<*> (x Data..@? "DBClusterIdentifier")+ Prelude.<*> (x Data..@? "DBInstanceArn")+ Prelude.<*> (x Data..@? "DBInstanceClass")+ Prelude.<*> (x Data..@? "DBInstanceIdentifier")+ Prelude.<*> (x Data..@? "DBInstanceStatus")+ Prelude.<*> (x Data..@? "DBSubnetGroup")+ Prelude.<*> (x Data..@? "DbiResourceId")+ Prelude.<*> ( x+ Data..@? "EnabledCloudwatchLogsExports"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "Endpoint")+ Prelude.<*> (x Data..@? "Engine")+ Prelude.<*> (x Data..@? "EngineVersion")+ Prelude.<*> (x Data..@? "InstanceCreateTime")+ Prelude.<*> (x Data..@? "KmsKeyId")+ Prelude.<*> (x Data..@? "LatestRestorableTime")+ Prelude.<*> (x Data..@? "PendingModifiedValues")+ Prelude.<*> (x Data..@? "PreferredBackupWindow")+ Prelude.<*> (x Data..@? "PreferredMaintenanceWindow")+ Prelude.<*> (x Data..@? "PromotionTier")+ Prelude.<*> (x Data..@? "PubliclyAccessible")+ Prelude.<*> ( x+ Data..@? "StatusInfos"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "DBInstanceStatusInfo")+ )+ Prelude.<*> (x Data..@? "StorageEncrypted")+ Prelude.<*> ( x+ Data..@? "VpcSecurityGroups"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may+ (Data.parseXMLList "VpcSecurityGroupMembership")+ )++instance Prelude.Hashable DBInstance where+ hashWithSalt _salt DBInstance' {..} =+ _salt+ `Prelude.hashWithSalt` autoMinorVersionUpgrade+ `Prelude.hashWithSalt` availabilityZone+ `Prelude.hashWithSalt` backupRetentionPeriod+ `Prelude.hashWithSalt` cACertificateIdentifier+ `Prelude.hashWithSalt` copyTagsToSnapshot+ `Prelude.hashWithSalt` dbClusterIdentifier+ `Prelude.hashWithSalt` dbInstanceArn+ `Prelude.hashWithSalt` dbInstanceClass+ `Prelude.hashWithSalt` dbInstanceIdentifier+ `Prelude.hashWithSalt` dbInstanceStatus+ `Prelude.hashWithSalt` dbSubnetGroup+ `Prelude.hashWithSalt` dbiResourceId+ `Prelude.hashWithSalt` enabledCloudwatchLogsExports+ `Prelude.hashWithSalt` endpoint+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` instanceCreateTime+ `Prelude.hashWithSalt` kmsKeyId+ `Prelude.hashWithSalt` latestRestorableTime+ `Prelude.hashWithSalt` pendingModifiedValues+ `Prelude.hashWithSalt` preferredBackupWindow+ `Prelude.hashWithSalt` preferredMaintenanceWindow+ `Prelude.hashWithSalt` promotionTier+ `Prelude.hashWithSalt` publiclyAccessible+ `Prelude.hashWithSalt` statusInfos+ `Prelude.hashWithSalt` storageEncrypted+ `Prelude.hashWithSalt` vpcSecurityGroups++instance Prelude.NFData DBInstance where+ rnf DBInstance' {..} =+ Prelude.rnf autoMinorVersionUpgrade+ `Prelude.seq` Prelude.rnf availabilityZone+ `Prelude.seq` Prelude.rnf backupRetentionPeriod+ `Prelude.seq` Prelude.rnf cACertificateIdentifier+ `Prelude.seq` Prelude.rnf copyTagsToSnapshot+ `Prelude.seq` Prelude.rnf dbClusterIdentifier+ `Prelude.seq` Prelude.rnf dbInstanceArn+ `Prelude.seq` Prelude.rnf dbInstanceClass+ `Prelude.seq` Prelude.rnf dbInstanceIdentifier+ `Prelude.seq` Prelude.rnf dbInstanceStatus+ `Prelude.seq` Prelude.rnf dbSubnetGroup+ `Prelude.seq` Prelude.rnf dbiResourceId+ `Prelude.seq` Prelude.rnf enabledCloudwatchLogsExports+ `Prelude.seq` Prelude.rnf endpoint+ `Prelude.seq` Prelude.rnf engine+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf instanceCreateTime+ `Prelude.seq` Prelude.rnf kmsKeyId+ `Prelude.seq` Prelude.rnf latestRestorableTime+ `Prelude.seq` Prelude.rnf+ pendingModifiedValues+ `Prelude.seq` Prelude.rnf+ preferredBackupWindow+ `Prelude.seq` Prelude.rnf+ preferredMaintenanceWindow+ `Prelude.seq` Prelude.rnf+ promotionTier+ `Prelude.seq` Prelude.rnf+ publiclyAccessible+ `Prelude.seq` Prelude.rnf+ statusInfos+ `Prelude.seq` Prelude.rnf+ storageEncrypted+ `Prelude.seq` Prelude.rnf+ vpcSecurityGroups
+ gen/Amazonka/DocumentDB/Types/DBInstanceStatusInfo.hs view
@@ -0,0 +1,113 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBInstanceStatusInfo+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBInstanceStatusInfo where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides a list of status information for an instance.+--+-- /See:/ 'newDBInstanceStatusInfo' smart constructor.+data DBInstanceStatusInfo = DBInstanceStatusInfo'+ { -- | Details of the error if there is an error for the instance. If the+ -- instance is not in an error state, this value is blank.+ message :: Prelude.Maybe Prelude.Text,+ -- | A Boolean value that is @true@ if the instance is operating normally, or+ -- @false@ if the instance is in an error state.+ normal :: Prelude.Maybe Prelude.Bool,+ -- | Status of the instance. For a @StatusType@ of read replica, the values+ -- can be @replicating@, error, @stopped@, or @terminated@.+ status :: Prelude.Maybe Prelude.Text,+ -- | This value is currently \"@read replication@.\"+ statusType :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBInstanceStatusInfo' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'message', 'dbInstanceStatusInfo_message' - Details of the error if there is an error for the instance. If the+-- instance is not in an error state, this value is blank.+--+-- 'normal', 'dbInstanceStatusInfo_normal' - A Boolean value that is @true@ if the instance is operating normally, or+-- @false@ if the instance is in an error state.+--+-- 'status', 'dbInstanceStatusInfo_status' - Status of the instance. For a @StatusType@ of read replica, the values+-- can be @replicating@, error, @stopped@, or @terminated@.+--+-- 'statusType', 'dbInstanceStatusInfo_statusType' - This value is currently \"@read replication@.\"+newDBInstanceStatusInfo ::+ DBInstanceStatusInfo+newDBInstanceStatusInfo =+ DBInstanceStatusInfo'+ { message = Prelude.Nothing,+ normal = Prelude.Nothing,+ status = Prelude.Nothing,+ statusType = Prelude.Nothing+ }++-- | Details of the error if there is an error for the instance. If the+-- instance is not in an error state, this value is blank.+dbInstanceStatusInfo_message :: Lens.Lens' DBInstanceStatusInfo (Prelude.Maybe Prelude.Text)+dbInstanceStatusInfo_message = Lens.lens (\DBInstanceStatusInfo' {message} -> message) (\s@DBInstanceStatusInfo' {} a -> s {message = a} :: DBInstanceStatusInfo)++-- | A Boolean value that is @true@ if the instance is operating normally, or+-- @false@ if the instance is in an error state.+dbInstanceStatusInfo_normal :: Lens.Lens' DBInstanceStatusInfo (Prelude.Maybe Prelude.Bool)+dbInstanceStatusInfo_normal = Lens.lens (\DBInstanceStatusInfo' {normal} -> normal) (\s@DBInstanceStatusInfo' {} a -> s {normal = a} :: DBInstanceStatusInfo)++-- | Status of the instance. For a @StatusType@ of read replica, the values+-- can be @replicating@, error, @stopped@, or @terminated@.+dbInstanceStatusInfo_status :: Lens.Lens' DBInstanceStatusInfo (Prelude.Maybe Prelude.Text)+dbInstanceStatusInfo_status = Lens.lens (\DBInstanceStatusInfo' {status} -> status) (\s@DBInstanceStatusInfo' {} a -> s {status = a} :: DBInstanceStatusInfo)++-- | This value is currently \"@read replication@.\"+dbInstanceStatusInfo_statusType :: Lens.Lens' DBInstanceStatusInfo (Prelude.Maybe Prelude.Text)+dbInstanceStatusInfo_statusType = Lens.lens (\DBInstanceStatusInfo' {statusType} -> statusType) (\s@DBInstanceStatusInfo' {} a -> s {statusType = a} :: DBInstanceStatusInfo)++instance Data.FromXML DBInstanceStatusInfo where+ parseXML x =+ DBInstanceStatusInfo'+ Prelude.<$> (x Data..@? "Message")+ Prelude.<*> (x Data..@? "Normal")+ Prelude.<*> (x Data..@? "Status")+ Prelude.<*> (x Data..@? "StatusType")++instance Prelude.Hashable DBInstanceStatusInfo where+ hashWithSalt _salt DBInstanceStatusInfo' {..} =+ _salt+ `Prelude.hashWithSalt` message+ `Prelude.hashWithSalt` normal+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` statusType++instance Prelude.NFData DBInstanceStatusInfo where+ rnf DBInstanceStatusInfo' {..} =+ Prelude.rnf message+ `Prelude.seq` Prelude.rnf normal+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf statusType
+ gen/Amazonka/DocumentDB/Types/DBSubnetGroup.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.DBSubnetGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.DBSubnetGroup where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.Subnet+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about a subnet group.+--+-- /See:/ 'newDBSubnetGroup' smart constructor.+data DBSubnetGroup = DBSubnetGroup'+ { -- | The Amazon Resource Name (ARN) for the DB subnet group.+ dbSubnetGroupArn :: Prelude.Maybe Prelude.Text,+ -- | Provides the description of the subnet group.+ dbSubnetGroupDescription :: Prelude.Maybe Prelude.Text,+ -- | The name of the subnet group.+ dbSubnetGroupName :: Prelude.Maybe Prelude.Text,+ -- | Provides the status of the subnet group.+ subnetGroupStatus :: Prelude.Maybe Prelude.Text,+ -- | Detailed information about one or more subnets within a subnet group.+ subnets :: Prelude.Maybe [Subnet],+ -- | Provides the virtual private cloud (VPC) ID of the subnet group.+ vpcId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DBSubnetGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbSubnetGroupArn', 'dbSubnetGroup_dbSubnetGroupArn' - The Amazon Resource Name (ARN) for the DB subnet group.+--+-- 'dbSubnetGroupDescription', 'dbSubnetGroup_dbSubnetGroupDescription' - Provides the description of the subnet group.+--+-- 'dbSubnetGroupName', 'dbSubnetGroup_dbSubnetGroupName' - The name of the subnet group.+--+-- 'subnetGroupStatus', 'dbSubnetGroup_subnetGroupStatus' - Provides the status of the subnet group.+--+-- 'subnets', 'dbSubnetGroup_subnets' - Detailed information about one or more subnets within a subnet group.+--+-- 'vpcId', 'dbSubnetGroup_vpcId' - Provides the virtual private cloud (VPC) ID of the subnet group.+newDBSubnetGroup ::+ DBSubnetGroup+newDBSubnetGroup =+ DBSubnetGroup'+ { dbSubnetGroupArn = Prelude.Nothing,+ dbSubnetGroupDescription = Prelude.Nothing,+ dbSubnetGroupName = Prelude.Nothing,+ subnetGroupStatus = Prelude.Nothing,+ subnets = Prelude.Nothing,+ vpcId = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) for the DB subnet group.+dbSubnetGroup_dbSubnetGroupArn :: Lens.Lens' DBSubnetGroup (Prelude.Maybe Prelude.Text)+dbSubnetGroup_dbSubnetGroupArn = Lens.lens (\DBSubnetGroup' {dbSubnetGroupArn} -> dbSubnetGroupArn) (\s@DBSubnetGroup' {} a -> s {dbSubnetGroupArn = a} :: DBSubnetGroup)++-- | Provides the description of the subnet group.+dbSubnetGroup_dbSubnetGroupDescription :: Lens.Lens' DBSubnetGroup (Prelude.Maybe Prelude.Text)+dbSubnetGroup_dbSubnetGroupDescription = Lens.lens (\DBSubnetGroup' {dbSubnetGroupDescription} -> dbSubnetGroupDescription) (\s@DBSubnetGroup' {} a -> s {dbSubnetGroupDescription = a} :: DBSubnetGroup)++-- | The name of the subnet group.+dbSubnetGroup_dbSubnetGroupName :: Lens.Lens' DBSubnetGroup (Prelude.Maybe Prelude.Text)+dbSubnetGroup_dbSubnetGroupName = Lens.lens (\DBSubnetGroup' {dbSubnetGroupName} -> dbSubnetGroupName) (\s@DBSubnetGroup' {} a -> s {dbSubnetGroupName = a} :: DBSubnetGroup)++-- | Provides the status of the subnet group.+dbSubnetGroup_subnetGroupStatus :: Lens.Lens' DBSubnetGroup (Prelude.Maybe Prelude.Text)+dbSubnetGroup_subnetGroupStatus = Lens.lens (\DBSubnetGroup' {subnetGroupStatus} -> subnetGroupStatus) (\s@DBSubnetGroup' {} a -> s {subnetGroupStatus = a} :: DBSubnetGroup)++-- | Detailed information about one or more subnets within a subnet group.+dbSubnetGroup_subnets :: Lens.Lens' DBSubnetGroup (Prelude.Maybe [Subnet])+dbSubnetGroup_subnets = Lens.lens (\DBSubnetGroup' {subnets} -> subnets) (\s@DBSubnetGroup' {} a -> s {subnets = a} :: DBSubnetGroup) Prelude.. Lens.mapping Lens.coerced++-- | Provides the virtual private cloud (VPC) ID of the subnet group.+dbSubnetGroup_vpcId :: Lens.Lens' DBSubnetGroup (Prelude.Maybe Prelude.Text)+dbSubnetGroup_vpcId = Lens.lens (\DBSubnetGroup' {vpcId} -> vpcId) (\s@DBSubnetGroup' {} a -> s {vpcId = a} :: DBSubnetGroup)++instance Data.FromXML DBSubnetGroup where+ parseXML x =+ DBSubnetGroup'+ Prelude.<$> (x Data..@? "DBSubnetGroupArn")+ Prelude.<*> (x Data..@? "DBSubnetGroupDescription")+ Prelude.<*> (x Data..@? "DBSubnetGroupName")+ Prelude.<*> (x Data..@? "SubnetGroupStatus")+ Prelude.<*> ( x+ Data..@? "Subnets"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "Subnet")+ )+ Prelude.<*> (x Data..@? "VpcId")++instance Prelude.Hashable DBSubnetGroup where+ hashWithSalt _salt DBSubnetGroup' {..} =+ _salt+ `Prelude.hashWithSalt` dbSubnetGroupArn+ `Prelude.hashWithSalt` dbSubnetGroupDescription+ `Prelude.hashWithSalt` dbSubnetGroupName+ `Prelude.hashWithSalt` subnetGroupStatus+ `Prelude.hashWithSalt` subnets+ `Prelude.hashWithSalt` vpcId++instance Prelude.NFData DBSubnetGroup where+ rnf DBSubnetGroup' {..} =+ Prelude.rnf dbSubnetGroupArn+ `Prelude.seq` Prelude.rnf dbSubnetGroupDescription+ `Prelude.seq` Prelude.rnf dbSubnetGroupName+ `Prelude.seq` Prelude.rnf subnetGroupStatus+ `Prelude.seq` Prelude.rnf subnets+ `Prelude.seq` Prelude.rnf vpcId
+ gen/Amazonka/DocumentDB/Types/Endpoint.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.Endpoint+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.Endpoint where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Network information for accessing a cluster or instance. Client programs+-- must specify a valid endpoint to access these Amazon DocumentDB+-- resources.+--+-- /See:/ 'newEndpoint' smart constructor.+data Endpoint = Endpoint'+ { -- | Specifies the DNS address of the instance.+ address :: Prelude.Maybe Prelude.Text,+ -- | Specifies the ID that Amazon Route 53 assigns when you create a hosted+ -- zone.+ hostedZoneId :: Prelude.Maybe Prelude.Text,+ -- | Specifies the port that the database engine is listening on.+ port :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Endpoint' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'address', 'endpoint_address' - Specifies the DNS address of the instance.+--+-- 'hostedZoneId', 'endpoint_hostedZoneId' - Specifies the ID that Amazon Route 53 assigns when you create a hosted+-- zone.+--+-- 'port', 'endpoint_port' - Specifies the port that the database engine is listening on.+newEndpoint ::+ Endpoint+newEndpoint =+ Endpoint'+ { address = Prelude.Nothing,+ hostedZoneId = Prelude.Nothing,+ port = Prelude.Nothing+ }++-- | Specifies the DNS address of the instance.+endpoint_address :: Lens.Lens' Endpoint (Prelude.Maybe Prelude.Text)+endpoint_address = Lens.lens (\Endpoint' {address} -> address) (\s@Endpoint' {} a -> s {address = a} :: Endpoint)++-- | Specifies the ID that Amazon Route 53 assigns when you create a hosted+-- zone.+endpoint_hostedZoneId :: Lens.Lens' Endpoint (Prelude.Maybe Prelude.Text)+endpoint_hostedZoneId = Lens.lens (\Endpoint' {hostedZoneId} -> hostedZoneId) (\s@Endpoint' {} a -> s {hostedZoneId = a} :: Endpoint)++-- | Specifies the port that the database engine is listening on.+endpoint_port :: Lens.Lens' Endpoint (Prelude.Maybe Prelude.Int)+endpoint_port = Lens.lens (\Endpoint' {port} -> port) (\s@Endpoint' {} a -> s {port = a} :: Endpoint)++instance Data.FromXML Endpoint where+ parseXML x =+ Endpoint'+ Prelude.<$> (x Data..@? "Address")+ Prelude.<*> (x Data..@? "HostedZoneId")+ Prelude.<*> (x Data..@? "Port")++instance Prelude.Hashable Endpoint where+ hashWithSalt _salt Endpoint' {..} =+ _salt+ `Prelude.hashWithSalt` address+ `Prelude.hashWithSalt` hostedZoneId+ `Prelude.hashWithSalt` port++instance Prelude.NFData Endpoint where+ rnf Endpoint' {..} =+ Prelude.rnf address+ `Prelude.seq` Prelude.rnf hostedZoneId+ `Prelude.seq` Prelude.rnf port
+ gen/Amazonka/DocumentDB/Types/EngineDefaults.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.EngineDefaults+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.EngineDefaults where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.Parameter+import qualified Amazonka.Prelude as Prelude++-- | Contains the result of a successful invocation of the+-- @DescribeEngineDefaultClusterParameters@ operation.+--+-- /See:/ 'newEngineDefaults' smart constructor.+data EngineDefaults = EngineDefaults'+ { -- | The name of the cluster parameter group family to return the engine+ -- parameter information for.+ dbParameterGroupFamily :: Prelude.Maybe Prelude.Text,+ -- | An optional pagination token provided by a previous request. If this+ -- parameter is specified, the response includes only records beyond the+ -- marker, up to the value specified by @MaxRecords@.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The parameters of a particular cluster parameter group family.+ parameters :: Prelude.Maybe [Parameter]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EngineDefaults' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbParameterGroupFamily', 'engineDefaults_dbParameterGroupFamily' - The name of the cluster parameter group family to return the engine+-- parameter information for.+--+-- 'marker', 'engineDefaults_marker' - An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+--+-- 'parameters', 'engineDefaults_parameters' - The parameters of a particular cluster parameter group family.+newEngineDefaults ::+ EngineDefaults+newEngineDefaults =+ EngineDefaults'+ { dbParameterGroupFamily =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ parameters = Prelude.Nothing+ }++-- | The name of the cluster parameter group family to return the engine+-- parameter information for.+engineDefaults_dbParameterGroupFamily :: Lens.Lens' EngineDefaults (Prelude.Maybe Prelude.Text)+engineDefaults_dbParameterGroupFamily = Lens.lens (\EngineDefaults' {dbParameterGroupFamily} -> dbParameterGroupFamily) (\s@EngineDefaults' {} a -> s {dbParameterGroupFamily = a} :: EngineDefaults)++-- | An optional pagination token provided by a previous request. If this+-- parameter is specified, the response includes only records beyond the+-- marker, up to the value specified by @MaxRecords@.+engineDefaults_marker :: Lens.Lens' EngineDefaults (Prelude.Maybe Prelude.Text)+engineDefaults_marker = Lens.lens (\EngineDefaults' {marker} -> marker) (\s@EngineDefaults' {} a -> s {marker = a} :: EngineDefaults)++-- | The parameters of a particular cluster parameter group family.+engineDefaults_parameters :: Lens.Lens' EngineDefaults (Prelude.Maybe [Parameter])+engineDefaults_parameters = Lens.lens (\EngineDefaults' {parameters} -> parameters) (\s@EngineDefaults' {} a -> s {parameters = a} :: EngineDefaults) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML EngineDefaults where+ parseXML x =+ EngineDefaults'+ Prelude.<$> (x Data..@? "DBParameterGroupFamily")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> ( x+ Data..@? "Parameters"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "Parameter")+ )++instance Prelude.Hashable EngineDefaults where+ hashWithSalt _salt EngineDefaults' {..} =+ _salt+ `Prelude.hashWithSalt` dbParameterGroupFamily+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` parameters++instance Prelude.NFData EngineDefaults where+ rnf EngineDefaults' {..} =+ Prelude.rnf dbParameterGroupFamily+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf parameters
+ gen/Amazonka/DocumentDB/Types/Event.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.Event+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.Event where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.SourceType+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about an event.+--+-- /See:/ 'newEvent' smart constructor.+data Event = Event'+ { -- | Specifies the date and time of the event.+ date :: Prelude.Maybe Data.ISO8601,+ -- | Specifies the category for the event.+ eventCategories :: Prelude.Maybe [Prelude.Text],+ -- | Provides the text of this event.+ message :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) for the event.+ sourceArn :: Prelude.Maybe Prelude.Text,+ -- | Provides the identifier for the source of the event.+ sourceIdentifier :: Prelude.Maybe Prelude.Text,+ -- | Specifies the source type for this event.+ sourceType :: Prelude.Maybe SourceType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Event' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'date', 'event_date' - Specifies the date and time of the event.+--+-- 'eventCategories', 'event_eventCategories' - Specifies the category for the event.+--+-- 'message', 'event_message' - Provides the text of this event.+--+-- 'sourceArn', 'event_sourceArn' - The Amazon Resource Name (ARN) for the event.+--+-- 'sourceIdentifier', 'event_sourceIdentifier' - Provides the identifier for the source of the event.+--+-- 'sourceType', 'event_sourceType' - Specifies the source type for this event.+newEvent ::+ Event+newEvent =+ Event'+ { date = Prelude.Nothing,+ eventCategories = Prelude.Nothing,+ message = Prelude.Nothing,+ sourceArn = Prelude.Nothing,+ sourceIdentifier = Prelude.Nothing,+ sourceType = Prelude.Nothing+ }++-- | Specifies the date and time of the event.+event_date :: Lens.Lens' Event (Prelude.Maybe Prelude.UTCTime)+event_date = Lens.lens (\Event' {date} -> date) (\s@Event' {} a -> s {date = a} :: Event) Prelude.. Lens.mapping Data._Time++-- | Specifies the category for the event.+event_eventCategories :: Lens.Lens' Event (Prelude.Maybe [Prelude.Text])+event_eventCategories = Lens.lens (\Event' {eventCategories} -> eventCategories) (\s@Event' {} a -> s {eventCategories = a} :: Event) Prelude.. Lens.mapping Lens.coerced++-- | Provides the text of this event.+event_message :: Lens.Lens' Event (Prelude.Maybe Prelude.Text)+event_message = Lens.lens (\Event' {message} -> message) (\s@Event' {} a -> s {message = a} :: Event)++-- | The Amazon Resource Name (ARN) for the event.+event_sourceArn :: Lens.Lens' Event (Prelude.Maybe Prelude.Text)+event_sourceArn = Lens.lens (\Event' {sourceArn} -> sourceArn) (\s@Event' {} a -> s {sourceArn = a} :: Event)++-- | Provides the identifier for the source of the event.+event_sourceIdentifier :: Lens.Lens' Event (Prelude.Maybe Prelude.Text)+event_sourceIdentifier = Lens.lens (\Event' {sourceIdentifier} -> sourceIdentifier) (\s@Event' {} a -> s {sourceIdentifier = a} :: Event)++-- | Specifies the source type for this event.+event_sourceType :: Lens.Lens' Event (Prelude.Maybe SourceType)+event_sourceType = Lens.lens (\Event' {sourceType} -> sourceType) (\s@Event' {} a -> s {sourceType = a} :: Event)++instance Data.FromXML Event where+ parseXML x =+ Event'+ Prelude.<$> (x Data..@? "Date")+ Prelude.<*> ( x+ Data..@? "EventCategories"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "EventCategory")+ )+ Prelude.<*> (x Data..@? "Message")+ Prelude.<*> (x Data..@? "SourceArn")+ Prelude.<*> (x Data..@? "SourceIdentifier")+ Prelude.<*> (x Data..@? "SourceType")++instance Prelude.Hashable Event where+ hashWithSalt _salt Event' {..} =+ _salt+ `Prelude.hashWithSalt` date+ `Prelude.hashWithSalt` eventCategories+ `Prelude.hashWithSalt` message+ `Prelude.hashWithSalt` sourceArn+ `Prelude.hashWithSalt` sourceIdentifier+ `Prelude.hashWithSalt` sourceType++instance Prelude.NFData Event where+ rnf Event' {..} =+ Prelude.rnf date+ `Prelude.seq` Prelude.rnf eventCategories+ `Prelude.seq` Prelude.rnf message+ `Prelude.seq` Prelude.rnf sourceArn+ `Prelude.seq` Prelude.rnf sourceIdentifier+ `Prelude.seq` Prelude.rnf sourceType
+ gen/Amazonka/DocumentDB/Types/EventCategoriesMap.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.EventCategoriesMap+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.EventCategoriesMap where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An event source type, accompanied by one or more event category names.+--+-- /See:/ 'newEventCategoriesMap' smart constructor.+data EventCategoriesMap = EventCategoriesMap'+ { -- | The event categories for the specified source type.+ eventCategories :: Prelude.Maybe [Prelude.Text],+ -- | The source type that the returned categories belong to.+ sourceType :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EventCategoriesMap' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventCategories', 'eventCategoriesMap_eventCategories' - The event categories for the specified source type.+--+-- 'sourceType', 'eventCategoriesMap_sourceType' - The source type that the returned categories belong to.+newEventCategoriesMap ::+ EventCategoriesMap+newEventCategoriesMap =+ EventCategoriesMap'+ { eventCategories =+ Prelude.Nothing,+ sourceType = Prelude.Nothing+ }++-- | The event categories for the specified source type.+eventCategoriesMap_eventCategories :: Lens.Lens' EventCategoriesMap (Prelude.Maybe [Prelude.Text])+eventCategoriesMap_eventCategories = Lens.lens (\EventCategoriesMap' {eventCategories} -> eventCategories) (\s@EventCategoriesMap' {} a -> s {eventCategories = a} :: EventCategoriesMap) Prelude.. Lens.mapping Lens.coerced++-- | The source type that the returned categories belong to.+eventCategoriesMap_sourceType :: Lens.Lens' EventCategoriesMap (Prelude.Maybe Prelude.Text)+eventCategoriesMap_sourceType = Lens.lens (\EventCategoriesMap' {sourceType} -> sourceType) (\s@EventCategoriesMap' {} a -> s {sourceType = a} :: EventCategoriesMap)++instance Data.FromXML EventCategoriesMap where+ parseXML x =+ EventCategoriesMap'+ Prelude.<$> ( x+ Data..@? "EventCategories"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "EventCategory")+ )+ Prelude.<*> (x Data..@? "SourceType")++instance Prelude.Hashable EventCategoriesMap where+ hashWithSalt _salt EventCategoriesMap' {..} =+ _salt+ `Prelude.hashWithSalt` eventCategories+ `Prelude.hashWithSalt` sourceType++instance Prelude.NFData EventCategoriesMap where+ rnf EventCategoriesMap' {..} =+ Prelude.rnf eventCategories+ `Prelude.seq` Prelude.rnf sourceType
+ gen/Amazonka/DocumentDB/Types/EventSubscription.hs view
@@ -0,0 +1,230 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.EventSubscription+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.EventSubscription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about an event to which you have subscribed.+--+-- /See:/ 'newEventSubscription' smart constructor.+data EventSubscription = EventSubscription'+ { -- | The Amazon DocumentDB event notification subscription ID.+ custSubscriptionId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services customer account that is associated with the+ -- Amazon DocumentDB event notification subscription.+ customerAwsId :: Prelude.Maybe Prelude.Text,+ -- | A Boolean value indicating whether the subscription is enabled. A value+ -- of @true@ indicates that the subscription is enabled.+ enabled :: Prelude.Maybe Prelude.Bool,+ -- | A list of event categories for the Amazon DocumentDB event notification+ -- subscription.+ eventCategoriesList :: Prelude.Maybe [Prelude.Text],+ -- | The Amazon Resource Name (ARN) for the event subscription.+ eventSubscriptionArn :: Prelude.Maybe Prelude.Text,+ -- | The topic ARN of the Amazon DocumentDB event notification subscription.+ snsTopicArn :: Prelude.Maybe Prelude.Text,+ -- | A list of source IDs for the Amazon DocumentDB event notification+ -- subscription.+ sourceIdsList :: Prelude.Maybe [Prelude.Text],+ -- | The source type for the Amazon DocumentDB event notification+ -- subscription.+ sourceType :: Prelude.Maybe Prelude.Text,+ -- | The status of the Amazon DocumentDB event notification subscription.+ --+ -- Constraints:+ --+ -- Can be one of the following: @creating@, @modifying@, @deleting@,+ -- @active@, @no-permission@, @topic-not-exist@+ --+ -- The @no-permission@ status indicates that Amazon DocumentDB no longer+ -- has permission to post to the SNS topic. The @topic-not-exist@ status+ -- indicates that the topic was deleted after the subscription was created.+ status :: Prelude.Maybe Prelude.Text,+ -- | The time at which the Amazon DocumentDB event notification subscription+ -- was created.+ subscriptionCreationTime :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EventSubscription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'custSubscriptionId', 'eventSubscription_custSubscriptionId' - The Amazon DocumentDB event notification subscription ID.+--+-- 'customerAwsId', 'eventSubscription_customerAwsId' - The Amazon Web Services customer account that is associated with the+-- Amazon DocumentDB event notification subscription.+--+-- 'enabled', 'eventSubscription_enabled' - A Boolean value indicating whether the subscription is enabled. A value+-- of @true@ indicates that the subscription is enabled.+--+-- 'eventCategoriesList', 'eventSubscription_eventCategoriesList' - A list of event categories for the Amazon DocumentDB event notification+-- subscription.+--+-- 'eventSubscriptionArn', 'eventSubscription_eventSubscriptionArn' - The Amazon Resource Name (ARN) for the event subscription.+--+-- 'snsTopicArn', 'eventSubscription_snsTopicArn' - The topic ARN of the Amazon DocumentDB event notification subscription.+--+-- 'sourceIdsList', 'eventSubscription_sourceIdsList' - A list of source IDs for the Amazon DocumentDB event notification+-- subscription.+--+-- 'sourceType', 'eventSubscription_sourceType' - The source type for the Amazon DocumentDB event notification+-- subscription.+--+-- 'status', 'eventSubscription_status' - The status of the Amazon DocumentDB event notification subscription.+--+-- Constraints:+--+-- Can be one of the following: @creating@, @modifying@, @deleting@,+-- @active@, @no-permission@, @topic-not-exist@+--+-- The @no-permission@ status indicates that Amazon DocumentDB no longer+-- has permission to post to the SNS topic. The @topic-not-exist@ status+-- indicates that the topic was deleted after the subscription was created.+--+-- 'subscriptionCreationTime', 'eventSubscription_subscriptionCreationTime' - The time at which the Amazon DocumentDB event notification subscription+-- was created.+newEventSubscription ::+ EventSubscription+newEventSubscription =+ EventSubscription'+ { custSubscriptionId =+ Prelude.Nothing,+ customerAwsId = Prelude.Nothing,+ enabled = Prelude.Nothing,+ eventCategoriesList = Prelude.Nothing,+ eventSubscriptionArn = Prelude.Nothing,+ snsTopicArn = Prelude.Nothing,+ sourceIdsList = Prelude.Nothing,+ sourceType = Prelude.Nothing,+ status = Prelude.Nothing,+ subscriptionCreationTime = Prelude.Nothing+ }++-- | The Amazon DocumentDB event notification subscription ID.+eventSubscription_custSubscriptionId :: Lens.Lens' EventSubscription (Prelude.Maybe Prelude.Text)+eventSubscription_custSubscriptionId = Lens.lens (\EventSubscription' {custSubscriptionId} -> custSubscriptionId) (\s@EventSubscription' {} a -> s {custSubscriptionId = a} :: EventSubscription)++-- | The Amazon Web Services customer account that is associated with the+-- Amazon DocumentDB event notification subscription.+eventSubscription_customerAwsId :: Lens.Lens' EventSubscription (Prelude.Maybe Prelude.Text)+eventSubscription_customerAwsId = Lens.lens (\EventSubscription' {customerAwsId} -> customerAwsId) (\s@EventSubscription' {} a -> s {customerAwsId = a} :: EventSubscription)++-- | A Boolean value indicating whether the subscription is enabled. A value+-- of @true@ indicates that the subscription is enabled.+eventSubscription_enabled :: Lens.Lens' EventSubscription (Prelude.Maybe Prelude.Bool)+eventSubscription_enabled = Lens.lens (\EventSubscription' {enabled} -> enabled) (\s@EventSubscription' {} a -> s {enabled = a} :: EventSubscription)++-- | A list of event categories for the Amazon DocumentDB event notification+-- subscription.+eventSubscription_eventCategoriesList :: Lens.Lens' EventSubscription (Prelude.Maybe [Prelude.Text])+eventSubscription_eventCategoriesList = Lens.lens (\EventSubscription' {eventCategoriesList} -> eventCategoriesList) (\s@EventSubscription' {} a -> s {eventCategoriesList = a} :: EventSubscription) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Resource Name (ARN) for the event subscription.+eventSubscription_eventSubscriptionArn :: Lens.Lens' EventSubscription (Prelude.Maybe Prelude.Text)+eventSubscription_eventSubscriptionArn = Lens.lens (\EventSubscription' {eventSubscriptionArn} -> eventSubscriptionArn) (\s@EventSubscription' {} a -> s {eventSubscriptionArn = a} :: EventSubscription)++-- | The topic ARN of the Amazon DocumentDB event notification subscription.+eventSubscription_snsTopicArn :: Lens.Lens' EventSubscription (Prelude.Maybe Prelude.Text)+eventSubscription_snsTopicArn = Lens.lens (\EventSubscription' {snsTopicArn} -> snsTopicArn) (\s@EventSubscription' {} a -> s {snsTopicArn = a} :: EventSubscription)++-- | A list of source IDs for the Amazon DocumentDB event notification+-- subscription.+eventSubscription_sourceIdsList :: Lens.Lens' EventSubscription (Prelude.Maybe [Prelude.Text])+eventSubscription_sourceIdsList = Lens.lens (\EventSubscription' {sourceIdsList} -> sourceIdsList) (\s@EventSubscription' {} a -> s {sourceIdsList = a} :: EventSubscription) Prelude.. Lens.mapping Lens.coerced++-- | The source type for the Amazon DocumentDB event notification+-- subscription.+eventSubscription_sourceType :: Lens.Lens' EventSubscription (Prelude.Maybe Prelude.Text)+eventSubscription_sourceType = Lens.lens (\EventSubscription' {sourceType} -> sourceType) (\s@EventSubscription' {} a -> s {sourceType = a} :: EventSubscription)++-- | The status of the Amazon DocumentDB event notification subscription.+--+-- Constraints:+--+-- Can be one of the following: @creating@, @modifying@, @deleting@,+-- @active@, @no-permission@, @topic-not-exist@+--+-- The @no-permission@ status indicates that Amazon DocumentDB no longer+-- has permission to post to the SNS topic. The @topic-not-exist@ status+-- indicates that the topic was deleted after the subscription was created.+eventSubscription_status :: Lens.Lens' EventSubscription (Prelude.Maybe Prelude.Text)+eventSubscription_status = Lens.lens (\EventSubscription' {status} -> status) (\s@EventSubscription' {} a -> s {status = a} :: EventSubscription)++-- | The time at which the Amazon DocumentDB event notification subscription+-- was created.+eventSubscription_subscriptionCreationTime :: Lens.Lens' EventSubscription (Prelude.Maybe Prelude.Text)+eventSubscription_subscriptionCreationTime = Lens.lens (\EventSubscription' {subscriptionCreationTime} -> subscriptionCreationTime) (\s@EventSubscription' {} a -> s {subscriptionCreationTime = a} :: EventSubscription)++instance Data.FromXML EventSubscription where+ parseXML x =+ EventSubscription'+ Prelude.<$> (x Data..@? "CustSubscriptionId")+ Prelude.<*> (x Data..@? "CustomerAwsId")+ Prelude.<*> (x Data..@? "Enabled")+ Prelude.<*> ( x+ Data..@? "EventCategoriesList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "EventCategory")+ )+ Prelude.<*> (x Data..@? "EventSubscriptionArn")+ Prelude.<*> (x Data..@? "SnsTopicArn")+ Prelude.<*> ( x+ Data..@? "SourceIdsList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "SourceId")+ )+ Prelude.<*> (x Data..@? "SourceType")+ Prelude.<*> (x Data..@? "Status")+ Prelude.<*> (x Data..@? "SubscriptionCreationTime")++instance Prelude.Hashable EventSubscription where+ hashWithSalt _salt EventSubscription' {..} =+ _salt+ `Prelude.hashWithSalt` custSubscriptionId+ `Prelude.hashWithSalt` customerAwsId+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` eventCategoriesList+ `Prelude.hashWithSalt` eventSubscriptionArn+ `Prelude.hashWithSalt` snsTopicArn+ `Prelude.hashWithSalt` sourceIdsList+ `Prelude.hashWithSalt` sourceType+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` subscriptionCreationTime++instance Prelude.NFData EventSubscription where+ rnf EventSubscription' {..} =+ Prelude.rnf custSubscriptionId+ `Prelude.seq` Prelude.rnf customerAwsId+ `Prelude.seq` Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf eventCategoriesList+ `Prelude.seq` Prelude.rnf eventSubscriptionArn+ `Prelude.seq` Prelude.rnf snsTopicArn+ `Prelude.seq` Prelude.rnf sourceIdsList+ `Prelude.seq` Prelude.rnf sourceType+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf subscriptionCreationTime
+ gen/Amazonka/DocumentDB/Types/Filter.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.Filter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.Filter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A named set of filter values, used to return a more specific list of+-- results. You can use a filter to match a set of resources by specific+-- criteria, such as IDs.+--+-- Wildcards are not supported in filters.+--+-- /See:/ 'newFilter' smart constructor.+data Filter = Filter'+ { -- | The name of the filter. Filter names are case sensitive.+ name :: Prelude.Text,+ -- | One or more filter values. Filter values are case sensitive.+ values :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Filter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'filter_name' - The name of the filter. Filter names are case sensitive.+--+-- 'values', 'filter_values' - One or more filter values. Filter values are case sensitive.+newFilter ::+ -- | 'name'+ Prelude.Text ->+ Filter+newFilter pName_ =+ Filter' {name = pName_, values = Prelude.mempty}++-- | The name of the filter. Filter names are case sensitive.+filter_name :: Lens.Lens' Filter Prelude.Text+filter_name = Lens.lens (\Filter' {name} -> name) (\s@Filter' {} a -> s {name = a} :: Filter)++-- | One or more filter values. Filter values are case sensitive.+filter_values :: Lens.Lens' Filter [Prelude.Text]+filter_values = Lens.lens (\Filter' {values} -> values) (\s@Filter' {} a -> s {values = a} :: Filter) Prelude.. Lens.coerced++instance Prelude.Hashable Filter where+ hashWithSalt _salt Filter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values++instance Prelude.NFData Filter where+ rnf Filter' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf values++instance Data.ToQuery Filter where+ toQuery Filter' {..} =+ Prelude.mconcat+ [ "Name" Data.=: name,+ "Values" Data.=: Data.toQueryList "Value" values+ ]
+ gen/Amazonka/DocumentDB/Types/GlobalCluster.hs view
@@ -0,0 +1,196 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.GlobalCluster+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.GlobalCluster where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.GlobalClusterMember+import qualified Amazonka.Prelude as Prelude++-- | A data type representing an Amazon DocumentDB global cluster.+--+-- /See:/ 'newGlobalCluster' smart constructor.+data GlobalCluster = GlobalCluster'+ { -- | The default database name within the new global cluster.+ databaseName :: Prelude.Maybe Prelude.Text,+ -- | The deletion protection setting for the new global cluster.+ deletionProtection :: Prelude.Maybe Prelude.Bool,+ -- | The Amazon DocumentDB database engine used by the global cluster.+ engine :: Prelude.Maybe Prelude.Text,+ -- | Indicates the database engine version.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) for the global cluster.+ globalClusterArn :: Prelude.Maybe Prelude.Text,+ -- | Contains a user-supplied global cluster identifier. This identifier is+ -- the unique key that identifies a global cluster.+ globalClusterIdentifier :: Prelude.Maybe Prelude.Text,+ -- | The list of cluster IDs for secondary clusters within the global+ -- cluster. Currently limited to one item.+ globalClusterMembers :: Prelude.Maybe [GlobalClusterMember],+ -- | The Amazon Web Services Region-unique, immutable identifier for the+ -- global database cluster. This identifier is found in AWS CloudTrail log+ -- entries whenever the AWS KMS customer master key (CMK) for the cluster+ -- is accessed.+ globalClusterResourceId :: Prelude.Maybe Prelude.Text,+ -- | Specifies the current state of this global cluster.+ status :: Prelude.Maybe Prelude.Text,+ -- | The storage encryption setting for the global cluster.+ storageEncrypted :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GlobalCluster' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'databaseName', 'globalCluster_databaseName' - The default database name within the new global cluster.+--+-- 'deletionProtection', 'globalCluster_deletionProtection' - The deletion protection setting for the new global cluster.+--+-- 'engine', 'globalCluster_engine' - The Amazon DocumentDB database engine used by the global cluster.+--+-- 'engineVersion', 'globalCluster_engineVersion' - Indicates the database engine version.+--+-- 'globalClusterArn', 'globalCluster_globalClusterArn' - The Amazon Resource Name (ARN) for the global cluster.+--+-- 'globalClusterIdentifier', 'globalCluster_globalClusterIdentifier' - Contains a user-supplied global cluster identifier. This identifier is+-- the unique key that identifies a global cluster.+--+-- 'globalClusterMembers', 'globalCluster_globalClusterMembers' - The list of cluster IDs for secondary clusters within the global+-- cluster. Currently limited to one item.+--+-- 'globalClusterResourceId', 'globalCluster_globalClusterResourceId' - The Amazon Web Services Region-unique, immutable identifier for the+-- global database cluster. This identifier is found in AWS CloudTrail log+-- entries whenever the AWS KMS customer master key (CMK) for the cluster+-- is accessed.+--+-- 'status', 'globalCluster_status' - Specifies the current state of this global cluster.+--+-- 'storageEncrypted', 'globalCluster_storageEncrypted' - The storage encryption setting for the global cluster.+newGlobalCluster ::+ GlobalCluster+newGlobalCluster =+ GlobalCluster'+ { databaseName = Prelude.Nothing,+ deletionProtection = Prelude.Nothing,+ engine = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ globalClusterArn = Prelude.Nothing,+ globalClusterIdentifier = Prelude.Nothing,+ globalClusterMembers = Prelude.Nothing,+ globalClusterResourceId = Prelude.Nothing,+ status = Prelude.Nothing,+ storageEncrypted = Prelude.Nothing+ }++-- | The default database name within the new global cluster.+globalCluster_databaseName :: Lens.Lens' GlobalCluster (Prelude.Maybe Prelude.Text)+globalCluster_databaseName = Lens.lens (\GlobalCluster' {databaseName} -> databaseName) (\s@GlobalCluster' {} a -> s {databaseName = a} :: GlobalCluster)++-- | The deletion protection setting for the new global cluster.+globalCluster_deletionProtection :: Lens.Lens' GlobalCluster (Prelude.Maybe Prelude.Bool)+globalCluster_deletionProtection = Lens.lens (\GlobalCluster' {deletionProtection} -> deletionProtection) (\s@GlobalCluster' {} a -> s {deletionProtection = a} :: GlobalCluster)++-- | The Amazon DocumentDB database engine used by the global cluster.+globalCluster_engine :: Lens.Lens' GlobalCluster (Prelude.Maybe Prelude.Text)+globalCluster_engine = Lens.lens (\GlobalCluster' {engine} -> engine) (\s@GlobalCluster' {} a -> s {engine = a} :: GlobalCluster)++-- | Indicates the database engine version.+globalCluster_engineVersion :: Lens.Lens' GlobalCluster (Prelude.Maybe Prelude.Text)+globalCluster_engineVersion = Lens.lens (\GlobalCluster' {engineVersion} -> engineVersion) (\s@GlobalCluster' {} a -> s {engineVersion = a} :: GlobalCluster)++-- | The Amazon Resource Name (ARN) for the global cluster.+globalCluster_globalClusterArn :: Lens.Lens' GlobalCluster (Prelude.Maybe Prelude.Text)+globalCluster_globalClusterArn = Lens.lens (\GlobalCluster' {globalClusterArn} -> globalClusterArn) (\s@GlobalCluster' {} a -> s {globalClusterArn = a} :: GlobalCluster)++-- | Contains a user-supplied global cluster identifier. This identifier is+-- the unique key that identifies a global cluster.+globalCluster_globalClusterIdentifier :: Lens.Lens' GlobalCluster (Prelude.Maybe Prelude.Text)+globalCluster_globalClusterIdentifier = Lens.lens (\GlobalCluster' {globalClusterIdentifier} -> globalClusterIdentifier) (\s@GlobalCluster' {} a -> s {globalClusterIdentifier = a} :: GlobalCluster)++-- | The list of cluster IDs for secondary clusters within the global+-- cluster. Currently limited to one item.+globalCluster_globalClusterMembers :: Lens.Lens' GlobalCluster (Prelude.Maybe [GlobalClusterMember])+globalCluster_globalClusterMembers = Lens.lens (\GlobalCluster' {globalClusterMembers} -> globalClusterMembers) (\s@GlobalCluster' {} a -> s {globalClusterMembers = a} :: GlobalCluster) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Web Services Region-unique, immutable identifier for the+-- global database cluster. This identifier is found in AWS CloudTrail log+-- entries whenever the AWS KMS customer master key (CMK) for the cluster+-- is accessed.+globalCluster_globalClusterResourceId :: Lens.Lens' GlobalCluster (Prelude.Maybe Prelude.Text)+globalCluster_globalClusterResourceId = Lens.lens (\GlobalCluster' {globalClusterResourceId} -> globalClusterResourceId) (\s@GlobalCluster' {} a -> s {globalClusterResourceId = a} :: GlobalCluster)++-- | Specifies the current state of this global cluster.+globalCluster_status :: Lens.Lens' GlobalCluster (Prelude.Maybe Prelude.Text)+globalCluster_status = Lens.lens (\GlobalCluster' {status} -> status) (\s@GlobalCluster' {} a -> s {status = a} :: GlobalCluster)++-- | The storage encryption setting for the global cluster.+globalCluster_storageEncrypted :: Lens.Lens' GlobalCluster (Prelude.Maybe Prelude.Bool)+globalCluster_storageEncrypted = Lens.lens (\GlobalCluster' {storageEncrypted} -> storageEncrypted) (\s@GlobalCluster' {} a -> s {storageEncrypted = a} :: GlobalCluster)++instance Data.FromXML GlobalCluster where+ parseXML x =+ GlobalCluster'+ Prelude.<$> (x Data..@? "DatabaseName")+ Prelude.<*> (x Data..@? "DeletionProtection")+ Prelude.<*> (x Data..@? "Engine")+ Prelude.<*> (x Data..@? "EngineVersion")+ Prelude.<*> (x Data..@? "GlobalClusterArn")+ Prelude.<*> (x Data..@? "GlobalClusterIdentifier")+ Prelude.<*> ( x+ Data..@? "GlobalClusterMembers"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "GlobalClusterMember")+ )+ Prelude.<*> (x Data..@? "GlobalClusterResourceId")+ Prelude.<*> (x Data..@? "Status")+ Prelude.<*> (x Data..@? "StorageEncrypted")++instance Prelude.Hashable GlobalCluster where+ hashWithSalt _salt GlobalCluster' {..} =+ _salt+ `Prelude.hashWithSalt` databaseName+ `Prelude.hashWithSalt` deletionProtection+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` globalClusterArn+ `Prelude.hashWithSalt` globalClusterIdentifier+ `Prelude.hashWithSalt` globalClusterMembers+ `Prelude.hashWithSalt` globalClusterResourceId+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` storageEncrypted++instance Prelude.NFData GlobalCluster where+ rnf GlobalCluster' {..} =+ Prelude.rnf databaseName+ `Prelude.seq` Prelude.rnf deletionProtection+ `Prelude.seq` Prelude.rnf engine+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf globalClusterArn+ `Prelude.seq` Prelude.rnf globalClusterIdentifier+ `Prelude.seq` Prelude.rnf globalClusterMembers+ `Prelude.seq` Prelude.rnf globalClusterResourceId+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf storageEncrypted
+ gen/Amazonka/DocumentDB/Types/GlobalClusterMember.hs view
@@ -0,0 +1,107 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.GlobalClusterMember+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.GlobalClusterMember where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A data structure with information about any primary and secondary+-- clusters associated with an Amazon DocumentDB global clusters.+--+-- /See:/ 'newGlobalClusterMember' smart constructor.+data GlobalClusterMember = GlobalClusterMember'+ { -- | The Amazon Resource Name (ARN) for each Amazon DocumentDB cluster.+ dbClusterArn :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether the Amazon DocumentDB cluster is the primary cluster+ -- (that is, has read-write capability) for the Amazon DocumentDB global+ -- cluster with which it is associated.+ isWriter :: Prelude.Maybe Prelude.Bool,+ -- | The Amazon Resource Name (ARN) for each read-only secondary cluster+ -- associated with the Aurora global cluster.+ readers :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GlobalClusterMember' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dbClusterArn', 'globalClusterMember_dbClusterArn' - The Amazon Resource Name (ARN) for each Amazon DocumentDB cluster.+--+-- 'isWriter', 'globalClusterMember_isWriter' - Specifies whether the Amazon DocumentDB cluster is the primary cluster+-- (that is, has read-write capability) for the Amazon DocumentDB global+-- cluster with which it is associated.+--+-- 'readers', 'globalClusterMember_readers' - The Amazon Resource Name (ARN) for each read-only secondary cluster+-- associated with the Aurora global cluster.+newGlobalClusterMember ::+ GlobalClusterMember+newGlobalClusterMember =+ GlobalClusterMember'+ { dbClusterArn =+ Prelude.Nothing,+ isWriter = Prelude.Nothing,+ readers = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) for each Amazon DocumentDB cluster.+globalClusterMember_dbClusterArn :: Lens.Lens' GlobalClusterMember (Prelude.Maybe Prelude.Text)+globalClusterMember_dbClusterArn = Lens.lens (\GlobalClusterMember' {dbClusterArn} -> dbClusterArn) (\s@GlobalClusterMember' {} a -> s {dbClusterArn = a} :: GlobalClusterMember)++-- | Specifies whether the Amazon DocumentDB cluster is the primary cluster+-- (that is, has read-write capability) for the Amazon DocumentDB global+-- cluster with which it is associated.+globalClusterMember_isWriter :: Lens.Lens' GlobalClusterMember (Prelude.Maybe Prelude.Bool)+globalClusterMember_isWriter = Lens.lens (\GlobalClusterMember' {isWriter} -> isWriter) (\s@GlobalClusterMember' {} a -> s {isWriter = a} :: GlobalClusterMember)++-- | The Amazon Resource Name (ARN) for each read-only secondary cluster+-- associated with the Aurora global cluster.+globalClusterMember_readers :: Lens.Lens' GlobalClusterMember (Prelude.Maybe [Prelude.Text])+globalClusterMember_readers = Lens.lens (\GlobalClusterMember' {readers} -> readers) (\s@GlobalClusterMember' {} a -> s {readers = a} :: GlobalClusterMember) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML GlobalClusterMember where+ parseXML x =+ GlobalClusterMember'+ Prelude.<$> (x Data..@? "DBClusterArn")+ Prelude.<*> (x Data..@? "IsWriter")+ Prelude.<*> ( x+ Data..@? "Readers"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )++instance Prelude.Hashable GlobalClusterMember where+ hashWithSalt _salt GlobalClusterMember' {..} =+ _salt+ `Prelude.hashWithSalt` dbClusterArn+ `Prelude.hashWithSalt` isWriter+ `Prelude.hashWithSalt` readers++instance Prelude.NFData GlobalClusterMember where+ rnf GlobalClusterMember' {..} =+ Prelude.rnf dbClusterArn+ `Prelude.seq` Prelude.rnf isWriter+ `Prelude.seq` Prelude.rnf readers
+ gen/Amazonka/DocumentDB/Types/OrderableDBInstanceOption.hs view
@@ -0,0 +1,134 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.OrderableDBInstanceOption+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.OrderableDBInstanceOption where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.AvailabilityZone+import qualified Amazonka.Prelude as Prelude++-- | The options that are available for an instance.+--+-- /See:/ 'newOrderableDBInstanceOption' smart constructor.+data OrderableDBInstanceOption = OrderableDBInstanceOption'+ { -- | A list of Availability Zones for an instance.+ availabilityZones :: Prelude.Maybe [AvailabilityZone],+ -- | The instance class for an instance.+ dbInstanceClass :: Prelude.Maybe Prelude.Text,+ -- | The engine type of an instance.+ engine :: Prelude.Maybe Prelude.Text,+ -- | The engine version of an instance.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | The license model for an instance.+ licenseModel :: Prelude.Maybe Prelude.Text,+ -- | Indicates whether an instance is in a virtual private cloud (VPC).+ vpc :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OrderableDBInstanceOption' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'availabilityZones', 'orderableDBInstanceOption_availabilityZones' - A list of Availability Zones for an instance.+--+-- 'dbInstanceClass', 'orderableDBInstanceOption_dbInstanceClass' - The instance class for an instance.+--+-- 'engine', 'orderableDBInstanceOption_engine' - The engine type of an instance.+--+-- 'engineVersion', 'orderableDBInstanceOption_engineVersion' - The engine version of an instance.+--+-- 'licenseModel', 'orderableDBInstanceOption_licenseModel' - The license model for an instance.+--+-- 'vpc', 'orderableDBInstanceOption_vpc' - Indicates whether an instance is in a virtual private cloud (VPC).+newOrderableDBInstanceOption ::+ OrderableDBInstanceOption+newOrderableDBInstanceOption =+ OrderableDBInstanceOption'+ { availabilityZones =+ Prelude.Nothing,+ dbInstanceClass = Prelude.Nothing,+ engine = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ licenseModel = Prelude.Nothing,+ vpc = Prelude.Nothing+ }++-- | A list of Availability Zones for an instance.+orderableDBInstanceOption_availabilityZones :: Lens.Lens' OrderableDBInstanceOption (Prelude.Maybe [AvailabilityZone])+orderableDBInstanceOption_availabilityZones = Lens.lens (\OrderableDBInstanceOption' {availabilityZones} -> availabilityZones) (\s@OrderableDBInstanceOption' {} a -> s {availabilityZones = a} :: OrderableDBInstanceOption) Prelude.. Lens.mapping Lens.coerced++-- | The instance class for an instance.+orderableDBInstanceOption_dbInstanceClass :: Lens.Lens' OrderableDBInstanceOption (Prelude.Maybe Prelude.Text)+orderableDBInstanceOption_dbInstanceClass = Lens.lens (\OrderableDBInstanceOption' {dbInstanceClass} -> dbInstanceClass) (\s@OrderableDBInstanceOption' {} a -> s {dbInstanceClass = a} :: OrderableDBInstanceOption)++-- | The engine type of an instance.+orderableDBInstanceOption_engine :: Lens.Lens' OrderableDBInstanceOption (Prelude.Maybe Prelude.Text)+orderableDBInstanceOption_engine = Lens.lens (\OrderableDBInstanceOption' {engine} -> engine) (\s@OrderableDBInstanceOption' {} a -> s {engine = a} :: OrderableDBInstanceOption)++-- | The engine version of an instance.+orderableDBInstanceOption_engineVersion :: Lens.Lens' OrderableDBInstanceOption (Prelude.Maybe Prelude.Text)+orderableDBInstanceOption_engineVersion = Lens.lens (\OrderableDBInstanceOption' {engineVersion} -> engineVersion) (\s@OrderableDBInstanceOption' {} a -> s {engineVersion = a} :: OrderableDBInstanceOption)++-- | The license model for an instance.+orderableDBInstanceOption_licenseModel :: Lens.Lens' OrderableDBInstanceOption (Prelude.Maybe Prelude.Text)+orderableDBInstanceOption_licenseModel = Lens.lens (\OrderableDBInstanceOption' {licenseModel} -> licenseModel) (\s@OrderableDBInstanceOption' {} a -> s {licenseModel = a} :: OrderableDBInstanceOption)++-- | Indicates whether an instance is in a virtual private cloud (VPC).+orderableDBInstanceOption_vpc :: Lens.Lens' OrderableDBInstanceOption (Prelude.Maybe Prelude.Bool)+orderableDBInstanceOption_vpc = Lens.lens (\OrderableDBInstanceOption' {vpc} -> vpc) (\s@OrderableDBInstanceOption' {} a -> s {vpc = a} :: OrderableDBInstanceOption)++instance Data.FromXML OrderableDBInstanceOption where+ parseXML x =+ OrderableDBInstanceOption'+ Prelude.<$> ( x+ Data..@? "AvailabilityZones"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "AvailabilityZone")+ )+ Prelude.<*> (x Data..@? "DBInstanceClass")+ Prelude.<*> (x Data..@? "Engine")+ Prelude.<*> (x Data..@? "EngineVersion")+ Prelude.<*> (x Data..@? "LicenseModel")+ Prelude.<*> (x Data..@? "Vpc")++instance Prelude.Hashable OrderableDBInstanceOption where+ hashWithSalt _salt OrderableDBInstanceOption' {..} =+ _salt+ `Prelude.hashWithSalt` availabilityZones+ `Prelude.hashWithSalt` dbInstanceClass+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` licenseModel+ `Prelude.hashWithSalt` vpc++instance Prelude.NFData OrderableDBInstanceOption where+ rnf OrderableDBInstanceOption' {..} =+ Prelude.rnf availabilityZones+ `Prelude.seq` Prelude.rnf dbInstanceClass+ `Prelude.seq` Prelude.rnf engine+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf licenseModel+ `Prelude.seq` Prelude.rnf vpc
+ gen/Amazonka/DocumentDB/Types/Parameter.hs view
@@ -0,0 +1,198 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.Parameter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.Parameter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.ApplyMethod+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about an individual parameter.+--+-- /See:/ 'newParameter' smart constructor.+data Parameter = Parameter'+ { -- | Specifies the valid range of values for the parameter.+ allowedValues :: Prelude.Maybe Prelude.Text,+ -- | Indicates when to apply parameter updates.+ applyMethod :: Prelude.Maybe ApplyMethod,+ -- | Specifies the engine-specific parameters type.+ applyType :: Prelude.Maybe Prelude.Text,+ -- | Specifies the valid data type for the parameter.+ dataType :: Prelude.Maybe Prelude.Text,+ -- | Provides a description of the parameter.+ description :: Prelude.Maybe Prelude.Text,+ -- | Indicates whether (@true@) or not (@false@) the parameter can be+ -- modified. Some parameters have security or operational implications that+ -- prevent them from being changed.+ isModifiable :: Prelude.Maybe Prelude.Bool,+ -- | The earliest engine version to which the parameter can apply.+ minimumEngineVersion :: Prelude.Maybe Prelude.Text,+ -- | Specifies the name of the parameter.+ parameterName :: Prelude.Maybe Prelude.Text,+ -- | Specifies the value of the parameter.+ parameterValue :: Prelude.Maybe Prelude.Text,+ -- | Indicates the source of the parameter value.+ source :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Parameter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowedValues', 'parameter_allowedValues' - Specifies the valid range of values for the parameter.+--+-- 'applyMethod', 'parameter_applyMethod' - Indicates when to apply parameter updates.+--+-- 'applyType', 'parameter_applyType' - Specifies the engine-specific parameters type.+--+-- 'dataType', 'parameter_dataType' - Specifies the valid data type for the parameter.+--+-- 'description', 'parameter_description' - Provides a description of the parameter.+--+-- 'isModifiable', 'parameter_isModifiable' - Indicates whether (@true@) or not (@false@) the parameter can be+-- modified. Some parameters have security or operational implications that+-- prevent them from being changed.+--+-- 'minimumEngineVersion', 'parameter_minimumEngineVersion' - The earliest engine version to which the parameter can apply.+--+-- 'parameterName', 'parameter_parameterName' - Specifies the name of the parameter.+--+-- 'parameterValue', 'parameter_parameterValue' - Specifies the value of the parameter.+--+-- 'source', 'parameter_source' - Indicates the source of the parameter value.+newParameter ::+ Parameter+newParameter =+ Parameter'+ { allowedValues = Prelude.Nothing,+ applyMethod = Prelude.Nothing,+ applyType = Prelude.Nothing,+ dataType = Prelude.Nothing,+ description = Prelude.Nothing,+ isModifiable = Prelude.Nothing,+ minimumEngineVersion = Prelude.Nothing,+ parameterName = Prelude.Nothing,+ parameterValue = Prelude.Nothing,+ source = Prelude.Nothing+ }++-- | Specifies the valid range of values for the parameter.+parameter_allowedValues :: Lens.Lens' Parameter (Prelude.Maybe Prelude.Text)+parameter_allowedValues = Lens.lens (\Parameter' {allowedValues} -> allowedValues) (\s@Parameter' {} a -> s {allowedValues = a} :: Parameter)++-- | Indicates when to apply parameter updates.+parameter_applyMethod :: Lens.Lens' Parameter (Prelude.Maybe ApplyMethod)+parameter_applyMethod = Lens.lens (\Parameter' {applyMethod} -> applyMethod) (\s@Parameter' {} a -> s {applyMethod = a} :: Parameter)++-- | Specifies the engine-specific parameters type.+parameter_applyType :: Lens.Lens' Parameter (Prelude.Maybe Prelude.Text)+parameter_applyType = Lens.lens (\Parameter' {applyType} -> applyType) (\s@Parameter' {} a -> s {applyType = a} :: Parameter)++-- | Specifies the valid data type for the parameter.+parameter_dataType :: Lens.Lens' Parameter (Prelude.Maybe Prelude.Text)+parameter_dataType = Lens.lens (\Parameter' {dataType} -> dataType) (\s@Parameter' {} a -> s {dataType = a} :: Parameter)++-- | Provides a description of the parameter.+parameter_description :: Lens.Lens' Parameter (Prelude.Maybe Prelude.Text)+parameter_description = Lens.lens (\Parameter' {description} -> description) (\s@Parameter' {} a -> s {description = a} :: Parameter)++-- | Indicates whether (@true@) or not (@false@) the parameter can be+-- modified. Some parameters have security or operational implications that+-- prevent them from being changed.+parameter_isModifiable :: Lens.Lens' Parameter (Prelude.Maybe Prelude.Bool)+parameter_isModifiable = Lens.lens (\Parameter' {isModifiable} -> isModifiable) (\s@Parameter' {} a -> s {isModifiable = a} :: Parameter)++-- | The earliest engine version to which the parameter can apply.+parameter_minimumEngineVersion :: Lens.Lens' Parameter (Prelude.Maybe Prelude.Text)+parameter_minimumEngineVersion = Lens.lens (\Parameter' {minimumEngineVersion} -> minimumEngineVersion) (\s@Parameter' {} a -> s {minimumEngineVersion = a} :: Parameter)++-- | Specifies the name of the parameter.+parameter_parameterName :: Lens.Lens' Parameter (Prelude.Maybe Prelude.Text)+parameter_parameterName = Lens.lens (\Parameter' {parameterName} -> parameterName) (\s@Parameter' {} a -> s {parameterName = a} :: Parameter)++-- | Specifies the value of the parameter.+parameter_parameterValue :: Lens.Lens' Parameter (Prelude.Maybe Prelude.Text)+parameter_parameterValue = Lens.lens (\Parameter' {parameterValue} -> parameterValue) (\s@Parameter' {} a -> s {parameterValue = a} :: Parameter)++-- | Indicates the source of the parameter value.+parameter_source :: Lens.Lens' Parameter (Prelude.Maybe Prelude.Text)+parameter_source = Lens.lens (\Parameter' {source} -> source) (\s@Parameter' {} a -> s {source = a} :: Parameter)++instance Data.FromXML Parameter where+ parseXML x =+ Parameter'+ Prelude.<$> (x Data..@? "AllowedValues")+ Prelude.<*> (x Data..@? "ApplyMethod")+ Prelude.<*> (x Data..@? "ApplyType")+ Prelude.<*> (x Data..@? "DataType")+ Prelude.<*> (x Data..@? "Description")+ Prelude.<*> (x Data..@? "IsModifiable")+ Prelude.<*> (x Data..@? "MinimumEngineVersion")+ Prelude.<*> (x Data..@? "ParameterName")+ Prelude.<*> (x Data..@? "ParameterValue")+ Prelude.<*> (x Data..@? "Source")++instance Prelude.Hashable Parameter where+ hashWithSalt _salt Parameter' {..} =+ _salt+ `Prelude.hashWithSalt` allowedValues+ `Prelude.hashWithSalt` applyMethod+ `Prelude.hashWithSalt` applyType+ `Prelude.hashWithSalt` dataType+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` isModifiable+ `Prelude.hashWithSalt` minimumEngineVersion+ `Prelude.hashWithSalt` parameterName+ `Prelude.hashWithSalt` parameterValue+ `Prelude.hashWithSalt` source++instance Prelude.NFData Parameter where+ rnf Parameter' {..} =+ Prelude.rnf allowedValues+ `Prelude.seq` Prelude.rnf applyMethod+ `Prelude.seq` Prelude.rnf applyType+ `Prelude.seq` Prelude.rnf dataType+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf isModifiable+ `Prelude.seq` Prelude.rnf minimumEngineVersion+ `Prelude.seq` Prelude.rnf parameterName+ `Prelude.seq` Prelude.rnf parameterValue+ `Prelude.seq` Prelude.rnf source++instance Data.ToQuery Parameter where+ toQuery Parameter' {..} =+ Prelude.mconcat+ [ "AllowedValues" Data.=: allowedValues,+ "ApplyMethod" Data.=: applyMethod,+ "ApplyType" Data.=: applyType,+ "DataType" Data.=: dataType,+ "Description" Data.=: description,+ "IsModifiable" Data.=: isModifiable,+ "MinimumEngineVersion" Data.=: minimumEngineVersion,+ "ParameterName" Data.=: parameterName,+ "ParameterValue" Data.=: parameterValue,+ "Source" Data.=: source+ ]
+ gen/Amazonka/DocumentDB/Types/PendingCloudwatchLogsExports.hs view
@@ -0,0 +1,99 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.PendingCloudwatchLogsExports+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.PendingCloudwatchLogsExports where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A list of the log types whose configuration is still pending. These log+-- types are in the process of being activated or deactivated.+--+-- /See:/ 'newPendingCloudwatchLogsExports' smart constructor.+data PendingCloudwatchLogsExports = PendingCloudwatchLogsExports'+ { -- | Log types that are in the process of being enabled. After they are+ -- enabled, these log types are exported to Amazon CloudWatch Logs.+ logTypesToDisable :: Prelude.Maybe [Prelude.Text],+ -- | Log types that are in the process of being deactivated. After they are+ -- deactivated, these log types aren\'t exported to CloudWatch Logs.+ logTypesToEnable :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PendingCloudwatchLogsExports' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'logTypesToDisable', 'pendingCloudwatchLogsExports_logTypesToDisable' - Log types that are in the process of being enabled. After they are+-- enabled, these log types are exported to Amazon CloudWatch Logs.+--+-- 'logTypesToEnable', 'pendingCloudwatchLogsExports_logTypesToEnable' - Log types that are in the process of being deactivated. After they are+-- deactivated, these log types aren\'t exported to CloudWatch Logs.+newPendingCloudwatchLogsExports ::+ PendingCloudwatchLogsExports+newPendingCloudwatchLogsExports =+ PendingCloudwatchLogsExports'+ { logTypesToDisable =+ Prelude.Nothing,+ logTypesToEnable = Prelude.Nothing+ }++-- | Log types that are in the process of being enabled. After they are+-- enabled, these log types are exported to Amazon CloudWatch Logs.+pendingCloudwatchLogsExports_logTypesToDisable :: Lens.Lens' PendingCloudwatchLogsExports (Prelude.Maybe [Prelude.Text])+pendingCloudwatchLogsExports_logTypesToDisable = Lens.lens (\PendingCloudwatchLogsExports' {logTypesToDisable} -> logTypesToDisable) (\s@PendingCloudwatchLogsExports' {} a -> s {logTypesToDisable = a} :: PendingCloudwatchLogsExports) Prelude.. Lens.mapping Lens.coerced++-- | Log types that are in the process of being deactivated. After they are+-- deactivated, these log types aren\'t exported to CloudWatch Logs.+pendingCloudwatchLogsExports_logTypesToEnable :: Lens.Lens' PendingCloudwatchLogsExports (Prelude.Maybe [Prelude.Text])+pendingCloudwatchLogsExports_logTypesToEnable = Lens.lens (\PendingCloudwatchLogsExports' {logTypesToEnable} -> logTypesToEnable) (\s@PendingCloudwatchLogsExports' {} a -> s {logTypesToEnable = a} :: PendingCloudwatchLogsExports) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML PendingCloudwatchLogsExports where+ parseXML x =+ PendingCloudwatchLogsExports'+ Prelude.<$> ( x+ Data..@? "LogTypesToDisable"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> ( x+ Data..@? "LogTypesToEnable"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )++instance+ Prelude.Hashable+ PendingCloudwatchLogsExports+ where+ hashWithSalt _salt PendingCloudwatchLogsExports' {..} =+ _salt+ `Prelude.hashWithSalt` logTypesToDisable+ `Prelude.hashWithSalt` logTypesToEnable++instance Prelude.NFData PendingCloudwatchLogsExports where+ rnf PendingCloudwatchLogsExports' {..} =+ Prelude.rnf logTypesToDisable+ `Prelude.seq` Prelude.rnf logTypesToEnable
+ gen/Amazonka/DocumentDB/Types/PendingMaintenanceAction.hs view
@@ -0,0 +1,155 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.PendingMaintenanceAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.PendingMaintenanceAction where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides information about a pending maintenance action for a resource.+--+-- /See:/ 'newPendingMaintenanceAction' smart constructor.+data PendingMaintenanceAction = PendingMaintenanceAction'+ { -- | The type of pending maintenance action that is available for the+ -- resource.+ action :: Prelude.Maybe Prelude.Text,+ -- | The date of the maintenance window when the action is applied. The+ -- maintenance action is applied to the resource during its first+ -- maintenance window after this date. If this date is specified, any+ -- @next-maintenance@ opt-in requests are ignored.+ autoAppliedAfterDate :: Prelude.Maybe Data.ISO8601,+ -- | The effective date when the pending maintenance action is applied to the+ -- resource.+ currentApplyDate :: Prelude.Maybe Data.ISO8601,+ -- | A description providing more detail about the maintenance action.+ description :: Prelude.Maybe Prelude.Text,+ -- | The date when the maintenance action is automatically applied. The+ -- maintenance action is applied to the resource on this date regardless of+ -- the maintenance window for the resource. If this date is specified, any+ -- @immediate@ opt-in requests are ignored.+ forcedApplyDate :: Prelude.Maybe Data.ISO8601,+ -- | Indicates the type of opt-in request that has been received for the+ -- resource.+ optInStatus :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PendingMaintenanceAction' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'action', 'pendingMaintenanceAction_action' - The type of pending maintenance action that is available for the+-- resource.+--+-- 'autoAppliedAfterDate', 'pendingMaintenanceAction_autoAppliedAfterDate' - The date of the maintenance window when the action is applied. The+-- maintenance action is applied to the resource during its first+-- maintenance window after this date. If this date is specified, any+-- @next-maintenance@ opt-in requests are ignored.+--+-- 'currentApplyDate', 'pendingMaintenanceAction_currentApplyDate' - The effective date when the pending maintenance action is applied to the+-- resource.+--+-- 'description', 'pendingMaintenanceAction_description' - A description providing more detail about the maintenance action.+--+-- 'forcedApplyDate', 'pendingMaintenanceAction_forcedApplyDate' - The date when the maintenance action is automatically applied. The+-- maintenance action is applied to the resource on this date regardless of+-- the maintenance window for the resource. If this date is specified, any+-- @immediate@ opt-in requests are ignored.+--+-- 'optInStatus', 'pendingMaintenanceAction_optInStatus' - Indicates the type of opt-in request that has been received for the+-- resource.+newPendingMaintenanceAction ::+ PendingMaintenanceAction+newPendingMaintenanceAction =+ PendingMaintenanceAction'+ { action = Prelude.Nothing,+ autoAppliedAfterDate = Prelude.Nothing,+ currentApplyDate = Prelude.Nothing,+ description = Prelude.Nothing,+ forcedApplyDate = Prelude.Nothing,+ optInStatus = Prelude.Nothing+ }++-- | The type of pending maintenance action that is available for the+-- resource.+pendingMaintenanceAction_action :: Lens.Lens' PendingMaintenanceAction (Prelude.Maybe Prelude.Text)+pendingMaintenanceAction_action = Lens.lens (\PendingMaintenanceAction' {action} -> action) (\s@PendingMaintenanceAction' {} a -> s {action = a} :: PendingMaintenanceAction)++-- | The date of the maintenance window when the action is applied. The+-- maintenance action is applied to the resource during its first+-- maintenance window after this date. If this date is specified, any+-- @next-maintenance@ opt-in requests are ignored.+pendingMaintenanceAction_autoAppliedAfterDate :: Lens.Lens' PendingMaintenanceAction (Prelude.Maybe Prelude.UTCTime)+pendingMaintenanceAction_autoAppliedAfterDate = Lens.lens (\PendingMaintenanceAction' {autoAppliedAfterDate} -> autoAppliedAfterDate) (\s@PendingMaintenanceAction' {} a -> s {autoAppliedAfterDate = a} :: PendingMaintenanceAction) Prelude.. Lens.mapping Data._Time++-- | The effective date when the pending maintenance action is applied to the+-- resource.+pendingMaintenanceAction_currentApplyDate :: Lens.Lens' PendingMaintenanceAction (Prelude.Maybe Prelude.UTCTime)+pendingMaintenanceAction_currentApplyDate = Lens.lens (\PendingMaintenanceAction' {currentApplyDate} -> currentApplyDate) (\s@PendingMaintenanceAction' {} a -> s {currentApplyDate = a} :: PendingMaintenanceAction) Prelude.. Lens.mapping Data._Time++-- | A description providing more detail about the maintenance action.+pendingMaintenanceAction_description :: Lens.Lens' PendingMaintenanceAction (Prelude.Maybe Prelude.Text)+pendingMaintenanceAction_description = Lens.lens (\PendingMaintenanceAction' {description} -> description) (\s@PendingMaintenanceAction' {} a -> s {description = a} :: PendingMaintenanceAction)++-- | The date when the maintenance action is automatically applied. The+-- maintenance action is applied to the resource on this date regardless of+-- the maintenance window for the resource. If this date is specified, any+-- @immediate@ opt-in requests are ignored.+pendingMaintenanceAction_forcedApplyDate :: Lens.Lens' PendingMaintenanceAction (Prelude.Maybe Prelude.UTCTime)+pendingMaintenanceAction_forcedApplyDate = Lens.lens (\PendingMaintenanceAction' {forcedApplyDate} -> forcedApplyDate) (\s@PendingMaintenanceAction' {} a -> s {forcedApplyDate = a} :: PendingMaintenanceAction) Prelude.. Lens.mapping Data._Time++-- | Indicates the type of opt-in request that has been received for the+-- resource.+pendingMaintenanceAction_optInStatus :: Lens.Lens' PendingMaintenanceAction (Prelude.Maybe Prelude.Text)+pendingMaintenanceAction_optInStatus = Lens.lens (\PendingMaintenanceAction' {optInStatus} -> optInStatus) (\s@PendingMaintenanceAction' {} a -> s {optInStatus = a} :: PendingMaintenanceAction)++instance Data.FromXML PendingMaintenanceAction where+ parseXML x =+ PendingMaintenanceAction'+ Prelude.<$> (x Data..@? "Action")+ Prelude.<*> (x Data..@? "AutoAppliedAfterDate")+ Prelude.<*> (x Data..@? "CurrentApplyDate")+ Prelude.<*> (x Data..@? "Description")+ Prelude.<*> (x Data..@? "ForcedApplyDate")+ Prelude.<*> (x Data..@? "OptInStatus")++instance Prelude.Hashable PendingMaintenanceAction where+ hashWithSalt _salt PendingMaintenanceAction' {..} =+ _salt+ `Prelude.hashWithSalt` action+ `Prelude.hashWithSalt` autoAppliedAfterDate+ `Prelude.hashWithSalt` currentApplyDate+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` forcedApplyDate+ `Prelude.hashWithSalt` optInStatus++instance Prelude.NFData PendingMaintenanceAction where+ rnf PendingMaintenanceAction' {..} =+ Prelude.rnf action+ `Prelude.seq` Prelude.rnf autoAppliedAfterDate+ `Prelude.seq` Prelude.rnf currentApplyDate+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf forcedApplyDate+ `Prelude.seq` Prelude.rnf optInStatus
+ gen/Amazonka/DocumentDB/Types/PendingModifiedValues.hs view
@@ -0,0 +1,263 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.PendingModifiedValues+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.PendingModifiedValues where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.PendingCloudwatchLogsExports+import qualified Amazonka.Prelude as Prelude++-- | One or more modified settings for an instance. These modified settings+-- have been requested, but haven\'t been applied yet.+--+-- /See:/ 'newPendingModifiedValues' smart constructor.+data PendingModifiedValues = PendingModifiedValues'+ { -- | Contains the new @AllocatedStorage@ size for then instance that will be+ -- applied or is currently being applied.+ allocatedStorage :: Prelude.Maybe Prelude.Int,+ -- | Specifies the pending number of days for which automated backups are+ -- retained.+ backupRetentionPeriod :: Prelude.Maybe Prelude.Int,+ -- | Specifies the identifier of the certificate authority (CA) certificate+ -- for the DB instance.+ cACertificateIdentifier :: Prelude.Maybe Prelude.Text,+ -- | Contains the new @DBInstanceClass@ for the instance that will be applied+ -- or is currently being applied.+ dbInstanceClass :: Prelude.Maybe Prelude.Text,+ -- | Contains the new @DBInstanceIdentifier@ for the instance that will be+ -- applied or is currently being applied.+ dbInstanceIdentifier :: Prelude.Maybe Prelude.Text,+ -- | The new subnet group for the instance.+ dbSubnetGroupName :: Prelude.Maybe Prelude.Text,+ -- | Indicates the database engine version.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | Specifies the new Provisioned IOPS value for the instance that will be+ -- applied or is currently being applied.+ iops :: Prelude.Maybe Prelude.Int,+ -- | The license model for the instance.+ --+ -- Valid values: @license-included@, @bring-your-own-license@,+ -- @general-public-license@+ licenseModel :: Prelude.Maybe Prelude.Text,+ -- | Contains the pending or currently in-progress change of the master+ -- credentials for the instance.+ masterUserPassword :: Prelude.Maybe Prelude.Text,+ -- | Indicates that the Single-AZ instance is to change to a Multi-AZ+ -- deployment.+ multiAZ :: Prelude.Maybe Prelude.Bool,+ -- | A list of the log types whose configuration is still pending. These log+ -- types are in the process of being activated or deactivated.+ pendingCloudwatchLogsExports :: Prelude.Maybe PendingCloudwatchLogsExports,+ -- | Specifies the pending port for the instance.+ port :: Prelude.Maybe Prelude.Int,+ -- | Specifies the storage type to be associated with the instance.+ storageType :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PendingModifiedValues' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allocatedStorage', 'pendingModifiedValues_allocatedStorage' - Contains the new @AllocatedStorage@ size for then instance that will be+-- applied or is currently being applied.+--+-- 'backupRetentionPeriod', 'pendingModifiedValues_backupRetentionPeriod' - Specifies the pending number of days for which automated backups are+-- retained.+--+-- 'cACertificateIdentifier', 'pendingModifiedValues_cACertificateIdentifier' - Specifies the identifier of the certificate authority (CA) certificate+-- for the DB instance.+--+-- 'dbInstanceClass', 'pendingModifiedValues_dbInstanceClass' - Contains the new @DBInstanceClass@ for the instance that will be applied+-- or is currently being applied.+--+-- 'dbInstanceIdentifier', 'pendingModifiedValues_dbInstanceIdentifier' - Contains the new @DBInstanceIdentifier@ for the instance that will be+-- applied or is currently being applied.+--+-- 'dbSubnetGroupName', 'pendingModifiedValues_dbSubnetGroupName' - The new subnet group for the instance.+--+-- 'engineVersion', 'pendingModifiedValues_engineVersion' - Indicates the database engine version.+--+-- 'iops', 'pendingModifiedValues_iops' - Specifies the new Provisioned IOPS value for the instance that will be+-- applied or is currently being applied.+--+-- 'licenseModel', 'pendingModifiedValues_licenseModel' - The license model for the instance.+--+-- Valid values: @license-included@, @bring-your-own-license@,+-- @general-public-license@+--+-- 'masterUserPassword', 'pendingModifiedValues_masterUserPassword' - Contains the pending or currently in-progress change of the master+-- credentials for the instance.+--+-- 'multiAZ', 'pendingModifiedValues_multiAZ' - Indicates that the Single-AZ instance is to change to a Multi-AZ+-- deployment.+--+-- 'pendingCloudwatchLogsExports', 'pendingModifiedValues_pendingCloudwatchLogsExports' - A list of the log types whose configuration is still pending. These log+-- types are in the process of being activated or deactivated.+--+-- 'port', 'pendingModifiedValues_port' - Specifies the pending port for the instance.+--+-- 'storageType', 'pendingModifiedValues_storageType' - Specifies the storage type to be associated with the instance.+newPendingModifiedValues ::+ PendingModifiedValues+newPendingModifiedValues =+ PendingModifiedValues'+ { allocatedStorage =+ Prelude.Nothing,+ backupRetentionPeriod = Prelude.Nothing,+ cACertificateIdentifier = Prelude.Nothing,+ dbInstanceClass = Prelude.Nothing,+ dbInstanceIdentifier = Prelude.Nothing,+ dbSubnetGroupName = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ iops = Prelude.Nothing,+ licenseModel = Prelude.Nothing,+ masterUserPassword = Prelude.Nothing,+ multiAZ = Prelude.Nothing,+ pendingCloudwatchLogsExports = Prelude.Nothing,+ port = Prelude.Nothing,+ storageType = Prelude.Nothing+ }++-- | Contains the new @AllocatedStorage@ size for then instance that will be+-- applied or is currently being applied.+pendingModifiedValues_allocatedStorage :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Int)+pendingModifiedValues_allocatedStorage = Lens.lens (\PendingModifiedValues' {allocatedStorage} -> allocatedStorage) (\s@PendingModifiedValues' {} a -> s {allocatedStorage = a} :: PendingModifiedValues)++-- | Specifies the pending number of days for which automated backups are+-- retained.+pendingModifiedValues_backupRetentionPeriod :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Int)+pendingModifiedValues_backupRetentionPeriod = Lens.lens (\PendingModifiedValues' {backupRetentionPeriod} -> backupRetentionPeriod) (\s@PendingModifiedValues' {} a -> s {backupRetentionPeriod = a} :: PendingModifiedValues)++-- | Specifies the identifier of the certificate authority (CA) certificate+-- for the DB instance.+pendingModifiedValues_cACertificateIdentifier :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Text)+pendingModifiedValues_cACertificateIdentifier = Lens.lens (\PendingModifiedValues' {cACertificateIdentifier} -> cACertificateIdentifier) (\s@PendingModifiedValues' {} a -> s {cACertificateIdentifier = a} :: PendingModifiedValues)++-- | Contains the new @DBInstanceClass@ for the instance that will be applied+-- or is currently being applied.+pendingModifiedValues_dbInstanceClass :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Text)+pendingModifiedValues_dbInstanceClass = Lens.lens (\PendingModifiedValues' {dbInstanceClass} -> dbInstanceClass) (\s@PendingModifiedValues' {} a -> s {dbInstanceClass = a} :: PendingModifiedValues)++-- | Contains the new @DBInstanceIdentifier@ for the instance that will be+-- applied or is currently being applied.+pendingModifiedValues_dbInstanceIdentifier :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Text)+pendingModifiedValues_dbInstanceIdentifier = Lens.lens (\PendingModifiedValues' {dbInstanceIdentifier} -> dbInstanceIdentifier) (\s@PendingModifiedValues' {} a -> s {dbInstanceIdentifier = a} :: PendingModifiedValues)++-- | The new subnet group for the instance.+pendingModifiedValues_dbSubnetGroupName :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Text)+pendingModifiedValues_dbSubnetGroupName = Lens.lens (\PendingModifiedValues' {dbSubnetGroupName} -> dbSubnetGroupName) (\s@PendingModifiedValues' {} a -> s {dbSubnetGroupName = a} :: PendingModifiedValues)++-- | Indicates the database engine version.+pendingModifiedValues_engineVersion :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Text)+pendingModifiedValues_engineVersion = Lens.lens (\PendingModifiedValues' {engineVersion} -> engineVersion) (\s@PendingModifiedValues' {} a -> s {engineVersion = a} :: PendingModifiedValues)++-- | Specifies the new Provisioned IOPS value for the instance that will be+-- applied or is currently being applied.+pendingModifiedValues_iops :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Int)+pendingModifiedValues_iops = Lens.lens (\PendingModifiedValues' {iops} -> iops) (\s@PendingModifiedValues' {} a -> s {iops = a} :: PendingModifiedValues)++-- | The license model for the instance.+--+-- Valid values: @license-included@, @bring-your-own-license@,+-- @general-public-license@+pendingModifiedValues_licenseModel :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Text)+pendingModifiedValues_licenseModel = Lens.lens (\PendingModifiedValues' {licenseModel} -> licenseModel) (\s@PendingModifiedValues' {} a -> s {licenseModel = a} :: PendingModifiedValues)++-- | Contains the pending or currently in-progress change of the master+-- credentials for the instance.+pendingModifiedValues_masterUserPassword :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Text)+pendingModifiedValues_masterUserPassword = Lens.lens (\PendingModifiedValues' {masterUserPassword} -> masterUserPassword) (\s@PendingModifiedValues' {} a -> s {masterUserPassword = a} :: PendingModifiedValues)++-- | Indicates that the Single-AZ instance is to change to a Multi-AZ+-- deployment.+pendingModifiedValues_multiAZ :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Bool)+pendingModifiedValues_multiAZ = Lens.lens (\PendingModifiedValues' {multiAZ} -> multiAZ) (\s@PendingModifiedValues' {} a -> s {multiAZ = a} :: PendingModifiedValues)++-- | A list of the log types whose configuration is still pending. These log+-- types are in the process of being activated or deactivated.+pendingModifiedValues_pendingCloudwatchLogsExports :: Lens.Lens' PendingModifiedValues (Prelude.Maybe PendingCloudwatchLogsExports)+pendingModifiedValues_pendingCloudwatchLogsExports = Lens.lens (\PendingModifiedValues' {pendingCloudwatchLogsExports} -> pendingCloudwatchLogsExports) (\s@PendingModifiedValues' {} a -> s {pendingCloudwatchLogsExports = a} :: PendingModifiedValues)++-- | Specifies the pending port for the instance.+pendingModifiedValues_port :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Int)+pendingModifiedValues_port = Lens.lens (\PendingModifiedValues' {port} -> port) (\s@PendingModifiedValues' {} a -> s {port = a} :: PendingModifiedValues)++-- | Specifies the storage type to be associated with the instance.+pendingModifiedValues_storageType :: Lens.Lens' PendingModifiedValues (Prelude.Maybe Prelude.Text)+pendingModifiedValues_storageType = Lens.lens (\PendingModifiedValues' {storageType} -> storageType) (\s@PendingModifiedValues' {} a -> s {storageType = a} :: PendingModifiedValues)++instance Data.FromXML PendingModifiedValues where+ parseXML x =+ PendingModifiedValues'+ Prelude.<$> (x Data..@? "AllocatedStorage")+ Prelude.<*> (x Data..@? "BackupRetentionPeriod")+ Prelude.<*> (x Data..@? "CACertificateIdentifier")+ Prelude.<*> (x Data..@? "DBInstanceClass")+ Prelude.<*> (x Data..@? "DBInstanceIdentifier")+ Prelude.<*> (x Data..@? "DBSubnetGroupName")+ Prelude.<*> (x Data..@? "EngineVersion")+ Prelude.<*> (x Data..@? "Iops")+ Prelude.<*> (x Data..@? "LicenseModel")+ Prelude.<*> (x Data..@? "MasterUserPassword")+ Prelude.<*> (x Data..@? "MultiAZ")+ Prelude.<*> (x Data..@? "PendingCloudwatchLogsExports")+ Prelude.<*> (x Data..@? "Port")+ Prelude.<*> (x Data..@? "StorageType")++instance Prelude.Hashable PendingModifiedValues where+ hashWithSalt _salt PendingModifiedValues' {..} =+ _salt+ `Prelude.hashWithSalt` allocatedStorage+ `Prelude.hashWithSalt` backupRetentionPeriod+ `Prelude.hashWithSalt` cACertificateIdentifier+ `Prelude.hashWithSalt` dbInstanceClass+ `Prelude.hashWithSalt` dbInstanceIdentifier+ `Prelude.hashWithSalt` dbSubnetGroupName+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` iops+ `Prelude.hashWithSalt` licenseModel+ `Prelude.hashWithSalt` masterUserPassword+ `Prelude.hashWithSalt` multiAZ+ `Prelude.hashWithSalt` pendingCloudwatchLogsExports+ `Prelude.hashWithSalt` port+ `Prelude.hashWithSalt` storageType++instance Prelude.NFData PendingModifiedValues where+ rnf PendingModifiedValues' {..} =+ Prelude.rnf allocatedStorage+ `Prelude.seq` Prelude.rnf backupRetentionPeriod+ `Prelude.seq` Prelude.rnf cACertificateIdentifier+ `Prelude.seq` Prelude.rnf dbInstanceClass+ `Prelude.seq` Prelude.rnf dbInstanceIdentifier+ `Prelude.seq` Prelude.rnf dbSubnetGroupName+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf iops+ `Prelude.seq` Prelude.rnf licenseModel+ `Prelude.seq` Prelude.rnf masterUserPassword+ `Prelude.seq` Prelude.rnf multiAZ+ `Prelude.seq` Prelude.rnf pendingCloudwatchLogsExports+ `Prelude.seq` Prelude.rnf port+ `Prelude.seq` Prelude.rnf storageType
+ gen/Amazonka/DocumentDB/Types/ResourcePendingMaintenanceActions.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.ResourcePendingMaintenanceActions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.ResourcePendingMaintenanceActions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.PendingMaintenanceAction+import qualified Amazonka.Prelude as Prelude++-- | Represents the output of ApplyPendingMaintenanceAction.+--+-- /See:/ 'newResourcePendingMaintenanceActions' smart constructor.+data ResourcePendingMaintenanceActions = ResourcePendingMaintenanceActions'+ { -- | A list that provides details about the pending maintenance actions for+ -- the resource.+ pendingMaintenanceActionDetails :: Prelude.Maybe [PendingMaintenanceAction],+ -- | The Amazon Resource Name (ARN) of the resource that has pending+ -- maintenance actions.+ resourceIdentifier :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResourcePendingMaintenanceActions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'pendingMaintenanceActionDetails', 'resourcePendingMaintenanceActions_pendingMaintenanceActionDetails' - A list that provides details about the pending maintenance actions for+-- the resource.+--+-- 'resourceIdentifier', 'resourcePendingMaintenanceActions_resourceIdentifier' - The Amazon Resource Name (ARN) of the resource that has pending+-- maintenance actions.+newResourcePendingMaintenanceActions ::+ ResourcePendingMaintenanceActions+newResourcePendingMaintenanceActions =+ ResourcePendingMaintenanceActions'+ { pendingMaintenanceActionDetails =+ Prelude.Nothing,+ resourceIdentifier = Prelude.Nothing+ }++-- | A list that provides details about the pending maintenance actions for+-- the resource.+resourcePendingMaintenanceActions_pendingMaintenanceActionDetails :: Lens.Lens' ResourcePendingMaintenanceActions (Prelude.Maybe [PendingMaintenanceAction])+resourcePendingMaintenanceActions_pendingMaintenanceActionDetails = Lens.lens (\ResourcePendingMaintenanceActions' {pendingMaintenanceActionDetails} -> pendingMaintenanceActionDetails) (\s@ResourcePendingMaintenanceActions' {} a -> s {pendingMaintenanceActionDetails = a} :: ResourcePendingMaintenanceActions) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Resource Name (ARN) of the resource that has pending+-- maintenance actions.+resourcePendingMaintenanceActions_resourceIdentifier :: Lens.Lens' ResourcePendingMaintenanceActions (Prelude.Maybe Prelude.Text)+resourcePendingMaintenanceActions_resourceIdentifier = Lens.lens (\ResourcePendingMaintenanceActions' {resourceIdentifier} -> resourceIdentifier) (\s@ResourcePendingMaintenanceActions' {} a -> s {resourceIdentifier = a} :: ResourcePendingMaintenanceActions)++instance+ Data.FromXML+ ResourcePendingMaintenanceActions+ where+ parseXML x =+ ResourcePendingMaintenanceActions'+ Prelude.<$> ( x+ Data..@? "PendingMaintenanceActionDetails"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may+ (Data.parseXMLList "PendingMaintenanceAction")+ )+ Prelude.<*> (x Data..@? "ResourceIdentifier")++instance+ Prelude.Hashable+ ResourcePendingMaintenanceActions+ where+ hashWithSalt+ _salt+ ResourcePendingMaintenanceActions' {..} =+ _salt+ `Prelude.hashWithSalt` pendingMaintenanceActionDetails+ `Prelude.hashWithSalt` resourceIdentifier++instance+ Prelude.NFData+ ResourcePendingMaintenanceActions+ where+ rnf ResourcePendingMaintenanceActions' {..} =+ Prelude.rnf pendingMaintenanceActionDetails+ `Prelude.seq` Prelude.rnf resourceIdentifier
+ gen/Amazonka/DocumentDB/Types/SourceType.hs view
@@ -0,0 +1,91 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.SourceType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.SourceType+ ( SourceType+ ( ..,+ SourceType_Db_cluster,+ SourceType_Db_cluster_snapshot,+ SourceType_Db_instance,+ SourceType_Db_parameter_group,+ SourceType_Db_security_group,+ SourceType_Db_snapshot+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SourceType = SourceType'+ { fromSourceType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SourceType_Db_cluster :: SourceType+pattern SourceType_Db_cluster = SourceType' "db-cluster"++pattern SourceType_Db_cluster_snapshot :: SourceType+pattern SourceType_Db_cluster_snapshot = SourceType' "db-cluster-snapshot"++pattern SourceType_Db_instance :: SourceType+pattern SourceType_Db_instance = SourceType' "db-instance"++pattern SourceType_Db_parameter_group :: SourceType+pattern SourceType_Db_parameter_group = SourceType' "db-parameter-group"++pattern SourceType_Db_security_group :: SourceType+pattern SourceType_Db_security_group = SourceType' "db-security-group"++pattern SourceType_Db_snapshot :: SourceType+pattern SourceType_Db_snapshot = SourceType' "db-snapshot"++{-# COMPLETE+ SourceType_Db_cluster,+ SourceType_Db_cluster_snapshot,+ SourceType_Db_instance,+ SourceType_Db_parameter_group,+ SourceType_Db_security_group,+ SourceType_Db_snapshot,+ SourceType'+ #-}
+ gen/Amazonka/DocumentDB/Types/Subnet.hs view
@@ -0,0 +1,93 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.Subnet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.Subnet where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.Types.AvailabilityZone+import qualified Amazonka.Prelude as Prelude++-- | Detailed information about a subnet.+--+-- /See:/ 'newSubnet' smart constructor.+data Subnet = Subnet'+ { -- | Specifies the Availability Zone for the subnet.+ subnetAvailabilityZone :: Prelude.Maybe AvailabilityZone,+ -- | Specifies the identifier of the subnet.+ subnetIdentifier :: Prelude.Maybe Prelude.Text,+ -- | Specifies the status of the subnet.+ subnetStatus :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Subnet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'subnetAvailabilityZone', 'subnet_subnetAvailabilityZone' - Specifies the Availability Zone for the subnet.+--+-- 'subnetIdentifier', 'subnet_subnetIdentifier' - Specifies the identifier of the subnet.+--+-- 'subnetStatus', 'subnet_subnetStatus' - Specifies the status of the subnet.+newSubnet ::+ Subnet+newSubnet =+ Subnet'+ { subnetAvailabilityZone = Prelude.Nothing,+ subnetIdentifier = Prelude.Nothing,+ subnetStatus = Prelude.Nothing+ }++-- | Specifies the Availability Zone for the subnet.+subnet_subnetAvailabilityZone :: Lens.Lens' Subnet (Prelude.Maybe AvailabilityZone)+subnet_subnetAvailabilityZone = Lens.lens (\Subnet' {subnetAvailabilityZone} -> subnetAvailabilityZone) (\s@Subnet' {} a -> s {subnetAvailabilityZone = a} :: Subnet)++-- | Specifies the identifier of the subnet.+subnet_subnetIdentifier :: Lens.Lens' Subnet (Prelude.Maybe Prelude.Text)+subnet_subnetIdentifier = Lens.lens (\Subnet' {subnetIdentifier} -> subnetIdentifier) (\s@Subnet' {} a -> s {subnetIdentifier = a} :: Subnet)++-- | Specifies the status of the subnet.+subnet_subnetStatus :: Lens.Lens' Subnet (Prelude.Maybe Prelude.Text)+subnet_subnetStatus = Lens.lens (\Subnet' {subnetStatus} -> subnetStatus) (\s@Subnet' {} a -> s {subnetStatus = a} :: Subnet)++instance Data.FromXML Subnet where+ parseXML x =+ Subnet'+ Prelude.<$> (x Data..@? "SubnetAvailabilityZone")+ Prelude.<*> (x Data..@? "SubnetIdentifier")+ Prelude.<*> (x Data..@? "SubnetStatus")++instance Prelude.Hashable Subnet where+ hashWithSalt _salt Subnet' {..} =+ _salt+ `Prelude.hashWithSalt` subnetAvailabilityZone+ `Prelude.hashWithSalt` subnetIdentifier+ `Prelude.hashWithSalt` subnetStatus++instance Prelude.NFData Subnet where+ rnf Subnet' {..} =+ Prelude.rnf subnetAvailabilityZone+ `Prelude.seq` Prelude.rnf subnetIdentifier+ `Prelude.seq` Prelude.rnf subnetStatus
+ gen/Amazonka/DocumentDB/Types/Tag.hs view
@@ -0,0 +1,109 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.Tag+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.Tag where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Metadata assigned to an Amazon DocumentDB resource consisting of a+-- key-value pair.+--+-- /See:/ 'newTag' smart constructor.+data Tag = Tag'+ { -- | The required name of the tag. The string value can be from 1 to 128+ -- Unicode characters in length and can\'t be prefixed with \"@aws:@\" or+ -- \"@rds:@\". The string can contain only the set of Unicode letters,+ -- digits, white space, \'_\', \'.\', \'\/\', \'=\', \'+\', \'-\' (Java+ -- regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:\/=+\\\\-]*)$\").+ key :: Prelude.Maybe Prelude.Text,+ -- | The optional value of the tag. The string value can be from 1 to 256+ -- Unicode characters in length and can\'t be prefixed with \"@aws:@\" or+ -- \"@rds:@\". The string can contain only the set of Unicode letters,+ -- digits, white space, \'_\', \'.\', \'\/\', \'=\', \'+\', \'-\' (Java+ -- regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:\/=+\\\\-]*)$\").+ value :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Tag' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'key', 'tag_key' - The required name of the tag. The string value can be from 1 to 128+-- Unicode characters in length and can\'t be prefixed with \"@aws:@\" or+-- \"@rds:@\". The string can contain only the set of Unicode letters,+-- digits, white space, \'_\', \'.\', \'\/\', \'=\', \'+\', \'-\' (Java+-- regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:\/=+\\\\-]*)$\").+--+-- 'value', 'tag_value' - The optional value of the tag. The string value can be from 1 to 256+-- Unicode characters in length and can\'t be prefixed with \"@aws:@\" or+-- \"@rds:@\". The string can contain only the set of Unicode letters,+-- digits, white space, \'_\', \'.\', \'\/\', \'=\', \'+\', \'-\' (Java+-- regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:\/=+\\\\-]*)$\").+newTag ::+ Tag+newTag =+ Tag'+ { key = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | The required name of the tag. The string value can be from 1 to 128+-- Unicode characters in length and can\'t be prefixed with \"@aws:@\" or+-- \"@rds:@\". The string can contain only the set of Unicode letters,+-- digits, white space, \'_\', \'.\', \'\/\', \'=\', \'+\', \'-\' (Java+-- regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:\/=+\\\\-]*)$\").+tag_key :: Lens.Lens' Tag (Prelude.Maybe Prelude.Text)+tag_key = Lens.lens (\Tag' {key} -> key) (\s@Tag' {} a -> s {key = a} :: Tag)++-- | The optional value of the tag. The string value can be from 1 to 256+-- Unicode characters in length and can\'t be prefixed with \"@aws:@\" or+-- \"@rds:@\". The string can contain only the set of Unicode letters,+-- digits, white space, \'_\', \'.\', \'\/\', \'=\', \'+\', \'-\' (Java+-- regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:\/=+\\\\-]*)$\").+tag_value :: Lens.Lens' Tag (Prelude.Maybe Prelude.Text)+tag_value = Lens.lens (\Tag' {value} -> value) (\s@Tag' {} a -> s {value = a} :: Tag)++instance Data.FromXML Tag where+ parseXML x =+ Tag'+ Prelude.<$> (x Data..@? "Key")+ Prelude.<*> (x Data..@? "Value")++instance Prelude.Hashable Tag where+ hashWithSalt _salt Tag' {..} =+ _salt+ `Prelude.hashWithSalt` key+ `Prelude.hashWithSalt` value++instance Prelude.NFData Tag where+ rnf Tag' {..} =+ Prelude.rnf key `Prelude.seq` Prelude.rnf value++instance Data.ToQuery Tag where+ toQuery Tag' {..} =+ Prelude.mconcat+ ["Key" Data.=: key, "Value" Data.=: value]
+ gen/Amazonka/DocumentDB/Types/UpgradeTarget.hs view
@@ -0,0 +1,122 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.UpgradeTarget+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.UpgradeTarget where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The version of the database engine that an instance can be upgraded to.+--+-- /See:/ 'newUpgradeTarget' smart constructor.+data UpgradeTarget = UpgradeTarget'+ { -- | A value that indicates whether the target version is applied to any+ -- source DB instances that have @AutoMinorVersionUpgrade@ set to @true@.+ autoUpgrade :: Prelude.Maybe Prelude.Bool,+ -- | The version of the database engine that an instance can be upgraded to.+ description :: Prelude.Maybe Prelude.Text,+ -- | The name of the upgrade target database engine.+ engine :: Prelude.Maybe Prelude.Text,+ -- | The version number of the upgrade target database engine.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | A value that indicates whether a database engine is upgraded to a major+ -- version.+ isMajorVersionUpgrade :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpgradeTarget' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'autoUpgrade', 'upgradeTarget_autoUpgrade' - A value that indicates whether the target version is applied to any+-- source DB instances that have @AutoMinorVersionUpgrade@ set to @true@.+--+-- 'description', 'upgradeTarget_description' - The version of the database engine that an instance can be upgraded to.+--+-- 'engine', 'upgradeTarget_engine' - The name of the upgrade target database engine.+--+-- 'engineVersion', 'upgradeTarget_engineVersion' - The version number of the upgrade target database engine.+--+-- 'isMajorVersionUpgrade', 'upgradeTarget_isMajorVersionUpgrade' - A value that indicates whether a database engine is upgraded to a major+-- version.+newUpgradeTarget ::+ UpgradeTarget+newUpgradeTarget =+ UpgradeTarget'+ { autoUpgrade = Prelude.Nothing,+ description = Prelude.Nothing,+ engine = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ isMajorVersionUpgrade = Prelude.Nothing+ }++-- | A value that indicates whether the target version is applied to any+-- source DB instances that have @AutoMinorVersionUpgrade@ set to @true@.+upgradeTarget_autoUpgrade :: Lens.Lens' UpgradeTarget (Prelude.Maybe Prelude.Bool)+upgradeTarget_autoUpgrade = Lens.lens (\UpgradeTarget' {autoUpgrade} -> autoUpgrade) (\s@UpgradeTarget' {} a -> s {autoUpgrade = a} :: UpgradeTarget)++-- | The version of the database engine that an instance can be upgraded to.+upgradeTarget_description :: Lens.Lens' UpgradeTarget (Prelude.Maybe Prelude.Text)+upgradeTarget_description = Lens.lens (\UpgradeTarget' {description} -> description) (\s@UpgradeTarget' {} a -> s {description = a} :: UpgradeTarget)++-- | The name of the upgrade target database engine.+upgradeTarget_engine :: Lens.Lens' UpgradeTarget (Prelude.Maybe Prelude.Text)+upgradeTarget_engine = Lens.lens (\UpgradeTarget' {engine} -> engine) (\s@UpgradeTarget' {} a -> s {engine = a} :: UpgradeTarget)++-- | The version number of the upgrade target database engine.+upgradeTarget_engineVersion :: Lens.Lens' UpgradeTarget (Prelude.Maybe Prelude.Text)+upgradeTarget_engineVersion = Lens.lens (\UpgradeTarget' {engineVersion} -> engineVersion) (\s@UpgradeTarget' {} a -> s {engineVersion = a} :: UpgradeTarget)++-- | A value that indicates whether a database engine is upgraded to a major+-- version.+upgradeTarget_isMajorVersionUpgrade :: Lens.Lens' UpgradeTarget (Prelude.Maybe Prelude.Bool)+upgradeTarget_isMajorVersionUpgrade = Lens.lens (\UpgradeTarget' {isMajorVersionUpgrade} -> isMajorVersionUpgrade) (\s@UpgradeTarget' {} a -> s {isMajorVersionUpgrade = a} :: UpgradeTarget)++instance Data.FromXML UpgradeTarget where+ parseXML x =+ UpgradeTarget'+ Prelude.<$> (x Data..@? "AutoUpgrade")+ Prelude.<*> (x Data..@? "Description")+ Prelude.<*> (x Data..@? "Engine")+ Prelude.<*> (x Data..@? "EngineVersion")+ Prelude.<*> (x Data..@? "IsMajorVersionUpgrade")++instance Prelude.Hashable UpgradeTarget where+ hashWithSalt _salt UpgradeTarget' {..} =+ _salt+ `Prelude.hashWithSalt` autoUpgrade+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` isMajorVersionUpgrade++instance Prelude.NFData UpgradeTarget where+ rnf UpgradeTarget' {..} =+ Prelude.rnf autoUpgrade+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf engine+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf isMajorVersionUpgrade
+ gen/Amazonka/DocumentDB/Types/VpcSecurityGroupMembership.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Types.VpcSecurityGroupMembership+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Types.VpcSecurityGroupMembership where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Used as a response element for queries on virtual private cloud (VPC)+-- security group membership.+--+-- /See:/ 'newVpcSecurityGroupMembership' smart constructor.+data VpcSecurityGroupMembership = VpcSecurityGroupMembership'+ { -- | The status of the VPC security group.+ status :: Prelude.Maybe Prelude.Text,+ -- | The name of the VPC security group.+ vpcSecurityGroupId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VpcSecurityGroupMembership' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'status', 'vpcSecurityGroupMembership_status' - The status of the VPC security group.+--+-- 'vpcSecurityGroupId', 'vpcSecurityGroupMembership_vpcSecurityGroupId' - The name of the VPC security group.+newVpcSecurityGroupMembership ::+ VpcSecurityGroupMembership+newVpcSecurityGroupMembership =+ VpcSecurityGroupMembership'+ { status =+ Prelude.Nothing,+ vpcSecurityGroupId = Prelude.Nothing+ }++-- | The status of the VPC security group.+vpcSecurityGroupMembership_status :: Lens.Lens' VpcSecurityGroupMembership (Prelude.Maybe Prelude.Text)+vpcSecurityGroupMembership_status = Lens.lens (\VpcSecurityGroupMembership' {status} -> status) (\s@VpcSecurityGroupMembership' {} a -> s {status = a} :: VpcSecurityGroupMembership)++-- | The name of the VPC security group.+vpcSecurityGroupMembership_vpcSecurityGroupId :: Lens.Lens' VpcSecurityGroupMembership (Prelude.Maybe Prelude.Text)+vpcSecurityGroupMembership_vpcSecurityGroupId = Lens.lens (\VpcSecurityGroupMembership' {vpcSecurityGroupId} -> vpcSecurityGroupId) (\s@VpcSecurityGroupMembership' {} a -> s {vpcSecurityGroupId = a} :: VpcSecurityGroupMembership)++instance Data.FromXML VpcSecurityGroupMembership where+ parseXML x =+ VpcSecurityGroupMembership'+ Prelude.<$> (x Data..@? "Status")+ Prelude.<*> (x Data..@? "VpcSecurityGroupId")++instance Prelude.Hashable VpcSecurityGroupMembership where+ hashWithSalt _salt VpcSecurityGroupMembership' {..} =+ _salt+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` vpcSecurityGroupId++instance Prelude.NFData VpcSecurityGroupMembership where+ rnf VpcSecurityGroupMembership' {..} =+ Prelude.rnf status+ `Prelude.seq` Prelude.rnf vpcSecurityGroupId
+ gen/Amazonka/DocumentDB/Waiters.hs view
@@ -0,0 +1,193 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DocumentDB.Waiters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DocumentDB.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DocumentDB.DescribeDBInstances+import Amazonka.DocumentDB.Lens+import Amazonka.DocumentDB.Types+import qualified Amazonka.Prelude as Prelude++-- | Polls 'Amazonka.DocumentDB.DescribeDBInstances' every 30 seconds until a successful state is reached. An error is returned after 60 failed checks.+newDBInstanceAvailable :: Core.Wait DescribeDBInstances+newDBInstanceAvailable =+ Core.Wait+ { Core.name = "DBInstanceAvailable",+ Core.attempts = 60,+ Core.delay = 30,+ Core.acceptors =+ [ Core.matchAll+ "available"+ Core.AcceptSuccess+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAny+ "deleted"+ Core.AcceptFailure+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAny+ "deleting"+ Core.AcceptFailure+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAny+ "failed"+ Core.AcceptFailure+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAny+ "incompatible-restore"+ Core.AcceptFailure+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAny+ "incompatible-parameters"+ Core.AcceptFailure+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }++-- | Polls 'Amazonka.DocumentDB.DescribeDBInstances' every 30 seconds until a successful state is reached. An error is returned after 60 failed checks.+newDBInstanceDeleted :: Core.Wait DescribeDBInstances+newDBInstanceDeleted =+ Core.Wait+ { Core.name = "DBInstanceDeleted",+ Core.attempts = 60,+ Core.delay = 30,+ Core.acceptors =+ [ Core.matchAll+ "deleted"+ Core.AcceptSuccess+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchError+ "DBInstanceNotFound"+ Core.AcceptSuccess,+ Core.matchAny+ "creating"+ Core.AcceptFailure+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAny+ "modifying"+ Core.AcceptFailure+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAny+ "rebooting"+ Core.AcceptFailure+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAny+ "resetting-master-credentials"+ Core.AcceptFailure+ ( Lens.folding+ ( Lens.concatOf+ ( describeDBInstancesResponse_dbInstances+ Prelude.. Lens._Just+ )+ )+ Prelude.. dbInstance_dbInstanceStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.DocumentDB+import Test.Amazonka.DocumentDB.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "DocumentDB"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/DocumentDB.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.DocumentDB+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.DocumentDB+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/DocumentDB/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.DocumentDB.Internal+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.DocumentDB.Internal where
+ test/Test/Amazonka/Gen/DocumentDB.hs view
@@ -0,0 +1,1098 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.Amazonka.Gen.DocumentDB+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.Gen.DocumentDB where++import Amazonka.DocumentDB+import qualified Data.Proxy as Proxy+import Test.Amazonka.DocumentDB.Internal+import Test.Amazonka.Fixture+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ requestAddSourceIdentifierToSubscription $+-- newAddSourceIdentifierToSubscription+--+-- , requestAddTagsToResource $+-- newAddTagsToResource+--+-- , requestApplyPendingMaintenanceAction $+-- newApplyPendingMaintenanceAction+--+-- , requestCopyDBClusterParameterGroup $+-- newCopyDBClusterParameterGroup+--+-- , requestCopyDBClusterSnapshot $+-- newCopyDBClusterSnapshot+--+-- , requestCreateDBCluster $+-- newCreateDBCluster+--+-- , requestCreateDBClusterParameterGroup $+-- newCreateDBClusterParameterGroup+--+-- , requestCreateDBClusterSnapshot $+-- newCreateDBClusterSnapshot+--+-- , requestCreateDBInstance $+-- newCreateDBInstance+--+-- , requestCreateDBSubnetGroup $+-- newCreateDBSubnetGroup+--+-- , requestCreateEventSubscription $+-- newCreateEventSubscription+--+-- , requestCreateGlobalCluster $+-- newCreateGlobalCluster+--+-- , requestDeleteDBCluster $+-- newDeleteDBCluster+--+-- , requestDeleteDBClusterParameterGroup $+-- newDeleteDBClusterParameterGroup+--+-- , requestDeleteDBClusterSnapshot $+-- newDeleteDBClusterSnapshot+--+-- , requestDeleteDBInstance $+-- newDeleteDBInstance+--+-- , requestDeleteDBSubnetGroup $+-- newDeleteDBSubnetGroup+--+-- , requestDeleteEventSubscription $+-- newDeleteEventSubscription+--+-- , requestDeleteGlobalCluster $+-- newDeleteGlobalCluster+--+-- , requestDescribeCertificates $+-- newDescribeCertificates+--+-- , requestDescribeDBClusterParameterGroups $+-- newDescribeDBClusterParameterGroups+--+-- , requestDescribeDBClusterParameters $+-- newDescribeDBClusterParameters+--+-- , requestDescribeDBClusterSnapshotAttributes $+-- newDescribeDBClusterSnapshotAttributes+--+-- , requestDescribeDBClusterSnapshots $+-- newDescribeDBClusterSnapshots+--+-- , requestDescribeDBClusters $+-- newDescribeDBClusters+--+-- , requestDescribeDBEngineVersions $+-- newDescribeDBEngineVersions+--+-- , requestDescribeDBInstances $+-- newDescribeDBInstances+--+-- , requestDescribeDBSubnetGroups $+-- newDescribeDBSubnetGroups+--+-- , requestDescribeEngineDefaultClusterParameters $+-- newDescribeEngineDefaultClusterParameters+--+-- , requestDescribeEventCategories $+-- newDescribeEventCategories+--+-- , requestDescribeEventSubscriptions $+-- newDescribeEventSubscriptions+--+-- , requestDescribeEvents $+-- newDescribeEvents+--+-- , requestDescribeGlobalClusters $+-- newDescribeGlobalClusters+--+-- , requestDescribeOrderableDBInstanceOptions $+-- newDescribeOrderableDBInstanceOptions+--+-- , requestDescribePendingMaintenanceActions $+-- newDescribePendingMaintenanceActions+--+-- , requestFailoverDBCluster $+-- newFailoverDBCluster+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestModifyDBCluster $+-- newModifyDBCluster+--+-- , requestModifyDBClusterParameterGroup $+-- newModifyDBClusterParameterGroup+--+-- , requestModifyDBClusterSnapshotAttribute $+-- newModifyDBClusterSnapshotAttribute+--+-- , requestModifyDBInstance $+-- newModifyDBInstance+--+-- , requestModifyDBSubnetGroup $+-- newModifyDBSubnetGroup+--+-- , requestModifyEventSubscription $+-- newModifyEventSubscription+--+-- , requestModifyGlobalCluster $+-- newModifyGlobalCluster+--+-- , requestRebootDBInstance $+-- newRebootDBInstance+--+-- , requestRemoveFromGlobalCluster $+-- newRemoveFromGlobalCluster+--+-- , requestRemoveSourceIdentifierFromSubscription $+-- newRemoveSourceIdentifierFromSubscription+--+-- , requestRemoveTagsFromResource $+-- newRemoveTagsFromResource+--+-- , requestResetDBClusterParameterGroup $+-- newResetDBClusterParameterGroup+--+-- , requestRestoreDBClusterFromSnapshot $+-- newRestoreDBClusterFromSnapshot+--+-- , requestRestoreDBClusterToPointInTime $+-- newRestoreDBClusterToPointInTime+--+-- , requestStartDBCluster $+-- newStartDBCluster+--+-- , requestStopDBCluster $+-- newStopDBCluster+--+-- ]++-- , testGroup "response"+-- [ responseAddSourceIdentifierToSubscription $+-- newAddSourceIdentifierToSubscriptionResponse+--+-- , responseAddTagsToResource $+-- newAddTagsToResourceResponse+--+-- , responseApplyPendingMaintenanceAction $+-- newApplyPendingMaintenanceActionResponse+--+-- , responseCopyDBClusterParameterGroup $+-- newCopyDBClusterParameterGroupResponse+--+-- , responseCopyDBClusterSnapshot $+-- newCopyDBClusterSnapshotResponse+--+-- , responseCreateDBCluster $+-- newCreateDBClusterResponse+--+-- , responseCreateDBClusterParameterGroup $+-- newCreateDBClusterParameterGroupResponse+--+-- , responseCreateDBClusterSnapshot $+-- newCreateDBClusterSnapshotResponse+--+-- , responseCreateDBInstance $+-- newCreateDBInstanceResponse+--+-- , responseCreateDBSubnetGroup $+-- newCreateDBSubnetGroupResponse+--+-- , responseCreateEventSubscription $+-- newCreateEventSubscriptionResponse+--+-- , responseCreateGlobalCluster $+-- newCreateGlobalClusterResponse+--+-- , responseDeleteDBCluster $+-- newDeleteDBClusterResponse+--+-- , responseDeleteDBClusterParameterGroup $+-- newDeleteDBClusterParameterGroupResponse+--+-- , responseDeleteDBClusterSnapshot $+-- newDeleteDBClusterSnapshotResponse+--+-- , responseDeleteDBInstance $+-- newDeleteDBInstanceResponse+--+-- , responseDeleteDBSubnetGroup $+-- newDeleteDBSubnetGroupResponse+--+-- , responseDeleteEventSubscription $+-- newDeleteEventSubscriptionResponse+--+-- , responseDeleteGlobalCluster $+-- newDeleteGlobalClusterResponse+--+-- , responseDescribeCertificates $+-- newDescribeCertificatesResponse+--+-- , responseDescribeDBClusterParameterGroups $+-- newDescribeDBClusterParameterGroupsResponse+--+-- , responseDescribeDBClusterParameters $+-- newDescribeDBClusterParametersResponse+--+-- , responseDescribeDBClusterSnapshotAttributes $+-- newDescribeDBClusterSnapshotAttributesResponse+--+-- , responseDescribeDBClusterSnapshots $+-- newDescribeDBClusterSnapshotsResponse+--+-- , responseDescribeDBClusters $+-- newDescribeDBClustersResponse+--+-- , responseDescribeDBEngineVersions $+-- newDescribeDBEngineVersionsResponse+--+-- , responseDescribeDBInstances $+-- newDescribeDBInstancesResponse+--+-- , responseDescribeDBSubnetGroups $+-- newDescribeDBSubnetGroupsResponse+--+-- , responseDescribeEngineDefaultClusterParameters $+-- newDescribeEngineDefaultClusterParametersResponse+--+-- , responseDescribeEventCategories $+-- newDescribeEventCategoriesResponse+--+-- , responseDescribeEventSubscriptions $+-- newDescribeEventSubscriptionsResponse+--+-- , responseDescribeEvents $+-- newDescribeEventsResponse+--+-- , responseDescribeGlobalClusters $+-- newDescribeGlobalClustersResponse+--+-- , responseDescribeOrderableDBInstanceOptions $+-- newDescribeOrderableDBInstanceOptionsResponse+--+-- , responseDescribePendingMaintenanceActions $+-- newDescribePendingMaintenanceActionsResponse+--+-- , responseFailoverDBCluster $+-- newFailoverDBClusterResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responseModifyDBCluster $+-- newModifyDBClusterResponse+--+-- , responseModifyDBClusterParameterGroup $+-- newDBClusterParameterGroupNameMessage+--+-- , responseModifyDBClusterSnapshotAttribute $+-- newModifyDBClusterSnapshotAttributeResponse+--+-- , responseModifyDBInstance $+-- newModifyDBInstanceResponse+--+-- , responseModifyDBSubnetGroup $+-- newModifyDBSubnetGroupResponse+--+-- , responseModifyEventSubscription $+-- newModifyEventSubscriptionResponse+--+-- , responseModifyGlobalCluster $+-- newModifyGlobalClusterResponse+--+-- , responseRebootDBInstance $+-- newRebootDBInstanceResponse+--+-- , responseRemoveFromGlobalCluster $+-- newRemoveFromGlobalClusterResponse+--+-- , responseRemoveSourceIdentifierFromSubscription $+-- newRemoveSourceIdentifierFromSubscriptionResponse+--+-- , responseRemoveTagsFromResource $+-- newRemoveTagsFromResourceResponse+--+-- , responseResetDBClusterParameterGroup $+-- newDBClusterParameterGroupNameMessage+--+-- , responseRestoreDBClusterFromSnapshot $+-- newRestoreDBClusterFromSnapshotResponse+--+-- , responseRestoreDBClusterToPointInTime $+-- newRestoreDBClusterToPointInTimeResponse+--+-- , responseStartDBCluster $+-- newStartDBClusterResponse+--+-- , responseStopDBCluster $+-- newStopDBClusterResponse+--+-- ]+-- ]++-- Requests++requestAddSourceIdentifierToSubscription :: AddSourceIdentifierToSubscription -> TestTree+requestAddSourceIdentifierToSubscription =+ req+ "AddSourceIdentifierToSubscription"+ "fixture/AddSourceIdentifierToSubscription.yaml"++requestAddTagsToResource :: AddTagsToResource -> TestTree+requestAddTagsToResource =+ req+ "AddTagsToResource"+ "fixture/AddTagsToResource.yaml"++requestApplyPendingMaintenanceAction :: ApplyPendingMaintenanceAction -> TestTree+requestApplyPendingMaintenanceAction =+ req+ "ApplyPendingMaintenanceAction"+ "fixture/ApplyPendingMaintenanceAction.yaml"++requestCopyDBClusterParameterGroup :: CopyDBClusterParameterGroup -> TestTree+requestCopyDBClusterParameterGroup =+ req+ "CopyDBClusterParameterGroup"+ "fixture/CopyDBClusterParameterGroup.yaml"++requestCopyDBClusterSnapshot :: CopyDBClusterSnapshot -> TestTree+requestCopyDBClusterSnapshot =+ req+ "CopyDBClusterSnapshot"+ "fixture/CopyDBClusterSnapshot.yaml"++requestCreateDBCluster :: CreateDBCluster -> TestTree+requestCreateDBCluster =+ req+ "CreateDBCluster"+ "fixture/CreateDBCluster.yaml"++requestCreateDBClusterParameterGroup :: CreateDBClusterParameterGroup -> TestTree+requestCreateDBClusterParameterGroup =+ req+ "CreateDBClusterParameterGroup"+ "fixture/CreateDBClusterParameterGroup.yaml"++requestCreateDBClusterSnapshot :: CreateDBClusterSnapshot -> TestTree+requestCreateDBClusterSnapshot =+ req+ "CreateDBClusterSnapshot"+ "fixture/CreateDBClusterSnapshot.yaml"++requestCreateDBInstance :: CreateDBInstance -> TestTree+requestCreateDBInstance =+ req+ "CreateDBInstance"+ "fixture/CreateDBInstance.yaml"++requestCreateDBSubnetGroup :: CreateDBSubnetGroup -> TestTree+requestCreateDBSubnetGroup =+ req+ "CreateDBSubnetGroup"+ "fixture/CreateDBSubnetGroup.yaml"++requestCreateEventSubscription :: CreateEventSubscription -> TestTree+requestCreateEventSubscription =+ req+ "CreateEventSubscription"+ "fixture/CreateEventSubscription.yaml"++requestCreateGlobalCluster :: CreateGlobalCluster -> TestTree+requestCreateGlobalCluster =+ req+ "CreateGlobalCluster"+ "fixture/CreateGlobalCluster.yaml"++requestDeleteDBCluster :: DeleteDBCluster -> TestTree+requestDeleteDBCluster =+ req+ "DeleteDBCluster"+ "fixture/DeleteDBCluster.yaml"++requestDeleteDBClusterParameterGroup :: DeleteDBClusterParameterGroup -> TestTree+requestDeleteDBClusterParameterGroup =+ req+ "DeleteDBClusterParameterGroup"+ "fixture/DeleteDBClusterParameterGroup.yaml"++requestDeleteDBClusterSnapshot :: DeleteDBClusterSnapshot -> TestTree+requestDeleteDBClusterSnapshot =+ req+ "DeleteDBClusterSnapshot"+ "fixture/DeleteDBClusterSnapshot.yaml"++requestDeleteDBInstance :: DeleteDBInstance -> TestTree+requestDeleteDBInstance =+ req+ "DeleteDBInstance"+ "fixture/DeleteDBInstance.yaml"++requestDeleteDBSubnetGroup :: DeleteDBSubnetGroup -> TestTree+requestDeleteDBSubnetGroup =+ req+ "DeleteDBSubnetGroup"+ "fixture/DeleteDBSubnetGroup.yaml"++requestDeleteEventSubscription :: DeleteEventSubscription -> TestTree+requestDeleteEventSubscription =+ req+ "DeleteEventSubscription"+ "fixture/DeleteEventSubscription.yaml"++requestDeleteGlobalCluster :: DeleteGlobalCluster -> TestTree+requestDeleteGlobalCluster =+ req+ "DeleteGlobalCluster"+ "fixture/DeleteGlobalCluster.yaml"++requestDescribeCertificates :: DescribeCertificates -> TestTree+requestDescribeCertificates =+ req+ "DescribeCertificates"+ "fixture/DescribeCertificates.yaml"++requestDescribeDBClusterParameterGroups :: DescribeDBClusterParameterGroups -> TestTree+requestDescribeDBClusterParameterGroups =+ req+ "DescribeDBClusterParameterGroups"+ "fixture/DescribeDBClusterParameterGroups.yaml"++requestDescribeDBClusterParameters :: DescribeDBClusterParameters -> TestTree+requestDescribeDBClusterParameters =+ req+ "DescribeDBClusterParameters"+ "fixture/DescribeDBClusterParameters.yaml"++requestDescribeDBClusterSnapshotAttributes :: DescribeDBClusterSnapshotAttributes -> TestTree+requestDescribeDBClusterSnapshotAttributes =+ req+ "DescribeDBClusterSnapshotAttributes"+ "fixture/DescribeDBClusterSnapshotAttributes.yaml"++requestDescribeDBClusterSnapshots :: DescribeDBClusterSnapshots -> TestTree+requestDescribeDBClusterSnapshots =+ req+ "DescribeDBClusterSnapshots"+ "fixture/DescribeDBClusterSnapshots.yaml"++requestDescribeDBClusters :: DescribeDBClusters -> TestTree+requestDescribeDBClusters =+ req+ "DescribeDBClusters"+ "fixture/DescribeDBClusters.yaml"++requestDescribeDBEngineVersions :: DescribeDBEngineVersions -> TestTree+requestDescribeDBEngineVersions =+ req+ "DescribeDBEngineVersions"+ "fixture/DescribeDBEngineVersions.yaml"++requestDescribeDBInstances :: DescribeDBInstances -> TestTree+requestDescribeDBInstances =+ req+ "DescribeDBInstances"+ "fixture/DescribeDBInstances.yaml"++requestDescribeDBSubnetGroups :: DescribeDBSubnetGroups -> TestTree+requestDescribeDBSubnetGroups =+ req+ "DescribeDBSubnetGroups"+ "fixture/DescribeDBSubnetGroups.yaml"++requestDescribeEngineDefaultClusterParameters :: DescribeEngineDefaultClusterParameters -> TestTree+requestDescribeEngineDefaultClusterParameters =+ req+ "DescribeEngineDefaultClusterParameters"+ "fixture/DescribeEngineDefaultClusterParameters.yaml"++requestDescribeEventCategories :: DescribeEventCategories -> TestTree+requestDescribeEventCategories =+ req+ "DescribeEventCategories"+ "fixture/DescribeEventCategories.yaml"++requestDescribeEventSubscriptions :: DescribeEventSubscriptions -> TestTree+requestDescribeEventSubscriptions =+ req+ "DescribeEventSubscriptions"+ "fixture/DescribeEventSubscriptions.yaml"++requestDescribeEvents :: DescribeEvents -> TestTree+requestDescribeEvents =+ req+ "DescribeEvents"+ "fixture/DescribeEvents.yaml"++requestDescribeGlobalClusters :: DescribeGlobalClusters -> TestTree+requestDescribeGlobalClusters =+ req+ "DescribeGlobalClusters"+ "fixture/DescribeGlobalClusters.yaml"++requestDescribeOrderableDBInstanceOptions :: DescribeOrderableDBInstanceOptions -> TestTree+requestDescribeOrderableDBInstanceOptions =+ req+ "DescribeOrderableDBInstanceOptions"+ "fixture/DescribeOrderableDBInstanceOptions.yaml"++requestDescribePendingMaintenanceActions :: DescribePendingMaintenanceActions -> TestTree+requestDescribePendingMaintenanceActions =+ req+ "DescribePendingMaintenanceActions"+ "fixture/DescribePendingMaintenanceActions.yaml"++requestFailoverDBCluster :: FailoverDBCluster -> TestTree+requestFailoverDBCluster =+ req+ "FailoverDBCluster"+ "fixture/FailoverDBCluster.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestModifyDBCluster :: ModifyDBCluster -> TestTree+requestModifyDBCluster =+ req+ "ModifyDBCluster"+ "fixture/ModifyDBCluster.yaml"++requestModifyDBClusterParameterGroup :: ModifyDBClusterParameterGroup -> TestTree+requestModifyDBClusterParameterGroup =+ req+ "ModifyDBClusterParameterGroup"+ "fixture/ModifyDBClusterParameterGroup.yaml"++requestModifyDBClusterSnapshotAttribute :: ModifyDBClusterSnapshotAttribute -> TestTree+requestModifyDBClusterSnapshotAttribute =+ req+ "ModifyDBClusterSnapshotAttribute"+ "fixture/ModifyDBClusterSnapshotAttribute.yaml"++requestModifyDBInstance :: ModifyDBInstance -> TestTree+requestModifyDBInstance =+ req+ "ModifyDBInstance"+ "fixture/ModifyDBInstance.yaml"++requestModifyDBSubnetGroup :: ModifyDBSubnetGroup -> TestTree+requestModifyDBSubnetGroup =+ req+ "ModifyDBSubnetGroup"+ "fixture/ModifyDBSubnetGroup.yaml"++requestModifyEventSubscription :: ModifyEventSubscription -> TestTree+requestModifyEventSubscription =+ req+ "ModifyEventSubscription"+ "fixture/ModifyEventSubscription.yaml"++requestModifyGlobalCluster :: ModifyGlobalCluster -> TestTree+requestModifyGlobalCluster =+ req+ "ModifyGlobalCluster"+ "fixture/ModifyGlobalCluster.yaml"++requestRebootDBInstance :: RebootDBInstance -> TestTree+requestRebootDBInstance =+ req+ "RebootDBInstance"+ "fixture/RebootDBInstance.yaml"++requestRemoveFromGlobalCluster :: RemoveFromGlobalCluster -> TestTree+requestRemoveFromGlobalCluster =+ req+ "RemoveFromGlobalCluster"+ "fixture/RemoveFromGlobalCluster.yaml"++requestRemoveSourceIdentifierFromSubscription :: RemoveSourceIdentifierFromSubscription -> TestTree+requestRemoveSourceIdentifierFromSubscription =+ req+ "RemoveSourceIdentifierFromSubscription"+ "fixture/RemoveSourceIdentifierFromSubscription.yaml"++requestRemoveTagsFromResource :: RemoveTagsFromResource -> TestTree+requestRemoveTagsFromResource =+ req+ "RemoveTagsFromResource"+ "fixture/RemoveTagsFromResource.yaml"++requestResetDBClusterParameterGroup :: ResetDBClusterParameterGroup -> TestTree+requestResetDBClusterParameterGroup =+ req+ "ResetDBClusterParameterGroup"+ "fixture/ResetDBClusterParameterGroup.yaml"++requestRestoreDBClusterFromSnapshot :: RestoreDBClusterFromSnapshot -> TestTree+requestRestoreDBClusterFromSnapshot =+ req+ "RestoreDBClusterFromSnapshot"+ "fixture/RestoreDBClusterFromSnapshot.yaml"++requestRestoreDBClusterToPointInTime :: RestoreDBClusterToPointInTime -> TestTree+requestRestoreDBClusterToPointInTime =+ req+ "RestoreDBClusterToPointInTime"+ "fixture/RestoreDBClusterToPointInTime.yaml"++requestStartDBCluster :: StartDBCluster -> TestTree+requestStartDBCluster =+ req+ "StartDBCluster"+ "fixture/StartDBCluster.yaml"++requestStopDBCluster :: StopDBCluster -> TestTree+requestStopDBCluster =+ req+ "StopDBCluster"+ "fixture/StopDBCluster.yaml"++-- Responses++responseAddSourceIdentifierToSubscription :: AddSourceIdentifierToSubscriptionResponse -> TestTree+responseAddSourceIdentifierToSubscription =+ res+ "AddSourceIdentifierToSubscriptionResponse"+ "fixture/AddSourceIdentifierToSubscriptionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AddSourceIdentifierToSubscription)++responseAddTagsToResource :: AddTagsToResourceResponse -> TestTree+responseAddTagsToResource =+ res+ "AddTagsToResourceResponse"+ "fixture/AddTagsToResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AddTagsToResource)++responseApplyPendingMaintenanceAction :: ApplyPendingMaintenanceActionResponse -> TestTree+responseApplyPendingMaintenanceAction =+ res+ "ApplyPendingMaintenanceActionResponse"+ "fixture/ApplyPendingMaintenanceActionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ApplyPendingMaintenanceAction)++responseCopyDBClusterParameterGroup :: CopyDBClusterParameterGroupResponse -> TestTree+responseCopyDBClusterParameterGroup =+ res+ "CopyDBClusterParameterGroupResponse"+ "fixture/CopyDBClusterParameterGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CopyDBClusterParameterGroup)++responseCopyDBClusterSnapshot :: CopyDBClusterSnapshotResponse -> TestTree+responseCopyDBClusterSnapshot =+ res+ "CopyDBClusterSnapshotResponse"+ "fixture/CopyDBClusterSnapshotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CopyDBClusterSnapshot)++responseCreateDBCluster :: CreateDBClusterResponse -> TestTree+responseCreateDBCluster =+ res+ "CreateDBClusterResponse"+ "fixture/CreateDBClusterResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateDBCluster)++responseCreateDBClusterParameterGroup :: CreateDBClusterParameterGroupResponse -> TestTree+responseCreateDBClusterParameterGroup =+ res+ "CreateDBClusterParameterGroupResponse"+ "fixture/CreateDBClusterParameterGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateDBClusterParameterGroup)++responseCreateDBClusterSnapshot :: CreateDBClusterSnapshotResponse -> TestTree+responseCreateDBClusterSnapshot =+ res+ "CreateDBClusterSnapshotResponse"+ "fixture/CreateDBClusterSnapshotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateDBClusterSnapshot)++responseCreateDBInstance :: CreateDBInstanceResponse -> TestTree+responseCreateDBInstance =+ res+ "CreateDBInstanceResponse"+ "fixture/CreateDBInstanceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateDBInstance)++responseCreateDBSubnetGroup :: CreateDBSubnetGroupResponse -> TestTree+responseCreateDBSubnetGroup =+ res+ "CreateDBSubnetGroupResponse"+ "fixture/CreateDBSubnetGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateDBSubnetGroup)++responseCreateEventSubscription :: CreateEventSubscriptionResponse -> TestTree+responseCreateEventSubscription =+ res+ "CreateEventSubscriptionResponse"+ "fixture/CreateEventSubscriptionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateEventSubscription)++responseCreateGlobalCluster :: CreateGlobalClusterResponse -> TestTree+responseCreateGlobalCluster =+ res+ "CreateGlobalClusterResponse"+ "fixture/CreateGlobalClusterResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateGlobalCluster)++responseDeleteDBCluster :: DeleteDBClusterResponse -> TestTree+responseDeleteDBCluster =+ res+ "DeleteDBClusterResponse"+ "fixture/DeleteDBClusterResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteDBCluster)++responseDeleteDBClusterParameterGroup :: DeleteDBClusterParameterGroupResponse -> TestTree+responseDeleteDBClusterParameterGroup =+ res+ "DeleteDBClusterParameterGroupResponse"+ "fixture/DeleteDBClusterParameterGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteDBClusterParameterGroup)++responseDeleteDBClusterSnapshot :: DeleteDBClusterSnapshotResponse -> TestTree+responseDeleteDBClusterSnapshot =+ res+ "DeleteDBClusterSnapshotResponse"+ "fixture/DeleteDBClusterSnapshotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteDBClusterSnapshot)++responseDeleteDBInstance :: DeleteDBInstanceResponse -> TestTree+responseDeleteDBInstance =+ res+ "DeleteDBInstanceResponse"+ "fixture/DeleteDBInstanceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteDBInstance)++responseDeleteDBSubnetGroup :: DeleteDBSubnetGroupResponse -> TestTree+responseDeleteDBSubnetGroup =+ res+ "DeleteDBSubnetGroupResponse"+ "fixture/DeleteDBSubnetGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteDBSubnetGroup)++responseDeleteEventSubscription :: DeleteEventSubscriptionResponse -> TestTree+responseDeleteEventSubscription =+ res+ "DeleteEventSubscriptionResponse"+ "fixture/DeleteEventSubscriptionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteEventSubscription)++responseDeleteGlobalCluster :: DeleteGlobalClusterResponse -> TestTree+responseDeleteGlobalCluster =+ res+ "DeleteGlobalClusterResponse"+ "fixture/DeleteGlobalClusterResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteGlobalCluster)++responseDescribeCertificates :: DescribeCertificatesResponse -> TestTree+responseDescribeCertificates =+ res+ "DescribeCertificatesResponse"+ "fixture/DescribeCertificatesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeCertificates)++responseDescribeDBClusterParameterGroups :: DescribeDBClusterParameterGroupsResponse -> TestTree+responseDescribeDBClusterParameterGroups =+ res+ "DescribeDBClusterParameterGroupsResponse"+ "fixture/DescribeDBClusterParameterGroupsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDBClusterParameterGroups)++responseDescribeDBClusterParameters :: DescribeDBClusterParametersResponse -> TestTree+responseDescribeDBClusterParameters =+ res+ "DescribeDBClusterParametersResponse"+ "fixture/DescribeDBClusterParametersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDBClusterParameters)++responseDescribeDBClusterSnapshotAttributes :: DescribeDBClusterSnapshotAttributesResponse -> TestTree+responseDescribeDBClusterSnapshotAttributes =+ res+ "DescribeDBClusterSnapshotAttributesResponse"+ "fixture/DescribeDBClusterSnapshotAttributesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDBClusterSnapshotAttributes)++responseDescribeDBClusterSnapshots :: DescribeDBClusterSnapshotsResponse -> TestTree+responseDescribeDBClusterSnapshots =+ res+ "DescribeDBClusterSnapshotsResponse"+ "fixture/DescribeDBClusterSnapshotsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDBClusterSnapshots)++responseDescribeDBClusters :: DescribeDBClustersResponse -> TestTree+responseDescribeDBClusters =+ res+ "DescribeDBClustersResponse"+ "fixture/DescribeDBClustersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDBClusters)++responseDescribeDBEngineVersions :: DescribeDBEngineVersionsResponse -> TestTree+responseDescribeDBEngineVersions =+ res+ "DescribeDBEngineVersionsResponse"+ "fixture/DescribeDBEngineVersionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDBEngineVersions)++responseDescribeDBInstances :: DescribeDBInstancesResponse -> TestTree+responseDescribeDBInstances =+ res+ "DescribeDBInstancesResponse"+ "fixture/DescribeDBInstancesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDBInstances)++responseDescribeDBSubnetGroups :: DescribeDBSubnetGroupsResponse -> TestTree+responseDescribeDBSubnetGroups =+ res+ "DescribeDBSubnetGroupsResponse"+ "fixture/DescribeDBSubnetGroupsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDBSubnetGroups)++responseDescribeEngineDefaultClusterParameters :: DescribeEngineDefaultClusterParametersResponse -> TestTree+responseDescribeEngineDefaultClusterParameters =+ res+ "DescribeEngineDefaultClusterParametersResponse"+ "fixture/DescribeEngineDefaultClusterParametersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeEngineDefaultClusterParameters)++responseDescribeEventCategories :: DescribeEventCategoriesResponse -> TestTree+responseDescribeEventCategories =+ res+ "DescribeEventCategoriesResponse"+ "fixture/DescribeEventCategoriesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeEventCategories)++responseDescribeEventSubscriptions :: DescribeEventSubscriptionsResponse -> TestTree+responseDescribeEventSubscriptions =+ res+ "DescribeEventSubscriptionsResponse"+ "fixture/DescribeEventSubscriptionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeEventSubscriptions)++responseDescribeEvents :: DescribeEventsResponse -> TestTree+responseDescribeEvents =+ res+ "DescribeEventsResponse"+ "fixture/DescribeEventsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeEvents)++responseDescribeGlobalClusters :: DescribeGlobalClustersResponse -> TestTree+responseDescribeGlobalClusters =+ res+ "DescribeGlobalClustersResponse"+ "fixture/DescribeGlobalClustersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeGlobalClusters)++responseDescribeOrderableDBInstanceOptions :: DescribeOrderableDBInstanceOptionsResponse -> TestTree+responseDescribeOrderableDBInstanceOptions =+ res+ "DescribeOrderableDBInstanceOptionsResponse"+ "fixture/DescribeOrderableDBInstanceOptionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeOrderableDBInstanceOptions)++responseDescribePendingMaintenanceActions :: DescribePendingMaintenanceActionsResponse -> TestTree+responseDescribePendingMaintenanceActions =+ res+ "DescribePendingMaintenanceActionsResponse"+ "fixture/DescribePendingMaintenanceActionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribePendingMaintenanceActions)++responseFailoverDBCluster :: FailoverDBClusterResponse -> TestTree+responseFailoverDBCluster =+ res+ "FailoverDBClusterResponse"+ "fixture/FailoverDBClusterResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy FailoverDBCluster)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseModifyDBCluster :: ModifyDBClusterResponse -> TestTree+responseModifyDBCluster =+ res+ "ModifyDBClusterResponse"+ "fixture/ModifyDBClusterResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ModifyDBCluster)++responseModifyDBClusterParameterGroup :: DBClusterParameterGroupNameMessage -> TestTree+responseModifyDBClusterParameterGroup =+ res+ "ModifyDBClusterParameterGroupResponse"+ "fixture/ModifyDBClusterParameterGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ModifyDBClusterParameterGroup)++responseModifyDBClusterSnapshotAttribute :: ModifyDBClusterSnapshotAttributeResponse -> TestTree+responseModifyDBClusterSnapshotAttribute =+ res+ "ModifyDBClusterSnapshotAttributeResponse"+ "fixture/ModifyDBClusterSnapshotAttributeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ModifyDBClusterSnapshotAttribute)++responseModifyDBInstance :: ModifyDBInstanceResponse -> TestTree+responseModifyDBInstance =+ res+ "ModifyDBInstanceResponse"+ "fixture/ModifyDBInstanceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ModifyDBInstance)++responseModifyDBSubnetGroup :: ModifyDBSubnetGroupResponse -> TestTree+responseModifyDBSubnetGroup =+ res+ "ModifyDBSubnetGroupResponse"+ "fixture/ModifyDBSubnetGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ModifyDBSubnetGroup)++responseModifyEventSubscription :: ModifyEventSubscriptionResponse -> TestTree+responseModifyEventSubscription =+ res+ "ModifyEventSubscriptionResponse"+ "fixture/ModifyEventSubscriptionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ModifyEventSubscription)++responseModifyGlobalCluster :: ModifyGlobalClusterResponse -> TestTree+responseModifyGlobalCluster =+ res+ "ModifyGlobalClusterResponse"+ "fixture/ModifyGlobalClusterResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ModifyGlobalCluster)++responseRebootDBInstance :: RebootDBInstanceResponse -> TestTree+responseRebootDBInstance =+ res+ "RebootDBInstanceResponse"+ "fixture/RebootDBInstanceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RebootDBInstance)++responseRemoveFromGlobalCluster :: RemoveFromGlobalClusterResponse -> TestTree+responseRemoveFromGlobalCluster =+ res+ "RemoveFromGlobalClusterResponse"+ "fixture/RemoveFromGlobalClusterResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RemoveFromGlobalCluster)++responseRemoveSourceIdentifierFromSubscription :: RemoveSourceIdentifierFromSubscriptionResponse -> TestTree+responseRemoveSourceIdentifierFromSubscription =+ res+ "RemoveSourceIdentifierFromSubscriptionResponse"+ "fixture/RemoveSourceIdentifierFromSubscriptionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RemoveSourceIdentifierFromSubscription)++responseRemoveTagsFromResource :: RemoveTagsFromResourceResponse -> TestTree+responseRemoveTagsFromResource =+ res+ "RemoveTagsFromResourceResponse"+ "fixture/RemoveTagsFromResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RemoveTagsFromResource)++responseResetDBClusterParameterGroup :: DBClusterParameterGroupNameMessage -> TestTree+responseResetDBClusterParameterGroup =+ res+ "ResetDBClusterParameterGroupResponse"+ "fixture/ResetDBClusterParameterGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ResetDBClusterParameterGroup)++responseRestoreDBClusterFromSnapshot :: RestoreDBClusterFromSnapshotResponse -> TestTree+responseRestoreDBClusterFromSnapshot =+ res+ "RestoreDBClusterFromSnapshotResponse"+ "fixture/RestoreDBClusterFromSnapshotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RestoreDBClusterFromSnapshot)++responseRestoreDBClusterToPointInTime :: RestoreDBClusterToPointInTimeResponse -> TestTree+responseRestoreDBClusterToPointInTime =+ res+ "RestoreDBClusterToPointInTimeResponse"+ "fixture/RestoreDBClusterToPointInTimeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RestoreDBClusterToPointInTime)++responseStartDBCluster :: StartDBClusterResponse -> TestTree+responseStartDBCluster =+ res+ "StartDBClusterResponse"+ "fixture/StartDBClusterResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StartDBCluster)++responseStopDBCluster :: StopDBClusterResponse -> TestTree+responseStopDBCluster =+ res+ "StopDBClusterResponse"+ "fixture/StopDBClusterResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StopDBCluster)