amazonka-wellarchitected (empty) → 2.0
raw patch · 193 files changed
+19321/−0 lines, 193 filesdep +amazonka-coredep +amazonka-testdep +amazonka-wellarchitected
Dependencies added: amazonka-core, amazonka-test, amazonka-wellarchitected, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-wellarchitected.cabal +180/−0
- fixture/AssociateLenses.yaml +10/−0
- fixture/AssociateLensesResponse.proto +0/−0
- fixture/CreateLensShare.yaml +10/−0
- fixture/CreateLensShareResponse.proto +0/−0
- fixture/CreateLensVersion.yaml +10/−0
- fixture/CreateLensVersionResponse.proto +0/−0
- fixture/CreateMilestone.yaml +10/−0
- fixture/CreateMilestoneResponse.proto +0/−0
- fixture/CreateWorkload.yaml +10/−0
- fixture/CreateWorkloadResponse.proto +0/−0
- fixture/CreateWorkloadShare.yaml +10/−0
- fixture/CreateWorkloadShareResponse.proto +0/−0
- fixture/DeleteLens.yaml +10/−0
- fixture/DeleteLensResponse.proto +0/−0
- fixture/DeleteLensShare.yaml +10/−0
- fixture/DeleteLensShareResponse.proto +0/−0
- fixture/DeleteWorkload.yaml +10/−0
- fixture/DeleteWorkloadResponse.proto +0/−0
- fixture/DeleteWorkloadShare.yaml +10/−0
- fixture/DeleteWorkloadShareResponse.proto +0/−0
- fixture/DisassociateLenses.yaml +10/−0
- fixture/DisassociateLensesResponse.proto +0/−0
- fixture/ExportLens.yaml +10/−0
- fixture/ExportLensResponse.proto +0/−0
- fixture/GetAnswer.yaml +10/−0
- fixture/GetAnswerResponse.proto +0/−0
- fixture/GetLens.yaml +10/−0
- fixture/GetLensResponse.proto +0/−0
- fixture/GetLensReview.yaml +10/−0
- fixture/GetLensReviewReport.yaml +10/−0
- fixture/GetLensReviewReportResponse.proto +0/−0
- fixture/GetLensReviewResponse.proto +0/−0
- fixture/GetLensVersionDifference.yaml +10/−0
- fixture/GetLensVersionDifferenceResponse.proto +0/−0
- fixture/GetMilestone.yaml +10/−0
- fixture/GetMilestoneResponse.proto +0/−0
- fixture/GetWorkload.yaml +10/−0
- fixture/GetWorkloadResponse.proto +0/−0
- fixture/ImportLens.yaml +10/−0
- fixture/ImportLensResponse.proto +0/−0
- fixture/ListAnswers.yaml +10/−0
- fixture/ListAnswersResponse.proto +0/−0
- fixture/ListCheckDetails.yaml +10/−0
- fixture/ListCheckDetailsResponse.proto +0/−0
- fixture/ListCheckSummaries.yaml +10/−0
- fixture/ListCheckSummariesResponse.proto +0/−0
- fixture/ListLensReviewImprovements.yaml +10/−0
- fixture/ListLensReviewImprovementsResponse.proto +0/−0
- fixture/ListLensReviews.yaml +10/−0
- fixture/ListLensReviewsResponse.proto +0/−0
- fixture/ListLensShares.yaml +10/−0
- fixture/ListLensSharesResponse.proto +0/−0
- fixture/ListLenses.yaml +10/−0
- fixture/ListLensesResponse.proto +0/−0
- fixture/ListMilestones.yaml +10/−0
- fixture/ListMilestonesResponse.proto +0/−0
- fixture/ListNotifications.yaml +10/−0
- fixture/ListNotificationsResponse.proto +0/−0
- fixture/ListShareInvitations.yaml +10/−0
- fixture/ListShareInvitationsResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/ListWorkloadShares.yaml +10/−0
- fixture/ListWorkloadSharesResponse.proto +0/−0
- fixture/ListWorkloads.yaml +10/−0
- fixture/ListWorkloadsResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateAnswer.yaml +10/−0
- fixture/UpdateAnswerResponse.proto +0/−0
- fixture/UpdateGlobalSettings.yaml +10/−0
- fixture/UpdateGlobalSettingsResponse.proto +0/−0
- fixture/UpdateLensReview.yaml +10/−0
- fixture/UpdateLensReviewResponse.proto +0/−0
- fixture/UpdateShareInvitation.yaml +10/−0
- fixture/UpdateShareInvitationResponse.proto +0/−0
- fixture/UpdateWorkload.yaml +10/−0
- fixture/UpdateWorkloadResponse.proto +0/−0
- fixture/UpdateWorkloadShare.yaml +10/−0
- fixture/UpdateWorkloadShareResponse.proto +0/−0
- fixture/UpgradeLensReview.yaml +10/−0
- fixture/UpgradeLensReviewResponse.proto +0/−0
- gen/Amazonka/WellArchitected.hs +582/−0
- gen/Amazonka/WellArchitected/AssociateLenses.hs +161/−0
- gen/Amazonka/WellArchitected/CreateLensShare.hs +213/−0
- gen/Amazonka/WellArchitected/CreateLensVersion.hs +236/−0
- gen/Amazonka/WellArchitected/CreateMilestone.hs +216/−0
- gen/Amazonka/WellArchitected/CreateWorkload.hs +403/−0
- gen/Amazonka/WellArchitected/CreateWorkloadShare.hs +240/−0
- gen/Amazonka/WellArchitected/DeleteLens.hs +170/−0
- gen/Amazonka/WellArchitected/DeleteLensShare.hs +175/−0
- gen/Amazonka/WellArchitected/DeleteWorkload.hs +143/−0
- gen/Amazonka/WellArchitected/DeleteWorkloadShare.hs +164/−0
- gen/Amazonka/WellArchitected/DisassociateLenses.hs +158/−0
- gen/Amazonka/WellArchitected/ExportLens.hs +187/−0
- gen/Amazonka/WellArchitected/GetAnswer.hs +252/−0
- gen/Amazonka/WellArchitected/GetLens.hs +171/−0
- gen/Amazonka/WellArchitected/GetLensReview.hs +217/−0
- gen/Amazonka/WellArchitected/GetLensReviewReport.hs +219/−0
- gen/Amazonka/WellArchitected/GetLensVersionDifference.hs +255/−0
- gen/Amazonka/WellArchitected/GetMilestone.hs +190/−0
- gen/Amazonka/WellArchitected/GetWorkload.hs +158/−0
- gen/Amazonka/WellArchitected/ImportLens.hs +237/−0
- gen/Amazonka/WellArchitected/Lens.hs +737/−0
- gen/Amazonka/WellArchitected/ListAnswers.hs +291/−0
- gen/Amazonka/WellArchitected/ListCheckDetails.hs +270/−0
- gen/Amazonka/WellArchitected/ListCheckSummaries.hs +273/−0
- gen/Amazonka/WellArchitected/ListLensReviewImprovements.hs +299/−0
- gen/Amazonka/WellArchitected/ListLensReviews.hs +239/−0
- gen/Amazonka/WellArchitected/ListLensShares.hs +231/−0
- gen/Amazonka/WellArchitected/ListLenses.hs +223/−0
- gen/Amazonka/WellArchitected/ListMilestones.hs +224/−0
- gen/Amazonka/WellArchitected/ListNotifications.hs +205/−0
- gen/Amazonka/WellArchitected/ListShareInvitations.hs +234/−0
- gen/Amazonka/WellArchitected/ListTagsForResource.hs +161/−0
- gen/Amazonka/WellArchitected/ListWorkloadShares.hs +245/−0
- gen/Amazonka/WellArchitected/ListWorkloads.hs +208/−0
- gen/Amazonka/WellArchitected/TagResource.hs +165/−0
- gen/Amazonka/WellArchitected/Types.hs +618/−0
- gen/Amazonka/WellArchitected/Types/AdditionalResourceType.hs +71/−0
- gen/Amazonka/WellArchitected/Types/AdditionalResources.hs +88/−0
- gen/Amazonka/WellArchitected/Types/Answer.hs +224/−0
- gen/Amazonka/WellArchitected/Types/AnswerReason.hs +86/−0
- gen/Amazonka/WellArchitected/Types/AnswerSummary.hs +175/−0
- gen/Amazonka/WellArchitected/Types/CheckDetail.hs +215/−0
- gen/Amazonka/WellArchitected/Types/CheckFailureReason.hs +81/−0
- gen/Amazonka/WellArchitected/Types/CheckProvider.hs +66/−0
- gen/Amazonka/WellArchitected/Types/CheckStatus.hs +86/−0
- gen/Amazonka/WellArchitected/Types/CheckSummary.hs +190/−0
- gen/Amazonka/WellArchitected/Types/Choice.hs +140/−0
- gen/Amazonka/WellArchitected/Types/ChoiceAnswer.hs +112/−0
- gen/Amazonka/WellArchitected/Types/ChoiceAnswerSummary.hs +100/−0
- gen/Amazonka/WellArchitected/Types/ChoiceContent.hs +84/−0
- gen/Amazonka/WellArchitected/Types/ChoiceImprovementPlan.hs +94/−0
- gen/Amazonka/WellArchitected/Types/ChoiceReason.hs +86/−0
- gen/Amazonka/WellArchitected/Types/ChoiceStatus.hs +76/−0
- gen/Amazonka/WellArchitected/Types/ChoiceUpdate.hs +102/−0
- gen/Amazonka/WellArchitected/Types/DifferenceStatus.hs +76/−0
- gen/Amazonka/WellArchitected/Types/ImportLensStatus.hs +76/−0
- gen/Amazonka/WellArchitected/Types/ImprovementSummary.hs +133/−0
- gen/Amazonka/WellArchitected/Types/Lens.hs +142/−0
- gen/Amazonka/WellArchitected/Types/LensReview.hs +179/−0
- gen/Amazonka/WellArchitected/Types/LensReviewReport.hs +94/−0
- gen/Amazonka/WellArchitected/Types/LensReviewSummary.hs +142/−0
- gen/Amazonka/WellArchitected/Types/LensShareSummary.hs +106/−0
- gen/Amazonka/WellArchitected/Types/LensStatus.hs +86/−0
- gen/Amazonka/WellArchitected/Types/LensStatusType.hs +76/−0
- gen/Amazonka/WellArchitected/Types/LensSummary.hs +176/−0
- gen/Amazonka/WellArchitected/Types/LensType.hs +76/−0
- gen/Amazonka/WellArchitected/Types/LensUpgradeSummary.hs +130/−0
- gen/Amazonka/WellArchitected/Types/Milestone.hs +105/−0
- gen/Amazonka/WellArchitected/Types/MilestoneSummary.hs +105/−0
- gen/Amazonka/WellArchitected/Types/NotificationSummary.hs +87/−0
- gen/Amazonka/WellArchitected/Types/NotificationType.hs +71/−0
- gen/Amazonka/WellArchitected/Types/OrganizationSharingStatus.hs +71/−0
- gen/Amazonka/WellArchitected/Types/PermissionType.hs +72/−0
- gen/Amazonka/WellArchitected/Types/PillarDifference.hs +112/−0
- gen/Amazonka/WellArchitected/Types/PillarReviewSummary.hs +105/−0
- gen/Amazonka/WellArchitected/Types/QuestionDifference.hs +96/−0
- gen/Amazonka/WellArchitected/Types/Risk.hs +84/−0
- gen/Amazonka/WellArchitected/Types/ShareInvitation.hs +119/−0
- gen/Amazonka/WellArchitected/Types/ShareInvitationAction.hs +72/−0
- gen/Amazonka/WellArchitected/Types/ShareInvitationSummary.hs +164/−0
- gen/Amazonka/WellArchitected/Types/ShareResourceType.hs +71/−0
- gen/Amazonka/WellArchitected/Types/ShareStatus.hs +102/−0
- gen/Amazonka/WellArchitected/Types/TrustedAdvisorIntegrationStatus.hs +71/−0
- gen/Amazonka/WellArchitected/Types/VersionDifferences.hs +76/−0
- gen/Amazonka/WellArchitected/Types/Workload.hs +363/−0
- gen/Amazonka/WellArchitected/Types/WorkloadDiscoveryConfig.hs +86/−0
- gen/Amazonka/WellArchitected/Types/WorkloadEnvironment.hs +72/−0
- gen/Amazonka/WellArchitected/Types/WorkloadImprovementStatus.hs +87/−0
- gen/Amazonka/WellArchitected/Types/WorkloadShare.hs +139/−0
- gen/Amazonka/WellArchitected/Types/WorkloadShareSummary.hs +119/−0
- gen/Amazonka/WellArchitected/Types/WorkloadSummary.hs +151/−0
- gen/Amazonka/WellArchitected/UntagResource.hs +173/−0
- gen/Amazonka/WellArchitected/UpdateAnswer.hs +301/−0
- gen/Amazonka/WellArchitected/UpdateGlobalSettings.hs +135/−0
- gen/Amazonka/WellArchitected/UpdateLensReview.hs +224/−0
- gen/Amazonka/WellArchitected/UpdateShareInvitation.hs +195/−0
- gen/Amazonka/WellArchitected/UpdateWorkload.hs +389/−0
- gen/Amazonka/WellArchitected/UpdateWorkloadShare.hs +218/−0
- gen/Amazonka/WellArchitected/UpgradeLensReview.hs +184/−0
- gen/Amazonka/WellArchitected/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/WellArchitected.hs +878/−0
- test/Test/Amazonka/WellArchitected.hs +20/−0
- test/Test/Amazonka/WellArchitected/Internal.hs +8/−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 Well-Architected Tool SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2020-03-31@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-wellarchitected)+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.WellArchitected](http://hackage.haskell.org/package/amazonka-wellarchitected/docs/Amazonka-WellArchitected.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-wellarchitected` 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-wellarchitected.cabal view
@@ -0,0 +1,180 @@+cabal-version: 2.2+name: amazonka-wellarchitected+version: 2.0+synopsis: Amazon Well-Architected Tool 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 @2020-03-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.WellArchitected.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.WellArchitected" 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-wellarchitected++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.WellArchitected+ Amazonka.WellArchitected.AssociateLenses+ Amazonka.WellArchitected.CreateLensShare+ Amazonka.WellArchitected.CreateLensVersion+ Amazonka.WellArchitected.CreateMilestone+ Amazonka.WellArchitected.CreateWorkload+ Amazonka.WellArchitected.CreateWorkloadShare+ Amazonka.WellArchitected.DeleteLens+ Amazonka.WellArchitected.DeleteLensShare+ Amazonka.WellArchitected.DeleteWorkload+ Amazonka.WellArchitected.DeleteWorkloadShare+ Amazonka.WellArchitected.DisassociateLenses+ Amazonka.WellArchitected.ExportLens+ Amazonka.WellArchitected.GetAnswer+ Amazonka.WellArchitected.GetLens+ Amazonka.WellArchitected.GetLensReview+ Amazonka.WellArchitected.GetLensReviewReport+ Amazonka.WellArchitected.GetLensVersionDifference+ Amazonka.WellArchitected.GetMilestone+ Amazonka.WellArchitected.GetWorkload+ Amazonka.WellArchitected.ImportLens+ Amazonka.WellArchitected.Lens+ Amazonka.WellArchitected.ListAnswers+ Amazonka.WellArchitected.ListCheckDetails+ Amazonka.WellArchitected.ListCheckSummaries+ Amazonka.WellArchitected.ListLenses+ Amazonka.WellArchitected.ListLensReviewImprovements+ Amazonka.WellArchitected.ListLensReviews+ Amazonka.WellArchitected.ListLensShares+ Amazonka.WellArchitected.ListMilestones+ Amazonka.WellArchitected.ListNotifications+ Amazonka.WellArchitected.ListShareInvitations+ Amazonka.WellArchitected.ListTagsForResource+ Amazonka.WellArchitected.ListWorkloads+ Amazonka.WellArchitected.ListWorkloadShares+ Amazonka.WellArchitected.TagResource+ Amazonka.WellArchitected.Types+ Amazonka.WellArchitected.Types.AdditionalResources+ Amazonka.WellArchitected.Types.AdditionalResourceType+ Amazonka.WellArchitected.Types.Answer+ Amazonka.WellArchitected.Types.AnswerReason+ Amazonka.WellArchitected.Types.AnswerSummary+ Amazonka.WellArchitected.Types.CheckDetail+ Amazonka.WellArchitected.Types.CheckFailureReason+ Amazonka.WellArchitected.Types.CheckProvider+ Amazonka.WellArchitected.Types.CheckStatus+ Amazonka.WellArchitected.Types.CheckSummary+ Amazonka.WellArchitected.Types.Choice+ Amazonka.WellArchitected.Types.ChoiceAnswer+ Amazonka.WellArchitected.Types.ChoiceAnswerSummary+ Amazonka.WellArchitected.Types.ChoiceContent+ Amazonka.WellArchitected.Types.ChoiceImprovementPlan+ Amazonka.WellArchitected.Types.ChoiceReason+ Amazonka.WellArchitected.Types.ChoiceStatus+ Amazonka.WellArchitected.Types.ChoiceUpdate+ Amazonka.WellArchitected.Types.DifferenceStatus+ Amazonka.WellArchitected.Types.ImportLensStatus+ Amazonka.WellArchitected.Types.ImprovementSummary+ Amazonka.WellArchitected.Types.Lens+ Amazonka.WellArchitected.Types.LensReview+ Amazonka.WellArchitected.Types.LensReviewReport+ Amazonka.WellArchitected.Types.LensReviewSummary+ Amazonka.WellArchitected.Types.LensShareSummary+ Amazonka.WellArchitected.Types.LensStatus+ Amazonka.WellArchitected.Types.LensStatusType+ Amazonka.WellArchitected.Types.LensSummary+ Amazonka.WellArchitected.Types.LensType+ Amazonka.WellArchitected.Types.LensUpgradeSummary+ Amazonka.WellArchitected.Types.Milestone+ Amazonka.WellArchitected.Types.MilestoneSummary+ Amazonka.WellArchitected.Types.NotificationSummary+ Amazonka.WellArchitected.Types.NotificationType+ Amazonka.WellArchitected.Types.OrganizationSharingStatus+ Amazonka.WellArchitected.Types.PermissionType+ Amazonka.WellArchitected.Types.PillarDifference+ Amazonka.WellArchitected.Types.PillarReviewSummary+ Amazonka.WellArchitected.Types.QuestionDifference+ Amazonka.WellArchitected.Types.Risk+ Amazonka.WellArchitected.Types.ShareInvitation+ Amazonka.WellArchitected.Types.ShareInvitationAction+ Amazonka.WellArchitected.Types.ShareInvitationSummary+ Amazonka.WellArchitected.Types.ShareResourceType+ Amazonka.WellArchitected.Types.ShareStatus+ Amazonka.WellArchitected.Types.TrustedAdvisorIntegrationStatus+ Amazonka.WellArchitected.Types.VersionDifferences+ Amazonka.WellArchitected.Types.Workload+ Amazonka.WellArchitected.Types.WorkloadDiscoveryConfig+ Amazonka.WellArchitected.Types.WorkloadEnvironment+ Amazonka.WellArchitected.Types.WorkloadImprovementStatus+ Amazonka.WellArchitected.Types.WorkloadShare+ Amazonka.WellArchitected.Types.WorkloadShareSummary+ Amazonka.WellArchitected.Types.WorkloadSummary+ Amazonka.WellArchitected.UntagResource+ Amazonka.WellArchitected.UpdateAnswer+ Amazonka.WellArchitected.UpdateGlobalSettings+ Amazonka.WellArchitected.UpdateLensReview+ Amazonka.WellArchitected.UpdateShareInvitation+ Amazonka.WellArchitected.UpdateWorkload+ Amazonka.WellArchitected.UpdateWorkloadShare+ Amazonka.WellArchitected.UpgradeLensReview+ Amazonka.WellArchitected.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-wellarchitected-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.Gen.WellArchitected+ Test.Amazonka.WellArchitected+ Test.Amazonka.WellArchitected.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-test >=2.0 && <2.1+ , amazonka-wellarchitected+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/AssociateLenses.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/AssociateLensesResponse.proto view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/CreateLensVersion.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/CreateLensVersionResponse.proto view
+ fixture/CreateMilestone.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/CreateMilestoneResponse.proto view
+ fixture/CreateWorkload.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/CreateWorkloadResponse.proto view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/DeleteLens.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/DeleteLensResponse.proto view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/DeleteWorkload.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/DeleteWorkloadResponse.proto view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/DisassociateLenses.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/DisassociateLensesResponse.proto view
+ fixture/ExportLens.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ExportLensResponse.proto view
+ fixture/GetAnswer.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/GetAnswerResponse.proto view
+ fixture/GetLens.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/GetLensResponse.proto view
+ fixture/GetLensReview.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/GetLensReviewReport.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/GetLensReviewReportResponse.proto view
+ fixture/GetLensReviewResponse.proto view
+ fixture/GetLensVersionDifference.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/GetLensVersionDifferenceResponse.proto view
+ fixture/GetMilestone.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/GetMilestoneResponse.proto view
+ fixture/GetWorkload.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/GetWorkloadResponse.proto view
+ fixture/ImportLens.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ImportLensResponse.proto view
+ fixture/ListAnswers.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListAnswersResponse.proto view
+ fixture/ListCheckDetails.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListCheckDetailsResponse.proto view
+ fixture/ListCheckSummaries.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListCheckSummariesResponse.proto view
+ fixture/ListLensReviewImprovements.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListLensReviewImprovementsResponse.proto view
+ fixture/ListLensReviews.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListLensReviewsResponse.proto view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListLenses.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListLensesResponse.proto view
+ fixture/ListMilestones.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListMilestonesResponse.proto view
+ fixture/ListNotifications.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListNotificationsResponse.proto view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListWorkloads.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/ListWorkloadsResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/TagResourceResponse.proto view
+ fixture/UntagResource.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/UntagResourceResponse.proto view
+ fixture/UpdateAnswer.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/UpdateAnswerResponse.proto view
+ fixture/UpdateGlobalSettings.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/UpdateGlobalSettingsResponse.proto view
+ fixture/UpdateLensReview.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/UpdateLensReviewResponse.proto view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/UpdateWorkload.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/UpdateWorkloadResponse.proto view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/UpgradeLensReview.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/wellarchitected/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: wellarchitected.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/UpgradeLensReviewResponse.proto view
+ gen/Amazonka/WellArchitected.hs view
@@ -0,0 +1,582 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.WellArchitected+-- 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 @2020-03-31@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- Well-Architected Tool+--+-- This is the /Well-Architected Tool API Reference/. The WA Tool API+-- provides programmatic access to the+-- <http://aws.amazon.com/well-architected-tool Well-Architected Tool> in+-- the+-- <https://console.aws.amazon.com/wellarchitected Amazon Web Services Management Console>.+-- For information about the Well-Architected Tool, see the+-- <https://docs.aws.amazon.com/wellarchitected/latest/userguide/intro.html Well-Architected Tool User Guide>.+module Amazonka.WellArchitected+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceQuotaExceededException+ _ServiceQuotaExceededException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** AssociateLenses+ AssociateLenses (AssociateLenses'),+ newAssociateLenses,+ AssociateLensesResponse (AssociateLensesResponse'),+ newAssociateLensesResponse,++ -- ** CreateLensShare+ CreateLensShare (CreateLensShare'),+ newCreateLensShare,+ CreateLensShareResponse (CreateLensShareResponse'),+ newCreateLensShareResponse,++ -- ** CreateLensVersion+ CreateLensVersion (CreateLensVersion'),+ newCreateLensVersion,+ CreateLensVersionResponse (CreateLensVersionResponse'),+ newCreateLensVersionResponse,++ -- ** CreateMilestone+ CreateMilestone (CreateMilestone'),+ newCreateMilestone,+ CreateMilestoneResponse (CreateMilestoneResponse'),+ newCreateMilestoneResponse,++ -- ** CreateWorkload+ CreateWorkload (CreateWorkload'),+ newCreateWorkload,+ CreateWorkloadResponse (CreateWorkloadResponse'),+ newCreateWorkloadResponse,++ -- ** CreateWorkloadShare+ CreateWorkloadShare (CreateWorkloadShare'),+ newCreateWorkloadShare,+ CreateWorkloadShareResponse (CreateWorkloadShareResponse'),+ newCreateWorkloadShareResponse,++ -- ** DeleteLens+ DeleteLens (DeleteLens'),+ newDeleteLens,+ DeleteLensResponse (DeleteLensResponse'),+ newDeleteLensResponse,++ -- ** DeleteLensShare+ DeleteLensShare (DeleteLensShare'),+ newDeleteLensShare,+ DeleteLensShareResponse (DeleteLensShareResponse'),+ newDeleteLensShareResponse,++ -- ** DeleteWorkload+ DeleteWorkload (DeleteWorkload'),+ newDeleteWorkload,+ DeleteWorkloadResponse (DeleteWorkloadResponse'),+ newDeleteWorkloadResponse,++ -- ** DeleteWorkloadShare+ DeleteWorkloadShare (DeleteWorkloadShare'),+ newDeleteWorkloadShare,+ DeleteWorkloadShareResponse (DeleteWorkloadShareResponse'),+ newDeleteWorkloadShareResponse,++ -- ** DisassociateLenses+ DisassociateLenses (DisassociateLenses'),+ newDisassociateLenses,+ DisassociateLensesResponse (DisassociateLensesResponse'),+ newDisassociateLensesResponse,++ -- ** ExportLens+ ExportLens (ExportLens'),+ newExportLens,+ ExportLensResponse (ExportLensResponse'),+ newExportLensResponse,++ -- ** GetAnswer+ GetAnswer (GetAnswer'),+ newGetAnswer,+ GetAnswerResponse (GetAnswerResponse'),+ newGetAnswerResponse,++ -- ** GetLens+ GetLens (GetLens'),+ newGetLens,+ GetLensResponse (GetLensResponse'),+ newGetLensResponse,++ -- ** GetLensReview+ GetLensReview (GetLensReview'),+ newGetLensReview,+ GetLensReviewResponse (GetLensReviewResponse'),+ newGetLensReviewResponse,++ -- ** GetLensReviewReport+ GetLensReviewReport (GetLensReviewReport'),+ newGetLensReviewReport,+ GetLensReviewReportResponse (GetLensReviewReportResponse'),+ newGetLensReviewReportResponse,++ -- ** GetLensVersionDifference+ GetLensVersionDifference (GetLensVersionDifference'),+ newGetLensVersionDifference,+ GetLensVersionDifferenceResponse (GetLensVersionDifferenceResponse'),+ newGetLensVersionDifferenceResponse,++ -- ** GetMilestone+ GetMilestone (GetMilestone'),+ newGetMilestone,+ GetMilestoneResponse (GetMilestoneResponse'),+ newGetMilestoneResponse,++ -- ** GetWorkload+ GetWorkload (GetWorkload'),+ newGetWorkload,+ GetWorkloadResponse (GetWorkloadResponse'),+ newGetWorkloadResponse,++ -- ** ImportLens+ ImportLens (ImportLens'),+ newImportLens,+ ImportLensResponse (ImportLensResponse'),+ newImportLensResponse,++ -- ** ListAnswers+ ListAnswers (ListAnswers'),+ newListAnswers,+ ListAnswersResponse (ListAnswersResponse'),+ newListAnswersResponse,++ -- ** ListCheckDetails+ ListCheckDetails (ListCheckDetails'),+ newListCheckDetails,+ ListCheckDetailsResponse (ListCheckDetailsResponse'),+ newListCheckDetailsResponse,++ -- ** ListCheckSummaries+ ListCheckSummaries (ListCheckSummaries'),+ newListCheckSummaries,+ ListCheckSummariesResponse (ListCheckSummariesResponse'),+ newListCheckSummariesResponse,++ -- ** ListLensReviewImprovements+ ListLensReviewImprovements (ListLensReviewImprovements'),+ newListLensReviewImprovements,+ ListLensReviewImprovementsResponse (ListLensReviewImprovementsResponse'),+ newListLensReviewImprovementsResponse,++ -- ** ListLensReviews+ ListLensReviews (ListLensReviews'),+ newListLensReviews,+ ListLensReviewsResponse (ListLensReviewsResponse'),+ newListLensReviewsResponse,++ -- ** ListLensShares+ ListLensShares (ListLensShares'),+ newListLensShares,+ ListLensSharesResponse (ListLensSharesResponse'),+ newListLensSharesResponse,++ -- ** ListLenses+ ListLenses (ListLenses'),+ newListLenses,+ ListLensesResponse (ListLensesResponse'),+ newListLensesResponse,++ -- ** ListMilestones+ ListMilestones (ListMilestones'),+ newListMilestones,+ ListMilestonesResponse (ListMilestonesResponse'),+ newListMilestonesResponse,++ -- ** ListNotifications+ ListNotifications (ListNotifications'),+ newListNotifications,+ ListNotificationsResponse (ListNotificationsResponse'),+ newListNotificationsResponse,++ -- ** ListShareInvitations+ ListShareInvitations (ListShareInvitations'),+ newListShareInvitations,+ ListShareInvitationsResponse (ListShareInvitationsResponse'),+ newListShareInvitationsResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** ListWorkloadShares+ ListWorkloadShares (ListWorkloadShares'),+ newListWorkloadShares,+ ListWorkloadSharesResponse (ListWorkloadSharesResponse'),+ newListWorkloadSharesResponse,++ -- ** ListWorkloads+ ListWorkloads (ListWorkloads'),+ newListWorkloads,+ ListWorkloadsResponse (ListWorkloadsResponse'),+ newListWorkloadsResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateAnswer+ UpdateAnswer (UpdateAnswer'),+ newUpdateAnswer,+ UpdateAnswerResponse (UpdateAnswerResponse'),+ newUpdateAnswerResponse,++ -- ** UpdateGlobalSettings+ UpdateGlobalSettings (UpdateGlobalSettings'),+ newUpdateGlobalSettings,+ UpdateGlobalSettingsResponse (UpdateGlobalSettingsResponse'),+ newUpdateGlobalSettingsResponse,++ -- ** UpdateLensReview+ UpdateLensReview (UpdateLensReview'),+ newUpdateLensReview,+ UpdateLensReviewResponse (UpdateLensReviewResponse'),+ newUpdateLensReviewResponse,++ -- ** UpdateShareInvitation+ UpdateShareInvitation (UpdateShareInvitation'),+ newUpdateShareInvitation,+ UpdateShareInvitationResponse (UpdateShareInvitationResponse'),+ newUpdateShareInvitationResponse,++ -- ** UpdateWorkload+ UpdateWorkload (UpdateWorkload'),+ newUpdateWorkload,+ UpdateWorkloadResponse (UpdateWorkloadResponse'),+ newUpdateWorkloadResponse,++ -- ** UpdateWorkloadShare+ UpdateWorkloadShare (UpdateWorkloadShare'),+ newUpdateWorkloadShare,+ UpdateWorkloadShareResponse (UpdateWorkloadShareResponse'),+ newUpdateWorkloadShareResponse,++ -- ** UpgradeLensReview+ UpgradeLensReview (UpgradeLensReview'),+ newUpgradeLensReview,+ UpgradeLensReviewResponse (UpgradeLensReviewResponse'),+ newUpgradeLensReviewResponse,++ -- * Types++ -- ** AdditionalResourceType+ AdditionalResourceType (..),++ -- ** AnswerReason+ AnswerReason (..),++ -- ** CheckFailureReason+ CheckFailureReason (..),++ -- ** CheckProvider+ CheckProvider (..),++ -- ** CheckStatus+ CheckStatus (..),++ -- ** ChoiceReason+ ChoiceReason (..),++ -- ** ChoiceStatus+ ChoiceStatus (..),++ -- ** DifferenceStatus+ DifferenceStatus (..),++ -- ** ImportLensStatus+ ImportLensStatus (..),++ -- ** LensStatus+ LensStatus (..),++ -- ** LensStatusType+ LensStatusType (..),++ -- ** LensType+ LensType (..),++ -- ** NotificationType+ NotificationType (..),++ -- ** OrganizationSharingStatus+ OrganizationSharingStatus (..),++ -- ** PermissionType+ PermissionType (..),++ -- ** Risk+ Risk (..),++ -- ** ShareInvitationAction+ ShareInvitationAction (..),++ -- ** ShareResourceType+ ShareResourceType (..),++ -- ** ShareStatus+ ShareStatus (..),++ -- ** TrustedAdvisorIntegrationStatus+ TrustedAdvisorIntegrationStatus (..),++ -- ** WorkloadEnvironment+ WorkloadEnvironment (..),++ -- ** WorkloadImprovementStatus+ WorkloadImprovementStatus (..),++ -- ** AdditionalResources+ AdditionalResources (AdditionalResources'),+ newAdditionalResources,++ -- ** Answer+ Answer (Answer'),+ newAnswer,++ -- ** AnswerSummary+ AnswerSummary (AnswerSummary'),+ newAnswerSummary,++ -- ** CheckDetail+ CheckDetail (CheckDetail'),+ newCheckDetail,++ -- ** CheckSummary+ CheckSummary (CheckSummary'),+ newCheckSummary,++ -- ** Choice+ Choice (Choice'),+ newChoice,++ -- ** ChoiceAnswer+ ChoiceAnswer (ChoiceAnswer'),+ newChoiceAnswer,++ -- ** ChoiceAnswerSummary+ ChoiceAnswerSummary (ChoiceAnswerSummary'),+ newChoiceAnswerSummary,++ -- ** ChoiceContent+ ChoiceContent (ChoiceContent'),+ newChoiceContent,++ -- ** ChoiceImprovementPlan+ ChoiceImprovementPlan (ChoiceImprovementPlan'),+ newChoiceImprovementPlan,++ -- ** ChoiceUpdate+ ChoiceUpdate (ChoiceUpdate'),+ newChoiceUpdate,++ -- ** ImprovementSummary+ ImprovementSummary (ImprovementSummary'),+ newImprovementSummary,++ -- ** Lens+ Lens (Lens'),+ newLens,++ -- ** LensReview+ LensReview (LensReview'),+ newLensReview,++ -- ** LensReviewReport+ LensReviewReport (LensReviewReport'),+ newLensReviewReport,++ -- ** LensReviewSummary+ LensReviewSummary (LensReviewSummary'),+ newLensReviewSummary,++ -- ** LensShareSummary+ LensShareSummary (LensShareSummary'),+ newLensShareSummary,++ -- ** LensSummary+ LensSummary (LensSummary'),+ newLensSummary,++ -- ** LensUpgradeSummary+ LensUpgradeSummary (LensUpgradeSummary'),+ newLensUpgradeSummary,++ -- ** Milestone+ Milestone (Milestone'),+ newMilestone,++ -- ** MilestoneSummary+ MilestoneSummary (MilestoneSummary'),+ newMilestoneSummary,++ -- ** NotificationSummary+ NotificationSummary (NotificationSummary'),+ newNotificationSummary,++ -- ** PillarDifference+ PillarDifference (PillarDifference'),+ newPillarDifference,++ -- ** PillarReviewSummary+ PillarReviewSummary (PillarReviewSummary'),+ newPillarReviewSummary,++ -- ** QuestionDifference+ QuestionDifference (QuestionDifference'),+ newQuestionDifference,++ -- ** ShareInvitation+ ShareInvitation (ShareInvitation'),+ newShareInvitation,++ -- ** ShareInvitationSummary+ ShareInvitationSummary (ShareInvitationSummary'),+ newShareInvitationSummary,++ -- ** VersionDifferences+ VersionDifferences (VersionDifferences'),+ newVersionDifferences,++ -- ** Workload+ Workload (Workload'),+ newWorkload,++ -- ** WorkloadDiscoveryConfig+ WorkloadDiscoveryConfig (WorkloadDiscoveryConfig'),+ newWorkloadDiscoveryConfig,++ -- ** WorkloadShare+ WorkloadShare (WorkloadShare'),+ newWorkloadShare,++ -- ** WorkloadShareSummary+ WorkloadShareSummary (WorkloadShareSummary'),+ newWorkloadShareSummary,++ -- ** WorkloadSummary+ WorkloadSummary (WorkloadSummary'),+ newWorkloadSummary,+ )+where++import Amazonka.WellArchitected.AssociateLenses+import Amazonka.WellArchitected.CreateLensShare+import Amazonka.WellArchitected.CreateLensVersion+import Amazonka.WellArchitected.CreateMilestone+import Amazonka.WellArchitected.CreateWorkload+import Amazonka.WellArchitected.CreateWorkloadShare+import Amazonka.WellArchitected.DeleteLens+import Amazonka.WellArchitected.DeleteLensShare+import Amazonka.WellArchitected.DeleteWorkload+import Amazonka.WellArchitected.DeleteWorkloadShare+import Amazonka.WellArchitected.DisassociateLenses+import Amazonka.WellArchitected.ExportLens+import Amazonka.WellArchitected.GetAnswer+import Amazonka.WellArchitected.GetLens+import Amazonka.WellArchitected.GetLensReview+import Amazonka.WellArchitected.GetLensReviewReport+import Amazonka.WellArchitected.GetLensVersionDifference+import Amazonka.WellArchitected.GetMilestone+import Amazonka.WellArchitected.GetWorkload+import Amazonka.WellArchitected.ImportLens+import Amazonka.WellArchitected.Lens+import Amazonka.WellArchitected.ListAnswers+import Amazonka.WellArchitected.ListCheckDetails+import Amazonka.WellArchitected.ListCheckSummaries+import Amazonka.WellArchitected.ListLensReviewImprovements+import Amazonka.WellArchitected.ListLensReviews+import Amazonka.WellArchitected.ListLensShares+import Amazonka.WellArchitected.ListLenses+import Amazonka.WellArchitected.ListMilestones+import Amazonka.WellArchitected.ListNotifications+import Amazonka.WellArchitected.ListShareInvitations+import Amazonka.WellArchitected.ListTagsForResource+import Amazonka.WellArchitected.ListWorkloadShares+import Amazonka.WellArchitected.ListWorkloads+import Amazonka.WellArchitected.TagResource+import Amazonka.WellArchitected.Types+import Amazonka.WellArchitected.UntagResource+import Amazonka.WellArchitected.UpdateAnswer+import Amazonka.WellArchitected.UpdateGlobalSettings+import Amazonka.WellArchitected.UpdateLensReview+import Amazonka.WellArchitected.UpdateShareInvitation+import Amazonka.WellArchitected.UpdateWorkload+import Amazonka.WellArchitected.UpdateWorkloadShare+import Amazonka.WellArchitected.UpgradeLensReview+import Amazonka.WellArchitected.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 'WellArchitected'.++-- $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/WellArchitected/AssociateLenses.hs view
@@ -0,0 +1,161 @@+{-# 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.WellArchitected.AssociateLenses+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Associate a lens to a workload.+--+-- Up to 10 lenses can be associated with a workload in a single API+-- operation. A maximum of 20 lenses can be associated with a workload.+--+-- __Disclaimer__+--+-- By accessing and\/or applying custom lenses created by another Amazon+-- Web Services user or account, you acknowledge that custom lenses created+-- by other users and shared with you are Third Party Content as defined in+-- the Amazon Web Services Customer Agreement.+module Amazonka.WellArchitected.AssociateLenses+ ( -- * Creating a Request+ AssociateLenses (..),+ newAssociateLenses,++ -- * Request Lenses+ associateLenses_workloadId,+ associateLenses_lensAliases,++ -- * Destructuring the Response+ AssociateLensesResponse (..),+ newAssociateLensesResponse,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to associate lens reviews.+--+-- /See:/ 'newAssociateLenses' smart constructor.+data AssociateLenses = AssociateLenses'+ { workloadId :: Prelude.Text,+ lensAliases :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateLenses' 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:+--+-- 'workloadId', 'associateLenses_workloadId' - Undocumented member.+--+-- 'lensAliases', 'associateLenses_lensAliases' - Undocumented member.+newAssociateLenses ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensAliases'+ Prelude.NonEmpty Prelude.Text ->+ AssociateLenses+newAssociateLenses pWorkloadId_ pLensAliases_ =+ AssociateLenses'+ { workloadId = pWorkloadId_,+ lensAliases = Lens.coerced Lens.# pLensAliases_+ }++-- | Undocumented member.+associateLenses_workloadId :: Lens.Lens' AssociateLenses Prelude.Text+associateLenses_workloadId = Lens.lens (\AssociateLenses' {workloadId} -> workloadId) (\s@AssociateLenses' {} a -> s {workloadId = a} :: AssociateLenses)++-- | Undocumented member.+associateLenses_lensAliases :: Lens.Lens' AssociateLenses (Prelude.NonEmpty Prelude.Text)+associateLenses_lensAliases = Lens.lens (\AssociateLenses' {lensAliases} -> lensAliases) (\s@AssociateLenses' {} a -> s {lensAliases = a} :: AssociateLenses) Prelude.. Lens.coerced++instance Core.AWSRequest AssociateLenses where+ type+ AWSResponse AssociateLenses =+ AssociateLensesResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveNull AssociateLensesResponse'++instance Prelude.Hashable AssociateLenses where+ hashWithSalt _salt AssociateLenses' {..} =+ _salt+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensAliases++instance Prelude.NFData AssociateLenses where+ rnf AssociateLenses' {..} =+ Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensAliases++instance Data.ToHeaders AssociateLenses where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON AssociateLenses where+ toJSON AssociateLenses' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("LensAliases" Data..= lensAliases)]+ )++instance Data.ToPath AssociateLenses where+ toPath AssociateLenses' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/associateLenses"+ ]++instance Data.ToQuery AssociateLenses where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAssociateLensesResponse' smart constructor.+data AssociateLensesResponse = AssociateLensesResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateLensesResponse' 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.+newAssociateLensesResponse ::+ AssociateLensesResponse+newAssociateLensesResponse = AssociateLensesResponse'++instance Prelude.NFData AssociateLensesResponse where+ rnf _ = ()
@@ -0,0 +1,213 @@+{-# 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.WellArchitected.CreateLensShare+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create a lens share.+--+-- The owner of a lens can share it with other Amazon Web Services+-- accounts, IAM users, an organization, and organizational units (OUs) in+-- the same Amazon Web Services Region. Shared access to a lens is not+-- removed until the lens invitation is deleted.+--+-- __Disclaimer__+--+-- By sharing your custom lenses with other Amazon Web Services accounts,+-- you acknowledge that Amazon Web Services will make your custom lenses+-- available to those other accounts. Those other accounts may continue to+-- access and use your shared custom lenses even if you delete the custom+-- lenses from your own Amazon Web Services account or terminate your+-- Amazon Web Services account.+module Amazonka.WellArchitected.CreateLensShare+ ( -- * Creating a Request+ CreateLensShare (..),+ newCreateLensShare,++ -- * Request Lenses+ createLensShare_lensAlias,+ createLensShare_sharedWith,+ createLensShare_clientRequestToken,++ -- * Destructuring the Response+ CreateLensShareResponse (..),+ newCreateLensShareResponse,++ -- * Response Lenses+ createLensShareResponse_shareId,+ createLensShareResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newCreateLensShare' smart constructor.+data CreateLensShare = CreateLensShare'+ { lensAlias :: Prelude.Text,+ sharedWith :: Prelude.Text,+ clientRequestToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateLensShare' 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:+--+-- 'lensAlias', 'createLensShare_lensAlias' - Undocumented member.+--+-- 'sharedWith', 'createLensShare_sharedWith' - Undocumented member.+--+-- 'clientRequestToken', 'createLensShare_clientRequestToken' - Undocumented member.+newCreateLensShare ::+ -- | 'lensAlias'+ Prelude.Text ->+ -- | 'sharedWith'+ Prelude.Text ->+ -- | 'clientRequestToken'+ Prelude.Text ->+ CreateLensShare+newCreateLensShare+ pLensAlias_+ pSharedWith_+ pClientRequestToken_ =+ CreateLensShare'+ { lensAlias = pLensAlias_,+ sharedWith = pSharedWith_,+ clientRequestToken = pClientRequestToken_+ }++-- | Undocumented member.+createLensShare_lensAlias :: Lens.Lens' CreateLensShare Prelude.Text+createLensShare_lensAlias = Lens.lens (\CreateLensShare' {lensAlias} -> lensAlias) (\s@CreateLensShare' {} a -> s {lensAlias = a} :: CreateLensShare)++-- | Undocumented member.+createLensShare_sharedWith :: Lens.Lens' CreateLensShare Prelude.Text+createLensShare_sharedWith = Lens.lens (\CreateLensShare' {sharedWith} -> sharedWith) (\s@CreateLensShare' {} a -> s {sharedWith = a} :: CreateLensShare)++-- | Undocumented member.+createLensShare_clientRequestToken :: Lens.Lens' CreateLensShare Prelude.Text+createLensShare_clientRequestToken = Lens.lens (\CreateLensShare' {clientRequestToken} -> clientRequestToken) (\s@CreateLensShare' {} a -> s {clientRequestToken = a} :: CreateLensShare)++instance Core.AWSRequest CreateLensShare where+ type+ AWSResponse CreateLensShare =+ CreateLensShareResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateLensShareResponse'+ Prelude.<$> (x Data..?> "ShareId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateLensShare where+ hashWithSalt _salt CreateLensShare' {..} =+ _salt+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` sharedWith+ `Prelude.hashWithSalt` clientRequestToken++instance Prelude.NFData CreateLensShare where+ rnf CreateLensShare' {..} =+ Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf sharedWith+ `Prelude.seq` Prelude.rnf clientRequestToken++instance Data.ToHeaders CreateLensShare where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateLensShare where+ toJSON CreateLensShare' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("SharedWith" Data..= sharedWith),+ Prelude.Just+ ("ClientRequestToken" Data..= clientRequestToken)+ ]+ )++instance Data.ToPath CreateLensShare where+ toPath CreateLensShare' {..} =+ Prelude.mconcat+ ["/lenses/", Data.toBS lensAlias, "/shares"]++instance Data.ToQuery CreateLensShare where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateLensShareResponse' smart constructor.+data CreateLensShareResponse = CreateLensShareResponse'+ { shareId :: 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 'CreateLensShareResponse' 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:+--+-- 'shareId', 'createLensShareResponse_shareId' - Undocumented member.+--+-- 'httpStatus', 'createLensShareResponse_httpStatus' - The response's http status code.+newCreateLensShareResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateLensShareResponse+newCreateLensShareResponse pHttpStatus_ =+ CreateLensShareResponse'+ { shareId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createLensShareResponse_shareId :: Lens.Lens' CreateLensShareResponse (Prelude.Maybe Prelude.Text)+createLensShareResponse_shareId = Lens.lens (\CreateLensShareResponse' {shareId} -> shareId) (\s@CreateLensShareResponse' {} a -> s {shareId = a} :: CreateLensShareResponse)++-- | The response's http status code.+createLensShareResponse_httpStatus :: Lens.Lens' CreateLensShareResponse Prelude.Int+createLensShareResponse_httpStatus = Lens.lens (\CreateLensShareResponse' {httpStatus} -> httpStatus) (\s@CreateLensShareResponse' {} a -> s {httpStatus = a} :: CreateLensShareResponse)++instance Prelude.NFData CreateLensShareResponse where+ rnf CreateLensShareResponse' {..} =+ Prelude.rnf shareId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/CreateLensVersion.hs view
@@ -0,0 +1,236 @@+{-# 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.WellArchitected.CreateLensVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create a new lens version.+--+-- A lens can have up to 100 versions.+--+-- After a lens has been imported, create a new lens version to publish it.+-- The owner of a lens can share the lens with other Amazon Web Services+-- accounts and IAM users in the same Amazon Web Services Region. Only the+-- owner of a lens can delete it.+module Amazonka.WellArchitected.CreateLensVersion+ ( -- * Creating a Request+ CreateLensVersion (..),+ newCreateLensVersion,++ -- * Request Lenses+ createLensVersion_isMajorVersion,+ createLensVersion_lensAlias,+ createLensVersion_lensVersion,+ createLensVersion_clientRequestToken,++ -- * Destructuring the Response+ CreateLensVersionResponse (..),+ newCreateLensVersionResponse,++ -- * Response Lenses+ createLensVersionResponse_lensArn,+ createLensVersionResponse_lensVersion,+ createLensVersionResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newCreateLensVersion' smart constructor.+data CreateLensVersion = CreateLensVersion'+ { -- | Set to true if this new major lens version.+ isMajorVersion :: Prelude.Maybe Prelude.Bool,+ lensAlias :: Prelude.Text,+ -- | The version of the lens being created.+ lensVersion :: Prelude.Text,+ clientRequestToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateLensVersion' 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:+--+-- 'isMajorVersion', 'createLensVersion_isMajorVersion' - Set to true if this new major lens version.+--+-- 'lensAlias', 'createLensVersion_lensAlias' - Undocumented member.+--+-- 'lensVersion', 'createLensVersion_lensVersion' - The version of the lens being created.+--+-- 'clientRequestToken', 'createLensVersion_clientRequestToken' - Undocumented member.+newCreateLensVersion ::+ -- | 'lensAlias'+ Prelude.Text ->+ -- | 'lensVersion'+ Prelude.Text ->+ -- | 'clientRequestToken'+ Prelude.Text ->+ CreateLensVersion+newCreateLensVersion+ pLensAlias_+ pLensVersion_+ pClientRequestToken_ =+ CreateLensVersion'+ { isMajorVersion =+ Prelude.Nothing,+ lensAlias = pLensAlias_,+ lensVersion = pLensVersion_,+ clientRequestToken = pClientRequestToken_+ }++-- | Set to true if this new major lens version.+createLensVersion_isMajorVersion :: Lens.Lens' CreateLensVersion (Prelude.Maybe Prelude.Bool)+createLensVersion_isMajorVersion = Lens.lens (\CreateLensVersion' {isMajorVersion} -> isMajorVersion) (\s@CreateLensVersion' {} a -> s {isMajorVersion = a} :: CreateLensVersion)++-- | Undocumented member.+createLensVersion_lensAlias :: Lens.Lens' CreateLensVersion Prelude.Text+createLensVersion_lensAlias = Lens.lens (\CreateLensVersion' {lensAlias} -> lensAlias) (\s@CreateLensVersion' {} a -> s {lensAlias = a} :: CreateLensVersion)++-- | The version of the lens being created.+createLensVersion_lensVersion :: Lens.Lens' CreateLensVersion Prelude.Text+createLensVersion_lensVersion = Lens.lens (\CreateLensVersion' {lensVersion} -> lensVersion) (\s@CreateLensVersion' {} a -> s {lensVersion = a} :: CreateLensVersion)++-- | Undocumented member.+createLensVersion_clientRequestToken :: Lens.Lens' CreateLensVersion Prelude.Text+createLensVersion_clientRequestToken = Lens.lens (\CreateLensVersion' {clientRequestToken} -> clientRequestToken) (\s@CreateLensVersion' {} a -> s {clientRequestToken = a} :: CreateLensVersion)++instance Core.AWSRequest CreateLensVersion where+ type+ AWSResponse CreateLensVersion =+ CreateLensVersionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateLensVersionResponse'+ Prelude.<$> (x Data..?> "LensArn")+ Prelude.<*> (x Data..?> "LensVersion")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateLensVersion where+ hashWithSalt _salt CreateLensVersion' {..} =+ _salt+ `Prelude.hashWithSalt` isMajorVersion+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` lensVersion+ `Prelude.hashWithSalt` clientRequestToken++instance Prelude.NFData CreateLensVersion where+ rnf CreateLensVersion' {..} =+ Prelude.rnf isMajorVersion+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensVersion+ `Prelude.seq` Prelude.rnf clientRequestToken++instance Data.ToHeaders CreateLensVersion where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateLensVersion where+ toJSON CreateLensVersion' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("IsMajorVersion" Data..=)+ Prelude.<$> isMajorVersion,+ Prelude.Just ("LensVersion" Data..= lensVersion),+ Prelude.Just+ ("ClientRequestToken" Data..= clientRequestToken)+ ]+ )++instance Data.ToPath CreateLensVersion where+ toPath CreateLensVersion' {..} =+ Prelude.mconcat+ ["/lenses/", Data.toBS lensAlias, "/versions"]++instance Data.ToQuery CreateLensVersion where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateLensVersionResponse' smart constructor.+data CreateLensVersionResponse = CreateLensVersionResponse'+ { -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ -- | The version of the lens.+ lensVersion :: 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 'CreateLensVersionResponse' 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:+--+-- 'lensArn', 'createLensVersionResponse_lensArn' - The ARN for the lens.+--+-- 'lensVersion', 'createLensVersionResponse_lensVersion' - The version of the lens.+--+-- 'httpStatus', 'createLensVersionResponse_httpStatus' - The response's http status code.+newCreateLensVersionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateLensVersionResponse+newCreateLensVersionResponse pHttpStatus_ =+ CreateLensVersionResponse'+ { lensArn =+ Prelude.Nothing,+ lensVersion = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the lens.+createLensVersionResponse_lensArn :: Lens.Lens' CreateLensVersionResponse (Prelude.Maybe Prelude.Text)+createLensVersionResponse_lensArn = Lens.lens (\CreateLensVersionResponse' {lensArn} -> lensArn) (\s@CreateLensVersionResponse' {} a -> s {lensArn = a} :: CreateLensVersionResponse)++-- | The version of the lens.+createLensVersionResponse_lensVersion :: Lens.Lens' CreateLensVersionResponse (Prelude.Maybe Prelude.Text)+createLensVersionResponse_lensVersion = Lens.lens (\CreateLensVersionResponse' {lensVersion} -> lensVersion) (\s@CreateLensVersionResponse' {} a -> s {lensVersion = a} :: CreateLensVersionResponse)++-- | The response's http status code.+createLensVersionResponse_httpStatus :: Lens.Lens' CreateLensVersionResponse Prelude.Int+createLensVersionResponse_httpStatus = Lens.lens (\CreateLensVersionResponse' {httpStatus} -> httpStatus) (\s@CreateLensVersionResponse' {} a -> s {httpStatus = a} :: CreateLensVersionResponse)++instance Prelude.NFData CreateLensVersionResponse where+ rnf CreateLensVersionResponse' {..} =+ Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf lensVersion+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/CreateMilestone.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.WellArchitected.CreateMilestone+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create a milestone for an existing workload.+module Amazonka.WellArchitected.CreateMilestone+ ( -- * Creating a Request+ CreateMilestone (..),+ newCreateMilestone,++ -- * Request Lenses+ createMilestone_workloadId,+ createMilestone_milestoneName,+ createMilestone_clientRequestToken,++ -- * Destructuring the Response+ CreateMilestoneResponse (..),+ newCreateMilestoneResponse,++ -- * Response Lenses+ createMilestoneResponse_milestoneNumber,+ createMilestoneResponse_workloadId,+ createMilestoneResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input for milestone creation.+--+-- /See:/ 'newCreateMilestone' smart constructor.+data CreateMilestone = CreateMilestone'+ { workloadId :: Prelude.Text,+ milestoneName :: Prelude.Text,+ clientRequestToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateMilestone' 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:+--+-- 'workloadId', 'createMilestone_workloadId' - Undocumented member.+--+-- 'milestoneName', 'createMilestone_milestoneName' - Undocumented member.+--+-- 'clientRequestToken', 'createMilestone_clientRequestToken' - Undocumented member.+newCreateMilestone ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'milestoneName'+ Prelude.Text ->+ -- | 'clientRequestToken'+ Prelude.Text ->+ CreateMilestone+newCreateMilestone+ pWorkloadId_+ pMilestoneName_+ pClientRequestToken_ =+ CreateMilestone'+ { workloadId = pWorkloadId_,+ milestoneName = pMilestoneName_,+ clientRequestToken = pClientRequestToken_+ }++-- | Undocumented member.+createMilestone_workloadId :: Lens.Lens' CreateMilestone Prelude.Text+createMilestone_workloadId = Lens.lens (\CreateMilestone' {workloadId} -> workloadId) (\s@CreateMilestone' {} a -> s {workloadId = a} :: CreateMilestone)++-- | Undocumented member.+createMilestone_milestoneName :: Lens.Lens' CreateMilestone Prelude.Text+createMilestone_milestoneName = Lens.lens (\CreateMilestone' {milestoneName} -> milestoneName) (\s@CreateMilestone' {} a -> s {milestoneName = a} :: CreateMilestone)++-- | Undocumented member.+createMilestone_clientRequestToken :: Lens.Lens' CreateMilestone Prelude.Text+createMilestone_clientRequestToken = Lens.lens (\CreateMilestone' {clientRequestToken} -> clientRequestToken) (\s@CreateMilestone' {} a -> s {clientRequestToken = a} :: CreateMilestone)++instance Core.AWSRequest CreateMilestone where+ type+ AWSResponse CreateMilestone =+ CreateMilestoneResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateMilestoneResponse'+ Prelude.<$> (x Data..?> "MilestoneNumber")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateMilestone where+ hashWithSalt _salt CreateMilestone' {..} =+ _salt+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` milestoneName+ `Prelude.hashWithSalt` clientRequestToken++instance Prelude.NFData CreateMilestone where+ rnf CreateMilestone' {..} =+ Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf milestoneName+ `Prelude.seq` Prelude.rnf clientRequestToken++instance Data.ToHeaders CreateMilestone where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateMilestone where+ toJSON CreateMilestone' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("MilestoneName" Data..= milestoneName),+ Prelude.Just+ ("ClientRequestToken" Data..= clientRequestToken)+ ]+ )++instance Data.ToPath CreateMilestone where+ toPath CreateMilestone' {..} =+ Prelude.mconcat+ ["/workloads/", Data.toBS workloadId, "/milestones"]++instance Data.ToQuery CreateMilestone where+ toQuery = Prelude.const Prelude.mempty++-- | Output of a create milestone call.+--+-- /See:/ 'newCreateMilestoneResponse' smart constructor.+data CreateMilestoneResponse = CreateMilestoneResponse'+ { milestoneNumber :: Prelude.Maybe Prelude.Natural,+ workloadId :: 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 'CreateMilestoneResponse' 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:+--+-- 'milestoneNumber', 'createMilestoneResponse_milestoneNumber' - Undocumented member.+--+-- 'workloadId', 'createMilestoneResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'createMilestoneResponse_httpStatus' - The response's http status code.+newCreateMilestoneResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateMilestoneResponse+newCreateMilestoneResponse pHttpStatus_ =+ CreateMilestoneResponse'+ { milestoneNumber =+ Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createMilestoneResponse_milestoneNumber :: Lens.Lens' CreateMilestoneResponse (Prelude.Maybe Prelude.Natural)+createMilestoneResponse_milestoneNumber = Lens.lens (\CreateMilestoneResponse' {milestoneNumber} -> milestoneNumber) (\s@CreateMilestoneResponse' {} a -> s {milestoneNumber = a} :: CreateMilestoneResponse)++-- | Undocumented member.+createMilestoneResponse_workloadId :: Lens.Lens' CreateMilestoneResponse (Prelude.Maybe Prelude.Text)+createMilestoneResponse_workloadId = Lens.lens (\CreateMilestoneResponse' {workloadId} -> workloadId) (\s@CreateMilestoneResponse' {} a -> s {workloadId = a} :: CreateMilestoneResponse)++-- | The response's http status code.+createMilestoneResponse_httpStatus :: Lens.Lens' CreateMilestoneResponse Prelude.Int+createMilestoneResponse_httpStatus = Lens.lens (\CreateMilestoneResponse' {httpStatus} -> httpStatus) (\s@CreateMilestoneResponse' {} a -> s {httpStatus = a} :: CreateMilestoneResponse)++instance Prelude.NFData CreateMilestoneResponse where+ rnf CreateMilestoneResponse' {..} =+ Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/CreateWorkload.hs view
@@ -0,0 +1,403 @@+{-# 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.WellArchitected.CreateWorkload+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create a new workload.+--+-- The owner of a workload can share the workload with other Amazon Web+-- Services accounts, IAM users, an organization, and organizational units+-- (OUs) in the same Amazon Web Services Region. Only the owner of a+-- workload can delete it.+--+-- For more information, see+-- <https://docs.aws.amazon.com/wellarchitected/latest/userguide/define-workload.html Defining a Workload>+-- in the /Well-Architected Tool User Guide/.+module Amazonka.WellArchitected.CreateWorkload+ ( -- * Creating a Request+ CreateWorkload (..),+ newCreateWorkload,++ -- * Request Lenses+ createWorkload_accountIds,+ createWorkload_applications,+ createWorkload_architecturalDesign,+ createWorkload_awsRegions,+ createWorkload_discoveryConfig,+ createWorkload_industry,+ createWorkload_industryType,+ createWorkload_nonAwsRegions,+ createWorkload_notes,+ createWorkload_pillarPriorities,+ createWorkload_reviewOwner,+ createWorkload_tags,+ createWorkload_workloadName,+ createWorkload_description,+ createWorkload_environment,+ createWorkload_lenses,+ createWorkload_clientRequestToken,++ -- * Destructuring the Response+ CreateWorkloadResponse (..),+ newCreateWorkloadResponse,++ -- * Response Lenses+ createWorkloadResponse_workloadArn,+ createWorkloadResponse_workloadId,+ createWorkloadResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input for workload creation.+--+-- /See:/ 'newCreateWorkload' smart constructor.+data CreateWorkload = CreateWorkload'+ { accountIds :: Prelude.Maybe [Prelude.Text],+ -- | List of AppRegistry application ARNs associated to the workload.+ applications :: Prelude.Maybe [Prelude.Text],+ architecturalDesign :: Prelude.Maybe Prelude.Text,+ awsRegions :: Prelude.Maybe [Prelude.Text],+ -- | Well-Architected discovery configuration settings associated to the+ -- workload.+ discoveryConfig :: Prelude.Maybe WorkloadDiscoveryConfig,+ industry :: Prelude.Maybe Prelude.Text,+ industryType :: Prelude.Maybe Prelude.Text,+ nonAwsRegions :: Prelude.Maybe [Prelude.Text],+ notes :: Prelude.Maybe Prelude.Text,+ pillarPriorities :: Prelude.Maybe [Prelude.Text],+ reviewOwner :: Prelude.Maybe Prelude.Text,+ -- | The tags to be associated with the workload.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ workloadName :: Prelude.Text,+ description :: Prelude.Text,+ environment :: WorkloadEnvironment,+ lenses :: [Prelude.Text],+ clientRequestToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorkload' 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:+--+-- 'accountIds', 'createWorkload_accountIds' - Undocumented member.+--+-- 'applications', 'createWorkload_applications' - List of AppRegistry application ARNs associated to the workload.+--+-- 'architecturalDesign', 'createWorkload_architecturalDesign' - Undocumented member.+--+-- 'awsRegions', 'createWorkload_awsRegions' - Undocumented member.+--+-- 'discoveryConfig', 'createWorkload_discoveryConfig' - Well-Architected discovery configuration settings associated to the+-- workload.+--+-- 'industry', 'createWorkload_industry' - Undocumented member.+--+-- 'industryType', 'createWorkload_industryType' - Undocumented member.+--+-- 'nonAwsRegions', 'createWorkload_nonAwsRegions' - Undocumented member.+--+-- 'notes', 'createWorkload_notes' - Undocumented member.+--+-- 'pillarPriorities', 'createWorkload_pillarPriorities' - Undocumented member.+--+-- 'reviewOwner', 'createWorkload_reviewOwner' - Undocumented member.+--+-- 'tags', 'createWorkload_tags' - The tags to be associated with the workload.+--+-- 'workloadName', 'createWorkload_workloadName' - Undocumented member.+--+-- 'description', 'createWorkload_description' - Undocumented member.+--+-- 'environment', 'createWorkload_environment' - Undocumented member.+--+-- 'lenses', 'createWorkload_lenses' - Undocumented member.+--+-- 'clientRequestToken', 'createWorkload_clientRequestToken' - Undocumented member.+newCreateWorkload ::+ -- | 'workloadName'+ Prelude.Text ->+ -- | 'description'+ Prelude.Text ->+ -- | 'environment'+ WorkloadEnvironment ->+ -- | 'clientRequestToken'+ Prelude.Text ->+ CreateWorkload+newCreateWorkload+ pWorkloadName_+ pDescription_+ pEnvironment_+ pClientRequestToken_ =+ CreateWorkload'+ { accountIds = Prelude.Nothing,+ applications = Prelude.Nothing,+ architecturalDesign = Prelude.Nothing,+ awsRegions = Prelude.Nothing,+ discoveryConfig = Prelude.Nothing,+ industry = Prelude.Nothing,+ industryType = Prelude.Nothing,+ nonAwsRegions = Prelude.Nothing,+ notes = Prelude.Nothing,+ pillarPriorities = Prelude.Nothing,+ reviewOwner = Prelude.Nothing,+ tags = Prelude.Nothing,+ workloadName = pWorkloadName_,+ description = pDescription_,+ environment = pEnvironment_,+ lenses = Prelude.mempty,+ clientRequestToken = pClientRequestToken_+ }++-- | Undocumented member.+createWorkload_accountIds :: Lens.Lens' CreateWorkload (Prelude.Maybe [Prelude.Text])+createWorkload_accountIds = Lens.lens (\CreateWorkload' {accountIds} -> accountIds) (\s@CreateWorkload' {} a -> s {accountIds = a} :: CreateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | List of AppRegistry application ARNs associated to the workload.+createWorkload_applications :: Lens.Lens' CreateWorkload (Prelude.Maybe [Prelude.Text])+createWorkload_applications = Lens.lens (\CreateWorkload' {applications} -> applications) (\s@CreateWorkload' {} a -> s {applications = a} :: CreateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+createWorkload_architecturalDesign :: Lens.Lens' CreateWorkload (Prelude.Maybe Prelude.Text)+createWorkload_architecturalDesign = Lens.lens (\CreateWorkload' {architecturalDesign} -> architecturalDesign) (\s@CreateWorkload' {} a -> s {architecturalDesign = a} :: CreateWorkload)++-- | Undocumented member.+createWorkload_awsRegions :: Lens.Lens' CreateWorkload (Prelude.Maybe [Prelude.Text])+createWorkload_awsRegions = Lens.lens (\CreateWorkload' {awsRegions} -> awsRegions) (\s@CreateWorkload' {} a -> s {awsRegions = a} :: CreateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | Well-Architected discovery configuration settings associated to the+-- workload.+createWorkload_discoveryConfig :: Lens.Lens' CreateWorkload (Prelude.Maybe WorkloadDiscoveryConfig)+createWorkload_discoveryConfig = Lens.lens (\CreateWorkload' {discoveryConfig} -> discoveryConfig) (\s@CreateWorkload' {} a -> s {discoveryConfig = a} :: CreateWorkload)++-- | Undocumented member.+createWorkload_industry :: Lens.Lens' CreateWorkload (Prelude.Maybe Prelude.Text)+createWorkload_industry = Lens.lens (\CreateWorkload' {industry} -> industry) (\s@CreateWorkload' {} a -> s {industry = a} :: CreateWorkload)++-- | Undocumented member.+createWorkload_industryType :: Lens.Lens' CreateWorkload (Prelude.Maybe Prelude.Text)+createWorkload_industryType = Lens.lens (\CreateWorkload' {industryType} -> industryType) (\s@CreateWorkload' {} a -> s {industryType = a} :: CreateWorkload)++-- | Undocumented member.+createWorkload_nonAwsRegions :: Lens.Lens' CreateWorkload (Prelude.Maybe [Prelude.Text])+createWorkload_nonAwsRegions = Lens.lens (\CreateWorkload' {nonAwsRegions} -> nonAwsRegions) (\s@CreateWorkload' {} a -> s {nonAwsRegions = a} :: CreateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+createWorkload_notes :: Lens.Lens' CreateWorkload (Prelude.Maybe Prelude.Text)+createWorkload_notes = Lens.lens (\CreateWorkload' {notes} -> notes) (\s@CreateWorkload' {} a -> s {notes = a} :: CreateWorkload)++-- | Undocumented member.+createWorkload_pillarPriorities :: Lens.Lens' CreateWorkload (Prelude.Maybe [Prelude.Text])+createWorkload_pillarPriorities = Lens.lens (\CreateWorkload' {pillarPriorities} -> pillarPriorities) (\s@CreateWorkload' {} a -> s {pillarPriorities = a} :: CreateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+createWorkload_reviewOwner :: Lens.Lens' CreateWorkload (Prelude.Maybe Prelude.Text)+createWorkload_reviewOwner = Lens.lens (\CreateWorkload' {reviewOwner} -> reviewOwner) (\s@CreateWorkload' {} a -> s {reviewOwner = a} :: CreateWorkload)++-- | The tags to be associated with the workload.+createWorkload_tags :: Lens.Lens' CreateWorkload (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWorkload_tags = Lens.lens (\CreateWorkload' {tags} -> tags) (\s@CreateWorkload' {} a -> s {tags = a} :: CreateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+createWorkload_workloadName :: Lens.Lens' CreateWorkload Prelude.Text+createWorkload_workloadName = Lens.lens (\CreateWorkload' {workloadName} -> workloadName) (\s@CreateWorkload' {} a -> s {workloadName = a} :: CreateWorkload)++-- | Undocumented member.+createWorkload_description :: Lens.Lens' CreateWorkload Prelude.Text+createWorkload_description = Lens.lens (\CreateWorkload' {description} -> description) (\s@CreateWorkload' {} a -> s {description = a} :: CreateWorkload)++-- | Undocumented member.+createWorkload_environment :: Lens.Lens' CreateWorkload WorkloadEnvironment+createWorkload_environment = Lens.lens (\CreateWorkload' {environment} -> environment) (\s@CreateWorkload' {} a -> s {environment = a} :: CreateWorkload)++-- | Undocumented member.+createWorkload_lenses :: Lens.Lens' CreateWorkload [Prelude.Text]+createWorkload_lenses = Lens.lens (\CreateWorkload' {lenses} -> lenses) (\s@CreateWorkload' {} a -> s {lenses = a} :: CreateWorkload) Prelude.. Lens.coerced++-- | Undocumented member.+createWorkload_clientRequestToken :: Lens.Lens' CreateWorkload Prelude.Text+createWorkload_clientRequestToken = Lens.lens (\CreateWorkload' {clientRequestToken} -> clientRequestToken) (\s@CreateWorkload' {} a -> s {clientRequestToken = a} :: CreateWorkload)++instance Core.AWSRequest CreateWorkload where+ type+ AWSResponse CreateWorkload =+ CreateWorkloadResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateWorkloadResponse'+ Prelude.<$> (x Data..?> "WorkloadArn")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateWorkload where+ hashWithSalt _salt CreateWorkload' {..} =+ _salt+ `Prelude.hashWithSalt` accountIds+ `Prelude.hashWithSalt` applications+ `Prelude.hashWithSalt` architecturalDesign+ `Prelude.hashWithSalt` awsRegions+ `Prelude.hashWithSalt` discoveryConfig+ `Prelude.hashWithSalt` industry+ `Prelude.hashWithSalt` industryType+ `Prelude.hashWithSalt` nonAwsRegions+ `Prelude.hashWithSalt` notes+ `Prelude.hashWithSalt` pillarPriorities+ `Prelude.hashWithSalt` reviewOwner+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` workloadName+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` environment+ `Prelude.hashWithSalt` lenses+ `Prelude.hashWithSalt` clientRequestToken++instance Prelude.NFData CreateWorkload where+ rnf CreateWorkload' {..} =+ Prelude.rnf accountIds+ `Prelude.seq` Prelude.rnf applications+ `Prelude.seq` Prelude.rnf architecturalDesign+ `Prelude.seq` Prelude.rnf awsRegions+ `Prelude.seq` Prelude.rnf discoveryConfig+ `Prelude.seq` Prelude.rnf industry+ `Prelude.seq` Prelude.rnf industryType+ `Prelude.seq` Prelude.rnf nonAwsRegions+ `Prelude.seq` Prelude.rnf notes+ `Prelude.seq` Prelude.rnf pillarPriorities+ `Prelude.seq` Prelude.rnf reviewOwner+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf workloadName+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf lenses+ `Prelude.seq` Prelude.rnf clientRequestToken++instance Data.ToHeaders CreateWorkload where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateWorkload where+ toJSON CreateWorkload' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AccountIds" Data..=) Prelude.<$> accountIds,+ ("Applications" Data..=) Prelude.<$> applications,+ ("ArchitecturalDesign" Data..=)+ Prelude.<$> architecturalDesign,+ ("AwsRegions" Data..=) Prelude.<$> awsRegions,+ ("DiscoveryConfig" Data..=)+ Prelude.<$> discoveryConfig,+ ("Industry" Data..=) Prelude.<$> industry,+ ("IndustryType" Data..=) Prelude.<$> industryType,+ ("NonAwsRegions" Data..=) Prelude.<$> nonAwsRegions,+ ("Notes" Data..=) Prelude.<$> notes,+ ("PillarPriorities" Data..=)+ Prelude.<$> pillarPriorities,+ ("ReviewOwner" Data..=) Prelude.<$> reviewOwner,+ ("Tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("WorkloadName" Data..= workloadName),+ Prelude.Just ("Description" Data..= description),+ Prelude.Just ("Environment" Data..= environment),+ Prelude.Just ("Lenses" Data..= lenses),+ Prelude.Just+ ("ClientRequestToken" Data..= clientRequestToken)+ ]+ )++instance Data.ToPath CreateWorkload where+ toPath = Prelude.const "/workloads"++instance Data.ToQuery CreateWorkload where+ toQuery = Prelude.const Prelude.mempty++-- | Output of a create workload call.+--+-- /See:/ 'newCreateWorkloadResponse' smart constructor.+data CreateWorkloadResponse = CreateWorkloadResponse'+ { workloadArn :: Prelude.Maybe Prelude.Text,+ workloadId :: 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 'CreateWorkloadResponse' 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:+--+-- 'workloadArn', 'createWorkloadResponse_workloadArn' - Undocumented member.+--+-- 'workloadId', 'createWorkloadResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'createWorkloadResponse_httpStatus' - The response's http status code.+newCreateWorkloadResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateWorkloadResponse+newCreateWorkloadResponse pHttpStatus_ =+ CreateWorkloadResponse'+ { workloadArn =+ Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createWorkloadResponse_workloadArn :: Lens.Lens' CreateWorkloadResponse (Prelude.Maybe Prelude.Text)+createWorkloadResponse_workloadArn = Lens.lens (\CreateWorkloadResponse' {workloadArn} -> workloadArn) (\s@CreateWorkloadResponse' {} a -> s {workloadArn = a} :: CreateWorkloadResponse)++-- | Undocumented member.+createWorkloadResponse_workloadId :: Lens.Lens' CreateWorkloadResponse (Prelude.Maybe Prelude.Text)+createWorkloadResponse_workloadId = Lens.lens (\CreateWorkloadResponse' {workloadId} -> workloadId) (\s@CreateWorkloadResponse' {} a -> s {workloadId = a} :: CreateWorkloadResponse)++-- | The response's http status code.+createWorkloadResponse_httpStatus :: Lens.Lens' CreateWorkloadResponse Prelude.Int+createWorkloadResponse_httpStatus = Lens.lens (\CreateWorkloadResponse' {httpStatus} -> httpStatus) (\s@CreateWorkloadResponse' {} a -> s {httpStatus = a} :: CreateWorkloadResponse)++instance Prelude.NFData CreateWorkloadResponse where+ rnf CreateWorkloadResponse' {..} =+ Prelude.rnf workloadArn+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
@@ -0,0 +1,240 @@+{-# 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.WellArchitected.CreateWorkloadShare+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create a workload share.+--+-- The owner of a workload can share it with other Amazon Web Services+-- accounts and IAM users in the same Amazon Web Services Region. Shared+-- access to a workload is not removed until the workload invitation is+-- deleted.+--+-- For more information, see+-- <https://docs.aws.amazon.com/wellarchitected/latest/userguide/workloads-sharing.html Sharing a Workload>+-- in the /Well-Architected Tool User Guide/.+module Amazonka.WellArchitected.CreateWorkloadShare+ ( -- * Creating a Request+ CreateWorkloadShare (..),+ newCreateWorkloadShare,++ -- * Request Lenses+ createWorkloadShare_workloadId,+ createWorkloadShare_sharedWith,+ createWorkloadShare_permissionType,+ createWorkloadShare_clientRequestToken,++ -- * Destructuring the Response+ CreateWorkloadShareResponse (..),+ newCreateWorkloadShareResponse,++ -- * Response Lenses+ createWorkloadShareResponse_shareId,+ createWorkloadShareResponse_workloadId,+ createWorkloadShareResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input for Create Workload Share+--+-- /See:/ 'newCreateWorkloadShare' smart constructor.+data CreateWorkloadShare = CreateWorkloadShare'+ { workloadId :: Prelude.Text,+ sharedWith :: Prelude.Text,+ permissionType :: PermissionType,+ clientRequestToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorkloadShare' 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:+--+-- 'workloadId', 'createWorkloadShare_workloadId' - Undocumented member.+--+-- 'sharedWith', 'createWorkloadShare_sharedWith' - Undocumented member.+--+-- 'permissionType', 'createWorkloadShare_permissionType' - Undocumented member.+--+-- 'clientRequestToken', 'createWorkloadShare_clientRequestToken' - Undocumented member.+newCreateWorkloadShare ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'sharedWith'+ Prelude.Text ->+ -- | 'permissionType'+ PermissionType ->+ -- | 'clientRequestToken'+ Prelude.Text ->+ CreateWorkloadShare+newCreateWorkloadShare+ pWorkloadId_+ pSharedWith_+ pPermissionType_+ pClientRequestToken_ =+ CreateWorkloadShare'+ { workloadId = pWorkloadId_,+ sharedWith = pSharedWith_,+ permissionType = pPermissionType_,+ clientRequestToken = pClientRequestToken_+ }++-- | Undocumented member.+createWorkloadShare_workloadId :: Lens.Lens' CreateWorkloadShare Prelude.Text+createWorkloadShare_workloadId = Lens.lens (\CreateWorkloadShare' {workloadId} -> workloadId) (\s@CreateWorkloadShare' {} a -> s {workloadId = a} :: CreateWorkloadShare)++-- | Undocumented member.+createWorkloadShare_sharedWith :: Lens.Lens' CreateWorkloadShare Prelude.Text+createWorkloadShare_sharedWith = Lens.lens (\CreateWorkloadShare' {sharedWith} -> sharedWith) (\s@CreateWorkloadShare' {} a -> s {sharedWith = a} :: CreateWorkloadShare)++-- | Undocumented member.+createWorkloadShare_permissionType :: Lens.Lens' CreateWorkloadShare PermissionType+createWorkloadShare_permissionType = Lens.lens (\CreateWorkloadShare' {permissionType} -> permissionType) (\s@CreateWorkloadShare' {} a -> s {permissionType = a} :: CreateWorkloadShare)++-- | Undocumented member.+createWorkloadShare_clientRequestToken :: Lens.Lens' CreateWorkloadShare Prelude.Text+createWorkloadShare_clientRequestToken = Lens.lens (\CreateWorkloadShare' {clientRequestToken} -> clientRequestToken) (\s@CreateWorkloadShare' {} a -> s {clientRequestToken = a} :: CreateWorkloadShare)++instance Core.AWSRequest CreateWorkloadShare where+ type+ AWSResponse CreateWorkloadShare =+ CreateWorkloadShareResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateWorkloadShareResponse'+ Prelude.<$> (x Data..?> "ShareId")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateWorkloadShare where+ hashWithSalt _salt CreateWorkloadShare' {..} =+ _salt+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` sharedWith+ `Prelude.hashWithSalt` permissionType+ `Prelude.hashWithSalt` clientRequestToken++instance Prelude.NFData CreateWorkloadShare where+ rnf CreateWorkloadShare' {..} =+ Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf sharedWith+ `Prelude.seq` Prelude.rnf permissionType+ `Prelude.seq` Prelude.rnf clientRequestToken++instance Data.ToHeaders CreateWorkloadShare where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateWorkloadShare where+ toJSON CreateWorkloadShare' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("SharedWith" Data..= sharedWith),+ Prelude.Just+ ("PermissionType" Data..= permissionType),+ Prelude.Just+ ("ClientRequestToken" Data..= clientRequestToken)+ ]+ )++instance Data.ToPath CreateWorkloadShare where+ toPath CreateWorkloadShare' {..} =+ Prelude.mconcat+ ["/workloads/", Data.toBS workloadId, "/shares"]++instance Data.ToQuery CreateWorkloadShare where+ toQuery = Prelude.const Prelude.mempty++-- | Input for Create Workload Share+--+-- /See:/ 'newCreateWorkloadShareResponse' smart constructor.+data CreateWorkloadShareResponse = CreateWorkloadShareResponse'+ { shareId :: Prelude.Maybe Prelude.Text,+ workloadId :: 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 'CreateWorkloadShareResponse' 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:+--+-- 'shareId', 'createWorkloadShareResponse_shareId' - Undocumented member.+--+-- 'workloadId', 'createWorkloadShareResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'createWorkloadShareResponse_httpStatus' - The response's http status code.+newCreateWorkloadShareResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateWorkloadShareResponse+newCreateWorkloadShareResponse pHttpStatus_ =+ CreateWorkloadShareResponse'+ { shareId =+ Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createWorkloadShareResponse_shareId :: Lens.Lens' CreateWorkloadShareResponse (Prelude.Maybe Prelude.Text)+createWorkloadShareResponse_shareId = Lens.lens (\CreateWorkloadShareResponse' {shareId} -> shareId) (\s@CreateWorkloadShareResponse' {} a -> s {shareId = a} :: CreateWorkloadShareResponse)++-- | Undocumented member.+createWorkloadShareResponse_workloadId :: Lens.Lens' CreateWorkloadShareResponse (Prelude.Maybe Prelude.Text)+createWorkloadShareResponse_workloadId = Lens.lens (\CreateWorkloadShareResponse' {workloadId} -> workloadId) (\s@CreateWorkloadShareResponse' {} a -> s {workloadId = a} :: CreateWorkloadShareResponse)++-- | The response's http status code.+createWorkloadShareResponse_httpStatus :: Lens.Lens' CreateWorkloadShareResponse Prelude.Int+createWorkloadShareResponse_httpStatus = Lens.lens (\CreateWorkloadShareResponse' {httpStatus} -> httpStatus) (\s@CreateWorkloadShareResponse' {} a -> s {httpStatus = a} :: CreateWorkloadShareResponse)++instance Prelude.NFData CreateWorkloadShareResponse where+ rnf CreateWorkloadShareResponse' {..} =+ Prelude.rnf shareId+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/DeleteLens.hs view
@@ -0,0 +1,170 @@+{-# 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.WellArchitected.DeleteLens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete an existing lens.+--+-- Only the owner of a lens can delete it. After the lens is deleted,+-- Amazon Web Services accounts and IAM users that you shared the lens with+-- can continue to use it, but they will no longer be able to apply it to+-- new workloads.+--+-- __Disclaimer__+--+-- By sharing your custom lenses with other Amazon Web Services accounts,+-- you acknowledge that Amazon Web Services will make your custom lenses+-- available to those other accounts. Those other accounts may continue to+-- access and use your shared custom lenses even if you delete the custom+-- lenses from your own Amazon Web Services account or terminate your+-- Amazon Web Services account.+module Amazonka.WellArchitected.DeleteLens+ ( -- * Creating a Request+ DeleteLens (..),+ newDeleteLens,++ -- * Request Lenses+ deleteLens_lensAlias,+ deleteLens_clientRequestToken,+ deleteLens_lensStatus,++ -- * Destructuring the Response+ DeleteLensResponse (..),+ newDeleteLensResponse,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newDeleteLens' smart constructor.+data DeleteLens = DeleteLens'+ { lensAlias :: Prelude.Text,+ clientRequestToken :: Prelude.Text,+ -- | The status of the lens to be deleted.+ lensStatus :: LensStatusType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteLens' 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:+--+-- 'lensAlias', 'deleteLens_lensAlias' - Undocumented member.+--+-- 'clientRequestToken', 'deleteLens_clientRequestToken' - Undocumented member.+--+-- 'lensStatus', 'deleteLens_lensStatus' - The status of the lens to be deleted.+newDeleteLens ::+ -- | 'lensAlias'+ Prelude.Text ->+ -- | 'clientRequestToken'+ Prelude.Text ->+ -- | 'lensStatus'+ LensStatusType ->+ DeleteLens+newDeleteLens+ pLensAlias_+ pClientRequestToken_+ pLensStatus_ =+ DeleteLens'+ { lensAlias = pLensAlias_,+ clientRequestToken = pClientRequestToken_,+ lensStatus = pLensStatus_+ }++-- | Undocumented member.+deleteLens_lensAlias :: Lens.Lens' DeleteLens Prelude.Text+deleteLens_lensAlias = Lens.lens (\DeleteLens' {lensAlias} -> lensAlias) (\s@DeleteLens' {} a -> s {lensAlias = a} :: DeleteLens)++-- | Undocumented member.+deleteLens_clientRequestToken :: Lens.Lens' DeleteLens Prelude.Text+deleteLens_clientRequestToken = Lens.lens (\DeleteLens' {clientRequestToken} -> clientRequestToken) (\s@DeleteLens' {} a -> s {clientRequestToken = a} :: DeleteLens)++-- | The status of the lens to be deleted.+deleteLens_lensStatus :: Lens.Lens' DeleteLens LensStatusType+deleteLens_lensStatus = Lens.lens (\DeleteLens' {lensStatus} -> lensStatus) (\s@DeleteLens' {} a -> s {lensStatus = a} :: DeleteLens)++instance Core.AWSRequest DeleteLens where+ type AWSResponse DeleteLens = DeleteLensResponse+ request overrides =+ Request.delete (overrides defaultService)+ response = Response.receiveNull DeleteLensResponse'++instance Prelude.Hashable DeleteLens where+ hashWithSalt _salt DeleteLens' {..} =+ _salt+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` clientRequestToken+ `Prelude.hashWithSalt` lensStatus++instance Prelude.NFData DeleteLens where+ rnf DeleteLens' {..} =+ Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf lensStatus++instance Data.ToHeaders DeleteLens where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteLens where+ toPath DeleteLens' {..} =+ Prelude.mconcat ["/lenses/", Data.toBS lensAlias]++instance Data.ToQuery DeleteLens where+ toQuery DeleteLens' {..} =+ Prelude.mconcat+ [ "ClientRequestToken" Data.=: clientRequestToken,+ "LensStatus" Data.=: lensStatus+ ]++-- | /See:/ 'newDeleteLensResponse' smart constructor.+data DeleteLensResponse = DeleteLensResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteLensResponse' 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.+newDeleteLensResponse ::+ DeleteLensResponse+newDeleteLensResponse = DeleteLensResponse'++instance Prelude.NFData DeleteLensResponse where+ rnf _ = ()
@@ -0,0 +1,175 @@+{-# 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.WellArchitected.DeleteLensShare+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete a lens share.+--+-- After the lens share is deleted, Amazon Web Services accounts, IAM+-- users, organizations, and organizational units (OUs) that you shared the+-- lens with can continue to use it, but they will no longer be able to+-- apply it to new workloads.+--+-- __Disclaimer__+--+-- By sharing your custom lenses with other Amazon Web Services accounts,+-- you acknowledge that Amazon Web Services will make your custom lenses+-- available to those other accounts. Those other accounts may continue to+-- access and use your shared custom lenses even if you delete the custom+-- lenses from your own Amazon Web Services account or terminate your+-- Amazon Web Services account.+module Amazonka.WellArchitected.DeleteLensShare+ ( -- * Creating a Request+ DeleteLensShare (..),+ newDeleteLensShare,++ -- * Request Lenses+ deleteLensShare_shareId,+ deleteLensShare_lensAlias,+ deleteLensShare_clientRequestToken,++ -- * Destructuring the Response+ DeleteLensShareResponse (..),+ newDeleteLensShareResponse,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newDeleteLensShare' smart constructor.+data DeleteLensShare = DeleteLensShare'+ { shareId :: Prelude.Text,+ lensAlias :: Prelude.Text,+ clientRequestToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteLensShare' 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:+--+-- 'shareId', 'deleteLensShare_shareId' - Undocumented member.+--+-- 'lensAlias', 'deleteLensShare_lensAlias' - Undocumented member.+--+-- 'clientRequestToken', 'deleteLensShare_clientRequestToken' - Undocumented member.+newDeleteLensShare ::+ -- | 'shareId'+ Prelude.Text ->+ -- | 'lensAlias'+ Prelude.Text ->+ -- | 'clientRequestToken'+ Prelude.Text ->+ DeleteLensShare+newDeleteLensShare+ pShareId_+ pLensAlias_+ pClientRequestToken_ =+ DeleteLensShare'+ { shareId = pShareId_,+ lensAlias = pLensAlias_,+ clientRequestToken = pClientRequestToken_+ }++-- | Undocumented member.+deleteLensShare_shareId :: Lens.Lens' DeleteLensShare Prelude.Text+deleteLensShare_shareId = Lens.lens (\DeleteLensShare' {shareId} -> shareId) (\s@DeleteLensShare' {} a -> s {shareId = a} :: DeleteLensShare)++-- | Undocumented member.+deleteLensShare_lensAlias :: Lens.Lens' DeleteLensShare Prelude.Text+deleteLensShare_lensAlias = Lens.lens (\DeleteLensShare' {lensAlias} -> lensAlias) (\s@DeleteLensShare' {} a -> s {lensAlias = a} :: DeleteLensShare)++-- | Undocumented member.+deleteLensShare_clientRequestToken :: Lens.Lens' DeleteLensShare Prelude.Text+deleteLensShare_clientRequestToken = Lens.lens (\DeleteLensShare' {clientRequestToken} -> clientRequestToken) (\s@DeleteLensShare' {} a -> s {clientRequestToken = a} :: DeleteLensShare)++instance Core.AWSRequest DeleteLensShare where+ type+ AWSResponse DeleteLensShare =+ DeleteLensShareResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveNull DeleteLensShareResponse'++instance Prelude.Hashable DeleteLensShare where+ hashWithSalt _salt DeleteLensShare' {..} =+ _salt+ `Prelude.hashWithSalt` shareId+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` clientRequestToken++instance Prelude.NFData DeleteLensShare where+ rnf DeleteLensShare' {..} =+ Prelude.rnf shareId+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf clientRequestToken++instance Data.ToHeaders DeleteLensShare where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteLensShare where+ toPath DeleteLensShare' {..} =+ Prelude.mconcat+ [ "/lenses/",+ Data.toBS lensAlias,+ "/shares/",+ Data.toBS shareId+ ]++instance Data.ToQuery DeleteLensShare where+ toQuery DeleteLensShare' {..} =+ Prelude.mconcat+ ["ClientRequestToken" Data.=: clientRequestToken]++-- | /See:/ 'newDeleteLensShareResponse' smart constructor.+data DeleteLensShareResponse = DeleteLensShareResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteLensShareResponse' 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.+newDeleteLensShareResponse ::+ DeleteLensShareResponse+newDeleteLensShareResponse = DeleteLensShareResponse'++instance Prelude.NFData DeleteLensShareResponse where+ rnf _ = ()
+ gen/Amazonka/WellArchitected/DeleteWorkload.hs view
@@ -0,0 +1,143 @@+{-# 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.WellArchitected.DeleteWorkload+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete an existing workload.+module Amazonka.WellArchitected.DeleteWorkload+ ( -- * Creating a Request+ DeleteWorkload (..),+ newDeleteWorkload,++ -- * Request Lenses+ deleteWorkload_workloadId,+ deleteWorkload_clientRequestToken,++ -- * Destructuring the Response+ DeleteWorkloadResponse (..),+ newDeleteWorkloadResponse,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input for workload deletion.+--+-- /See:/ 'newDeleteWorkload' smart constructor.+data DeleteWorkload = DeleteWorkload'+ { workloadId :: Prelude.Text,+ clientRequestToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorkload' 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:+--+-- 'workloadId', 'deleteWorkload_workloadId' - Undocumented member.+--+-- 'clientRequestToken', 'deleteWorkload_clientRequestToken' - Undocumented member.+newDeleteWorkload ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'clientRequestToken'+ Prelude.Text ->+ DeleteWorkload+newDeleteWorkload pWorkloadId_ pClientRequestToken_ =+ DeleteWorkload'+ { workloadId = pWorkloadId_,+ clientRequestToken = pClientRequestToken_+ }++-- | Undocumented member.+deleteWorkload_workloadId :: Lens.Lens' DeleteWorkload Prelude.Text+deleteWorkload_workloadId = Lens.lens (\DeleteWorkload' {workloadId} -> workloadId) (\s@DeleteWorkload' {} a -> s {workloadId = a} :: DeleteWorkload)++-- | Undocumented member.+deleteWorkload_clientRequestToken :: Lens.Lens' DeleteWorkload Prelude.Text+deleteWorkload_clientRequestToken = Lens.lens (\DeleteWorkload' {clientRequestToken} -> clientRequestToken) (\s@DeleteWorkload' {} a -> s {clientRequestToken = a} :: DeleteWorkload)++instance Core.AWSRequest DeleteWorkload where+ type+ AWSResponse DeleteWorkload =+ DeleteWorkloadResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveNull DeleteWorkloadResponse'++instance Prelude.Hashable DeleteWorkload where+ hashWithSalt _salt DeleteWorkload' {..} =+ _salt+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` clientRequestToken++instance Prelude.NFData DeleteWorkload where+ rnf DeleteWorkload' {..} =+ Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf clientRequestToken++instance Data.ToHeaders DeleteWorkload where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteWorkload where+ toPath DeleteWorkload' {..} =+ Prelude.mconcat+ ["/workloads/", Data.toBS workloadId]++instance Data.ToQuery DeleteWorkload where+ toQuery DeleteWorkload' {..} =+ Prelude.mconcat+ ["ClientRequestToken" Data.=: clientRequestToken]++-- | /See:/ 'newDeleteWorkloadResponse' smart constructor.+data DeleteWorkloadResponse = DeleteWorkloadResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorkloadResponse' 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.+newDeleteWorkloadResponse ::+ DeleteWorkloadResponse+newDeleteWorkloadResponse = DeleteWorkloadResponse'++instance Prelude.NFData DeleteWorkloadResponse where+ rnf _ = ()
@@ -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.WellArchitected.DeleteWorkloadShare+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete a workload share.+module Amazonka.WellArchitected.DeleteWorkloadShare+ ( -- * Creating a Request+ DeleteWorkloadShare (..),+ newDeleteWorkloadShare,++ -- * Request Lenses+ deleteWorkloadShare_shareId,+ deleteWorkloadShare_workloadId,+ deleteWorkloadShare_clientRequestToken,++ -- * Destructuring the Response+ DeleteWorkloadShareResponse (..),+ newDeleteWorkloadShareResponse,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input for Delete Workload Share+--+-- /See:/ 'newDeleteWorkloadShare' smart constructor.+data DeleteWorkloadShare = DeleteWorkloadShare'+ { shareId :: Prelude.Text,+ workloadId :: Prelude.Text,+ clientRequestToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorkloadShare' 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:+--+-- 'shareId', 'deleteWorkloadShare_shareId' - Undocumented member.+--+-- 'workloadId', 'deleteWorkloadShare_workloadId' - Undocumented member.+--+-- 'clientRequestToken', 'deleteWorkloadShare_clientRequestToken' - Undocumented member.+newDeleteWorkloadShare ::+ -- | 'shareId'+ Prelude.Text ->+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'clientRequestToken'+ Prelude.Text ->+ DeleteWorkloadShare+newDeleteWorkloadShare+ pShareId_+ pWorkloadId_+ pClientRequestToken_ =+ DeleteWorkloadShare'+ { shareId = pShareId_,+ workloadId = pWorkloadId_,+ clientRequestToken = pClientRequestToken_+ }++-- | Undocumented member.+deleteWorkloadShare_shareId :: Lens.Lens' DeleteWorkloadShare Prelude.Text+deleteWorkloadShare_shareId = Lens.lens (\DeleteWorkloadShare' {shareId} -> shareId) (\s@DeleteWorkloadShare' {} a -> s {shareId = a} :: DeleteWorkloadShare)++-- | Undocumented member.+deleteWorkloadShare_workloadId :: Lens.Lens' DeleteWorkloadShare Prelude.Text+deleteWorkloadShare_workloadId = Lens.lens (\DeleteWorkloadShare' {workloadId} -> workloadId) (\s@DeleteWorkloadShare' {} a -> s {workloadId = a} :: DeleteWorkloadShare)++-- | Undocumented member.+deleteWorkloadShare_clientRequestToken :: Lens.Lens' DeleteWorkloadShare Prelude.Text+deleteWorkloadShare_clientRequestToken = Lens.lens (\DeleteWorkloadShare' {clientRequestToken} -> clientRequestToken) (\s@DeleteWorkloadShare' {} a -> s {clientRequestToken = a} :: DeleteWorkloadShare)++instance Core.AWSRequest DeleteWorkloadShare where+ type+ AWSResponse DeleteWorkloadShare =+ DeleteWorkloadShareResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveNull DeleteWorkloadShareResponse'++instance Prelude.Hashable DeleteWorkloadShare where+ hashWithSalt _salt DeleteWorkloadShare' {..} =+ _salt+ `Prelude.hashWithSalt` shareId+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` clientRequestToken++instance Prelude.NFData DeleteWorkloadShare where+ rnf DeleteWorkloadShare' {..} =+ Prelude.rnf shareId+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf clientRequestToken++instance Data.ToHeaders DeleteWorkloadShare where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteWorkloadShare where+ toPath DeleteWorkloadShare' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/shares/",+ Data.toBS shareId+ ]++instance Data.ToQuery DeleteWorkloadShare where+ toQuery DeleteWorkloadShare' {..} =+ Prelude.mconcat+ ["ClientRequestToken" Data.=: clientRequestToken]++-- | /See:/ 'newDeleteWorkloadShareResponse' smart constructor.+data DeleteWorkloadShareResponse = DeleteWorkloadShareResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorkloadShareResponse' 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.+newDeleteWorkloadShareResponse ::+ DeleteWorkloadShareResponse+newDeleteWorkloadShareResponse =+ DeleteWorkloadShareResponse'++instance Prelude.NFData DeleteWorkloadShareResponse where+ rnf _ = ()
+ gen/Amazonka/WellArchitected/DisassociateLenses.hs view
@@ -0,0 +1,158 @@+{-# 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.WellArchitected.DisassociateLenses+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Disassociate a lens from a workload.+--+-- Up to 10 lenses can be disassociated from a workload in a single API+-- operation.+--+-- The Amazon Web Services Well-Architected Framework lens+-- (@wellarchitected@) cannot be removed from a workload.+module Amazonka.WellArchitected.DisassociateLenses+ ( -- * Creating a Request+ DisassociateLenses (..),+ newDisassociateLenses,++ -- * Request Lenses+ disassociateLenses_workloadId,+ disassociateLenses_lensAliases,++ -- * Destructuring the Response+ DisassociateLensesResponse (..),+ newDisassociateLensesResponse,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to disassociate lens reviews.+--+-- /See:/ 'newDisassociateLenses' smart constructor.+data DisassociateLenses = DisassociateLenses'+ { workloadId :: Prelude.Text,+ lensAliases :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateLenses' 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:+--+-- 'workloadId', 'disassociateLenses_workloadId' - Undocumented member.+--+-- 'lensAliases', 'disassociateLenses_lensAliases' - Undocumented member.+newDisassociateLenses ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensAliases'+ Prelude.NonEmpty Prelude.Text ->+ DisassociateLenses+newDisassociateLenses pWorkloadId_ pLensAliases_ =+ DisassociateLenses'+ { workloadId = pWorkloadId_,+ lensAliases = Lens.coerced Lens.# pLensAliases_+ }++-- | Undocumented member.+disassociateLenses_workloadId :: Lens.Lens' DisassociateLenses Prelude.Text+disassociateLenses_workloadId = Lens.lens (\DisassociateLenses' {workloadId} -> workloadId) (\s@DisassociateLenses' {} a -> s {workloadId = a} :: DisassociateLenses)++-- | Undocumented member.+disassociateLenses_lensAliases :: Lens.Lens' DisassociateLenses (Prelude.NonEmpty Prelude.Text)+disassociateLenses_lensAliases = Lens.lens (\DisassociateLenses' {lensAliases} -> lensAliases) (\s@DisassociateLenses' {} a -> s {lensAliases = a} :: DisassociateLenses) Prelude.. Lens.coerced++instance Core.AWSRequest DisassociateLenses where+ type+ AWSResponse DisassociateLenses =+ DisassociateLensesResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveNull DisassociateLensesResponse'++instance Prelude.Hashable DisassociateLenses where+ hashWithSalt _salt DisassociateLenses' {..} =+ _salt+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensAliases++instance Prelude.NFData DisassociateLenses where+ rnf DisassociateLenses' {..} =+ Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensAliases++instance Data.ToHeaders DisassociateLenses where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DisassociateLenses where+ toJSON DisassociateLenses' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("LensAliases" Data..= lensAliases)]+ )++instance Data.ToPath DisassociateLenses where+ toPath DisassociateLenses' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/disassociateLenses"+ ]++instance Data.ToQuery DisassociateLenses where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDisassociateLensesResponse' smart constructor.+data DisassociateLensesResponse = DisassociateLensesResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateLensesResponse' 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.+newDisassociateLensesResponse ::+ DisassociateLensesResponse+newDisassociateLensesResponse =+ DisassociateLensesResponse'++instance Prelude.NFData DisassociateLensesResponse where+ rnf _ = ()
+ gen/Amazonka/WellArchitected/ExportLens.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.WellArchitected.ExportLens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Export an existing lens.+--+-- Lenses are defined in JSON. For more information, see+-- <https://docs.aws.amazon.com/wellarchitected/latest/userguide/lenses-format-specification.html JSON format specification>+-- in the /Well-Architected Tool User Guide/. Only the owner of a lens can+-- export it.+--+-- __Disclaimer__+--+-- Do not include or gather personal identifiable information (PII) of end+-- users or other identifiable individuals in or via your custom lenses. If+-- your custom lens or those shared with you and used in your account do+-- include or collect PII you are responsible for: ensuring that the+-- included PII is processed in accordance with applicable law, providing+-- adequate privacy notices, and obtaining necessary consents for+-- processing such data.+module Amazonka.WellArchitected.ExportLens+ ( -- * Creating a Request+ ExportLens (..),+ newExportLens,++ -- * Request Lenses+ exportLens_lensVersion,+ exportLens_lensAlias,++ -- * Destructuring the Response+ ExportLensResponse (..),+ newExportLensResponse,++ -- * Response Lenses+ exportLensResponse_lensJSON,+ exportLensResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newExportLens' smart constructor.+data ExportLens = ExportLens'+ { -- | The lens version to be exported.+ lensVersion :: Prelude.Maybe Prelude.Text,+ lensAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportLens' 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:+--+-- 'lensVersion', 'exportLens_lensVersion' - The lens version to be exported.+--+-- 'lensAlias', 'exportLens_lensAlias' - Undocumented member.+newExportLens ::+ -- | 'lensAlias'+ Prelude.Text ->+ ExportLens+newExportLens pLensAlias_ =+ ExportLens'+ { lensVersion = Prelude.Nothing,+ lensAlias = pLensAlias_+ }++-- | The lens version to be exported.+exportLens_lensVersion :: Lens.Lens' ExportLens (Prelude.Maybe Prelude.Text)+exportLens_lensVersion = Lens.lens (\ExportLens' {lensVersion} -> lensVersion) (\s@ExportLens' {} a -> s {lensVersion = a} :: ExportLens)++-- | Undocumented member.+exportLens_lensAlias :: Lens.Lens' ExportLens Prelude.Text+exportLens_lensAlias = Lens.lens (\ExportLens' {lensAlias} -> lensAlias) (\s@ExportLens' {} a -> s {lensAlias = a} :: ExportLens)++instance Core.AWSRequest ExportLens where+ type AWSResponse ExportLens = ExportLensResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ExportLensResponse'+ Prelude.<$> (x Data..?> "LensJSON")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ExportLens where+ hashWithSalt _salt ExportLens' {..} =+ _salt+ `Prelude.hashWithSalt` lensVersion+ `Prelude.hashWithSalt` lensAlias++instance Prelude.NFData ExportLens where+ rnf ExportLens' {..} =+ Prelude.rnf lensVersion+ `Prelude.seq` Prelude.rnf lensAlias++instance Data.ToHeaders ExportLens where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ExportLens where+ toPath ExportLens' {..} =+ Prelude.mconcat+ ["/lenses/", Data.toBS lensAlias, "/export"]++instance Data.ToQuery ExportLens where+ toQuery ExportLens' {..} =+ Prelude.mconcat ["LensVersion" Data.=: lensVersion]++-- | /See:/ 'newExportLensResponse' smart constructor.+data ExportLensResponse = ExportLensResponse'+ { -- | The JSON for the lens.+ lensJSON :: 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 'ExportLensResponse' 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:+--+-- 'lensJSON', 'exportLensResponse_lensJSON' - The JSON for the lens.+--+-- 'httpStatus', 'exportLensResponse_httpStatus' - The response's http status code.+newExportLensResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ExportLensResponse+newExportLensResponse pHttpStatus_ =+ ExportLensResponse'+ { lensJSON = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The JSON for the lens.+exportLensResponse_lensJSON :: Lens.Lens' ExportLensResponse (Prelude.Maybe Prelude.Text)+exportLensResponse_lensJSON = Lens.lens (\ExportLensResponse' {lensJSON} -> lensJSON) (\s@ExportLensResponse' {} a -> s {lensJSON = a} :: ExportLensResponse)++-- | The response's http status code.+exportLensResponse_httpStatus :: Lens.Lens' ExportLensResponse Prelude.Int+exportLensResponse_httpStatus = Lens.lens (\ExportLensResponse' {httpStatus} -> httpStatus) (\s@ExportLensResponse' {} a -> s {httpStatus = a} :: ExportLensResponse)++instance Prelude.NFData ExportLensResponse where+ rnf ExportLensResponse' {..} =+ Prelude.rnf lensJSON+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/GetAnswer.hs view
@@ -0,0 +1,252 @@+{-# 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.WellArchitected.GetAnswer+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get the answer to a specific question in a workload review.+module Amazonka.WellArchitected.GetAnswer+ ( -- * Creating a Request+ GetAnswer (..),+ newGetAnswer,++ -- * Request Lenses+ getAnswer_milestoneNumber,+ getAnswer_workloadId,+ getAnswer_lensAlias,+ getAnswer_questionId,++ -- * Destructuring the Response+ GetAnswerResponse (..),+ newGetAnswerResponse,++ -- * Response Lenses+ getAnswerResponse_answer,+ getAnswerResponse_lensAlias,+ getAnswerResponse_lensArn,+ getAnswerResponse_milestoneNumber,+ getAnswerResponse_workloadId,+ getAnswerResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to get answer.+--+-- /See:/ 'newGetAnswer' smart constructor.+data GetAnswer = GetAnswer'+ { milestoneNumber :: Prelude.Maybe Prelude.Natural,+ workloadId :: Prelude.Text,+ lensAlias :: Prelude.Text,+ questionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAnswer' 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:+--+-- 'milestoneNumber', 'getAnswer_milestoneNumber' - Undocumented member.+--+-- 'workloadId', 'getAnswer_workloadId' - Undocumented member.+--+-- 'lensAlias', 'getAnswer_lensAlias' - Undocumented member.+--+-- 'questionId', 'getAnswer_questionId' - Undocumented member.+newGetAnswer ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensAlias'+ Prelude.Text ->+ -- | 'questionId'+ Prelude.Text ->+ GetAnswer+newGetAnswer pWorkloadId_ pLensAlias_ pQuestionId_ =+ GetAnswer'+ { milestoneNumber = Prelude.Nothing,+ workloadId = pWorkloadId_,+ lensAlias = pLensAlias_,+ questionId = pQuestionId_+ }++-- | Undocumented member.+getAnswer_milestoneNumber :: Lens.Lens' GetAnswer (Prelude.Maybe Prelude.Natural)+getAnswer_milestoneNumber = Lens.lens (\GetAnswer' {milestoneNumber} -> milestoneNumber) (\s@GetAnswer' {} a -> s {milestoneNumber = a} :: GetAnswer)++-- | Undocumented member.+getAnswer_workloadId :: Lens.Lens' GetAnswer Prelude.Text+getAnswer_workloadId = Lens.lens (\GetAnswer' {workloadId} -> workloadId) (\s@GetAnswer' {} a -> s {workloadId = a} :: GetAnswer)++-- | Undocumented member.+getAnswer_lensAlias :: Lens.Lens' GetAnswer Prelude.Text+getAnswer_lensAlias = Lens.lens (\GetAnswer' {lensAlias} -> lensAlias) (\s@GetAnswer' {} a -> s {lensAlias = a} :: GetAnswer)++-- | Undocumented member.+getAnswer_questionId :: Lens.Lens' GetAnswer Prelude.Text+getAnswer_questionId = Lens.lens (\GetAnswer' {questionId} -> questionId) (\s@GetAnswer' {} a -> s {questionId = a} :: GetAnswer)++instance Core.AWSRequest GetAnswer where+ type AWSResponse GetAnswer = GetAnswerResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetAnswerResponse'+ Prelude.<$> (x Data..?> "Answer")+ Prelude.<*> (x Data..?> "LensAlias")+ Prelude.<*> (x Data..?> "LensArn")+ Prelude.<*> (x Data..?> "MilestoneNumber")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetAnswer where+ hashWithSalt _salt GetAnswer' {..} =+ _salt+ `Prelude.hashWithSalt` milestoneNumber+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` questionId++instance Prelude.NFData GetAnswer where+ rnf GetAnswer' {..} =+ Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf questionId++instance Data.ToHeaders GetAnswer where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetAnswer where+ toPath GetAnswer' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/lensReviews/",+ Data.toBS lensAlias,+ "/answers/",+ Data.toBS questionId+ ]++instance Data.ToQuery GetAnswer where+ toQuery GetAnswer' {..} =+ Prelude.mconcat+ ["MilestoneNumber" Data.=: milestoneNumber]++-- | Output of a get answer call.+--+-- /See:/ 'newGetAnswerResponse' smart constructor.+data GetAnswerResponse = GetAnswerResponse'+ { answer :: Prelude.Maybe Answer,+ lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ workloadId :: 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 'GetAnswerResponse' 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:+--+-- 'answer', 'getAnswerResponse_answer' - Undocumented member.+--+-- 'lensAlias', 'getAnswerResponse_lensAlias' - Undocumented member.+--+-- 'lensArn', 'getAnswerResponse_lensArn' - The ARN for the lens.+--+-- 'milestoneNumber', 'getAnswerResponse_milestoneNumber' - Undocumented member.+--+-- 'workloadId', 'getAnswerResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'getAnswerResponse_httpStatus' - The response's http status code.+newGetAnswerResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetAnswerResponse+newGetAnswerResponse pHttpStatus_ =+ GetAnswerResponse'+ { answer = Prelude.Nothing,+ lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+getAnswerResponse_answer :: Lens.Lens' GetAnswerResponse (Prelude.Maybe Answer)+getAnswerResponse_answer = Lens.lens (\GetAnswerResponse' {answer} -> answer) (\s@GetAnswerResponse' {} a -> s {answer = a} :: GetAnswerResponse)++-- | Undocumented member.+getAnswerResponse_lensAlias :: Lens.Lens' GetAnswerResponse (Prelude.Maybe Prelude.Text)+getAnswerResponse_lensAlias = Lens.lens (\GetAnswerResponse' {lensAlias} -> lensAlias) (\s@GetAnswerResponse' {} a -> s {lensAlias = a} :: GetAnswerResponse)++-- | The ARN for the lens.+getAnswerResponse_lensArn :: Lens.Lens' GetAnswerResponse (Prelude.Maybe Prelude.Text)+getAnswerResponse_lensArn = Lens.lens (\GetAnswerResponse' {lensArn} -> lensArn) (\s@GetAnswerResponse' {} a -> s {lensArn = a} :: GetAnswerResponse)++-- | Undocumented member.+getAnswerResponse_milestoneNumber :: Lens.Lens' GetAnswerResponse (Prelude.Maybe Prelude.Natural)+getAnswerResponse_milestoneNumber = Lens.lens (\GetAnswerResponse' {milestoneNumber} -> milestoneNumber) (\s@GetAnswerResponse' {} a -> s {milestoneNumber = a} :: GetAnswerResponse)++-- | Undocumented member.+getAnswerResponse_workloadId :: Lens.Lens' GetAnswerResponse (Prelude.Maybe Prelude.Text)+getAnswerResponse_workloadId = Lens.lens (\GetAnswerResponse' {workloadId} -> workloadId) (\s@GetAnswerResponse' {} a -> s {workloadId = a} :: GetAnswerResponse)++-- | The response's http status code.+getAnswerResponse_httpStatus :: Lens.Lens' GetAnswerResponse Prelude.Int+getAnswerResponse_httpStatus = Lens.lens (\GetAnswerResponse' {httpStatus} -> httpStatus) (\s@GetAnswerResponse' {} a -> s {httpStatus = a} :: GetAnswerResponse)++instance Prelude.NFData GetAnswerResponse where+ rnf GetAnswerResponse' {..} =+ Prelude.rnf answer+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/GetLens.hs view
@@ -0,0 +1,171 @@+{-# 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.WellArchitected.GetLens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get an existing lens.+module Amazonka.WellArchitected.GetLens+ ( -- * Creating a Request+ GetLens (..),+ newGetLens,++ -- * Request Lenses+ getLens_lensVersion,+ getLens_lensAlias,++ -- * Destructuring the Response+ GetLensResponse (..),+ newGetLensResponse,++ -- * Response Lenses+ getLensResponse_lens,+ getLensResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newGetLens' smart constructor.+data GetLens = GetLens'+ { -- | The lens version to be retrieved.+ lensVersion :: Prelude.Maybe Prelude.Text,+ lensAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetLens' 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:+--+-- 'lensVersion', 'getLens_lensVersion' - The lens version to be retrieved.+--+-- 'lensAlias', 'getLens_lensAlias' - Undocumented member.+newGetLens ::+ -- | 'lensAlias'+ Prelude.Text ->+ GetLens+newGetLens pLensAlias_ =+ GetLens'+ { lensVersion = Prelude.Nothing,+ lensAlias = pLensAlias_+ }++-- | The lens version to be retrieved.+getLens_lensVersion :: Lens.Lens' GetLens (Prelude.Maybe Prelude.Text)+getLens_lensVersion = Lens.lens (\GetLens' {lensVersion} -> lensVersion) (\s@GetLens' {} a -> s {lensVersion = a} :: GetLens)++-- | Undocumented member.+getLens_lensAlias :: Lens.Lens' GetLens Prelude.Text+getLens_lensAlias = Lens.lens (\GetLens' {lensAlias} -> lensAlias) (\s@GetLens' {} a -> s {lensAlias = a} :: GetLens)++instance Core.AWSRequest GetLens where+ type AWSResponse GetLens = GetLensResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetLensResponse'+ Prelude.<$> (x Data..?> "Lens")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetLens where+ hashWithSalt _salt GetLens' {..} =+ _salt+ `Prelude.hashWithSalt` lensVersion+ `Prelude.hashWithSalt` lensAlias++instance Prelude.NFData GetLens where+ rnf GetLens' {..} =+ Prelude.rnf lensVersion+ `Prelude.seq` Prelude.rnf lensAlias++instance Data.ToHeaders GetLens where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetLens where+ toPath GetLens' {..} =+ Prelude.mconcat ["/lenses/", Data.toBS lensAlias]++instance Data.ToQuery GetLens where+ toQuery GetLens' {..} =+ Prelude.mconcat ["LensVersion" Data.=: lensVersion]++-- | /See:/ 'newGetLensResponse' smart constructor.+data GetLensResponse = GetLensResponse'+ { -- | A lens return object.+ lens :: Prelude.Maybe Lens,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetLensResponse' 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:+--+-- 'lens', 'getLensResponse_lens' - A lens return object.+--+-- 'httpStatus', 'getLensResponse_httpStatus' - The response's http status code.+newGetLensResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetLensResponse+newGetLensResponse pHttpStatus_ =+ GetLensResponse'+ { lens = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A lens return object.+getLensResponse_lens :: Lens.Lens' GetLensResponse (Prelude.Maybe Lens)+getLensResponse_lens = Lens.lens (\GetLensResponse' {lens} -> lens) (\s@GetLensResponse' {} a -> s {lens = a} :: GetLensResponse)++-- | The response's http status code.+getLensResponse_httpStatus :: Lens.Lens' GetLensResponse Prelude.Int+getLensResponse_httpStatus = Lens.lens (\GetLensResponse' {httpStatus} -> httpStatus) (\s@GetLensResponse' {} a -> s {httpStatus = a} :: GetLensResponse)++instance Prelude.NFData GetLensResponse where+ rnf GetLensResponse' {..} =+ Prelude.rnf lens+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/GetLensReview.hs view
@@ -0,0 +1,217 @@+{-# 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.WellArchitected.GetLensReview+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get lens review.+module Amazonka.WellArchitected.GetLensReview+ ( -- * Creating a Request+ GetLensReview (..),+ newGetLensReview,++ -- * Request Lenses+ getLensReview_milestoneNumber,+ getLensReview_workloadId,+ getLensReview_lensAlias,++ -- * Destructuring the Response+ GetLensReviewResponse (..),+ newGetLensReviewResponse,++ -- * Response Lenses+ getLensReviewResponse_lensReview,+ getLensReviewResponse_milestoneNumber,+ getLensReviewResponse_workloadId,+ getLensReviewResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to get lens review.+--+-- /See:/ 'newGetLensReview' smart constructor.+data GetLensReview = GetLensReview'+ { milestoneNumber :: Prelude.Maybe Prelude.Natural,+ workloadId :: Prelude.Text,+ lensAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetLensReview' 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:+--+-- 'milestoneNumber', 'getLensReview_milestoneNumber' - Undocumented member.+--+-- 'workloadId', 'getLensReview_workloadId' - Undocumented member.+--+-- 'lensAlias', 'getLensReview_lensAlias' - Undocumented member.+newGetLensReview ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensAlias'+ Prelude.Text ->+ GetLensReview+newGetLensReview pWorkloadId_ pLensAlias_ =+ GetLensReview'+ { milestoneNumber = Prelude.Nothing,+ workloadId = pWorkloadId_,+ lensAlias = pLensAlias_+ }++-- | Undocumented member.+getLensReview_milestoneNumber :: Lens.Lens' GetLensReview (Prelude.Maybe Prelude.Natural)+getLensReview_milestoneNumber = Lens.lens (\GetLensReview' {milestoneNumber} -> milestoneNumber) (\s@GetLensReview' {} a -> s {milestoneNumber = a} :: GetLensReview)++-- | Undocumented member.+getLensReview_workloadId :: Lens.Lens' GetLensReview Prelude.Text+getLensReview_workloadId = Lens.lens (\GetLensReview' {workloadId} -> workloadId) (\s@GetLensReview' {} a -> s {workloadId = a} :: GetLensReview)++-- | Undocumented member.+getLensReview_lensAlias :: Lens.Lens' GetLensReview Prelude.Text+getLensReview_lensAlias = Lens.lens (\GetLensReview' {lensAlias} -> lensAlias) (\s@GetLensReview' {} a -> s {lensAlias = a} :: GetLensReview)++instance Core.AWSRequest GetLensReview where+ type+ AWSResponse GetLensReview =+ GetLensReviewResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetLensReviewResponse'+ Prelude.<$> (x Data..?> "LensReview")+ Prelude.<*> (x Data..?> "MilestoneNumber")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetLensReview where+ hashWithSalt _salt GetLensReview' {..} =+ _salt+ `Prelude.hashWithSalt` milestoneNumber+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensAlias++instance Prelude.NFData GetLensReview where+ rnf GetLensReview' {..} =+ Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensAlias++instance Data.ToHeaders GetLensReview where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetLensReview where+ toPath GetLensReview' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/lensReviews/",+ Data.toBS lensAlias+ ]++instance Data.ToQuery GetLensReview where+ toQuery GetLensReview' {..} =+ Prelude.mconcat+ ["MilestoneNumber" Data.=: milestoneNumber]++-- | Output of a get lens review call.+--+-- /See:/ 'newGetLensReviewResponse' smart constructor.+data GetLensReviewResponse = GetLensReviewResponse'+ { lensReview :: Prelude.Maybe LensReview,+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ workloadId :: 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 'GetLensReviewResponse' 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:+--+-- 'lensReview', 'getLensReviewResponse_lensReview' - Undocumented member.+--+-- 'milestoneNumber', 'getLensReviewResponse_milestoneNumber' - Undocumented member.+--+-- 'workloadId', 'getLensReviewResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'getLensReviewResponse_httpStatus' - The response's http status code.+newGetLensReviewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetLensReviewResponse+newGetLensReviewResponse pHttpStatus_ =+ GetLensReviewResponse'+ { lensReview =+ Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+getLensReviewResponse_lensReview :: Lens.Lens' GetLensReviewResponse (Prelude.Maybe LensReview)+getLensReviewResponse_lensReview = Lens.lens (\GetLensReviewResponse' {lensReview} -> lensReview) (\s@GetLensReviewResponse' {} a -> s {lensReview = a} :: GetLensReviewResponse)++-- | Undocumented member.+getLensReviewResponse_milestoneNumber :: Lens.Lens' GetLensReviewResponse (Prelude.Maybe Prelude.Natural)+getLensReviewResponse_milestoneNumber = Lens.lens (\GetLensReviewResponse' {milestoneNumber} -> milestoneNumber) (\s@GetLensReviewResponse' {} a -> s {milestoneNumber = a} :: GetLensReviewResponse)++-- | Undocumented member.+getLensReviewResponse_workloadId :: Lens.Lens' GetLensReviewResponse (Prelude.Maybe Prelude.Text)+getLensReviewResponse_workloadId = Lens.lens (\GetLensReviewResponse' {workloadId} -> workloadId) (\s@GetLensReviewResponse' {} a -> s {workloadId = a} :: GetLensReviewResponse)++-- | The response's http status code.+getLensReviewResponse_httpStatus :: Lens.Lens' GetLensReviewResponse Prelude.Int+getLensReviewResponse_httpStatus = Lens.lens (\GetLensReviewResponse' {httpStatus} -> httpStatus) (\s@GetLensReviewResponse' {} a -> s {httpStatus = a} :: GetLensReviewResponse)++instance Prelude.NFData GetLensReviewResponse where+ rnf GetLensReviewResponse' {..} =+ Prelude.rnf lensReview+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/GetLensReviewReport.hs view
@@ -0,0 +1,219 @@+{-# 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.WellArchitected.GetLensReviewReport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get lens review report.+module Amazonka.WellArchitected.GetLensReviewReport+ ( -- * Creating a Request+ GetLensReviewReport (..),+ newGetLensReviewReport,++ -- * Request Lenses+ getLensReviewReport_milestoneNumber,+ getLensReviewReport_workloadId,+ getLensReviewReport_lensAlias,++ -- * Destructuring the Response+ GetLensReviewReportResponse (..),+ newGetLensReviewReportResponse,++ -- * Response Lenses+ getLensReviewReportResponse_lensReviewReport,+ getLensReviewReportResponse_milestoneNumber,+ getLensReviewReportResponse_workloadId,+ getLensReviewReportResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to get lens review report.+--+-- /See:/ 'newGetLensReviewReport' smart constructor.+data GetLensReviewReport = GetLensReviewReport'+ { milestoneNumber :: Prelude.Maybe Prelude.Natural,+ workloadId :: Prelude.Text,+ lensAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetLensReviewReport' 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:+--+-- 'milestoneNumber', 'getLensReviewReport_milestoneNumber' - Undocumented member.+--+-- 'workloadId', 'getLensReviewReport_workloadId' - Undocumented member.+--+-- 'lensAlias', 'getLensReviewReport_lensAlias' - Undocumented member.+newGetLensReviewReport ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensAlias'+ Prelude.Text ->+ GetLensReviewReport+newGetLensReviewReport pWorkloadId_ pLensAlias_ =+ GetLensReviewReport'+ { milestoneNumber =+ Prelude.Nothing,+ workloadId = pWorkloadId_,+ lensAlias = pLensAlias_+ }++-- | Undocumented member.+getLensReviewReport_milestoneNumber :: Lens.Lens' GetLensReviewReport (Prelude.Maybe Prelude.Natural)+getLensReviewReport_milestoneNumber = Lens.lens (\GetLensReviewReport' {milestoneNumber} -> milestoneNumber) (\s@GetLensReviewReport' {} a -> s {milestoneNumber = a} :: GetLensReviewReport)++-- | Undocumented member.+getLensReviewReport_workloadId :: Lens.Lens' GetLensReviewReport Prelude.Text+getLensReviewReport_workloadId = Lens.lens (\GetLensReviewReport' {workloadId} -> workloadId) (\s@GetLensReviewReport' {} a -> s {workloadId = a} :: GetLensReviewReport)++-- | Undocumented member.+getLensReviewReport_lensAlias :: Lens.Lens' GetLensReviewReport Prelude.Text+getLensReviewReport_lensAlias = Lens.lens (\GetLensReviewReport' {lensAlias} -> lensAlias) (\s@GetLensReviewReport' {} a -> s {lensAlias = a} :: GetLensReviewReport)++instance Core.AWSRequest GetLensReviewReport where+ type+ AWSResponse GetLensReviewReport =+ GetLensReviewReportResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetLensReviewReportResponse'+ Prelude.<$> (x Data..?> "LensReviewReport")+ Prelude.<*> (x Data..?> "MilestoneNumber")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetLensReviewReport where+ hashWithSalt _salt GetLensReviewReport' {..} =+ _salt+ `Prelude.hashWithSalt` milestoneNumber+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensAlias++instance Prelude.NFData GetLensReviewReport where+ rnf GetLensReviewReport' {..} =+ Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensAlias++instance Data.ToHeaders GetLensReviewReport where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetLensReviewReport where+ toPath GetLensReviewReport' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/lensReviews/",+ Data.toBS lensAlias,+ "/report"+ ]++instance Data.ToQuery GetLensReviewReport where+ toQuery GetLensReviewReport' {..} =+ Prelude.mconcat+ ["MilestoneNumber" Data.=: milestoneNumber]++-- | Output of a get lens review report call.+--+-- /See:/ 'newGetLensReviewReportResponse' smart constructor.+data GetLensReviewReportResponse = GetLensReviewReportResponse'+ { lensReviewReport :: Prelude.Maybe LensReviewReport,+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ workloadId :: 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 'GetLensReviewReportResponse' 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:+--+-- 'lensReviewReport', 'getLensReviewReportResponse_lensReviewReport' - Undocumented member.+--+-- 'milestoneNumber', 'getLensReviewReportResponse_milestoneNumber' - Undocumented member.+--+-- 'workloadId', 'getLensReviewReportResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'getLensReviewReportResponse_httpStatus' - The response's http status code.+newGetLensReviewReportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetLensReviewReportResponse+newGetLensReviewReportResponse pHttpStatus_ =+ GetLensReviewReportResponse'+ { lensReviewReport =+ Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+getLensReviewReportResponse_lensReviewReport :: Lens.Lens' GetLensReviewReportResponse (Prelude.Maybe LensReviewReport)+getLensReviewReportResponse_lensReviewReport = Lens.lens (\GetLensReviewReportResponse' {lensReviewReport} -> lensReviewReport) (\s@GetLensReviewReportResponse' {} a -> s {lensReviewReport = a} :: GetLensReviewReportResponse)++-- | Undocumented member.+getLensReviewReportResponse_milestoneNumber :: Lens.Lens' GetLensReviewReportResponse (Prelude.Maybe Prelude.Natural)+getLensReviewReportResponse_milestoneNumber = Lens.lens (\GetLensReviewReportResponse' {milestoneNumber} -> milestoneNumber) (\s@GetLensReviewReportResponse' {} a -> s {milestoneNumber = a} :: GetLensReviewReportResponse)++-- | Undocumented member.+getLensReviewReportResponse_workloadId :: Lens.Lens' GetLensReviewReportResponse (Prelude.Maybe Prelude.Text)+getLensReviewReportResponse_workloadId = Lens.lens (\GetLensReviewReportResponse' {workloadId} -> workloadId) (\s@GetLensReviewReportResponse' {} a -> s {workloadId = a} :: GetLensReviewReportResponse)++-- | The response's http status code.+getLensReviewReportResponse_httpStatus :: Lens.Lens' GetLensReviewReportResponse Prelude.Int+getLensReviewReportResponse_httpStatus = Lens.lens (\GetLensReviewReportResponse' {httpStatus} -> httpStatus) (\s@GetLensReviewReportResponse' {} a -> s {httpStatus = a} :: GetLensReviewReportResponse)++instance Prelude.NFData GetLensReviewReportResponse where+ rnf GetLensReviewReportResponse' {..} =+ Prelude.rnf lensReviewReport+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/GetLensVersionDifference.hs view
@@ -0,0 +1,255 @@+{-# 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.WellArchitected.GetLensVersionDifference+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get lens version differences.+module Amazonka.WellArchitected.GetLensVersionDifference+ ( -- * Creating a Request+ GetLensVersionDifference (..),+ newGetLensVersionDifference,++ -- * Request Lenses+ getLensVersionDifference_baseLensVersion,+ getLensVersionDifference_targetLensVersion,+ getLensVersionDifference_lensAlias,++ -- * Destructuring the Response+ GetLensVersionDifferenceResponse (..),+ newGetLensVersionDifferenceResponse,++ -- * Response Lenses+ getLensVersionDifferenceResponse_baseLensVersion,+ getLensVersionDifferenceResponse_latestLensVersion,+ getLensVersionDifferenceResponse_lensAlias,+ getLensVersionDifferenceResponse_lensArn,+ getLensVersionDifferenceResponse_targetLensVersion,+ getLensVersionDifferenceResponse_versionDifferences,+ getLensVersionDifferenceResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newGetLensVersionDifference' smart constructor.+data GetLensVersionDifference = GetLensVersionDifference'+ { -- | The base version of the lens.+ baseLensVersion :: Prelude.Maybe Prelude.Text,+ -- | The lens version to target a difference for.+ targetLensVersion :: Prelude.Maybe Prelude.Text,+ lensAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetLensVersionDifference' 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:+--+-- 'baseLensVersion', 'getLensVersionDifference_baseLensVersion' - The base version of the lens.+--+-- 'targetLensVersion', 'getLensVersionDifference_targetLensVersion' - The lens version to target a difference for.+--+-- 'lensAlias', 'getLensVersionDifference_lensAlias' - Undocumented member.+newGetLensVersionDifference ::+ -- | 'lensAlias'+ Prelude.Text ->+ GetLensVersionDifference+newGetLensVersionDifference pLensAlias_ =+ GetLensVersionDifference'+ { baseLensVersion =+ Prelude.Nothing,+ targetLensVersion = Prelude.Nothing,+ lensAlias = pLensAlias_+ }++-- | The base version of the lens.+getLensVersionDifference_baseLensVersion :: Lens.Lens' GetLensVersionDifference (Prelude.Maybe Prelude.Text)+getLensVersionDifference_baseLensVersion = Lens.lens (\GetLensVersionDifference' {baseLensVersion} -> baseLensVersion) (\s@GetLensVersionDifference' {} a -> s {baseLensVersion = a} :: GetLensVersionDifference)++-- | The lens version to target a difference for.+getLensVersionDifference_targetLensVersion :: Lens.Lens' GetLensVersionDifference (Prelude.Maybe Prelude.Text)+getLensVersionDifference_targetLensVersion = Lens.lens (\GetLensVersionDifference' {targetLensVersion} -> targetLensVersion) (\s@GetLensVersionDifference' {} a -> s {targetLensVersion = a} :: GetLensVersionDifference)++-- | Undocumented member.+getLensVersionDifference_lensAlias :: Lens.Lens' GetLensVersionDifference Prelude.Text+getLensVersionDifference_lensAlias = Lens.lens (\GetLensVersionDifference' {lensAlias} -> lensAlias) (\s@GetLensVersionDifference' {} a -> s {lensAlias = a} :: GetLensVersionDifference)++instance Core.AWSRequest GetLensVersionDifference where+ type+ AWSResponse GetLensVersionDifference =+ GetLensVersionDifferenceResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetLensVersionDifferenceResponse'+ Prelude.<$> (x Data..?> "BaseLensVersion")+ Prelude.<*> (x Data..?> "LatestLensVersion")+ Prelude.<*> (x Data..?> "LensAlias")+ Prelude.<*> (x Data..?> "LensArn")+ Prelude.<*> (x Data..?> "TargetLensVersion")+ Prelude.<*> (x Data..?> "VersionDifferences")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetLensVersionDifference where+ hashWithSalt _salt GetLensVersionDifference' {..} =+ _salt+ `Prelude.hashWithSalt` baseLensVersion+ `Prelude.hashWithSalt` targetLensVersion+ `Prelude.hashWithSalt` lensAlias++instance Prelude.NFData GetLensVersionDifference where+ rnf GetLensVersionDifference' {..} =+ Prelude.rnf baseLensVersion+ `Prelude.seq` Prelude.rnf targetLensVersion+ `Prelude.seq` Prelude.rnf lensAlias++instance Data.ToHeaders GetLensVersionDifference where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetLensVersionDifference where+ toPath GetLensVersionDifference' {..} =+ Prelude.mconcat+ [ "/lenses/",+ Data.toBS lensAlias,+ "/versionDifference"+ ]++instance Data.ToQuery GetLensVersionDifference where+ toQuery GetLensVersionDifference' {..} =+ Prelude.mconcat+ [ "BaseLensVersion" Data.=: baseLensVersion,+ "TargetLensVersion" Data.=: targetLensVersion+ ]++-- | /See:/ 'newGetLensVersionDifferenceResponse' smart constructor.+data GetLensVersionDifferenceResponse = GetLensVersionDifferenceResponse'+ { -- | The base version of the lens.+ baseLensVersion :: Prelude.Maybe Prelude.Text,+ -- | The latest version of the lens.+ latestLensVersion :: Prelude.Maybe Prelude.Text,+ lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ -- | The target lens version for the lens.+ targetLensVersion :: Prelude.Maybe Prelude.Text,+ versionDifferences :: Prelude.Maybe VersionDifferences,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetLensVersionDifferenceResponse' 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:+--+-- 'baseLensVersion', 'getLensVersionDifferenceResponse_baseLensVersion' - The base version of the lens.+--+-- 'latestLensVersion', 'getLensVersionDifferenceResponse_latestLensVersion' - The latest version of the lens.+--+-- 'lensAlias', 'getLensVersionDifferenceResponse_lensAlias' - Undocumented member.+--+-- 'lensArn', 'getLensVersionDifferenceResponse_lensArn' - The ARN for the lens.+--+-- 'targetLensVersion', 'getLensVersionDifferenceResponse_targetLensVersion' - The target lens version for the lens.+--+-- 'versionDifferences', 'getLensVersionDifferenceResponse_versionDifferences' - Undocumented member.+--+-- 'httpStatus', 'getLensVersionDifferenceResponse_httpStatus' - The response's http status code.+newGetLensVersionDifferenceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetLensVersionDifferenceResponse+newGetLensVersionDifferenceResponse pHttpStatus_ =+ GetLensVersionDifferenceResponse'+ { baseLensVersion =+ Prelude.Nothing,+ latestLensVersion = Prelude.Nothing,+ lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ targetLensVersion = Prelude.Nothing,+ versionDifferences = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The base version of the lens.+getLensVersionDifferenceResponse_baseLensVersion :: Lens.Lens' GetLensVersionDifferenceResponse (Prelude.Maybe Prelude.Text)+getLensVersionDifferenceResponse_baseLensVersion = Lens.lens (\GetLensVersionDifferenceResponse' {baseLensVersion} -> baseLensVersion) (\s@GetLensVersionDifferenceResponse' {} a -> s {baseLensVersion = a} :: GetLensVersionDifferenceResponse)++-- | The latest version of the lens.+getLensVersionDifferenceResponse_latestLensVersion :: Lens.Lens' GetLensVersionDifferenceResponse (Prelude.Maybe Prelude.Text)+getLensVersionDifferenceResponse_latestLensVersion = Lens.lens (\GetLensVersionDifferenceResponse' {latestLensVersion} -> latestLensVersion) (\s@GetLensVersionDifferenceResponse' {} a -> s {latestLensVersion = a} :: GetLensVersionDifferenceResponse)++-- | Undocumented member.+getLensVersionDifferenceResponse_lensAlias :: Lens.Lens' GetLensVersionDifferenceResponse (Prelude.Maybe Prelude.Text)+getLensVersionDifferenceResponse_lensAlias = Lens.lens (\GetLensVersionDifferenceResponse' {lensAlias} -> lensAlias) (\s@GetLensVersionDifferenceResponse' {} a -> s {lensAlias = a} :: GetLensVersionDifferenceResponse)++-- | The ARN for the lens.+getLensVersionDifferenceResponse_lensArn :: Lens.Lens' GetLensVersionDifferenceResponse (Prelude.Maybe Prelude.Text)+getLensVersionDifferenceResponse_lensArn = Lens.lens (\GetLensVersionDifferenceResponse' {lensArn} -> lensArn) (\s@GetLensVersionDifferenceResponse' {} a -> s {lensArn = a} :: GetLensVersionDifferenceResponse)++-- | The target lens version for the lens.+getLensVersionDifferenceResponse_targetLensVersion :: Lens.Lens' GetLensVersionDifferenceResponse (Prelude.Maybe Prelude.Text)+getLensVersionDifferenceResponse_targetLensVersion = Lens.lens (\GetLensVersionDifferenceResponse' {targetLensVersion} -> targetLensVersion) (\s@GetLensVersionDifferenceResponse' {} a -> s {targetLensVersion = a} :: GetLensVersionDifferenceResponse)++-- | Undocumented member.+getLensVersionDifferenceResponse_versionDifferences :: Lens.Lens' GetLensVersionDifferenceResponse (Prelude.Maybe VersionDifferences)+getLensVersionDifferenceResponse_versionDifferences = Lens.lens (\GetLensVersionDifferenceResponse' {versionDifferences} -> versionDifferences) (\s@GetLensVersionDifferenceResponse' {} a -> s {versionDifferences = a} :: GetLensVersionDifferenceResponse)++-- | The response's http status code.+getLensVersionDifferenceResponse_httpStatus :: Lens.Lens' GetLensVersionDifferenceResponse Prelude.Int+getLensVersionDifferenceResponse_httpStatus = Lens.lens (\GetLensVersionDifferenceResponse' {httpStatus} -> httpStatus) (\s@GetLensVersionDifferenceResponse' {} a -> s {httpStatus = a} :: GetLensVersionDifferenceResponse)++instance+ Prelude.NFData+ GetLensVersionDifferenceResponse+ where+ rnf GetLensVersionDifferenceResponse' {..} =+ Prelude.rnf baseLensVersion+ `Prelude.seq` Prelude.rnf latestLensVersion+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf targetLensVersion+ `Prelude.seq` Prelude.rnf versionDifferences+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/GetMilestone.hs view
@@ -0,0 +1,190 @@+{-# 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.WellArchitected.GetMilestone+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get a milestone for an existing workload.+module Amazonka.WellArchitected.GetMilestone+ ( -- * Creating a Request+ GetMilestone (..),+ newGetMilestone,++ -- * Request Lenses+ getMilestone_workloadId,+ getMilestone_milestoneNumber,++ -- * Destructuring the Response+ GetMilestoneResponse (..),+ newGetMilestoneResponse,++ -- * Response Lenses+ getMilestoneResponse_milestone,+ getMilestoneResponse_workloadId,+ getMilestoneResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to get a milestone.+--+-- /See:/ 'newGetMilestone' smart constructor.+data GetMilestone = GetMilestone'+ { workloadId :: Prelude.Text,+ milestoneNumber :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetMilestone' 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:+--+-- 'workloadId', 'getMilestone_workloadId' - Undocumented member.+--+-- 'milestoneNumber', 'getMilestone_milestoneNumber' - Undocumented member.+newGetMilestone ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'milestoneNumber'+ Prelude.Natural ->+ GetMilestone+newGetMilestone pWorkloadId_ pMilestoneNumber_ =+ GetMilestone'+ { workloadId = pWorkloadId_,+ milestoneNumber = pMilestoneNumber_+ }++-- | Undocumented member.+getMilestone_workloadId :: Lens.Lens' GetMilestone Prelude.Text+getMilestone_workloadId = Lens.lens (\GetMilestone' {workloadId} -> workloadId) (\s@GetMilestone' {} a -> s {workloadId = a} :: GetMilestone)++-- | Undocumented member.+getMilestone_milestoneNumber :: Lens.Lens' GetMilestone Prelude.Natural+getMilestone_milestoneNumber = Lens.lens (\GetMilestone' {milestoneNumber} -> milestoneNumber) (\s@GetMilestone' {} a -> s {milestoneNumber = a} :: GetMilestone)++instance Core.AWSRequest GetMilestone where+ type AWSResponse GetMilestone = GetMilestoneResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetMilestoneResponse'+ Prelude.<$> (x Data..?> "Milestone")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetMilestone where+ hashWithSalt _salt GetMilestone' {..} =+ _salt+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` milestoneNumber++instance Prelude.NFData GetMilestone where+ rnf GetMilestone' {..} =+ Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf milestoneNumber++instance Data.ToHeaders GetMilestone where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetMilestone where+ toPath GetMilestone' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/milestones/",+ Data.toBS milestoneNumber+ ]++instance Data.ToQuery GetMilestone where+ toQuery = Prelude.const Prelude.mempty++-- | Output of a get milestone call.+--+-- /See:/ 'newGetMilestoneResponse' smart constructor.+data GetMilestoneResponse = GetMilestoneResponse'+ { milestone :: Prelude.Maybe Milestone,+ workloadId :: 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 'GetMilestoneResponse' 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:+--+-- 'milestone', 'getMilestoneResponse_milestone' - Undocumented member.+--+-- 'workloadId', 'getMilestoneResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'getMilestoneResponse_httpStatus' - The response's http status code.+newGetMilestoneResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetMilestoneResponse+newGetMilestoneResponse pHttpStatus_ =+ GetMilestoneResponse'+ { milestone = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+getMilestoneResponse_milestone :: Lens.Lens' GetMilestoneResponse (Prelude.Maybe Milestone)+getMilestoneResponse_milestone = Lens.lens (\GetMilestoneResponse' {milestone} -> milestone) (\s@GetMilestoneResponse' {} a -> s {milestone = a} :: GetMilestoneResponse)++-- | Undocumented member.+getMilestoneResponse_workloadId :: Lens.Lens' GetMilestoneResponse (Prelude.Maybe Prelude.Text)+getMilestoneResponse_workloadId = Lens.lens (\GetMilestoneResponse' {workloadId} -> workloadId) (\s@GetMilestoneResponse' {} a -> s {workloadId = a} :: GetMilestoneResponse)++-- | The response's http status code.+getMilestoneResponse_httpStatus :: Lens.Lens' GetMilestoneResponse Prelude.Int+getMilestoneResponse_httpStatus = Lens.lens (\GetMilestoneResponse' {httpStatus} -> httpStatus) (\s@GetMilestoneResponse' {} a -> s {httpStatus = a} :: GetMilestoneResponse)++instance Prelude.NFData GetMilestoneResponse where+ rnf GetMilestoneResponse' {..} =+ Prelude.rnf milestone+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/GetWorkload.hs view
@@ -0,0 +1,158 @@+{-# 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.WellArchitected.GetWorkload+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get an existing workload.+module Amazonka.WellArchitected.GetWorkload+ ( -- * Creating a Request+ GetWorkload (..),+ newGetWorkload,++ -- * Request Lenses+ getWorkload_workloadId,++ -- * Destructuring the Response+ GetWorkloadResponse (..),+ newGetWorkloadResponse,++ -- * Response Lenses+ getWorkloadResponse_workload,+ getWorkloadResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to get a workload.+--+-- /See:/ 'newGetWorkload' smart constructor.+data GetWorkload = GetWorkload'+ { workloadId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetWorkload' 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:+--+-- 'workloadId', 'getWorkload_workloadId' - Undocumented member.+newGetWorkload ::+ -- | 'workloadId'+ Prelude.Text ->+ GetWorkload+newGetWorkload pWorkloadId_ =+ GetWorkload' {workloadId = pWorkloadId_}++-- | Undocumented member.+getWorkload_workloadId :: Lens.Lens' GetWorkload Prelude.Text+getWorkload_workloadId = Lens.lens (\GetWorkload' {workloadId} -> workloadId) (\s@GetWorkload' {} a -> s {workloadId = a} :: GetWorkload)++instance Core.AWSRequest GetWorkload where+ type AWSResponse GetWorkload = GetWorkloadResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetWorkloadResponse'+ Prelude.<$> (x Data..?> "Workload")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetWorkload where+ hashWithSalt _salt GetWorkload' {..} =+ _salt `Prelude.hashWithSalt` workloadId++instance Prelude.NFData GetWorkload where+ rnf GetWorkload' {..} = Prelude.rnf workloadId++instance Data.ToHeaders GetWorkload where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetWorkload where+ toPath GetWorkload' {..} =+ Prelude.mconcat+ ["/workloads/", Data.toBS workloadId]++instance Data.ToQuery GetWorkload where+ toQuery = Prelude.const Prelude.mempty++-- | Output of a get workload call.+--+-- /See:/ 'newGetWorkloadResponse' smart constructor.+data GetWorkloadResponse = GetWorkloadResponse'+ { workload :: Prelude.Maybe Workload,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetWorkloadResponse' 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:+--+-- 'workload', 'getWorkloadResponse_workload' - Undocumented member.+--+-- 'httpStatus', 'getWorkloadResponse_httpStatus' - The response's http status code.+newGetWorkloadResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetWorkloadResponse+newGetWorkloadResponse pHttpStatus_ =+ GetWorkloadResponse'+ { workload = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+getWorkloadResponse_workload :: Lens.Lens' GetWorkloadResponse (Prelude.Maybe Workload)+getWorkloadResponse_workload = Lens.lens (\GetWorkloadResponse' {workload} -> workload) (\s@GetWorkloadResponse' {} a -> s {workload = a} :: GetWorkloadResponse)++-- | The response's http status code.+getWorkloadResponse_httpStatus :: Lens.Lens' GetWorkloadResponse Prelude.Int+getWorkloadResponse_httpStatus = Lens.lens (\GetWorkloadResponse' {httpStatus} -> httpStatus) (\s@GetWorkloadResponse' {} a -> s {httpStatus = a} :: GetWorkloadResponse)++instance Prelude.NFData GetWorkloadResponse where+ rnf GetWorkloadResponse' {..} =+ Prelude.rnf workload+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/ImportLens.hs view
@@ -0,0 +1,237 @@+{-# 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.WellArchitected.ImportLens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Import a new lens.+--+-- The lens cannot be applied to workloads or shared with other Amazon Web+-- Services accounts until it\'s published with CreateLensVersion+--+-- Lenses are defined in JSON. For more information, see+-- <https://docs.aws.amazon.com/wellarchitected/latest/userguide/lenses-format-specification.html JSON format specification>+-- in the /Well-Architected Tool User Guide/.+--+-- A custom lens cannot exceed 500 KB in size.+--+-- __Disclaimer__+--+-- Do not include or gather personal identifiable information (PII) of end+-- users or other identifiable individuals in or via your custom lenses. If+-- your custom lens or those shared with you and used in your account do+-- include or collect PII you are responsible for: ensuring that the+-- included PII is processed in accordance with applicable law, providing+-- adequate privacy notices, and obtaining necessary consents for+-- processing such data.+module Amazonka.WellArchitected.ImportLens+ ( -- * Creating a Request+ ImportLens (..),+ newImportLens,++ -- * Request Lenses+ importLens_lensAlias,+ importLens_tags,+ importLens_jSONString,+ importLens_clientRequestToken,++ -- * Destructuring the Response+ ImportLensResponse (..),+ newImportLensResponse,++ -- * Response Lenses+ importLensResponse_lensArn,+ importLensResponse_status,+ importLensResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newImportLens' smart constructor.+data ImportLens = ImportLens'+ { lensAlias :: Prelude.Maybe Prelude.Text,+ -- | Tags to associate to a lens.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The JSON representation of a lens.+ jSONString :: Prelude.Text,+ clientRequestToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportLens' 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:+--+-- 'lensAlias', 'importLens_lensAlias' - Undocumented member.+--+-- 'tags', 'importLens_tags' - Tags to associate to a lens.+--+-- 'jSONString', 'importLens_jSONString' - The JSON representation of a lens.+--+-- 'clientRequestToken', 'importLens_clientRequestToken' - Undocumented member.+newImportLens ::+ -- | 'jSONString'+ Prelude.Text ->+ -- | 'clientRequestToken'+ Prelude.Text ->+ ImportLens+newImportLens pJSONString_ pClientRequestToken_ =+ ImportLens'+ { lensAlias = Prelude.Nothing,+ tags = Prelude.Nothing,+ jSONString = pJSONString_,+ clientRequestToken = pClientRequestToken_+ }++-- | Undocumented member.+importLens_lensAlias :: Lens.Lens' ImportLens (Prelude.Maybe Prelude.Text)+importLens_lensAlias = Lens.lens (\ImportLens' {lensAlias} -> lensAlias) (\s@ImportLens' {} a -> s {lensAlias = a} :: ImportLens)++-- | Tags to associate to a lens.+importLens_tags :: Lens.Lens' ImportLens (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+importLens_tags = Lens.lens (\ImportLens' {tags} -> tags) (\s@ImportLens' {} a -> s {tags = a} :: ImportLens) Prelude.. Lens.mapping Lens.coerced++-- | The JSON representation of a lens.+importLens_jSONString :: Lens.Lens' ImportLens Prelude.Text+importLens_jSONString = Lens.lens (\ImportLens' {jSONString} -> jSONString) (\s@ImportLens' {} a -> s {jSONString = a} :: ImportLens)++-- | Undocumented member.+importLens_clientRequestToken :: Lens.Lens' ImportLens Prelude.Text+importLens_clientRequestToken = Lens.lens (\ImportLens' {clientRequestToken} -> clientRequestToken) (\s@ImportLens' {} a -> s {clientRequestToken = a} :: ImportLens)++instance Core.AWSRequest ImportLens where+ type AWSResponse ImportLens = ImportLensResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ImportLensResponse'+ Prelude.<$> (x Data..?> "LensArn")+ Prelude.<*> (x Data..?> "Status")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ImportLens where+ hashWithSalt _salt ImportLens' {..} =+ _salt+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` jSONString+ `Prelude.hashWithSalt` clientRequestToken++instance Prelude.NFData ImportLens where+ rnf ImportLens' {..} =+ Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf jSONString+ `Prelude.seq` Prelude.rnf clientRequestToken++instance Data.ToHeaders ImportLens where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ImportLens where+ toJSON ImportLens' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("LensAlias" Data..=) Prelude.<$> lensAlias,+ ("Tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("JSONString" Data..= jSONString),+ Prelude.Just+ ("ClientRequestToken" Data..= clientRequestToken)+ ]+ )++instance Data.ToPath ImportLens where+ toPath = Prelude.const "/importLens"++instance Data.ToQuery ImportLens where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newImportLensResponse' smart constructor.+data ImportLensResponse = ImportLensResponse'+ { -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ -- | The status of the imported lens.+ status :: Prelude.Maybe ImportLensStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportLensResponse' 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:+--+-- 'lensArn', 'importLensResponse_lensArn' - The ARN for the lens.+--+-- 'status', 'importLensResponse_status' - The status of the imported lens.+--+-- 'httpStatus', 'importLensResponse_httpStatus' - The response's http status code.+newImportLensResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ImportLensResponse+newImportLensResponse pHttpStatus_ =+ ImportLensResponse'+ { lensArn = Prelude.Nothing,+ status = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the lens.+importLensResponse_lensArn :: Lens.Lens' ImportLensResponse (Prelude.Maybe Prelude.Text)+importLensResponse_lensArn = Lens.lens (\ImportLensResponse' {lensArn} -> lensArn) (\s@ImportLensResponse' {} a -> s {lensArn = a} :: ImportLensResponse)++-- | The status of the imported lens.+importLensResponse_status :: Lens.Lens' ImportLensResponse (Prelude.Maybe ImportLensStatus)+importLensResponse_status = Lens.lens (\ImportLensResponse' {status} -> status) (\s@ImportLensResponse' {} a -> s {status = a} :: ImportLensResponse)++-- | The response's http status code.+importLensResponse_httpStatus :: Lens.Lens' ImportLensResponse Prelude.Int+importLensResponse_httpStatus = Lens.lens (\ImportLensResponse' {httpStatus} -> httpStatus) (\s@ImportLensResponse' {} a -> s {httpStatus = a} :: ImportLensResponse)++instance Prelude.NFData ImportLensResponse where+ rnf ImportLensResponse' {..} =+ Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/Lens.hs view
@@ -0,0 +1,737 @@+{-# 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.WellArchitected.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.WellArchitected.Lens+ ( -- * Operations++ -- ** AssociateLenses+ associateLenses_workloadId,+ associateLenses_lensAliases,++ -- ** CreateLensShare+ createLensShare_lensAlias,+ createLensShare_sharedWith,+ createLensShare_clientRequestToken,+ createLensShareResponse_shareId,+ createLensShareResponse_httpStatus,++ -- ** CreateLensVersion+ createLensVersion_isMajorVersion,+ createLensVersion_lensAlias,+ createLensVersion_lensVersion,+ createLensVersion_clientRequestToken,+ createLensVersionResponse_lensArn,+ createLensVersionResponse_lensVersion,+ createLensVersionResponse_httpStatus,++ -- ** CreateMilestone+ createMilestone_workloadId,+ createMilestone_milestoneName,+ createMilestone_clientRequestToken,+ createMilestoneResponse_milestoneNumber,+ createMilestoneResponse_workloadId,+ createMilestoneResponse_httpStatus,++ -- ** CreateWorkload+ createWorkload_accountIds,+ createWorkload_applications,+ createWorkload_architecturalDesign,+ createWorkload_awsRegions,+ createWorkload_discoveryConfig,+ createWorkload_industry,+ createWorkload_industryType,+ createWorkload_nonAwsRegions,+ createWorkload_notes,+ createWorkload_pillarPriorities,+ createWorkload_reviewOwner,+ createWorkload_tags,+ createWorkload_workloadName,+ createWorkload_description,+ createWorkload_environment,+ createWorkload_lenses,+ createWorkload_clientRequestToken,+ createWorkloadResponse_workloadArn,+ createWorkloadResponse_workloadId,+ createWorkloadResponse_httpStatus,++ -- ** CreateWorkloadShare+ createWorkloadShare_workloadId,+ createWorkloadShare_sharedWith,+ createWorkloadShare_permissionType,+ createWorkloadShare_clientRequestToken,+ createWorkloadShareResponse_shareId,+ createWorkloadShareResponse_workloadId,+ createWorkloadShareResponse_httpStatus,++ -- ** DeleteLens+ deleteLens_lensAlias,+ deleteLens_clientRequestToken,+ deleteLens_lensStatus,++ -- ** DeleteLensShare+ deleteLensShare_shareId,+ deleteLensShare_lensAlias,+ deleteLensShare_clientRequestToken,++ -- ** DeleteWorkload+ deleteWorkload_workloadId,+ deleteWorkload_clientRequestToken,++ -- ** DeleteWorkloadShare+ deleteWorkloadShare_shareId,+ deleteWorkloadShare_workloadId,+ deleteWorkloadShare_clientRequestToken,++ -- ** DisassociateLenses+ disassociateLenses_workloadId,+ disassociateLenses_lensAliases,++ -- ** ExportLens+ exportLens_lensVersion,+ exportLens_lensAlias,+ exportLensResponse_lensJSON,+ exportLensResponse_httpStatus,++ -- ** GetAnswer+ getAnswer_milestoneNumber,+ getAnswer_workloadId,+ getAnswer_lensAlias,+ getAnswer_questionId,+ getAnswerResponse_answer,+ getAnswerResponse_lensAlias,+ getAnswerResponse_lensArn,+ getAnswerResponse_milestoneNumber,+ getAnswerResponse_workloadId,+ getAnswerResponse_httpStatus,++ -- ** GetLens+ getLens_lensVersion,+ getLens_lensAlias,+ getLensResponse_lens,+ getLensResponse_httpStatus,++ -- ** GetLensReview+ getLensReview_milestoneNumber,+ getLensReview_workloadId,+ getLensReview_lensAlias,+ getLensReviewResponse_lensReview,+ getLensReviewResponse_milestoneNumber,+ getLensReviewResponse_workloadId,+ getLensReviewResponse_httpStatus,++ -- ** GetLensReviewReport+ getLensReviewReport_milestoneNumber,+ getLensReviewReport_workloadId,+ getLensReviewReport_lensAlias,+ getLensReviewReportResponse_lensReviewReport,+ getLensReviewReportResponse_milestoneNumber,+ getLensReviewReportResponse_workloadId,+ getLensReviewReportResponse_httpStatus,++ -- ** GetLensVersionDifference+ getLensVersionDifference_baseLensVersion,+ getLensVersionDifference_targetLensVersion,+ getLensVersionDifference_lensAlias,+ getLensVersionDifferenceResponse_baseLensVersion,+ getLensVersionDifferenceResponse_latestLensVersion,+ getLensVersionDifferenceResponse_lensAlias,+ getLensVersionDifferenceResponse_lensArn,+ getLensVersionDifferenceResponse_targetLensVersion,+ getLensVersionDifferenceResponse_versionDifferences,+ getLensVersionDifferenceResponse_httpStatus,++ -- ** GetMilestone+ getMilestone_workloadId,+ getMilestone_milestoneNumber,+ getMilestoneResponse_milestone,+ getMilestoneResponse_workloadId,+ getMilestoneResponse_httpStatus,++ -- ** GetWorkload+ getWorkload_workloadId,+ getWorkloadResponse_workload,+ getWorkloadResponse_httpStatus,++ -- ** ImportLens+ importLens_lensAlias,+ importLens_tags,+ importLens_jSONString,+ importLens_clientRequestToken,+ importLensResponse_lensArn,+ importLensResponse_status,+ importLensResponse_httpStatus,++ -- ** ListAnswers+ listAnswers_maxResults,+ listAnswers_milestoneNumber,+ listAnswers_nextToken,+ listAnswers_pillarId,+ listAnswers_workloadId,+ listAnswers_lensAlias,+ listAnswersResponse_answerSummaries,+ listAnswersResponse_lensAlias,+ listAnswersResponse_lensArn,+ listAnswersResponse_milestoneNumber,+ listAnswersResponse_nextToken,+ listAnswersResponse_workloadId,+ listAnswersResponse_httpStatus,++ -- ** ListCheckDetails+ listCheckDetails_maxResults,+ listCheckDetails_nextToken,+ listCheckDetails_workloadId,+ listCheckDetails_lensArn,+ listCheckDetails_pillarId,+ listCheckDetails_questionId,+ listCheckDetails_choiceId,+ listCheckDetailsResponse_checkDetails,+ listCheckDetailsResponse_nextToken,+ listCheckDetailsResponse_httpStatus,++ -- ** ListCheckSummaries+ listCheckSummaries_maxResults,+ listCheckSummaries_nextToken,+ listCheckSummaries_workloadId,+ listCheckSummaries_lensArn,+ listCheckSummaries_pillarId,+ listCheckSummaries_questionId,+ listCheckSummaries_choiceId,+ listCheckSummariesResponse_checkSummaries,+ listCheckSummariesResponse_nextToken,+ listCheckSummariesResponse_httpStatus,++ -- ** ListLensReviewImprovements+ listLensReviewImprovements_maxResults,+ listLensReviewImprovements_milestoneNumber,+ listLensReviewImprovements_nextToken,+ listLensReviewImprovements_pillarId,+ listLensReviewImprovements_workloadId,+ listLensReviewImprovements_lensAlias,+ listLensReviewImprovementsResponse_improvementSummaries,+ listLensReviewImprovementsResponse_lensAlias,+ listLensReviewImprovementsResponse_lensArn,+ listLensReviewImprovementsResponse_milestoneNumber,+ listLensReviewImprovementsResponse_nextToken,+ listLensReviewImprovementsResponse_workloadId,+ listLensReviewImprovementsResponse_httpStatus,++ -- ** ListLensReviews+ listLensReviews_maxResults,+ listLensReviews_milestoneNumber,+ listLensReviews_nextToken,+ listLensReviews_workloadId,+ listLensReviewsResponse_lensReviewSummaries,+ listLensReviewsResponse_milestoneNumber,+ listLensReviewsResponse_nextToken,+ listLensReviewsResponse_workloadId,+ listLensReviewsResponse_httpStatus,++ -- ** ListLensShares+ listLensShares_maxResults,+ listLensShares_nextToken,+ listLensShares_sharedWithPrefix,+ listLensShares_status,+ listLensShares_lensAlias,+ listLensSharesResponse_lensShareSummaries,+ listLensSharesResponse_nextToken,+ listLensSharesResponse_httpStatus,++ -- ** ListLenses+ listLenses_lensName,+ listLenses_lensStatus,+ listLenses_lensType,+ listLenses_maxResults,+ listLenses_nextToken,+ listLensesResponse_lensSummaries,+ listLensesResponse_nextToken,+ listLensesResponse_httpStatus,++ -- ** ListMilestones+ listMilestones_maxResults,+ listMilestones_nextToken,+ listMilestones_workloadId,+ listMilestonesResponse_milestoneSummaries,+ listMilestonesResponse_nextToken,+ listMilestonesResponse_workloadId,+ listMilestonesResponse_httpStatus,++ -- ** ListNotifications+ listNotifications_maxResults,+ listNotifications_nextToken,+ listNotifications_workloadId,+ listNotificationsResponse_nextToken,+ listNotificationsResponse_notificationSummaries,+ listNotificationsResponse_httpStatus,++ -- ** ListShareInvitations+ listShareInvitations_lensNamePrefix,+ listShareInvitations_maxResults,+ listShareInvitations_nextToken,+ listShareInvitations_shareResourceType,+ listShareInvitations_workloadNamePrefix,+ listShareInvitationsResponse_nextToken,+ listShareInvitationsResponse_shareInvitationSummaries,+ listShareInvitationsResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_workloadArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** ListWorkloadShares+ listWorkloadShares_maxResults,+ listWorkloadShares_nextToken,+ listWorkloadShares_sharedWithPrefix,+ listWorkloadShares_status,+ listWorkloadShares_workloadId,+ listWorkloadSharesResponse_nextToken,+ listWorkloadSharesResponse_workloadId,+ listWorkloadSharesResponse_workloadShareSummaries,+ listWorkloadSharesResponse_httpStatus,++ -- ** ListWorkloads+ listWorkloads_maxResults,+ listWorkloads_nextToken,+ listWorkloads_workloadNamePrefix,+ listWorkloadsResponse_nextToken,+ listWorkloadsResponse_workloadSummaries,+ listWorkloadsResponse_httpStatus,++ -- ** TagResource+ tagResource_workloadArn,+ tagResource_tags,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_workloadArn,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- ** UpdateAnswer+ updateAnswer_choiceUpdates,+ updateAnswer_isApplicable,+ updateAnswer_notes,+ updateAnswer_reason,+ updateAnswer_selectedChoices,+ updateAnswer_workloadId,+ updateAnswer_lensAlias,+ updateAnswer_questionId,+ updateAnswerResponse_answer,+ updateAnswerResponse_lensAlias,+ updateAnswerResponse_lensArn,+ updateAnswerResponse_workloadId,+ updateAnswerResponse_httpStatus,++ -- ** UpdateGlobalSettings+ updateGlobalSettings_organizationSharingStatus,++ -- ** UpdateLensReview+ updateLensReview_lensNotes,+ updateLensReview_pillarNotes,+ updateLensReview_workloadId,+ updateLensReview_lensAlias,+ updateLensReviewResponse_lensReview,+ updateLensReviewResponse_workloadId,+ updateLensReviewResponse_httpStatus,++ -- ** UpdateShareInvitation+ updateShareInvitation_shareInvitationId,+ updateShareInvitation_shareInvitationAction,+ updateShareInvitationResponse_shareInvitation,+ updateShareInvitationResponse_httpStatus,++ -- ** UpdateWorkload+ updateWorkload_accountIds,+ updateWorkload_applications,+ updateWorkload_architecturalDesign,+ updateWorkload_awsRegions,+ updateWorkload_description,+ updateWorkload_discoveryConfig,+ updateWorkload_environment,+ updateWorkload_improvementStatus,+ updateWorkload_industry,+ updateWorkload_industryType,+ updateWorkload_isReviewOwnerUpdateAcknowledged,+ updateWorkload_nonAwsRegions,+ updateWorkload_notes,+ updateWorkload_pillarPriorities,+ updateWorkload_reviewOwner,+ updateWorkload_workloadName,+ updateWorkload_workloadId,+ updateWorkloadResponse_workload,+ updateWorkloadResponse_httpStatus,++ -- ** UpdateWorkloadShare+ updateWorkloadShare_shareId,+ updateWorkloadShare_workloadId,+ updateWorkloadShare_permissionType,+ updateWorkloadShareResponse_workloadId,+ updateWorkloadShareResponse_workloadShare,+ updateWorkloadShareResponse_httpStatus,++ -- ** UpgradeLensReview+ upgradeLensReview_clientRequestToken,+ upgradeLensReview_workloadId,+ upgradeLensReview_lensAlias,+ upgradeLensReview_milestoneName,++ -- * Types++ -- ** AdditionalResources+ additionalResources_content,+ additionalResources_type,++ -- ** Answer+ answer_choiceAnswers,+ answer_choices,+ answer_helpfulResourceDisplayText,+ answer_helpfulResourceUrl,+ answer_improvementPlanUrl,+ answer_isApplicable,+ answer_notes,+ answer_pillarId,+ answer_questionDescription,+ answer_questionId,+ answer_questionTitle,+ answer_reason,+ answer_risk,+ answer_selectedChoices,++ -- ** AnswerSummary+ answerSummary_choiceAnswerSummaries,+ answerSummary_choices,+ answerSummary_isApplicable,+ answerSummary_pillarId,+ answerSummary_questionId,+ answerSummary_questionTitle,+ answerSummary_reason,+ answerSummary_risk,+ answerSummary_selectedChoices,++ -- ** CheckDetail+ checkDetail_accountId,+ checkDetail_choiceId,+ checkDetail_description,+ checkDetail_flaggedResources,+ checkDetail_id,+ checkDetail_lensArn,+ checkDetail_name,+ checkDetail_pillarId,+ checkDetail_provider,+ checkDetail_questionId,+ checkDetail_reason,+ checkDetail_status,+ checkDetail_updatedAt,++ -- ** CheckSummary+ checkSummary_accountSummary,+ checkSummary_choiceId,+ checkSummary_description,+ checkSummary_id,+ checkSummary_lensArn,+ checkSummary_name,+ checkSummary_pillarId,+ checkSummary_provider,+ checkSummary_questionId,+ checkSummary_status,+ checkSummary_updatedAt,++ -- ** Choice+ choice_additionalResources,+ choice_choiceId,+ choice_description,+ choice_helpfulResource,+ choice_improvementPlan,+ choice_title,++ -- ** ChoiceAnswer+ choiceAnswer_choiceId,+ choiceAnswer_notes,+ choiceAnswer_reason,+ choiceAnswer_status,++ -- ** ChoiceAnswerSummary+ choiceAnswerSummary_choiceId,+ choiceAnswerSummary_reason,+ choiceAnswerSummary_status,++ -- ** ChoiceContent+ choiceContent_displayText,+ choiceContent_url,++ -- ** ChoiceImprovementPlan+ choiceImprovementPlan_choiceId,+ choiceImprovementPlan_displayText,+ choiceImprovementPlan_improvementPlanUrl,++ -- ** ChoiceUpdate+ choiceUpdate_notes,+ choiceUpdate_reason,+ choiceUpdate_status,++ -- ** ImprovementSummary+ improvementSummary_improvementPlanUrl,+ improvementSummary_improvementPlans,+ improvementSummary_pillarId,+ improvementSummary_questionId,+ improvementSummary_questionTitle,+ improvementSummary_risk,++ -- ** Lens+ lens_description,+ lens_lensArn,+ lens_lensVersion,+ lens_name,+ lens_owner,+ lens_shareInvitationId,+ lens_tags,++ -- ** LensReview+ lensReview_lensAlias,+ lensReview_lensArn,+ lensReview_lensName,+ lensReview_lensStatus,+ lensReview_lensVersion,+ lensReview_nextToken,+ lensReview_notes,+ lensReview_pillarReviewSummaries,+ lensReview_riskCounts,+ lensReview_updatedAt,++ -- ** LensReviewReport+ lensReviewReport_base64String,+ lensReviewReport_lensAlias,+ lensReviewReport_lensArn,++ -- ** LensReviewSummary+ lensReviewSummary_lensAlias,+ lensReviewSummary_lensArn,+ lensReviewSummary_lensName,+ lensReviewSummary_lensStatus,+ lensReviewSummary_lensVersion,+ lensReviewSummary_riskCounts,+ lensReviewSummary_updatedAt,++ -- ** LensShareSummary+ lensShareSummary_shareId,+ lensShareSummary_sharedWith,+ lensShareSummary_status,+ lensShareSummary_statusMessage,++ -- ** LensSummary+ lensSummary_createdAt,+ lensSummary_description,+ lensSummary_lensAlias,+ lensSummary_lensArn,+ lensSummary_lensName,+ lensSummary_lensStatus,+ lensSummary_lensType,+ lensSummary_lensVersion,+ lensSummary_owner,+ lensSummary_updatedAt,++ -- ** LensUpgradeSummary+ lensUpgradeSummary_currentLensVersion,+ lensUpgradeSummary_latestLensVersion,+ lensUpgradeSummary_lensAlias,+ lensUpgradeSummary_lensArn,+ lensUpgradeSummary_workloadId,+ lensUpgradeSummary_workloadName,++ -- ** Milestone+ milestone_milestoneName,+ milestone_milestoneNumber,+ milestone_recordedAt,+ milestone_workload,++ -- ** MilestoneSummary+ milestoneSummary_milestoneName,+ milestoneSummary_milestoneNumber,+ milestoneSummary_recordedAt,+ milestoneSummary_workloadSummary,++ -- ** NotificationSummary+ notificationSummary_lensUpgradeSummary,+ notificationSummary_type,++ -- ** PillarDifference+ pillarDifference_differenceStatus,+ pillarDifference_pillarId,+ pillarDifference_pillarName,+ pillarDifference_questionDifferences,++ -- ** PillarReviewSummary+ pillarReviewSummary_notes,+ pillarReviewSummary_pillarId,+ pillarReviewSummary_pillarName,+ pillarReviewSummary_riskCounts,++ -- ** QuestionDifference+ questionDifference_differenceStatus,+ questionDifference_questionId,+ questionDifference_questionTitle,++ -- ** ShareInvitation+ shareInvitation_lensAlias,+ shareInvitation_lensArn,+ shareInvitation_shareInvitationId,+ shareInvitation_shareResourceType,+ shareInvitation_workloadId,++ -- ** ShareInvitationSummary+ shareInvitationSummary_lensArn,+ shareInvitationSummary_lensName,+ shareInvitationSummary_permissionType,+ shareInvitationSummary_shareInvitationId,+ shareInvitationSummary_shareResourceType,+ shareInvitationSummary_sharedBy,+ shareInvitationSummary_sharedWith,+ shareInvitationSummary_workloadId,+ shareInvitationSummary_workloadName,++ -- ** VersionDifferences+ versionDifferences_pillarDifferences,++ -- ** Workload+ workload_accountIds,+ workload_applications,+ workload_architecturalDesign,+ workload_awsRegions,+ workload_description,+ workload_discoveryConfig,+ workload_environment,+ workload_improvementStatus,+ workload_industry,+ workload_industryType,+ workload_isReviewOwnerUpdateAcknowledged,+ workload_lenses,+ workload_nonAwsRegions,+ workload_notes,+ workload_owner,+ workload_pillarPriorities,+ workload_reviewOwner,+ workload_reviewRestrictionDate,+ workload_riskCounts,+ workload_shareInvitationId,+ workload_tags,+ workload_updatedAt,+ workload_workloadArn,+ workload_workloadId,+ workload_workloadName,++ -- ** WorkloadDiscoveryConfig+ workloadDiscoveryConfig_trustedAdvisorIntegrationStatus,++ -- ** WorkloadShare+ workloadShare_permissionType,+ workloadShare_shareId,+ workloadShare_sharedBy,+ workloadShare_sharedWith,+ workloadShare_status,+ workloadShare_workloadId,+ workloadShare_workloadName,++ -- ** WorkloadShareSummary+ workloadShareSummary_permissionType,+ workloadShareSummary_shareId,+ workloadShareSummary_sharedWith,+ workloadShareSummary_status,+ workloadShareSummary_statusMessage,++ -- ** WorkloadSummary+ workloadSummary_improvementStatus,+ workloadSummary_lenses,+ workloadSummary_owner,+ workloadSummary_riskCounts,+ workloadSummary_updatedAt,+ workloadSummary_workloadArn,+ workloadSummary_workloadId,+ workloadSummary_workloadName,+ )+where++import Amazonka.WellArchitected.AssociateLenses+import Amazonka.WellArchitected.CreateLensShare+import Amazonka.WellArchitected.CreateLensVersion+import Amazonka.WellArchitected.CreateMilestone+import Amazonka.WellArchitected.CreateWorkload+import Amazonka.WellArchitected.CreateWorkloadShare+import Amazonka.WellArchitected.DeleteLens+import Amazonka.WellArchitected.DeleteLensShare+import Amazonka.WellArchitected.DeleteWorkload+import Amazonka.WellArchitected.DeleteWorkloadShare+import Amazonka.WellArchitected.DisassociateLenses+import Amazonka.WellArchitected.ExportLens+import Amazonka.WellArchitected.GetAnswer+import Amazonka.WellArchitected.GetLens+import Amazonka.WellArchitected.GetLensReview+import Amazonka.WellArchitected.GetLensReviewReport+import Amazonka.WellArchitected.GetLensVersionDifference+import Amazonka.WellArchitected.GetMilestone+import Amazonka.WellArchitected.GetWorkload+import Amazonka.WellArchitected.ImportLens+import Amazonka.WellArchitected.ListAnswers+import Amazonka.WellArchitected.ListCheckDetails+import Amazonka.WellArchitected.ListCheckSummaries+import Amazonka.WellArchitected.ListLensReviewImprovements+import Amazonka.WellArchitected.ListLensReviews+import Amazonka.WellArchitected.ListLensShares+import Amazonka.WellArchitected.ListLenses+import Amazonka.WellArchitected.ListMilestones+import Amazonka.WellArchitected.ListNotifications+import Amazonka.WellArchitected.ListShareInvitations+import Amazonka.WellArchitected.ListTagsForResource+import Amazonka.WellArchitected.ListWorkloadShares+import Amazonka.WellArchitected.ListWorkloads+import Amazonka.WellArchitected.TagResource+import Amazonka.WellArchitected.Types.AdditionalResources+import Amazonka.WellArchitected.Types.Answer+import Amazonka.WellArchitected.Types.AnswerSummary+import Amazonka.WellArchitected.Types.CheckDetail+import Amazonka.WellArchitected.Types.CheckSummary+import Amazonka.WellArchitected.Types.Choice+import Amazonka.WellArchitected.Types.ChoiceAnswer+import Amazonka.WellArchitected.Types.ChoiceAnswerSummary+import Amazonka.WellArchitected.Types.ChoiceContent+import Amazonka.WellArchitected.Types.ChoiceImprovementPlan+import Amazonka.WellArchitected.Types.ChoiceUpdate+import Amazonka.WellArchitected.Types.ImprovementSummary+import Amazonka.WellArchitected.Types.Lens+import Amazonka.WellArchitected.Types.LensReview+import Amazonka.WellArchitected.Types.LensReviewReport+import Amazonka.WellArchitected.Types.LensReviewSummary+import Amazonka.WellArchitected.Types.LensShareSummary+import Amazonka.WellArchitected.Types.LensSummary+import Amazonka.WellArchitected.Types.LensUpgradeSummary+import Amazonka.WellArchitected.Types.Milestone+import Amazonka.WellArchitected.Types.MilestoneSummary+import Amazonka.WellArchitected.Types.NotificationSummary+import Amazonka.WellArchitected.Types.PillarDifference+import Amazonka.WellArchitected.Types.PillarReviewSummary+import Amazonka.WellArchitected.Types.QuestionDifference+import Amazonka.WellArchitected.Types.ShareInvitation+import Amazonka.WellArchitected.Types.ShareInvitationSummary+import Amazonka.WellArchitected.Types.VersionDifferences+import Amazonka.WellArchitected.Types.Workload+import Amazonka.WellArchitected.Types.WorkloadDiscoveryConfig+import Amazonka.WellArchitected.Types.WorkloadShare+import Amazonka.WellArchitected.Types.WorkloadShareSummary+import Amazonka.WellArchitected.Types.WorkloadSummary+import Amazonka.WellArchitected.UntagResource+import Amazonka.WellArchitected.UpdateAnswer+import Amazonka.WellArchitected.UpdateGlobalSettings+import Amazonka.WellArchitected.UpdateLensReview+import Amazonka.WellArchitected.UpdateShareInvitation+import Amazonka.WellArchitected.UpdateWorkload+import Amazonka.WellArchitected.UpdateWorkloadShare+import Amazonka.WellArchitected.UpgradeLensReview
+ gen/Amazonka/WellArchitected/ListAnswers.hs view
@@ -0,0 +1,291 @@+{-# 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.WellArchitected.ListAnswers+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List of answers.+module Amazonka.WellArchitected.ListAnswers+ ( -- * Creating a Request+ ListAnswers (..),+ newListAnswers,++ -- * Request Lenses+ listAnswers_maxResults,+ listAnswers_milestoneNumber,+ listAnswers_nextToken,+ listAnswers_pillarId,+ listAnswers_workloadId,+ listAnswers_lensAlias,++ -- * Destructuring the Response+ ListAnswersResponse (..),+ newListAnswersResponse,++ -- * Response Lenses+ listAnswersResponse_answerSummaries,+ listAnswersResponse_lensAlias,+ listAnswersResponse_lensArn,+ listAnswersResponse_milestoneNumber,+ listAnswersResponse_nextToken,+ listAnswersResponse_workloadId,+ listAnswersResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to list answers.+--+-- /See:/ 'newListAnswers' smart constructor.+data ListAnswers = ListAnswers'+ { -- | The maximum number of results to return for this request.+ maxResults :: Prelude.Maybe Prelude.Natural,+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ pillarId :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Text,+ lensAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAnswers' 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:+--+-- 'maxResults', 'listAnswers_maxResults' - The maximum number of results to return for this request.+--+-- 'milestoneNumber', 'listAnswers_milestoneNumber' - Undocumented member.+--+-- 'nextToken', 'listAnswers_nextToken' - Undocumented member.+--+-- 'pillarId', 'listAnswers_pillarId' - Undocumented member.+--+-- 'workloadId', 'listAnswers_workloadId' - Undocumented member.+--+-- 'lensAlias', 'listAnswers_lensAlias' - Undocumented member.+newListAnswers ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensAlias'+ Prelude.Text ->+ ListAnswers+newListAnswers pWorkloadId_ pLensAlias_ =+ ListAnswers'+ { maxResults = Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ pillarId = Prelude.Nothing,+ workloadId = pWorkloadId_,+ lensAlias = pLensAlias_+ }++-- | The maximum number of results to return for this request.+listAnswers_maxResults :: Lens.Lens' ListAnswers (Prelude.Maybe Prelude.Natural)+listAnswers_maxResults = Lens.lens (\ListAnswers' {maxResults} -> maxResults) (\s@ListAnswers' {} a -> s {maxResults = a} :: ListAnswers)++-- | Undocumented member.+listAnswers_milestoneNumber :: Lens.Lens' ListAnswers (Prelude.Maybe Prelude.Natural)+listAnswers_milestoneNumber = Lens.lens (\ListAnswers' {milestoneNumber} -> milestoneNumber) (\s@ListAnswers' {} a -> s {milestoneNumber = a} :: ListAnswers)++-- | Undocumented member.+listAnswers_nextToken :: Lens.Lens' ListAnswers (Prelude.Maybe Prelude.Text)+listAnswers_nextToken = Lens.lens (\ListAnswers' {nextToken} -> nextToken) (\s@ListAnswers' {} a -> s {nextToken = a} :: ListAnswers)++-- | Undocumented member.+listAnswers_pillarId :: Lens.Lens' ListAnswers (Prelude.Maybe Prelude.Text)+listAnswers_pillarId = Lens.lens (\ListAnswers' {pillarId} -> pillarId) (\s@ListAnswers' {} a -> s {pillarId = a} :: ListAnswers)++-- | Undocumented member.+listAnswers_workloadId :: Lens.Lens' ListAnswers Prelude.Text+listAnswers_workloadId = Lens.lens (\ListAnswers' {workloadId} -> workloadId) (\s@ListAnswers' {} a -> s {workloadId = a} :: ListAnswers)++-- | Undocumented member.+listAnswers_lensAlias :: Lens.Lens' ListAnswers Prelude.Text+listAnswers_lensAlias = Lens.lens (\ListAnswers' {lensAlias} -> lensAlias) (\s@ListAnswers' {} a -> s {lensAlias = a} :: ListAnswers)++instance Core.AWSRequest ListAnswers where+ type AWSResponse ListAnswers = ListAnswersResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListAnswersResponse'+ Prelude.<$> ( x+ Data..?> "AnswerSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "LensAlias")+ Prelude.<*> (x Data..?> "LensArn")+ Prelude.<*> (x Data..?> "MilestoneNumber")+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListAnswers where+ hashWithSalt _salt ListAnswers' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` milestoneNumber+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensAlias++instance Prelude.NFData ListAnswers where+ rnf ListAnswers' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensAlias++instance Data.ToHeaders ListAnswers where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListAnswers where+ toPath ListAnswers' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/lensReviews/",+ Data.toBS lensAlias,+ "/answers"+ ]++instance Data.ToQuery ListAnswers where+ toQuery ListAnswers' {..} =+ Prelude.mconcat+ [ "MaxResults" Data.=: maxResults,+ "MilestoneNumber" Data.=: milestoneNumber,+ "NextToken" Data.=: nextToken,+ "PillarId" Data.=: pillarId+ ]++-- | Output of a list answers call.+--+-- /See:/ 'newListAnswersResponse' smart constructor.+data ListAnswersResponse = ListAnswersResponse'+ { answerSummaries :: Prelude.Maybe [AnswerSummary],+ lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ workloadId :: 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 'ListAnswersResponse' 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:+--+-- 'answerSummaries', 'listAnswersResponse_answerSummaries' - Undocumented member.+--+-- 'lensAlias', 'listAnswersResponse_lensAlias' - Undocumented member.+--+-- 'lensArn', 'listAnswersResponse_lensArn' - The ARN for the lens.+--+-- 'milestoneNumber', 'listAnswersResponse_milestoneNumber' - Undocumented member.+--+-- 'nextToken', 'listAnswersResponse_nextToken' - Undocumented member.+--+-- 'workloadId', 'listAnswersResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'listAnswersResponse_httpStatus' - The response's http status code.+newListAnswersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAnswersResponse+newListAnswersResponse pHttpStatus_ =+ ListAnswersResponse'+ { answerSummaries =+ Prelude.Nothing,+ lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+listAnswersResponse_answerSummaries :: Lens.Lens' ListAnswersResponse (Prelude.Maybe [AnswerSummary])+listAnswersResponse_answerSummaries = Lens.lens (\ListAnswersResponse' {answerSummaries} -> answerSummaries) (\s@ListAnswersResponse' {} a -> s {answerSummaries = a} :: ListAnswersResponse) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+listAnswersResponse_lensAlias :: Lens.Lens' ListAnswersResponse (Prelude.Maybe Prelude.Text)+listAnswersResponse_lensAlias = Lens.lens (\ListAnswersResponse' {lensAlias} -> lensAlias) (\s@ListAnswersResponse' {} a -> s {lensAlias = a} :: ListAnswersResponse)++-- | The ARN for the lens.+listAnswersResponse_lensArn :: Lens.Lens' ListAnswersResponse (Prelude.Maybe Prelude.Text)+listAnswersResponse_lensArn = Lens.lens (\ListAnswersResponse' {lensArn} -> lensArn) (\s@ListAnswersResponse' {} a -> s {lensArn = a} :: ListAnswersResponse)++-- | Undocumented member.+listAnswersResponse_milestoneNumber :: Lens.Lens' ListAnswersResponse (Prelude.Maybe Prelude.Natural)+listAnswersResponse_milestoneNumber = Lens.lens (\ListAnswersResponse' {milestoneNumber} -> milestoneNumber) (\s@ListAnswersResponse' {} a -> s {milestoneNumber = a} :: ListAnswersResponse)++-- | Undocumented member.+listAnswersResponse_nextToken :: Lens.Lens' ListAnswersResponse (Prelude.Maybe Prelude.Text)+listAnswersResponse_nextToken = Lens.lens (\ListAnswersResponse' {nextToken} -> nextToken) (\s@ListAnswersResponse' {} a -> s {nextToken = a} :: ListAnswersResponse)++-- | Undocumented member.+listAnswersResponse_workloadId :: Lens.Lens' ListAnswersResponse (Prelude.Maybe Prelude.Text)+listAnswersResponse_workloadId = Lens.lens (\ListAnswersResponse' {workloadId} -> workloadId) (\s@ListAnswersResponse' {} a -> s {workloadId = a} :: ListAnswersResponse)++-- | The response's http status code.+listAnswersResponse_httpStatus :: Lens.Lens' ListAnswersResponse Prelude.Int+listAnswersResponse_httpStatus = Lens.lens (\ListAnswersResponse' {httpStatus} -> httpStatus) (\s@ListAnswersResponse' {} a -> s {httpStatus = a} :: ListAnswersResponse)++instance Prelude.NFData ListAnswersResponse where+ rnf ListAnswersResponse' {..} =+ Prelude.rnf answerSummaries+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/ListCheckDetails.hs view
@@ -0,0 +1,270 @@+{-# 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.WellArchitected.ListCheckDetails+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List of Trusted Advisor check details by account related to the+-- workload.+module Amazonka.WellArchitected.ListCheckDetails+ ( -- * Creating a Request+ ListCheckDetails (..),+ newListCheckDetails,++ -- * Request Lenses+ listCheckDetails_maxResults,+ listCheckDetails_nextToken,+ listCheckDetails_workloadId,+ listCheckDetails_lensArn,+ listCheckDetails_pillarId,+ listCheckDetails_questionId,+ listCheckDetails_choiceId,++ -- * Destructuring the Response+ ListCheckDetailsResponse (..),+ newListCheckDetailsResponse,++ -- * Response Lenses+ listCheckDetailsResponse_checkDetails,+ listCheckDetailsResponse_nextToken,+ listCheckDetailsResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newListCheckDetails' smart constructor.+data ListCheckDetails = ListCheckDetails'+ { maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Text,+ -- | Well-Architected Lens ARN.+ lensArn :: Prelude.Text,+ pillarId :: Prelude.Text,+ questionId :: Prelude.Text,+ choiceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListCheckDetails' 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:+--+-- 'maxResults', 'listCheckDetails_maxResults' - Undocumented member.+--+-- 'nextToken', 'listCheckDetails_nextToken' - Undocumented member.+--+-- 'workloadId', 'listCheckDetails_workloadId' - Undocumented member.+--+-- 'lensArn', 'listCheckDetails_lensArn' - Well-Architected Lens ARN.+--+-- 'pillarId', 'listCheckDetails_pillarId' - Undocumented member.+--+-- 'questionId', 'listCheckDetails_questionId' - Undocumented member.+--+-- 'choiceId', 'listCheckDetails_choiceId' - Undocumented member.+newListCheckDetails ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensArn'+ Prelude.Text ->+ -- | 'pillarId'+ Prelude.Text ->+ -- | 'questionId'+ Prelude.Text ->+ -- | 'choiceId'+ Prelude.Text ->+ ListCheckDetails+newListCheckDetails+ pWorkloadId_+ pLensArn_+ pPillarId_+ pQuestionId_+ pChoiceId_ =+ ListCheckDetails'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workloadId = pWorkloadId_,+ lensArn = pLensArn_,+ pillarId = pPillarId_,+ questionId = pQuestionId_,+ choiceId = pChoiceId_+ }++-- | Undocumented member.+listCheckDetails_maxResults :: Lens.Lens' ListCheckDetails (Prelude.Maybe Prelude.Natural)+listCheckDetails_maxResults = Lens.lens (\ListCheckDetails' {maxResults} -> maxResults) (\s@ListCheckDetails' {} a -> s {maxResults = a} :: ListCheckDetails)++-- | Undocumented member.+listCheckDetails_nextToken :: Lens.Lens' ListCheckDetails (Prelude.Maybe Prelude.Text)+listCheckDetails_nextToken = Lens.lens (\ListCheckDetails' {nextToken} -> nextToken) (\s@ListCheckDetails' {} a -> s {nextToken = a} :: ListCheckDetails)++-- | Undocumented member.+listCheckDetails_workloadId :: Lens.Lens' ListCheckDetails Prelude.Text+listCheckDetails_workloadId = Lens.lens (\ListCheckDetails' {workloadId} -> workloadId) (\s@ListCheckDetails' {} a -> s {workloadId = a} :: ListCheckDetails)++-- | Well-Architected Lens ARN.+listCheckDetails_lensArn :: Lens.Lens' ListCheckDetails Prelude.Text+listCheckDetails_lensArn = Lens.lens (\ListCheckDetails' {lensArn} -> lensArn) (\s@ListCheckDetails' {} a -> s {lensArn = a} :: ListCheckDetails)++-- | Undocumented member.+listCheckDetails_pillarId :: Lens.Lens' ListCheckDetails Prelude.Text+listCheckDetails_pillarId = Lens.lens (\ListCheckDetails' {pillarId} -> pillarId) (\s@ListCheckDetails' {} a -> s {pillarId = a} :: ListCheckDetails)++-- | Undocumented member.+listCheckDetails_questionId :: Lens.Lens' ListCheckDetails Prelude.Text+listCheckDetails_questionId = Lens.lens (\ListCheckDetails' {questionId} -> questionId) (\s@ListCheckDetails' {} a -> s {questionId = a} :: ListCheckDetails)++-- | Undocumented member.+listCheckDetails_choiceId :: Lens.Lens' ListCheckDetails Prelude.Text+listCheckDetails_choiceId = Lens.lens (\ListCheckDetails' {choiceId} -> choiceId) (\s@ListCheckDetails' {} a -> s {choiceId = a} :: ListCheckDetails)++instance Core.AWSRequest ListCheckDetails where+ type+ AWSResponse ListCheckDetails =+ ListCheckDetailsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListCheckDetailsResponse'+ Prelude.<$> (x Data..?> "CheckDetails" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListCheckDetails where+ hashWithSalt _salt ListCheckDetails' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` questionId+ `Prelude.hashWithSalt` choiceId++instance Prelude.NFData ListCheckDetails where+ rnf ListCheckDetails' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf questionId+ `Prelude.seq` Prelude.rnf choiceId++instance Data.ToHeaders ListCheckDetails where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListCheckDetails where+ toJSON ListCheckDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("LensArn" Data..= lensArn),+ Prelude.Just ("PillarId" Data..= pillarId),+ Prelude.Just ("QuestionId" Data..= questionId),+ Prelude.Just ("ChoiceId" Data..= choiceId)+ ]+ )++instance Data.ToPath ListCheckDetails where+ toPath ListCheckDetails' {..} =+ Prelude.mconcat+ ["/workloads/", Data.toBS workloadId, "/checks"]++instance Data.ToQuery ListCheckDetails where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListCheckDetailsResponse' smart constructor.+data ListCheckDetailsResponse = ListCheckDetailsResponse'+ { -- | The details about the Trusted Advisor checks related to the+ -- Well-Architected best practice.+ checkDetails :: Prelude.Maybe [CheckDetail],+ nextToken :: 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 'ListCheckDetailsResponse' 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:+--+-- 'checkDetails', 'listCheckDetailsResponse_checkDetails' - The details about the Trusted Advisor checks related to the+-- Well-Architected best practice.+--+-- 'nextToken', 'listCheckDetailsResponse_nextToken' - Undocumented member.+--+-- 'httpStatus', 'listCheckDetailsResponse_httpStatus' - The response's http status code.+newListCheckDetailsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListCheckDetailsResponse+newListCheckDetailsResponse pHttpStatus_ =+ ListCheckDetailsResponse'+ { checkDetails =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The details about the Trusted Advisor checks related to the+-- Well-Architected best practice.+listCheckDetailsResponse_checkDetails :: Lens.Lens' ListCheckDetailsResponse (Prelude.Maybe [CheckDetail])+listCheckDetailsResponse_checkDetails = Lens.lens (\ListCheckDetailsResponse' {checkDetails} -> checkDetails) (\s@ListCheckDetailsResponse' {} a -> s {checkDetails = a} :: ListCheckDetailsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+listCheckDetailsResponse_nextToken :: Lens.Lens' ListCheckDetailsResponse (Prelude.Maybe Prelude.Text)+listCheckDetailsResponse_nextToken = Lens.lens (\ListCheckDetailsResponse' {nextToken} -> nextToken) (\s@ListCheckDetailsResponse' {} a -> s {nextToken = a} :: ListCheckDetailsResponse)++-- | The response's http status code.+listCheckDetailsResponse_httpStatus :: Lens.Lens' ListCheckDetailsResponse Prelude.Int+listCheckDetailsResponse_httpStatus = Lens.lens (\ListCheckDetailsResponse' {httpStatus} -> httpStatus) (\s@ListCheckDetailsResponse' {} a -> s {httpStatus = a} :: ListCheckDetailsResponse)++instance Prelude.NFData ListCheckDetailsResponse where+ rnf ListCheckDetailsResponse' {..} =+ Prelude.rnf checkDetails+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/ListCheckSummaries.hs view
@@ -0,0 +1,273 @@+{-# 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.WellArchitected.ListCheckSummaries+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List of Trusted Advisor checks summarized for all accounts related to+-- the workload.+module Amazonka.WellArchitected.ListCheckSummaries+ ( -- * Creating a Request+ ListCheckSummaries (..),+ newListCheckSummaries,++ -- * Request Lenses+ listCheckSummaries_maxResults,+ listCheckSummaries_nextToken,+ listCheckSummaries_workloadId,+ listCheckSummaries_lensArn,+ listCheckSummaries_pillarId,+ listCheckSummaries_questionId,+ listCheckSummaries_choiceId,++ -- * Destructuring the Response+ ListCheckSummariesResponse (..),+ newListCheckSummariesResponse,++ -- * Response Lenses+ listCheckSummariesResponse_checkSummaries,+ listCheckSummariesResponse_nextToken,+ listCheckSummariesResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newListCheckSummaries' smart constructor.+data ListCheckSummaries = ListCheckSummaries'+ { maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Text,+ -- | Well-Architected Lens ARN.+ lensArn :: Prelude.Text,+ pillarId :: Prelude.Text,+ questionId :: Prelude.Text,+ choiceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListCheckSummaries' 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:+--+-- 'maxResults', 'listCheckSummaries_maxResults' - Undocumented member.+--+-- 'nextToken', 'listCheckSummaries_nextToken' - Undocumented member.+--+-- 'workloadId', 'listCheckSummaries_workloadId' - Undocumented member.+--+-- 'lensArn', 'listCheckSummaries_lensArn' - Well-Architected Lens ARN.+--+-- 'pillarId', 'listCheckSummaries_pillarId' - Undocumented member.+--+-- 'questionId', 'listCheckSummaries_questionId' - Undocumented member.+--+-- 'choiceId', 'listCheckSummaries_choiceId' - Undocumented member.+newListCheckSummaries ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensArn'+ Prelude.Text ->+ -- | 'pillarId'+ Prelude.Text ->+ -- | 'questionId'+ Prelude.Text ->+ -- | 'choiceId'+ Prelude.Text ->+ ListCheckSummaries+newListCheckSummaries+ pWorkloadId_+ pLensArn_+ pPillarId_+ pQuestionId_+ pChoiceId_ =+ ListCheckSummaries'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workloadId = pWorkloadId_,+ lensArn = pLensArn_,+ pillarId = pPillarId_,+ questionId = pQuestionId_,+ choiceId = pChoiceId_+ }++-- | Undocumented member.+listCheckSummaries_maxResults :: Lens.Lens' ListCheckSummaries (Prelude.Maybe Prelude.Natural)+listCheckSummaries_maxResults = Lens.lens (\ListCheckSummaries' {maxResults} -> maxResults) (\s@ListCheckSummaries' {} a -> s {maxResults = a} :: ListCheckSummaries)++-- | Undocumented member.+listCheckSummaries_nextToken :: Lens.Lens' ListCheckSummaries (Prelude.Maybe Prelude.Text)+listCheckSummaries_nextToken = Lens.lens (\ListCheckSummaries' {nextToken} -> nextToken) (\s@ListCheckSummaries' {} a -> s {nextToken = a} :: ListCheckSummaries)++-- | Undocumented member.+listCheckSummaries_workloadId :: Lens.Lens' ListCheckSummaries Prelude.Text+listCheckSummaries_workloadId = Lens.lens (\ListCheckSummaries' {workloadId} -> workloadId) (\s@ListCheckSummaries' {} a -> s {workloadId = a} :: ListCheckSummaries)++-- | Well-Architected Lens ARN.+listCheckSummaries_lensArn :: Lens.Lens' ListCheckSummaries Prelude.Text+listCheckSummaries_lensArn = Lens.lens (\ListCheckSummaries' {lensArn} -> lensArn) (\s@ListCheckSummaries' {} a -> s {lensArn = a} :: ListCheckSummaries)++-- | Undocumented member.+listCheckSummaries_pillarId :: Lens.Lens' ListCheckSummaries Prelude.Text+listCheckSummaries_pillarId = Lens.lens (\ListCheckSummaries' {pillarId} -> pillarId) (\s@ListCheckSummaries' {} a -> s {pillarId = a} :: ListCheckSummaries)++-- | Undocumented member.+listCheckSummaries_questionId :: Lens.Lens' ListCheckSummaries Prelude.Text+listCheckSummaries_questionId = Lens.lens (\ListCheckSummaries' {questionId} -> questionId) (\s@ListCheckSummaries' {} a -> s {questionId = a} :: ListCheckSummaries)++-- | Undocumented member.+listCheckSummaries_choiceId :: Lens.Lens' ListCheckSummaries Prelude.Text+listCheckSummaries_choiceId = Lens.lens (\ListCheckSummaries' {choiceId} -> choiceId) (\s@ListCheckSummaries' {} a -> s {choiceId = a} :: ListCheckSummaries)++instance Core.AWSRequest ListCheckSummaries where+ type+ AWSResponse ListCheckSummaries =+ ListCheckSummariesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListCheckSummariesResponse'+ Prelude.<$> (x Data..?> "CheckSummaries" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListCheckSummaries where+ hashWithSalt _salt ListCheckSummaries' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` questionId+ `Prelude.hashWithSalt` choiceId++instance Prelude.NFData ListCheckSummaries where+ rnf ListCheckSummaries' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf questionId+ `Prelude.seq` Prelude.rnf choiceId++instance Data.ToHeaders ListCheckSummaries where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListCheckSummaries where+ toJSON ListCheckSummaries' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("LensArn" Data..= lensArn),+ Prelude.Just ("PillarId" Data..= pillarId),+ Prelude.Just ("QuestionId" Data..= questionId),+ Prelude.Just ("ChoiceId" Data..= choiceId)+ ]+ )++instance Data.ToPath ListCheckSummaries where+ toPath ListCheckSummaries' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/checkSummaries"+ ]++instance Data.ToQuery ListCheckSummaries where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListCheckSummariesResponse' smart constructor.+data ListCheckSummariesResponse = ListCheckSummariesResponse'+ { -- | List of Trusted Advisor summaries related to the Well-Architected best+ -- practice.+ checkSummaries :: Prelude.Maybe [CheckSummary],+ nextToken :: 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 'ListCheckSummariesResponse' 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:+--+-- 'checkSummaries', 'listCheckSummariesResponse_checkSummaries' - List of Trusted Advisor summaries related to the Well-Architected best+-- practice.+--+-- 'nextToken', 'listCheckSummariesResponse_nextToken' - Undocumented member.+--+-- 'httpStatus', 'listCheckSummariesResponse_httpStatus' - The response's http status code.+newListCheckSummariesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListCheckSummariesResponse+newListCheckSummariesResponse pHttpStatus_ =+ ListCheckSummariesResponse'+ { checkSummaries =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | List of Trusted Advisor summaries related to the Well-Architected best+-- practice.+listCheckSummariesResponse_checkSummaries :: Lens.Lens' ListCheckSummariesResponse (Prelude.Maybe [CheckSummary])+listCheckSummariesResponse_checkSummaries = Lens.lens (\ListCheckSummariesResponse' {checkSummaries} -> checkSummaries) (\s@ListCheckSummariesResponse' {} a -> s {checkSummaries = a} :: ListCheckSummariesResponse) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+listCheckSummariesResponse_nextToken :: Lens.Lens' ListCheckSummariesResponse (Prelude.Maybe Prelude.Text)+listCheckSummariesResponse_nextToken = Lens.lens (\ListCheckSummariesResponse' {nextToken} -> nextToken) (\s@ListCheckSummariesResponse' {} a -> s {nextToken = a} :: ListCheckSummariesResponse)++-- | The response's http status code.+listCheckSummariesResponse_httpStatus :: Lens.Lens' ListCheckSummariesResponse Prelude.Int+listCheckSummariesResponse_httpStatus = Lens.lens (\ListCheckSummariesResponse' {httpStatus} -> httpStatus) (\s@ListCheckSummariesResponse' {} a -> s {httpStatus = a} :: ListCheckSummariesResponse)++instance Prelude.NFData ListCheckSummariesResponse where+ rnf ListCheckSummariesResponse' {..} =+ Prelude.rnf checkSummaries+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/ListLensReviewImprovements.hs view
@@ -0,0 +1,299 @@+{-# 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.WellArchitected.ListLensReviewImprovements+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List lens review improvements.+module Amazonka.WellArchitected.ListLensReviewImprovements+ ( -- * Creating a Request+ ListLensReviewImprovements (..),+ newListLensReviewImprovements,++ -- * Request Lenses+ listLensReviewImprovements_maxResults,+ listLensReviewImprovements_milestoneNumber,+ listLensReviewImprovements_nextToken,+ listLensReviewImprovements_pillarId,+ listLensReviewImprovements_workloadId,+ listLensReviewImprovements_lensAlias,++ -- * Destructuring the Response+ ListLensReviewImprovementsResponse (..),+ newListLensReviewImprovementsResponse,++ -- * Response Lenses+ listLensReviewImprovementsResponse_improvementSummaries,+ listLensReviewImprovementsResponse_lensAlias,+ listLensReviewImprovementsResponse_lensArn,+ listLensReviewImprovementsResponse_milestoneNumber,+ listLensReviewImprovementsResponse_nextToken,+ listLensReviewImprovementsResponse_workloadId,+ listLensReviewImprovementsResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to list lens review improvements.+--+-- /See:/ 'newListLensReviewImprovements' smart constructor.+data ListLensReviewImprovements = ListLensReviewImprovements'+ { -- | The maximum number of results to return for this request.+ maxResults :: Prelude.Maybe Prelude.Natural,+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ pillarId :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Text,+ lensAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListLensReviewImprovements' 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:+--+-- 'maxResults', 'listLensReviewImprovements_maxResults' - The maximum number of results to return for this request.+--+-- 'milestoneNumber', 'listLensReviewImprovements_milestoneNumber' - Undocumented member.+--+-- 'nextToken', 'listLensReviewImprovements_nextToken' - Undocumented member.+--+-- 'pillarId', 'listLensReviewImprovements_pillarId' - Undocumented member.+--+-- 'workloadId', 'listLensReviewImprovements_workloadId' - Undocumented member.+--+-- 'lensAlias', 'listLensReviewImprovements_lensAlias' - Undocumented member.+newListLensReviewImprovements ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensAlias'+ Prelude.Text ->+ ListLensReviewImprovements+newListLensReviewImprovements+ pWorkloadId_+ pLensAlias_ =+ ListLensReviewImprovements'+ { maxResults =+ Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ pillarId = Prelude.Nothing,+ workloadId = pWorkloadId_,+ lensAlias = pLensAlias_+ }++-- | The maximum number of results to return for this request.+listLensReviewImprovements_maxResults :: Lens.Lens' ListLensReviewImprovements (Prelude.Maybe Prelude.Natural)+listLensReviewImprovements_maxResults = Lens.lens (\ListLensReviewImprovements' {maxResults} -> maxResults) (\s@ListLensReviewImprovements' {} a -> s {maxResults = a} :: ListLensReviewImprovements)++-- | Undocumented member.+listLensReviewImprovements_milestoneNumber :: Lens.Lens' ListLensReviewImprovements (Prelude.Maybe Prelude.Natural)+listLensReviewImprovements_milestoneNumber = Lens.lens (\ListLensReviewImprovements' {milestoneNumber} -> milestoneNumber) (\s@ListLensReviewImprovements' {} a -> s {milestoneNumber = a} :: ListLensReviewImprovements)++-- | Undocumented member.+listLensReviewImprovements_nextToken :: Lens.Lens' ListLensReviewImprovements (Prelude.Maybe Prelude.Text)+listLensReviewImprovements_nextToken = Lens.lens (\ListLensReviewImprovements' {nextToken} -> nextToken) (\s@ListLensReviewImprovements' {} a -> s {nextToken = a} :: ListLensReviewImprovements)++-- | Undocumented member.+listLensReviewImprovements_pillarId :: Lens.Lens' ListLensReviewImprovements (Prelude.Maybe Prelude.Text)+listLensReviewImprovements_pillarId = Lens.lens (\ListLensReviewImprovements' {pillarId} -> pillarId) (\s@ListLensReviewImprovements' {} a -> s {pillarId = a} :: ListLensReviewImprovements)++-- | Undocumented member.+listLensReviewImprovements_workloadId :: Lens.Lens' ListLensReviewImprovements Prelude.Text+listLensReviewImprovements_workloadId = Lens.lens (\ListLensReviewImprovements' {workloadId} -> workloadId) (\s@ListLensReviewImprovements' {} a -> s {workloadId = a} :: ListLensReviewImprovements)++-- | Undocumented member.+listLensReviewImprovements_lensAlias :: Lens.Lens' ListLensReviewImprovements Prelude.Text+listLensReviewImprovements_lensAlias = Lens.lens (\ListLensReviewImprovements' {lensAlias} -> lensAlias) (\s@ListLensReviewImprovements' {} a -> s {lensAlias = a} :: ListLensReviewImprovements)++instance Core.AWSRequest ListLensReviewImprovements where+ type+ AWSResponse ListLensReviewImprovements =+ ListLensReviewImprovementsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListLensReviewImprovementsResponse'+ Prelude.<$> ( x+ Data..?> "ImprovementSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "LensAlias")+ Prelude.<*> (x Data..?> "LensArn")+ Prelude.<*> (x Data..?> "MilestoneNumber")+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListLensReviewImprovements where+ hashWithSalt _salt ListLensReviewImprovements' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` milestoneNumber+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensAlias++instance Prelude.NFData ListLensReviewImprovements where+ rnf ListLensReviewImprovements' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensAlias++instance Data.ToHeaders ListLensReviewImprovements where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListLensReviewImprovements where+ toPath ListLensReviewImprovements' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/lensReviews/",+ Data.toBS lensAlias,+ "/improvements"+ ]++instance Data.ToQuery ListLensReviewImprovements where+ toQuery ListLensReviewImprovements' {..} =+ Prelude.mconcat+ [ "MaxResults" Data.=: maxResults,+ "MilestoneNumber" Data.=: milestoneNumber,+ "NextToken" Data.=: nextToken,+ "PillarId" Data.=: pillarId+ ]++-- | Output of a list lens review improvements call.+--+-- /See:/ 'newListLensReviewImprovementsResponse' smart constructor.+data ListLensReviewImprovementsResponse = ListLensReviewImprovementsResponse'+ { improvementSummaries :: Prelude.Maybe [ImprovementSummary],+ lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ workloadId :: 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 'ListLensReviewImprovementsResponse' 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:+--+-- 'improvementSummaries', 'listLensReviewImprovementsResponse_improvementSummaries' - Undocumented member.+--+-- 'lensAlias', 'listLensReviewImprovementsResponse_lensAlias' - Undocumented member.+--+-- 'lensArn', 'listLensReviewImprovementsResponse_lensArn' - The ARN for the lens.+--+-- 'milestoneNumber', 'listLensReviewImprovementsResponse_milestoneNumber' - Undocumented member.+--+-- 'nextToken', 'listLensReviewImprovementsResponse_nextToken' - Undocumented member.+--+-- 'workloadId', 'listLensReviewImprovementsResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'listLensReviewImprovementsResponse_httpStatus' - The response's http status code.+newListLensReviewImprovementsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListLensReviewImprovementsResponse+newListLensReviewImprovementsResponse pHttpStatus_ =+ ListLensReviewImprovementsResponse'+ { improvementSummaries =+ Prelude.Nothing,+ lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+listLensReviewImprovementsResponse_improvementSummaries :: Lens.Lens' ListLensReviewImprovementsResponse (Prelude.Maybe [ImprovementSummary])+listLensReviewImprovementsResponse_improvementSummaries = Lens.lens (\ListLensReviewImprovementsResponse' {improvementSummaries} -> improvementSummaries) (\s@ListLensReviewImprovementsResponse' {} a -> s {improvementSummaries = a} :: ListLensReviewImprovementsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+listLensReviewImprovementsResponse_lensAlias :: Lens.Lens' ListLensReviewImprovementsResponse (Prelude.Maybe Prelude.Text)+listLensReviewImprovementsResponse_lensAlias = Lens.lens (\ListLensReviewImprovementsResponse' {lensAlias} -> lensAlias) (\s@ListLensReviewImprovementsResponse' {} a -> s {lensAlias = a} :: ListLensReviewImprovementsResponse)++-- | The ARN for the lens.+listLensReviewImprovementsResponse_lensArn :: Lens.Lens' ListLensReviewImprovementsResponse (Prelude.Maybe Prelude.Text)+listLensReviewImprovementsResponse_lensArn = Lens.lens (\ListLensReviewImprovementsResponse' {lensArn} -> lensArn) (\s@ListLensReviewImprovementsResponse' {} a -> s {lensArn = a} :: ListLensReviewImprovementsResponse)++-- | Undocumented member.+listLensReviewImprovementsResponse_milestoneNumber :: Lens.Lens' ListLensReviewImprovementsResponse (Prelude.Maybe Prelude.Natural)+listLensReviewImprovementsResponse_milestoneNumber = Lens.lens (\ListLensReviewImprovementsResponse' {milestoneNumber} -> milestoneNumber) (\s@ListLensReviewImprovementsResponse' {} a -> s {milestoneNumber = a} :: ListLensReviewImprovementsResponse)++-- | Undocumented member.+listLensReviewImprovementsResponse_nextToken :: Lens.Lens' ListLensReviewImprovementsResponse (Prelude.Maybe Prelude.Text)+listLensReviewImprovementsResponse_nextToken = Lens.lens (\ListLensReviewImprovementsResponse' {nextToken} -> nextToken) (\s@ListLensReviewImprovementsResponse' {} a -> s {nextToken = a} :: ListLensReviewImprovementsResponse)++-- | Undocumented member.+listLensReviewImprovementsResponse_workloadId :: Lens.Lens' ListLensReviewImprovementsResponse (Prelude.Maybe Prelude.Text)+listLensReviewImprovementsResponse_workloadId = Lens.lens (\ListLensReviewImprovementsResponse' {workloadId} -> workloadId) (\s@ListLensReviewImprovementsResponse' {} a -> s {workloadId = a} :: ListLensReviewImprovementsResponse)++-- | The response's http status code.+listLensReviewImprovementsResponse_httpStatus :: Lens.Lens' ListLensReviewImprovementsResponse Prelude.Int+listLensReviewImprovementsResponse_httpStatus = Lens.lens (\ListLensReviewImprovementsResponse' {httpStatus} -> httpStatus) (\s@ListLensReviewImprovementsResponse' {} a -> s {httpStatus = a} :: ListLensReviewImprovementsResponse)++instance+ Prelude.NFData+ ListLensReviewImprovementsResponse+ where+ rnf ListLensReviewImprovementsResponse' {..} =+ Prelude.rnf improvementSummaries+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/ListLensReviews.hs view
@@ -0,0 +1,239 @@+{-# 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.WellArchitected.ListLensReviews+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List lens reviews.+module Amazonka.WellArchitected.ListLensReviews+ ( -- * Creating a Request+ ListLensReviews (..),+ newListLensReviews,++ -- * Request Lenses+ listLensReviews_maxResults,+ listLensReviews_milestoneNumber,+ listLensReviews_nextToken,+ listLensReviews_workloadId,++ -- * Destructuring the Response+ ListLensReviewsResponse (..),+ newListLensReviewsResponse,++ -- * Response Lenses+ listLensReviewsResponse_lensReviewSummaries,+ listLensReviewsResponse_milestoneNumber,+ listLensReviewsResponse_nextToken,+ listLensReviewsResponse_workloadId,+ listLensReviewsResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to list lens reviews.+--+-- /See:/ 'newListLensReviews' smart constructor.+data ListLensReviews = ListLensReviews'+ { maxResults :: Prelude.Maybe Prelude.Natural,+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListLensReviews' 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:+--+-- 'maxResults', 'listLensReviews_maxResults' - Undocumented member.+--+-- 'milestoneNumber', 'listLensReviews_milestoneNumber' - Undocumented member.+--+-- 'nextToken', 'listLensReviews_nextToken' - Undocumented member.+--+-- 'workloadId', 'listLensReviews_workloadId' - Undocumented member.+newListLensReviews ::+ -- | 'workloadId'+ Prelude.Text ->+ ListLensReviews+newListLensReviews pWorkloadId_ =+ ListLensReviews'+ { maxResults = Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workloadId = pWorkloadId_+ }++-- | Undocumented member.+listLensReviews_maxResults :: Lens.Lens' ListLensReviews (Prelude.Maybe Prelude.Natural)+listLensReviews_maxResults = Lens.lens (\ListLensReviews' {maxResults} -> maxResults) (\s@ListLensReviews' {} a -> s {maxResults = a} :: ListLensReviews)++-- | Undocumented member.+listLensReviews_milestoneNumber :: Lens.Lens' ListLensReviews (Prelude.Maybe Prelude.Natural)+listLensReviews_milestoneNumber = Lens.lens (\ListLensReviews' {milestoneNumber} -> milestoneNumber) (\s@ListLensReviews' {} a -> s {milestoneNumber = a} :: ListLensReviews)++-- | Undocumented member.+listLensReviews_nextToken :: Lens.Lens' ListLensReviews (Prelude.Maybe Prelude.Text)+listLensReviews_nextToken = Lens.lens (\ListLensReviews' {nextToken} -> nextToken) (\s@ListLensReviews' {} a -> s {nextToken = a} :: ListLensReviews)++-- | Undocumented member.+listLensReviews_workloadId :: Lens.Lens' ListLensReviews Prelude.Text+listLensReviews_workloadId = Lens.lens (\ListLensReviews' {workloadId} -> workloadId) (\s@ListLensReviews' {} a -> s {workloadId = a} :: ListLensReviews)++instance Core.AWSRequest ListLensReviews where+ type+ AWSResponse ListLensReviews =+ ListLensReviewsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListLensReviewsResponse'+ Prelude.<$> ( x+ Data..?> "LensReviewSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "MilestoneNumber")+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListLensReviews where+ hashWithSalt _salt ListLensReviews' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` milestoneNumber+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workloadId++instance Prelude.NFData ListLensReviews where+ rnf ListLensReviews' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadId++instance Data.ToHeaders ListLensReviews where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListLensReviews where+ toPath ListLensReviews' {..} =+ Prelude.mconcat+ ["/workloads/", Data.toBS workloadId, "/lensReviews"]++instance Data.ToQuery ListLensReviews where+ toQuery ListLensReviews' {..} =+ Prelude.mconcat+ [ "MaxResults" Data.=: maxResults,+ "MilestoneNumber" Data.=: milestoneNumber,+ "NextToken" Data.=: nextToken+ ]++-- | Output of a list lens reviews call.+--+-- /See:/ 'newListLensReviewsResponse' smart constructor.+data ListLensReviewsResponse = ListLensReviewsResponse'+ { lensReviewSummaries :: Prelude.Maybe [LensReviewSummary],+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ workloadId :: 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 'ListLensReviewsResponse' 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:+--+-- 'lensReviewSummaries', 'listLensReviewsResponse_lensReviewSummaries' - Undocumented member.+--+-- 'milestoneNumber', 'listLensReviewsResponse_milestoneNumber' - Undocumented member.+--+-- 'nextToken', 'listLensReviewsResponse_nextToken' - Undocumented member.+--+-- 'workloadId', 'listLensReviewsResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'listLensReviewsResponse_httpStatus' - The response's http status code.+newListLensReviewsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListLensReviewsResponse+newListLensReviewsResponse pHttpStatus_ =+ ListLensReviewsResponse'+ { lensReviewSummaries =+ Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+listLensReviewsResponse_lensReviewSummaries :: Lens.Lens' ListLensReviewsResponse (Prelude.Maybe [LensReviewSummary])+listLensReviewsResponse_lensReviewSummaries = Lens.lens (\ListLensReviewsResponse' {lensReviewSummaries} -> lensReviewSummaries) (\s@ListLensReviewsResponse' {} a -> s {lensReviewSummaries = a} :: ListLensReviewsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+listLensReviewsResponse_milestoneNumber :: Lens.Lens' ListLensReviewsResponse (Prelude.Maybe Prelude.Natural)+listLensReviewsResponse_milestoneNumber = Lens.lens (\ListLensReviewsResponse' {milestoneNumber} -> milestoneNumber) (\s@ListLensReviewsResponse' {} a -> s {milestoneNumber = a} :: ListLensReviewsResponse)++-- | Undocumented member.+listLensReviewsResponse_nextToken :: Lens.Lens' ListLensReviewsResponse (Prelude.Maybe Prelude.Text)+listLensReviewsResponse_nextToken = Lens.lens (\ListLensReviewsResponse' {nextToken} -> nextToken) (\s@ListLensReviewsResponse' {} a -> s {nextToken = a} :: ListLensReviewsResponse)++-- | Undocumented member.+listLensReviewsResponse_workloadId :: Lens.Lens' ListLensReviewsResponse (Prelude.Maybe Prelude.Text)+listLensReviewsResponse_workloadId = Lens.lens (\ListLensReviewsResponse' {workloadId} -> workloadId) (\s@ListLensReviewsResponse' {} a -> s {workloadId = a} :: ListLensReviewsResponse)++-- | The response's http status code.+listLensReviewsResponse_httpStatus :: Lens.Lens' ListLensReviewsResponse Prelude.Int+listLensReviewsResponse_httpStatus = Lens.lens (\ListLensReviewsResponse' {httpStatus} -> httpStatus) (\s@ListLensReviewsResponse' {} a -> s {httpStatus = a} :: ListLensReviewsResponse)++instance Prelude.NFData ListLensReviewsResponse where+ rnf ListLensReviewsResponse' {..} =+ Prelude.rnf lensReviewSummaries+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
@@ -0,0 +1,231 @@+{-# 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.WellArchitected.ListLensShares+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List the lens shares associated with the lens.+module Amazonka.WellArchitected.ListLensShares+ ( -- * Creating a Request+ ListLensShares (..),+ newListLensShares,++ -- * Request Lenses+ listLensShares_maxResults,+ listLensShares_nextToken,+ listLensShares_sharedWithPrefix,+ listLensShares_status,+ listLensShares_lensAlias,++ -- * Destructuring the Response+ ListLensSharesResponse (..),+ newListLensSharesResponse,++ -- * Response Lenses+ listLensSharesResponse_lensShareSummaries,+ listLensSharesResponse_nextToken,+ listLensSharesResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newListLensShares' smart constructor.+data ListLensShares = ListLensShares'+ { -- | The maximum number of results to return for this request.+ maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID, IAM role, organization ID, or+ -- organizational unit (OU) ID with which the lens is shared.+ sharedWithPrefix :: Prelude.Maybe Prelude.Text,+ status :: Prelude.Maybe ShareStatus,+ lensAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListLensShares' 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:+--+-- 'maxResults', 'listLensShares_maxResults' - The maximum number of results to return for this request.+--+-- 'nextToken', 'listLensShares_nextToken' - Undocumented member.+--+-- 'sharedWithPrefix', 'listLensShares_sharedWithPrefix' - The Amazon Web Services account ID, IAM role, organization ID, or+-- organizational unit (OU) ID with which the lens is shared.+--+-- 'status', 'listLensShares_status' - Undocumented member.+--+-- 'lensAlias', 'listLensShares_lensAlias' - Undocumented member.+newListLensShares ::+ -- | 'lensAlias'+ Prelude.Text ->+ ListLensShares+newListLensShares pLensAlias_ =+ ListLensShares'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sharedWithPrefix = Prelude.Nothing,+ status = Prelude.Nothing,+ lensAlias = pLensAlias_+ }++-- | The maximum number of results to return for this request.+listLensShares_maxResults :: Lens.Lens' ListLensShares (Prelude.Maybe Prelude.Natural)+listLensShares_maxResults = Lens.lens (\ListLensShares' {maxResults} -> maxResults) (\s@ListLensShares' {} a -> s {maxResults = a} :: ListLensShares)++-- | Undocumented member.+listLensShares_nextToken :: Lens.Lens' ListLensShares (Prelude.Maybe Prelude.Text)+listLensShares_nextToken = Lens.lens (\ListLensShares' {nextToken} -> nextToken) (\s@ListLensShares' {} a -> s {nextToken = a} :: ListLensShares)++-- | The Amazon Web Services account ID, IAM role, organization ID, or+-- organizational unit (OU) ID with which the lens is shared.+listLensShares_sharedWithPrefix :: Lens.Lens' ListLensShares (Prelude.Maybe Prelude.Text)+listLensShares_sharedWithPrefix = Lens.lens (\ListLensShares' {sharedWithPrefix} -> sharedWithPrefix) (\s@ListLensShares' {} a -> s {sharedWithPrefix = a} :: ListLensShares)++-- | Undocumented member.+listLensShares_status :: Lens.Lens' ListLensShares (Prelude.Maybe ShareStatus)+listLensShares_status = Lens.lens (\ListLensShares' {status} -> status) (\s@ListLensShares' {} a -> s {status = a} :: ListLensShares)++-- | Undocumented member.+listLensShares_lensAlias :: Lens.Lens' ListLensShares Prelude.Text+listLensShares_lensAlias = Lens.lens (\ListLensShares' {lensAlias} -> lensAlias) (\s@ListLensShares' {} a -> s {lensAlias = a} :: ListLensShares)++instance Core.AWSRequest ListLensShares where+ type+ AWSResponse ListLensShares =+ ListLensSharesResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListLensSharesResponse'+ Prelude.<$> ( x+ Data..?> "LensShareSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListLensShares where+ hashWithSalt _salt ListLensShares' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sharedWithPrefix+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` lensAlias++instance Prelude.NFData ListLensShares where+ rnf ListLensShares' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sharedWithPrefix+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf lensAlias++instance Data.ToHeaders ListLensShares where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListLensShares where+ toPath ListLensShares' {..} =+ Prelude.mconcat+ ["/lenses/", Data.toBS lensAlias, "/shares"]++instance Data.ToQuery ListLensShares where+ toQuery ListLensShares' {..} =+ Prelude.mconcat+ [ "MaxResults" Data.=: maxResults,+ "NextToken" Data.=: nextToken,+ "SharedWithPrefix" Data.=: sharedWithPrefix,+ "Status" Data.=: status+ ]++-- | /See:/ 'newListLensSharesResponse' smart constructor.+data ListLensSharesResponse = ListLensSharesResponse'+ { -- | A list of lens share summaries.+ lensShareSummaries :: Prelude.Maybe [LensShareSummary],+ nextToken :: 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 'ListLensSharesResponse' 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:+--+-- 'lensShareSummaries', 'listLensSharesResponse_lensShareSummaries' - A list of lens share summaries.+--+-- 'nextToken', 'listLensSharesResponse_nextToken' - Undocumented member.+--+-- 'httpStatus', 'listLensSharesResponse_httpStatus' - The response's http status code.+newListLensSharesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListLensSharesResponse+newListLensSharesResponse pHttpStatus_ =+ ListLensSharesResponse'+ { lensShareSummaries =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of lens share summaries.+listLensSharesResponse_lensShareSummaries :: Lens.Lens' ListLensSharesResponse (Prelude.Maybe [LensShareSummary])+listLensSharesResponse_lensShareSummaries = Lens.lens (\ListLensSharesResponse' {lensShareSummaries} -> lensShareSummaries) (\s@ListLensSharesResponse' {} a -> s {lensShareSummaries = a} :: ListLensSharesResponse) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+listLensSharesResponse_nextToken :: Lens.Lens' ListLensSharesResponse (Prelude.Maybe Prelude.Text)+listLensSharesResponse_nextToken = Lens.lens (\ListLensSharesResponse' {nextToken} -> nextToken) (\s@ListLensSharesResponse' {} a -> s {nextToken = a} :: ListLensSharesResponse)++-- | The response's http status code.+listLensSharesResponse_httpStatus :: Lens.Lens' ListLensSharesResponse Prelude.Int+listLensSharesResponse_httpStatus = Lens.lens (\ListLensSharesResponse' {httpStatus} -> httpStatus) (\s@ListLensSharesResponse' {} a -> s {httpStatus = a} :: ListLensSharesResponse)++instance Prelude.NFData ListLensSharesResponse where+ rnf ListLensSharesResponse' {..} =+ Prelude.rnf lensShareSummaries+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/ListLenses.hs view
@@ -0,0 +1,223 @@+{-# 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.WellArchitected.ListLenses+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List the available lenses.+module Amazonka.WellArchitected.ListLenses+ ( -- * Creating a Request+ ListLenses (..),+ newListLenses,++ -- * Request Lenses+ listLenses_lensName,+ listLenses_lensStatus,+ listLenses_lensType,+ listLenses_maxResults,+ listLenses_nextToken,++ -- * Destructuring the Response+ ListLensesResponse (..),+ newListLensesResponse,++ -- * Response Lenses+ listLensesResponse_lensSummaries,+ listLensesResponse_nextToken,+ listLensesResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to list lenses.+--+-- /See:/ 'newListLenses' smart constructor.+data ListLenses = ListLenses'+ { lensName :: Prelude.Maybe Prelude.Text,+ -- | The status of lenses to be returned.+ lensStatus :: Prelude.Maybe LensStatusType,+ -- | The type of lenses to be returned.+ lensType :: Prelude.Maybe LensType,+ maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListLenses' 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:+--+-- 'lensName', 'listLenses_lensName' - Undocumented member.+--+-- 'lensStatus', 'listLenses_lensStatus' - The status of lenses to be returned.+--+-- 'lensType', 'listLenses_lensType' - The type of lenses to be returned.+--+-- 'maxResults', 'listLenses_maxResults' - Undocumented member.+--+-- 'nextToken', 'listLenses_nextToken' - Undocumented member.+newListLenses ::+ ListLenses+newListLenses =+ ListLenses'+ { lensName = Prelude.Nothing,+ lensStatus = Prelude.Nothing,+ lensType = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Undocumented member.+listLenses_lensName :: Lens.Lens' ListLenses (Prelude.Maybe Prelude.Text)+listLenses_lensName = Lens.lens (\ListLenses' {lensName} -> lensName) (\s@ListLenses' {} a -> s {lensName = a} :: ListLenses)++-- | The status of lenses to be returned.+listLenses_lensStatus :: Lens.Lens' ListLenses (Prelude.Maybe LensStatusType)+listLenses_lensStatus = Lens.lens (\ListLenses' {lensStatus} -> lensStatus) (\s@ListLenses' {} a -> s {lensStatus = a} :: ListLenses)++-- | The type of lenses to be returned.+listLenses_lensType :: Lens.Lens' ListLenses (Prelude.Maybe LensType)+listLenses_lensType = Lens.lens (\ListLenses' {lensType} -> lensType) (\s@ListLenses' {} a -> s {lensType = a} :: ListLenses)++-- | Undocumented member.+listLenses_maxResults :: Lens.Lens' ListLenses (Prelude.Maybe Prelude.Natural)+listLenses_maxResults = Lens.lens (\ListLenses' {maxResults} -> maxResults) (\s@ListLenses' {} a -> s {maxResults = a} :: ListLenses)++-- | Undocumented member.+listLenses_nextToken :: Lens.Lens' ListLenses (Prelude.Maybe Prelude.Text)+listLenses_nextToken = Lens.lens (\ListLenses' {nextToken} -> nextToken) (\s@ListLenses' {} a -> s {nextToken = a} :: ListLenses)++instance Core.AWSRequest ListLenses where+ type AWSResponse ListLenses = ListLensesResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListLensesResponse'+ Prelude.<$> (x Data..?> "LensSummaries" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListLenses where+ hashWithSalt _salt ListLenses' {..} =+ _salt+ `Prelude.hashWithSalt` lensName+ `Prelude.hashWithSalt` lensStatus+ `Prelude.hashWithSalt` lensType+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListLenses where+ rnf ListLenses' {..} =+ Prelude.rnf lensName+ `Prelude.seq` Prelude.rnf lensStatus+ `Prelude.seq` Prelude.rnf lensType+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListLenses where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListLenses where+ toPath = Prelude.const "/lenses"++instance Data.ToQuery ListLenses where+ toQuery ListLenses' {..} =+ Prelude.mconcat+ [ "LensName" Data.=: lensName,+ "LensStatus" Data.=: lensStatus,+ "LensType" Data.=: lensType,+ "MaxResults" Data.=: maxResults,+ "NextToken" Data.=: nextToken+ ]++-- | Output of a list lenses call.+--+-- /See:/ 'newListLensesResponse' smart constructor.+data ListLensesResponse = ListLensesResponse'+ { lensSummaries :: Prelude.Maybe [LensSummary],+ nextToken :: 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 'ListLensesResponse' 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:+--+-- 'lensSummaries', 'listLensesResponse_lensSummaries' - Undocumented member.+--+-- 'nextToken', 'listLensesResponse_nextToken' - Undocumented member.+--+-- 'httpStatus', 'listLensesResponse_httpStatus' - The response's http status code.+newListLensesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListLensesResponse+newListLensesResponse pHttpStatus_ =+ ListLensesResponse'+ { lensSummaries =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+listLensesResponse_lensSummaries :: Lens.Lens' ListLensesResponse (Prelude.Maybe [LensSummary])+listLensesResponse_lensSummaries = Lens.lens (\ListLensesResponse' {lensSummaries} -> lensSummaries) (\s@ListLensesResponse' {} a -> s {lensSummaries = a} :: ListLensesResponse) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+listLensesResponse_nextToken :: Lens.Lens' ListLensesResponse (Prelude.Maybe Prelude.Text)+listLensesResponse_nextToken = Lens.lens (\ListLensesResponse' {nextToken} -> nextToken) (\s@ListLensesResponse' {} a -> s {nextToken = a} :: ListLensesResponse)++-- | The response's http status code.+listLensesResponse_httpStatus :: Lens.Lens' ListLensesResponse Prelude.Int+listLensesResponse_httpStatus = Lens.lens (\ListLensesResponse' {httpStatus} -> httpStatus) (\s@ListLensesResponse' {} a -> s {httpStatus = a} :: ListLensesResponse)++instance Prelude.NFData ListLensesResponse where+ rnf ListLensesResponse' {..} =+ Prelude.rnf lensSummaries+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/ListMilestones.hs view
@@ -0,0 +1,224 @@+{-# 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.WellArchitected.ListMilestones+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all milestones for an existing workload.+module Amazonka.WellArchitected.ListMilestones+ ( -- * Creating a Request+ ListMilestones (..),+ newListMilestones,++ -- * Request Lenses+ listMilestones_maxResults,+ listMilestones_nextToken,+ listMilestones_workloadId,++ -- * Destructuring the Response+ ListMilestonesResponse (..),+ newListMilestonesResponse,++ -- * Response Lenses+ listMilestonesResponse_milestoneSummaries,+ listMilestonesResponse_nextToken,+ listMilestonesResponse_workloadId,+ listMilestonesResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to list all milestones for a workload.+--+-- /See:/ 'newListMilestones' smart constructor.+data ListMilestones = ListMilestones'+ { maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListMilestones' 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:+--+-- 'maxResults', 'listMilestones_maxResults' - Undocumented member.+--+-- 'nextToken', 'listMilestones_nextToken' - Undocumented member.+--+-- 'workloadId', 'listMilestones_workloadId' - Undocumented member.+newListMilestones ::+ -- | 'workloadId'+ Prelude.Text ->+ ListMilestones+newListMilestones pWorkloadId_ =+ ListMilestones'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workloadId = pWorkloadId_+ }++-- | Undocumented member.+listMilestones_maxResults :: Lens.Lens' ListMilestones (Prelude.Maybe Prelude.Natural)+listMilestones_maxResults = Lens.lens (\ListMilestones' {maxResults} -> maxResults) (\s@ListMilestones' {} a -> s {maxResults = a} :: ListMilestones)++-- | Undocumented member.+listMilestones_nextToken :: Lens.Lens' ListMilestones (Prelude.Maybe Prelude.Text)+listMilestones_nextToken = Lens.lens (\ListMilestones' {nextToken} -> nextToken) (\s@ListMilestones' {} a -> s {nextToken = a} :: ListMilestones)++-- | Undocumented member.+listMilestones_workloadId :: Lens.Lens' ListMilestones Prelude.Text+listMilestones_workloadId = Lens.lens (\ListMilestones' {workloadId} -> workloadId) (\s@ListMilestones' {} a -> s {workloadId = a} :: ListMilestones)++instance Core.AWSRequest ListMilestones where+ type+ AWSResponse ListMilestones =+ ListMilestonesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListMilestonesResponse'+ Prelude.<$> ( x+ Data..?> "MilestoneSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListMilestones where+ hashWithSalt _salt ListMilestones' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workloadId++instance Prelude.NFData ListMilestones where+ rnf ListMilestones' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadId++instance Data.ToHeaders ListMilestones where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListMilestones where+ toJSON ListMilestones' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListMilestones where+ toPath ListMilestones' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/milestonesSummaries"+ ]++instance Data.ToQuery ListMilestones where+ toQuery = Prelude.const Prelude.mempty++-- | Output of a list milestones call.+--+-- /See:/ 'newListMilestonesResponse' smart constructor.+data ListMilestonesResponse = ListMilestonesResponse'+ { milestoneSummaries :: Prelude.Maybe [MilestoneSummary],+ nextToken :: Prelude.Maybe Prelude.Text,+ workloadId :: 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 'ListMilestonesResponse' 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:+--+-- 'milestoneSummaries', 'listMilestonesResponse_milestoneSummaries' - Undocumented member.+--+-- 'nextToken', 'listMilestonesResponse_nextToken' - Undocumented member.+--+-- 'workloadId', 'listMilestonesResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'listMilestonesResponse_httpStatus' - The response's http status code.+newListMilestonesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListMilestonesResponse+newListMilestonesResponse pHttpStatus_ =+ ListMilestonesResponse'+ { milestoneSummaries =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+listMilestonesResponse_milestoneSummaries :: Lens.Lens' ListMilestonesResponse (Prelude.Maybe [MilestoneSummary])+listMilestonesResponse_milestoneSummaries = Lens.lens (\ListMilestonesResponse' {milestoneSummaries} -> milestoneSummaries) (\s@ListMilestonesResponse' {} a -> s {milestoneSummaries = a} :: ListMilestonesResponse) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+listMilestonesResponse_nextToken :: Lens.Lens' ListMilestonesResponse (Prelude.Maybe Prelude.Text)+listMilestonesResponse_nextToken = Lens.lens (\ListMilestonesResponse' {nextToken} -> nextToken) (\s@ListMilestonesResponse' {} a -> s {nextToken = a} :: ListMilestonesResponse)++-- | Undocumented member.+listMilestonesResponse_workloadId :: Lens.Lens' ListMilestonesResponse (Prelude.Maybe Prelude.Text)+listMilestonesResponse_workloadId = Lens.lens (\ListMilestonesResponse' {workloadId} -> workloadId) (\s@ListMilestonesResponse' {} a -> s {workloadId = a} :: ListMilestonesResponse)++-- | The response's http status code.+listMilestonesResponse_httpStatus :: Lens.Lens' ListMilestonesResponse Prelude.Int+listMilestonesResponse_httpStatus = Lens.lens (\ListMilestonesResponse' {httpStatus} -> httpStatus) (\s@ListMilestonesResponse' {} a -> s {httpStatus = a} :: ListMilestonesResponse)++instance Prelude.NFData ListMilestonesResponse where+ rnf ListMilestonesResponse' {..} =+ Prelude.rnf milestoneSummaries+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/ListNotifications.hs view
@@ -0,0 +1,205 @@+{-# 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.WellArchitected.ListNotifications+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List lens notifications.+module Amazonka.WellArchitected.ListNotifications+ ( -- * Creating a Request+ ListNotifications (..),+ newListNotifications,++ -- * Request Lenses+ listNotifications_maxResults,+ listNotifications_nextToken,+ listNotifications_workloadId,++ -- * Destructuring the Response+ ListNotificationsResponse (..),+ newListNotificationsResponse,++ -- * Response Lenses+ listNotificationsResponse_nextToken,+ listNotificationsResponse_notificationSummaries,+ listNotificationsResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newListNotifications' smart constructor.+data ListNotifications = ListNotifications'+ { -- | The maximum number of results to return for this request.+ maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListNotifications' 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:+--+-- 'maxResults', 'listNotifications_maxResults' - The maximum number of results to return for this request.+--+-- 'nextToken', 'listNotifications_nextToken' - Undocumented member.+--+-- 'workloadId', 'listNotifications_workloadId' - Undocumented member.+newListNotifications ::+ ListNotifications+newListNotifications =+ ListNotifications'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workloadId = Prelude.Nothing+ }++-- | The maximum number of results to return for this request.+listNotifications_maxResults :: Lens.Lens' ListNotifications (Prelude.Maybe Prelude.Natural)+listNotifications_maxResults = Lens.lens (\ListNotifications' {maxResults} -> maxResults) (\s@ListNotifications' {} a -> s {maxResults = a} :: ListNotifications)++-- | Undocumented member.+listNotifications_nextToken :: Lens.Lens' ListNotifications (Prelude.Maybe Prelude.Text)+listNotifications_nextToken = Lens.lens (\ListNotifications' {nextToken} -> nextToken) (\s@ListNotifications' {} a -> s {nextToken = a} :: ListNotifications)++-- | Undocumented member.+listNotifications_workloadId :: Lens.Lens' ListNotifications (Prelude.Maybe Prelude.Text)+listNotifications_workloadId = Lens.lens (\ListNotifications' {workloadId} -> workloadId) (\s@ListNotifications' {} a -> s {workloadId = a} :: ListNotifications)++instance Core.AWSRequest ListNotifications where+ type+ AWSResponse ListNotifications =+ ListNotificationsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListNotificationsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "NotificationSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListNotifications where+ hashWithSalt _salt ListNotifications' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workloadId++instance Prelude.NFData ListNotifications where+ rnf ListNotifications' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadId++instance Data.ToHeaders ListNotifications where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListNotifications where+ toJSON ListNotifications' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ ("WorkloadId" Data..=) Prelude.<$> workloadId+ ]+ )++instance Data.ToPath ListNotifications where+ toPath = Prelude.const "/notifications"++instance Data.ToQuery ListNotifications where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListNotificationsResponse' smart constructor.+data ListNotificationsResponse = ListNotificationsResponse'+ { nextToken :: Prelude.Maybe Prelude.Text,+ -- | List of lens notification summaries in a workload.+ notificationSummaries :: Prelude.Maybe [NotificationSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListNotificationsResponse' 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:+--+-- 'nextToken', 'listNotificationsResponse_nextToken' - Undocumented member.+--+-- 'notificationSummaries', 'listNotificationsResponse_notificationSummaries' - List of lens notification summaries in a workload.+--+-- 'httpStatus', 'listNotificationsResponse_httpStatus' - The response's http status code.+newListNotificationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListNotificationsResponse+newListNotificationsResponse pHttpStatus_ =+ ListNotificationsResponse'+ { nextToken =+ Prelude.Nothing,+ notificationSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+listNotificationsResponse_nextToken :: Lens.Lens' ListNotificationsResponse (Prelude.Maybe Prelude.Text)+listNotificationsResponse_nextToken = Lens.lens (\ListNotificationsResponse' {nextToken} -> nextToken) (\s@ListNotificationsResponse' {} a -> s {nextToken = a} :: ListNotificationsResponse)++-- | List of lens notification summaries in a workload.+listNotificationsResponse_notificationSummaries :: Lens.Lens' ListNotificationsResponse (Prelude.Maybe [NotificationSummary])+listNotificationsResponse_notificationSummaries = Lens.lens (\ListNotificationsResponse' {notificationSummaries} -> notificationSummaries) (\s@ListNotificationsResponse' {} a -> s {notificationSummaries = a} :: ListNotificationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listNotificationsResponse_httpStatus :: Lens.Lens' ListNotificationsResponse Prelude.Int+listNotificationsResponse_httpStatus = Lens.lens (\ListNotificationsResponse' {httpStatus} -> httpStatus) (\s@ListNotificationsResponse' {} a -> s {httpStatus = a} :: ListNotificationsResponse)++instance Prelude.NFData ListNotificationsResponse where+ rnf ListNotificationsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf notificationSummaries+ `Prelude.seq` Prelude.rnf httpStatus
@@ -0,0 +1,234 @@+{-# 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.WellArchitected.ListShareInvitations+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List the workload invitations.+module Amazonka.WellArchitected.ListShareInvitations+ ( -- * Creating a Request+ ListShareInvitations (..),+ newListShareInvitations,++ -- * Request Lenses+ listShareInvitations_lensNamePrefix,+ listShareInvitations_maxResults,+ listShareInvitations_nextToken,+ listShareInvitations_shareResourceType,+ listShareInvitations_workloadNamePrefix,++ -- * Destructuring the Response+ ListShareInvitationsResponse (..),+ newListShareInvitationsResponse,++ -- * Response Lenses+ listShareInvitationsResponse_nextToken,+ listShareInvitationsResponse_shareInvitationSummaries,+ listShareInvitationsResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input for List Share Invitations+--+-- /See:/ 'newListShareInvitations' smart constructor.+data ListShareInvitations = ListShareInvitations'+ { -- | An optional string added to the beginning of each lens name returned in+ -- the results.+ lensNamePrefix :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of results to return for this request.+ maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The type of share invitations to be returned.+ shareResourceType :: Prelude.Maybe ShareResourceType,+ workloadNamePrefix :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListShareInvitations' 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:+--+-- 'lensNamePrefix', 'listShareInvitations_lensNamePrefix' - An optional string added to the beginning of each lens name returned in+-- the results.+--+-- 'maxResults', 'listShareInvitations_maxResults' - The maximum number of results to return for this request.+--+-- 'nextToken', 'listShareInvitations_nextToken' - Undocumented member.+--+-- 'shareResourceType', 'listShareInvitations_shareResourceType' - The type of share invitations to be returned.+--+-- 'workloadNamePrefix', 'listShareInvitations_workloadNamePrefix' - Undocumented member.+newListShareInvitations ::+ ListShareInvitations+newListShareInvitations =+ ListShareInvitations'+ { lensNamePrefix =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ shareResourceType = Prelude.Nothing,+ workloadNamePrefix = Prelude.Nothing+ }++-- | An optional string added to the beginning of each lens name returned in+-- the results.+listShareInvitations_lensNamePrefix :: Lens.Lens' ListShareInvitations (Prelude.Maybe Prelude.Text)+listShareInvitations_lensNamePrefix = Lens.lens (\ListShareInvitations' {lensNamePrefix} -> lensNamePrefix) (\s@ListShareInvitations' {} a -> s {lensNamePrefix = a} :: ListShareInvitations)++-- | The maximum number of results to return for this request.+listShareInvitations_maxResults :: Lens.Lens' ListShareInvitations (Prelude.Maybe Prelude.Natural)+listShareInvitations_maxResults = Lens.lens (\ListShareInvitations' {maxResults} -> maxResults) (\s@ListShareInvitations' {} a -> s {maxResults = a} :: ListShareInvitations)++-- | Undocumented member.+listShareInvitations_nextToken :: Lens.Lens' ListShareInvitations (Prelude.Maybe Prelude.Text)+listShareInvitations_nextToken = Lens.lens (\ListShareInvitations' {nextToken} -> nextToken) (\s@ListShareInvitations' {} a -> s {nextToken = a} :: ListShareInvitations)++-- | The type of share invitations to be returned.+listShareInvitations_shareResourceType :: Lens.Lens' ListShareInvitations (Prelude.Maybe ShareResourceType)+listShareInvitations_shareResourceType = Lens.lens (\ListShareInvitations' {shareResourceType} -> shareResourceType) (\s@ListShareInvitations' {} a -> s {shareResourceType = a} :: ListShareInvitations)++-- | Undocumented member.+listShareInvitations_workloadNamePrefix :: Lens.Lens' ListShareInvitations (Prelude.Maybe Prelude.Text)+listShareInvitations_workloadNamePrefix = Lens.lens (\ListShareInvitations' {workloadNamePrefix} -> workloadNamePrefix) (\s@ListShareInvitations' {} a -> s {workloadNamePrefix = a} :: ListShareInvitations)++instance Core.AWSRequest ListShareInvitations where+ type+ AWSResponse ListShareInvitations =+ ListShareInvitationsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListShareInvitationsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "ShareInvitationSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListShareInvitations where+ hashWithSalt _salt ListShareInvitations' {..} =+ _salt+ `Prelude.hashWithSalt` lensNamePrefix+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` shareResourceType+ `Prelude.hashWithSalt` workloadNamePrefix++instance Prelude.NFData ListShareInvitations where+ rnf ListShareInvitations' {..} =+ Prelude.rnf lensNamePrefix+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf shareResourceType+ `Prelude.seq` Prelude.rnf workloadNamePrefix++instance Data.ToHeaders ListShareInvitations where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListShareInvitations where+ toPath = Prelude.const "/shareInvitations"++instance Data.ToQuery ListShareInvitations where+ toQuery ListShareInvitations' {..} =+ Prelude.mconcat+ [ "LensNamePrefix" Data.=: lensNamePrefix,+ "MaxResults" Data.=: maxResults,+ "NextToken" Data.=: nextToken,+ "ShareResourceType" Data.=: shareResourceType,+ "WorkloadNamePrefix" Data.=: workloadNamePrefix+ ]++-- | Input for List Share Invitations+--+-- /See:/ 'newListShareInvitationsResponse' smart constructor.+data ListShareInvitationsResponse = ListShareInvitationsResponse'+ { nextToken :: Prelude.Maybe Prelude.Text,+ -- | List of share invitation summaries in a workload.+ shareInvitationSummaries :: Prelude.Maybe [ShareInvitationSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListShareInvitationsResponse' 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:+--+-- 'nextToken', 'listShareInvitationsResponse_nextToken' - Undocumented member.+--+-- 'shareInvitationSummaries', 'listShareInvitationsResponse_shareInvitationSummaries' - List of share invitation summaries in a workload.+--+-- 'httpStatus', 'listShareInvitationsResponse_httpStatus' - The response's http status code.+newListShareInvitationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListShareInvitationsResponse+newListShareInvitationsResponse pHttpStatus_ =+ ListShareInvitationsResponse'+ { nextToken =+ Prelude.Nothing,+ shareInvitationSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+listShareInvitationsResponse_nextToken :: Lens.Lens' ListShareInvitationsResponse (Prelude.Maybe Prelude.Text)+listShareInvitationsResponse_nextToken = Lens.lens (\ListShareInvitationsResponse' {nextToken} -> nextToken) (\s@ListShareInvitationsResponse' {} a -> s {nextToken = a} :: ListShareInvitationsResponse)++-- | List of share invitation summaries in a workload.+listShareInvitationsResponse_shareInvitationSummaries :: Lens.Lens' ListShareInvitationsResponse (Prelude.Maybe [ShareInvitationSummary])+listShareInvitationsResponse_shareInvitationSummaries = Lens.lens (\ListShareInvitationsResponse' {shareInvitationSummaries} -> shareInvitationSummaries) (\s@ListShareInvitationsResponse' {} a -> s {shareInvitationSummaries = a} :: ListShareInvitationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listShareInvitationsResponse_httpStatus :: Lens.Lens' ListShareInvitationsResponse Prelude.Int+listShareInvitationsResponse_httpStatus = Lens.lens (\ListShareInvitationsResponse' {httpStatus} -> httpStatus) (\s@ListShareInvitationsResponse' {} a -> s {httpStatus = a} :: ListShareInvitationsResponse)++instance Prelude.NFData ListShareInvitationsResponse where+ rnf ListShareInvitationsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf shareInvitationSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/ListTagsForResource.hs view
@@ -0,0 +1,161 @@+{-# 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.WellArchitected.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)+--+-- List the tags for a resource.+--+-- The WorkloadArn parameter can be either a workload ARN or a custom lens+-- ARN.+module Amazonka.WellArchitected.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_workloadArn,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { workloadArn :: 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:+--+-- 'workloadArn', 'listTagsForResource_workloadArn' - Undocumented member.+newListTagsForResource ::+ -- | 'workloadArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pWorkloadArn_ =+ ListTagsForResource' {workloadArn = pWorkloadArn_}++-- | Undocumented member.+listTagsForResource_workloadArn :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_workloadArn = Lens.lens (\ListTagsForResource' {workloadArn} -> workloadArn) (\s@ListTagsForResource' {} a -> s {workloadArn = a} :: ListTagsForResource)++instance Core.AWSRequest ListTagsForResource where+ type+ AWSResponse ListTagsForResource =+ ListTagsForResourceResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListTagsForResourceResponse'+ Prelude.<$> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTagsForResource where+ hashWithSalt _salt ListTagsForResource' {..} =+ _salt `Prelude.hashWithSalt` workloadArn++instance Prelude.NFData ListTagsForResource where+ rnf ListTagsForResource' {..} =+ Prelude.rnf workloadArn++instance Data.ToHeaders ListTagsForResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListTagsForResource where+ toPath ListTagsForResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS workloadArn]++instance Data.ToQuery ListTagsForResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | The tags for the resource.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | 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:+--+-- 'tags', 'listTagsForResourceResponse_tags' - The tags for the resource.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The tags for the resource.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = 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 tags+ `Prelude.seq` Prelude.rnf httpStatus
@@ -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.WellArchitected.ListWorkloadShares+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List the workload shares associated with the workload.+module Amazonka.WellArchitected.ListWorkloadShares+ ( -- * Creating a Request+ ListWorkloadShares (..),+ newListWorkloadShares,++ -- * Request Lenses+ listWorkloadShares_maxResults,+ listWorkloadShares_nextToken,+ listWorkloadShares_sharedWithPrefix,+ listWorkloadShares_status,+ listWorkloadShares_workloadId,++ -- * Destructuring the Response+ ListWorkloadSharesResponse (..),+ newListWorkloadSharesResponse,++ -- * Response Lenses+ listWorkloadSharesResponse_nextToken,+ listWorkloadSharesResponse_workloadId,+ listWorkloadSharesResponse_workloadShareSummaries,+ listWorkloadSharesResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input for List Workload Share+--+-- /See:/ 'newListWorkloadShares' smart constructor.+data ListWorkloadShares = ListWorkloadShares'+ { -- | The maximum number of results to return for this request.+ maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID, IAM role, organization ID, or+ -- organizational unit (OU) ID with which the workload is shared.+ sharedWithPrefix :: Prelude.Maybe Prelude.Text,+ status :: Prelude.Maybe ShareStatus,+ workloadId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorkloadShares' 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:+--+-- 'maxResults', 'listWorkloadShares_maxResults' - The maximum number of results to return for this request.+--+-- 'nextToken', 'listWorkloadShares_nextToken' - Undocumented member.+--+-- 'sharedWithPrefix', 'listWorkloadShares_sharedWithPrefix' - The Amazon Web Services account ID, IAM role, organization ID, or+-- organizational unit (OU) ID with which the workload is shared.+--+-- 'status', 'listWorkloadShares_status' - Undocumented member.+--+-- 'workloadId', 'listWorkloadShares_workloadId' - Undocumented member.+newListWorkloadShares ::+ -- | 'workloadId'+ Prelude.Text ->+ ListWorkloadShares+newListWorkloadShares pWorkloadId_ =+ ListWorkloadShares'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sharedWithPrefix = Prelude.Nothing,+ status = Prelude.Nothing,+ workloadId = pWorkloadId_+ }++-- | The maximum number of results to return for this request.+listWorkloadShares_maxResults :: Lens.Lens' ListWorkloadShares (Prelude.Maybe Prelude.Natural)+listWorkloadShares_maxResults = Lens.lens (\ListWorkloadShares' {maxResults} -> maxResults) (\s@ListWorkloadShares' {} a -> s {maxResults = a} :: ListWorkloadShares)++-- | Undocumented member.+listWorkloadShares_nextToken :: Lens.Lens' ListWorkloadShares (Prelude.Maybe Prelude.Text)+listWorkloadShares_nextToken = Lens.lens (\ListWorkloadShares' {nextToken} -> nextToken) (\s@ListWorkloadShares' {} a -> s {nextToken = a} :: ListWorkloadShares)++-- | The Amazon Web Services account ID, IAM role, organization ID, or+-- organizational unit (OU) ID with which the workload is shared.+listWorkloadShares_sharedWithPrefix :: Lens.Lens' ListWorkloadShares (Prelude.Maybe Prelude.Text)+listWorkloadShares_sharedWithPrefix = Lens.lens (\ListWorkloadShares' {sharedWithPrefix} -> sharedWithPrefix) (\s@ListWorkloadShares' {} a -> s {sharedWithPrefix = a} :: ListWorkloadShares)++-- | Undocumented member.+listWorkloadShares_status :: Lens.Lens' ListWorkloadShares (Prelude.Maybe ShareStatus)+listWorkloadShares_status = Lens.lens (\ListWorkloadShares' {status} -> status) (\s@ListWorkloadShares' {} a -> s {status = a} :: ListWorkloadShares)++-- | Undocumented member.+listWorkloadShares_workloadId :: Lens.Lens' ListWorkloadShares Prelude.Text+listWorkloadShares_workloadId = Lens.lens (\ListWorkloadShares' {workloadId} -> workloadId) (\s@ListWorkloadShares' {} a -> s {workloadId = a} :: ListWorkloadShares)++instance Core.AWSRequest ListWorkloadShares where+ type+ AWSResponse ListWorkloadShares =+ ListWorkloadSharesResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListWorkloadSharesResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> ( x+ Data..?> "WorkloadShareSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListWorkloadShares where+ hashWithSalt _salt ListWorkloadShares' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sharedWithPrefix+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` workloadId++instance Prelude.NFData ListWorkloadShares where+ rnf ListWorkloadShares' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sharedWithPrefix+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf workloadId++instance Data.ToHeaders ListWorkloadShares where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListWorkloadShares where+ toPath ListWorkloadShares' {..} =+ Prelude.mconcat+ ["/workloads/", Data.toBS workloadId, "/shares"]++instance Data.ToQuery ListWorkloadShares where+ toQuery ListWorkloadShares' {..} =+ Prelude.mconcat+ [ "MaxResults" Data.=: maxResults,+ "NextToken" Data.=: nextToken,+ "SharedWithPrefix" Data.=: sharedWithPrefix,+ "Status" Data.=: status+ ]++-- | Input for List Workload Share+--+-- /See:/ 'newListWorkloadSharesResponse' smart constructor.+data ListWorkloadSharesResponse = ListWorkloadSharesResponse'+ { nextToken :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Maybe Prelude.Text,+ workloadShareSummaries :: Prelude.Maybe [WorkloadShareSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorkloadSharesResponse' 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:+--+-- 'nextToken', 'listWorkloadSharesResponse_nextToken' - Undocumented member.+--+-- 'workloadId', 'listWorkloadSharesResponse_workloadId' - Undocumented member.+--+-- 'workloadShareSummaries', 'listWorkloadSharesResponse_workloadShareSummaries' - Undocumented member.+--+-- 'httpStatus', 'listWorkloadSharesResponse_httpStatus' - The response's http status code.+newListWorkloadSharesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListWorkloadSharesResponse+newListWorkloadSharesResponse pHttpStatus_ =+ ListWorkloadSharesResponse'+ { nextToken =+ Prelude.Nothing,+ workloadId = Prelude.Nothing,+ workloadShareSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+listWorkloadSharesResponse_nextToken :: Lens.Lens' ListWorkloadSharesResponse (Prelude.Maybe Prelude.Text)+listWorkloadSharesResponse_nextToken = Lens.lens (\ListWorkloadSharesResponse' {nextToken} -> nextToken) (\s@ListWorkloadSharesResponse' {} a -> s {nextToken = a} :: ListWorkloadSharesResponse)++-- | Undocumented member.+listWorkloadSharesResponse_workloadId :: Lens.Lens' ListWorkloadSharesResponse (Prelude.Maybe Prelude.Text)+listWorkloadSharesResponse_workloadId = Lens.lens (\ListWorkloadSharesResponse' {workloadId} -> workloadId) (\s@ListWorkloadSharesResponse' {} a -> s {workloadId = a} :: ListWorkloadSharesResponse)++-- | Undocumented member.+listWorkloadSharesResponse_workloadShareSummaries :: Lens.Lens' ListWorkloadSharesResponse (Prelude.Maybe [WorkloadShareSummary])+listWorkloadSharesResponse_workloadShareSummaries = Lens.lens (\ListWorkloadSharesResponse' {workloadShareSummaries} -> workloadShareSummaries) (\s@ListWorkloadSharesResponse' {} a -> s {workloadShareSummaries = a} :: ListWorkloadSharesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listWorkloadSharesResponse_httpStatus :: Lens.Lens' ListWorkloadSharesResponse Prelude.Int+listWorkloadSharesResponse_httpStatus = Lens.lens (\ListWorkloadSharesResponse' {httpStatus} -> httpStatus) (\s@ListWorkloadSharesResponse' {} a -> s {httpStatus = a} :: ListWorkloadSharesResponse)++instance Prelude.NFData ListWorkloadSharesResponse where+ rnf ListWorkloadSharesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf workloadShareSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/ListWorkloads.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.WellArchitected.ListWorkloads+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List workloads. Paginated.+module Amazonka.WellArchitected.ListWorkloads+ ( -- * Creating a Request+ ListWorkloads (..),+ newListWorkloads,++ -- * Request Lenses+ listWorkloads_maxResults,+ listWorkloads_nextToken,+ listWorkloads_workloadNamePrefix,++ -- * Destructuring the Response+ ListWorkloadsResponse (..),+ newListWorkloadsResponse,++ -- * Response Lenses+ listWorkloadsResponse_nextToken,+ listWorkloadsResponse_workloadSummaries,+ listWorkloadsResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to list all workloads.+--+-- /See:/ 'newListWorkloads' smart constructor.+data ListWorkloads = ListWorkloads'+ { -- | The maximum number of results to return for this request.+ maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text,+ workloadNamePrefix :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorkloads' 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:+--+-- 'maxResults', 'listWorkloads_maxResults' - The maximum number of results to return for this request.+--+-- 'nextToken', 'listWorkloads_nextToken' - Undocumented member.+--+-- 'workloadNamePrefix', 'listWorkloads_workloadNamePrefix' - Undocumented member.+newListWorkloads ::+ ListWorkloads+newListWorkloads =+ ListWorkloads'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workloadNamePrefix = Prelude.Nothing+ }++-- | The maximum number of results to return for this request.+listWorkloads_maxResults :: Lens.Lens' ListWorkloads (Prelude.Maybe Prelude.Natural)+listWorkloads_maxResults = Lens.lens (\ListWorkloads' {maxResults} -> maxResults) (\s@ListWorkloads' {} a -> s {maxResults = a} :: ListWorkloads)++-- | Undocumented member.+listWorkloads_nextToken :: Lens.Lens' ListWorkloads (Prelude.Maybe Prelude.Text)+listWorkloads_nextToken = Lens.lens (\ListWorkloads' {nextToken} -> nextToken) (\s@ListWorkloads' {} a -> s {nextToken = a} :: ListWorkloads)++-- | Undocumented member.+listWorkloads_workloadNamePrefix :: Lens.Lens' ListWorkloads (Prelude.Maybe Prelude.Text)+listWorkloads_workloadNamePrefix = Lens.lens (\ListWorkloads' {workloadNamePrefix} -> workloadNamePrefix) (\s@ListWorkloads' {} a -> s {workloadNamePrefix = a} :: ListWorkloads)++instance Core.AWSRequest ListWorkloads where+ type+ AWSResponse ListWorkloads =+ ListWorkloadsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListWorkloadsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "WorkloadSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListWorkloads where+ hashWithSalt _salt ListWorkloads' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workloadNamePrefix++instance Prelude.NFData ListWorkloads where+ rnf ListWorkloads' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadNamePrefix++instance Data.ToHeaders ListWorkloads where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListWorkloads where+ toJSON ListWorkloads' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ ("WorkloadNamePrefix" Data..=)+ Prelude.<$> workloadNamePrefix+ ]+ )++instance Data.ToPath ListWorkloads where+ toPath = Prelude.const "/workloadsSummaries"++instance Data.ToQuery ListWorkloads where+ toQuery = Prelude.const Prelude.mempty++-- | Output of a list workloads call.+--+-- /See:/ 'newListWorkloadsResponse' smart constructor.+data ListWorkloadsResponse = ListWorkloadsResponse'+ { nextToken :: Prelude.Maybe Prelude.Text,+ workloadSummaries :: Prelude.Maybe [WorkloadSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorkloadsResponse' 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:+--+-- 'nextToken', 'listWorkloadsResponse_nextToken' - Undocumented member.+--+-- 'workloadSummaries', 'listWorkloadsResponse_workloadSummaries' - Undocumented member.+--+-- 'httpStatus', 'listWorkloadsResponse_httpStatus' - The response's http status code.+newListWorkloadsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListWorkloadsResponse+newListWorkloadsResponse pHttpStatus_ =+ ListWorkloadsResponse'+ { nextToken = Prelude.Nothing,+ workloadSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+listWorkloadsResponse_nextToken :: Lens.Lens' ListWorkloadsResponse (Prelude.Maybe Prelude.Text)+listWorkloadsResponse_nextToken = Lens.lens (\ListWorkloadsResponse' {nextToken} -> nextToken) (\s@ListWorkloadsResponse' {} a -> s {nextToken = a} :: ListWorkloadsResponse)++-- | Undocumented member.+listWorkloadsResponse_workloadSummaries :: Lens.Lens' ListWorkloadsResponse (Prelude.Maybe [WorkloadSummary])+listWorkloadsResponse_workloadSummaries = Lens.lens (\ListWorkloadsResponse' {workloadSummaries} -> workloadSummaries) (\s@ListWorkloadsResponse' {} a -> s {workloadSummaries = a} :: ListWorkloadsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listWorkloadsResponse_httpStatus :: Lens.Lens' ListWorkloadsResponse Prelude.Int+listWorkloadsResponse_httpStatus = Lens.lens (\ListWorkloadsResponse' {httpStatus} -> httpStatus) (\s@ListWorkloadsResponse' {} a -> s {httpStatus = a} :: ListWorkloadsResponse)++instance Prelude.NFData ListWorkloadsResponse where+ rnf ListWorkloadsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workloadSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/TagResource.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.WellArchitected.TagResource+-- 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 one or more tags to the specified resource.+--+-- The WorkloadArn parameter can be either a workload ARN or a custom lens+-- ARN.+module Amazonka.WellArchitected.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_workloadArn,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,++ -- * Response Lenses+ tagResourceResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { workloadArn :: Prelude.Text,+ -- | The tags for the resource.+ tags :: Prelude.HashMap Prelude.Text Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' 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:+--+-- 'workloadArn', 'tagResource_workloadArn' - Undocumented member.+--+-- 'tags', 'tagResource_tags' - The tags for the resource.+newTagResource ::+ -- | 'workloadArn'+ Prelude.Text ->+ TagResource+newTagResource pWorkloadArn_ =+ TagResource'+ { workloadArn = pWorkloadArn_,+ tags = Prelude.mempty+ }++-- | Undocumented member.+tagResource_workloadArn :: Lens.Lens' TagResource Prelude.Text+tagResource_workloadArn = Lens.lens (\TagResource' {workloadArn} -> workloadArn) (\s@TagResource' {} a -> s {workloadArn = a} :: TagResource)++-- | The tags for the resource.+tagResource_tags :: Lens.Lens' TagResource (Prelude.HashMap Prelude.Text Prelude.Text)+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ TagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable TagResource where+ hashWithSalt _salt TagResource' {..} =+ _salt+ `Prelude.hashWithSalt` workloadArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagResource where+ rnf TagResource' {..} =+ Prelude.rnf workloadArn+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON TagResource where+ toJSON TagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Tags" Data..= tags)]+ )++instance Data.ToPath TagResource where+ toPath TagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS workloadArn]++instance Data.ToQuery TagResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTagResourceResponse' smart constructor.+data TagResourceResponse = TagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResourceResponse' 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:+--+-- 'httpStatus', 'tagResourceResponse_httpStatus' - The response's http status code.+newTagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ TagResourceResponse+newTagResourceResponse pHttpStatus_ =+ TagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+tagResourceResponse_httpStatus :: Lens.Lens' TagResourceResponse Prelude.Int+tagResourceResponse_httpStatus = Lens.lens (\TagResourceResponse' {httpStatus} -> httpStatus) (\s@TagResourceResponse' {} a -> s {httpStatus = a} :: TagResourceResponse)++instance Prelude.NFData TagResourceResponse where+ rnf TagResourceResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/Types.hs view
@@ -0,0 +1,618 @@+{-# 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.WellArchitected.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.WellArchitected.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _ConflictException,+ _InternalServerException,+ _ResourceNotFoundException,+ _ServiceQuotaExceededException,+ _ThrottlingException,+ _ValidationException,++ -- * AdditionalResourceType+ AdditionalResourceType (..),++ -- * AnswerReason+ AnswerReason (..),++ -- * CheckFailureReason+ CheckFailureReason (..),++ -- * CheckProvider+ CheckProvider (..),++ -- * CheckStatus+ CheckStatus (..),++ -- * ChoiceReason+ ChoiceReason (..),++ -- * ChoiceStatus+ ChoiceStatus (..),++ -- * DifferenceStatus+ DifferenceStatus (..),++ -- * ImportLensStatus+ ImportLensStatus (..),++ -- * LensStatus+ LensStatus (..),++ -- * LensStatusType+ LensStatusType (..),++ -- * LensType+ LensType (..),++ -- * NotificationType+ NotificationType (..),++ -- * OrganizationSharingStatus+ OrganizationSharingStatus (..),++ -- * PermissionType+ PermissionType (..),++ -- * Risk+ Risk (..),++ -- * ShareInvitationAction+ ShareInvitationAction (..),++ -- * ShareResourceType+ ShareResourceType (..),++ -- * ShareStatus+ ShareStatus (..),++ -- * TrustedAdvisorIntegrationStatus+ TrustedAdvisorIntegrationStatus (..),++ -- * WorkloadEnvironment+ WorkloadEnvironment (..),++ -- * WorkloadImprovementStatus+ WorkloadImprovementStatus (..),++ -- * AdditionalResources+ AdditionalResources (..),+ newAdditionalResources,+ additionalResources_content,+ additionalResources_type,++ -- * Answer+ Answer (..),+ newAnswer,+ answer_choiceAnswers,+ answer_choices,+ answer_helpfulResourceDisplayText,+ answer_helpfulResourceUrl,+ answer_improvementPlanUrl,+ answer_isApplicable,+ answer_notes,+ answer_pillarId,+ answer_questionDescription,+ answer_questionId,+ answer_questionTitle,+ answer_reason,+ answer_risk,+ answer_selectedChoices,++ -- * AnswerSummary+ AnswerSummary (..),+ newAnswerSummary,+ answerSummary_choiceAnswerSummaries,+ answerSummary_choices,+ answerSummary_isApplicable,+ answerSummary_pillarId,+ answerSummary_questionId,+ answerSummary_questionTitle,+ answerSummary_reason,+ answerSummary_risk,+ answerSummary_selectedChoices,++ -- * CheckDetail+ CheckDetail (..),+ newCheckDetail,+ checkDetail_accountId,+ checkDetail_choiceId,+ checkDetail_description,+ checkDetail_flaggedResources,+ checkDetail_id,+ checkDetail_lensArn,+ checkDetail_name,+ checkDetail_pillarId,+ checkDetail_provider,+ checkDetail_questionId,+ checkDetail_reason,+ checkDetail_status,+ checkDetail_updatedAt,++ -- * CheckSummary+ CheckSummary (..),+ newCheckSummary,+ checkSummary_accountSummary,+ checkSummary_choiceId,+ checkSummary_description,+ checkSummary_id,+ checkSummary_lensArn,+ checkSummary_name,+ checkSummary_pillarId,+ checkSummary_provider,+ checkSummary_questionId,+ checkSummary_status,+ checkSummary_updatedAt,++ -- * Choice+ Choice (..),+ newChoice,+ choice_additionalResources,+ choice_choiceId,+ choice_description,+ choice_helpfulResource,+ choice_improvementPlan,+ choice_title,++ -- * ChoiceAnswer+ ChoiceAnswer (..),+ newChoiceAnswer,+ choiceAnswer_choiceId,+ choiceAnswer_notes,+ choiceAnswer_reason,+ choiceAnswer_status,++ -- * ChoiceAnswerSummary+ ChoiceAnswerSummary (..),+ newChoiceAnswerSummary,+ choiceAnswerSummary_choiceId,+ choiceAnswerSummary_reason,+ choiceAnswerSummary_status,++ -- * ChoiceContent+ ChoiceContent (..),+ newChoiceContent,+ choiceContent_displayText,+ choiceContent_url,++ -- * ChoiceImprovementPlan+ ChoiceImprovementPlan (..),+ newChoiceImprovementPlan,+ choiceImprovementPlan_choiceId,+ choiceImprovementPlan_displayText,+ choiceImprovementPlan_improvementPlanUrl,++ -- * ChoiceUpdate+ ChoiceUpdate (..),+ newChoiceUpdate,+ choiceUpdate_notes,+ choiceUpdate_reason,+ choiceUpdate_status,++ -- * ImprovementSummary+ ImprovementSummary (..),+ newImprovementSummary,+ improvementSummary_improvementPlanUrl,+ improvementSummary_improvementPlans,+ improvementSummary_pillarId,+ improvementSummary_questionId,+ improvementSummary_questionTitle,+ improvementSummary_risk,++ -- * Lens+ Lens (..),+ newLens,+ lens_description,+ lens_lensArn,+ lens_lensVersion,+ lens_name,+ lens_owner,+ lens_shareInvitationId,+ lens_tags,++ -- * LensReview+ LensReview (..),+ newLensReview,+ lensReview_lensAlias,+ lensReview_lensArn,+ lensReview_lensName,+ lensReview_lensStatus,+ lensReview_lensVersion,+ lensReview_nextToken,+ lensReview_notes,+ lensReview_pillarReviewSummaries,+ lensReview_riskCounts,+ lensReview_updatedAt,++ -- * LensReviewReport+ LensReviewReport (..),+ newLensReviewReport,+ lensReviewReport_base64String,+ lensReviewReport_lensAlias,+ lensReviewReport_lensArn,++ -- * LensReviewSummary+ LensReviewSummary (..),+ newLensReviewSummary,+ lensReviewSummary_lensAlias,+ lensReviewSummary_lensArn,+ lensReviewSummary_lensName,+ lensReviewSummary_lensStatus,+ lensReviewSummary_lensVersion,+ lensReviewSummary_riskCounts,+ lensReviewSummary_updatedAt,++ -- * LensShareSummary+ LensShareSummary (..),+ newLensShareSummary,+ lensShareSummary_shareId,+ lensShareSummary_sharedWith,+ lensShareSummary_status,+ lensShareSummary_statusMessage,++ -- * LensSummary+ LensSummary (..),+ newLensSummary,+ lensSummary_createdAt,+ lensSummary_description,+ lensSummary_lensAlias,+ lensSummary_lensArn,+ lensSummary_lensName,+ lensSummary_lensStatus,+ lensSummary_lensType,+ lensSummary_lensVersion,+ lensSummary_owner,+ lensSummary_updatedAt,++ -- * LensUpgradeSummary+ LensUpgradeSummary (..),+ newLensUpgradeSummary,+ lensUpgradeSummary_currentLensVersion,+ lensUpgradeSummary_latestLensVersion,+ lensUpgradeSummary_lensAlias,+ lensUpgradeSummary_lensArn,+ lensUpgradeSummary_workloadId,+ lensUpgradeSummary_workloadName,++ -- * Milestone+ Milestone (..),+ newMilestone,+ milestone_milestoneName,+ milestone_milestoneNumber,+ milestone_recordedAt,+ milestone_workload,++ -- * MilestoneSummary+ MilestoneSummary (..),+ newMilestoneSummary,+ milestoneSummary_milestoneName,+ milestoneSummary_milestoneNumber,+ milestoneSummary_recordedAt,+ milestoneSummary_workloadSummary,++ -- * NotificationSummary+ NotificationSummary (..),+ newNotificationSummary,+ notificationSummary_lensUpgradeSummary,+ notificationSummary_type,++ -- * PillarDifference+ PillarDifference (..),+ newPillarDifference,+ pillarDifference_differenceStatus,+ pillarDifference_pillarId,+ pillarDifference_pillarName,+ pillarDifference_questionDifferences,++ -- * PillarReviewSummary+ PillarReviewSummary (..),+ newPillarReviewSummary,+ pillarReviewSummary_notes,+ pillarReviewSummary_pillarId,+ pillarReviewSummary_pillarName,+ pillarReviewSummary_riskCounts,++ -- * QuestionDifference+ QuestionDifference (..),+ newQuestionDifference,+ questionDifference_differenceStatus,+ questionDifference_questionId,+ questionDifference_questionTitle,++ -- * ShareInvitation+ ShareInvitation (..),+ newShareInvitation,+ shareInvitation_lensAlias,+ shareInvitation_lensArn,+ shareInvitation_shareInvitationId,+ shareInvitation_shareResourceType,+ shareInvitation_workloadId,++ -- * ShareInvitationSummary+ ShareInvitationSummary (..),+ newShareInvitationSummary,+ shareInvitationSummary_lensArn,+ shareInvitationSummary_lensName,+ shareInvitationSummary_permissionType,+ shareInvitationSummary_shareInvitationId,+ shareInvitationSummary_shareResourceType,+ shareInvitationSummary_sharedBy,+ shareInvitationSummary_sharedWith,+ shareInvitationSummary_workloadId,+ shareInvitationSummary_workloadName,++ -- * VersionDifferences+ VersionDifferences (..),+ newVersionDifferences,+ versionDifferences_pillarDifferences,++ -- * Workload+ Workload (..),+ newWorkload,+ workload_accountIds,+ workload_applications,+ workload_architecturalDesign,+ workload_awsRegions,+ workload_description,+ workload_discoveryConfig,+ workload_environment,+ workload_improvementStatus,+ workload_industry,+ workload_industryType,+ workload_isReviewOwnerUpdateAcknowledged,+ workload_lenses,+ workload_nonAwsRegions,+ workload_notes,+ workload_owner,+ workload_pillarPriorities,+ workload_reviewOwner,+ workload_reviewRestrictionDate,+ workload_riskCounts,+ workload_shareInvitationId,+ workload_tags,+ workload_updatedAt,+ workload_workloadArn,+ workload_workloadId,+ workload_workloadName,++ -- * WorkloadDiscoveryConfig+ WorkloadDiscoveryConfig (..),+ newWorkloadDiscoveryConfig,+ workloadDiscoveryConfig_trustedAdvisorIntegrationStatus,++ -- * WorkloadShare+ WorkloadShare (..),+ newWorkloadShare,+ workloadShare_permissionType,+ workloadShare_shareId,+ workloadShare_sharedBy,+ workloadShare_sharedWith,+ workloadShare_status,+ workloadShare_workloadId,+ workloadShare_workloadName,++ -- * WorkloadShareSummary+ WorkloadShareSummary (..),+ newWorkloadShareSummary,+ workloadShareSummary_permissionType,+ workloadShareSummary_shareId,+ workloadShareSummary_sharedWith,+ workloadShareSummary_status,+ workloadShareSummary_statusMessage,++ -- * WorkloadSummary+ WorkloadSummary (..),+ newWorkloadSummary,+ workloadSummary_improvementStatus,+ workloadSummary_lenses,+ workloadSummary_owner,+ workloadSummary_riskCounts,+ workloadSummary_updatedAt,+ workloadSummary_workloadArn,+ workloadSummary_workloadId,+ workloadSummary_workloadName,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign+import Amazonka.WellArchitected.Types.AdditionalResourceType+import Amazonka.WellArchitected.Types.AdditionalResources+import Amazonka.WellArchitected.Types.Answer+import Amazonka.WellArchitected.Types.AnswerReason+import Amazonka.WellArchitected.Types.AnswerSummary+import Amazonka.WellArchitected.Types.CheckDetail+import Amazonka.WellArchitected.Types.CheckFailureReason+import Amazonka.WellArchitected.Types.CheckProvider+import Amazonka.WellArchitected.Types.CheckStatus+import Amazonka.WellArchitected.Types.CheckSummary+import Amazonka.WellArchitected.Types.Choice+import Amazonka.WellArchitected.Types.ChoiceAnswer+import Amazonka.WellArchitected.Types.ChoiceAnswerSummary+import Amazonka.WellArchitected.Types.ChoiceContent+import Amazonka.WellArchitected.Types.ChoiceImprovementPlan+import Amazonka.WellArchitected.Types.ChoiceReason+import Amazonka.WellArchitected.Types.ChoiceStatus+import Amazonka.WellArchitected.Types.ChoiceUpdate+import Amazonka.WellArchitected.Types.DifferenceStatus+import Amazonka.WellArchitected.Types.ImportLensStatus+import Amazonka.WellArchitected.Types.ImprovementSummary+import Amazonka.WellArchitected.Types.Lens+import Amazonka.WellArchitected.Types.LensReview+import Amazonka.WellArchitected.Types.LensReviewReport+import Amazonka.WellArchitected.Types.LensReviewSummary+import Amazonka.WellArchitected.Types.LensShareSummary+import Amazonka.WellArchitected.Types.LensStatus+import Amazonka.WellArchitected.Types.LensStatusType+import Amazonka.WellArchitected.Types.LensSummary+import Amazonka.WellArchitected.Types.LensType+import Amazonka.WellArchitected.Types.LensUpgradeSummary+import Amazonka.WellArchitected.Types.Milestone+import Amazonka.WellArchitected.Types.MilestoneSummary+import Amazonka.WellArchitected.Types.NotificationSummary+import Amazonka.WellArchitected.Types.NotificationType+import Amazonka.WellArchitected.Types.OrganizationSharingStatus+import Amazonka.WellArchitected.Types.PermissionType+import Amazonka.WellArchitected.Types.PillarDifference+import Amazonka.WellArchitected.Types.PillarReviewSummary+import Amazonka.WellArchitected.Types.QuestionDifference+import Amazonka.WellArchitected.Types.Risk+import Amazonka.WellArchitected.Types.ShareInvitation+import Amazonka.WellArchitected.Types.ShareInvitationAction+import Amazonka.WellArchitected.Types.ShareInvitationSummary+import Amazonka.WellArchitected.Types.ShareResourceType+import Amazonka.WellArchitected.Types.ShareStatus+import Amazonka.WellArchitected.Types.TrustedAdvisorIntegrationStatus+import Amazonka.WellArchitected.Types.VersionDifferences+import Amazonka.WellArchitected.Types.Workload+import Amazonka.WellArchitected.Types.WorkloadDiscoveryConfig+import Amazonka.WellArchitected.Types.WorkloadEnvironment+import Amazonka.WellArchitected.Types.WorkloadImprovementStatus+import Amazonka.WellArchitected.Types.WorkloadShare+import Amazonka.WellArchitected.Types.WorkloadShareSummary+import Amazonka.WellArchitected.Types.WorkloadSummary++-- | API version @2020-03-31@ of the Amazon Well-Architected Tool SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "WellArchitected",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "wellarchitected",+ Core.signingName = "wellarchitected",+ Core.version = "2020-03-31",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "WellArchitected",+ 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++-- | User does not have sufficient access to perform this action.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"+ Prelude.. Core.hasStatus 403++-- | The resource already exists.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++-- | There is a problem with the Well-Architected Tool API service.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | The requested resource was not found.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | The user has reached their resource quota.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceQuotaExceededException"+ Prelude.. Core.hasStatus 402++-- | Request was denied due to request throttling.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"+ Prelude.. Core.hasStatus 429++-- | The user input is not valid.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/WellArchitected/Types/AdditionalResourceType.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.WellArchitected.Types.AdditionalResourceType+-- 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.WellArchitected.Types.AdditionalResourceType+ ( AdditionalResourceType+ ( ..,+ AdditionalResourceType_HELPFUL_RESOURCE,+ AdditionalResourceType_IMPROVEMENT_PLAN+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AdditionalResourceType = AdditionalResourceType'+ { fromAdditionalResourceType ::+ 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 AdditionalResourceType_HELPFUL_RESOURCE :: AdditionalResourceType+pattern AdditionalResourceType_HELPFUL_RESOURCE = AdditionalResourceType' "HELPFUL_RESOURCE"++pattern AdditionalResourceType_IMPROVEMENT_PLAN :: AdditionalResourceType+pattern AdditionalResourceType_IMPROVEMENT_PLAN = AdditionalResourceType' "IMPROVEMENT_PLAN"++{-# COMPLETE+ AdditionalResourceType_HELPFUL_RESOURCE,+ AdditionalResourceType_IMPROVEMENT_PLAN,+ AdditionalResourceType'+ #-}
+ gen/Amazonka/WellArchitected/Types/AdditionalResources.hs view
@@ -0,0 +1,88 @@+{-# 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.WellArchitected.Types.AdditionalResources+-- 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.WellArchitected.Types.AdditionalResources 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+import Amazonka.WellArchitected.Types.AdditionalResourceType+import Amazonka.WellArchitected.Types.ChoiceContent++-- | The choice level additional resources.+--+-- /See:/ 'newAdditionalResources' smart constructor.+data AdditionalResources = AdditionalResources'+ { -- | The URLs for additional resources, either helpful resources or+ -- improvement plans. Up to five additional URLs can be specified.+ content :: Prelude.Maybe [ChoiceContent],+ -- | Type of additional resource.+ type' :: Prelude.Maybe AdditionalResourceType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AdditionalResources' 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:+--+-- 'content', 'additionalResources_content' - The URLs for additional resources, either helpful resources or+-- improvement plans. Up to five additional URLs can be specified.+--+-- 'type'', 'additionalResources_type' - Type of additional resource.+newAdditionalResources ::+ AdditionalResources+newAdditionalResources =+ AdditionalResources'+ { content = Prelude.Nothing,+ type' = Prelude.Nothing+ }++-- | The URLs for additional resources, either helpful resources or+-- improvement plans. Up to five additional URLs can be specified.+additionalResources_content :: Lens.Lens' AdditionalResources (Prelude.Maybe [ChoiceContent])+additionalResources_content = Lens.lens (\AdditionalResources' {content} -> content) (\s@AdditionalResources' {} a -> s {content = a} :: AdditionalResources) Prelude.. Lens.mapping Lens.coerced++-- | Type of additional resource.+additionalResources_type :: Lens.Lens' AdditionalResources (Prelude.Maybe AdditionalResourceType)+additionalResources_type = Lens.lens (\AdditionalResources' {type'} -> type') (\s@AdditionalResources' {} a -> s {type' = a} :: AdditionalResources)++instance Data.FromJSON AdditionalResources where+ parseJSON =+ Data.withObject+ "AdditionalResources"+ ( \x ->+ AdditionalResources'+ Prelude.<$> (x Data..:? "Content" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Type")+ )++instance Prelude.Hashable AdditionalResources where+ hashWithSalt _salt AdditionalResources' {..} =+ _salt+ `Prelude.hashWithSalt` content+ `Prelude.hashWithSalt` type'++instance Prelude.NFData AdditionalResources where+ rnf AdditionalResources' {..} =+ Prelude.rnf content `Prelude.seq` Prelude.rnf type'
+ gen/Amazonka/WellArchitected/Types/Answer.hs view
@@ -0,0 +1,224 @@+{-# 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.WellArchitected.Types.Answer+-- 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.WellArchitected.Types.Answer 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+import Amazonka.WellArchitected.Types.AnswerReason+import Amazonka.WellArchitected.Types.Choice+import Amazonka.WellArchitected.Types.ChoiceAnswer+import Amazonka.WellArchitected.Types.Risk++-- | An answer of the question.+--+-- /See:/ 'newAnswer' smart constructor.+data Answer = Answer'+ { -- | A list of selected choices to a question in your workload.+ choiceAnswers :: Prelude.Maybe [ChoiceAnswer],+ choices :: Prelude.Maybe [Choice],+ -- | The helpful resource text to be displayed.+ helpfulResourceDisplayText :: Prelude.Maybe Prelude.Text,+ helpfulResourceUrl :: Prelude.Maybe Prelude.Text,+ improvementPlanUrl :: Prelude.Maybe Prelude.Text,+ isApplicable :: Prelude.Maybe Prelude.Bool,+ notes :: Prelude.Maybe Prelude.Text,+ pillarId :: Prelude.Maybe Prelude.Text,+ questionDescription :: Prelude.Maybe Prelude.Text,+ questionId :: Prelude.Maybe Prelude.Text,+ questionTitle :: Prelude.Maybe Prelude.Text,+ -- | The reason why the question is not applicable to your workload.+ reason :: Prelude.Maybe AnswerReason,+ risk :: Prelude.Maybe Risk,+ selectedChoices :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Answer' 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:+--+-- 'choiceAnswers', 'answer_choiceAnswers' - A list of selected choices to a question in your workload.+--+-- 'choices', 'answer_choices' - Undocumented member.+--+-- 'helpfulResourceDisplayText', 'answer_helpfulResourceDisplayText' - The helpful resource text to be displayed.+--+-- 'helpfulResourceUrl', 'answer_helpfulResourceUrl' - Undocumented member.+--+-- 'improvementPlanUrl', 'answer_improvementPlanUrl' - Undocumented member.+--+-- 'isApplicable', 'answer_isApplicable' - Undocumented member.+--+-- 'notes', 'answer_notes' - Undocumented member.+--+-- 'pillarId', 'answer_pillarId' - Undocumented member.+--+-- 'questionDescription', 'answer_questionDescription' - Undocumented member.+--+-- 'questionId', 'answer_questionId' - Undocumented member.+--+-- 'questionTitle', 'answer_questionTitle' - Undocumented member.+--+-- 'reason', 'answer_reason' - The reason why the question is not applicable to your workload.+--+-- 'risk', 'answer_risk' - Undocumented member.+--+-- 'selectedChoices', 'answer_selectedChoices' - Undocumented member.+newAnswer ::+ Answer+newAnswer =+ Answer'+ { choiceAnswers = Prelude.Nothing,+ choices = Prelude.Nothing,+ helpfulResourceDisplayText = Prelude.Nothing,+ helpfulResourceUrl = Prelude.Nothing,+ improvementPlanUrl = Prelude.Nothing,+ isApplicable = Prelude.Nothing,+ notes = Prelude.Nothing,+ pillarId = Prelude.Nothing,+ questionDescription = Prelude.Nothing,+ questionId = Prelude.Nothing,+ questionTitle = Prelude.Nothing,+ reason = Prelude.Nothing,+ risk = Prelude.Nothing,+ selectedChoices = Prelude.Nothing+ }++-- | A list of selected choices to a question in your workload.+answer_choiceAnswers :: Lens.Lens' Answer (Prelude.Maybe [ChoiceAnswer])+answer_choiceAnswers = Lens.lens (\Answer' {choiceAnswers} -> choiceAnswers) (\s@Answer' {} a -> s {choiceAnswers = a} :: Answer) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+answer_choices :: Lens.Lens' Answer (Prelude.Maybe [Choice])+answer_choices = Lens.lens (\Answer' {choices} -> choices) (\s@Answer' {} a -> s {choices = a} :: Answer) Prelude.. Lens.mapping Lens.coerced++-- | The helpful resource text to be displayed.+answer_helpfulResourceDisplayText :: Lens.Lens' Answer (Prelude.Maybe Prelude.Text)+answer_helpfulResourceDisplayText = Lens.lens (\Answer' {helpfulResourceDisplayText} -> helpfulResourceDisplayText) (\s@Answer' {} a -> s {helpfulResourceDisplayText = a} :: Answer)++-- | Undocumented member.+answer_helpfulResourceUrl :: Lens.Lens' Answer (Prelude.Maybe Prelude.Text)+answer_helpfulResourceUrl = Lens.lens (\Answer' {helpfulResourceUrl} -> helpfulResourceUrl) (\s@Answer' {} a -> s {helpfulResourceUrl = a} :: Answer)++-- | Undocumented member.+answer_improvementPlanUrl :: Lens.Lens' Answer (Prelude.Maybe Prelude.Text)+answer_improvementPlanUrl = Lens.lens (\Answer' {improvementPlanUrl} -> improvementPlanUrl) (\s@Answer' {} a -> s {improvementPlanUrl = a} :: Answer)++-- | Undocumented member.+answer_isApplicable :: Lens.Lens' Answer (Prelude.Maybe Prelude.Bool)+answer_isApplicable = Lens.lens (\Answer' {isApplicable} -> isApplicable) (\s@Answer' {} a -> s {isApplicable = a} :: Answer)++-- | Undocumented member.+answer_notes :: Lens.Lens' Answer (Prelude.Maybe Prelude.Text)+answer_notes = Lens.lens (\Answer' {notes} -> notes) (\s@Answer' {} a -> s {notes = a} :: Answer)++-- | Undocumented member.+answer_pillarId :: Lens.Lens' Answer (Prelude.Maybe Prelude.Text)+answer_pillarId = Lens.lens (\Answer' {pillarId} -> pillarId) (\s@Answer' {} a -> s {pillarId = a} :: Answer)++-- | Undocumented member.+answer_questionDescription :: Lens.Lens' Answer (Prelude.Maybe Prelude.Text)+answer_questionDescription = Lens.lens (\Answer' {questionDescription} -> questionDescription) (\s@Answer' {} a -> s {questionDescription = a} :: Answer)++-- | Undocumented member.+answer_questionId :: Lens.Lens' Answer (Prelude.Maybe Prelude.Text)+answer_questionId = Lens.lens (\Answer' {questionId} -> questionId) (\s@Answer' {} a -> s {questionId = a} :: Answer)++-- | Undocumented member.+answer_questionTitle :: Lens.Lens' Answer (Prelude.Maybe Prelude.Text)+answer_questionTitle = Lens.lens (\Answer' {questionTitle} -> questionTitle) (\s@Answer' {} a -> s {questionTitle = a} :: Answer)++-- | The reason why the question is not applicable to your workload.+answer_reason :: Lens.Lens' Answer (Prelude.Maybe AnswerReason)+answer_reason = Lens.lens (\Answer' {reason} -> reason) (\s@Answer' {} a -> s {reason = a} :: Answer)++-- | Undocumented member.+answer_risk :: Lens.Lens' Answer (Prelude.Maybe Risk)+answer_risk = Lens.lens (\Answer' {risk} -> risk) (\s@Answer' {} a -> s {risk = a} :: Answer)++-- | Undocumented member.+answer_selectedChoices :: Lens.Lens' Answer (Prelude.Maybe [Prelude.Text])+answer_selectedChoices = Lens.lens (\Answer' {selectedChoices} -> selectedChoices) (\s@Answer' {} a -> s {selectedChoices = a} :: Answer) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON Answer where+ parseJSON =+ Data.withObject+ "Answer"+ ( \x ->+ Answer'+ Prelude.<$> (x Data..:? "ChoiceAnswers" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Choices" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "HelpfulResourceDisplayText")+ Prelude.<*> (x Data..:? "HelpfulResourceUrl")+ Prelude.<*> (x Data..:? "ImprovementPlanUrl")+ Prelude.<*> (x Data..:? "IsApplicable")+ Prelude.<*> (x Data..:? "Notes")+ Prelude.<*> (x Data..:? "PillarId")+ Prelude.<*> (x Data..:? "QuestionDescription")+ Prelude.<*> (x Data..:? "QuestionId")+ Prelude.<*> (x Data..:? "QuestionTitle")+ Prelude.<*> (x Data..:? "Reason")+ Prelude.<*> (x Data..:? "Risk")+ Prelude.<*> ( x+ Data..:? "SelectedChoices"+ Data..!= Prelude.mempty+ )+ )++instance Prelude.Hashable Answer where+ hashWithSalt _salt Answer' {..} =+ _salt+ `Prelude.hashWithSalt` choiceAnswers+ `Prelude.hashWithSalt` choices+ `Prelude.hashWithSalt` helpfulResourceDisplayText+ `Prelude.hashWithSalt` helpfulResourceUrl+ `Prelude.hashWithSalt` improvementPlanUrl+ `Prelude.hashWithSalt` isApplicable+ `Prelude.hashWithSalt` notes+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` questionDescription+ `Prelude.hashWithSalt` questionId+ `Prelude.hashWithSalt` questionTitle+ `Prelude.hashWithSalt` reason+ `Prelude.hashWithSalt` risk+ `Prelude.hashWithSalt` selectedChoices++instance Prelude.NFData Answer where+ rnf Answer' {..} =+ Prelude.rnf choiceAnswers+ `Prelude.seq` Prelude.rnf choices+ `Prelude.seq` Prelude.rnf helpfulResourceDisplayText+ `Prelude.seq` Prelude.rnf helpfulResourceUrl+ `Prelude.seq` Prelude.rnf improvementPlanUrl+ `Prelude.seq` Prelude.rnf isApplicable+ `Prelude.seq` Prelude.rnf notes+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf questionDescription+ `Prelude.seq` Prelude.rnf questionId+ `Prelude.seq` Prelude.rnf questionTitle+ `Prelude.seq` Prelude.rnf reason+ `Prelude.seq` Prelude.rnf risk+ `Prelude.seq` Prelude.rnf selectedChoices
+ gen/Amazonka/WellArchitected/Types/AnswerReason.hs view
@@ -0,0 +1,86 @@+{-# 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.WellArchitected.Types.AnswerReason+-- 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.WellArchitected.Types.AnswerReason+ ( AnswerReason+ ( ..,+ AnswerReason_ARCHITECTURE_CONSTRAINTS,+ AnswerReason_BUSINESS_PRIORITIES,+ AnswerReason_NONE,+ AnswerReason_OTHER,+ AnswerReason_OUT_OF_SCOPE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AnswerReason = AnswerReason'+ { fromAnswerReason ::+ 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 AnswerReason_ARCHITECTURE_CONSTRAINTS :: AnswerReason+pattern AnswerReason_ARCHITECTURE_CONSTRAINTS = AnswerReason' "ARCHITECTURE_CONSTRAINTS"++pattern AnswerReason_BUSINESS_PRIORITIES :: AnswerReason+pattern AnswerReason_BUSINESS_PRIORITIES = AnswerReason' "BUSINESS_PRIORITIES"++pattern AnswerReason_NONE :: AnswerReason+pattern AnswerReason_NONE = AnswerReason' "NONE"++pattern AnswerReason_OTHER :: AnswerReason+pattern AnswerReason_OTHER = AnswerReason' "OTHER"++pattern AnswerReason_OUT_OF_SCOPE :: AnswerReason+pattern AnswerReason_OUT_OF_SCOPE = AnswerReason' "OUT_OF_SCOPE"++{-# COMPLETE+ AnswerReason_ARCHITECTURE_CONSTRAINTS,+ AnswerReason_BUSINESS_PRIORITIES,+ AnswerReason_NONE,+ AnswerReason_OTHER,+ AnswerReason_OUT_OF_SCOPE,+ AnswerReason'+ #-}
+ gen/Amazonka/WellArchitected/Types/AnswerSummary.hs view
@@ -0,0 +1,175 @@+{-# 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.WellArchitected.Types.AnswerSummary+-- 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.WellArchitected.Types.AnswerSummary 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+import Amazonka.WellArchitected.Types.AnswerReason+import Amazonka.WellArchitected.Types.Choice+import Amazonka.WellArchitected.Types.ChoiceAnswerSummary+import Amazonka.WellArchitected.Types.Risk++-- | An answer summary of a lens review in a workload.+--+-- /See:/ 'newAnswerSummary' smart constructor.+data AnswerSummary = AnswerSummary'+ { -- | A list of selected choices to a question in your workload.+ choiceAnswerSummaries :: Prelude.Maybe [ChoiceAnswerSummary],+ choices :: Prelude.Maybe [Choice],+ isApplicable :: Prelude.Maybe Prelude.Bool,+ pillarId :: Prelude.Maybe Prelude.Text,+ questionId :: Prelude.Maybe Prelude.Text,+ questionTitle :: Prelude.Maybe Prelude.Text,+ -- | The reason why a choice is non-applicable to a question in your+ -- workload.+ reason :: Prelude.Maybe AnswerReason,+ risk :: Prelude.Maybe Risk,+ selectedChoices :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AnswerSummary' 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:+--+-- 'choiceAnswerSummaries', 'answerSummary_choiceAnswerSummaries' - A list of selected choices to a question in your workload.+--+-- 'choices', 'answerSummary_choices' - Undocumented member.+--+-- 'isApplicable', 'answerSummary_isApplicable' - Undocumented member.+--+-- 'pillarId', 'answerSummary_pillarId' - Undocumented member.+--+-- 'questionId', 'answerSummary_questionId' - Undocumented member.+--+-- 'questionTitle', 'answerSummary_questionTitle' - Undocumented member.+--+-- 'reason', 'answerSummary_reason' - The reason why a choice is non-applicable to a question in your+-- workload.+--+-- 'risk', 'answerSummary_risk' - Undocumented member.+--+-- 'selectedChoices', 'answerSummary_selectedChoices' - Undocumented member.+newAnswerSummary ::+ AnswerSummary+newAnswerSummary =+ AnswerSummary'+ { choiceAnswerSummaries =+ Prelude.Nothing,+ choices = Prelude.Nothing,+ isApplicable = Prelude.Nothing,+ pillarId = Prelude.Nothing,+ questionId = Prelude.Nothing,+ questionTitle = Prelude.Nothing,+ reason = Prelude.Nothing,+ risk = Prelude.Nothing,+ selectedChoices = Prelude.Nothing+ }++-- | A list of selected choices to a question in your workload.+answerSummary_choiceAnswerSummaries :: Lens.Lens' AnswerSummary (Prelude.Maybe [ChoiceAnswerSummary])+answerSummary_choiceAnswerSummaries = Lens.lens (\AnswerSummary' {choiceAnswerSummaries} -> choiceAnswerSummaries) (\s@AnswerSummary' {} a -> s {choiceAnswerSummaries = a} :: AnswerSummary) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+answerSummary_choices :: Lens.Lens' AnswerSummary (Prelude.Maybe [Choice])+answerSummary_choices = Lens.lens (\AnswerSummary' {choices} -> choices) (\s@AnswerSummary' {} a -> s {choices = a} :: AnswerSummary) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+answerSummary_isApplicable :: Lens.Lens' AnswerSummary (Prelude.Maybe Prelude.Bool)+answerSummary_isApplicable = Lens.lens (\AnswerSummary' {isApplicable} -> isApplicable) (\s@AnswerSummary' {} a -> s {isApplicable = a} :: AnswerSummary)++-- | Undocumented member.+answerSummary_pillarId :: Lens.Lens' AnswerSummary (Prelude.Maybe Prelude.Text)+answerSummary_pillarId = Lens.lens (\AnswerSummary' {pillarId} -> pillarId) (\s@AnswerSummary' {} a -> s {pillarId = a} :: AnswerSummary)++-- | Undocumented member.+answerSummary_questionId :: Lens.Lens' AnswerSummary (Prelude.Maybe Prelude.Text)+answerSummary_questionId = Lens.lens (\AnswerSummary' {questionId} -> questionId) (\s@AnswerSummary' {} a -> s {questionId = a} :: AnswerSummary)++-- | Undocumented member.+answerSummary_questionTitle :: Lens.Lens' AnswerSummary (Prelude.Maybe Prelude.Text)+answerSummary_questionTitle = Lens.lens (\AnswerSummary' {questionTitle} -> questionTitle) (\s@AnswerSummary' {} a -> s {questionTitle = a} :: AnswerSummary)++-- | The reason why a choice is non-applicable to a question in your+-- workload.+answerSummary_reason :: Lens.Lens' AnswerSummary (Prelude.Maybe AnswerReason)+answerSummary_reason = Lens.lens (\AnswerSummary' {reason} -> reason) (\s@AnswerSummary' {} a -> s {reason = a} :: AnswerSummary)++-- | Undocumented member.+answerSummary_risk :: Lens.Lens' AnswerSummary (Prelude.Maybe Risk)+answerSummary_risk = Lens.lens (\AnswerSummary' {risk} -> risk) (\s@AnswerSummary' {} a -> s {risk = a} :: AnswerSummary)++-- | Undocumented member.+answerSummary_selectedChoices :: Lens.Lens' AnswerSummary (Prelude.Maybe [Prelude.Text])+answerSummary_selectedChoices = Lens.lens (\AnswerSummary' {selectedChoices} -> selectedChoices) (\s@AnswerSummary' {} a -> s {selectedChoices = a} :: AnswerSummary) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON AnswerSummary where+ parseJSON =+ Data.withObject+ "AnswerSummary"+ ( \x ->+ AnswerSummary'+ Prelude.<$> ( x+ Data..:? "ChoiceAnswerSummaries"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "Choices" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "IsApplicable")+ Prelude.<*> (x Data..:? "PillarId")+ Prelude.<*> (x Data..:? "QuestionId")+ Prelude.<*> (x Data..:? "QuestionTitle")+ Prelude.<*> (x Data..:? "Reason")+ Prelude.<*> (x Data..:? "Risk")+ Prelude.<*> ( x+ Data..:? "SelectedChoices"+ Data..!= Prelude.mempty+ )+ )++instance Prelude.Hashable AnswerSummary where+ hashWithSalt _salt AnswerSummary' {..} =+ _salt+ `Prelude.hashWithSalt` choiceAnswerSummaries+ `Prelude.hashWithSalt` choices+ `Prelude.hashWithSalt` isApplicable+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` questionId+ `Prelude.hashWithSalt` questionTitle+ `Prelude.hashWithSalt` reason+ `Prelude.hashWithSalt` risk+ `Prelude.hashWithSalt` selectedChoices++instance Prelude.NFData AnswerSummary where+ rnf AnswerSummary' {..} =+ Prelude.rnf choiceAnswerSummaries+ `Prelude.seq` Prelude.rnf choices+ `Prelude.seq` Prelude.rnf isApplicable+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf questionId+ `Prelude.seq` Prelude.rnf questionTitle+ `Prelude.seq` Prelude.rnf reason+ `Prelude.seq` Prelude.rnf risk+ `Prelude.seq` Prelude.rnf selectedChoices
+ gen/Amazonka/WellArchitected/Types/CheckDetail.hs view
@@ -0,0 +1,215 @@+{-# 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.WellArchitected.Types.CheckDetail+-- 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.WellArchitected.Types.CheckDetail 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+import Amazonka.WellArchitected.Types.CheckFailureReason+import Amazonka.WellArchitected.Types.CheckProvider+import Amazonka.WellArchitected.Types.CheckStatus++-- | Account details for a Well-Architected best practice in relation to+-- Trusted Advisor checks.+--+-- /See:/ 'newCheckDetail' smart constructor.+data CheckDetail = CheckDetail'+ { accountId :: Prelude.Maybe Prelude.Text,+ choiceId :: Prelude.Maybe Prelude.Text,+ -- | Trusted Advisor check description.+ description :: Prelude.Maybe Prelude.Text,+ -- | Count of flagged resources associated to the check.+ flaggedResources :: Prelude.Maybe Prelude.Natural,+ -- | Trusted Advisor check ID.+ id :: Prelude.Maybe Prelude.Text,+ -- | Well-Architected Lens ARN associated to the check.+ lensArn :: Prelude.Maybe Prelude.Text,+ -- | Trusted Advisor check name.+ name :: Prelude.Maybe Prelude.Text,+ pillarId :: Prelude.Maybe Prelude.Text,+ -- | Provider of the check related to the best practice.+ provider :: Prelude.Maybe CheckProvider,+ questionId :: Prelude.Maybe Prelude.Text,+ -- | Reason associated to the check.+ reason :: Prelude.Maybe CheckFailureReason,+ -- | Status associated to the check.+ status :: Prelude.Maybe CheckStatus,+ updatedAt :: Prelude.Maybe Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CheckDetail' 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:+--+-- 'accountId', 'checkDetail_accountId' - Undocumented member.+--+-- 'choiceId', 'checkDetail_choiceId' - Undocumented member.+--+-- 'description', 'checkDetail_description' - Trusted Advisor check description.+--+-- 'flaggedResources', 'checkDetail_flaggedResources' - Count of flagged resources associated to the check.+--+-- 'id', 'checkDetail_id' - Trusted Advisor check ID.+--+-- 'lensArn', 'checkDetail_lensArn' - Well-Architected Lens ARN associated to the check.+--+-- 'name', 'checkDetail_name' - Trusted Advisor check name.+--+-- 'pillarId', 'checkDetail_pillarId' - Undocumented member.+--+-- 'provider', 'checkDetail_provider' - Provider of the check related to the best practice.+--+-- 'questionId', 'checkDetail_questionId' - Undocumented member.+--+-- 'reason', 'checkDetail_reason' - Reason associated to the check.+--+-- 'status', 'checkDetail_status' - Status associated to the check.+--+-- 'updatedAt', 'checkDetail_updatedAt' - Undocumented member.+newCheckDetail ::+ CheckDetail+newCheckDetail =+ CheckDetail'+ { accountId = Prelude.Nothing,+ choiceId = Prelude.Nothing,+ description = Prelude.Nothing,+ flaggedResources = Prelude.Nothing,+ id = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ name = Prelude.Nothing,+ pillarId = Prelude.Nothing,+ provider = Prelude.Nothing,+ questionId = Prelude.Nothing,+ reason = Prelude.Nothing,+ status = Prelude.Nothing,+ updatedAt = Prelude.Nothing+ }++-- | Undocumented member.+checkDetail_accountId :: Lens.Lens' CheckDetail (Prelude.Maybe Prelude.Text)+checkDetail_accountId = Lens.lens (\CheckDetail' {accountId} -> accountId) (\s@CheckDetail' {} a -> s {accountId = a} :: CheckDetail)++-- | Undocumented member.+checkDetail_choiceId :: Lens.Lens' CheckDetail (Prelude.Maybe Prelude.Text)+checkDetail_choiceId = Lens.lens (\CheckDetail' {choiceId} -> choiceId) (\s@CheckDetail' {} a -> s {choiceId = a} :: CheckDetail)++-- | Trusted Advisor check description.+checkDetail_description :: Lens.Lens' CheckDetail (Prelude.Maybe Prelude.Text)+checkDetail_description = Lens.lens (\CheckDetail' {description} -> description) (\s@CheckDetail' {} a -> s {description = a} :: CheckDetail)++-- | Count of flagged resources associated to the check.+checkDetail_flaggedResources :: Lens.Lens' CheckDetail (Prelude.Maybe Prelude.Natural)+checkDetail_flaggedResources = Lens.lens (\CheckDetail' {flaggedResources} -> flaggedResources) (\s@CheckDetail' {} a -> s {flaggedResources = a} :: CheckDetail)++-- | Trusted Advisor check ID.+checkDetail_id :: Lens.Lens' CheckDetail (Prelude.Maybe Prelude.Text)+checkDetail_id = Lens.lens (\CheckDetail' {id} -> id) (\s@CheckDetail' {} a -> s {id = a} :: CheckDetail)++-- | Well-Architected Lens ARN associated to the check.+checkDetail_lensArn :: Lens.Lens' CheckDetail (Prelude.Maybe Prelude.Text)+checkDetail_lensArn = Lens.lens (\CheckDetail' {lensArn} -> lensArn) (\s@CheckDetail' {} a -> s {lensArn = a} :: CheckDetail)++-- | Trusted Advisor check name.+checkDetail_name :: Lens.Lens' CheckDetail (Prelude.Maybe Prelude.Text)+checkDetail_name = Lens.lens (\CheckDetail' {name} -> name) (\s@CheckDetail' {} a -> s {name = a} :: CheckDetail)++-- | Undocumented member.+checkDetail_pillarId :: Lens.Lens' CheckDetail (Prelude.Maybe Prelude.Text)+checkDetail_pillarId = Lens.lens (\CheckDetail' {pillarId} -> pillarId) (\s@CheckDetail' {} a -> s {pillarId = a} :: CheckDetail)++-- | Provider of the check related to the best practice.+checkDetail_provider :: Lens.Lens' CheckDetail (Prelude.Maybe CheckProvider)+checkDetail_provider = Lens.lens (\CheckDetail' {provider} -> provider) (\s@CheckDetail' {} a -> s {provider = a} :: CheckDetail)++-- | Undocumented member.+checkDetail_questionId :: Lens.Lens' CheckDetail (Prelude.Maybe Prelude.Text)+checkDetail_questionId = Lens.lens (\CheckDetail' {questionId} -> questionId) (\s@CheckDetail' {} a -> s {questionId = a} :: CheckDetail)++-- | Reason associated to the check.+checkDetail_reason :: Lens.Lens' CheckDetail (Prelude.Maybe CheckFailureReason)+checkDetail_reason = Lens.lens (\CheckDetail' {reason} -> reason) (\s@CheckDetail' {} a -> s {reason = a} :: CheckDetail)++-- | Status associated to the check.+checkDetail_status :: Lens.Lens' CheckDetail (Prelude.Maybe CheckStatus)+checkDetail_status = Lens.lens (\CheckDetail' {status} -> status) (\s@CheckDetail' {} a -> s {status = a} :: CheckDetail)++-- | Undocumented member.+checkDetail_updatedAt :: Lens.Lens' CheckDetail (Prelude.Maybe Prelude.UTCTime)+checkDetail_updatedAt = Lens.lens (\CheckDetail' {updatedAt} -> updatedAt) (\s@CheckDetail' {} a -> s {updatedAt = a} :: CheckDetail) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON CheckDetail where+ parseJSON =+ Data.withObject+ "CheckDetail"+ ( \x ->+ CheckDetail'+ Prelude.<$> (x Data..:? "AccountId")+ Prelude.<*> (x Data..:? "ChoiceId")+ Prelude.<*> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "FlaggedResources")+ Prelude.<*> (x Data..:? "Id")+ Prelude.<*> (x Data..:? "LensArn")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "PillarId")+ Prelude.<*> (x Data..:? "Provider")+ Prelude.<*> (x Data..:? "QuestionId")+ Prelude.<*> (x Data..:? "Reason")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "UpdatedAt")+ )++instance Prelude.Hashable CheckDetail where+ hashWithSalt _salt CheckDetail' {..} =+ _salt+ `Prelude.hashWithSalt` accountId+ `Prelude.hashWithSalt` choiceId+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` flaggedResources+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` provider+ `Prelude.hashWithSalt` questionId+ `Prelude.hashWithSalt` reason+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData CheckDetail where+ rnf CheckDetail' {..} =+ Prelude.rnf accountId+ `Prelude.seq` Prelude.rnf choiceId+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf flaggedResources+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf provider+ `Prelude.seq` Prelude.rnf questionId+ `Prelude.seq` Prelude.rnf reason+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/WellArchitected/Types/CheckFailureReason.hs view
@@ -0,0 +1,81 @@+{-# 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.WellArchitected.Types.CheckFailureReason+-- 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.WellArchitected.Types.CheckFailureReason+ ( CheckFailureReason+ ( ..,+ CheckFailureReason_ACCESS_DENIED,+ CheckFailureReason_ASSUME_ROLE_ERROR,+ CheckFailureReason_PREMIUM_SUPPORT_REQUIRED,+ CheckFailureReason_UNKNOWN_ERROR+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype CheckFailureReason = CheckFailureReason'+ { fromCheckFailureReason ::+ 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 CheckFailureReason_ACCESS_DENIED :: CheckFailureReason+pattern CheckFailureReason_ACCESS_DENIED = CheckFailureReason' "ACCESS_DENIED"++pattern CheckFailureReason_ASSUME_ROLE_ERROR :: CheckFailureReason+pattern CheckFailureReason_ASSUME_ROLE_ERROR = CheckFailureReason' "ASSUME_ROLE_ERROR"++pattern CheckFailureReason_PREMIUM_SUPPORT_REQUIRED :: CheckFailureReason+pattern CheckFailureReason_PREMIUM_SUPPORT_REQUIRED = CheckFailureReason' "PREMIUM_SUPPORT_REQUIRED"++pattern CheckFailureReason_UNKNOWN_ERROR :: CheckFailureReason+pattern CheckFailureReason_UNKNOWN_ERROR = CheckFailureReason' "UNKNOWN_ERROR"++{-# COMPLETE+ CheckFailureReason_ACCESS_DENIED,+ CheckFailureReason_ASSUME_ROLE_ERROR,+ CheckFailureReason_PREMIUM_SUPPORT_REQUIRED,+ CheckFailureReason_UNKNOWN_ERROR,+ CheckFailureReason'+ #-}
+ gen/Amazonka/WellArchitected/Types/CheckProvider.hs view
@@ -0,0 +1,66 @@+{-# 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.WellArchitected.Types.CheckProvider+-- 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.WellArchitected.Types.CheckProvider+ ( CheckProvider+ ( ..,+ CheckProvider_TRUSTED_ADVISOR+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype CheckProvider = CheckProvider'+ { fromCheckProvider ::+ 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 CheckProvider_TRUSTED_ADVISOR :: CheckProvider+pattern CheckProvider_TRUSTED_ADVISOR = CheckProvider' "TRUSTED_ADVISOR"++{-# COMPLETE+ CheckProvider_TRUSTED_ADVISOR,+ CheckProvider'+ #-}
+ gen/Amazonka/WellArchitected/Types/CheckStatus.hs view
@@ -0,0 +1,86 @@+{-# 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.WellArchitected.Types.CheckStatus+-- 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.WellArchitected.Types.CheckStatus+ ( CheckStatus+ ( ..,+ CheckStatus_ERROR,+ CheckStatus_FETCH_FAILED,+ CheckStatus_NOT_AVAILABLE,+ CheckStatus_OKAY,+ CheckStatus_WARNING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype CheckStatus = CheckStatus'+ { fromCheckStatus ::+ 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 CheckStatus_ERROR :: CheckStatus+pattern CheckStatus_ERROR = CheckStatus' "ERROR"++pattern CheckStatus_FETCH_FAILED :: CheckStatus+pattern CheckStatus_FETCH_FAILED = CheckStatus' "FETCH_FAILED"++pattern CheckStatus_NOT_AVAILABLE :: CheckStatus+pattern CheckStatus_NOT_AVAILABLE = CheckStatus' "NOT_AVAILABLE"++pattern CheckStatus_OKAY :: CheckStatus+pattern CheckStatus_OKAY = CheckStatus' "OKAY"++pattern CheckStatus_WARNING :: CheckStatus+pattern CheckStatus_WARNING = CheckStatus' "WARNING"++{-# COMPLETE+ CheckStatus_ERROR,+ CheckStatus_FETCH_FAILED,+ CheckStatus_NOT_AVAILABLE,+ CheckStatus_OKAY,+ CheckStatus_WARNING,+ CheckStatus'+ #-}
+ gen/Amazonka/WellArchitected/Types/CheckSummary.hs view
@@ -0,0 +1,190 @@+{-# 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.WellArchitected.Types.CheckSummary+-- 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.WellArchitected.Types.CheckSummary 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+import Amazonka.WellArchitected.Types.CheckProvider+import Amazonka.WellArchitected.Types.CheckStatus++-- | Trusted Advisor check summary.+--+-- /See:/ 'newCheckSummary' smart constructor.+data CheckSummary = CheckSummary'+ { -- | Account summary associated to the check.+ accountSummary :: Prelude.Maybe (Prelude.HashMap CheckStatus Prelude.Natural),+ choiceId :: Prelude.Maybe Prelude.Text,+ -- | Trusted Advisor check description.+ description :: Prelude.Maybe Prelude.Text,+ -- | Trusted Advisor check ID.+ id :: Prelude.Maybe Prelude.Text,+ -- | Well-Architected Lens ARN associated to the check.+ lensArn :: Prelude.Maybe Prelude.Text,+ -- | Trusted Advisor check name.+ name :: Prelude.Maybe Prelude.Text,+ pillarId :: Prelude.Maybe Prelude.Text,+ -- | Provider of the check related to the best practice.+ provider :: Prelude.Maybe CheckProvider,+ questionId :: Prelude.Maybe Prelude.Text,+ -- | Status associated to the check.+ status :: Prelude.Maybe CheckStatus,+ updatedAt :: Prelude.Maybe Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CheckSummary' 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:+--+-- 'accountSummary', 'checkSummary_accountSummary' - Account summary associated to the check.+--+-- 'choiceId', 'checkSummary_choiceId' - Undocumented member.+--+-- 'description', 'checkSummary_description' - Trusted Advisor check description.+--+-- 'id', 'checkSummary_id' - Trusted Advisor check ID.+--+-- 'lensArn', 'checkSummary_lensArn' - Well-Architected Lens ARN associated to the check.+--+-- 'name', 'checkSummary_name' - Trusted Advisor check name.+--+-- 'pillarId', 'checkSummary_pillarId' - Undocumented member.+--+-- 'provider', 'checkSummary_provider' - Provider of the check related to the best practice.+--+-- 'questionId', 'checkSummary_questionId' - Undocumented member.+--+-- 'status', 'checkSummary_status' - Status associated to the check.+--+-- 'updatedAt', 'checkSummary_updatedAt' - Undocumented member.+newCheckSummary ::+ CheckSummary+newCheckSummary =+ CheckSummary'+ { accountSummary = Prelude.Nothing,+ choiceId = Prelude.Nothing,+ description = Prelude.Nothing,+ id = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ name = Prelude.Nothing,+ pillarId = Prelude.Nothing,+ provider = Prelude.Nothing,+ questionId = Prelude.Nothing,+ status = Prelude.Nothing,+ updatedAt = Prelude.Nothing+ }++-- | Account summary associated to the check.+checkSummary_accountSummary :: Lens.Lens' CheckSummary (Prelude.Maybe (Prelude.HashMap CheckStatus Prelude.Natural))+checkSummary_accountSummary = Lens.lens (\CheckSummary' {accountSummary} -> accountSummary) (\s@CheckSummary' {} a -> s {accountSummary = a} :: CheckSummary) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+checkSummary_choiceId :: Lens.Lens' CheckSummary (Prelude.Maybe Prelude.Text)+checkSummary_choiceId = Lens.lens (\CheckSummary' {choiceId} -> choiceId) (\s@CheckSummary' {} a -> s {choiceId = a} :: CheckSummary)++-- | Trusted Advisor check description.+checkSummary_description :: Lens.Lens' CheckSummary (Prelude.Maybe Prelude.Text)+checkSummary_description = Lens.lens (\CheckSummary' {description} -> description) (\s@CheckSummary' {} a -> s {description = a} :: CheckSummary)++-- | Trusted Advisor check ID.+checkSummary_id :: Lens.Lens' CheckSummary (Prelude.Maybe Prelude.Text)+checkSummary_id = Lens.lens (\CheckSummary' {id} -> id) (\s@CheckSummary' {} a -> s {id = a} :: CheckSummary)++-- | Well-Architected Lens ARN associated to the check.+checkSummary_lensArn :: Lens.Lens' CheckSummary (Prelude.Maybe Prelude.Text)+checkSummary_lensArn = Lens.lens (\CheckSummary' {lensArn} -> lensArn) (\s@CheckSummary' {} a -> s {lensArn = a} :: CheckSummary)++-- | Trusted Advisor check name.+checkSummary_name :: Lens.Lens' CheckSummary (Prelude.Maybe Prelude.Text)+checkSummary_name = Lens.lens (\CheckSummary' {name} -> name) (\s@CheckSummary' {} a -> s {name = a} :: CheckSummary)++-- | Undocumented member.+checkSummary_pillarId :: Lens.Lens' CheckSummary (Prelude.Maybe Prelude.Text)+checkSummary_pillarId = Lens.lens (\CheckSummary' {pillarId} -> pillarId) (\s@CheckSummary' {} a -> s {pillarId = a} :: CheckSummary)++-- | Provider of the check related to the best practice.+checkSummary_provider :: Lens.Lens' CheckSummary (Prelude.Maybe CheckProvider)+checkSummary_provider = Lens.lens (\CheckSummary' {provider} -> provider) (\s@CheckSummary' {} a -> s {provider = a} :: CheckSummary)++-- | Undocumented member.+checkSummary_questionId :: Lens.Lens' CheckSummary (Prelude.Maybe Prelude.Text)+checkSummary_questionId = Lens.lens (\CheckSummary' {questionId} -> questionId) (\s@CheckSummary' {} a -> s {questionId = a} :: CheckSummary)++-- | Status associated to the check.+checkSummary_status :: Lens.Lens' CheckSummary (Prelude.Maybe CheckStatus)+checkSummary_status = Lens.lens (\CheckSummary' {status} -> status) (\s@CheckSummary' {} a -> s {status = a} :: CheckSummary)++-- | Undocumented member.+checkSummary_updatedAt :: Lens.Lens' CheckSummary (Prelude.Maybe Prelude.UTCTime)+checkSummary_updatedAt = Lens.lens (\CheckSummary' {updatedAt} -> updatedAt) (\s@CheckSummary' {} a -> s {updatedAt = a} :: CheckSummary) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON CheckSummary where+ parseJSON =+ Data.withObject+ "CheckSummary"+ ( \x ->+ CheckSummary'+ Prelude.<$> (x Data..:? "AccountSummary" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "ChoiceId")+ Prelude.<*> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "Id")+ Prelude.<*> (x Data..:? "LensArn")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "PillarId")+ Prelude.<*> (x Data..:? "Provider")+ Prelude.<*> (x Data..:? "QuestionId")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "UpdatedAt")+ )++instance Prelude.Hashable CheckSummary where+ hashWithSalt _salt CheckSummary' {..} =+ _salt+ `Prelude.hashWithSalt` accountSummary+ `Prelude.hashWithSalt` choiceId+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` provider+ `Prelude.hashWithSalt` questionId+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData CheckSummary where+ rnf CheckSummary' {..} =+ Prelude.rnf accountSummary+ `Prelude.seq` Prelude.rnf choiceId+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf provider+ `Prelude.seq` Prelude.rnf questionId+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/WellArchitected/Types/Choice.hs view
@@ -0,0 +1,140 @@+{-# 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.WellArchitected.Types.Choice+-- 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.WellArchitected.Types.Choice 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+import Amazonka.WellArchitected.Types.AdditionalResources+import Amazonka.WellArchitected.Types.ChoiceContent++-- | A choice available to answer question.+--+-- /See:/ 'newChoice' smart constructor.+data Choice = Choice'+ { -- | The additional resources for a choice. A choice can have up to two+ -- additional resources: one of type @HELPFUL_RESOURCE@, one of type+ -- @IMPROVEMENT_PLAN@, or both.+ additionalResources :: Prelude.Maybe [AdditionalResources],+ choiceId :: Prelude.Maybe Prelude.Text,+ description :: Prelude.Maybe Prelude.Text,+ -- | The choice level helpful resource.+ helpfulResource :: Prelude.Maybe ChoiceContent,+ -- | The choice level improvement plan.+ improvementPlan :: Prelude.Maybe ChoiceContent,+ title :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Choice' 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:+--+-- 'additionalResources', 'choice_additionalResources' - The additional resources for a choice. A choice can have up to two+-- additional resources: one of type @HELPFUL_RESOURCE@, one of type+-- @IMPROVEMENT_PLAN@, or both.+--+-- 'choiceId', 'choice_choiceId' - Undocumented member.+--+-- 'description', 'choice_description' - Undocumented member.+--+-- 'helpfulResource', 'choice_helpfulResource' - The choice level helpful resource.+--+-- 'improvementPlan', 'choice_improvementPlan' - The choice level improvement plan.+--+-- 'title', 'choice_title' - Undocumented member.+newChoice ::+ Choice+newChoice =+ Choice'+ { additionalResources = Prelude.Nothing,+ choiceId = Prelude.Nothing,+ description = Prelude.Nothing,+ helpfulResource = Prelude.Nothing,+ improvementPlan = Prelude.Nothing,+ title = Prelude.Nothing+ }++-- | The additional resources for a choice. A choice can have up to two+-- additional resources: one of type @HELPFUL_RESOURCE@, one of type+-- @IMPROVEMENT_PLAN@, or both.+choice_additionalResources :: Lens.Lens' Choice (Prelude.Maybe [AdditionalResources])+choice_additionalResources = Lens.lens (\Choice' {additionalResources} -> additionalResources) (\s@Choice' {} a -> s {additionalResources = a} :: Choice) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+choice_choiceId :: Lens.Lens' Choice (Prelude.Maybe Prelude.Text)+choice_choiceId = Lens.lens (\Choice' {choiceId} -> choiceId) (\s@Choice' {} a -> s {choiceId = a} :: Choice)++-- | Undocumented member.+choice_description :: Lens.Lens' Choice (Prelude.Maybe Prelude.Text)+choice_description = Lens.lens (\Choice' {description} -> description) (\s@Choice' {} a -> s {description = a} :: Choice)++-- | The choice level helpful resource.+choice_helpfulResource :: Lens.Lens' Choice (Prelude.Maybe ChoiceContent)+choice_helpfulResource = Lens.lens (\Choice' {helpfulResource} -> helpfulResource) (\s@Choice' {} a -> s {helpfulResource = a} :: Choice)++-- | The choice level improvement plan.+choice_improvementPlan :: Lens.Lens' Choice (Prelude.Maybe ChoiceContent)+choice_improvementPlan = Lens.lens (\Choice' {improvementPlan} -> improvementPlan) (\s@Choice' {} a -> s {improvementPlan = a} :: Choice)++-- | Undocumented member.+choice_title :: Lens.Lens' Choice (Prelude.Maybe Prelude.Text)+choice_title = Lens.lens (\Choice' {title} -> title) (\s@Choice' {} a -> s {title = a} :: Choice)++instance Data.FromJSON Choice where+ parseJSON =+ Data.withObject+ "Choice"+ ( \x ->+ Choice'+ Prelude.<$> ( x+ Data..:? "AdditionalResources"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "ChoiceId")+ Prelude.<*> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "HelpfulResource")+ Prelude.<*> (x Data..:? "ImprovementPlan")+ Prelude.<*> (x Data..:? "Title")+ )++instance Prelude.Hashable Choice where+ hashWithSalt _salt Choice' {..} =+ _salt+ `Prelude.hashWithSalt` additionalResources+ `Prelude.hashWithSalt` choiceId+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` helpfulResource+ `Prelude.hashWithSalt` improvementPlan+ `Prelude.hashWithSalt` title++instance Prelude.NFData Choice where+ rnf Choice' {..} =+ Prelude.rnf additionalResources+ `Prelude.seq` Prelude.rnf choiceId+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf helpfulResource+ `Prelude.seq` Prelude.rnf improvementPlan+ `Prelude.seq` Prelude.rnf title
+ gen/Amazonka/WellArchitected/Types/ChoiceAnswer.hs view
@@ -0,0 +1,112 @@+{-# 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.WellArchitected.Types.ChoiceAnswer+-- 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.WellArchitected.Types.ChoiceAnswer 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+import Amazonka.WellArchitected.Types.ChoiceReason+import Amazonka.WellArchitected.Types.ChoiceStatus++-- | A choice that has been answered on a question in your workload.+--+-- /See:/ 'newChoiceAnswer' smart constructor.+data ChoiceAnswer = ChoiceAnswer'+ { choiceId :: Prelude.Maybe Prelude.Text,+ -- | The notes associated with a choice.+ notes :: Prelude.Maybe Prelude.Text,+ -- | The reason why a choice is non-applicable to a question in your+ -- workload.+ reason :: Prelude.Maybe ChoiceReason,+ -- | The status of a choice.+ status :: Prelude.Maybe ChoiceStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChoiceAnswer' 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:+--+-- 'choiceId', 'choiceAnswer_choiceId' - Undocumented member.+--+-- 'notes', 'choiceAnswer_notes' - The notes associated with a choice.+--+-- 'reason', 'choiceAnswer_reason' - The reason why a choice is non-applicable to a question in your+-- workload.+--+-- 'status', 'choiceAnswer_status' - The status of a choice.+newChoiceAnswer ::+ ChoiceAnswer+newChoiceAnswer =+ ChoiceAnswer'+ { choiceId = Prelude.Nothing,+ notes = Prelude.Nothing,+ reason = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | Undocumented member.+choiceAnswer_choiceId :: Lens.Lens' ChoiceAnswer (Prelude.Maybe Prelude.Text)+choiceAnswer_choiceId = Lens.lens (\ChoiceAnswer' {choiceId} -> choiceId) (\s@ChoiceAnswer' {} a -> s {choiceId = a} :: ChoiceAnswer)++-- | The notes associated with a choice.+choiceAnswer_notes :: Lens.Lens' ChoiceAnswer (Prelude.Maybe Prelude.Text)+choiceAnswer_notes = Lens.lens (\ChoiceAnswer' {notes} -> notes) (\s@ChoiceAnswer' {} a -> s {notes = a} :: ChoiceAnswer)++-- | The reason why a choice is non-applicable to a question in your+-- workload.+choiceAnswer_reason :: Lens.Lens' ChoiceAnswer (Prelude.Maybe ChoiceReason)+choiceAnswer_reason = Lens.lens (\ChoiceAnswer' {reason} -> reason) (\s@ChoiceAnswer' {} a -> s {reason = a} :: ChoiceAnswer)++-- | The status of a choice.+choiceAnswer_status :: Lens.Lens' ChoiceAnswer (Prelude.Maybe ChoiceStatus)+choiceAnswer_status = Lens.lens (\ChoiceAnswer' {status} -> status) (\s@ChoiceAnswer' {} a -> s {status = a} :: ChoiceAnswer)++instance Data.FromJSON ChoiceAnswer where+ parseJSON =+ Data.withObject+ "ChoiceAnswer"+ ( \x ->+ ChoiceAnswer'+ Prelude.<$> (x Data..:? "ChoiceId")+ Prelude.<*> (x Data..:? "Notes")+ Prelude.<*> (x Data..:? "Reason")+ Prelude.<*> (x Data..:? "Status")+ )++instance Prelude.Hashable ChoiceAnswer where+ hashWithSalt _salt ChoiceAnswer' {..} =+ _salt+ `Prelude.hashWithSalt` choiceId+ `Prelude.hashWithSalt` notes+ `Prelude.hashWithSalt` reason+ `Prelude.hashWithSalt` status++instance Prelude.NFData ChoiceAnswer where+ rnf ChoiceAnswer' {..} =+ Prelude.rnf choiceId+ `Prelude.seq` Prelude.rnf notes+ `Prelude.seq` Prelude.rnf reason+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/WellArchitected/Types/ChoiceAnswerSummary.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.WellArchitected.Types.ChoiceAnswerSummary+-- 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.WellArchitected.Types.ChoiceAnswerSummary 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+import Amazonka.WellArchitected.Types.ChoiceReason+import Amazonka.WellArchitected.Types.ChoiceStatus++-- | A choice summary that has been answered on a question in your workload.+--+-- /See:/ 'newChoiceAnswerSummary' smart constructor.+data ChoiceAnswerSummary = ChoiceAnswerSummary'+ { choiceId :: Prelude.Maybe Prelude.Text,+ -- | The reason why a choice is non-applicable to a question in your+ -- workload.+ reason :: Prelude.Maybe ChoiceReason,+ -- | The status of a choice.+ status :: Prelude.Maybe ChoiceStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChoiceAnswerSummary' 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:+--+-- 'choiceId', 'choiceAnswerSummary_choiceId' - Undocumented member.+--+-- 'reason', 'choiceAnswerSummary_reason' - The reason why a choice is non-applicable to a question in your+-- workload.+--+-- 'status', 'choiceAnswerSummary_status' - The status of a choice.+newChoiceAnswerSummary ::+ ChoiceAnswerSummary+newChoiceAnswerSummary =+ ChoiceAnswerSummary'+ { choiceId = Prelude.Nothing,+ reason = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | Undocumented member.+choiceAnswerSummary_choiceId :: Lens.Lens' ChoiceAnswerSummary (Prelude.Maybe Prelude.Text)+choiceAnswerSummary_choiceId = Lens.lens (\ChoiceAnswerSummary' {choiceId} -> choiceId) (\s@ChoiceAnswerSummary' {} a -> s {choiceId = a} :: ChoiceAnswerSummary)++-- | The reason why a choice is non-applicable to a question in your+-- workload.+choiceAnswerSummary_reason :: Lens.Lens' ChoiceAnswerSummary (Prelude.Maybe ChoiceReason)+choiceAnswerSummary_reason = Lens.lens (\ChoiceAnswerSummary' {reason} -> reason) (\s@ChoiceAnswerSummary' {} a -> s {reason = a} :: ChoiceAnswerSummary)++-- | The status of a choice.+choiceAnswerSummary_status :: Lens.Lens' ChoiceAnswerSummary (Prelude.Maybe ChoiceStatus)+choiceAnswerSummary_status = Lens.lens (\ChoiceAnswerSummary' {status} -> status) (\s@ChoiceAnswerSummary' {} a -> s {status = a} :: ChoiceAnswerSummary)++instance Data.FromJSON ChoiceAnswerSummary where+ parseJSON =+ Data.withObject+ "ChoiceAnswerSummary"+ ( \x ->+ ChoiceAnswerSummary'+ Prelude.<$> (x Data..:? "ChoiceId")+ Prelude.<*> (x Data..:? "Reason")+ Prelude.<*> (x Data..:? "Status")+ )++instance Prelude.Hashable ChoiceAnswerSummary where+ hashWithSalt _salt ChoiceAnswerSummary' {..} =+ _salt+ `Prelude.hashWithSalt` choiceId+ `Prelude.hashWithSalt` reason+ `Prelude.hashWithSalt` status++instance Prelude.NFData ChoiceAnswerSummary where+ rnf ChoiceAnswerSummary' {..} =+ Prelude.rnf choiceId+ `Prelude.seq` Prelude.rnf reason+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/WellArchitected/Types/ChoiceContent.hs view
@@ -0,0 +1,84 @@+{-# 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.WellArchitected.Types.ChoiceContent+-- 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.WellArchitected.Types.ChoiceContent 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 choice content.+--+-- /See:/ 'newChoiceContent' smart constructor.+data ChoiceContent = ChoiceContent'+ { -- | The display text for the choice content.+ displayText :: Prelude.Maybe Prelude.Text,+ -- | The URL for the choice content.+ url :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChoiceContent' 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:+--+-- 'displayText', 'choiceContent_displayText' - The display text for the choice content.+--+-- 'url', 'choiceContent_url' - The URL for the choice content.+newChoiceContent ::+ ChoiceContent+newChoiceContent =+ ChoiceContent'+ { displayText = Prelude.Nothing,+ url = Prelude.Nothing+ }++-- | The display text for the choice content.+choiceContent_displayText :: Lens.Lens' ChoiceContent (Prelude.Maybe Prelude.Text)+choiceContent_displayText = Lens.lens (\ChoiceContent' {displayText} -> displayText) (\s@ChoiceContent' {} a -> s {displayText = a} :: ChoiceContent)++-- | The URL for the choice content.+choiceContent_url :: Lens.Lens' ChoiceContent (Prelude.Maybe Prelude.Text)+choiceContent_url = Lens.lens (\ChoiceContent' {url} -> url) (\s@ChoiceContent' {} a -> s {url = a} :: ChoiceContent)++instance Data.FromJSON ChoiceContent where+ parseJSON =+ Data.withObject+ "ChoiceContent"+ ( \x ->+ ChoiceContent'+ Prelude.<$> (x Data..:? "DisplayText")+ Prelude.<*> (x Data..:? "Url")+ )++instance Prelude.Hashable ChoiceContent where+ hashWithSalt _salt ChoiceContent' {..} =+ _salt+ `Prelude.hashWithSalt` displayText+ `Prelude.hashWithSalt` url++instance Prelude.NFData ChoiceContent where+ rnf ChoiceContent' {..} =+ Prelude.rnf displayText+ `Prelude.seq` Prelude.rnf url
+ gen/Amazonka/WellArchitected/Types/ChoiceImprovementPlan.hs view
@@ -0,0 +1,94 @@+{-# 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.WellArchitected.Types.ChoiceImprovementPlan+-- 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.WellArchitected.Types.ChoiceImprovementPlan 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 choice level improvement plan.+--+-- /See:/ 'newChoiceImprovementPlan' smart constructor.+data ChoiceImprovementPlan = ChoiceImprovementPlan'+ { choiceId :: Prelude.Maybe Prelude.Text,+ -- | The display text for the improvement plan.+ displayText :: Prelude.Maybe Prelude.Text,+ improvementPlanUrl :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChoiceImprovementPlan' 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:+--+-- 'choiceId', 'choiceImprovementPlan_choiceId' - Undocumented member.+--+-- 'displayText', 'choiceImprovementPlan_displayText' - The display text for the improvement plan.+--+-- 'improvementPlanUrl', 'choiceImprovementPlan_improvementPlanUrl' - Undocumented member.+newChoiceImprovementPlan ::+ ChoiceImprovementPlan+newChoiceImprovementPlan =+ ChoiceImprovementPlan'+ { choiceId = Prelude.Nothing,+ displayText = Prelude.Nothing,+ improvementPlanUrl = Prelude.Nothing+ }++-- | Undocumented member.+choiceImprovementPlan_choiceId :: Lens.Lens' ChoiceImprovementPlan (Prelude.Maybe Prelude.Text)+choiceImprovementPlan_choiceId = Lens.lens (\ChoiceImprovementPlan' {choiceId} -> choiceId) (\s@ChoiceImprovementPlan' {} a -> s {choiceId = a} :: ChoiceImprovementPlan)++-- | The display text for the improvement plan.+choiceImprovementPlan_displayText :: Lens.Lens' ChoiceImprovementPlan (Prelude.Maybe Prelude.Text)+choiceImprovementPlan_displayText = Lens.lens (\ChoiceImprovementPlan' {displayText} -> displayText) (\s@ChoiceImprovementPlan' {} a -> s {displayText = a} :: ChoiceImprovementPlan)++-- | Undocumented member.+choiceImprovementPlan_improvementPlanUrl :: Lens.Lens' ChoiceImprovementPlan (Prelude.Maybe Prelude.Text)+choiceImprovementPlan_improvementPlanUrl = Lens.lens (\ChoiceImprovementPlan' {improvementPlanUrl} -> improvementPlanUrl) (\s@ChoiceImprovementPlan' {} a -> s {improvementPlanUrl = a} :: ChoiceImprovementPlan)++instance Data.FromJSON ChoiceImprovementPlan where+ parseJSON =+ Data.withObject+ "ChoiceImprovementPlan"+ ( \x ->+ ChoiceImprovementPlan'+ Prelude.<$> (x Data..:? "ChoiceId")+ Prelude.<*> (x Data..:? "DisplayText")+ Prelude.<*> (x Data..:? "ImprovementPlanUrl")+ )++instance Prelude.Hashable ChoiceImprovementPlan where+ hashWithSalt _salt ChoiceImprovementPlan' {..} =+ _salt+ `Prelude.hashWithSalt` choiceId+ `Prelude.hashWithSalt` displayText+ `Prelude.hashWithSalt` improvementPlanUrl++instance Prelude.NFData ChoiceImprovementPlan where+ rnf ChoiceImprovementPlan' {..} =+ Prelude.rnf choiceId+ `Prelude.seq` Prelude.rnf displayText+ `Prelude.seq` Prelude.rnf improvementPlanUrl
+ gen/Amazonka/WellArchitected/Types/ChoiceReason.hs view
@@ -0,0 +1,86 @@+{-# 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.WellArchitected.Types.ChoiceReason+-- 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.WellArchitected.Types.ChoiceReason+ ( ChoiceReason+ ( ..,+ ChoiceReason_ARCHITECTURE_CONSTRAINTS,+ ChoiceReason_BUSINESS_PRIORITIES,+ ChoiceReason_NONE,+ ChoiceReason_OTHER,+ ChoiceReason_OUT_OF_SCOPE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ChoiceReason = ChoiceReason'+ { fromChoiceReason ::+ 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 ChoiceReason_ARCHITECTURE_CONSTRAINTS :: ChoiceReason+pattern ChoiceReason_ARCHITECTURE_CONSTRAINTS = ChoiceReason' "ARCHITECTURE_CONSTRAINTS"++pattern ChoiceReason_BUSINESS_PRIORITIES :: ChoiceReason+pattern ChoiceReason_BUSINESS_PRIORITIES = ChoiceReason' "BUSINESS_PRIORITIES"++pattern ChoiceReason_NONE :: ChoiceReason+pattern ChoiceReason_NONE = ChoiceReason' "NONE"++pattern ChoiceReason_OTHER :: ChoiceReason+pattern ChoiceReason_OTHER = ChoiceReason' "OTHER"++pattern ChoiceReason_OUT_OF_SCOPE :: ChoiceReason+pattern ChoiceReason_OUT_OF_SCOPE = ChoiceReason' "OUT_OF_SCOPE"++{-# COMPLETE+ ChoiceReason_ARCHITECTURE_CONSTRAINTS,+ ChoiceReason_BUSINESS_PRIORITIES,+ ChoiceReason_NONE,+ ChoiceReason_OTHER,+ ChoiceReason_OUT_OF_SCOPE,+ ChoiceReason'+ #-}
+ gen/Amazonka/WellArchitected/Types/ChoiceStatus.hs view
@@ -0,0 +1,76 @@+{-# 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.WellArchitected.Types.ChoiceStatus+-- 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.WellArchitected.Types.ChoiceStatus+ ( ChoiceStatus+ ( ..,+ ChoiceStatus_NOT_APPLICABLE,+ ChoiceStatus_SELECTED,+ ChoiceStatus_UNSELECTED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ChoiceStatus = ChoiceStatus'+ { fromChoiceStatus ::+ 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 ChoiceStatus_NOT_APPLICABLE :: ChoiceStatus+pattern ChoiceStatus_NOT_APPLICABLE = ChoiceStatus' "NOT_APPLICABLE"++pattern ChoiceStatus_SELECTED :: ChoiceStatus+pattern ChoiceStatus_SELECTED = ChoiceStatus' "SELECTED"++pattern ChoiceStatus_UNSELECTED :: ChoiceStatus+pattern ChoiceStatus_UNSELECTED = ChoiceStatus' "UNSELECTED"++{-# COMPLETE+ ChoiceStatus_NOT_APPLICABLE,+ ChoiceStatus_SELECTED,+ ChoiceStatus_UNSELECTED,+ ChoiceStatus'+ #-}
+ gen/Amazonka/WellArchitected/Types/ChoiceUpdate.hs view
@@ -0,0 +1,102 @@+{-# 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.WellArchitected.Types.ChoiceUpdate+-- 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.WellArchitected.Types.ChoiceUpdate 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+import Amazonka.WellArchitected.Types.ChoiceReason+import Amazonka.WellArchitected.Types.ChoiceStatus++-- | A list of choices to be updated.+--+-- /See:/ 'newChoiceUpdate' smart constructor.+data ChoiceUpdate = ChoiceUpdate'+ { -- | The notes associated with a choice.+ notes :: Prelude.Maybe Prelude.Text,+ -- | The reason why a choice is non-applicable to a question in your+ -- workload.+ reason :: Prelude.Maybe ChoiceReason,+ -- | The status of a choice.+ status :: ChoiceStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChoiceUpdate' 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:+--+-- 'notes', 'choiceUpdate_notes' - The notes associated with a choice.+--+-- 'reason', 'choiceUpdate_reason' - The reason why a choice is non-applicable to a question in your+-- workload.+--+-- 'status', 'choiceUpdate_status' - The status of a choice.+newChoiceUpdate ::+ -- | 'status'+ ChoiceStatus ->+ ChoiceUpdate+newChoiceUpdate pStatus_ =+ ChoiceUpdate'+ { notes = Prelude.Nothing,+ reason = Prelude.Nothing,+ status = pStatus_+ }++-- | The notes associated with a choice.+choiceUpdate_notes :: Lens.Lens' ChoiceUpdate (Prelude.Maybe Prelude.Text)+choiceUpdate_notes = Lens.lens (\ChoiceUpdate' {notes} -> notes) (\s@ChoiceUpdate' {} a -> s {notes = a} :: ChoiceUpdate)++-- | The reason why a choice is non-applicable to a question in your+-- workload.+choiceUpdate_reason :: Lens.Lens' ChoiceUpdate (Prelude.Maybe ChoiceReason)+choiceUpdate_reason = Lens.lens (\ChoiceUpdate' {reason} -> reason) (\s@ChoiceUpdate' {} a -> s {reason = a} :: ChoiceUpdate)++-- | The status of a choice.+choiceUpdate_status :: Lens.Lens' ChoiceUpdate ChoiceStatus+choiceUpdate_status = Lens.lens (\ChoiceUpdate' {status} -> status) (\s@ChoiceUpdate' {} a -> s {status = a} :: ChoiceUpdate)++instance Prelude.Hashable ChoiceUpdate where+ hashWithSalt _salt ChoiceUpdate' {..} =+ _salt+ `Prelude.hashWithSalt` notes+ `Prelude.hashWithSalt` reason+ `Prelude.hashWithSalt` status++instance Prelude.NFData ChoiceUpdate where+ rnf ChoiceUpdate' {..} =+ Prelude.rnf notes+ `Prelude.seq` Prelude.rnf reason+ `Prelude.seq` Prelude.rnf status++instance Data.ToJSON ChoiceUpdate where+ toJSON ChoiceUpdate' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Notes" Data..=) Prelude.<$> notes,+ ("Reason" Data..=) Prelude.<$> reason,+ Prelude.Just ("Status" Data..= status)+ ]+ )
+ gen/Amazonka/WellArchitected/Types/DifferenceStatus.hs view
@@ -0,0 +1,76 @@+{-# 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.WellArchitected.Types.DifferenceStatus+-- 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.WellArchitected.Types.DifferenceStatus+ ( DifferenceStatus+ ( ..,+ DifferenceStatus_DELETED,+ DifferenceStatus_NEW,+ DifferenceStatus_UPDATED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DifferenceStatus = DifferenceStatus'+ { fromDifferenceStatus ::+ 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 DifferenceStatus_DELETED :: DifferenceStatus+pattern DifferenceStatus_DELETED = DifferenceStatus' "DELETED"++pattern DifferenceStatus_NEW :: DifferenceStatus+pattern DifferenceStatus_NEW = DifferenceStatus' "NEW"++pattern DifferenceStatus_UPDATED :: DifferenceStatus+pattern DifferenceStatus_UPDATED = DifferenceStatus' "UPDATED"++{-# COMPLETE+ DifferenceStatus_DELETED,+ DifferenceStatus_NEW,+ DifferenceStatus_UPDATED,+ DifferenceStatus'+ #-}
+ gen/Amazonka/WellArchitected/Types/ImportLensStatus.hs view
@@ -0,0 +1,76 @@+{-# 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.WellArchitected.Types.ImportLensStatus+-- 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.WellArchitected.Types.ImportLensStatus+ ( ImportLensStatus+ ( ..,+ ImportLensStatus_COMPLETE,+ ImportLensStatus_ERROR,+ ImportLensStatus_IN_PROGRESS+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ImportLensStatus = ImportLensStatus'+ { fromImportLensStatus ::+ 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 ImportLensStatus_COMPLETE :: ImportLensStatus+pattern ImportLensStatus_COMPLETE = ImportLensStatus' "COMPLETE"++pattern ImportLensStatus_ERROR :: ImportLensStatus+pattern ImportLensStatus_ERROR = ImportLensStatus' "ERROR"++pattern ImportLensStatus_IN_PROGRESS :: ImportLensStatus+pattern ImportLensStatus_IN_PROGRESS = ImportLensStatus' "IN_PROGRESS"++{-# COMPLETE+ ImportLensStatus_COMPLETE,+ ImportLensStatus_ERROR,+ ImportLensStatus_IN_PROGRESS,+ ImportLensStatus'+ #-}
+ gen/Amazonka/WellArchitected/Types/ImprovementSummary.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.WellArchitected.Types.ImprovementSummary+-- 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.WellArchitected.Types.ImprovementSummary 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+import Amazonka.WellArchitected.Types.ChoiceImprovementPlan+import Amazonka.WellArchitected.Types.Risk++-- | An improvement summary of a lens review in a workload.+--+-- /See:/ 'newImprovementSummary' smart constructor.+data ImprovementSummary = ImprovementSummary'+ { improvementPlanUrl :: Prelude.Maybe Prelude.Text,+ -- | The improvement plan details.+ improvementPlans :: Prelude.Maybe [ChoiceImprovementPlan],+ pillarId :: Prelude.Maybe Prelude.Text,+ questionId :: Prelude.Maybe Prelude.Text,+ questionTitle :: Prelude.Maybe Prelude.Text,+ risk :: Prelude.Maybe Risk+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImprovementSummary' 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:+--+-- 'improvementPlanUrl', 'improvementSummary_improvementPlanUrl' - Undocumented member.+--+-- 'improvementPlans', 'improvementSummary_improvementPlans' - The improvement plan details.+--+-- 'pillarId', 'improvementSummary_pillarId' - Undocumented member.+--+-- 'questionId', 'improvementSummary_questionId' - Undocumented member.+--+-- 'questionTitle', 'improvementSummary_questionTitle' - Undocumented member.+--+-- 'risk', 'improvementSummary_risk' - Undocumented member.+newImprovementSummary ::+ ImprovementSummary+newImprovementSummary =+ ImprovementSummary'+ { improvementPlanUrl =+ Prelude.Nothing,+ improvementPlans = Prelude.Nothing,+ pillarId = Prelude.Nothing,+ questionId = Prelude.Nothing,+ questionTitle = Prelude.Nothing,+ risk = Prelude.Nothing+ }++-- | Undocumented member.+improvementSummary_improvementPlanUrl :: Lens.Lens' ImprovementSummary (Prelude.Maybe Prelude.Text)+improvementSummary_improvementPlanUrl = Lens.lens (\ImprovementSummary' {improvementPlanUrl} -> improvementPlanUrl) (\s@ImprovementSummary' {} a -> s {improvementPlanUrl = a} :: ImprovementSummary)++-- | The improvement plan details.+improvementSummary_improvementPlans :: Lens.Lens' ImprovementSummary (Prelude.Maybe [ChoiceImprovementPlan])+improvementSummary_improvementPlans = Lens.lens (\ImprovementSummary' {improvementPlans} -> improvementPlans) (\s@ImprovementSummary' {} a -> s {improvementPlans = a} :: ImprovementSummary) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+improvementSummary_pillarId :: Lens.Lens' ImprovementSummary (Prelude.Maybe Prelude.Text)+improvementSummary_pillarId = Lens.lens (\ImprovementSummary' {pillarId} -> pillarId) (\s@ImprovementSummary' {} a -> s {pillarId = a} :: ImprovementSummary)++-- | Undocumented member.+improvementSummary_questionId :: Lens.Lens' ImprovementSummary (Prelude.Maybe Prelude.Text)+improvementSummary_questionId = Lens.lens (\ImprovementSummary' {questionId} -> questionId) (\s@ImprovementSummary' {} a -> s {questionId = a} :: ImprovementSummary)++-- | Undocumented member.+improvementSummary_questionTitle :: Lens.Lens' ImprovementSummary (Prelude.Maybe Prelude.Text)+improvementSummary_questionTitle = Lens.lens (\ImprovementSummary' {questionTitle} -> questionTitle) (\s@ImprovementSummary' {} a -> s {questionTitle = a} :: ImprovementSummary)++-- | Undocumented member.+improvementSummary_risk :: Lens.Lens' ImprovementSummary (Prelude.Maybe Risk)+improvementSummary_risk = Lens.lens (\ImprovementSummary' {risk} -> risk) (\s@ImprovementSummary' {} a -> s {risk = a} :: ImprovementSummary)++instance Data.FromJSON ImprovementSummary where+ parseJSON =+ Data.withObject+ "ImprovementSummary"+ ( \x ->+ ImprovementSummary'+ Prelude.<$> (x Data..:? "ImprovementPlanUrl")+ Prelude.<*> ( x+ Data..:? "ImprovementPlans"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "PillarId")+ Prelude.<*> (x Data..:? "QuestionId")+ Prelude.<*> (x Data..:? "QuestionTitle")+ Prelude.<*> (x Data..:? "Risk")+ )++instance Prelude.Hashable ImprovementSummary where+ hashWithSalt _salt ImprovementSummary' {..} =+ _salt+ `Prelude.hashWithSalt` improvementPlanUrl+ `Prelude.hashWithSalt` improvementPlans+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` questionId+ `Prelude.hashWithSalt` questionTitle+ `Prelude.hashWithSalt` risk++instance Prelude.NFData ImprovementSummary where+ rnf ImprovementSummary' {..} =+ Prelude.rnf improvementPlanUrl+ `Prelude.seq` Prelude.rnf improvementPlans+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf questionId+ `Prelude.seq` Prelude.rnf questionTitle+ `Prelude.seq` Prelude.rnf risk
+ gen/Amazonka/WellArchitected/Types/Lens.hs view
@@ -0,0 +1,142 @@+{-# 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.WellArchitected.Types.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.WellArchitected.Types.Lens 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 lens return object.+--+-- /See:/ 'newLens' smart constructor.+data Lens = Lens'+ { description :: Prelude.Maybe Prelude.Text,+ -- | The ARN of a lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ -- | The version of a lens.+ lensVersion :: Prelude.Maybe Prelude.Text,+ name :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID that owns the lens.+ owner :: Prelude.Maybe Prelude.Text,+ -- | The ID assigned to the share invitation.+ shareInvitationId :: Prelude.Maybe Prelude.Text,+ -- | The tags assigned to the lens.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Lens' 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:+--+-- 'description', 'lens_description' - Undocumented member.+--+-- 'lensArn', 'lens_lensArn' - The ARN of a lens.+--+-- 'lensVersion', 'lens_lensVersion' - The version of a lens.+--+-- 'name', 'lens_name' - Undocumented member.+--+-- 'owner', 'lens_owner' - The Amazon Web Services account ID that owns the lens.+--+-- 'shareInvitationId', 'lens_shareInvitationId' - The ID assigned to the share invitation.+--+-- 'tags', 'lens_tags' - The tags assigned to the lens.+newLens ::+ Lens+newLens =+ Lens'+ { description = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ lensVersion = Prelude.Nothing,+ name = Prelude.Nothing,+ owner = Prelude.Nothing,+ shareInvitationId = Prelude.Nothing,+ tags = Prelude.Nothing+ }++-- | Undocumented member.+lens_description :: Lens.Lens' Lens (Prelude.Maybe Prelude.Text)+lens_description = Lens.lens (\Lens' {description} -> description) (\s@Lens' {} a -> s {description = a} :: Lens)++-- | The ARN of a lens.+lens_lensArn :: Lens.Lens' Lens (Prelude.Maybe Prelude.Text)+lens_lensArn = Lens.lens (\Lens' {lensArn} -> lensArn) (\s@Lens' {} a -> s {lensArn = a} :: Lens)++-- | The version of a lens.+lens_lensVersion :: Lens.Lens' Lens (Prelude.Maybe Prelude.Text)+lens_lensVersion = Lens.lens (\Lens' {lensVersion} -> lensVersion) (\s@Lens' {} a -> s {lensVersion = a} :: Lens)++-- | Undocumented member.+lens_name :: Lens.Lens' Lens (Prelude.Maybe Prelude.Text)+lens_name = Lens.lens (\Lens' {name} -> name) (\s@Lens' {} a -> s {name = a} :: Lens)++-- | The Amazon Web Services account ID that owns the lens.+lens_owner :: Lens.Lens' Lens (Prelude.Maybe Prelude.Text)+lens_owner = Lens.lens (\Lens' {owner} -> owner) (\s@Lens' {} a -> s {owner = a} :: Lens)++-- | The ID assigned to the share invitation.+lens_shareInvitationId :: Lens.Lens' Lens (Prelude.Maybe Prelude.Text)+lens_shareInvitationId = Lens.lens (\Lens' {shareInvitationId} -> shareInvitationId) (\s@Lens' {} a -> s {shareInvitationId = a} :: Lens)++-- | The tags assigned to the lens.+lens_tags :: Lens.Lens' Lens (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+lens_tags = Lens.lens (\Lens' {tags} -> tags) (\s@Lens' {} a -> s {tags = a} :: Lens) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON Lens where+ parseJSON =+ Data.withObject+ "Lens"+ ( \x ->+ Lens'+ Prelude.<$> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "LensArn")+ Prelude.<*> (x Data..:? "LensVersion")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "Owner")+ Prelude.<*> (x Data..:? "ShareInvitationId")+ Prelude.<*> (x Data..:? "Tags" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable Lens where+ hashWithSalt _salt Lens' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` lensVersion+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` shareInvitationId+ `Prelude.hashWithSalt` tags++instance Prelude.NFData Lens where+ rnf Lens' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf lensVersion+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf shareInvitationId+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/WellArchitected/Types/LensReview.hs view
@@ -0,0 +1,179 @@+{-# 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.WellArchitected.Types.LensReview+-- 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.WellArchitected.Types.LensReview 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+import Amazonka.WellArchitected.Types.LensStatus+import Amazonka.WellArchitected.Types.PillarReviewSummary+import Amazonka.WellArchitected.Types.Risk++-- | A lens review of a question.+--+-- /See:/ 'newLensReview' smart constructor.+data LensReview = LensReview'+ { lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ lensName :: Prelude.Maybe Prelude.Text,+ -- | The status of the lens.+ lensStatus :: Prelude.Maybe LensStatus,+ -- | The version of the lens.+ lensVersion :: Prelude.Maybe Prelude.Text,+ nextToken :: Prelude.Maybe Prelude.Text,+ notes :: Prelude.Maybe Prelude.Text,+ pillarReviewSummaries :: Prelude.Maybe [PillarReviewSummary],+ riskCounts :: Prelude.Maybe (Prelude.HashMap Risk Prelude.Natural),+ updatedAt :: Prelude.Maybe Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LensReview' 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:+--+-- 'lensAlias', 'lensReview_lensAlias' - Undocumented member.+--+-- 'lensArn', 'lensReview_lensArn' - The ARN for the lens.+--+-- 'lensName', 'lensReview_lensName' - Undocumented member.+--+-- 'lensStatus', 'lensReview_lensStatus' - The status of the lens.+--+-- 'lensVersion', 'lensReview_lensVersion' - The version of the lens.+--+-- 'nextToken', 'lensReview_nextToken' - Undocumented member.+--+-- 'notes', 'lensReview_notes' - Undocumented member.+--+-- 'pillarReviewSummaries', 'lensReview_pillarReviewSummaries' - Undocumented member.+--+-- 'riskCounts', 'lensReview_riskCounts' - Undocumented member.+--+-- 'updatedAt', 'lensReview_updatedAt' - Undocumented member.+newLensReview ::+ LensReview+newLensReview =+ LensReview'+ { lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ lensName = Prelude.Nothing,+ lensStatus = Prelude.Nothing,+ lensVersion = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ notes = Prelude.Nothing,+ pillarReviewSummaries = Prelude.Nothing,+ riskCounts = Prelude.Nothing,+ updatedAt = Prelude.Nothing+ }++-- | Undocumented member.+lensReview_lensAlias :: Lens.Lens' LensReview (Prelude.Maybe Prelude.Text)+lensReview_lensAlias = Lens.lens (\LensReview' {lensAlias} -> lensAlias) (\s@LensReview' {} a -> s {lensAlias = a} :: LensReview)++-- | The ARN for the lens.+lensReview_lensArn :: Lens.Lens' LensReview (Prelude.Maybe Prelude.Text)+lensReview_lensArn = Lens.lens (\LensReview' {lensArn} -> lensArn) (\s@LensReview' {} a -> s {lensArn = a} :: LensReview)++-- | Undocumented member.+lensReview_lensName :: Lens.Lens' LensReview (Prelude.Maybe Prelude.Text)+lensReview_lensName = Lens.lens (\LensReview' {lensName} -> lensName) (\s@LensReview' {} a -> s {lensName = a} :: LensReview)++-- | The status of the lens.+lensReview_lensStatus :: Lens.Lens' LensReview (Prelude.Maybe LensStatus)+lensReview_lensStatus = Lens.lens (\LensReview' {lensStatus} -> lensStatus) (\s@LensReview' {} a -> s {lensStatus = a} :: LensReview)++-- | The version of the lens.+lensReview_lensVersion :: Lens.Lens' LensReview (Prelude.Maybe Prelude.Text)+lensReview_lensVersion = Lens.lens (\LensReview' {lensVersion} -> lensVersion) (\s@LensReview' {} a -> s {lensVersion = a} :: LensReview)++-- | Undocumented member.+lensReview_nextToken :: Lens.Lens' LensReview (Prelude.Maybe Prelude.Text)+lensReview_nextToken = Lens.lens (\LensReview' {nextToken} -> nextToken) (\s@LensReview' {} a -> s {nextToken = a} :: LensReview)++-- | Undocumented member.+lensReview_notes :: Lens.Lens' LensReview (Prelude.Maybe Prelude.Text)+lensReview_notes = Lens.lens (\LensReview' {notes} -> notes) (\s@LensReview' {} a -> s {notes = a} :: LensReview)++-- | Undocumented member.+lensReview_pillarReviewSummaries :: Lens.Lens' LensReview (Prelude.Maybe [PillarReviewSummary])+lensReview_pillarReviewSummaries = Lens.lens (\LensReview' {pillarReviewSummaries} -> pillarReviewSummaries) (\s@LensReview' {} a -> s {pillarReviewSummaries = a} :: LensReview) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+lensReview_riskCounts :: Lens.Lens' LensReview (Prelude.Maybe (Prelude.HashMap Risk Prelude.Natural))+lensReview_riskCounts = Lens.lens (\LensReview' {riskCounts} -> riskCounts) (\s@LensReview' {} a -> s {riskCounts = a} :: LensReview) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+lensReview_updatedAt :: Lens.Lens' LensReview (Prelude.Maybe Prelude.UTCTime)+lensReview_updatedAt = Lens.lens (\LensReview' {updatedAt} -> updatedAt) (\s@LensReview' {} a -> s {updatedAt = a} :: LensReview) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON LensReview where+ parseJSON =+ Data.withObject+ "LensReview"+ ( \x ->+ LensReview'+ Prelude.<$> (x Data..:? "LensAlias")+ Prelude.<*> (x Data..:? "LensArn")+ Prelude.<*> (x Data..:? "LensName")+ Prelude.<*> (x Data..:? "LensStatus")+ Prelude.<*> (x Data..:? "LensVersion")+ Prelude.<*> (x Data..:? "NextToken")+ Prelude.<*> (x Data..:? "Notes")+ Prelude.<*> ( x+ Data..:? "PillarReviewSummaries"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "RiskCounts" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "UpdatedAt")+ )++instance Prelude.Hashable LensReview where+ hashWithSalt _salt LensReview' {..} =+ _salt+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` lensName+ `Prelude.hashWithSalt` lensStatus+ `Prelude.hashWithSalt` lensVersion+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` notes+ `Prelude.hashWithSalt` pillarReviewSummaries+ `Prelude.hashWithSalt` riskCounts+ `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData LensReview where+ rnf LensReview' {..} =+ Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf lensName+ `Prelude.seq` Prelude.rnf lensStatus+ `Prelude.seq` Prelude.rnf lensVersion+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf notes+ `Prelude.seq` Prelude.rnf pillarReviewSummaries+ `Prelude.seq` Prelude.rnf riskCounts+ `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/WellArchitected/Types/LensReviewReport.hs view
@@ -0,0 +1,94 @@+{-# 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.WellArchitected.Types.LensReviewReport+-- 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.WellArchitected.Types.LensReviewReport 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 report of a lens review.+--+-- /See:/ 'newLensReviewReport' smart constructor.+data LensReviewReport = LensReviewReport'+ { base64String :: Prelude.Maybe Prelude.Text,+ lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LensReviewReport' 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:+--+-- 'base64String', 'lensReviewReport_base64String' - Undocumented member.+--+-- 'lensAlias', 'lensReviewReport_lensAlias' - Undocumented member.+--+-- 'lensArn', 'lensReviewReport_lensArn' - The ARN for the lens.+newLensReviewReport ::+ LensReviewReport+newLensReviewReport =+ LensReviewReport'+ { base64String = Prelude.Nothing,+ lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing+ }++-- | Undocumented member.+lensReviewReport_base64String :: Lens.Lens' LensReviewReport (Prelude.Maybe Prelude.Text)+lensReviewReport_base64String = Lens.lens (\LensReviewReport' {base64String} -> base64String) (\s@LensReviewReport' {} a -> s {base64String = a} :: LensReviewReport)++-- | Undocumented member.+lensReviewReport_lensAlias :: Lens.Lens' LensReviewReport (Prelude.Maybe Prelude.Text)+lensReviewReport_lensAlias = Lens.lens (\LensReviewReport' {lensAlias} -> lensAlias) (\s@LensReviewReport' {} a -> s {lensAlias = a} :: LensReviewReport)++-- | The ARN for the lens.+lensReviewReport_lensArn :: Lens.Lens' LensReviewReport (Prelude.Maybe Prelude.Text)+lensReviewReport_lensArn = Lens.lens (\LensReviewReport' {lensArn} -> lensArn) (\s@LensReviewReport' {} a -> s {lensArn = a} :: LensReviewReport)++instance Data.FromJSON LensReviewReport where+ parseJSON =+ Data.withObject+ "LensReviewReport"+ ( \x ->+ LensReviewReport'+ Prelude.<$> (x Data..:? "Base64String")+ Prelude.<*> (x Data..:? "LensAlias")+ Prelude.<*> (x Data..:? "LensArn")+ )++instance Prelude.Hashable LensReviewReport where+ hashWithSalt _salt LensReviewReport' {..} =+ _salt+ `Prelude.hashWithSalt` base64String+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` lensArn++instance Prelude.NFData LensReviewReport where+ rnf LensReviewReport' {..} =+ Prelude.rnf base64String+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn
+ gen/Amazonka/WellArchitected/Types/LensReviewSummary.hs view
@@ -0,0 +1,142 @@+{-# 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.WellArchitected.Types.LensReviewSummary+-- 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.WellArchitected.Types.LensReviewSummary 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+import Amazonka.WellArchitected.Types.LensStatus+import Amazonka.WellArchitected.Types.Risk++-- | A lens review summary of a workload.+--+-- /See:/ 'newLensReviewSummary' smart constructor.+data LensReviewSummary = LensReviewSummary'+ { lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ lensName :: Prelude.Maybe Prelude.Text,+ -- | The status of the lens.+ lensStatus :: Prelude.Maybe LensStatus,+ -- | The version of the lens.+ lensVersion :: Prelude.Maybe Prelude.Text,+ riskCounts :: Prelude.Maybe (Prelude.HashMap Risk Prelude.Natural),+ updatedAt :: Prelude.Maybe Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LensReviewSummary' 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:+--+-- 'lensAlias', 'lensReviewSummary_lensAlias' - Undocumented member.+--+-- 'lensArn', 'lensReviewSummary_lensArn' - The ARN for the lens.+--+-- 'lensName', 'lensReviewSummary_lensName' - Undocumented member.+--+-- 'lensStatus', 'lensReviewSummary_lensStatus' - The status of the lens.+--+-- 'lensVersion', 'lensReviewSummary_lensVersion' - The version of the lens.+--+-- 'riskCounts', 'lensReviewSummary_riskCounts' - Undocumented member.+--+-- 'updatedAt', 'lensReviewSummary_updatedAt' - Undocumented member.+newLensReviewSummary ::+ LensReviewSummary+newLensReviewSummary =+ LensReviewSummary'+ { lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ lensName = Prelude.Nothing,+ lensStatus = Prelude.Nothing,+ lensVersion = Prelude.Nothing,+ riskCounts = Prelude.Nothing,+ updatedAt = Prelude.Nothing+ }++-- | Undocumented member.+lensReviewSummary_lensAlias :: Lens.Lens' LensReviewSummary (Prelude.Maybe Prelude.Text)+lensReviewSummary_lensAlias = Lens.lens (\LensReviewSummary' {lensAlias} -> lensAlias) (\s@LensReviewSummary' {} a -> s {lensAlias = a} :: LensReviewSummary)++-- | The ARN for the lens.+lensReviewSummary_lensArn :: Lens.Lens' LensReviewSummary (Prelude.Maybe Prelude.Text)+lensReviewSummary_lensArn = Lens.lens (\LensReviewSummary' {lensArn} -> lensArn) (\s@LensReviewSummary' {} a -> s {lensArn = a} :: LensReviewSummary)++-- | Undocumented member.+lensReviewSummary_lensName :: Lens.Lens' LensReviewSummary (Prelude.Maybe Prelude.Text)+lensReviewSummary_lensName = Lens.lens (\LensReviewSummary' {lensName} -> lensName) (\s@LensReviewSummary' {} a -> s {lensName = a} :: LensReviewSummary)++-- | The status of the lens.+lensReviewSummary_lensStatus :: Lens.Lens' LensReviewSummary (Prelude.Maybe LensStatus)+lensReviewSummary_lensStatus = Lens.lens (\LensReviewSummary' {lensStatus} -> lensStatus) (\s@LensReviewSummary' {} a -> s {lensStatus = a} :: LensReviewSummary)++-- | The version of the lens.+lensReviewSummary_lensVersion :: Lens.Lens' LensReviewSummary (Prelude.Maybe Prelude.Text)+lensReviewSummary_lensVersion = Lens.lens (\LensReviewSummary' {lensVersion} -> lensVersion) (\s@LensReviewSummary' {} a -> s {lensVersion = a} :: LensReviewSummary)++-- | Undocumented member.+lensReviewSummary_riskCounts :: Lens.Lens' LensReviewSummary (Prelude.Maybe (Prelude.HashMap Risk Prelude.Natural))+lensReviewSummary_riskCounts = Lens.lens (\LensReviewSummary' {riskCounts} -> riskCounts) (\s@LensReviewSummary' {} a -> s {riskCounts = a} :: LensReviewSummary) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+lensReviewSummary_updatedAt :: Lens.Lens' LensReviewSummary (Prelude.Maybe Prelude.UTCTime)+lensReviewSummary_updatedAt = Lens.lens (\LensReviewSummary' {updatedAt} -> updatedAt) (\s@LensReviewSummary' {} a -> s {updatedAt = a} :: LensReviewSummary) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON LensReviewSummary where+ parseJSON =+ Data.withObject+ "LensReviewSummary"+ ( \x ->+ LensReviewSummary'+ Prelude.<$> (x Data..:? "LensAlias")+ Prelude.<*> (x Data..:? "LensArn")+ Prelude.<*> (x Data..:? "LensName")+ Prelude.<*> (x Data..:? "LensStatus")+ Prelude.<*> (x Data..:? "LensVersion")+ Prelude.<*> (x Data..:? "RiskCounts" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "UpdatedAt")+ )++instance Prelude.Hashable LensReviewSummary where+ hashWithSalt _salt LensReviewSummary' {..} =+ _salt+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` lensName+ `Prelude.hashWithSalt` lensStatus+ `Prelude.hashWithSalt` lensVersion+ `Prelude.hashWithSalt` riskCounts+ `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData LensReviewSummary where+ rnf LensReviewSummary' {..} =+ Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf lensName+ `Prelude.seq` Prelude.rnf lensStatus+ `Prelude.seq` Prelude.rnf lensVersion+ `Prelude.seq` Prelude.rnf riskCounts+ `Prelude.seq` Prelude.rnf updatedAt
@@ -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.WellArchitected.Types.LensShareSummary+-- 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.WellArchitected.Types.LensShareSummary 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+import Amazonka.WellArchitected.Types.ShareStatus++-- | A lens share summary return object.+--+-- /See:/ 'newLensShareSummary' smart constructor.+data LensShareSummary = LensShareSummary'+ { shareId :: Prelude.Maybe Prelude.Text,+ sharedWith :: Prelude.Maybe Prelude.Text,+ status :: Prelude.Maybe ShareStatus,+ -- | Optional message to compliment the Status field.+ statusMessage :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LensShareSummary' 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:+--+-- 'shareId', 'lensShareSummary_shareId' - Undocumented member.+--+-- 'sharedWith', 'lensShareSummary_sharedWith' - Undocumented member.+--+-- 'status', 'lensShareSummary_status' - Undocumented member.+--+-- 'statusMessage', 'lensShareSummary_statusMessage' - Optional message to compliment the Status field.+newLensShareSummary ::+ LensShareSummary+newLensShareSummary =+ LensShareSummary'+ { shareId = Prelude.Nothing,+ sharedWith = Prelude.Nothing,+ status = Prelude.Nothing,+ statusMessage = Prelude.Nothing+ }++-- | Undocumented member.+lensShareSummary_shareId :: Lens.Lens' LensShareSummary (Prelude.Maybe Prelude.Text)+lensShareSummary_shareId = Lens.lens (\LensShareSummary' {shareId} -> shareId) (\s@LensShareSummary' {} a -> s {shareId = a} :: LensShareSummary)++-- | Undocumented member.+lensShareSummary_sharedWith :: Lens.Lens' LensShareSummary (Prelude.Maybe Prelude.Text)+lensShareSummary_sharedWith = Lens.lens (\LensShareSummary' {sharedWith} -> sharedWith) (\s@LensShareSummary' {} a -> s {sharedWith = a} :: LensShareSummary)++-- | Undocumented member.+lensShareSummary_status :: Lens.Lens' LensShareSummary (Prelude.Maybe ShareStatus)+lensShareSummary_status = Lens.lens (\LensShareSummary' {status} -> status) (\s@LensShareSummary' {} a -> s {status = a} :: LensShareSummary)++-- | Optional message to compliment the Status field.+lensShareSummary_statusMessage :: Lens.Lens' LensShareSummary (Prelude.Maybe Prelude.Text)+lensShareSummary_statusMessage = Lens.lens (\LensShareSummary' {statusMessage} -> statusMessage) (\s@LensShareSummary' {} a -> s {statusMessage = a} :: LensShareSummary)++instance Data.FromJSON LensShareSummary where+ parseJSON =+ Data.withObject+ "LensShareSummary"+ ( \x ->+ LensShareSummary'+ Prelude.<$> (x Data..:? "ShareId")+ Prelude.<*> (x Data..:? "SharedWith")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "StatusMessage")+ )++instance Prelude.Hashable LensShareSummary where+ hashWithSalt _salt LensShareSummary' {..} =+ _salt+ `Prelude.hashWithSalt` shareId+ `Prelude.hashWithSalt` sharedWith+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` statusMessage++instance Prelude.NFData LensShareSummary where+ rnf LensShareSummary' {..} =+ Prelude.rnf shareId+ `Prelude.seq` Prelude.rnf sharedWith+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf statusMessage
+ gen/Amazonka/WellArchitected/Types/LensStatus.hs view
@@ -0,0 +1,86 @@+{-# 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.WellArchitected.Types.LensStatus+-- 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.WellArchitected.Types.LensStatus+ ( LensStatus+ ( ..,+ LensStatus_CURRENT,+ LensStatus_DELETED,+ LensStatus_DEPRECATED,+ LensStatus_NOT_CURRENT,+ LensStatus_UNSHARED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LensStatus = LensStatus'+ { fromLensStatus ::+ 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 LensStatus_CURRENT :: LensStatus+pattern LensStatus_CURRENT = LensStatus' "CURRENT"++pattern LensStatus_DELETED :: LensStatus+pattern LensStatus_DELETED = LensStatus' "DELETED"++pattern LensStatus_DEPRECATED :: LensStatus+pattern LensStatus_DEPRECATED = LensStatus' "DEPRECATED"++pattern LensStatus_NOT_CURRENT :: LensStatus+pattern LensStatus_NOT_CURRENT = LensStatus' "NOT_CURRENT"++pattern LensStatus_UNSHARED :: LensStatus+pattern LensStatus_UNSHARED = LensStatus' "UNSHARED"++{-# COMPLETE+ LensStatus_CURRENT,+ LensStatus_DELETED,+ LensStatus_DEPRECATED,+ LensStatus_NOT_CURRENT,+ LensStatus_UNSHARED,+ LensStatus'+ #-}
+ gen/Amazonka/WellArchitected/Types/LensStatusType.hs view
@@ -0,0 +1,76 @@+{-# 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.WellArchitected.Types.LensStatusType+-- 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.WellArchitected.Types.LensStatusType+ ( LensStatusType+ ( ..,+ LensStatusType_ALL,+ LensStatusType_DRAFT,+ LensStatusType_PUBLISHED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LensStatusType = LensStatusType'+ { fromLensStatusType ::+ 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 LensStatusType_ALL :: LensStatusType+pattern LensStatusType_ALL = LensStatusType' "ALL"++pattern LensStatusType_DRAFT :: LensStatusType+pattern LensStatusType_DRAFT = LensStatusType' "DRAFT"++pattern LensStatusType_PUBLISHED :: LensStatusType+pattern LensStatusType_PUBLISHED = LensStatusType' "PUBLISHED"++{-# COMPLETE+ LensStatusType_ALL,+ LensStatusType_DRAFT,+ LensStatusType_PUBLISHED,+ LensStatusType'+ #-}
+ gen/Amazonka/WellArchitected/Types/LensSummary.hs view
@@ -0,0 +1,176 @@+{-# 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.WellArchitected.Types.LensSummary+-- 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.WellArchitected.Types.LensSummary 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+import Amazonka.WellArchitected.Types.LensStatus+import Amazonka.WellArchitected.Types.LensType++-- | A lens summary of a lens.+--+-- /See:/ 'newLensSummary' smart constructor.+data LensSummary = LensSummary'+ { createdAt :: Prelude.Maybe Data.POSIX,+ description :: Prelude.Maybe Prelude.Text,+ lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ lensName :: Prelude.Maybe Prelude.Text,+ -- | The status of the lens.+ lensStatus :: Prelude.Maybe LensStatus,+ -- | The type of the lens.+ lensType :: Prelude.Maybe LensType,+ -- | The version of the lens.+ lensVersion :: Prelude.Maybe Prelude.Text,+ owner :: Prelude.Maybe Prelude.Text,+ updatedAt :: Prelude.Maybe Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LensSummary' 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:+--+-- 'createdAt', 'lensSummary_createdAt' - Undocumented member.+--+-- 'description', 'lensSummary_description' - Undocumented member.+--+-- 'lensAlias', 'lensSummary_lensAlias' - Undocumented member.+--+-- 'lensArn', 'lensSummary_lensArn' - The ARN of the lens.+--+-- 'lensName', 'lensSummary_lensName' - Undocumented member.+--+-- 'lensStatus', 'lensSummary_lensStatus' - The status of the lens.+--+-- 'lensType', 'lensSummary_lensType' - The type of the lens.+--+-- 'lensVersion', 'lensSummary_lensVersion' - The version of the lens.+--+-- 'owner', 'lensSummary_owner' - Undocumented member.+--+-- 'updatedAt', 'lensSummary_updatedAt' - Undocumented member.+newLensSummary ::+ LensSummary+newLensSummary =+ LensSummary'+ { createdAt = Prelude.Nothing,+ description = Prelude.Nothing,+ lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ lensName = Prelude.Nothing,+ lensStatus = Prelude.Nothing,+ lensType = Prelude.Nothing,+ lensVersion = Prelude.Nothing,+ owner = Prelude.Nothing,+ updatedAt = Prelude.Nothing+ }++-- | Undocumented member.+lensSummary_createdAt :: Lens.Lens' LensSummary (Prelude.Maybe Prelude.UTCTime)+lensSummary_createdAt = Lens.lens (\LensSummary' {createdAt} -> createdAt) (\s@LensSummary' {} a -> s {createdAt = a} :: LensSummary) Prelude.. Lens.mapping Data._Time++-- | Undocumented member.+lensSummary_description :: Lens.Lens' LensSummary (Prelude.Maybe Prelude.Text)+lensSummary_description = Lens.lens (\LensSummary' {description} -> description) (\s@LensSummary' {} a -> s {description = a} :: LensSummary)++-- | Undocumented member.+lensSummary_lensAlias :: Lens.Lens' LensSummary (Prelude.Maybe Prelude.Text)+lensSummary_lensAlias = Lens.lens (\LensSummary' {lensAlias} -> lensAlias) (\s@LensSummary' {} a -> s {lensAlias = a} :: LensSummary)++-- | The ARN of the lens.+lensSummary_lensArn :: Lens.Lens' LensSummary (Prelude.Maybe Prelude.Text)+lensSummary_lensArn = Lens.lens (\LensSummary' {lensArn} -> lensArn) (\s@LensSummary' {} a -> s {lensArn = a} :: LensSummary)++-- | Undocumented member.+lensSummary_lensName :: Lens.Lens' LensSummary (Prelude.Maybe Prelude.Text)+lensSummary_lensName = Lens.lens (\LensSummary' {lensName} -> lensName) (\s@LensSummary' {} a -> s {lensName = a} :: LensSummary)++-- | The status of the lens.+lensSummary_lensStatus :: Lens.Lens' LensSummary (Prelude.Maybe LensStatus)+lensSummary_lensStatus = Lens.lens (\LensSummary' {lensStatus} -> lensStatus) (\s@LensSummary' {} a -> s {lensStatus = a} :: LensSummary)++-- | The type of the lens.+lensSummary_lensType :: Lens.Lens' LensSummary (Prelude.Maybe LensType)+lensSummary_lensType = Lens.lens (\LensSummary' {lensType} -> lensType) (\s@LensSummary' {} a -> s {lensType = a} :: LensSummary)++-- | The version of the lens.+lensSummary_lensVersion :: Lens.Lens' LensSummary (Prelude.Maybe Prelude.Text)+lensSummary_lensVersion = Lens.lens (\LensSummary' {lensVersion} -> lensVersion) (\s@LensSummary' {} a -> s {lensVersion = a} :: LensSummary)++-- | Undocumented member.+lensSummary_owner :: Lens.Lens' LensSummary (Prelude.Maybe Prelude.Text)+lensSummary_owner = Lens.lens (\LensSummary' {owner} -> owner) (\s@LensSummary' {} a -> s {owner = a} :: LensSummary)++-- | Undocumented member.+lensSummary_updatedAt :: Lens.Lens' LensSummary (Prelude.Maybe Prelude.UTCTime)+lensSummary_updatedAt = Lens.lens (\LensSummary' {updatedAt} -> updatedAt) (\s@LensSummary' {} a -> s {updatedAt = a} :: LensSummary) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON LensSummary where+ parseJSON =+ Data.withObject+ "LensSummary"+ ( \x ->+ LensSummary'+ Prelude.<$> (x Data..:? "CreatedAt")+ Prelude.<*> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "LensAlias")+ Prelude.<*> (x Data..:? "LensArn")+ Prelude.<*> (x Data..:? "LensName")+ Prelude.<*> (x Data..:? "LensStatus")+ Prelude.<*> (x Data..:? "LensType")+ Prelude.<*> (x Data..:? "LensVersion")+ Prelude.<*> (x Data..:? "Owner")+ Prelude.<*> (x Data..:? "UpdatedAt")+ )++instance Prelude.Hashable LensSummary where+ hashWithSalt _salt LensSummary' {..} =+ _salt+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` lensName+ `Prelude.hashWithSalt` lensStatus+ `Prelude.hashWithSalt` lensType+ `Prelude.hashWithSalt` lensVersion+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData LensSummary where+ rnf LensSummary' {..} =+ Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf lensName+ `Prelude.seq` Prelude.rnf lensStatus+ `Prelude.seq` Prelude.rnf lensType+ `Prelude.seq` Prelude.rnf lensVersion+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/WellArchitected/Types/LensType.hs view
@@ -0,0 +1,76 @@+{-# 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.WellArchitected.Types.LensType+-- 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.WellArchitected.Types.LensType+ ( LensType+ ( ..,+ LensType_AWS_OFFICIAL,+ LensType_CUSTOM_SELF,+ LensType_CUSTOM_SHARED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LensType = LensType'+ { fromLensType ::+ 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 LensType_AWS_OFFICIAL :: LensType+pattern LensType_AWS_OFFICIAL = LensType' "AWS_OFFICIAL"++pattern LensType_CUSTOM_SELF :: LensType+pattern LensType_CUSTOM_SELF = LensType' "CUSTOM_SELF"++pattern LensType_CUSTOM_SHARED :: LensType+pattern LensType_CUSTOM_SHARED = LensType' "CUSTOM_SHARED"++{-# COMPLETE+ LensType_AWS_OFFICIAL,+ LensType_CUSTOM_SELF,+ LensType_CUSTOM_SHARED,+ LensType'+ #-}
+ gen/Amazonka/WellArchitected/Types/LensUpgradeSummary.hs view
@@ -0,0 +1,130 @@+{-# 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.WellArchitected.Types.LensUpgradeSummary+-- 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.WellArchitected.Types.LensUpgradeSummary 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++-- | Lens upgrade summary return object.+--+-- /See:/ 'newLensUpgradeSummary' smart constructor.+data LensUpgradeSummary = LensUpgradeSummary'+ { -- | The current version of the lens.+ currentLensVersion :: Prelude.Maybe Prelude.Text,+ -- | The latest version of the lens.+ latestLensVersion :: Prelude.Maybe Prelude.Text,+ lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Maybe Prelude.Text,+ workloadName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LensUpgradeSummary' 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:+--+-- 'currentLensVersion', 'lensUpgradeSummary_currentLensVersion' - The current version of the lens.+--+-- 'latestLensVersion', 'lensUpgradeSummary_latestLensVersion' - The latest version of the lens.+--+-- 'lensAlias', 'lensUpgradeSummary_lensAlias' - Undocumented member.+--+-- 'lensArn', 'lensUpgradeSummary_lensArn' - The ARN for the lens.+--+-- 'workloadId', 'lensUpgradeSummary_workloadId' - Undocumented member.+--+-- 'workloadName', 'lensUpgradeSummary_workloadName' - Undocumented member.+newLensUpgradeSummary ::+ LensUpgradeSummary+newLensUpgradeSummary =+ LensUpgradeSummary'+ { currentLensVersion =+ Prelude.Nothing,+ latestLensVersion = Prelude.Nothing,+ lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ workloadName = Prelude.Nothing+ }++-- | The current version of the lens.+lensUpgradeSummary_currentLensVersion :: Lens.Lens' LensUpgradeSummary (Prelude.Maybe Prelude.Text)+lensUpgradeSummary_currentLensVersion = Lens.lens (\LensUpgradeSummary' {currentLensVersion} -> currentLensVersion) (\s@LensUpgradeSummary' {} a -> s {currentLensVersion = a} :: LensUpgradeSummary)++-- | The latest version of the lens.+lensUpgradeSummary_latestLensVersion :: Lens.Lens' LensUpgradeSummary (Prelude.Maybe Prelude.Text)+lensUpgradeSummary_latestLensVersion = Lens.lens (\LensUpgradeSummary' {latestLensVersion} -> latestLensVersion) (\s@LensUpgradeSummary' {} a -> s {latestLensVersion = a} :: LensUpgradeSummary)++-- | Undocumented member.+lensUpgradeSummary_lensAlias :: Lens.Lens' LensUpgradeSummary (Prelude.Maybe Prelude.Text)+lensUpgradeSummary_lensAlias = Lens.lens (\LensUpgradeSummary' {lensAlias} -> lensAlias) (\s@LensUpgradeSummary' {} a -> s {lensAlias = a} :: LensUpgradeSummary)++-- | The ARN for the lens.+lensUpgradeSummary_lensArn :: Lens.Lens' LensUpgradeSummary (Prelude.Maybe Prelude.Text)+lensUpgradeSummary_lensArn = Lens.lens (\LensUpgradeSummary' {lensArn} -> lensArn) (\s@LensUpgradeSummary' {} a -> s {lensArn = a} :: LensUpgradeSummary)++-- | Undocumented member.+lensUpgradeSummary_workloadId :: Lens.Lens' LensUpgradeSummary (Prelude.Maybe Prelude.Text)+lensUpgradeSummary_workloadId = Lens.lens (\LensUpgradeSummary' {workloadId} -> workloadId) (\s@LensUpgradeSummary' {} a -> s {workloadId = a} :: LensUpgradeSummary)++-- | Undocumented member.+lensUpgradeSummary_workloadName :: Lens.Lens' LensUpgradeSummary (Prelude.Maybe Prelude.Text)+lensUpgradeSummary_workloadName = Lens.lens (\LensUpgradeSummary' {workloadName} -> workloadName) (\s@LensUpgradeSummary' {} a -> s {workloadName = a} :: LensUpgradeSummary)++instance Data.FromJSON LensUpgradeSummary where+ parseJSON =+ Data.withObject+ "LensUpgradeSummary"+ ( \x ->+ LensUpgradeSummary'+ Prelude.<$> (x Data..:? "CurrentLensVersion")+ Prelude.<*> (x Data..:? "LatestLensVersion")+ Prelude.<*> (x Data..:? "LensAlias")+ Prelude.<*> (x Data..:? "LensArn")+ Prelude.<*> (x Data..:? "WorkloadId")+ Prelude.<*> (x Data..:? "WorkloadName")+ )++instance Prelude.Hashable LensUpgradeSummary where+ hashWithSalt _salt LensUpgradeSummary' {..} =+ _salt+ `Prelude.hashWithSalt` currentLensVersion+ `Prelude.hashWithSalt` latestLensVersion+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` workloadName++instance Prelude.NFData LensUpgradeSummary where+ rnf LensUpgradeSummary' {..} =+ Prelude.rnf currentLensVersion+ `Prelude.seq` Prelude.rnf latestLensVersion+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf workloadName
+ gen/Amazonka/WellArchitected/Types/Milestone.hs view
@@ -0,0 +1,105 @@+{-# 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.WellArchitected.Types.Milestone+-- 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.WellArchitected.Types.Milestone 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+import Amazonka.WellArchitected.Types.Workload++-- | A milestone return object.+--+-- /See:/ 'newMilestone' smart constructor.+data Milestone = Milestone'+ { milestoneName :: Prelude.Maybe Prelude.Text,+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ recordedAt :: Prelude.Maybe Data.POSIX,+ workload :: Prelude.Maybe Workload+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Milestone' 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:+--+-- 'milestoneName', 'milestone_milestoneName' - Undocumented member.+--+-- 'milestoneNumber', 'milestone_milestoneNumber' - Undocumented member.+--+-- 'recordedAt', 'milestone_recordedAt' - Undocumented member.+--+-- 'workload', 'milestone_workload' - Undocumented member.+newMilestone ::+ Milestone+newMilestone =+ Milestone'+ { milestoneName = Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ recordedAt = Prelude.Nothing,+ workload = Prelude.Nothing+ }++-- | Undocumented member.+milestone_milestoneName :: Lens.Lens' Milestone (Prelude.Maybe Prelude.Text)+milestone_milestoneName = Lens.lens (\Milestone' {milestoneName} -> milestoneName) (\s@Milestone' {} a -> s {milestoneName = a} :: Milestone)++-- | Undocumented member.+milestone_milestoneNumber :: Lens.Lens' Milestone (Prelude.Maybe Prelude.Natural)+milestone_milestoneNumber = Lens.lens (\Milestone' {milestoneNumber} -> milestoneNumber) (\s@Milestone' {} a -> s {milestoneNumber = a} :: Milestone)++-- | Undocumented member.+milestone_recordedAt :: Lens.Lens' Milestone (Prelude.Maybe Prelude.UTCTime)+milestone_recordedAt = Lens.lens (\Milestone' {recordedAt} -> recordedAt) (\s@Milestone' {} a -> s {recordedAt = a} :: Milestone) Prelude.. Lens.mapping Data._Time++-- | Undocumented member.+milestone_workload :: Lens.Lens' Milestone (Prelude.Maybe Workload)+milestone_workload = Lens.lens (\Milestone' {workload} -> workload) (\s@Milestone' {} a -> s {workload = a} :: Milestone)++instance Data.FromJSON Milestone where+ parseJSON =+ Data.withObject+ "Milestone"+ ( \x ->+ Milestone'+ Prelude.<$> (x Data..:? "MilestoneName")+ Prelude.<*> (x Data..:? "MilestoneNumber")+ Prelude.<*> (x Data..:? "RecordedAt")+ Prelude.<*> (x Data..:? "Workload")+ )++instance Prelude.Hashable Milestone where+ hashWithSalt _salt Milestone' {..} =+ _salt+ `Prelude.hashWithSalt` milestoneName+ `Prelude.hashWithSalt` milestoneNumber+ `Prelude.hashWithSalt` recordedAt+ `Prelude.hashWithSalt` workload++instance Prelude.NFData Milestone where+ rnf Milestone' {..} =+ Prelude.rnf milestoneName+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf recordedAt+ `Prelude.seq` Prelude.rnf workload
+ gen/Amazonka/WellArchitected/Types/MilestoneSummary.hs view
@@ -0,0 +1,105 @@+{-# 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.WellArchitected.Types.MilestoneSummary+-- 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.WellArchitected.Types.MilestoneSummary 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+import Amazonka.WellArchitected.Types.WorkloadSummary++-- | A milestone summary return object.+--+-- /See:/ 'newMilestoneSummary' smart constructor.+data MilestoneSummary = MilestoneSummary'+ { milestoneName :: Prelude.Maybe Prelude.Text,+ milestoneNumber :: Prelude.Maybe Prelude.Natural,+ recordedAt :: Prelude.Maybe Data.POSIX,+ workloadSummary :: Prelude.Maybe WorkloadSummary+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MilestoneSummary' 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:+--+-- 'milestoneName', 'milestoneSummary_milestoneName' - Undocumented member.+--+-- 'milestoneNumber', 'milestoneSummary_milestoneNumber' - Undocumented member.+--+-- 'recordedAt', 'milestoneSummary_recordedAt' - Undocumented member.+--+-- 'workloadSummary', 'milestoneSummary_workloadSummary' - Undocumented member.+newMilestoneSummary ::+ MilestoneSummary+newMilestoneSummary =+ MilestoneSummary'+ { milestoneName = Prelude.Nothing,+ milestoneNumber = Prelude.Nothing,+ recordedAt = Prelude.Nothing,+ workloadSummary = Prelude.Nothing+ }++-- | Undocumented member.+milestoneSummary_milestoneName :: Lens.Lens' MilestoneSummary (Prelude.Maybe Prelude.Text)+milestoneSummary_milestoneName = Lens.lens (\MilestoneSummary' {milestoneName} -> milestoneName) (\s@MilestoneSummary' {} a -> s {milestoneName = a} :: MilestoneSummary)++-- | Undocumented member.+milestoneSummary_milestoneNumber :: Lens.Lens' MilestoneSummary (Prelude.Maybe Prelude.Natural)+milestoneSummary_milestoneNumber = Lens.lens (\MilestoneSummary' {milestoneNumber} -> milestoneNumber) (\s@MilestoneSummary' {} a -> s {milestoneNumber = a} :: MilestoneSummary)++-- | Undocumented member.+milestoneSummary_recordedAt :: Lens.Lens' MilestoneSummary (Prelude.Maybe Prelude.UTCTime)+milestoneSummary_recordedAt = Lens.lens (\MilestoneSummary' {recordedAt} -> recordedAt) (\s@MilestoneSummary' {} a -> s {recordedAt = a} :: MilestoneSummary) Prelude.. Lens.mapping Data._Time++-- | Undocumented member.+milestoneSummary_workloadSummary :: Lens.Lens' MilestoneSummary (Prelude.Maybe WorkloadSummary)+milestoneSummary_workloadSummary = Lens.lens (\MilestoneSummary' {workloadSummary} -> workloadSummary) (\s@MilestoneSummary' {} a -> s {workloadSummary = a} :: MilestoneSummary)++instance Data.FromJSON MilestoneSummary where+ parseJSON =+ Data.withObject+ "MilestoneSummary"+ ( \x ->+ MilestoneSummary'+ Prelude.<$> (x Data..:? "MilestoneName")+ Prelude.<*> (x Data..:? "MilestoneNumber")+ Prelude.<*> (x Data..:? "RecordedAt")+ Prelude.<*> (x Data..:? "WorkloadSummary")+ )++instance Prelude.Hashable MilestoneSummary where+ hashWithSalt _salt MilestoneSummary' {..} =+ _salt+ `Prelude.hashWithSalt` milestoneName+ `Prelude.hashWithSalt` milestoneNumber+ `Prelude.hashWithSalt` recordedAt+ `Prelude.hashWithSalt` workloadSummary++instance Prelude.NFData MilestoneSummary where+ rnf MilestoneSummary' {..} =+ Prelude.rnf milestoneName+ `Prelude.seq` Prelude.rnf milestoneNumber+ `Prelude.seq` Prelude.rnf recordedAt+ `Prelude.seq` Prelude.rnf workloadSummary
+ gen/Amazonka/WellArchitected/Types/NotificationSummary.hs view
@@ -0,0 +1,87 @@+{-# 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.WellArchitected.Types.NotificationSummary+-- 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.WellArchitected.Types.NotificationSummary 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+import Amazonka.WellArchitected.Types.LensUpgradeSummary+import Amazonka.WellArchitected.Types.NotificationType++-- | A notification summary return object.+--+-- /See:/ 'newNotificationSummary' smart constructor.+data NotificationSummary = NotificationSummary'+ { -- | Summary of lens upgrade.+ lensUpgradeSummary :: Prelude.Maybe LensUpgradeSummary,+ -- | The type of notification.+ type' :: Prelude.Maybe NotificationType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'NotificationSummary' 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:+--+-- 'lensUpgradeSummary', 'notificationSummary_lensUpgradeSummary' - Summary of lens upgrade.+--+-- 'type'', 'notificationSummary_type' - The type of notification.+newNotificationSummary ::+ NotificationSummary+newNotificationSummary =+ NotificationSummary'+ { lensUpgradeSummary =+ Prelude.Nothing,+ type' = Prelude.Nothing+ }++-- | Summary of lens upgrade.+notificationSummary_lensUpgradeSummary :: Lens.Lens' NotificationSummary (Prelude.Maybe LensUpgradeSummary)+notificationSummary_lensUpgradeSummary = Lens.lens (\NotificationSummary' {lensUpgradeSummary} -> lensUpgradeSummary) (\s@NotificationSummary' {} a -> s {lensUpgradeSummary = a} :: NotificationSummary)++-- | The type of notification.+notificationSummary_type :: Lens.Lens' NotificationSummary (Prelude.Maybe NotificationType)+notificationSummary_type = Lens.lens (\NotificationSummary' {type'} -> type') (\s@NotificationSummary' {} a -> s {type' = a} :: NotificationSummary)++instance Data.FromJSON NotificationSummary where+ parseJSON =+ Data.withObject+ "NotificationSummary"+ ( \x ->+ NotificationSummary'+ Prelude.<$> (x Data..:? "LensUpgradeSummary")+ Prelude.<*> (x Data..:? "Type")+ )++instance Prelude.Hashable NotificationSummary where+ hashWithSalt _salt NotificationSummary' {..} =+ _salt+ `Prelude.hashWithSalt` lensUpgradeSummary+ `Prelude.hashWithSalt` type'++instance Prelude.NFData NotificationSummary where+ rnf NotificationSummary' {..} =+ Prelude.rnf lensUpgradeSummary+ `Prelude.seq` Prelude.rnf type'
+ gen/Amazonka/WellArchitected/Types/NotificationType.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.WellArchitected.Types.NotificationType+-- 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.WellArchitected.Types.NotificationType+ ( NotificationType+ ( ..,+ NotificationType_LENS_VERSION_DEPRECATED,+ NotificationType_LENS_VERSION_UPGRADED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype NotificationType = NotificationType'+ { fromNotificationType ::+ 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 NotificationType_LENS_VERSION_DEPRECATED :: NotificationType+pattern NotificationType_LENS_VERSION_DEPRECATED = NotificationType' "LENS_VERSION_DEPRECATED"++pattern NotificationType_LENS_VERSION_UPGRADED :: NotificationType+pattern NotificationType_LENS_VERSION_UPGRADED = NotificationType' "LENS_VERSION_UPGRADED"++{-# COMPLETE+ NotificationType_LENS_VERSION_DEPRECATED,+ NotificationType_LENS_VERSION_UPGRADED,+ NotificationType'+ #-}
+ gen/Amazonka/WellArchitected/Types/OrganizationSharingStatus.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.WellArchitected.Types.OrganizationSharingStatus+-- 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.WellArchitected.Types.OrganizationSharingStatus+ ( OrganizationSharingStatus+ ( ..,+ OrganizationSharingStatus_DISABLED,+ OrganizationSharingStatus_ENABLED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype OrganizationSharingStatus = OrganizationSharingStatus'+ { fromOrganizationSharingStatus ::+ 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 OrganizationSharingStatus_DISABLED :: OrganizationSharingStatus+pattern OrganizationSharingStatus_DISABLED = OrganizationSharingStatus' "DISABLED"++pattern OrganizationSharingStatus_ENABLED :: OrganizationSharingStatus+pattern OrganizationSharingStatus_ENABLED = OrganizationSharingStatus' "ENABLED"++{-# COMPLETE+ OrganizationSharingStatus_DISABLED,+ OrganizationSharingStatus_ENABLED,+ OrganizationSharingStatus'+ #-}
+ gen/Amazonka/WellArchitected/Types/PermissionType.hs view
@@ -0,0 +1,72 @@+{-# 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.WellArchitected.Types.PermissionType+-- 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.WellArchitected.Types.PermissionType+ ( PermissionType+ ( ..,+ PermissionType_CONTRIBUTOR,+ PermissionType_READONLY+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Permission granted on a workload share.+newtype PermissionType = PermissionType'+ { fromPermissionType ::+ 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 PermissionType_CONTRIBUTOR :: PermissionType+pattern PermissionType_CONTRIBUTOR = PermissionType' "CONTRIBUTOR"++pattern PermissionType_READONLY :: PermissionType+pattern PermissionType_READONLY = PermissionType' "READONLY"++{-# COMPLETE+ PermissionType_CONTRIBUTOR,+ PermissionType_READONLY,+ PermissionType'+ #-}
+ gen/Amazonka/WellArchitected/Types/PillarDifference.hs view
@@ -0,0 +1,112 @@+{-# 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.WellArchitected.Types.PillarDifference+-- 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.WellArchitected.Types.PillarDifference 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+import Amazonka.WellArchitected.Types.DifferenceStatus+import Amazonka.WellArchitected.Types.QuestionDifference++-- | A pillar difference return object.+--+-- /See:/ 'newPillarDifference' smart constructor.+data PillarDifference = PillarDifference'+ { -- | Indicates the type of change to the pillar.+ differenceStatus :: Prelude.Maybe DifferenceStatus,+ pillarId :: Prelude.Maybe Prelude.Text,+ pillarName :: Prelude.Maybe Prelude.Text,+ -- | List of question differences.+ questionDifferences :: Prelude.Maybe [QuestionDifference]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PillarDifference' 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:+--+-- 'differenceStatus', 'pillarDifference_differenceStatus' - Indicates the type of change to the pillar.+--+-- 'pillarId', 'pillarDifference_pillarId' - Undocumented member.+--+-- 'pillarName', 'pillarDifference_pillarName' - Undocumented member.+--+-- 'questionDifferences', 'pillarDifference_questionDifferences' - List of question differences.+newPillarDifference ::+ PillarDifference+newPillarDifference =+ PillarDifference'+ { differenceStatus =+ Prelude.Nothing,+ pillarId = Prelude.Nothing,+ pillarName = Prelude.Nothing,+ questionDifferences = Prelude.Nothing+ }++-- | Indicates the type of change to the pillar.+pillarDifference_differenceStatus :: Lens.Lens' PillarDifference (Prelude.Maybe DifferenceStatus)+pillarDifference_differenceStatus = Lens.lens (\PillarDifference' {differenceStatus} -> differenceStatus) (\s@PillarDifference' {} a -> s {differenceStatus = a} :: PillarDifference)++-- | Undocumented member.+pillarDifference_pillarId :: Lens.Lens' PillarDifference (Prelude.Maybe Prelude.Text)+pillarDifference_pillarId = Lens.lens (\PillarDifference' {pillarId} -> pillarId) (\s@PillarDifference' {} a -> s {pillarId = a} :: PillarDifference)++-- | Undocumented member.+pillarDifference_pillarName :: Lens.Lens' PillarDifference (Prelude.Maybe Prelude.Text)+pillarDifference_pillarName = Lens.lens (\PillarDifference' {pillarName} -> pillarName) (\s@PillarDifference' {} a -> s {pillarName = a} :: PillarDifference)++-- | List of question differences.+pillarDifference_questionDifferences :: Lens.Lens' PillarDifference (Prelude.Maybe [QuestionDifference])+pillarDifference_questionDifferences = Lens.lens (\PillarDifference' {questionDifferences} -> questionDifferences) (\s@PillarDifference' {} a -> s {questionDifferences = a} :: PillarDifference) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON PillarDifference where+ parseJSON =+ Data.withObject+ "PillarDifference"+ ( \x ->+ PillarDifference'+ Prelude.<$> (x Data..:? "DifferenceStatus")+ Prelude.<*> (x Data..:? "PillarId")+ Prelude.<*> (x Data..:? "PillarName")+ Prelude.<*> ( x+ Data..:? "QuestionDifferences"+ Data..!= Prelude.mempty+ )+ )++instance Prelude.Hashable PillarDifference where+ hashWithSalt _salt PillarDifference' {..} =+ _salt+ `Prelude.hashWithSalt` differenceStatus+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` pillarName+ `Prelude.hashWithSalt` questionDifferences++instance Prelude.NFData PillarDifference where+ rnf PillarDifference' {..} =+ Prelude.rnf differenceStatus+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf pillarName+ `Prelude.seq` Prelude.rnf questionDifferences
+ gen/Amazonka/WellArchitected/Types/PillarReviewSummary.hs view
@@ -0,0 +1,105 @@+{-# 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.WellArchitected.Types.PillarReviewSummary+-- 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.WellArchitected.Types.PillarReviewSummary 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+import Amazonka.WellArchitected.Types.Risk++-- | A pillar review summary of a lens review.+--+-- /See:/ 'newPillarReviewSummary' smart constructor.+data PillarReviewSummary = PillarReviewSummary'+ { notes :: Prelude.Maybe Prelude.Text,+ pillarId :: Prelude.Maybe Prelude.Text,+ pillarName :: Prelude.Maybe Prelude.Text,+ riskCounts :: Prelude.Maybe (Prelude.HashMap Risk Prelude.Natural)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PillarReviewSummary' 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:+--+-- 'notes', 'pillarReviewSummary_notes' - Undocumented member.+--+-- 'pillarId', 'pillarReviewSummary_pillarId' - Undocumented member.+--+-- 'pillarName', 'pillarReviewSummary_pillarName' - Undocumented member.+--+-- 'riskCounts', 'pillarReviewSummary_riskCounts' - Undocumented member.+newPillarReviewSummary ::+ PillarReviewSummary+newPillarReviewSummary =+ PillarReviewSummary'+ { notes = Prelude.Nothing,+ pillarId = Prelude.Nothing,+ pillarName = Prelude.Nothing,+ riskCounts = Prelude.Nothing+ }++-- | Undocumented member.+pillarReviewSummary_notes :: Lens.Lens' PillarReviewSummary (Prelude.Maybe Prelude.Text)+pillarReviewSummary_notes = Lens.lens (\PillarReviewSummary' {notes} -> notes) (\s@PillarReviewSummary' {} a -> s {notes = a} :: PillarReviewSummary)++-- | Undocumented member.+pillarReviewSummary_pillarId :: Lens.Lens' PillarReviewSummary (Prelude.Maybe Prelude.Text)+pillarReviewSummary_pillarId = Lens.lens (\PillarReviewSummary' {pillarId} -> pillarId) (\s@PillarReviewSummary' {} a -> s {pillarId = a} :: PillarReviewSummary)++-- | Undocumented member.+pillarReviewSummary_pillarName :: Lens.Lens' PillarReviewSummary (Prelude.Maybe Prelude.Text)+pillarReviewSummary_pillarName = Lens.lens (\PillarReviewSummary' {pillarName} -> pillarName) (\s@PillarReviewSummary' {} a -> s {pillarName = a} :: PillarReviewSummary)++-- | Undocumented member.+pillarReviewSummary_riskCounts :: Lens.Lens' PillarReviewSummary (Prelude.Maybe (Prelude.HashMap Risk Prelude.Natural))+pillarReviewSummary_riskCounts = Lens.lens (\PillarReviewSummary' {riskCounts} -> riskCounts) (\s@PillarReviewSummary' {} a -> s {riskCounts = a} :: PillarReviewSummary) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON PillarReviewSummary where+ parseJSON =+ Data.withObject+ "PillarReviewSummary"+ ( \x ->+ PillarReviewSummary'+ Prelude.<$> (x Data..:? "Notes")+ Prelude.<*> (x Data..:? "PillarId")+ Prelude.<*> (x Data..:? "PillarName")+ Prelude.<*> (x Data..:? "RiskCounts" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable PillarReviewSummary where+ hashWithSalt _salt PillarReviewSummary' {..} =+ _salt+ `Prelude.hashWithSalt` notes+ `Prelude.hashWithSalt` pillarId+ `Prelude.hashWithSalt` pillarName+ `Prelude.hashWithSalt` riskCounts++instance Prelude.NFData PillarReviewSummary where+ rnf PillarReviewSummary' {..} =+ Prelude.rnf notes+ `Prelude.seq` Prelude.rnf pillarId+ `Prelude.seq` Prelude.rnf pillarName+ `Prelude.seq` Prelude.rnf riskCounts
+ gen/Amazonka/WellArchitected/Types/QuestionDifference.hs view
@@ -0,0 +1,96 @@+{-# 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.WellArchitected.Types.QuestionDifference+-- 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.WellArchitected.Types.QuestionDifference 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+import Amazonka.WellArchitected.Types.DifferenceStatus++-- | A question difference return object.+--+-- /See:/ 'newQuestionDifference' smart constructor.+data QuestionDifference = QuestionDifference'+ { -- | Indicates the type of change to the question.+ differenceStatus :: Prelude.Maybe DifferenceStatus,+ questionId :: Prelude.Maybe Prelude.Text,+ questionTitle :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'QuestionDifference' 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:+--+-- 'differenceStatus', 'questionDifference_differenceStatus' - Indicates the type of change to the question.+--+-- 'questionId', 'questionDifference_questionId' - Undocumented member.+--+-- 'questionTitle', 'questionDifference_questionTitle' - Undocumented member.+newQuestionDifference ::+ QuestionDifference+newQuestionDifference =+ QuestionDifference'+ { differenceStatus =+ Prelude.Nothing,+ questionId = Prelude.Nothing,+ questionTitle = Prelude.Nothing+ }++-- | Indicates the type of change to the question.+questionDifference_differenceStatus :: Lens.Lens' QuestionDifference (Prelude.Maybe DifferenceStatus)+questionDifference_differenceStatus = Lens.lens (\QuestionDifference' {differenceStatus} -> differenceStatus) (\s@QuestionDifference' {} a -> s {differenceStatus = a} :: QuestionDifference)++-- | Undocumented member.+questionDifference_questionId :: Lens.Lens' QuestionDifference (Prelude.Maybe Prelude.Text)+questionDifference_questionId = Lens.lens (\QuestionDifference' {questionId} -> questionId) (\s@QuestionDifference' {} a -> s {questionId = a} :: QuestionDifference)++-- | Undocumented member.+questionDifference_questionTitle :: Lens.Lens' QuestionDifference (Prelude.Maybe Prelude.Text)+questionDifference_questionTitle = Lens.lens (\QuestionDifference' {questionTitle} -> questionTitle) (\s@QuestionDifference' {} a -> s {questionTitle = a} :: QuestionDifference)++instance Data.FromJSON QuestionDifference where+ parseJSON =+ Data.withObject+ "QuestionDifference"+ ( \x ->+ QuestionDifference'+ Prelude.<$> (x Data..:? "DifferenceStatus")+ Prelude.<*> (x Data..:? "QuestionId")+ Prelude.<*> (x Data..:? "QuestionTitle")+ )++instance Prelude.Hashable QuestionDifference where+ hashWithSalt _salt QuestionDifference' {..} =+ _salt+ `Prelude.hashWithSalt` differenceStatus+ `Prelude.hashWithSalt` questionId+ `Prelude.hashWithSalt` questionTitle++instance Prelude.NFData QuestionDifference where+ rnf QuestionDifference' {..} =+ Prelude.rnf differenceStatus+ `Prelude.seq` Prelude.rnf questionId+ `Prelude.seq` Prelude.rnf questionTitle
+ gen/Amazonka/WellArchitected/Types/Risk.hs view
@@ -0,0 +1,84 @@+{-# 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.WellArchitected.Types.Risk+-- 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.WellArchitected.Types.Risk+ ( Risk+ ( ..,+ Risk_HIGH,+ Risk_MEDIUM,+ Risk_NONE,+ Risk_NOT_APPLICABLE,+ Risk_UNANSWERED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The risk for a given workload, lens review, pillar, or question.+newtype Risk = Risk' {fromRisk :: 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 Risk_HIGH :: Risk+pattern Risk_HIGH = Risk' "HIGH"++pattern Risk_MEDIUM :: Risk+pattern Risk_MEDIUM = Risk' "MEDIUM"++pattern Risk_NONE :: Risk+pattern Risk_NONE = Risk' "NONE"++pattern Risk_NOT_APPLICABLE :: Risk+pattern Risk_NOT_APPLICABLE = Risk' "NOT_APPLICABLE"++pattern Risk_UNANSWERED :: Risk+pattern Risk_UNANSWERED = Risk' "UNANSWERED"++{-# COMPLETE+ Risk_HIGH,+ Risk_MEDIUM,+ Risk_NONE,+ Risk_NOT_APPLICABLE,+ Risk_UNANSWERED,+ Risk'+ #-}
@@ -0,0 +1,119 @@+{-# 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.WellArchitected.Types.ShareInvitation+-- 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.WellArchitected.Types.ShareInvitation 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+import Amazonka.WellArchitected.Types.ShareResourceType++-- | The share invitation.+--+-- /See:/ 'newShareInvitation' smart constructor.+data ShareInvitation = ShareInvitation'+ { lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ -- | The ID assigned to the share invitation.+ shareInvitationId :: Prelude.Maybe Prelude.Text,+ -- | The resource type of the share invitation.+ shareResourceType :: Prelude.Maybe ShareResourceType,+ workloadId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ShareInvitation' 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:+--+-- 'lensAlias', 'shareInvitation_lensAlias' - Undocumented member.+--+-- 'lensArn', 'shareInvitation_lensArn' - The ARN for the lens.+--+-- 'shareInvitationId', 'shareInvitation_shareInvitationId' - The ID assigned to the share invitation.+--+-- 'shareResourceType', 'shareInvitation_shareResourceType' - The resource type of the share invitation.+--+-- 'workloadId', 'shareInvitation_workloadId' - Undocumented member.+newShareInvitation ::+ ShareInvitation+newShareInvitation =+ ShareInvitation'+ { lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ shareInvitationId = Prelude.Nothing,+ shareResourceType = Prelude.Nothing,+ workloadId = Prelude.Nothing+ }++-- | Undocumented member.+shareInvitation_lensAlias :: Lens.Lens' ShareInvitation (Prelude.Maybe Prelude.Text)+shareInvitation_lensAlias = Lens.lens (\ShareInvitation' {lensAlias} -> lensAlias) (\s@ShareInvitation' {} a -> s {lensAlias = a} :: ShareInvitation)++-- | The ARN for the lens.+shareInvitation_lensArn :: Lens.Lens' ShareInvitation (Prelude.Maybe Prelude.Text)+shareInvitation_lensArn = Lens.lens (\ShareInvitation' {lensArn} -> lensArn) (\s@ShareInvitation' {} a -> s {lensArn = a} :: ShareInvitation)++-- | The ID assigned to the share invitation.+shareInvitation_shareInvitationId :: Lens.Lens' ShareInvitation (Prelude.Maybe Prelude.Text)+shareInvitation_shareInvitationId = Lens.lens (\ShareInvitation' {shareInvitationId} -> shareInvitationId) (\s@ShareInvitation' {} a -> s {shareInvitationId = a} :: ShareInvitation)++-- | The resource type of the share invitation.+shareInvitation_shareResourceType :: Lens.Lens' ShareInvitation (Prelude.Maybe ShareResourceType)+shareInvitation_shareResourceType = Lens.lens (\ShareInvitation' {shareResourceType} -> shareResourceType) (\s@ShareInvitation' {} a -> s {shareResourceType = a} :: ShareInvitation)++-- | Undocumented member.+shareInvitation_workloadId :: Lens.Lens' ShareInvitation (Prelude.Maybe Prelude.Text)+shareInvitation_workloadId = Lens.lens (\ShareInvitation' {workloadId} -> workloadId) (\s@ShareInvitation' {} a -> s {workloadId = a} :: ShareInvitation)++instance Data.FromJSON ShareInvitation where+ parseJSON =+ Data.withObject+ "ShareInvitation"+ ( \x ->+ ShareInvitation'+ Prelude.<$> (x Data..:? "LensAlias")+ Prelude.<*> (x Data..:? "LensArn")+ Prelude.<*> (x Data..:? "ShareInvitationId")+ Prelude.<*> (x Data..:? "ShareResourceType")+ Prelude.<*> (x Data..:? "WorkloadId")+ )++instance Prelude.Hashable ShareInvitation where+ hashWithSalt _salt ShareInvitation' {..} =+ _salt+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` shareInvitationId+ `Prelude.hashWithSalt` shareResourceType+ `Prelude.hashWithSalt` workloadId++instance Prelude.NFData ShareInvitation where+ rnf ShareInvitation' {..} =+ Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf shareInvitationId+ `Prelude.seq` Prelude.rnf shareResourceType+ `Prelude.seq` Prelude.rnf workloadId
@@ -0,0 +1,72 @@+{-# 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.WellArchitected.Types.ShareInvitationAction+-- 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.WellArchitected.Types.ShareInvitationAction+ ( ShareInvitationAction+ ( ..,+ ShareInvitationAction_ACCEPT,+ ShareInvitationAction_REJECT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Share invitation action taken by contributor.+newtype ShareInvitationAction = ShareInvitationAction'+ { fromShareInvitationAction ::+ 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 ShareInvitationAction_ACCEPT :: ShareInvitationAction+pattern ShareInvitationAction_ACCEPT = ShareInvitationAction' "ACCEPT"++pattern ShareInvitationAction_REJECT :: ShareInvitationAction+pattern ShareInvitationAction_REJECT = ShareInvitationAction' "REJECT"++{-# COMPLETE+ ShareInvitationAction_ACCEPT,+ ShareInvitationAction_REJECT,+ ShareInvitationAction'+ #-}
@@ -0,0 +1,164 @@+{-# 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.WellArchitected.Types.ShareInvitationSummary+-- 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.WellArchitected.Types.ShareInvitationSummary 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+import Amazonka.WellArchitected.Types.PermissionType+import Amazonka.WellArchitected.Types.ShareResourceType++-- | A share invitation summary return object.+--+-- /See:/ 'newShareInvitationSummary' smart constructor.+data ShareInvitationSummary = ShareInvitationSummary'+ { -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ lensName :: Prelude.Maybe Prelude.Text,+ permissionType :: Prelude.Maybe PermissionType,+ -- | The ID assigned to the share invitation.+ shareInvitationId :: Prelude.Maybe Prelude.Text,+ -- | The resource type of the share invitation.+ shareResourceType :: Prelude.Maybe ShareResourceType,+ sharedBy :: Prelude.Maybe Prelude.Text,+ sharedWith :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Maybe Prelude.Text,+ workloadName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ShareInvitationSummary' 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:+--+-- 'lensArn', 'shareInvitationSummary_lensArn' - The ARN for the lens.+--+-- 'lensName', 'shareInvitationSummary_lensName' - Undocumented member.+--+-- 'permissionType', 'shareInvitationSummary_permissionType' - Undocumented member.+--+-- 'shareInvitationId', 'shareInvitationSummary_shareInvitationId' - The ID assigned to the share invitation.+--+-- 'shareResourceType', 'shareInvitationSummary_shareResourceType' - The resource type of the share invitation.+--+-- 'sharedBy', 'shareInvitationSummary_sharedBy' - Undocumented member.+--+-- 'sharedWith', 'shareInvitationSummary_sharedWith' - Undocumented member.+--+-- 'workloadId', 'shareInvitationSummary_workloadId' - Undocumented member.+--+-- 'workloadName', 'shareInvitationSummary_workloadName' - Undocumented member.+newShareInvitationSummary ::+ ShareInvitationSummary+newShareInvitationSummary =+ ShareInvitationSummary'+ { lensArn = Prelude.Nothing,+ lensName = Prelude.Nothing,+ permissionType = Prelude.Nothing,+ shareInvitationId = Prelude.Nothing,+ shareResourceType = Prelude.Nothing,+ sharedBy = Prelude.Nothing,+ sharedWith = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ workloadName = Prelude.Nothing+ }++-- | The ARN for the lens.+shareInvitationSummary_lensArn :: Lens.Lens' ShareInvitationSummary (Prelude.Maybe Prelude.Text)+shareInvitationSummary_lensArn = Lens.lens (\ShareInvitationSummary' {lensArn} -> lensArn) (\s@ShareInvitationSummary' {} a -> s {lensArn = a} :: ShareInvitationSummary)++-- | Undocumented member.+shareInvitationSummary_lensName :: Lens.Lens' ShareInvitationSummary (Prelude.Maybe Prelude.Text)+shareInvitationSummary_lensName = Lens.lens (\ShareInvitationSummary' {lensName} -> lensName) (\s@ShareInvitationSummary' {} a -> s {lensName = a} :: ShareInvitationSummary)++-- | Undocumented member.+shareInvitationSummary_permissionType :: Lens.Lens' ShareInvitationSummary (Prelude.Maybe PermissionType)+shareInvitationSummary_permissionType = Lens.lens (\ShareInvitationSummary' {permissionType} -> permissionType) (\s@ShareInvitationSummary' {} a -> s {permissionType = a} :: ShareInvitationSummary)++-- | The ID assigned to the share invitation.+shareInvitationSummary_shareInvitationId :: Lens.Lens' ShareInvitationSummary (Prelude.Maybe Prelude.Text)+shareInvitationSummary_shareInvitationId = Lens.lens (\ShareInvitationSummary' {shareInvitationId} -> shareInvitationId) (\s@ShareInvitationSummary' {} a -> s {shareInvitationId = a} :: ShareInvitationSummary)++-- | The resource type of the share invitation.+shareInvitationSummary_shareResourceType :: Lens.Lens' ShareInvitationSummary (Prelude.Maybe ShareResourceType)+shareInvitationSummary_shareResourceType = Lens.lens (\ShareInvitationSummary' {shareResourceType} -> shareResourceType) (\s@ShareInvitationSummary' {} a -> s {shareResourceType = a} :: ShareInvitationSummary)++-- | Undocumented member.+shareInvitationSummary_sharedBy :: Lens.Lens' ShareInvitationSummary (Prelude.Maybe Prelude.Text)+shareInvitationSummary_sharedBy = Lens.lens (\ShareInvitationSummary' {sharedBy} -> sharedBy) (\s@ShareInvitationSummary' {} a -> s {sharedBy = a} :: ShareInvitationSummary)++-- | Undocumented member.+shareInvitationSummary_sharedWith :: Lens.Lens' ShareInvitationSummary (Prelude.Maybe Prelude.Text)+shareInvitationSummary_sharedWith = Lens.lens (\ShareInvitationSummary' {sharedWith} -> sharedWith) (\s@ShareInvitationSummary' {} a -> s {sharedWith = a} :: ShareInvitationSummary)++-- | Undocumented member.+shareInvitationSummary_workloadId :: Lens.Lens' ShareInvitationSummary (Prelude.Maybe Prelude.Text)+shareInvitationSummary_workloadId = Lens.lens (\ShareInvitationSummary' {workloadId} -> workloadId) (\s@ShareInvitationSummary' {} a -> s {workloadId = a} :: ShareInvitationSummary)++-- | Undocumented member.+shareInvitationSummary_workloadName :: Lens.Lens' ShareInvitationSummary (Prelude.Maybe Prelude.Text)+shareInvitationSummary_workloadName = Lens.lens (\ShareInvitationSummary' {workloadName} -> workloadName) (\s@ShareInvitationSummary' {} a -> s {workloadName = a} :: ShareInvitationSummary)++instance Data.FromJSON ShareInvitationSummary where+ parseJSON =+ Data.withObject+ "ShareInvitationSummary"+ ( \x ->+ ShareInvitationSummary'+ Prelude.<$> (x Data..:? "LensArn")+ Prelude.<*> (x Data..:? "LensName")+ Prelude.<*> (x Data..:? "PermissionType")+ Prelude.<*> (x Data..:? "ShareInvitationId")+ Prelude.<*> (x Data..:? "ShareResourceType")+ Prelude.<*> (x Data..:? "SharedBy")+ Prelude.<*> (x Data..:? "SharedWith")+ Prelude.<*> (x Data..:? "WorkloadId")+ Prelude.<*> (x Data..:? "WorkloadName")+ )++instance Prelude.Hashable ShareInvitationSummary where+ hashWithSalt _salt ShareInvitationSummary' {..} =+ _salt+ `Prelude.hashWithSalt` lensArn+ `Prelude.hashWithSalt` lensName+ `Prelude.hashWithSalt` permissionType+ `Prelude.hashWithSalt` shareInvitationId+ `Prelude.hashWithSalt` shareResourceType+ `Prelude.hashWithSalt` sharedBy+ `Prelude.hashWithSalt` sharedWith+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` workloadName++instance Prelude.NFData ShareInvitationSummary where+ rnf ShareInvitationSummary' {..} =+ Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf lensName+ `Prelude.seq` Prelude.rnf permissionType+ `Prelude.seq` Prelude.rnf shareInvitationId+ `Prelude.seq` Prelude.rnf shareResourceType+ `Prelude.seq` Prelude.rnf sharedBy+ `Prelude.seq` Prelude.rnf sharedWith+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf workloadName
@@ -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.WellArchitected.Types.ShareResourceType+-- 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.WellArchitected.Types.ShareResourceType+ ( ShareResourceType+ ( ..,+ ShareResourceType_LENS,+ ShareResourceType_WORKLOAD+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ShareResourceType = ShareResourceType'+ { fromShareResourceType ::+ 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 ShareResourceType_LENS :: ShareResourceType+pattern ShareResourceType_LENS = ShareResourceType' "LENS"++pattern ShareResourceType_WORKLOAD :: ShareResourceType+pattern ShareResourceType_WORKLOAD = ShareResourceType' "WORKLOAD"++{-# COMPLETE+ ShareResourceType_LENS,+ ShareResourceType_WORKLOAD,+ ShareResourceType'+ #-}
@@ -0,0 +1,102 @@+{-# 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.WellArchitected.Types.ShareStatus+-- 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.WellArchitected.Types.ShareStatus+ ( ShareStatus+ ( ..,+ ShareStatus_ACCEPTED,+ ShareStatus_ASSOCIATED,+ ShareStatus_ASSOCIATING,+ ShareStatus_EXPIRED,+ ShareStatus_FAILED,+ ShareStatus_PENDING,+ ShareStatus_REJECTED,+ ShareStatus_REVOKED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The status of a workload share.+newtype ShareStatus = ShareStatus'+ { fromShareStatus ::+ 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 ShareStatus_ACCEPTED :: ShareStatus+pattern ShareStatus_ACCEPTED = ShareStatus' "ACCEPTED"++pattern ShareStatus_ASSOCIATED :: ShareStatus+pattern ShareStatus_ASSOCIATED = ShareStatus' "ASSOCIATED"++pattern ShareStatus_ASSOCIATING :: ShareStatus+pattern ShareStatus_ASSOCIATING = ShareStatus' "ASSOCIATING"++pattern ShareStatus_EXPIRED :: ShareStatus+pattern ShareStatus_EXPIRED = ShareStatus' "EXPIRED"++pattern ShareStatus_FAILED :: ShareStatus+pattern ShareStatus_FAILED = ShareStatus' "FAILED"++pattern ShareStatus_PENDING :: ShareStatus+pattern ShareStatus_PENDING = ShareStatus' "PENDING"++pattern ShareStatus_REJECTED :: ShareStatus+pattern ShareStatus_REJECTED = ShareStatus' "REJECTED"++pattern ShareStatus_REVOKED :: ShareStatus+pattern ShareStatus_REVOKED = ShareStatus' "REVOKED"++{-# COMPLETE+ ShareStatus_ACCEPTED,+ ShareStatus_ASSOCIATED,+ ShareStatus_ASSOCIATING,+ ShareStatus_EXPIRED,+ ShareStatus_FAILED,+ ShareStatus_PENDING,+ ShareStatus_REJECTED,+ ShareStatus_REVOKED,+ ShareStatus'+ #-}
+ gen/Amazonka/WellArchitected/Types/TrustedAdvisorIntegrationStatus.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.WellArchitected.Types.TrustedAdvisorIntegrationStatus+-- 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.WellArchitected.Types.TrustedAdvisorIntegrationStatus+ ( TrustedAdvisorIntegrationStatus+ ( ..,+ TrustedAdvisorIntegrationStatus_DISABLED,+ TrustedAdvisorIntegrationStatus_ENABLED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype TrustedAdvisorIntegrationStatus = TrustedAdvisorIntegrationStatus'+ { fromTrustedAdvisorIntegrationStatus ::+ 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 TrustedAdvisorIntegrationStatus_DISABLED :: TrustedAdvisorIntegrationStatus+pattern TrustedAdvisorIntegrationStatus_DISABLED = TrustedAdvisorIntegrationStatus' "DISABLED"++pattern TrustedAdvisorIntegrationStatus_ENABLED :: TrustedAdvisorIntegrationStatus+pattern TrustedAdvisorIntegrationStatus_ENABLED = TrustedAdvisorIntegrationStatus' "ENABLED"++{-# COMPLETE+ TrustedAdvisorIntegrationStatus_DISABLED,+ TrustedAdvisorIntegrationStatus_ENABLED,+ TrustedAdvisorIntegrationStatus'+ #-}
+ gen/Amazonka/WellArchitected/Types/VersionDifferences.hs view
@@ -0,0 +1,76 @@+{-# 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.WellArchitected.Types.VersionDifferences+-- 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.WellArchitected.Types.VersionDifferences 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+import Amazonka.WellArchitected.Types.PillarDifference++-- | The differences between the base and latest versions of the lens.+--+-- /See:/ 'newVersionDifferences' smart constructor.+data VersionDifferences = VersionDifferences'+ { -- | The differences between the base and latest versions of the lens.+ pillarDifferences :: Prelude.Maybe [PillarDifference]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VersionDifferences' 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:+--+-- 'pillarDifferences', 'versionDifferences_pillarDifferences' - The differences between the base and latest versions of the lens.+newVersionDifferences ::+ VersionDifferences+newVersionDifferences =+ VersionDifferences'+ { pillarDifferences =+ Prelude.Nothing+ }++-- | The differences between the base and latest versions of the lens.+versionDifferences_pillarDifferences :: Lens.Lens' VersionDifferences (Prelude.Maybe [PillarDifference])+versionDifferences_pillarDifferences = Lens.lens (\VersionDifferences' {pillarDifferences} -> pillarDifferences) (\s@VersionDifferences' {} a -> s {pillarDifferences = a} :: VersionDifferences) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON VersionDifferences where+ parseJSON =+ Data.withObject+ "VersionDifferences"+ ( \x ->+ VersionDifferences'+ Prelude.<$> ( x+ Data..:? "PillarDifferences"+ Data..!= Prelude.mempty+ )+ )++instance Prelude.Hashable VersionDifferences where+ hashWithSalt _salt VersionDifferences' {..} =+ _salt `Prelude.hashWithSalt` pillarDifferences++instance Prelude.NFData VersionDifferences where+ rnf VersionDifferences' {..} =+ Prelude.rnf pillarDifferences
+ gen/Amazonka/WellArchitected/Types/Workload.hs view
@@ -0,0 +1,363 @@+{-# 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.WellArchitected.Types.Workload+-- 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.WellArchitected.Types.Workload 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+import Amazonka.WellArchitected.Types.Risk+import Amazonka.WellArchitected.Types.WorkloadDiscoveryConfig+import Amazonka.WellArchitected.Types.WorkloadEnvironment+import Amazonka.WellArchitected.Types.WorkloadImprovementStatus++-- | A workload return object.+--+-- /See:/ 'newWorkload' smart constructor.+data Workload = Workload'+ { accountIds :: Prelude.Maybe [Prelude.Text],+ -- | List of AppRegistry application ARNs associated to the workload.+ applications :: Prelude.Maybe [Prelude.Text],+ architecturalDesign :: Prelude.Maybe Prelude.Text,+ awsRegions :: Prelude.Maybe [Prelude.Text],+ description :: Prelude.Maybe Prelude.Text,+ -- | Discovery configuration associated to the workload.+ discoveryConfig :: Prelude.Maybe WorkloadDiscoveryConfig,+ environment :: Prelude.Maybe WorkloadEnvironment,+ improvementStatus :: Prelude.Maybe WorkloadImprovementStatus,+ industry :: Prelude.Maybe Prelude.Text,+ industryType :: Prelude.Maybe Prelude.Text,+ -- | Flag indicating whether the workload owner has acknowledged that the+ -- /Review owner/ field is required.+ --+ -- If a __Review owner__ is not added to the workload within 60 days of+ -- acknowledgement, access to the workload is restricted until an owner is+ -- added.+ isReviewOwnerUpdateAcknowledged :: Prelude.Maybe Prelude.Bool,+ lenses :: Prelude.Maybe [Prelude.Text],+ nonAwsRegions :: Prelude.Maybe [Prelude.Text],+ notes :: Prelude.Maybe Prelude.Text,+ owner :: Prelude.Maybe Prelude.Text,+ pillarPriorities :: Prelude.Maybe [Prelude.Text],+ reviewOwner :: Prelude.Maybe Prelude.Text,+ reviewRestrictionDate :: Prelude.Maybe Data.POSIX,+ riskCounts :: Prelude.Maybe (Prelude.HashMap Risk Prelude.Natural),+ -- | The ID assigned to the share invitation.+ shareInvitationId :: Prelude.Maybe Prelude.Text,+ -- | The tags associated with the workload.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ updatedAt :: Prelude.Maybe Data.POSIX,+ workloadArn :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Maybe Prelude.Text,+ workloadName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Workload' 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:+--+-- 'accountIds', 'workload_accountIds' - Undocumented member.+--+-- 'applications', 'workload_applications' - List of AppRegistry application ARNs associated to the workload.+--+-- 'architecturalDesign', 'workload_architecturalDesign' - Undocumented member.+--+-- 'awsRegions', 'workload_awsRegions' - Undocumented member.+--+-- 'description', 'workload_description' - Undocumented member.+--+-- 'discoveryConfig', 'workload_discoveryConfig' - Discovery configuration associated to the workload.+--+-- 'environment', 'workload_environment' - Undocumented member.+--+-- 'improvementStatus', 'workload_improvementStatus' - Undocumented member.+--+-- 'industry', 'workload_industry' - Undocumented member.+--+-- 'industryType', 'workload_industryType' - Undocumented member.+--+-- 'isReviewOwnerUpdateAcknowledged', 'workload_isReviewOwnerUpdateAcknowledged' - Flag indicating whether the workload owner has acknowledged that the+-- /Review owner/ field is required.+--+-- If a __Review owner__ is not added to the workload within 60 days of+-- acknowledgement, access to the workload is restricted until an owner is+-- added.+--+-- 'lenses', 'workload_lenses' - Undocumented member.+--+-- 'nonAwsRegions', 'workload_nonAwsRegions' - Undocumented member.+--+-- 'notes', 'workload_notes' - Undocumented member.+--+-- 'owner', 'workload_owner' - Undocumented member.+--+-- 'pillarPriorities', 'workload_pillarPriorities' - Undocumented member.+--+-- 'reviewOwner', 'workload_reviewOwner' - Undocumented member.+--+-- 'reviewRestrictionDate', 'workload_reviewRestrictionDate' - Undocumented member.+--+-- 'riskCounts', 'workload_riskCounts' - Undocumented member.+--+-- 'shareInvitationId', 'workload_shareInvitationId' - The ID assigned to the share invitation.+--+-- 'tags', 'workload_tags' - The tags associated with the workload.+--+-- 'updatedAt', 'workload_updatedAt' - Undocumented member.+--+-- 'workloadArn', 'workload_workloadArn' - Undocumented member.+--+-- 'workloadId', 'workload_workloadId' - Undocumented member.+--+-- 'workloadName', 'workload_workloadName' - Undocumented member.+newWorkload ::+ Workload+newWorkload =+ Workload'+ { accountIds = Prelude.Nothing,+ applications = Prelude.Nothing,+ architecturalDesign = Prelude.Nothing,+ awsRegions = Prelude.Nothing,+ description = Prelude.Nothing,+ discoveryConfig = Prelude.Nothing,+ environment = Prelude.Nothing,+ improvementStatus = Prelude.Nothing,+ industry = Prelude.Nothing,+ industryType = Prelude.Nothing,+ isReviewOwnerUpdateAcknowledged = Prelude.Nothing,+ lenses = Prelude.Nothing,+ nonAwsRegions = Prelude.Nothing,+ notes = Prelude.Nothing,+ owner = Prelude.Nothing,+ pillarPriorities = Prelude.Nothing,+ reviewOwner = Prelude.Nothing,+ reviewRestrictionDate = Prelude.Nothing,+ riskCounts = Prelude.Nothing,+ shareInvitationId = Prelude.Nothing,+ tags = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ workloadArn = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ workloadName = Prelude.Nothing+ }++-- | Undocumented member.+workload_accountIds :: Lens.Lens' Workload (Prelude.Maybe [Prelude.Text])+workload_accountIds = Lens.lens (\Workload' {accountIds} -> accountIds) (\s@Workload' {} a -> s {accountIds = a} :: Workload) Prelude.. Lens.mapping Lens.coerced++-- | List of AppRegistry application ARNs associated to the workload.+workload_applications :: Lens.Lens' Workload (Prelude.Maybe [Prelude.Text])+workload_applications = Lens.lens (\Workload' {applications} -> applications) (\s@Workload' {} a -> s {applications = a} :: Workload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+workload_architecturalDesign :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_architecturalDesign = Lens.lens (\Workload' {architecturalDesign} -> architecturalDesign) (\s@Workload' {} a -> s {architecturalDesign = a} :: Workload)++-- | Undocumented member.+workload_awsRegions :: Lens.Lens' Workload (Prelude.Maybe [Prelude.Text])+workload_awsRegions = Lens.lens (\Workload' {awsRegions} -> awsRegions) (\s@Workload' {} a -> s {awsRegions = a} :: Workload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+workload_description :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_description = Lens.lens (\Workload' {description} -> description) (\s@Workload' {} a -> s {description = a} :: Workload)++-- | Discovery configuration associated to the workload.+workload_discoveryConfig :: Lens.Lens' Workload (Prelude.Maybe WorkloadDiscoveryConfig)+workload_discoveryConfig = Lens.lens (\Workload' {discoveryConfig} -> discoveryConfig) (\s@Workload' {} a -> s {discoveryConfig = a} :: Workload)++-- | Undocumented member.+workload_environment :: Lens.Lens' Workload (Prelude.Maybe WorkloadEnvironment)+workload_environment = Lens.lens (\Workload' {environment} -> environment) (\s@Workload' {} a -> s {environment = a} :: Workload)++-- | Undocumented member.+workload_improvementStatus :: Lens.Lens' Workload (Prelude.Maybe WorkloadImprovementStatus)+workload_improvementStatus = Lens.lens (\Workload' {improvementStatus} -> improvementStatus) (\s@Workload' {} a -> s {improvementStatus = a} :: Workload)++-- | Undocumented member.+workload_industry :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_industry = Lens.lens (\Workload' {industry} -> industry) (\s@Workload' {} a -> s {industry = a} :: Workload)++-- | Undocumented member.+workload_industryType :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_industryType = Lens.lens (\Workload' {industryType} -> industryType) (\s@Workload' {} a -> s {industryType = a} :: Workload)++-- | Flag indicating whether the workload owner has acknowledged that the+-- /Review owner/ field is required.+--+-- If a __Review owner__ is not added to the workload within 60 days of+-- acknowledgement, access to the workload is restricted until an owner is+-- added.+workload_isReviewOwnerUpdateAcknowledged :: Lens.Lens' Workload (Prelude.Maybe Prelude.Bool)+workload_isReviewOwnerUpdateAcknowledged = Lens.lens (\Workload' {isReviewOwnerUpdateAcknowledged} -> isReviewOwnerUpdateAcknowledged) (\s@Workload' {} a -> s {isReviewOwnerUpdateAcknowledged = a} :: Workload)++-- | Undocumented member.+workload_lenses :: Lens.Lens' Workload (Prelude.Maybe [Prelude.Text])+workload_lenses = Lens.lens (\Workload' {lenses} -> lenses) (\s@Workload' {} a -> s {lenses = a} :: Workload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+workload_nonAwsRegions :: Lens.Lens' Workload (Prelude.Maybe [Prelude.Text])+workload_nonAwsRegions = Lens.lens (\Workload' {nonAwsRegions} -> nonAwsRegions) (\s@Workload' {} a -> s {nonAwsRegions = a} :: Workload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+workload_notes :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_notes = Lens.lens (\Workload' {notes} -> notes) (\s@Workload' {} a -> s {notes = a} :: Workload)++-- | Undocumented member.+workload_owner :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_owner = Lens.lens (\Workload' {owner} -> owner) (\s@Workload' {} a -> s {owner = a} :: Workload)++-- | Undocumented member.+workload_pillarPriorities :: Lens.Lens' Workload (Prelude.Maybe [Prelude.Text])+workload_pillarPriorities = Lens.lens (\Workload' {pillarPriorities} -> pillarPriorities) (\s@Workload' {} a -> s {pillarPriorities = a} :: Workload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+workload_reviewOwner :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_reviewOwner = Lens.lens (\Workload' {reviewOwner} -> reviewOwner) (\s@Workload' {} a -> s {reviewOwner = a} :: Workload)++-- | Undocumented member.+workload_reviewRestrictionDate :: Lens.Lens' Workload (Prelude.Maybe Prelude.UTCTime)+workload_reviewRestrictionDate = Lens.lens (\Workload' {reviewRestrictionDate} -> reviewRestrictionDate) (\s@Workload' {} a -> s {reviewRestrictionDate = a} :: Workload) Prelude.. Lens.mapping Data._Time++-- | Undocumented member.+workload_riskCounts :: Lens.Lens' Workload (Prelude.Maybe (Prelude.HashMap Risk Prelude.Natural))+workload_riskCounts = Lens.lens (\Workload' {riskCounts} -> riskCounts) (\s@Workload' {} a -> s {riskCounts = a} :: Workload) Prelude.. Lens.mapping Lens.coerced++-- | The ID assigned to the share invitation.+workload_shareInvitationId :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_shareInvitationId = Lens.lens (\Workload' {shareInvitationId} -> shareInvitationId) (\s@Workload' {} a -> s {shareInvitationId = a} :: Workload)++-- | The tags associated with the workload.+workload_tags :: Lens.Lens' Workload (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+workload_tags = Lens.lens (\Workload' {tags} -> tags) (\s@Workload' {} a -> s {tags = a} :: Workload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+workload_updatedAt :: Lens.Lens' Workload (Prelude.Maybe Prelude.UTCTime)+workload_updatedAt = Lens.lens (\Workload' {updatedAt} -> updatedAt) (\s@Workload' {} a -> s {updatedAt = a} :: Workload) Prelude.. Lens.mapping Data._Time++-- | Undocumented member.+workload_workloadArn :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_workloadArn = Lens.lens (\Workload' {workloadArn} -> workloadArn) (\s@Workload' {} a -> s {workloadArn = a} :: Workload)++-- | Undocumented member.+workload_workloadId :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_workloadId = Lens.lens (\Workload' {workloadId} -> workloadId) (\s@Workload' {} a -> s {workloadId = a} :: Workload)++-- | Undocumented member.+workload_workloadName :: Lens.Lens' Workload (Prelude.Maybe Prelude.Text)+workload_workloadName = Lens.lens (\Workload' {workloadName} -> workloadName) (\s@Workload' {} a -> s {workloadName = a} :: Workload)++instance Data.FromJSON Workload where+ parseJSON =+ Data.withObject+ "Workload"+ ( \x ->+ Workload'+ Prelude.<$> (x Data..:? "AccountIds" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Applications" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "ArchitecturalDesign")+ Prelude.<*> (x Data..:? "AwsRegions" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "DiscoveryConfig")+ Prelude.<*> (x Data..:? "Environment")+ Prelude.<*> (x Data..:? "ImprovementStatus")+ Prelude.<*> (x Data..:? "Industry")+ Prelude.<*> (x Data..:? "IndustryType")+ Prelude.<*> (x Data..:? "IsReviewOwnerUpdateAcknowledged")+ Prelude.<*> (x Data..:? "Lenses" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "NonAwsRegions" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Notes")+ Prelude.<*> (x Data..:? "Owner")+ Prelude.<*> ( x+ Data..:? "PillarPriorities"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "ReviewOwner")+ Prelude.<*> (x Data..:? "ReviewRestrictionDate")+ Prelude.<*> (x Data..:? "RiskCounts" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "ShareInvitationId")+ Prelude.<*> (x Data..:? "Tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "UpdatedAt")+ Prelude.<*> (x Data..:? "WorkloadArn")+ Prelude.<*> (x Data..:? "WorkloadId")+ Prelude.<*> (x Data..:? "WorkloadName")+ )++instance Prelude.Hashable Workload where+ hashWithSalt _salt Workload' {..} =+ _salt+ `Prelude.hashWithSalt` accountIds+ `Prelude.hashWithSalt` applications+ `Prelude.hashWithSalt` architecturalDesign+ `Prelude.hashWithSalt` awsRegions+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` discoveryConfig+ `Prelude.hashWithSalt` environment+ `Prelude.hashWithSalt` improvementStatus+ `Prelude.hashWithSalt` industry+ `Prelude.hashWithSalt` industryType+ `Prelude.hashWithSalt` isReviewOwnerUpdateAcknowledged+ `Prelude.hashWithSalt` lenses+ `Prelude.hashWithSalt` nonAwsRegions+ `Prelude.hashWithSalt` notes+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` pillarPriorities+ `Prelude.hashWithSalt` reviewOwner+ `Prelude.hashWithSalt` reviewRestrictionDate+ `Prelude.hashWithSalt` riskCounts+ `Prelude.hashWithSalt` shareInvitationId+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` updatedAt+ `Prelude.hashWithSalt` workloadArn+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` workloadName++instance Prelude.NFData Workload where+ rnf Workload' {..} =+ Prelude.rnf accountIds+ `Prelude.seq` Prelude.rnf applications+ `Prelude.seq` Prelude.rnf architecturalDesign+ `Prelude.seq` Prelude.rnf awsRegions+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf discoveryConfig+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf improvementStatus+ `Prelude.seq` Prelude.rnf industry+ `Prelude.seq` Prelude.rnf industryType+ `Prelude.seq` Prelude.rnf isReviewOwnerUpdateAcknowledged+ `Prelude.seq` Prelude.rnf lenses+ `Prelude.seq` Prelude.rnf nonAwsRegions+ `Prelude.seq` Prelude.rnf notes+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf pillarPriorities+ `Prelude.seq` Prelude.rnf reviewOwner+ `Prelude.seq` Prelude.rnf reviewRestrictionDate+ `Prelude.seq` Prelude.rnf riskCounts+ `Prelude.seq` Prelude.rnf shareInvitationId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf workloadArn+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf+ workloadName
+ gen/Amazonka/WellArchitected/Types/WorkloadDiscoveryConfig.hs view
@@ -0,0 +1,86 @@+{-# 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.WellArchitected.Types.WorkloadDiscoveryConfig+-- 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.WellArchitected.Types.WorkloadDiscoveryConfig 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+import Amazonka.WellArchitected.Types.TrustedAdvisorIntegrationStatus++-- | Discovery configuration associated to the workload.+--+-- /See:/ 'newWorkloadDiscoveryConfig' smart constructor.+data WorkloadDiscoveryConfig = WorkloadDiscoveryConfig'+ { -- | Discovery integration status in respect to Trusted Advisor for the+ -- workload.+ trustedAdvisorIntegrationStatus :: Prelude.Maybe TrustedAdvisorIntegrationStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorkloadDiscoveryConfig' 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:+--+-- 'trustedAdvisorIntegrationStatus', 'workloadDiscoveryConfig_trustedAdvisorIntegrationStatus' - Discovery integration status in respect to Trusted Advisor for the+-- workload.+newWorkloadDiscoveryConfig ::+ WorkloadDiscoveryConfig+newWorkloadDiscoveryConfig =+ WorkloadDiscoveryConfig'+ { trustedAdvisorIntegrationStatus =+ Prelude.Nothing+ }++-- | Discovery integration status in respect to Trusted Advisor for the+-- workload.+workloadDiscoveryConfig_trustedAdvisorIntegrationStatus :: Lens.Lens' WorkloadDiscoveryConfig (Prelude.Maybe TrustedAdvisorIntegrationStatus)+workloadDiscoveryConfig_trustedAdvisorIntegrationStatus = Lens.lens (\WorkloadDiscoveryConfig' {trustedAdvisorIntegrationStatus} -> trustedAdvisorIntegrationStatus) (\s@WorkloadDiscoveryConfig' {} a -> s {trustedAdvisorIntegrationStatus = a} :: WorkloadDiscoveryConfig)++instance Data.FromJSON WorkloadDiscoveryConfig where+ parseJSON =+ Data.withObject+ "WorkloadDiscoveryConfig"+ ( \x ->+ WorkloadDiscoveryConfig'+ Prelude.<$> (x Data..:? "TrustedAdvisorIntegrationStatus")+ )++instance Prelude.Hashable WorkloadDiscoveryConfig where+ hashWithSalt _salt WorkloadDiscoveryConfig' {..} =+ _salt+ `Prelude.hashWithSalt` trustedAdvisorIntegrationStatus++instance Prelude.NFData WorkloadDiscoveryConfig where+ rnf WorkloadDiscoveryConfig' {..} =+ Prelude.rnf trustedAdvisorIntegrationStatus++instance Data.ToJSON WorkloadDiscoveryConfig where+ toJSON WorkloadDiscoveryConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("TrustedAdvisorIntegrationStatus" Data..=)+ Prelude.<$> trustedAdvisorIntegrationStatus+ ]+ )
+ gen/Amazonka/WellArchitected/Types/WorkloadEnvironment.hs view
@@ -0,0 +1,72 @@+{-# 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.WellArchitected.Types.WorkloadEnvironment+-- 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.WellArchitected.Types.WorkloadEnvironment+ ( WorkloadEnvironment+ ( ..,+ WorkloadEnvironment_PREPRODUCTION,+ WorkloadEnvironment_PRODUCTION+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The environment for the workload.+newtype WorkloadEnvironment = WorkloadEnvironment'+ { fromWorkloadEnvironment ::+ 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 WorkloadEnvironment_PREPRODUCTION :: WorkloadEnvironment+pattern WorkloadEnvironment_PREPRODUCTION = WorkloadEnvironment' "PREPRODUCTION"++pattern WorkloadEnvironment_PRODUCTION :: WorkloadEnvironment+pattern WorkloadEnvironment_PRODUCTION = WorkloadEnvironment' "PRODUCTION"++{-# COMPLETE+ WorkloadEnvironment_PREPRODUCTION,+ WorkloadEnvironment_PRODUCTION,+ WorkloadEnvironment'+ #-}
+ gen/Amazonka/WellArchitected/Types/WorkloadImprovementStatus.hs view
@@ -0,0 +1,87 @@+{-# 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.WellArchitected.Types.WorkloadImprovementStatus+-- 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.WellArchitected.Types.WorkloadImprovementStatus+ ( WorkloadImprovementStatus+ ( ..,+ WorkloadImprovementStatus_COMPLETE,+ WorkloadImprovementStatus_IN_PROGRESS,+ WorkloadImprovementStatus_NOT_APPLICABLE,+ WorkloadImprovementStatus_NOT_STARTED,+ WorkloadImprovementStatus_RISK_ACKNOWLEDGED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The improvement status for a workload.+newtype WorkloadImprovementStatus = WorkloadImprovementStatus'+ { fromWorkloadImprovementStatus ::+ 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 WorkloadImprovementStatus_COMPLETE :: WorkloadImprovementStatus+pattern WorkloadImprovementStatus_COMPLETE = WorkloadImprovementStatus' "COMPLETE"++pattern WorkloadImprovementStatus_IN_PROGRESS :: WorkloadImprovementStatus+pattern WorkloadImprovementStatus_IN_PROGRESS = WorkloadImprovementStatus' "IN_PROGRESS"++pattern WorkloadImprovementStatus_NOT_APPLICABLE :: WorkloadImprovementStatus+pattern WorkloadImprovementStatus_NOT_APPLICABLE = WorkloadImprovementStatus' "NOT_APPLICABLE"++pattern WorkloadImprovementStatus_NOT_STARTED :: WorkloadImprovementStatus+pattern WorkloadImprovementStatus_NOT_STARTED = WorkloadImprovementStatus' "NOT_STARTED"++pattern WorkloadImprovementStatus_RISK_ACKNOWLEDGED :: WorkloadImprovementStatus+pattern WorkloadImprovementStatus_RISK_ACKNOWLEDGED = WorkloadImprovementStatus' "RISK_ACKNOWLEDGED"++{-# COMPLETE+ WorkloadImprovementStatus_COMPLETE,+ WorkloadImprovementStatus_IN_PROGRESS,+ WorkloadImprovementStatus_NOT_APPLICABLE,+ WorkloadImprovementStatus_NOT_STARTED,+ WorkloadImprovementStatus_RISK_ACKNOWLEDGED,+ WorkloadImprovementStatus'+ #-}
@@ -0,0 +1,139 @@+{-# 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.WellArchitected.Types.WorkloadShare+-- 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.WellArchitected.Types.WorkloadShare 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+import Amazonka.WellArchitected.Types.PermissionType+import Amazonka.WellArchitected.Types.ShareStatus++-- | A workload share return object.+--+-- /See:/ 'newWorkloadShare' smart constructor.+data WorkloadShare = WorkloadShare'+ { permissionType :: Prelude.Maybe PermissionType,+ shareId :: Prelude.Maybe Prelude.Text,+ sharedBy :: Prelude.Maybe Prelude.Text,+ sharedWith :: Prelude.Maybe Prelude.Text,+ status :: Prelude.Maybe ShareStatus,+ workloadId :: Prelude.Maybe Prelude.Text,+ workloadName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorkloadShare' 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:+--+-- 'permissionType', 'workloadShare_permissionType' - Undocumented member.+--+-- 'shareId', 'workloadShare_shareId' - Undocumented member.+--+-- 'sharedBy', 'workloadShare_sharedBy' - Undocumented member.+--+-- 'sharedWith', 'workloadShare_sharedWith' - Undocumented member.+--+-- 'status', 'workloadShare_status' - Undocumented member.+--+-- 'workloadId', 'workloadShare_workloadId' - Undocumented member.+--+-- 'workloadName', 'workloadShare_workloadName' - Undocumented member.+newWorkloadShare ::+ WorkloadShare+newWorkloadShare =+ WorkloadShare'+ { permissionType = Prelude.Nothing,+ shareId = Prelude.Nothing,+ sharedBy = Prelude.Nothing,+ sharedWith = Prelude.Nothing,+ status = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ workloadName = Prelude.Nothing+ }++-- | Undocumented member.+workloadShare_permissionType :: Lens.Lens' WorkloadShare (Prelude.Maybe PermissionType)+workloadShare_permissionType = Lens.lens (\WorkloadShare' {permissionType} -> permissionType) (\s@WorkloadShare' {} a -> s {permissionType = a} :: WorkloadShare)++-- | Undocumented member.+workloadShare_shareId :: Lens.Lens' WorkloadShare (Prelude.Maybe Prelude.Text)+workloadShare_shareId = Lens.lens (\WorkloadShare' {shareId} -> shareId) (\s@WorkloadShare' {} a -> s {shareId = a} :: WorkloadShare)++-- | Undocumented member.+workloadShare_sharedBy :: Lens.Lens' WorkloadShare (Prelude.Maybe Prelude.Text)+workloadShare_sharedBy = Lens.lens (\WorkloadShare' {sharedBy} -> sharedBy) (\s@WorkloadShare' {} a -> s {sharedBy = a} :: WorkloadShare)++-- | Undocumented member.+workloadShare_sharedWith :: Lens.Lens' WorkloadShare (Prelude.Maybe Prelude.Text)+workloadShare_sharedWith = Lens.lens (\WorkloadShare' {sharedWith} -> sharedWith) (\s@WorkloadShare' {} a -> s {sharedWith = a} :: WorkloadShare)++-- | Undocumented member.+workloadShare_status :: Lens.Lens' WorkloadShare (Prelude.Maybe ShareStatus)+workloadShare_status = Lens.lens (\WorkloadShare' {status} -> status) (\s@WorkloadShare' {} a -> s {status = a} :: WorkloadShare)++-- | Undocumented member.+workloadShare_workloadId :: Lens.Lens' WorkloadShare (Prelude.Maybe Prelude.Text)+workloadShare_workloadId = Lens.lens (\WorkloadShare' {workloadId} -> workloadId) (\s@WorkloadShare' {} a -> s {workloadId = a} :: WorkloadShare)++-- | Undocumented member.+workloadShare_workloadName :: Lens.Lens' WorkloadShare (Prelude.Maybe Prelude.Text)+workloadShare_workloadName = Lens.lens (\WorkloadShare' {workloadName} -> workloadName) (\s@WorkloadShare' {} a -> s {workloadName = a} :: WorkloadShare)++instance Data.FromJSON WorkloadShare where+ parseJSON =+ Data.withObject+ "WorkloadShare"+ ( \x ->+ WorkloadShare'+ Prelude.<$> (x Data..:? "PermissionType")+ Prelude.<*> (x Data..:? "ShareId")+ Prelude.<*> (x Data..:? "SharedBy")+ Prelude.<*> (x Data..:? "SharedWith")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "WorkloadId")+ Prelude.<*> (x Data..:? "WorkloadName")+ )++instance Prelude.Hashable WorkloadShare where+ hashWithSalt _salt WorkloadShare' {..} =+ _salt+ `Prelude.hashWithSalt` permissionType+ `Prelude.hashWithSalt` shareId+ `Prelude.hashWithSalt` sharedBy+ `Prelude.hashWithSalt` sharedWith+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` workloadName++instance Prelude.NFData WorkloadShare where+ rnf WorkloadShare' {..} =+ Prelude.rnf permissionType+ `Prelude.seq` Prelude.rnf shareId+ `Prelude.seq` Prelude.rnf sharedBy+ `Prelude.seq` Prelude.rnf sharedWith+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf workloadName
@@ -0,0 +1,119 @@+{-# 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.WellArchitected.Types.WorkloadShareSummary+-- 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.WellArchitected.Types.WorkloadShareSummary 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+import Amazonka.WellArchitected.Types.PermissionType+import Amazonka.WellArchitected.Types.ShareStatus++-- | A workload share summary return object.+--+-- /See:/ 'newWorkloadShareSummary' smart constructor.+data WorkloadShareSummary = WorkloadShareSummary'+ { permissionType :: Prelude.Maybe PermissionType,+ shareId :: Prelude.Maybe Prelude.Text,+ sharedWith :: Prelude.Maybe Prelude.Text,+ status :: Prelude.Maybe ShareStatus,+ -- | Optional message to compliment the Status field.+ statusMessage :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorkloadShareSummary' 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:+--+-- 'permissionType', 'workloadShareSummary_permissionType' - Undocumented member.+--+-- 'shareId', 'workloadShareSummary_shareId' - Undocumented member.+--+-- 'sharedWith', 'workloadShareSummary_sharedWith' - Undocumented member.+--+-- 'status', 'workloadShareSummary_status' - Undocumented member.+--+-- 'statusMessage', 'workloadShareSummary_statusMessage' - Optional message to compliment the Status field.+newWorkloadShareSummary ::+ WorkloadShareSummary+newWorkloadShareSummary =+ WorkloadShareSummary'+ { permissionType =+ Prelude.Nothing,+ shareId = Prelude.Nothing,+ sharedWith = Prelude.Nothing,+ status = Prelude.Nothing,+ statusMessage = Prelude.Nothing+ }++-- | Undocumented member.+workloadShareSummary_permissionType :: Lens.Lens' WorkloadShareSummary (Prelude.Maybe PermissionType)+workloadShareSummary_permissionType = Lens.lens (\WorkloadShareSummary' {permissionType} -> permissionType) (\s@WorkloadShareSummary' {} a -> s {permissionType = a} :: WorkloadShareSummary)++-- | Undocumented member.+workloadShareSummary_shareId :: Lens.Lens' WorkloadShareSummary (Prelude.Maybe Prelude.Text)+workloadShareSummary_shareId = Lens.lens (\WorkloadShareSummary' {shareId} -> shareId) (\s@WorkloadShareSummary' {} a -> s {shareId = a} :: WorkloadShareSummary)++-- | Undocumented member.+workloadShareSummary_sharedWith :: Lens.Lens' WorkloadShareSummary (Prelude.Maybe Prelude.Text)+workloadShareSummary_sharedWith = Lens.lens (\WorkloadShareSummary' {sharedWith} -> sharedWith) (\s@WorkloadShareSummary' {} a -> s {sharedWith = a} :: WorkloadShareSummary)++-- | Undocumented member.+workloadShareSummary_status :: Lens.Lens' WorkloadShareSummary (Prelude.Maybe ShareStatus)+workloadShareSummary_status = Lens.lens (\WorkloadShareSummary' {status} -> status) (\s@WorkloadShareSummary' {} a -> s {status = a} :: WorkloadShareSummary)++-- | Optional message to compliment the Status field.+workloadShareSummary_statusMessage :: Lens.Lens' WorkloadShareSummary (Prelude.Maybe Prelude.Text)+workloadShareSummary_statusMessage = Lens.lens (\WorkloadShareSummary' {statusMessage} -> statusMessage) (\s@WorkloadShareSummary' {} a -> s {statusMessage = a} :: WorkloadShareSummary)++instance Data.FromJSON WorkloadShareSummary where+ parseJSON =+ Data.withObject+ "WorkloadShareSummary"+ ( \x ->+ WorkloadShareSummary'+ Prelude.<$> (x Data..:? "PermissionType")+ Prelude.<*> (x Data..:? "ShareId")+ Prelude.<*> (x Data..:? "SharedWith")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "StatusMessage")+ )++instance Prelude.Hashable WorkloadShareSummary where+ hashWithSalt _salt WorkloadShareSummary' {..} =+ _salt+ `Prelude.hashWithSalt` permissionType+ `Prelude.hashWithSalt` shareId+ `Prelude.hashWithSalt` sharedWith+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` statusMessage++instance Prelude.NFData WorkloadShareSummary where+ rnf WorkloadShareSummary' {..} =+ Prelude.rnf permissionType+ `Prelude.seq` Prelude.rnf shareId+ `Prelude.seq` Prelude.rnf sharedWith+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf statusMessage
+ gen/Amazonka/WellArchitected/Types/WorkloadSummary.hs view
@@ -0,0 +1,151 @@+{-# 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.WellArchitected.Types.WorkloadSummary+-- 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.WellArchitected.Types.WorkloadSummary 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+import Amazonka.WellArchitected.Types.Risk+import Amazonka.WellArchitected.Types.WorkloadImprovementStatus++-- | A workload summary return object.+--+-- /See:/ 'newWorkloadSummary' smart constructor.+data WorkloadSummary = WorkloadSummary'+ { improvementStatus :: Prelude.Maybe WorkloadImprovementStatus,+ lenses :: Prelude.Maybe [Prelude.Text],+ owner :: Prelude.Maybe Prelude.Text,+ riskCounts :: Prelude.Maybe (Prelude.HashMap Risk Prelude.Natural),+ updatedAt :: Prelude.Maybe Data.POSIX,+ workloadArn :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Maybe Prelude.Text,+ workloadName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorkloadSummary' 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:+--+-- 'improvementStatus', 'workloadSummary_improvementStatus' - Undocumented member.+--+-- 'lenses', 'workloadSummary_lenses' - Undocumented member.+--+-- 'owner', 'workloadSummary_owner' - Undocumented member.+--+-- 'riskCounts', 'workloadSummary_riskCounts' - Undocumented member.+--+-- 'updatedAt', 'workloadSummary_updatedAt' - Undocumented member.+--+-- 'workloadArn', 'workloadSummary_workloadArn' - Undocumented member.+--+-- 'workloadId', 'workloadSummary_workloadId' - Undocumented member.+--+-- 'workloadName', 'workloadSummary_workloadName' - Undocumented member.+newWorkloadSummary ::+ WorkloadSummary+newWorkloadSummary =+ WorkloadSummary'+ { improvementStatus =+ Prelude.Nothing,+ lenses = Prelude.Nothing,+ owner = Prelude.Nothing,+ riskCounts = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ workloadArn = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ workloadName = Prelude.Nothing+ }++-- | Undocumented member.+workloadSummary_improvementStatus :: Lens.Lens' WorkloadSummary (Prelude.Maybe WorkloadImprovementStatus)+workloadSummary_improvementStatus = Lens.lens (\WorkloadSummary' {improvementStatus} -> improvementStatus) (\s@WorkloadSummary' {} a -> s {improvementStatus = a} :: WorkloadSummary)++-- | Undocumented member.+workloadSummary_lenses :: Lens.Lens' WorkloadSummary (Prelude.Maybe [Prelude.Text])+workloadSummary_lenses = Lens.lens (\WorkloadSummary' {lenses} -> lenses) (\s@WorkloadSummary' {} a -> s {lenses = a} :: WorkloadSummary) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+workloadSummary_owner :: Lens.Lens' WorkloadSummary (Prelude.Maybe Prelude.Text)+workloadSummary_owner = Lens.lens (\WorkloadSummary' {owner} -> owner) (\s@WorkloadSummary' {} a -> s {owner = a} :: WorkloadSummary)++-- | Undocumented member.+workloadSummary_riskCounts :: Lens.Lens' WorkloadSummary (Prelude.Maybe (Prelude.HashMap Risk Prelude.Natural))+workloadSummary_riskCounts = Lens.lens (\WorkloadSummary' {riskCounts} -> riskCounts) (\s@WorkloadSummary' {} a -> s {riskCounts = a} :: WorkloadSummary) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+workloadSummary_updatedAt :: Lens.Lens' WorkloadSummary (Prelude.Maybe Prelude.UTCTime)+workloadSummary_updatedAt = Lens.lens (\WorkloadSummary' {updatedAt} -> updatedAt) (\s@WorkloadSummary' {} a -> s {updatedAt = a} :: WorkloadSummary) Prelude.. Lens.mapping Data._Time++-- | Undocumented member.+workloadSummary_workloadArn :: Lens.Lens' WorkloadSummary (Prelude.Maybe Prelude.Text)+workloadSummary_workloadArn = Lens.lens (\WorkloadSummary' {workloadArn} -> workloadArn) (\s@WorkloadSummary' {} a -> s {workloadArn = a} :: WorkloadSummary)++-- | Undocumented member.+workloadSummary_workloadId :: Lens.Lens' WorkloadSummary (Prelude.Maybe Prelude.Text)+workloadSummary_workloadId = Lens.lens (\WorkloadSummary' {workloadId} -> workloadId) (\s@WorkloadSummary' {} a -> s {workloadId = a} :: WorkloadSummary)++-- | Undocumented member.+workloadSummary_workloadName :: Lens.Lens' WorkloadSummary (Prelude.Maybe Prelude.Text)+workloadSummary_workloadName = Lens.lens (\WorkloadSummary' {workloadName} -> workloadName) (\s@WorkloadSummary' {} a -> s {workloadName = a} :: WorkloadSummary)++instance Data.FromJSON WorkloadSummary where+ parseJSON =+ Data.withObject+ "WorkloadSummary"+ ( \x ->+ WorkloadSummary'+ Prelude.<$> (x Data..:? "ImprovementStatus")+ Prelude.<*> (x Data..:? "Lenses" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Owner")+ Prelude.<*> (x Data..:? "RiskCounts" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "UpdatedAt")+ Prelude.<*> (x Data..:? "WorkloadArn")+ Prelude.<*> (x Data..:? "WorkloadId")+ Prelude.<*> (x Data..:? "WorkloadName")+ )++instance Prelude.Hashable WorkloadSummary where+ hashWithSalt _salt WorkloadSummary' {..} =+ _salt+ `Prelude.hashWithSalt` improvementStatus+ `Prelude.hashWithSalt` lenses+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` riskCounts+ `Prelude.hashWithSalt` updatedAt+ `Prelude.hashWithSalt` workloadArn+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` workloadName++instance Prelude.NFData WorkloadSummary where+ rnf WorkloadSummary' {..} =+ Prelude.rnf improvementStatus+ `Prelude.seq` Prelude.rnf lenses+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf riskCounts+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf workloadArn+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf workloadName
+ gen/Amazonka/WellArchitected/UntagResource.hs view
@@ -0,0 +1,173 @@+{-# 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.WellArchitected.UntagResource+-- 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 specified tags from a resource.+--+-- The WorkloadArn parameter can be either a workload ARN or a custom lens+-- ARN.+--+-- To specify multiple tags, use separate __tagKeys__ parameters, for+-- example:+--+-- @DELETE \/tags\/WorkloadArn?tagKeys=key1&tagKeys=key2@+module Amazonka.WellArchitected.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_workloadArn,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,++ -- * Response Lenses+ untagResourceResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { workloadArn :: Prelude.Text,+ -- | A list of tag keys. Existing tags of the resource whose keys are members+ -- of this list are removed from the resource.+ tagKeys :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResource' 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:+--+-- 'workloadArn', 'untagResource_workloadArn' - Undocumented member.+--+-- 'tagKeys', 'untagResource_tagKeys' - A list of tag keys. Existing tags of the resource whose keys are members+-- of this list are removed from the resource.+newUntagResource ::+ -- | 'workloadArn'+ Prelude.Text ->+ -- | 'tagKeys'+ Prelude.NonEmpty Prelude.Text ->+ UntagResource+newUntagResource pWorkloadArn_ pTagKeys_ =+ UntagResource'+ { workloadArn = pWorkloadArn_,+ tagKeys = Lens.coerced Lens.# pTagKeys_+ }++-- | Undocumented member.+untagResource_workloadArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_workloadArn = Lens.lens (\UntagResource' {workloadArn} -> workloadArn) (\s@UntagResource' {} a -> s {workloadArn = a} :: UntagResource)++-- | A list of tag keys. Existing tags of the resource whose keys are members+-- of this list are removed from the resource.+untagResource_tagKeys :: Lens.Lens' UntagResource (Prelude.NonEmpty Prelude.Text)+untagResource_tagKeys = Lens.lens (\UntagResource' {tagKeys} -> tagKeys) (\s@UntagResource' {} a -> s {tagKeys = a} :: UntagResource) Prelude.. Lens.coerced++instance Core.AWSRequest UntagResource where+ type+ AWSResponse UntagResource =+ UntagResourceResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ UntagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UntagResource where+ hashWithSalt _salt UntagResource' {..} =+ _salt+ `Prelude.hashWithSalt` workloadArn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagResource where+ rnf UntagResource' {..} =+ Prelude.rnf workloadArn+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath UntagResource where+ toPath UntagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS workloadArn]++instance Data.ToQuery UntagResource where+ toQuery UntagResource' {..} =+ Prelude.mconcat+ ["tagKeys" Data.=: Data.toQueryList "member" tagKeys]++-- | /See:/ 'newUntagResourceResponse' smart constructor.+data UntagResourceResponse = UntagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResourceResponse' 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:+--+-- 'httpStatus', 'untagResourceResponse_httpStatus' - The response's http status code.+newUntagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UntagResourceResponse+newUntagResourceResponse pHttpStatus_ =+ UntagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+untagResourceResponse_httpStatus :: Lens.Lens' UntagResourceResponse Prelude.Int+untagResourceResponse_httpStatus = Lens.lens (\UntagResourceResponse' {httpStatus} -> httpStatus) (\s@UntagResourceResponse' {} a -> s {httpStatus = a} :: UntagResourceResponse)++instance Prelude.NFData UntagResourceResponse where+ rnf UntagResourceResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/UpdateAnswer.hs view
@@ -0,0 +1,301 @@+{-# 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.WellArchitected.UpdateAnswer+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update the answer to a specific question in a workload review.+module Amazonka.WellArchitected.UpdateAnswer+ ( -- * Creating a Request+ UpdateAnswer (..),+ newUpdateAnswer,++ -- * Request Lenses+ updateAnswer_choiceUpdates,+ updateAnswer_isApplicable,+ updateAnswer_notes,+ updateAnswer_reason,+ updateAnswer_selectedChoices,+ updateAnswer_workloadId,+ updateAnswer_lensAlias,+ updateAnswer_questionId,++ -- * Destructuring the Response+ UpdateAnswerResponse (..),+ newUpdateAnswerResponse,++ -- * Response Lenses+ updateAnswerResponse_answer,+ updateAnswerResponse_lensAlias,+ updateAnswerResponse_lensArn,+ updateAnswerResponse_workloadId,+ updateAnswerResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to update answer.+--+-- /See:/ 'newUpdateAnswer' smart constructor.+data UpdateAnswer = UpdateAnswer'+ { -- | A list of choices to update on a question in your workload. The String+ -- key corresponds to the choice ID to be updated.+ choiceUpdates :: Prelude.Maybe (Prelude.HashMap Prelude.Text ChoiceUpdate),+ isApplicable :: Prelude.Maybe Prelude.Bool,+ notes :: Prelude.Maybe Prelude.Text,+ -- | The reason why a question is not applicable to your workload.+ reason :: Prelude.Maybe AnswerReason,+ selectedChoices :: Prelude.Maybe [Prelude.Text],+ workloadId :: Prelude.Text,+ lensAlias :: Prelude.Text,+ questionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateAnswer' 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:+--+-- 'choiceUpdates', 'updateAnswer_choiceUpdates' - A list of choices to update on a question in your workload. The String+-- key corresponds to the choice ID to be updated.+--+-- 'isApplicable', 'updateAnswer_isApplicable' - Undocumented member.+--+-- 'notes', 'updateAnswer_notes' - Undocumented member.+--+-- 'reason', 'updateAnswer_reason' - The reason why a question is not applicable to your workload.+--+-- 'selectedChoices', 'updateAnswer_selectedChoices' - Undocumented member.+--+-- 'workloadId', 'updateAnswer_workloadId' - Undocumented member.+--+-- 'lensAlias', 'updateAnswer_lensAlias' - Undocumented member.+--+-- 'questionId', 'updateAnswer_questionId' - Undocumented member.+newUpdateAnswer ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensAlias'+ Prelude.Text ->+ -- | 'questionId'+ Prelude.Text ->+ UpdateAnswer+newUpdateAnswer pWorkloadId_ pLensAlias_ pQuestionId_ =+ UpdateAnswer'+ { choiceUpdates = Prelude.Nothing,+ isApplicable = Prelude.Nothing,+ notes = Prelude.Nothing,+ reason = Prelude.Nothing,+ selectedChoices = Prelude.Nothing,+ workloadId = pWorkloadId_,+ lensAlias = pLensAlias_,+ questionId = pQuestionId_+ }++-- | A list of choices to update on a question in your workload. The String+-- key corresponds to the choice ID to be updated.+updateAnswer_choiceUpdates :: Lens.Lens' UpdateAnswer (Prelude.Maybe (Prelude.HashMap Prelude.Text ChoiceUpdate))+updateAnswer_choiceUpdates = Lens.lens (\UpdateAnswer' {choiceUpdates} -> choiceUpdates) (\s@UpdateAnswer' {} a -> s {choiceUpdates = a} :: UpdateAnswer) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+updateAnswer_isApplicable :: Lens.Lens' UpdateAnswer (Prelude.Maybe Prelude.Bool)+updateAnswer_isApplicable = Lens.lens (\UpdateAnswer' {isApplicable} -> isApplicable) (\s@UpdateAnswer' {} a -> s {isApplicable = a} :: UpdateAnswer)++-- | Undocumented member.+updateAnswer_notes :: Lens.Lens' UpdateAnswer (Prelude.Maybe Prelude.Text)+updateAnswer_notes = Lens.lens (\UpdateAnswer' {notes} -> notes) (\s@UpdateAnswer' {} a -> s {notes = a} :: UpdateAnswer)++-- | The reason why a question is not applicable to your workload.+updateAnswer_reason :: Lens.Lens' UpdateAnswer (Prelude.Maybe AnswerReason)+updateAnswer_reason = Lens.lens (\UpdateAnswer' {reason} -> reason) (\s@UpdateAnswer' {} a -> s {reason = a} :: UpdateAnswer)++-- | Undocumented member.+updateAnswer_selectedChoices :: Lens.Lens' UpdateAnswer (Prelude.Maybe [Prelude.Text])+updateAnswer_selectedChoices = Lens.lens (\UpdateAnswer' {selectedChoices} -> selectedChoices) (\s@UpdateAnswer' {} a -> s {selectedChoices = a} :: UpdateAnswer) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+updateAnswer_workloadId :: Lens.Lens' UpdateAnswer Prelude.Text+updateAnswer_workloadId = Lens.lens (\UpdateAnswer' {workloadId} -> workloadId) (\s@UpdateAnswer' {} a -> s {workloadId = a} :: UpdateAnswer)++-- | Undocumented member.+updateAnswer_lensAlias :: Lens.Lens' UpdateAnswer Prelude.Text+updateAnswer_lensAlias = Lens.lens (\UpdateAnswer' {lensAlias} -> lensAlias) (\s@UpdateAnswer' {} a -> s {lensAlias = a} :: UpdateAnswer)++-- | Undocumented member.+updateAnswer_questionId :: Lens.Lens' UpdateAnswer Prelude.Text+updateAnswer_questionId = Lens.lens (\UpdateAnswer' {questionId} -> questionId) (\s@UpdateAnswer' {} a -> s {questionId = a} :: UpdateAnswer)++instance Core.AWSRequest UpdateAnswer where+ type AWSResponse UpdateAnswer = UpdateAnswerResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateAnswerResponse'+ Prelude.<$> (x Data..?> "Answer")+ Prelude.<*> (x Data..?> "LensAlias")+ Prelude.<*> (x Data..?> "LensArn")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateAnswer where+ hashWithSalt _salt UpdateAnswer' {..} =+ _salt+ `Prelude.hashWithSalt` choiceUpdates+ `Prelude.hashWithSalt` isApplicable+ `Prelude.hashWithSalt` notes+ `Prelude.hashWithSalt` reason+ `Prelude.hashWithSalt` selectedChoices+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` questionId++instance Prelude.NFData UpdateAnswer where+ rnf UpdateAnswer' {..} =+ Prelude.rnf choiceUpdates+ `Prelude.seq` Prelude.rnf isApplicable+ `Prelude.seq` Prelude.rnf notes+ `Prelude.seq` Prelude.rnf reason+ `Prelude.seq` Prelude.rnf selectedChoices+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf questionId++instance Data.ToHeaders UpdateAnswer where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateAnswer where+ toJSON UpdateAnswer' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ChoiceUpdates" Data..=) Prelude.<$> choiceUpdates,+ ("IsApplicable" Data..=) Prelude.<$> isApplicable,+ ("Notes" Data..=) Prelude.<$> notes,+ ("Reason" Data..=) Prelude.<$> reason,+ ("SelectedChoices" Data..=)+ Prelude.<$> selectedChoices+ ]+ )++instance Data.ToPath UpdateAnswer where+ toPath UpdateAnswer' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/lensReviews/",+ Data.toBS lensAlias,+ "/answers/",+ Data.toBS questionId+ ]++instance Data.ToQuery UpdateAnswer where+ toQuery = Prelude.const Prelude.mempty++-- | Output of a update answer call.+--+-- /See:/ 'newUpdateAnswerResponse' smart constructor.+data UpdateAnswerResponse = UpdateAnswerResponse'+ { answer :: Prelude.Maybe Answer,+ lensAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the lens.+ lensArn :: Prelude.Maybe Prelude.Text,+ workloadId :: 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 'UpdateAnswerResponse' 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:+--+-- 'answer', 'updateAnswerResponse_answer' - Undocumented member.+--+-- 'lensAlias', 'updateAnswerResponse_lensAlias' - Undocumented member.+--+-- 'lensArn', 'updateAnswerResponse_lensArn' - The ARN for the lens.+--+-- 'workloadId', 'updateAnswerResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'updateAnswerResponse_httpStatus' - The response's http status code.+newUpdateAnswerResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateAnswerResponse+newUpdateAnswerResponse pHttpStatus_ =+ UpdateAnswerResponse'+ { answer = Prelude.Nothing,+ lensAlias = Prelude.Nothing,+ lensArn = Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+updateAnswerResponse_answer :: Lens.Lens' UpdateAnswerResponse (Prelude.Maybe Answer)+updateAnswerResponse_answer = Lens.lens (\UpdateAnswerResponse' {answer} -> answer) (\s@UpdateAnswerResponse' {} a -> s {answer = a} :: UpdateAnswerResponse)++-- | Undocumented member.+updateAnswerResponse_lensAlias :: Lens.Lens' UpdateAnswerResponse (Prelude.Maybe Prelude.Text)+updateAnswerResponse_lensAlias = Lens.lens (\UpdateAnswerResponse' {lensAlias} -> lensAlias) (\s@UpdateAnswerResponse' {} a -> s {lensAlias = a} :: UpdateAnswerResponse)++-- | The ARN for the lens.+updateAnswerResponse_lensArn :: Lens.Lens' UpdateAnswerResponse (Prelude.Maybe Prelude.Text)+updateAnswerResponse_lensArn = Lens.lens (\UpdateAnswerResponse' {lensArn} -> lensArn) (\s@UpdateAnswerResponse' {} a -> s {lensArn = a} :: UpdateAnswerResponse)++-- | Undocumented member.+updateAnswerResponse_workloadId :: Lens.Lens' UpdateAnswerResponse (Prelude.Maybe Prelude.Text)+updateAnswerResponse_workloadId = Lens.lens (\UpdateAnswerResponse' {workloadId} -> workloadId) (\s@UpdateAnswerResponse' {} a -> s {workloadId = a} :: UpdateAnswerResponse)++-- | The response's http status code.+updateAnswerResponse_httpStatus :: Lens.Lens' UpdateAnswerResponse Prelude.Int+updateAnswerResponse_httpStatus = Lens.lens (\UpdateAnswerResponse' {httpStatus} -> httpStatus) (\s@UpdateAnswerResponse' {} a -> s {httpStatus = a} :: UpdateAnswerResponse)++instance Prelude.NFData UpdateAnswerResponse where+ rnf UpdateAnswerResponse' {..} =+ Prelude.rnf answer+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf lensArn+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/UpdateGlobalSettings.hs view
@@ -0,0 +1,135 @@+{-# 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.WellArchitected.UpdateGlobalSettings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates whether the Amazon Web Services account is opted into+-- organization sharing features.+module Amazonka.WellArchitected.UpdateGlobalSettings+ ( -- * Creating a Request+ UpdateGlobalSettings (..),+ newUpdateGlobalSettings,++ -- * Request Lenses+ updateGlobalSettings_organizationSharingStatus,++ -- * Destructuring the Response+ UpdateGlobalSettingsResponse (..),+ newUpdateGlobalSettingsResponse,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newUpdateGlobalSettings' smart constructor.+data UpdateGlobalSettings = UpdateGlobalSettings'+ { -- | The status of organization sharing settings.+ organizationSharingStatus :: Prelude.Maybe OrganizationSharingStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateGlobalSettings' 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:+--+-- 'organizationSharingStatus', 'updateGlobalSettings_organizationSharingStatus' - The status of organization sharing settings.+newUpdateGlobalSettings ::+ UpdateGlobalSettings+newUpdateGlobalSettings =+ UpdateGlobalSettings'+ { organizationSharingStatus =+ Prelude.Nothing+ }++-- | The status of organization sharing settings.+updateGlobalSettings_organizationSharingStatus :: Lens.Lens' UpdateGlobalSettings (Prelude.Maybe OrganizationSharingStatus)+updateGlobalSettings_organizationSharingStatus = Lens.lens (\UpdateGlobalSettings' {organizationSharingStatus} -> organizationSharingStatus) (\s@UpdateGlobalSettings' {} a -> s {organizationSharingStatus = a} :: UpdateGlobalSettings)++instance Core.AWSRequest UpdateGlobalSettings where+ type+ AWSResponse UpdateGlobalSettings =+ UpdateGlobalSettingsResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveNull UpdateGlobalSettingsResponse'++instance Prelude.Hashable UpdateGlobalSettings where+ hashWithSalt _salt UpdateGlobalSettings' {..} =+ _salt+ `Prelude.hashWithSalt` organizationSharingStatus++instance Prelude.NFData UpdateGlobalSettings where+ rnf UpdateGlobalSettings' {..} =+ Prelude.rnf organizationSharingStatus++instance Data.ToHeaders UpdateGlobalSettings where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateGlobalSettings where+ toJSON UpdateGlobalSettings' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("OrganizationSharingStatus" Data..=)+ Prelude.<$> organizationSharingStatus+ ]+ )++instance Data.ToPath UpdateGlobalSettings where+ toPath = Prelude.const "/global-settings"++instance Data.ToQuery UpdateGlobalSettings where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateGlobalSettingsResponse' smart constructor.+data UpdateGlobalSettingsResponse = UpdateGlobalSettingsResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateGlobalSettingsResponse' 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.+newUpdateGlobalSettingsResponse ::+ UpdateGlobalSettingsResponse+newUpdateGlobalSettingsResponse =+ UpdateGlobalSettingsResponse'++instance Prelude.NFData UpdateGlobalSettingsResponse where+ rnf _ = ()
+ gen/Amazonka/WellArchitected/UpdateLensReview.hs view
@@ -0,0 +1,224 @@+{-# 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.WellArchitected.UpdateLensReview+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update lens review.+module Amazonka.WellArchitected.UpdateLensReview+ ( -- * Creating a Request+ UpdateLensReview (..),+ newUpdateLensReview,++ -- * Request Lenses+ updateLensReview_lensNotes,+ updateLensReview_pillarNotes,+ updateLensReview_workloadId,+ updateLensReview_lensAlias,++ -- * Destructuring the Response+ UpdateLensReviewResponse (..),+ newUpdateLensReviewResponse,++ -- * Response Lenses+ updateLensReviewResponse_lensReview,+ updateLensReviewResponse_workloadId,+ updateLensReviewResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input for update lens review.+--+-- /See:/ 'newUpdateLensReview' smart constructor.+data UpdateLensReview = UpdateLensReview'+ { lensNotes :: Prelude.Maybe Prelude.Text,+ pillarNotes :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ workloadId :: Prelude.Text,+ lensAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateLensReview' 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:+--+-- 'lensNotes', 'updateLensReview_lensNotes' - Undocumented member.+--+-- 'pillarNotes', 'updateLensReview_pillarNotes' - Undocumented member.+--+-- 'workloadId', 'updateLensReview_workloadId' - Undocumented member.+--+-- 'lensAlias', 'updateLensReview_lensAlias' - Undocumented member.+newUpdateLensReview ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensAlias'+ Prelude.Text ->+ UpdateLensReview+newUpdateLensReview pWorkloadId_ pLensAlias_ =+ UpdateLensReview'+ { lensNotes = Prelude.Nothing,+ pillarNotes = Prelude.Nothing,+ workloadId = pWorkloadId_,+ lensAlias = pLensAlias_+ }++-- | Undocumented member.+updateLensReview_lensNotes :: Lens.Lens' UpdateLensReview (Prelude.Maybe Prelude.Text)+updateLensReview_lensNotes = Lens.lens (\UpdateLensReview' {lensNotes} -> lensNotes) (\s@UpdateLensReview' {} a -> s {lensNotes = a} :: UpdateLensReview)++-- | Undocumented member.+updateLensReview_pillarNotes :: Lens.Lens' UpdateLensReview (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+updateLensReview_pillarNotes = Lens.lens (\UpdateLensReview' {pillarNotes} -> pillarNotes) (\s@UpdateLensReview' {} a -> s {pillarNotes = a} :: UpdateLensReview) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+updateLensReview_workloadId :: Lens.Lens' UpdateLensReview Prelude.Text+updateLensReview_workloadId = Lens.lens (\UpdateLensReview' {workloadId} -> workloadId) (\s@UpdateLensReview' {} a -> s {workloadId = a} :: UpdateLensReview)++-- | Undocumented member.+updateLensReview_lensAlias :: Lens.Lens' UpdateLensReview Prelude.Text+updateLensReview_lensAlias = Lens.lens (\UpdateLensReview' {lensAlias} -> lensAlias) (\s@UpdateLensReview' {} a -> s {lensAlias = a} :: UpdateLensReview)++instance Core.AWSRequest UpdateLensReview where+ type+ AWSResponse UpdateLensReview =+ UpdateLensReviewResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateLensReviewResponse'+ Prelude.<$> (x Data..?> "LensReview")+ Prelude.<*> (x Data..?> "WorkloadId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateLensReview where+ hashWithSalt _salt UpdateLensReview' {..} =+ _salt+ `Prelude.hashWithSalt` lensNotes+ `Prelude.hashWithSalt` pillarNotes+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensAlias++instance Prelude.NFData UpdateLensReview where+ rnf UpdateLensReview' {..} =+ Prelude.rnf lensNotes+ `Prelude.seq` Prelude.rnf pillarNotes+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensAlias++instance Data.ToHeaders UpdateLensReview where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateLensReview where+ toJSON UpdateLensReview' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("LensNotes" Data..=) Prelude.<$> lensNotes,+ ("PillarNotes" Data..=) Prelude.<$> pillarNotes+ ]+ )++instance Data.ToPath UpdateLensReview where+ toPath UpdateLensReview' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/lensReviews/",+ Data.toBS lensAlias+ ]++instance Data.ToQuery UpdateLensReview where+ toQuery = Prelude.const Prelude.mempty++-- | Output of a update lens review call.+--+-- /See:/ 'newUpdateLensReviewResponse' smart constructor.+data UpdateLensReviewResponse = UpdateLensReviewResponse'+ { lensReview :: Prelude.Maybe LensReview,+ workloadId :: 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 'UpdateLensReviewResponse' 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:+--+-- 'lensReview', 'updateLensReviewResponse_lensReview' - Undocumented member.+--+-- 'workloadId', 'updateLensReviewResponse_workloadId' - Undocumented member.+--+-- 'httpStatus', 'updateLensReviewResponse_httpStatus' - The response's http status code.+newUpdateLensReviewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateLensReviewResponse+newUpdateLensReviewResponse pHttpStatus_ =+ UpdateLensReviewResponse'+ { lensReview =+ Prelude.Nothing,+ workloadId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+updateLensReviewResponse_lensReview :: Lens.Lens' UpdateLensReviewResponse (Prelude.Maybe LensReview)+updateLensReviewResponse_lensReview = Lens.lens (\UpdateLensReviewResponse' {lensReview} -> lensReview) (\s@UpdateLensReviewResponse' {} a -> s {lensReview = a} :: UpdateLensReviewResponse)++-- | Undocumented member.+updateLensReviewResponse_workloadId :: Lens.Lens' UpdateLensReviewResponse (Prelude.Maybe Prelude.Text)+updateLensReviewResponse_workloadId = Lens.lens (\UpdateLensReviewResponse' {workloadId} -> workloadId) (\s@UpdateLensReviewResponse' {} a -> s {workloadId = a} :: UpdateLensReviewResponse)++-- | The response's http status code.+updateLensReviewResponse_httpStatus :: Lens.Lens' UpdateLensReviewResponse Prelude.Int+updateLensReviewResponse_httpStatus = Lens.lens (\UpdateLensReviewResponse' {httpStatus} -> httpStatus) (\s@UpdateLensReviewResponse' {} a -> s {httpStatus = a} :: UpdateLensReviewResponse)++instance Prelude.NFData UpdateLensReviewResponse where+ rnf UpdateLensReviewResponse' {..} =+ Prelude.rnf lensReview+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf httpStatus
@@ -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.WellArchitected.UpdateShareInvitation+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update a workload or custom lens share invitation.+--+-- This API operation can be called independently of any resource. Previous+-- documentation implied that a workload ARN must be specified.+module Amazonka.WellArchitected.UpdateShareInvitation+ ( -- * Creating a Request+ UpdateShareInvitation (..),+ newUpdateShareInvitation,++ -- * Request Lenses+ updateShareInvitation_shareInvitationId,+ updateShareInvitation_shareInvitationAction,++ -- * Destructuring the Response+ UpdateShareInvitationResponse (..),+ newUpdateShareInvitationResponse,++ -- * Response Lenses+ updateShareInvitationResponse_shareInvitation,+ updateShareInvitationResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input for Update Share Invitation+--+-- /See:/ 'newUpdateShareInvitation' smart constructor.+data UpdateShareInvitation = UpdateShareInvitation'+ { -- | The ID assigned to the share invitation.+ shareInvitationId :: Prelude.Text,+ shareInvitationAction :: ShareInvitationAction+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateShareInvitation' 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:+--+-- 'shareInvitationId', 'updateShareInvitation_shareInvitationId' - The ID assigned to the share invitation.+--+-- 'shareInvitationAction', 'updateShareInvitation_shareInvitationAction' - Undocumented member.+newUpdateShareInvitation ::+ -- | 'shareInvitationId'+ Prelude.Text ->+ -- | 'shareInvitationAction'+ ShareInvitationAction ->+ UpdateShareInvitation+newUpdateShareInvitation+ pShareInvitationId_+ pShareInvitationAction_ =+ UpdateShareInvitation'+ { shareInvitationId =+ pShareInvitationId_,+ shareInvitationAction = pShareInvitationAction_+ }++-- | The ID assigned to the share invitation.+updateShareInvitation_shareInvitationId :: Lens.Lens' UpdateShareInvitation Prelude.Text+updateShareInvitation_shareInvitationId = Lens.lens (\UpdateShareInvitation' {shareInvitationId} -> shareInvitationId) (\s@UpdateShareInvitation' {} a -> s {shareInvitationId = a} :: UpdateShareInvitation)++-- | Undocumented member.+updateShareInvitation_shareInvitationAction :: Lens.Lens' UpdateShareInvitation ShareInvitationAction+updateShareInvitation_shareInvitationAction = Lens.lens (\UpdateShareInvitation' {shareInvitationAction} -> shareInvitationAction) (\s@UpdateShareInvitation' {} a -> s {shareInvitationAction = a} :: UpdateShareInvitation)++instance Core.AWSRequest UpdateShareInvitation where+ type+ AWSResponse UpdateShareInvitation =+ UpdateShareInvitationResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateShareInvitationResponse'+ Prelude.<$> (x Data..?> "ShareInvitation")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateShareInvitation where+ hashWithSalt _salt UpdateShareInvitation' {..} =+ _salt+ `Prelude.hashWithSalt` shareInvitationId+ `Prelude.hashWithSalt` shareInvitationAction++instance Prelude.NFData UpdateShareInvitation where+ rnf UpdateShareInvitation' {..} =+ Prelude.rnf shareInvitationId+ `Prelude.seq` Prelude.rnf shareInvitationAction++instance Data.ToHeaders UpdateShareInvitation where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateShareInvitation where+ toJSON UpdateShareInvitation' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ( "ShareInvitationAction"+ Data..= shareInvitationAction+ )+ ]+ )++instance Data.ToPath UpdateShareInvitation where+ toPath UpdateShareInvitation' {..} =+ Prelude.mconcat+ ["/shareInvitations/", Data.toBS shareInvitationId]++instance Data.ToQuery UpdateShareInvitation where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateShareInvitationResponse' smart constructor.+data UpdateShareInvitationResponse = UpdateShareInvitationResponse'+ { -- | The updated workload or custom lens share invitation.+ shareInvitation :: Prelude.Maybe ShareInvitation,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateShareInvitationResponse' 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:+--+-- 'shareInvitation', 'updateShareInvitationResponse_shareInvitation' - The updated workload or custom lens share invitation.+--+-- 'httpStatus', 'updateShareInvitationResponse_httpStatus' - The response's http status code.+newUpdateShareInvitationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateShareInvitationResponse+newUpdateShareInvitationResponse pHttpStatus_ =+ UpdateShareInvitationResponse'+ { shareInvitation =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The updated workload or custom lens share invitation.+updateShareInvitationResponse_shareInvitation :: Lens.Lens' UpdateShareInvitationResponse (Prelude.Maybe ShareInvitation)+updateShareInvitationResponse_shareInvitation = Lens.lens (\UpdateShareInvitationResponse' {shareInvitation} -> shareInvitation) (\s@UpdateShareInvitationResponse' {} a -> s {shareInvitation = a} :: UpdateShareInvitationResponse)++-- | The response's http status code.+updateShareInvitationResponse_httpStatus :: Lens.Lens' UpdateShareInvitationResponse Prelude.Int+updateShareInvitationResponse_httpStatus = Lens.lens (\UpdateShareInvitationResponse' {httpStatus} -> httpStatus) (\s@UpdateShareInvitationResponse' {} a -> s {httpStatus = a} :: UpdateShareInvitationResponse)++instance Prelude.NFData UpdateShareInvitationResponse where+ rnf UpdateShareInvitationResponse' {..} =+ Prelude.rnf shareInvitation+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/UpdateWorkload.hs view
@@ -0,0 +1,389 @@+{-# 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.WellArchitected.UpdateWorkload+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update an existing workload.+module Amazonka.WellArchitected.UpdateWorkload+ ( -- * Creating a Request+ UpdateWorkload (..),+ newUpdateWorkload,++ -- * Request Lenses+ updateWorkload_accountIds,+ updateWorkload_applications,+ updateWorkload_architecturalDesign,+ updateWorkload_awsRegions,+ updateWorkload_description,+ updateWorkload_discoveryConfig,+ updateWorkload_environment,+ updateWorkload_improvementStatus,+ updateWorkload_industry,+ updateWorkload_industryType,+ updateWorkload_isReviewOwnerUpdateAcknowledged,+ updateWorkload_nonAwsRegions,+ updateWorkload_notes,+ updateWorkload_pillarPriorities,+ updateWorkload_reviewOwner,+ updateWorkload_workloadName,+ updateWorkload_workloadId,++ -- * Destructuring the Response+ UpdateWorkloadResponse (..),+ newUpdateWorkloadResponse,++ -- * Response Lenses+ updateWorkloadResponse_workload,+ updateWorkloadResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input to update a workload.+--+-- /See:/ 'newUpdateWorkload' smart constructor.+data UpdateWorkload = UpdateWorkload'+ { accountIds :: Prelude.Maybe [Prelude.Text],+ -- | List of AppRegistry application ARNs to associate to the workload.+ applications :: Prelude.Maybe [Prelude.Text],+ architecturalDesign :: Prelude.Maybe Prelude.Text,+ awsRegions :: Prelude.Maybe [Prelude.Text],+ description :: Prelude.Maybe Prelude.Text,+ -- | Well-Architected discovery configuration settings to associate to the+ -- workload.+ discoveryConfig :: Prelude.Maybe WorkloadDiscoveryConfig,+ environment :: Prelude.Maybe WorkloadEnvironment,+ improvementStatus :: Prelude.Maybe WorkloadImprovementStatus,+ industry :: Prelude.Maybe Prelude.Text,+ industryType :: Prelude.Maybe Prelude.Text,+ -- | Flag indicating whether the workload owner has acknowledged that the+ -- /Review owner/ field is required.+ --+ -- If a __Review owner__ is not added to the workload within 60 days of+ -- acknowledgement, access to the workload is restricted until an owner is+ -- added.+ isReviewOwnerUpdateAcknowledged :: Prelude.Maybe Prelude.Bool,+ nonAwsRegions :: Prelude.Maybe [Prelude.Text],+ notes :: Prelude.Maybe Prelude.Text,+ pillarPriorities :: Prelude.Maybe [Prelude.Text],+ reviewOwner :: Prelude.Maybe Prelude.Text,+ workloadName :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorkload' 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:+--+-- 'accountIds', 'updateWorkload_accountIds' - Undocumented member.+--+-- 'applications', 'updateWorkload_applications' - List of AppRegistry application ARNs to associate to the workload.+--+-- 'architecturalDesign', 'updateWorkload_architecturalDesign' - Undocumented member.+--+-- 'awsRegions', 'updateWorkload_awsRegions' - Undocumented member.+--+-- 'description', 'updateWorkload_description' - Undocumented member.+--+-- 'discoveryConfig', 'updateWorkload_discoveryConfig' - Well-Architected discovery configuration settings to associate to the+-- workload.+--+-- 'environment', 'updateWorkload_environment' - Undocumented member.+--+-- 'improvementStatus', 'updateWorkload_improvementStatus' - Undocumented member.+--+-- 'industry', 'updateWorkload_industry' - Undocumented member.+--+-- 'industryType', 'updateWorkload_industryType' - Undocumented member.+--+-- 'isReviewOwnerUpdateAcknowledged', 'updateWorkload_isReviewOwnerUpdateAcknowledged' - Flag indicating whether the workload owner has acknowledged that the+-- /Review owner/ field is required.+--+-- If a __Review owner__ is not added to the workload within 60 days of+-- acknowledgement, access to the workload is restricted until an owner is+-- added.+--+-- 'nonAwsRegions', 'updateWorkload_nonAwsRegions' - Undocumented member.+--+-- 'notes', 'updateWorkload_notes' - Undocumented member.+--+-- 'pillarPriorities', 'updateWorkload_pillarPriorities' - Undocumented member.+--+-- 'reviewOwner', 'updateWorkload_reviewOwner' - Undocumented member.+--+-- 'workloadName', 'updateWorkload_workloadName' - Undocumented member.+--+-- 'workloadId', 'updateWorkload_workloadId' - Undocumented member.+newUpdateWorkload ::+ -- | 'workloadId'+ Prelude.Text ->+ UpdateWorkload+newUpdateWorkload pWorkloadId_ =+ UpdateWorkload'+ { accountIds = Prelude.Nothing,+ applications = Prelude.Nothing,+ architecturalDesign = Prelude.Nothing,+ awsRegions = Prelude.Nothing,+ description = Prelude.Nothing,+ discoveryConfig = Prelude.Nothing,+ environment = Prelude.Nothing,+ improvementStatus = Prelude.Nothing,+ industry = Prelude.Nothing,+ industryType = Prelude.Nothing,+ isReviewOwnerUpdateAcknowledged = Prelude.Nothing,+ nonAwsRegions = Prelude.Nothing,+ notes = Prelude.Nothing,+ pillarPriorities = Prelude.Nothing,+ reviewOwner = Prelude.Nothing,+ workloadName = Prelude.Nothing,+ workloadId = pWorkloadId_+ }++-- | Undocumented member.+updateWorkload_accountIds :: Lens.Lens' UpdateWorkload (Prelude.Maybe [Prelude.Text])+updateWorkload_accountIds = Lens.lens (\UpdateWorkload' {accountIds} -> accountIds) (\s@UpdateWorkload' {} a -> s {accountIds = a} :: UpdateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | List of AppRegistry application ARNs to associate to the workload.+updateWorkload_applications :: Lens.Lens' UpdateWorkload (Prelude.Maybe [Prelude.Text])+updateWorkload_applications = Lens.lens (\UpdateWorkload' {applications} -> applications) (\s@UpdateWorkload' {} a -> s {applications = a} :: UpdateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+updateWorkload_architecturalDesign :: Lens.Lens' UpdateWorkload (Prelude.Maybe Prelude.Text)+updateWorkload_architecturalDesign = Lens.lens (\UpdateWorkload' {architecturalDesign} -> architecturalDesign) (\s@UpdateWorkload' {} a -> s {architecturalDesign = a} :: UpdateWorkload)++-- | Undocumented member.+updateWorkload_awsRegions :: Lens.Lens' UpdateWorkload (Prelude.Maybe [Prelude.Text])+updateWorkload_awsRegions = Lens.lens (\UpdateWorkload' {awsRegions} -> awsRegions) (\s@UpdateWorkload' {} a -> s {awsRegions = a} :: UpdateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+updateWorkload_description :: Lens.Lens' UpdateWorkload (Prelude.Maybe Prelude.Text)+updateWorkload_description = Lens.lens (\UpdateWorkload' {description} -> description) (\s@UpdateWorkload' {} a -> s {description = a} :: UpdateWorkload)++-- | Well-Architected discovery configuration settings to associate to the+-- workload.+updateWorkload_discoveryConfig :: Lens.Lens' UpdateWorkload (Prelude.Maybe WorkloadDiscoveryConfig)+updateWorkload_discoveryConfig = Lens.lens (\UpdateWorkload' {discoveryConfig} -> discoveryConfig) (\s@UpdateWorkload' {} a -> s {discoveryConfig = a} :: UpdateWorkload)++-- | Undocumented member.+updateWorkload_environment :: Lens.Lens' UpdateWorkload (Prelude.Maybe WorkloadEnvironment)+updateWorkload_environment = Lens.lens (\UpdateWorkload' {environment} -> environment) (\s@UpdateWorkload' {} a -> s {environment = a} :: UpdateWorkload)++-- | Undocumented member.+updateWorkload_improvementStatus :: Lens.Lens' UpdateWorkload (Prelude.Maybe WorkloadImprovementStatus)+updateWorkload_improvementStatus = Lens.lens (\UpdateWorkload' {improvementStatus} -> improvementStatus) (\s@UpdateWorkload' {} a -> s {improvementStatus = a} :: UpdateWorkload)++-- | Undocumented member.+updateWorkload_industry :: Lens.Lens' UpdateWorkload (Prelude.Maybe Prelude.Text)+updateWorkload_industry = Lens.lens (\UpdateWorkload' {industry} -> industry) (\s@UpdateWorkload' {} a -> s {industry = a} :: UpdateWorkload)++-- | Undocumented member.+updateWorkload_industryType :: Lens.Lens' UpdateWorkload (Prelude.Maybe Prelude.Text)+updateWorkload_industryType = Lens.lens (\UpdateWorkload' {industryType} -> industryType) (\s@UpdateWorkload' {} a -> s {industryType = a} :: UpdateWorkload)++-- | Flag indicating whether the workload owner has acknowledged that the+-- /Review owner/ field is required.+--+-- If a __Review owner__ is not added to the workload within 60 days of+-- acknowledgement, access to the workload is restricted until an owner is+-- added.+updateWorkload_isReviewOwnerUpdateAcknowledged :: Lens.Lens' UpdateWorkload (Prelude.Maybe Prelude.Bool)+updateWorkload_isReviewOwnerUpdateAcknowledged = Lens.lens (\UpdateWorkload' {isReviewOwnerUpdateAcknowledged} -> isReviewOwnerUpdateAcknowledged) (\s@UpdateWorkload' {} a -> s {isReviewOwnerUpdateAcknowledged = a} :: UpdateWorkload)++-- | Undocumented member.+updateWorkload_nonAwsRegions :: Lens.Lens' UpdateWorkload (Prelude.Maybe [Prelude.Text])+updateWorkload_nonAwsRegions = Lens.lens (\UpdateWorkload' {nonAwsRegions} -> nonAwsRegions) (\s@UpdateWorkload' {} a -> s {nonAwsRegions = a} :: UpdateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+updateWorkload_notes :: Lens.Lens' UpdateWorkload (Prelude.Maybe Prelude.Text)+updateWorkload_notes = Lens.lens (\UpdateWorkload' {notes} -> notes) (\s@UpdateWorkload' {} a -> s {notes = a} :: UpdateWorkload)++-- | Undocumented member.+updateWorkload_pillarPriorities :: Lens.Lens' UpdateWorkload (Prelude.Maybe [Prelude.Text])+updateWorkload_pillarPriorities = Lens.lens (\UpdateWorkload' {pillarPriorities} -> pillarPriorities) (\s@UpdateWorkload' {} a -> s {pillarPriorities = a} :: UpdateWorkload) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+updateWorkload_reviewOwner :: Lens.Lens' UpdateWorkload (Prelude.Maybe Prelude.Text)+updateWorkload_reviewOwner = Lens.lens (\UpdateWorkload' {reviewOwner} -> reviewOwner) (\s@UpdateWorkload' {} a -> s {reviewOwner = a} :: UpdateWorkload)++-- | Undocumented member.+updateWorkload_workloadName :: Lens.Lens' UpdateWorkload (Prelude.Maybe Prelude.Text)+updateWorkload_workloadName = Lens.lens (\UpdateWorkload' {workloadName} -> workloadName) (\s@UpdateWorkload' {} a -> s {workloadName = a} :: UpdateWorkload)++-- | Undocumented member.+updateWorkload_workloadId :: Lens.Lens' UpdateWorkload Prelude.Text+updateWorkload_workloadId = Lens.lens (\UpdateWorkload' {workloadId} -> workloadId) (\s@UpdateWorkload' {} a -> s {workloadId = a} :: UpdateWorkload)++instance Core.AWSRequest UpdateWorkload where+ type+ AWSResponse UpdateWorkload =+ UpdateWorkloadResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateWorkloadResponse'+ Prelude.<$> (x Data..?> "Workload")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateWorkload where+ hashWithSalt _salt UpdateWorkload' {..} =+ _salt+ `Prelude.hashWithSalt` accountIds+ `Prelude.hashWithSalt` applications+ `Prelude.hashWithSalt` architecturalDesign+ `Prelude.hashWithSalt` awsRegions+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` discoveryConfig+ `Prelude.hashWithSalt` environment+ `Prelude.hashWithSalt` improvementStatus+ `Prelude.hashWithSalt` industry+ `Prelude.hashWithSalt` industryType+ `Prelude.hashWithSalt` isReviewOwnerUpdateAcknowledged+ `Prelude.hashWithSalt` nonAwsRegions+ `Prelude.hashWithSalt` notes+ `Prelude.hashWithSalt` pillarPriorities+ `Prelude.hashWithSalt` reviewOwner+ `Prelude.hashWithSalt` workloadName+ `Prelude.hashWithSalt` workloadId++instance Prelude.NFData UpdateWorkload where+ rnf UpdateWorkload' {..} =+ Prelude.rnf accountIds+ `Prelude.seq` Prelude.rnf applications+ `Prelude.seq` Prelude.rnf architecturalDesign+ `Prelude.seq` Prelude.rnf awsRegions+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf discoveryConfig+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf improvementStatus+ `Prelude.seq` Prelude.rnf industry+ `Prelude.seq` Prelude.rnf industryType+ `Prelude.seq` Prelude.rnf isReviewOwnerUpdateAcknowledged+ `Prelude.seq` Prelude.rnf nonAwsRegions+ `Prelude.seq` Prelude.rnf notes+ `Prelude.seq` Prelude.rnf pillarPriorities+ `Prelude.seq` Prelude.rnf reviewOwner+ `Prelude.seq` Prelude.rnf workloadName+ `Prelude.seq` Prelude.rnf workloadId++instance Data.ToHeaders UpdateWorkload where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateWorkload where+ toJSON UpdateWorkload' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AccountIds" Data..=) Prelude.<$> accountIds,+ ("Applications" Data..=) Prelude.<$> applications,+ ("ArchitecturalDesign" Data..=)+ Prelude.<$> architecturalDesign,+ ("AwsRegions" Data..=) Prelude.<$> awsRegions,+ ("Description" Data..=) Prelude.<$> description,+ ("DiscoveryConfig" Data..=)+ Prelude.<$> discoveryConfig,+ ("Environment" Data..=) Prelude.<$> environment,+ ("ImprovementStatus" Data..=)+ Prelude.<$> improvementStatus,+ ("Industry" Data..=) Prelude.<$> industry,+ ("IndustryType" Data..=) Prelude.<$> industryType,+ ("IsReviewOwnerUpdateAcknowledged" Data..=)+ Prelude.<$> isReviewOwnerUpdateAcknowledged,+ ("NonAwsRegions" Data..=) Prelude.<$> nonAwsRegions,+ ("Notes" Data..=) Prelude.<$> notes,+ ("PillarPriorities" Data..=)+ Prelude.<$> pillarPriorities,+ ("ReviewOwner" Data..=) Prelude.<$> reviewOwner,+ ("WorkloadName" Data..=) Prelude.<$> workloadName+ ]+ )++instance Data.ToPath UpdateWorkload where+ toPath UpdateWorkload' {..} =+ Prelude.mconcat+ ["/workloads/", Data.toBS workloadId]++instance Data.ToQuery UpdateWorkload where+ toQuery = Prelude.const Prelude.mempty++-- | Output of an update workload call.+--+-- /See:/ 'newUpdateWorkloadResponse' smart constructor.+data UpdateWorkloadResponse = UpdateWorkloadResponse'+ { workload :: Prelude.Maybe Workload,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorkloadResponse' 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:+--+-- 'workload', 'updateWorkloadResponse_workload' - Undocumented member.+--+-- 'httpStatus', 'updateWorkloadResponse_httpStatus' - The response's http status code.+newUpdateWorkloadResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateWorkloadResponse+newUpdateWorkloadResponse pHttpStatus_ =+ UpdateWorkloadResponse'+ { workload = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+updateWorkloadResponse_workload :: Lens.Lens' UpdateWorkloadResponse (Prelude.Maybe Workload)+updateWorkloadResponse_workload = Lens.lens (\UpdateWorkloadResponse' {workload} -> workload) (\s@UpdateWorkloadResponse' {} a -> s {workload = a} :: UpdateWorkloadResponse)++-- | The response's http status code.+updateWorkloadResponse_httpStatus :: Lens.Lens' UpdateWorkloadResponse Prelude.Int+updateWorkloadResponse_httpStatus = Lens.lens (\UpdateWorkloadResponse' {httpStatus} -> httpStatus) (\s@UpdateWorkloadResponse' {} a -> s {httpStatus = a} :: UpdateWorkloadResponse)++instance Prelude.NFData UpdateWorkloadResponse where+ rnf UpdateWorkloadResponse' {..} =+ Prelude.rnf workload+ `Prelude.seq` Prelude.rnf httpStatus
@@ -0,0 +1,218 @@+{-# 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.WellArchitected.UpdateWorkloadShare+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update a workload share.+module Amazonka.WellArchitected.UpdateWorkloadShare+ ( -- * Creating a Request+ UpdateWorkloadShare (..),+ newUpdateWorkloadShare,++ -- * Request Lenses+ updateWorkloadShare_shareId,+ updateWorkloadShare_workloadId,+ updateWorkloadShare_permissionType,++ -- * Destructuring the Response+ UpdateWorkloadShareResponse (..),+ newUpdateWorkloadShareResponse,++ -- * Response Lenses+ updateWorkloadShareResponse_workloadId,+ updateWorkloadShareResponse_workloadShare,+ updateWorkloadShareResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | Input for Update Workload Share+--+-- /See:/ 'newUpdateWorkloadShare' smart constructor.+data UpdateWorkloadShare = UpdateWorkloadShare'+ { shareId :: Prelude.Text,+ workloadId :: Prelude.Text,+ permissionType :: PermissionType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorkloadShare' 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:+--+-- 'shareId', 'updateWorkloadShare_shareId' - Undocumented member.+--+-- 'workloadId', 'updateWorkloadShare_workloadId' - Undocumented member.+--+-- 'permissionType', 'updateWorkloadShare_permissionType' - Undocumented member.+newUpdateWorkloadShare ::+ -- | 'shareId'+ Prelude.Text ->+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'permissionType'+ PermissionType ->+ UpdateWorkloadShare+newUpdateWorkloadShare+ pShareId_+ pWorkloadId_+ pPermissionType_ =+ UpdateWorkloadShare'+ { shareId = pShareId_,+ workloadId = pWorkloadId_,+ permissionType = pPermissionType_+ }++-- | Undocumented member.+updateWorkloadShare_shareId :: Lens.Lens' UpdateWorkloadShare Prelude.Text+updateWorkloadShare_shareId = Lens.lens (\UpdateWorkloadShare' {shareId} -> shareId) (\s@UpdateWorkloadShare' {} a -> s {shareId = a} :: UpdateWorkloadShare)++-- | Undocumented member.+updateWorkloadShare_workloadId :: Lens.Lens' UpdateWorkloadShare Prelude.Text+updateWorkloadShare_workloadId = Lens.lens (\UpdateWorkloadShare' {workloadId} -> workloadId) (\s@UpdateWorkloadShare' {} a -> s {workloadId = a} :: UpdateWorkloadShare)++-- | Undocumented member.+updateWorkloadShare_permissionType :: Lens.Lens' UpdateWorkloadShare PermissionType+updateWorkloadShare_permissionType = Lens.lens (\UpdateWorkloadShare' {permissionType} -> permissionType) (\s@UpdateWorkloadShare' {} a -> s {permissionType = a} :: UpdateWorkloadShare)++instance Core.AWSRequest UpdateWorkloadShare where+ type+ AWSResponse UpdateWorkloadShare =+ UpdateWorkloadShareResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateWorkloadShareResponse'+ Prelude.<$> (x Data..?> "WorkloadId")+ Prelude.<*> (x Data..?> "WorkloadShare")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateWorkloadShare where+ hashWithSalt _salt UpdateWorkloadShare' {..} =+ _salt+ `Prelude.hashWithSalt` shareId+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` permissionType++instance Prelude.NFData UpdateWorkloadShare where+ rnf UpdateWorkloadShare' {..} =+ Prelude.rnf shareId+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf permissionType++instance Data.ToHeaders UpdateWorkloadShare where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateWorkloadShare where+ toJSON UpdateWorkloadShare' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("PermissionType" Data..= permissionType)+ ]+ )++instance Data.ToPath UpdateWorkloadShare where+ toPath UpdateWorkloadShare' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/shares/",+ Data.toBS shareId+ ]++instance Data.ToQuery UpdateWorkloadShare where+ toQuery = Prelude.const Prelude.mempty++-- | Input for Update Workload Share+--+-- /See:/ 'newUpdateWorkloadShareResponse' smart constructor.+data UpdateWorkloadShareResponse = UpdateWorkloadShareResponse'+ { workloadId :: Prelude.Maybe Prelude.Text,+ workloadShare :: Prelude.Maybe WorkloadShare,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorkloadShareResponse' 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:+--+-- 'workloadId', 'updateWorkloadShareResponse_workloadId' - Undocumented member.+--+-- 'workloadShare', 'updateWorkloadShareResponse_workloadShare' - Undocumented member.+--+-- 'httpStatus', 'updateWorkloadShareResponse_httpStatus' - The response's http status code.+newUpdateWorkloadShareResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateWorkloadShareResponse+newUpdateWorkloadShareResponse pHttpStatus_ =+ UpdateWorkloadShareResponse'+ { workloadId =+ Prelude.Nothing,+ workloadShare = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+updateWorkloadShareResponse_workloadId :: Lens.Lens' UpdateWorkloadShareResponse (Prelude.Maybe Prelude.Text)+updateWorkloadShareResponse_workloadId = Lens.lens (\UpdateWorkloadShareResponse' {workloadId} -> workloadId) (\s@UpdateWorkloadShareResponse' {} a -> s {workloadId = a} :: UpdateWorkloadShareResponse)++-- | Undocumented member.+updateWorkloadShareResponse_workloadShare :: Lens.Lens' UpdateWorkloadShareResponse (Prelude.Maybe WorkloadShare)+updateWorkloadShareResponse_workloadShare = Lens.lens (\UpdateWorkloadShareResponse' {workloadShare} -> workloadShare) (\s@UpdateWorkloadShareResponse' {} a -> s {workloadShare = a} :: UpdateWorkloadShareResponse)++-- | The response's http status code.+updateWorkloadShareResponse_httpStatus :: Lens.Lens' UpdateWorkloadShareResponse Prelude.Int+updateWorkloadShareResponse_httpStatus = Lens.lens (\UpdateWorkloadShareResponse' {httpStatus} -> httpStatus) (\s@UpdateWorkloadShareResponse' {} a -> s {httpStatus = a} :: UpdateWorkloadShareResponse)++instance Prelude.NFData UpdateWorkloadShareResponse where+ rnf UpdateWorkloadShareResponse' {..} =+ Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf workloadShare+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/WellArchitected/UpgradeLensReview.hs view
@@ -0,0 +1,184 @@+{-# 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.WellArchitected.UpgradeLensReview+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Upgrade lens review.+module Amazonka.WellArchitected.UpgradeLensReview+ ( -- * Creating a Request+ UpgradeLensReview (..),+ newUpgradeLensReview,++ -- * Request Lenses+ upgradeLensReview_clientRequestToken,+ upgradeLensReview_workloadId,+ upgradeLensReview_lensAlias,+ upgradeLensReview_milestoneName,++ -- * Destructuring the Response+ UpgradeLensReviewResponse (..),+ newUpgradeLensReviewResponse,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.WellArchitected.Types++-- | /See:/ 'newUpgradeLensReview' smart constructor.+data UpgradeLensReview = UpgradeLensReview'+ { clientRequestToken :: Prelude.Maybe Prelude.Text,+ workloadId :: Prelude.Text,+ lensAlias :: Prelude.Text,+ milestoneName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpgradeLensReview' 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:+--+-- 'clientRequestToken', 'upgradeLensReview_clientRequestToken' - Undocumented member.+--+-- 'workloadId', 'upgradeLensReview_workloadId' - Undocumented member.+--+-- 'lensAlias', 'upgradeLensReview_lensAlias' - Undocumented member.+--+-- 'milestoneName', 'upgradeLensReview_milestoneName' - Undocumented member.+newUpgradeLensReview ::+ -- | 'workloadId'+ Prelude.Text ->+ -- | 'lensAlias'+ Prelude.Text ->+ -- | 'milestoneName'+ Prelude.Text ->+ UpgradeLensReview+newUpgradeLensReview+ pWorkloadId_+ pLensAlias_+ pMilestoneName_ =+ UpgradeLensReview'+ { clientRequestToken =+ Prelude.Nothing,+ workloadId = pWorkloadId_,+ lensAlias = pLensAlias_,+ milestoneName = pMilestoneName_+ }++-- | Undocumented member.+upgradeLensReview_clientRequestToken :: Lens.Lens' UpgradeLensReview (Prelude.Maybe Prelude.Text)+upgradeLensReview_clientRequestToken = Lens.lens (\UpgradeLensReview' {clientRequestToken} -> clientRequestToken) (\s@UpgradeLensReview' {} a -> s {clientRequestToken = a} :: UpgradeLensReview)++-- | Undocumented member.+upgradeLensReview_workloadId :: Lens.Lens' UpgradeLensReview Prelude.Text+upgradeLensReview_workloadId = Lens.lens (\UpgradeLensReview' {workloadId} -> workloadId) (\s@UpgradeLensReview' {} a -> s {workloadId = a} :: UpgradeLensReview)++-- | Undocumented member.+upgradeLensReview_lensAlias :: Lens.Lens' UpgradeLensReview Prelude.Text+upgradeLensReview_lensAlias = Lens.lens (\UpgradeLensReview' {lensAlias} -> lensAlias) (\s@UpgradeLensReview' {} a -> s {lensAlias = a} :: UpgradeLensReview)++-- | Undocumented member.+upgradeLensReview_milestoneName :: Lens.Lens' UpgradeLensReview Prelude.Text+upgradeLensReview_milestoneName = Lens.lens (\UpgradeLensReview' {milestoneName} -> milestoneName) (\s@UpgradeLensReview' {} a -> s {milestoneName = a} :: UpgradeLensReview)++instance Core.AWSRequest UpgradeLensReview where+ type+ AWSResponse UpgradeLensReview =+ UpgradeLensReviewResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveNull UpgradeLensReviewResponse'++instance Prelude.Hashable UpgradeLensReview where+ hashWithSalt _salt UpgradeLensReview' {..} =+ _salt+ `Prelude.hashWithSalt` clientRequestToken+ `Prelude.hashWithSalt` workloadId+ `Prelude.hashWithSalt` lensAlias+ `Prelude.hashWithSalt` milestoneName++instance Prelude.NFData UpgradeLensReview where+ rnf UpgradeLensReview' {..} =+ Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf workloadId+ `Prelude.seq` Prelude.rnf lensAlias+ `Prelude.seq` Prelude.rnf milestoneName++instance Data.ToHeaders UpgradeLensReview where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpgradeLensReview where+ toJSON UpgradeLensReview' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ClientRequestToken" Data..=)+ Prelude.<$> clientRequestToken,+ Prelude.Just+ ("MilestoneName" Data..= milestoneName)+ ]+ )++instance Data.ToPath UpgradeLensReview where+ toPath UpgradeLensReview' {..} =+ Prelude.mconcat+ [ "/workloads/",+ Data.toBS workloadId,+ "/lensReviews/",+ Data.toBS lensAlias,+ "/upgrade"+ ]++instance Data.ToQuery UpgradeLensReview where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpgradeLensReviewResponse' smart constructor.+data UpgradeLensReviewResponse = UpgradeLensReviewResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpgradeLensReviewResponse' 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.+newUpgradeLensReviewResponse ::+ UpgradeLensReviewResponse+newUpgradeLensReviewResponse =+ UpgradeLensReviewResponse'++instance Prelude.NFData UpgradeLensReviewResponse where+ rnf _ = ()
+ gen/Amazonka/WellArchitected/Waiters.hs view
@@ -0,0 +1,24 @@+{-# 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.WellArchitected.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.WellArchitected.Waiters 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+import Amazonka.WellArchitected.Lens+import Amazonka.WellArchitected.Types
+ 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.WellArchitected+import Test.Amazonka.WellArchitected.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "WellArchitected"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/WellArchitected.hs view
@@ -0,0 +1,878 @@+{-# 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.WellArchitected+-- 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.WellArchitected where++import Amazonka.WellArchitected+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.Prelude+import Test.Amazonka.WellArchitected.Internal+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"+-- [ requestAssociateLenses $+-- newAssociateLenses+--+-- , requestCreateLensShare $+-- newCreateLensShare+--+-- , requestCreateLensVersion $+-- newCreateLensVersion+--+-- , requestCreateMilestone $+-- newCreateMilestone+--+-- , requestCreateWorkload $+-- newCreateWorkload+--+-- , requestCreateWorkloadShare $+-- newCreateWorkloadShare+--+-- , requestDeleteLens $+-- newDeleteLens+--+-- , requestDeleteLensShare $+-- newDeleteLensShare+--+-- , requestDeleteWorkload $+-- newDeleteWorkload+--+-- , requestDeleteWorkloadShare $+-- newDeleteWorkloadShare+--+-- , requestDisassociateLenses $+-- newDisassociateLenses+--+-- , requestExportLens $+-- newExportLens+--+-- , requestGetAnswer $+-- newGetAnswer+--+-- , requestGetLens $+-- newGetLens+--+-- , requestGetLensReview $+-- newGetLensReview+--+-- , requestGetLensReviewReport $+-- newGetLensReviewReport+--+-- , requestGetLensVersionDifference $+-- newGetLensVersionDifference+--+-- , requestGetMilestone $+-- newGetMilestone+--+-- , requestGetWorkload $+-- newGetWorkload+--+-- , requestImportLens $+-- newImportLens+--+-- , requestListAnswers $+-- newListAnswers+--+-- , requestListCheckDetails $+-- newListCheckDetails+--+-- , requestListCheckSummaries $+-- newListCheckSummaries+--+-- , requestListLensReviewImprovements $+-- newListLensReviewImprovements+--+-- , requestListLensReviews $+-- newListLensReviews+--+-- , requestListLensShares $+-- newListLensShares+--+-- , requestListLenses $+-- newListLenses+--+-- , requestListMilestones $+-- newListMilestones+--+-- , requestListNotifications $+-- newListNotifications+--+-- , requestListShareInvitations $+-- newListShareInvitations+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestListWorkloadShares $+-- newListWorkloadShares+--+-- , requestListWorkloads $+-- newListWorkloads+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateAnswer $+-- newUpdateAnswer+--+-- , requestUpdateGlobalSettings $+-- newUpdateGlobalSettings+--+-- , requestUpdateLensReview $+-- newUpdateLensReview+--+-- , requestUpdateShareInvitation $+-- newUpdateShareInvitation+--+-- , requestUpdateWorkload $+-- newUpdateWorkload+--+-- , requestUpdateWorkloadShare $+-- newUpdateWorkloadShare+--+-- , requestUpgradeLensReview $+-- newUpgradeLensReview+--+-- ]++-- , testGroup "response"+-- [ responseAssociateLenses $+-- newAssociateLensesResponse+--+-- , responseCreateLensShare $+-- newCreateLensShareResponse+--+-- , responseCreateLensVersion $+-- newCreateLensVersionResponse+--+-- , responseCreateMilestone $+-- newCreateMilestoneResponse+--+-- , responseCreateWorkload $+-- newCreateWorkloadResponse+--+-- , responseCreateWorkloadShare $+-- newCreateWorkloadShareResponse+--+-- , responseDeleteLens $+-- newDeleteLensResponse+--+-- , responseDeleteLensShare $+-- newDeleteLensShareResponse+--+-- , responseDeleteWorkload $+-- newDeleteWorkloadResponse+--+-- , responseDeleteWorkloadShare $+-- newDeleteWorkloadShareResponse+--+-- , responseDisassociateLenses $+-- newDisassociateLensesResponse+--+-- , responseExportLens $+-- newExportLensResponse+--+-- , responseGetAnswer $+-- newGetAnswerResponse+--+-- , responseGetLens $+-- newGetLensResponse+--+-- , responseGetLensReview $+-- newGetLensReviewResponse+--+-- , responseGetLensReviewReport $+-- newGetLensReviewReportResponse+--+-- , responseGetLensVersionDifference $+-- newGetLensVersionDifferenceResponse+--+-- , responseGetMilestone $+-- newGetMilestoneResponse+--+-- , responseGetWorkload $+-- newGetWorkloadResponse+--+-- , responseImportLens $+-- newImportLensResponse+--+-- , responseListAnswers $+-- newListAnswersResponse+--+-- , responseListCheckDetails $+-- newListCheckDetailsResponse+--+-- , responseListCheckSummaries $+-- newListCheckSummariesResponse+--+-- , responseListLensReviewImprovements $+-- newListLensReviewImprovementsResponse+--+-- , responseListLensReviews $+-- newListLensReviewsResponse+--+-- , responseListLensShares $+-- newListLensSharesResponse+--+-- , responseListLenses $+-- newListLensesResponse+--+-- , responseListMilestones $+-- newListMilestonesResponse+--+-- , responseListNotifications $+-- newListNotificationsResponse+--+-- , responseListShareInvitations $+-- newListShareInvitationsResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responseListWorkloadShares $+-- newListWorkloadSharesResponse+--+-- , responseListWorkloads $+-- newListWorkloadsResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateAnswer $+-- newUpdateAnswerResponse+--+-- , responseUpdateGlobalSettings $+-- newUpdateGlobalSettingsResponse+--+-- , responseUpdateLensReview $+-- newUpdateLensReviewResponse+--+-- , responseUpdateShareInvitation $+-- newUpdateShareInvitationResponse+--+-- , responseUpdateWorkload $+-- newUpdateWorkloadResponse+--+-- , responseUpdateWorkloadShare $+-- newUpdateWorkloadShareResponse+--+-- , responseUpgradeLensReview $+-- newUpgradeLensReviewResponse+--+-- ]+-- ]++-- Requests++requestAssociateLenses :: AssociateLenses -> TestTree+requestAssociateLenses =+ req+ "AssociateLenses"+ "fixture/AssociateLenses.yaml"++requestCreateLensShare :: CreateLensShare -> TestTree+requestCreateLensShare =+ req+ "CreateLensShare"+ "fixture/CreateLensShare.yaml"++requestCreateLensVersion :: CreateLensVersion -> TestTree+requestCreateLensVersion =+ req+ "CreateLensVersion"+ "fixture/CreateLensVersion.yaml"++requestCreateMilestone :: CreateMilestone -> TestTree+requestCreateMilestone =+ req+ "CreateMilestone"+ "fixture/CreateMilestone.yaml"++requestCreateWorkload :: CreateWorkload -> TestTree+requestCreateWorkload =+ req+ "CreateWorkload"+ "fixture/CreateWorkload.yaml"++requestCreateWorkloadShare :: CreateWorkloadShare -> TestTree+requestCreateWorkloadShare =+ req+ "CreateWorkloadShare"+ "fixture/CreateWorkloadShare.yaml"++requestDeleteLens :: DeleteLens -> TestTree+requestDeleteLens =+ req+ "DeleteLens"+ "fixture/DeleteLens.yaml"++requestDeleteLensShare :: DeleteLensShare -> TestTree+requestDeleteLensShare =+ req+ "DeleteLensShare"+ "fixture/DeleteLensShare.yaml"++requestDeleteWorkload :: DeleteWorkload -> TestTree+requestDeleteWorkload =+ req+ "DeleteWorkload"+ "fixture/DeleteWorkload.yaml"++requestDeleteWorkloadShare :: DeleteWorkloadShare -> TestTree+requestDeleteWorkloadShare =+ req+ "DeleteWorkloadShare"+ "fixture/DeleteWorkloadShare.yaml"++requestDisassociateLenses :: DisassociateLenses -> TestTree+requestDisassociateLenses =+ req+ "DisassociateLenses"+ "fixture/DisassociateLenses.yaml"++requestExportLens :: ExportLens -> TestTree+requestExportLens =+ req+ "ExportLens"+ "fixture/ExportLens.yaml"++requestGetAnswer :: GetAnswer -> TestTree+requestGetAnswer =+ req+ "GetAnswer"+ "fixture/GetAnswer.yaml"++requestGetLens :: GetLens -> TestTree+requestGetLens =+ req+ "GetLens"+ "fixture/GetLens.yaml"++requestGetLensReview :: GetLensReview -> TestTree+requestGetLensReview =+ req+ "GetLensReview"+ "fixture/GetLensReview.yaml"++requestGetLensReviewReport :: GetLensReviewReport -> TestTree+requestGetLensReviewReport =+ req+ "GetLensReviewReport"+ "fixture/GetLensReviewReport.yaml"++requestGetLensVersionDifference :: GetLensVersionDifference -> TestTree+requestGetLensVersionDifference =+ req+ "GetLensVersionDifference"+ "fixture/GetLensVersionDifference.yaml"++requestGetMilestone :: GetMilestone -> TestTree+requestGetMilestone =+ req+ "GetMilestone"+ "fixture/GetMilestone.yaml"++requestGetWorkload :: GetWorkload -> TestTree+requestGetWorkload =+ req+ "GetWorkload"+ "fixture/GetWorkload.yaml"++requestImportLens :: ImportLens -> TestTree+requestImportLens =+ req+ "ImportLens"+ "fixture/ImportLens.yaml"++requestListAnswers :: ListAnswers -> TestTree+requestListAnswers =+ req+ "ListAnswers"+ "fixture/ListAnswers.yaml"++requestListCheckDetails :: ListCheckDetails -> TestTree+requestListCheckDetails =+ req+ "ListCheckDetails"+ "fixture/ListCheckDetails.yaml"++requestListCheckSummaries :: ListCheckSummaries -> TestTree+requestListCheckSummaries =+ req+ "ListCheckSummaries"+ "fixture/ListCheckSummaries.yaml"++requestListLensReviewImprovements :: ListLensReviewImprovements -> TestTree+requestListLensReviewImprovements =+ req+ "ListLensReviewImprovements"+ "fixture/ListLensReviewImprovements.yaml"++requestListLensReviews :: ListLensReviews -> TestTree+requestListLensReviews =+ req+ "ListLensReviews"+ "fixture/ListLensReviews.yaml"++requestListLensShares :: ListLensShares -> TestTree+requestListLensShares =+ req+ "ListLensShares"+ "fixture/ListLensShares.yaml"++requestListLenses :: ListLenses -> TestTree+requestListLenses =+ req+ "ListLenses"+ "fixture/ListLenses.yaml"++requestListMilestones :: ListMilestones -> TestTree+requestListMilestones =+ req+ "ListMilestones"+ "fixture/ListMilestones.yaml"++requestListNotifications :: ListNotifications -> TestTree+requestListNotifications =+ req+ "ListNotifications"+ "fixture/ListNotifications.yaml"++requestListShareInvitations :: ListShareInvitations -> TestTree+requestListShareInvitations =+ req+ "ListShareInvitations"+ "fixture/ListShareInvitations.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestListWorkloadShares :: ListWorkloadShares -> TestTree+requestListWorkloadShares =+ req+ "ListWorkloadShares"+ "fixture/ListWorkloadShares.yaml"++requestListWorkloads :: ListWorkloads -> TestTree+requestListWorkloads =+ req+ "ListWorkloads"+ "fixture/ListWorkloads.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateAnswer :: UpdateAnswer -> TestTree+requestUpdateAnswer =+ req+ "UpdateAnswer"+ "fixture/UpdateAnswer.yaml"++requestUpdateGlobalSettings :: UpdateGlobalSettings -> TestTree+requestUpdateGlobalSettings =+ req+ "UpdateGlobalSettings"+ "fixture/UpdateGlobalSettings.yaml"++requestUpdateLensReview :: UpdateLensReview -> TestTree+requestUpdateLensReview =+ req+ "UpdateLensReview"+ "fixture/UpdateLensReview.yaml"++requestUpdateShareInvitation :: UpdateShareInvitation -> TestTree+requestUpdateShareInvitation =+ req+ "UpdateShareInvitation"+ "fixture/UpdateShareInvitation.yaml"++requestUpdateWorkload :: UpdateWorkload -> TestTree+requestUpdateWorkload =+ req+ "UpdateWorkload"+ "fixture/UpdateWorkload.yaml"++requestUpdateWorkloadShare :: UpdateWorkloadShare -> TestTree+requestUpdateWorkloadShare =+ req+ "UpdateWorkloadShare"+ "fixture/UpdateWorkloadShare.yaml"++requestUpgradeLensReview :: UpgradeLensReview -> TestTree+requestUpgradeLensReview =+ req+ "UpgradeLensReview"+ "fixture/UpgradeLensReview.yaml"++-- Responses++responseAssociateLenses :: AssociateLensesResponse -> TestTree+responseAssociateLenses =+ res+ "AssociateLensesResponse"+ "fixture/AssociateLensesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AssociateLenses)++responseCreateLensShare :: CreateLensShareResponse -> TestTree+responseCreateLensShare =+ res+ "CreateLensShareResponse"+ "fixture/CreateLensShareResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateLensShare)++responseCreateLensVersion :: CreateLensVersionResponse -> TestTree+responseCreateLensVersion =+ res+ "CreateLensVersionResponse"+ "fixture/CreateLensVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateLensVersion)++responseCreateMilestone :: CreateMilestoneResponse -> TestTree+responseCreateMilestone =+ res+ "CreateMilestoneResponse"+ "fixture/CreateMilestoneResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateMilestone)++responseCreateWorkload :: CreateWorkloadResponse -> TestTree+responseCreateWorkload =+ res+ "CreateWorkloadResponse"+ "fixture/CreateWorkloadResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateWorkload)++responseCreateWorkloadShare :: CreateWorkloadShareResponse -> TestTree+responseCreateWorkloadShare =+ res+ "CreateWorkloadShareResponse"+ "fixture/CreateWorkloadShareResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateWorkloadShare)++responseDeleteLens :: DeleteLensResponse -> TestTree+responseDeleteLens =+ res+ "DeleteLensResponse"+ "fixture/DeleteLensResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteLens)++responseDeleteLensShare :: DeleteLensShareResponse -> TestTree+responseDeleteLensShare =+ res+ "DeleteLensShareResponse"+ "fixture/DeleteLensShareResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteLensShare)++responseDeleteWorkload :: DeleteWorkloadResponse -> TestTree+responseDeleteWorkload =+ res+ "DeleteWorkloadResponse"+ "fixture/DeleteWorkloadResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteWorkload)++responseDeleteWorkloadShare :: DeleteWorkloadShareResponse -> TestTree+responseDeleteWorkloadShare =+ res+ "DeleteWorkloadShareResponse"+ "fixture/DeleteWorkloadShareResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteWorkloadShare)++responseDisassociateLenses :: DisassociateLensesResponse -> TestTree+responseDisassociateLenses =+ res+ "DisassociateLensesResponse"+ "fixture/DisassociateLensesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DisassociateLenses)++responseExportLens :: ExportLensResponse -> TestTree+responseExportLens =+ res+ "ExportLensResponse"+ "fixture/ExportLensResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ExportLens)++responseGetAnswer :: GetAnswerResponse -> TestTree+responseGetAnswer =+ res+ "GetAnswerResponse"+ "fixture/GetAnswerResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetAnswer)++responseGetLens :: GetLensResponse -> TestTree+responseGetLens =+ res+ "GetLensResponse"+ "fixture/GetLensResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetLens)++responseGetLensReview :: GetLensReviewResponse -> TestTree+responseGetLensReview =+ res+ "GetLensReviewResponse"+ "fixture/GetLensReviewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetLensReview)++responseGetLensReviewReport :: GetLensReviewReportResponse -> TestTree+responseGetLensReviewReport =+ res+ "GetLensReviewReportResponse"+ "fixture/GetLensReviewReportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetLensReviewReport)++responseGetLensVersionDifference :: GetLensVersionDifferenceResponse -> TestTree+responseGetLensVersionDifference =+ res+ "GetLensVersionDifferenceResponse"+ "fixture/GetLensVersionDifferenceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetLensVersionDifference)++responseGetMilestone :: GetMilestoneResponse -> TestTree+responseGetMilestone =+ res+ "GetMilestoneResponse"+ "fixture/GetMilestoneResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetMilestone)++responseGetWorkload :: GetWorkloadResponse -> TestTree+responseGetWorkload =+ res+ "GetWorkloadResponse"+ "fixture/GetWorkloadResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetWorkload)++responseImportLens :: ImportLensResponse -> TestTree+responseImportLens =+ res+ "ImportLensResponse"+ "fixture/ImportLensResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ImportLens)++responseListAnswers :: ListAnswersResponse -> TestTree+responseListAnswers =+ res+ "ListAnswersResponse"+ "fixture/ListAnswersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAnswers)++responseListCheckDetails :: ListCheckDetailsResponse -> TestTree+responseListCheckDetails =+ res+ "ListCheckDetailsResponse"+ "fixture/ListCheckDetailsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListCheckDetails)++responseListCheckSummaries :: ListCheckSummariesResponse -> TestTree+responseListCheckSummaries =+ res+ "ListCheckSummariesResponse"+ "fixture/ListCheckSummariesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListCheckSummaries)++responseListLensReviewImprovements :: ListLensReviewImprovementsResponse -> TestTree+responseListLensReviewImprovements =+ res+ "ListLensReviewImprovementsResponse"+ "fixture/ListLensReviewImprovementsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListLensReviewImprovements)++responseListLensReviews :: ListLensReviewsResponse -> TestTree+responseListLensReviews =+ res+ "ListLensReviewsResponse"+ "fixture/ListLensReviewsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListLensReviews)++responseListLensShares :: ListLensSharesResponse -> TestTree+responseListLensShares =+ res+ "ListLensSharesResponse"+ "fixture/ListLensSharesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListLensShares)++responseListLenses :: ListLensesResponse -> TestTree+responseListLenses =+ res+ "ListLensesResponse"+ "fixture/ListLensesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListLenses)++responseListMilestones :: ListMilestonesResponse -> TestTree+responseListMilestones =+ res+ "ListMilestonesResponse"+ "fixture/ListMilestonesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListMilestones)++responseListNotifications :: ListNotificationsResponse -> TestTree+responseListNotifications =+ res+ "ListNotificationsResponse"+ "fixture/ListNotificationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListNotifications)++responseListShareInvitations :: ListShareInvitationsResponse -> TestTree+responseListShareInvitations =+ res+ "ListShareInvitationsResponse"+ "fixture/ListShareInvitationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListShareInvitations)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseListWorkloadShares :: ListWorkloadSharesResponse -> TestTree+responseListWorkloadShares =+ res+ "ListWorkloadSharesResponse"+ "fixture/ListWorkloadSharesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListWorkloadShares)++responseListWorkloads :: ListWorkloadsResponse -> TestTree+responseListWorkloads =+ res+ "ListWorkloadsResponse"+ "fixture/ListWorkloadsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListWorkloads)++responseTagResource :: TagResourceResponse -> TestTree+responseTagResource =+ res+ "TagResourceResponse"+ "fixture/TagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagResource)++responseUntagResource :: UntagResourceResponse -> TestTree+responseUntagResource =+ res+ "UntagResourceResponse"+ "fixture/UntagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagResource)++responseUpdateAnswer :: UpdateAnswerResponse -> TestTree+responseUpdateAnswer =+ res+ "UpdateAnswerResponse"+ "fixture/UpdateAnswerResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateAnswer)++responseUpdateGlobalSettings :: UpdateGlobalSettingsResponse -> TestTree+responseUpdateGlobalSettings =+ res+ "UpdateGlobalSettingsResponse"+ "fixture/UpdateGlobalSettingsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateGlobalSettings)++responseUpdateLensReview :: UpdateLensReviewResponse -> TestTree+responseUpdateLensReview =+ res+ "UpdateLensReviewResponse"+ "fixture/UpdateLensReviewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateLensReview)++responseUpdateShareInvitation :: UpdateShareInvitationResponse -> TestTree+responseUpdateShareInvitation =+ res+ "UpdateShareInvitationResponse"+ "fixture/UpdateShareInvitationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateShareInvitation)++responseUpdateWorkload :: UpdateWorkloadResponse -> TestTree+responseUpdateWorkload =+ res+ "UpdateWorkloadResponse"+ "fixture/UpdateWorkloadResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateWorkload)++responseUpdateWorkloadShare :: UpdateWorkloadShareResponse -> TestTree+responseUpdateWorkloadShare =+ res+ "UpdateWorkloadShareResponse"+ "fixture/UpdateWorkloadShareResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateWorkloadShare)++responseUpgradeLensReview :: UpgradeLensReviewResponse -> TestTree+responseUpgradeLensReview =+ res+ "UpgradeLensReviewResponse"+ "fixture/UpgradeLensReviewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpgradeLensReview)
+ test/Test/Amazonka/WellArchitected.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.WellArchitected+-- 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.WellArchitected+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/WellArchitected/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.WellArchitected.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.WellArchitected.Internal where