amazonka-codeguru-reviewer (empty) → 2.0
raw patch · 91 files changed
+10607/−0 lines, 91 filesdep +amazonka-codeguru-reviewerdep +amazonka-coredep +amazonka-test
Dependencies added: amazonka-codeguru-reviewer, amazonka-core, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-codeguru-reviewer.cabal +134/−0
- fixture/AssociateRepository.yaml +10/−0
- fixture/AssociateRepositoryResponse.proto +0/−0
- fixture/CreateCodeReview.yaml +10/−0
- fixture/CreateCodeReviewResponse.proto +0/−0
- fixture/DescribeCodeReview.yaml +10/−0
- fixture/DescribeCodeReviewResponse.proto +0/−0
- fixture/DescribeRecommendationFeedback.yaml +10/−0
- fixture/DescribeRecommendationFeedbackResponse.proto +0/−0
- fixture/DescribeRepositoryAssociation.yaml +10/−0
- fixture/DescribeRepositoryAssociationResponse.proto +0/−0
- fixture/DisassociateRepository.yaml +10/−0
- fixture/DisassociateRepositoryResponse.proto +0/−0
- fixture/ListCodeReviews.yaml +10/−0
- fixture/ListCodeReviewsResponse.proto +0/−0
- fixture/ListRecommendationFeedback.yaml +10/−0
- fixture/ListRecommendationFeedbackResponse.proto +0/−0
- fixture/ListRecommendations.yaml +10/−0
- fixture/ListRecommendationsResponse.proto +0/−0
- fixture/ListRepositoryAssociations.yaml +10/−0
- fixture/ListRepositoryAssociationsResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/PutRecommendationFeedback.yaml +10/−0
- fixture/PutRecommendationFeedbackResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- gen/Amazonka/CodeGuruReviewer.hs +338/−0
- gen/Amazonka/CodeGuruReviewer/AssociateRepository.hs +327/−0
- gen/Amazonka/CodeGuruReviewer/CreateCodeReview.hs +254/−0
- gen/Amazonka/CodeGuruReviewer/DescribeCodeReview.hs +170/−0
- gen/Amazonka/CodeGuruReviewer/DescribeRecommendationFeedback.hs +244/−0
- gen/Amazonka/CodeGuruReviewer/DescribeRepositoryAssociation.hs +223/−0
- gen/Amazonka/CodeGuruReviewer/DisassociateRepository.hs +215/−0
- gen/Amazonka/CodeGuruReviewer/Lens.hs +329/−0
- gen/Amazonka/CodeGuruReviewer/ListCodeReviews.hs +312/−0
- gen/Amazonka/CodeGuruReviewer/ListRecommendationFeedback.hs +300/−0
- gen/Amazonka/CodeGuruReviewer/ListRecommendations.hs +218/−0
- gen/Amazonka/CodeGuruReviewer/ListRepositoryAssociations.hs +445/−0
- gen/Amazonka/CodeGuruReviewer/ListTagsForResource.hs +196/−0
- gen/Amazonka/CodeGuruReviewer/PutRecommendationFeedback.hs +207/−0
- gen/Amazonka/CodeGuruReviewer/TagResource.hs +199/−0
- gen/Amazonka/CodeGuruReviewer/Types.hs +452/−0
- gen/Amazonka/CodeGuruReviewer/Types/AnalysisType.hs +71/−0
- gen/Amazonka/CodeGuruReviewer/Types/BranchDiffSourceCodeType.hs +107/−0
- gen/Amazonka/CodeGuruReviewer/Types/CodeArtifacts.hs +123/−0
- gen/Amazonka/CodeGuruReviewer/Types/CodeCommitRepository.hs +80/−0
- gen/Amazonka/CodeGuruReviewer/Types/CodeReview.hs +341/−0
- gen/Amazonka/CodeGuruReviewer/Types/CodeReviewSummary.hs +265/−0
- gen/Amazonka/CodeGuruReviewer/Types/CodeReviewType.hs +111/−0
- gen/Amazonka/CodeGuruReviewer/Types/CommitDiffSourceCodeType.hs +119/−0
- gen/Amazonka/CodeGuruReviewer/Types/ConfigFileState.hs +76/−0
- gen/Amazonka/CodeGuruReviewer/Types/EncryptionOption.hs +71/−0
- gen/Amazonka/CodeGuruReviewer/Types/EventInfo.hs +99/−0
- gen/Amazonka/CodeGuruReviewer/Types/JobState.hs +81/−0
- gen/Amazonka/CodeGuruReviewer/Types/KMSKeyDetails.hs +111/−0
- gen/Amazonka/CodeGuruReviewer/Types/Metrics.hs +114/−0
- gen/Amazonka/CodeGuruReviewer/Types/MetricsSummary.hs +171/−0
- gen/Amazonka/CodeGuruReviewer/Types/ProviderType.hs +86/−0
- gen/Amazonka/CodeGuruReviewer/Types/Reaction.hs +71/−0
- gen/Amazonka/CodeGuruReviewer/Types/RecommendationCategory.hs +116/−0
- gen/Amazonka/CodeGuruReviewer/Types/RecommendationFeedback.hs +164/−0
- gen/Amazonka/CodeGuruReviewer/Types/RecommendationFeedbackSummary.hs +122/−0
- gen/Amazonka/CodeGuruReviewer/Types/RecommendationSummary.hs +187/−0
- gen/Amazonka/CodeGuruReviewer/Types/Repository.hs +114/−0
- gen/Amazonka/CodeGuruReviewer/Types/RepositoryAnalysis.hs +96/−0
- gen/Amazonka/CodeGuruReviewer/Types/RepositoryAssociation.hs +360/−0
- gen/Amazonka/CodeGuruReviewer/Types/RepositoryAssociationState.hs +86/−0
- gen/Amazonka/CodeGuruReviewer/Types/RepositoryAssociationSummary.hs +299/−0
- gen/Amazonka/CodeGuruReviewer/Types/RepositoryHeadSourceCodeType.hs +89/−0
- gen/Amazonka/CodeGuruReviewer/Types/RequestMetadata.hs +146/−0
- gen/Amazonka/CodeGuruReviewer/Types/RuleMetadata.hs +123/−0
- gen/Amazonka/CodeGuruReviewer/Types/S3BucketRepository.hs +106/−0
- gen/Amazonka/CodeGuruReviewer/Types/S3Repository.hs +90/−0
- gen/Amazonka/CodeGuruReviewer/Types/S3RepositoryDetails.hs +105/−0
- gen/Amazonka/CodeGuruReviewer/Types/Severity.hs +86/−0
- gen/Amazonka/CodeGuruReviewer/Types/SourceCodeType.hs +187/−0
- gen/Amazonka/CodeGuruReviewer/Types/ThirdPartySourceRepository.hs +129/−0
- gen/Amazonka/CodeGuruReviewer/Types/Type.hs +68/−0
- gen/Amazonka/CodeGuruReviewer/Types/VendorName.hs +76/−0
- gen/Amazonka/CodeGuruReviewer/UntagResource.hs +175/−0
- gen/Amazonka/CodeGuruReviewer/Waiters.hs +103/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/CodeGuruReviewer.hs +20/−0
- test/Test/Amazonka/CodeGuruReviewer/Internal.hs +8/−0
- test/Test/Amazonka/Gen/CodeGuruReviewer.hs +318/−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 CodeGuru Reviewer SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2019-09-19@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-codeguru-reviewer)+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.CodeGuruReviewer](http://hackage.haskell.org/package/amazonka-codeguru-reviewer/docs/Amazonka-CodeGuruReviewer.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-codeguru-reviewer` 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-codeguru-reviewer.cabal view
@@ -0,0 +1,134 @@+cabal-version: 2.2+name: amazonka-codeguru-reviewer+version: 2.0+synopsis: Amazon CodeGuru Reviewer 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 @2019-09-19@ 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.CodeGuruReviewer.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.CodeGuruReviewer" 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-codeguru-reviewer++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.CodeGuruReviewer+ Amazonka.CodeGuruReviewer.AssociateRepository+ Amazonka.CodeGuruReviewer.CreateCodeReview+ Amazonka.CodeGuruReviewer.DescribeCodeReview+ Amazonka.CodeGuruReviewer.DescribeRecommendationFeedback+ Amazonka.CodeGuruReviewer.DescribeRepositoryAssociation+ Amazonka.CodeGuruReviewer.DisassociateRepository+ Amazonka.CodeGuruReviewer.Lens+ Amazonka.CodeGuruReviewer.ListCodeReviews+ Amazonka.CodeGuruReviewer.ListRecommendationFeedback+ Amazonka.CodeGuruReviewer.ListRecommendations+ Amazonka.CodeGuruReviewer.ListRepositoryAssociations+ Amazonka.CodeGuruReviewer.ListTagsForResource+ Amazonka.CodeGuruReviewer.PutRecommendationFeedback+ Amazonka.CodeGuruReviewer.TagResource+ Amazonka.CodeGuruReviewer.Types+ Amazonka.CodeGuruReviewer.Types.AnalysisType+ Amazonka.CodeGuruReviewer.Types.BranchDiffSourceCodeType+ Amazonka.CodeGuruReviewer.Types.CodeArtifacts+ Amazonka.CodeGuruReviewer.Types.CodeCommitRepository+ Amazonka.CodeGuruReviewer.Types.CodeReview+ Amazonka.CodeGuruReviewer.Types.CodeReviewSummary+ Amazonka.CodeGuruReviewer.Types.CodeReviewType+ Amazonka.CodeGuruReviewer.Types.CommitDiffSourceCodeType+ Amazonka.CodeGuruReviewer.Types.ConfigFileState+ Amazonka.CodeGuruReviewer.Types.EncryptionOption+ Amazonka.CodeGuruReviewer.Types.EventInfo+ Amazonka.CodeGuruReviewer.Types.JobState+ Amazonka.CodeGuruReviewer.Types.KMSKeyDetails+ Amazonka.CodeGuruReviewer.Types.Metrics+ Amazonka.CodeGuruReviewer.Types.MetricsSummary+ Amazonka.CodeGuruReviewer.Types.ProviderType+ Amazonka.CodeGuruReviewer.Types.Reaction+ Amazonka.CodeGuruReviewer.Types.RecommendationCategory+ Amazonka.CodeGuruReviewer.Types.RecommendationFeedback+ Amazonka.CodeGuruReviewer.Types.RecommendationFeedbackSummary+ Amazonka.CodeGuruReviewer.Types.RecommendationSummary+ Amazonka.CodeGuruReviewer.Types.Repository+ Amazonka.CodeGuruReviewer.Types.RepositoryAnalysis+ Amazonka.CodeGuruReviewer.Types.RepositoryAssociation+ Amazonka.CodeGuruReviewer.Types.RepositoryAssociationState+ Amazonka.CodeGuruReviewer.Types.RepositoryAssociationSummary+ Amazonka.CodeGuruReviewer.Types.RepositoryHeadSourceCodeType+ Amazonka.CodeGuruReviewer.Types.RequestMetadata+ Amazonka.CodeGuruReviewer.Types.RuleMetadata+ Amazonka.CodeGuruReviewer.Types.S3BucketRepository+ Amazonka.CodeGuruReviewer.Types.S3Repository+ Amazonka.CodeGuruReviewer.Types.S3RepositoryDetails+ Amazonka.CodeGuruReviewer.Types.Severity+ Amazonka.CodeGuruReviewer.Types.SourceCodeType+ Amazonka.CodeGuruReviewer.Types.ThirdPartySourceRepository+ Amazonka.CodeGuruReviewer.Types.Type+ Amazonka.CodeGuruReviewer.Types.VendorName+ Amazonka.CodeGuruReviewer.UntagResource+ Amazonka.CodeGuruReviewer.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-codeguru-reviewer-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.CodeGuruReviewer+ Test.Amazonka.CodeGuruReviewer.Internal+ Test.Amazonka.Gen.CodeGuruReviewer++ build-depends:+ , amazonka-codeguru-reviewer+ , amazonka-core >=2.0 && <2.1+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/AssociateRepository.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/AssociateRepositoryResponse.proto view
+ fixture/CreateCodeReview.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/CreateCodeReviewResponse.proto view
+ fixture/DescribeCodeReview.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/DescribeCodeReviewResponse.proto view
+ fixture/DescribeRecommendationFeedback.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/DescribeRecommendationFeedbackResponse.proto view
+ fixture/DescribeRepositoryAssociation.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/DescribeRepositoryAssociationResponse.proto view
+ fixture/DisassociateRepository.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/DisassociateRepositoryResponse.proto view
+ fixture/ListCodeReviews.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/ListCodeReviewsResponse.proto view
+ fixture/ListRecommendationFeedback.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/ListRecommendationFeedbackResponse.proto view
+ fixture/ListRecommendations.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/ListRecommendationsResponse.proto view
+ fixture/ListRepositoryAssociations.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/ListRepositoryAssociationsResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListTagsForResourceResponse.proto view
+ fixture/PutRecommendationFeedback.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/PutRecommendationFeedbackResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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/codeguru-reviewer/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeguru-reviewer.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
+ gen/Amazonka/CodeGuruReviewer.hs view
@@ -0,0 +1,338 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.CodeGuruReviewer+-- 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 @2019-09-19@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- This section provides documentation for the Amazon CodeGuru Reviewer API+-- operations. CodeGuru Reviewer is a service that uses program analysis+-- and machine learning to detect potential defects that are difficult for+-- developers to find and recommends fixes in your Java and Python code.+--+-- By proactively detecting and providing recommendations for addressing+-- code defects and implementing best practices, CodeGuru Reviewer improves+-- the overall quality and maintainability of your code base during the+-- code review stage. For more information about CodeGuru Reviewer, see the+-- /<https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html Amazon CodeGuru Reviewer User Guide>./+--+-- To improve the security of your CodeGuru Reviewer API calls, you can+-- establish a private connection between your VPC and CodeGuru Reviewer by+-- creating an /interface VPC endpoint/. For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/vpc-interface-endpoints.html CodeGuru Reviewer and interface VPC endpoints (Amazon Web Services PrivateLink)>+-- in the /Amazon CodeGuru Reviewer User Guide/.+module Amazonka.CodeGuruReviewer+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** NotFoundException+ _NotFoundException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- ** CodeReviewCompleted+ newCodeReviewCompleted,++ -- ** RepositoryAssociationSucceeded+ newRepositoryAssociationSucceeded,++ -- * Operations+ -- $operations++ -- ** AssociateRepository+ AssociateRepository (AssociateRepository'),+ newAssociateRepository,+ AssociateRepositoryResponse (AssociateRepositoryResponse'),+ newAssociateRepositoryResponse,++ -- ** CreateCodeReview+ CreateCodeReview (CreateCodeReview'),+ newCreateCodeReview,+ CreateCodeReviewResponse (CreateCodeReviewResponse'),+ newCreateCodeReviewResponse,++ -- ** DescribeCodeReview+ DescribeCodeReview (DescribeCodeReview'),+ newDescribeCodeReview,+ DescribeCodeReviewResponse (DescribeCodeReviewResponse'),+ newDescribeCodeReviewResponse,++ -- ** DescribeRecommendationFeedback+ DescribeRecommendationFeedback (DescribeRecommendationFeedback'),+ newDescribeRecommendationFeedback,+ DescribeRecommendationFeedbackResponse (DescribeRecommendationFeedbackResponse'),+ newDescribeRecommendationFeedbackResponse,++ -- ** DescribeRepositoryAssociation+ DescribeRepositoryAssociation (DescribeRepositoryAssociation'),+ newDescribeRepositoryAssociation,+ DescribeRepositoryAssociationResponse (DescribeRepositoryAssociationResponse'),+ newDescribeRepositoryAssociationResponse,++ -- ** DisassociateRepository+ DisassociateRepository (DisassociateRepository'),+ newDisassociateRepository,+ DisassociateRepositoryResponse (DisassociateRepositoryResponse'),+ newDisassociateRepositoryResponse,++ -- ** ListCodeReviews+ ListCodeReviews (ListCodeReviews'),+ newListCodeReviews,+ ListCodeReviewsResponse (ListCodeReviewsResponse'),+ newListCodeReviewsResponse,++ -- ** ListRecommendationFeedback+ ListRecommendationFeedback (ListRecommendationFeedback'),+ newListRecommendationFeedback,+ ListRecommendationFeedbackResponse (ListRecommendationFeedbackResponse'),+ newListRecommendationFeedbackResponse,++ -- ** ListRecommendations+ ListRecommendations (ListRecommendations'),+ newListRecommendations,+ ListRecommendationsResponse (ListRecommendationsResponse'),+ newListRecommendationsResponse,++ -- ** ListRepositoryAssociations (Paginated)+ ListRepositoryAssociations (ListRepositoryAssociations'),+ newListRepositoryAssociations,+ ListRepositoryAssociationsResponse (ListRepositoryAssociationsResponse'),+ newListRepositoryAssociationsResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** PutRecommendationFeedback+ PutRecommendationFeedback (PutRecommendationFeedback'),+ newPutRecommendationFeedback,+ PutRecommendationFeedbackResponse (PutRecommendationFeedbackResponse'),+ newPutRecommendationFeedbackResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- * Types++ -- ** AnalysisType+ AnalysisType (..),++ -- ** ConfigFileState+ ConfigFileState (..),++ -- ** EncryptionOption+ EncryptionOption (..),++ -- ** JobState+ JobState (..),++ -- ** ProviderType+ ProviderType (..),++ -- ** Reaction+ Reaction (..),++ -- ** RecommendationCategory+ RecommendationCategory (..),++ -- ** RepositoryAssociationState+ RepositoryAssociationState (..),++ -- ** Severity+ Severity (..),++ -- ** Type+ Type (..),++ -- ** VendorName+ VendorName (..),++ -- ** BranchDiffSourceCodeType+ BranchDiffSourceCodeType (BranchDiffSourceCodeType'),+ newBranchDiffSourceCodeType,++ -- ** CodeArtifacts+ CodeArtifacts (CodeArtifacts'),+ newCodeArtifacts,++ -- ** CodeCommitRepository+ CodeCommitRepository (CodeCommitRepository'),+ newCodeCommitRepository,++ -- ** CodeReview+ CodeReview (CodeReview'),+ newCodeReview,++ -- ** CodeReviewSummary+ CodeReviewSummary (CodeReviewSummary'),+ newCodeReviewSummary,++ -- ** CodeReviewType+ CodeReviewType (CodeReviewType'),+ newCodeReviewType,++ -- ** CommitDiffSourceCodeType+ CommitDiffSourceCodeType (CommitDiffSourceCodeType'),+ newCommitDiffSourceCodeType,++ -- ** EventInfo+ EventInfo (EventInfo'),+ newEventInfo,++ -- ** KMSKeyDetails+ KMSKeyDetails (KMSKeyDetails'),+ newKMSKeyDetails,++ -- ** Metrics+ Metrics (Metrics'),+ newMetrics,++ -- ** MetricsSummary+ MetricsSummary (MetricsSummary'),+ newMetricsSummary,++ -- ** RecommendationFeedback+ RecommendationFeedback (RecommendationFeedback'),+ newRecommendationFeedback,++ -- ** RecommendationFeedbackSummary+ RecommendationFeedbackSummary (RecommendationFeedbackSummary'),+ newRecommendationFeedbackSummary,++ -- ** RecommendationSummary+ RecommendationSummary (RecommendationSummary'),+ newRecommendationSummary,++ -- ** Repository+ Repository (Repository'),+ newRepository,++ -- ** RepositoryAnalysis+ RepositoryAnalysis (RepositoryAnalysis'),+ newRepositoryAnalysis,++ -- ** RepositoryAssociation+ RepositoryAssociation (RepositoryAssociation'),+ newRepositoryAssociation,++ -- ** RepositoryAssociationSummary+ RepositoryAssociationSummary (RepositoryAssociationSummary'),+ newRepositoryAssociationSummary,++ -- ** RepositoryHeadSourceCodeType+ RepositoryHeadSourceCodeType (RepositoryHeadSourceCodeType'),+ newRepositoryHeadSourceCodeType,++ -- ** RequestMetadata+ RequestMetadata (RequestMetadata'),+ newRequestMetadata,++ -- ** RuleMetadata+ RuleMetadata (RuleMetadata'),+ newRuleMetadata,++ -- ** S3BucketRepository+ S3BucketRepository (S3BucketRepository'),+ newS3BucketRepository,++ -- ** S3Repository+ S3Repository (S3Repository'),+ newS3Repository,++ -- ** S3RepositoryDetails+ S3RepositoryDetails (S3RepositoryDetails'),+ newS3RepositoryDetails,++ -- ** SourceCodeType+ SourceCodeType (SourceCodeType'),+ newSourceCodeType,++ -- ** ThirdPartySourceRepository+ ThirdPartySourceRepository (ThirdPartySourceRepository'),+ newThirdPartySourceRepository,+ )+where++import Amazonka.CodeGuruReviewer.AssociateRepository+import Amazonka.CodeGuruReviewer.CreateCodeReview+import Amazonka.CodeGuruReviewer.DescribeCodeReview+import Amazonka.CodeGuruReviewer.DescribeRecommendationFeedback+import Amazonka.CodeGuruReviewer.DescribeRepositoryAssociation+import Amazonka.CodeGuruReviewer.DisassociateRepository+import Amazonka.CodeGuruReviewer.Lens+import Amazonka.CodeGuruReviewer.ListCodeReviews+import Amazonka.CodeGuruReviewer.ListRecommendationFeedback+import Amazonka.CodeGuruReviewer.ListRecommendations+import Amazonka.CodeGuruReviewer.ListRepositoryAssociations+import Amazonka.CodeGuruReviewer.ListTagsForResource+import Amazonka.CodeGuruReviewer.PutRecommendationFeedback+import Amazonka.CodeGuruReviewer.TagResource+import Amazonka.CodeGuruReviewer.Types+import Amazonka.CodeGuruReviewer.UntagResource+import Amazonka.CodeGuruReviewer.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 'CodeGuruReviewer'.++-- $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/CodeGuruReviewer/AssociateRepository.hs view
@@ -0,0 +1,327 @@+{-# 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.CodeGuruReviewer.AssociateRepository+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Use to associate an Amazon Web Services CodeCommit repository or a+-- repository managed by Amazon Web Services CodeStar Connections with+-- Amazon CodeGuru Reviewer. When you associate a repository, CodeGuru+-- Reviewer reviews source code changes in the repository\'s pull requests+-- and provides automatic recommendations. You can view recommendations+-- using the CodeGuru Reviewer console. For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/recommendations.html Recommendations in Amazon CodeGuru Reviewer>+-- in the /Amazon CodeGuru Reviewer User Guide./+--+-- If you associate a CodeCommit or S3 repository, it must be in the same+-- Amazon Web Services Region and Amazon Web Services account where its+-- CodeGuru Reviewer code reviews are configured.+--+-- Bitbucket and GitHub Enterprise Server repositories are managed by+-- Amazon Web Services CodeStar Connections to connect to CodeGuru+-- Reviewer. For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/getting-started-associate-repository.html Associate a repository>+-- in the /Amazon CodeGuru Reviewer User Guide./+--+-- You cannot use the CodeGuru Reviewer SDK or the Amazon Web Services CLI+-- to associate a GitHub repository with Amazon CodeGuru Reviewer. To+-- associate a GitHub repository, use the console. For more information,+-- see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/getting-started-with-guru.html Getting started with CodeGuru Reviewer>+-- in the /CodeGuru Reviewer User Guide./+module Amazonka.CodeGuruReviewer.AssociateRepository+ ( -- * Creating a Request+ AssociateRepository (..),+ newAssociateRepository,++ -- * Request Lenses+ associateRepository_clientRequestToken,+ associateRepository_kmsKeyDetails,+ associateRepository_tags,+ associateRepository_repository,++ -- * Destructuring the Response+ AssociateRepositoryResponse (..),+ newAssociateRepositoryResponse,++ -- * Response Lenses+ associateRepositoryResponse_repositoryAssociation,+ associateRepositoryResponse_tags,+ associateRepositoryResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newAssociateRepository' smart constructor.+data AssociateRepository = AssociateRepository'+ { -- | Amazon CodeGuru Reviewer uses this value to prevent the accidental+ -- creation of duplicate repository associations if there are failures and+ -- retries.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | A @KMSKeyDetails@ object that contains:+ --+ -- - The encryption option for this repository association. It is either+ -- owned by Amazon Web Services Key Management Service (KMS)+ -- (@AWS_OWNED_CMK@) or customer managed (@CUSTOMER_MANAGED_CMK@).+ --+ -- - The ID of the Amazon Web Services KMS key that is associated with+ -- this repository association.+ kmsKeyDetails :: Prelude.Maybe KMSKeyDetails,+ -- | An array of key-value pairs used to tag an associated repository. A tag+ -- is a custom attribute label with two parts:+ --+ -- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+ -- @Secret@). Tag keys are case sensitive.+ --+ -- - An optional field known as a /tag value/ (for example,+ -- @111122223333@, @Production@, or a team name). Omitting the tag+ -- value is the same as using an empty string. Like tag keys, tag+ -- values are case sensitive.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The repository to associate.+ repository :: Repository+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateRepository' 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', 'associateRepository_clientRequestToken' - Amazon CodeGuru Reviewer uses this value to prevent the accidental+-- creation of duplicate repository associations if there are failures and+-- retries.+--+-- 'kmsKeyDetails', 'associateRepository_kmsKeyDetails' - A @KMSKeyDetails@ object that contains:+--+-- - The encryption option for this repository association. It is either+-- owned by Amazon Web Services Key Management Service (KMS)+-- (@AWS_OWNED_CMK@) or customer managed (@CUSTOMER_MANAGED_CMK@).+--+-- - The ID of the Amazon Web Services KMS key that is associated with+-- this repository association.+--+-- 'tags', 'associateRepository_tags' - An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+--+-- 'repository', 'associateRepository_repository' - The repository to associate.+newAssociateRepository ::+ -- | 'repository'+ Repository ->+ AssociateRepository+newAssociateRepository pRepository_ =+ AssociateRepository'+ { clientRequestToken =+ Prelude.Nothing,+ kmsKeyDetails = Prelude.Nothing,+ tags = Prelude.Nothing,+ repository = pRepository_+ }++-- | Amazon CodeGuru Reviewer uses this value to prevent the accidental+-- creation of duplicate repository associations if there are failures and+-- retries.+associateRepository_clientRequestToken :: Lens.Lens' AssociateRepository (Prelude.Maybe Prelude.Text)+associateRepository_clientRequestToken = Lens.lens (\AssociateRepository' {clientRequestToken} -> clientRequestToken) (\s@AssociateRepository' {} a -> s {clientRequestToken = a} :: AssociateRepository)++-- | A @KMSKeyDetails@ object that contains:+--+-- - The encryption option for this repository association. It is either+-- owned by Amazon Web Services Key Management Service (KMS)+-- (@AWS_OWNED_CMK@) or customer managed (@CUSTOMER_MANAGED_CMK@).+--+-- - The ID of the Amazon Web Services KMS key that is associated with+-- this repository association.+associateRepository_kmsKeyDetails :: Lens.Lens' AssociateRepository (Prelude.Maybe KMSKeyDetails)+associateRepository_kmsKeyDetails = Lens.lens (\AssociateRepository' {kmsKeyDetails} -> kmsKeyDetails) (\s@AssociateRepository' {} a -> s {kmsKeyDetails = a} :: AssociateRepository)++-- | An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+associateRepository_tags :: Lens.Lens' AssociateRepository (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+associateRepository_tags = Lens.lens (\AssociateRepository' {tags} -> tags) (\s@AssociateRepository' {} a -> s {tags = a} :: AssociateRepository) Prelude.. Lens.mapping Lens.coerced++-- | The repository to associate.+associateRepository_repository :: Lens.Lens' AssociateRepository Repository+associateRepository_repository = Lens.lens (\AssociateRepository' {repository} -> repository) (\s@AssociateRepository' {} a -> s {repository = a} :: AssociateRepository)++instance Core.AWSRequest AssociateRepository where+ type+ AWSResponse AssociateRepository =+ AssociateRepositoryResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ AssociateRepositoryResponse'+ Prelude.<$> (x Data..?> "RepositoryAssociation")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable AssociateRepository where+ hashWithSalt _salt AssociateRepository' {..} =+ _salt+ `Prelude.hashWithSalt` clientRequestToken+ `Prelude.hashWithSalt` kmsKeyDetails+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` repository++instance Prelude.NFData AssociateRepository where+ rnf AssociateRepository' {..} =+ Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf kmsKeyDetails+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf repository++instance Data.ToHeaders AssociateRepository where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON AssociateRepository where+ toJSON AssociateRepository' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ClientRequestToken" Data..=)+ Prelude.<$> clientRequestToken,+ ("KMSKeyDetails" Data..=) Prelude.<$> kmsKeyDetails,+ ("Tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("Repository" Data..= repository)+ ]+ )++instance Data.ToPath AssociateRepository where+ toPath = Prelude.const "/associations"++instance Data.ToQuery AssociateRepository where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAssociateRepositoryResponse' smart constructor.+data AssociateRepositoryResponse = AssociateRepositoryResponse'+ { -- | Information about the repository association.+ repositoryAssociation :: Prelude.Maybe RepositoryAssociation,+ -- | An array of key-value pairs used to tag an associated repository. A tag+ -- is a custom attribute label with two parts:+ --+ -- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+ -- @Secret@). Tag keys are case sensitive.+ --+ -- - An optional field known as a /tag value/ (for example,+ -- @111122223333@, @Production@, or a team name). Omitting the tag+ -- value is the same as using an empty string. Like tag keys, tag+ -- values are case sensitive.+ 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 'AssociateRepositoryResponse' 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:+--+-- 'repositoryAssociation', 'associateRepositoryResponse_repositoryAssociation' - Information about the repository association.+--+-- 'tags', 'associateRepositoryResponse_tags' - An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+--+-- 'httpStatus', 'associateRepositoryResponse_httpStatus' - The response's http status code.+newAssociateRepositoryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ AssociateRepositoryResponse+newAssociateRepositoryResponse pHttpStatus_ =+ AssociateRepositoryResponse'+ { repositoryAssociation =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the repository association.+associateRepositoryResponse_repositoryAssociation :: Lens.Lens' AssociateRepositoryResponse (Prelude.Maybe RepositoryAssociation)+associateRepositoryResponse_repositoryAssociation = Lens.lens (\AssociateRepositoryResponse' {repositoryAssociation} -> repositoryAssociation) (\s@AssociateRepositoryResponse' {} a -> s {repositoryAssociation = a} :: AssociateRepositoryResponse)++-- | An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+associateRepositoryResponse_tags :: Lens.Lens' AssociateRepositoryResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+associateRepositoryResponse_tags = Lens.lens (\AssociateRepositoryResponse' {tags} -> tags) (\s@AssociateRepositoryResponse' {} a -> s {tags = a} :: AssociateRepositoryResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+associateRepositoryResponse_httpStatus :: Lens.Lens' AssociateRepositoryResponse Prelude.Int+associateRepositoryResponse_httpStatus = Lens.lens (\AssociateRepositoryResponse' {httpStatus} -> httpStatus) (\s@AssociateRepositoryResponse' {} a -> s {httpStatus = a} :: AssociateRepositoryResponse)++instance Prelude.NFData AssociateRepositoryResponse where+ rnf AssociateRepositoryResponse' {..} =+ Prelude.rnf repositoryAssociation+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/CreateCodeReview.hs view
@@ -0,0 +1,254 @@+{-# 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.CodeGuruReviewer.CreateCodeReview+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Use to create a code review with a+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReviewType.html CodeReviewType>+-- of @RepositoryAnalysis@. This type of code review analyzes all code+-- under a specified branch in an associated repository. @PullRequest@ code+-- reviews are automatically triggered by a pull request.+module Amazonka.CodeGuruReviewer.CreateCodeReview+ ( -- * Creating a Request+ CreateCodeReview (..),+ newCreateCodeReview,++ -- * Request Lenses+ createCodeReview_clientRequestToken,+ createCodeReview_name,+ createCodeReview_repositoryAssociationArn,+ createCodeReview_type,++ -- * Destructuring the Response+ CreateCodeReviewResponse (..),+ newCreateCodeReviewResponse,++ -- * Response Lenses+ createCodeReviewResponse_codeReview,+ createCodeReviewResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newCreateCodeReview' smart constructor.+data CreateCodeReview = CreateCodeReview'+ { -- | Amazon CodeGuru Reviewer uses this value to prevent the accidental+ -- creation of duplicate code reviews if there are failures and retries.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | The name of the code review. The name of each code review in your Amazon+ -- Web Services account must be unique.+ name :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+ -- object. You can retrieve this ARN by calling+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+ --+ -- A code review can only be created on an associated repository. This is+ -- the ARN of the associated repository.+ repositoryAssociationArn :: Prelude.Text,+ -- | The type of code review to create. This is specified using a+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReviewType.html CodeReviewType>+ -- object. You can create a code review only of type @RepositoryAnalysis@.+ type' :: CodeReviewType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateCodeReview' 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', 'createCodeReview_clientRequestToken' - Amazon CodeGuru Reviewer uses this value to prevent the accidental+-- creation of duplicate code reviews if there are failures and retries.+--+-- 'name', 'createCodeReview_name' - The name of the code review. The name of each code review in your Amazon+-- Web Services account must be unique.+--+-- 'repositoryAssociationArn', 'createCodeReview_repositoryAssociationArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+--+-- A code review can only be created on an associated repository. This is+-- the ARN of the associated repository.+--+-- 'type'', 'createCodeReview_type' - The type of code review to create. This is specified using a+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReviewType.html CodeReviewType>+-- object. You can create a code review only of type @RepositoryAnalysis@.+newCreateCodeReview ::+ -- | 'name'+ Prelude.Text ->+ -- | 'repositoryAssociationArn'+ Prelude.Text ->+ -- | 'type''+ CodeReviewType ->+ CreateCodeReview+newCreateCodeReview+ pName_+ pRepositoryAssociationArn_+ pType_ =+ CreateCodeReview'+ { clientRequestToken =+ Prelude.Nothing,+ name = pName_,+ repositoryAssociationArn =+ pRepositoryAssociationArn_,+ type' = pType_+ }++-- | Amazon CodeGuru Reviewer uses this value to prevent the accidental+-- creation of duplicate code reviews if there are failures and retries.+createCodeReview_clientRequestToken :: Lens.Lens' CreateCodeReview (Prelude.Maybe Prelude.Text)+createCodeReview_clientRequestToken = Lens.lens (\CreateCodeReview' {clientRequestToken} -> clientRequestToken) (\s@CreateCodeReview' {} a -> s {clientRequestToken = a} :: CreateCodeReview)++-- | The name of the code review. The name of each code review in your Amazon+-- Web Services account must be unique.+createCodeReview_name :: Lens.Lens' CreateCodeReview Prelude.Text+createCodeReview_name = Lens.lens (\CreateCodeReview' {name} -> name) (\s@CreateCodeReview' {} a -> s {name = a} :: CreateCodeReview)++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+--+-- A code review can only be created on an associated repository. This is+-- the ARN of the associated repository.+createCodeReview_repositoryAssociationArn :: Lens.Lens' CreateCodeReview Prelude.Text+createCodeReview_repositoryAssociationArn = Lens.lens (\CreateCodeReview' {repositoryAssociationArn} -> repositoryAssociationArn) (\s@CreateCodeReview' {} a -> s {repositoryAssociationArn = a} :: CreateCodeReview)++-- | The type of code review to create. This is specified using a+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReviewType.html CodeReviewType>+-- object. You can create a code review only of type @RepositoryAnalysis@.+createCodeReview_type :: Lens.Lens' CreateCodeReview CodeReviewType+createCodeReview_type = Lens.lens (\CreateCodeReview' {type'} -> type') (\s@CreateCodeReview' {} a -> s {type' = a} :: CreateCodeReview)++instance Core.AWSRequest CreateCodeReview where+ type+ AWSResponse CreateCodeReview =+ CreateCodeReviewResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateCodeReviewResponse'+ Prelude.<$> (x Data..?> "CodeReview")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateCodeReview where+ hashWithSalt _salt CreateCodeReview' {..} =+ _salt+ `Prelude.hashWithSalt` clientRequestToken+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` repositoryAssociationArn+ `Prelude.hashWithSalt` type'++instance Prelude.NFData CreateCodeReview where+ rnf CreateCodeReview' {..} =+ Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf repositoryAssociationArn+ `Prelude.seq` Prelude.rnf type'++instance Data.ToHeaders CreateCodeReview where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateCodeReview where+ toJSON CreateCodeReview' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ClientRequestToken" Data..=)+ Prelude.<$> clientRequestToken,+ Prelude.Just ("Name" Data..= name),+ Prelude.Just+ ( "RepositoryAssociationArn"+ Data..= repositoryAssociationArn+ ),+ Prelude.Just ("Type" Data..= type')+ ]+ )++instance Data.ToPath CreateCodeReview where+ toPath = Prelude.const "/codereviews"++instance Data.ToQuery CreateCodeReview where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateCodeReviewResponse' smart constructor.+data CreateCodeReviewResponse = CreateCodeReviewResponse'+ { codeReview :: Prelude.Maybe CodeReview,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateCodeReviewResponse' 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:+--+-- 'codeReview', 'createCodeReviewResponse_codeReview' - Undocumented member.+--+-- 'httpStatus', 'createCodeReviewResponse_httpStatus' - The response's http status code.+newCreateCodeReviewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateCodeReviewResponse+newCreateCodeReviewResponse pHttpStatus_ =+ CreateCodeReviewResponse'+ { codeReview =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+createCodeReviewResponse_codeReview :: Lens.Lens' CreateCodeReviewResponse (Prelude.Maybe CodeReview)+createCodeReviewResponse_codeReview = Lens.lens (\CreateCodeReviewResponse' {codeReview} -> codeReview) (\s@CreateCodeReviewResponse' {} a -> s {codeReview = a} :: CreateCodeReviewResponse)++-- | The response's http status code.+createCodeReviewResponse_httpStatus :: Lens.Lens' CreateCodeReviewResponse Prelude.Int+createCodeReviewResponse_httpStatus = Lens.lens (\CreateCodeReviewResponse' {httpStatus} -> httpStatus) (\s@CreateCodeReviewResponse' {} a -> s {httpStatus = a} :: CreateCodeReviewResponse)++instance Prelude.NFData CreateCodeReviewResponse where+ rnf CreateCodeReviewResponse' {..} =+ Prelude.rnf codeReview+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/DescribeCodeReview.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.CodeGuruReviewer.DescribeCodeReview+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the metadata associated with the code review along with its+-- status.+module Amazonka.CodeGuruReviewer.DescribeCodeReview+ ( -- * Creating a Request+ DescribeCodeReview (..),+ newDescribeCodeReview,++ -- * Request Lenses+ describeCodeReview_codeReviewArn,++ -- * Destructuring the Response+ DescribeCodeReviewResponse (..),+ newDescribeCodeReviewResponse,++ -- * Response Lenses+ describeCodeReviewResponse_codeReview,+ describeCodeReviewResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newDescribeCodeReview' smart constructor.+data DescribeCodeReview = DescribeCodeReview'+ { -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+ -- object.+ codeReviewArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeCodeReview' 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:+--+-- 'codeReviewArn', 'describeCodeReview_codeReviewArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+newDescribeCodeReview ::+ -- | 'codeReviewArn'+ Prelude.Text ->+ DescribeCodeReview+newDescribeCodeReview pCodeReviewArn_ =+ DescribeCodeReview'+ { codeReviewArn =+ pCodeReviewArn_+ }++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+describeCodeReview_codeReviewArn :: Lens.Lens' DescribeCodeReview Prelude.Text+describeCodeReview_codeReviewArn = Lens.lens (\DescribeCodeReview' {codeReviewArn} -> codeReviewArn) (\s@DescribeCodeReview' {} a -> s {codeReviewArn = a} :: DescribeCodeReview)++instance Core.AWSRequest DescribeCodeReview where+ type+ AWSResponse DescribeCodeReview =+ DescribeCodeReviewResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeCodeReviewResponse'+ Prelude.<$> (x Data..?> "CodeReview")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeCodeReview where+ hashWithSalt _salt DescribeCodeReview' {..} =+ _salt `Prelude.hashWithSalt` codeReviewArn++instance Prelude.NFData DescribeCodeReview where+ rnf DescribeCodeReview' {..} =+ Prelude.rnf codeReviewArn++instance Data.ToHeaders DescribeCodeReview where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeCodeReview where+ toPath DescribeCodeReview' {..} =+ Prelude.mconcat+ ["/codereviews/", Data.toBS codeReviewArn]++instance Data.ToQuery DescribeCodeReview where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeCodeReviewResponse' smart constructor.+data DescribeCodeReviewResponse = DescribeCodeReviewResponse'+ { -- | Information about the code review.+ codeReview :: Prelude.Maybe CodeReview,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeCodeReviewResponse' 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:+--+-- 'codeReview', 'describeCodeReviewResponse_codeReview' - Information about the code review.+--+-- 'httpStatus', 'describeCodeReviewResponse_httpStatus' - The response's http status code.+newDescribeCodeReviewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeCodeReviewResponse+newDescribeCodeReviewResponse pHttpStatus_ =+ DescribeCodeReviewResponse'+ { codeReview =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the code review.+describeCodeReviewResponse_codeReview :: Lens.Lens' DescribeCodeReviewResponse (Prelude.Maybe CodeReview)+describeCodeReviewResponse_codeReview = Lens.lens (\DescribeCodeReviewResponse' {codeReview} -> codeReview) (\s@DescribeCodeReviewResponse' {} a -> s {codeReview = a} :: DescribeCodeReviewResponse)++-- | The response's http status code.+describeCodeReviewResponse_httpStatus :: Lens.Lens' DescribeCodeReviewResponse Prelude.Int+describeCodeReviewResponse_httpStatus = Lens.lens (\DescribeCodeReviewResponse' {httpStatus} -> httpStatus) (\s@DescribeCodeReviewResponse' {} a -> s {httpStatus = a} :: DescribeCodeReviewResponse)++instance Prelude.NFData DescribeCodeReviewResponse where+ rnf DescribeCodeReviewResponse' {..} =+ Prelude.rnf codeReview+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/DescribeRecommendationFeedback.hs view
@@ -0,0 +1,244 @@+{-# 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.CodeGuruReviewer.DescribeRecommendationFeedback+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the customer feedback for a CodeGuru Reviewer recommendation.+module Amazonka.CodeGuruReviewer.DescribeRecommendationFeedback+ ( -- * Creating a Request+ DescribeRecommendationFeedback (..),+ newDescribeRecommendationFeedback,++ -- * Request Lenses+ describeRecommendationFeedback_userId,+ describeRecommendationFeedback_codeReviewArn,+ describeRecommendationFeedback_recommendationId,++ -- * Destructuring the Response+ DescribeRecommendationFeedbackResponse (..),+ newDescribeRecommendationFeedbackResponse,++ -- * Response Lenses+ describeRecommendationFeedbackResponse_recommendationFeedback,+ describeRecommendationFeedbackResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newDescribeRecommendationFeedback' smart constructor.+data DescribeRecommendationFeedback = DescribeRecommendationFeedback'+ { -- | Optional parameter to describe the feedback for a given user. If this is+ -- not supplied, it defaults to the user making the request.+ --+ -- The @UserId@ is an IAM principal that can be specified as an Amazon Web+ -- Services account ID or an Amazon Resource Name (ARN). For more+ -- information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+ -- in the /Amazon Web Services Identity and Access Management User Guide/.+ userId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+ -- object.+ codeReviewArn :: Prelude.Text,+ -- | The recommendation ID that can be used to track the provided+ -- recommendations and then to collect the feedback.+ recommendationId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeRecommendationFeedback' 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:+--+-- 'userId', 'describeRecommendationFeedback_userId' - Optional parameter to describe the feedback for a given user. If this is+-- not supplied, it defaults to the user making the request.+--+-- The @UserId@ is an IAM principal that can be specified as an Amazon Web+-- Services account ID or an Amazon Resource Name (ARN). For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+-- in the /Amazon Web Services Identity and Access Management User Guide/.+--+-- 'codeReviewArn', 'describeRecommendationFeedback_codeReviewArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+--+-- 'recommendationId', 'describeRecommendationFeedback_recommendationId' - The recommendation ID that can be used to track the provided+-- recommendations and then to collect the feedback.+newDescribeRecommendationFeedback ::+ -- | 'codeReviewArn'+ Prelude.Text ->+ -- | 'recommendationId'+ Prelude.Text ->+ DescribeRecommendationFeedback+newDescribeRecommendationFeedback+ pCodeReviewArn_+ pRecommendationId_ =+ DescribeRecommendationFeedback'+ { userId =+ Prelude.Nothing,+ codeReviewArn = pCodeReviewArn_,+ recommendationId = pRecommendationId_+ }++-- | Optional parameter to describe the feedback for a given user. If this is+-- not supplied, it defaults to the user making the request.+--+-- The @UserId@ is an IAM principal that can be specified as an Amazon Web+-- Services account ID or an Amazon Resource Name (ARN). For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+-- in the /Amazon Web Services Identity and Access Management User Guide/.+describeRecommendationFeedback_userId :: Lens.Lens' DescribeRecommendationFeedback (Prelude.Maybe Prelude.Text)+describeRecommendationFeedback_userId = Lens.lens (\DescribeRecommendationFeedback' {userId} -> userId) (\s@DescribeRecommendationFeedback' {} a -> s {userId = a} :: DescribeRecommendationFeedback)++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+describeRecommendationFeedback_codeReviewArn :: Lens.Lens' DescribeRecommendationFeedback Prelude.Text+describeRecommendationFeedback_codeReviewArn = Lens.lens (\DescribeRecommendationFeedback' {codeReviewArn} -> codeReviewArn) (\s@DescribeRecommendationFeedback' {} a -> s {codeReviewArn = a} :: DescribeRecommendationFeedback)++-- | The recommendation ID that can be used to track the provided+-- recommendations and then to collect the feedback.+describeRecommendationFeedback_recommendationId :: Lens.Lens' DescribeRecommendationFeedback Prelude.Text+describeRecommendationFeedback_recommendationId = Lens.lens (\DescribeRecommendationFeedback' {recommendationId} -> recommendationId) (\s@DescribeRecommendationFeedback' {} a -> s {recommendationId = a} :: DescribeRecommendationFeedback)++instance+ Core.AWSRequest+ DescribeRecommendationFeedback+ where+ type+ AWSResponse DescribeRecommendationFeedback =+ DescribeRecommendationFeedbackResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeRecommendationFeedbackResponse'+ Prelude.<$> (x Data..?> "RecommendationFeedback")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeRecommendationFeedback+ where+ hashWithSalt+ _salt+ DescribeRecommendationFeedback' {..} =+ _salt+ `Prelude.hashWithSalt` userId+ `Prelude.hashWithSalt` codeReviewArn+ `Prelude.hashWithSalt` recommendationId++instance+ Prelude.NFData+ DescribeRecommendationFeedback+ where+ rnf DescribeRecommendationFeedback' {..} =+ Prelude.rnf userId+ `Prelude.seq` Prelude.rnf codeReviewArn+ `Prelude.seq` Prelude.rnf recommendationId++instance+ Data.ToHeaders+ DescribeRecommendationFeedback+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeRecommendationFeedback where+ toPath DescribeRecommendationFeedback' {..} =+ Prelude.mconcat+ ["/feedback/", Data.toBS codeReviewArn]++instance Data.ToQuery DescribeRecommendationFeedback where+ toQuery DescribeRecommendationFeedback' {..} =+ Prelude.mconcat+ [ "UserId" Data.=: userId,+ "RecommendationId" Data.=: recommendationId+ ]++-- | /See:/ 'newDescribeRecommendationFeedbackResponse' smart constructor.+data DescribeRecommendationFeedbackResponse = DescribeRecommendationFeedbackResponse'+ { -- | The recommendation feedback given by the user.+ recommendationFeedback :: Prelude.Maybe RecommendationFeedback,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeRecommendationFeedbackResponse' 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:+--+-- 'recommendationFeedback', 'describeRecommendationFeedbackResponse_recommendationFeedback' - The recommendation feedback given by the user.+--+-- 'httpStatus', 'describeRecommendationFeedbackResponse_httpStatus' - The response's http status code.+newDescribeRecommendationFeedbackResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeRecommendationFeedbackResponse+newDescribeRecommendationFeedbackResponse+ pHttpStatus_ =+ DescribeRecommendationFeedbackResponse'+ { recommendationFeedback =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The recommendation feedback given by the user.+describeRecommendationFeedbackResponse_recommendationFeedback :: Lens.Lens' DescribeRecommendationFeedbackResponse (Prelude.Maybe RecommendationFeedback)+describeRecommendationFeedbackResponse_recommendationFeedback = Lens.lens (\DescribeRecommendationFeedbackResponse' {recommendationFeedback} -> recommendationFeedback) (\s@DescribeRecommendationFeedbackResponse' {} a -> s {recommendationFeedback = a} :: DescribeRecommendationFeedbackResponse)++-- | The response's http status code.+describeRecommendationFeedbackResponse_httpStatus :: Lens.Lens' DescribeRecommendationFeedbackResponse Prelude.Int+describeRecommendationFeedbackResponse_httpStatus = Lens.lens (\DescribeRecommendationFeedbackResponse' {httpStatus} -> httpStatus) (\s@DescribeRecommendationFeedbackResponse' {} a -> s {httpStatus = a} :: DescribeRecommendationFeedbackResponse)++instance+ Prelude.NFData+ DescribeRecommendationFeedbackResponse+ where+ rnf DescribeRecommendationFeedbackResponse' {..} =+ Prelude.rnf recommendationFeedback+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/DescribeRepositoryAssociation.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.CodeGuruReviewer.DescribeRepositoryAssociation+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object that contains information about the requested repository+-- association.+module Amazonka.CodeGuruReviewer.DescribeRepositoryAssociation+ ( -- * Creating a Request+ DescribeRepositoryAssociation (..),+ newDescribeRepositoryAssociation,++ -- * Request Lenses+ describeRepositoryAssociation_associationArn,++ -- * Destructuring the Response+ DescribeRepositoryAssociationResponse (..),+ newDescribeRepositoryAssociationResponse,++ -- * Response Lenses+ describeRepositoryAssociationResponse_repositoryAssociation,+ describeRepositoryAssociationResponse_tags,+ describeRepositoryAssociationResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newDescribeRepositoryAssociation' smart constructor.+data DescribeRepositoryAssociation = DescribeRepositoryAssociation'+ { -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+ -- object. You can retrieve this ARN by calling+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+ associationArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeRepositoryAssociation' 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:+--+-- 'associationArn', 'describeRepositoryAssociation_associationArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+newDescribeRepositoryAssociation ::+ -- | 'associationArn'+ Prelude.Text ->+ DescribeRepositoryAssociation+newDescribeRepositoryAssociation pAssociationArn_ =+ DescribeRepositoryAssociation'+ { associationArn =+ pAssociationArn_+ }++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+describeRepositoryAssociation_associationArn :: Lens.Lens' DescribeRepositoryAssociation Prelude.Text+describeRepositoryAssociation_associationArn = Lens.lens (\DescribeRepositoryAssociation' {associationArn} -> associationArn) (\s@DescribeRepositoryAssociation' {} a -> s {associationArn = a} :: DescribeRepositoryAssociation)++instance+ Core.AWSRequest+ DescribeRepositoryAssociation+ where+ type+ AWSResponse DescribeRepositoryAssociation =+ DescribeRepositoryAssociationResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeRepositoryAssociationResponse'+ Prelude.<$> (x Data..?> "RepositoryAssociation")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeRepositoryAssociation+ where+ hashWithSalt _salt DescribeRepositoryAssociation' {..} =+ _salt `Prelude.hashWithSalt` associationArn++instance Prelude.NFData DescribeRepositoryAssociation where+ rnf DescribeRepositoryAssociation' {..} =+ Prelude.rnf associationArn++instance Data.ToHeaders DescribeRepositoryAssociation where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeRepositoryAssociation where+ toPath DescribeRepositoryAssociation' {..} =+ Prelude.mconcat+ ["/associations/", Data.toBS associationArn]++instance Data.ToQuery DescribeRepositoryAssociation where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeRepositoryAssociationResponse' smart constructor.+data DescribeRepositoryAssociationResponse = DescribeRepositoryAssociationResponse'+ { -- | Information about the repository association.+ repositoryAssociation :: Prelude.Maybe RepositoryAssociation,+ -- | An array of key-value pairs used to tag an associated repository. A tag+ -- is a custom attribute label with two parts:+ --+ -- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+ -- @Secret@). Tag keys are case sensitive.+ --+ -- - An optional field known as a /tag value/ (for example,+ -- @111122223333@, @Production@, or a team name). Omitting the tag+ -- value is the same as using an empty string. Like tag keys, tag+ -- values are case sensitive.+ 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 'DescribeRepositoryAssociationResponse' 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:+--+-- 'repositoryAssociation', 'describeRepositoryAssociationResponse_repositoryAssociation' - Information about the repository association.+--+-- 'tags', 'describeRepositoryAssociationResponse_tags' - An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+--+-- 'httpStatus', 'describeRepositoryAssociationResponse_httpStatus' - The response's http status code.+newDescribeRepositoryAssociationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeRepositoryAssociationResponse+newDescribeRepositoryAssociationResponse pHttpStatus_ =+ DescribeRepositoryAssociationResponse'+ { repositoryAssociation =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the repository association.+describeRepositoryAssociationResponse_repositoryAssociation :: Lens.Lens' DescribeRepositoryAssociationResponse (Prelude.Maybe RepositoryAssociation)+describeRepositoryAssociationResponse_repositoryAssociation = Lens.lens (\DescribeRepositoryAssociationResponse' {repositoryAssociation} -> repositoryAssociation) (\s@DescribeRepositoryAssociationResponse' {} a -> s {repositoryAssociation = a} :: DescribeRepositoryAssociationResponse)++-- | An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+describeRepositoryAssociationResponse_tags :: Lens.Lens' DescribeRepositoryAssociationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeRepositoryAssociationResponse_tags = Lens.lens (\DescribeRepositoryAssociationResponse' {tags} -> tags) (\s@DescribeRepositoryAssociationResponse' {} a -> s {tags = a} :: DescribeRepositoryAssociationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeRepositoryAssociationResponse_httpStatus :: Lens.Lens' DescribeRepositoryAssociationResponse Prelude.Int+describeRepositoryAssociationResponse_httpStatus = Lens.lens (\DescribeRepositoryAssociationResponse' {httpStatus} -> httpStatus) (\s@DescribeRepositoryAssociationResponse' {} a -> s {httpStatus = a} :: DescribeRepositoryAssociationResponse)++instance+ Prelude.NFData+ DescribeRepositoryAssociationResponse+ where+ rnf DescribeRepositoryAssociationResponse' {..} =+ Prelude.rnf repositoryAssociation+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/DisassociateRepository.hs view
@@ -0,0 +1,215 @@+{-# 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.CodeGuruReviewer.DisassociateRepository+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the association between Amazon CodeGuru Reviewer and a+-- repository.+module Amazonka.CodeGuruReviewer.DisassociateRepository+ ( -- * Creating a Request+ DisassociateRepository (..),+ newDisassociateRepository,++ -- * Request Lenses+ disassociateRepository_associationArn,++ -- * Destructuring the Response+ DisassociateRepositoryResponse (..),+ newDisassociateRepositoryResponse,++ -- * Response Lenses+ disassociateRepositoryResponse_repositoryAssociation,+ disassociateRepositoryResponse_tags,+ disassociateRepositoryResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newDisassociateRepository' smart constructor.+data DisassociateRepository = DisassociateRepository'+ { -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+ -- object. You can retrieve this ARN by calling+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+ associationArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateRepository' 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:+--+-- 'associationArn', 'disassociateRepository_associationArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+newDisassociateRepository ::+ -- | 'associationArn'+ Prelude.Text ->+ DisassociateRepository+newDisassociateRepository pAssociationArn_ =+ DisassociateRepository'+ { associationArn =+ pAssociationArn_+ }++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+disassociateRepository_associationArn :: Lens.Lens' DisassociateRepository Prelude.Text+disassociateRepository_associationArn = Lens.lens (\DisassociateRepository' {associationArn} -> associationArn) (\s@DisassociateRepository' {} a -> s {associationArn = a} :: DisassociateRepository)++instance Core.AWSRequest DisassociateRepository where+ type+ AWSResponse DisassociateRepository =+ DisassociateRepositoryResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DisassociateRepositoryResponse'+ Prelude.<$> (x Data..?> "RepositoryAssociation")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DisassociateRepository where+ hashWithSalt _salt DisassociateRepository' {..} =+ _salt `Prelude.hashWithSalt` associationArn++instance Prelude.NFData DisassociateRepository where+ rnf DisassociateRepository' {..} =+ Prelude.rnf associationArn++instance Data.ToHeaders DisassociateRepository where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DisassociateRepository where+ toPath DisassociateRepository' {..} =+ Prelude.mconcat+ ["/associations/", Data.toBS associationArn]++instance Data.ToQuery DisassociateRepository where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDisassociateRepositoryResponse' smart constructor.+data DisassociateRepositoryResponse = DisassociateRepositoryResponse'+ { -- | Information about the disassociated repository.+ repositoryAssociation :: Prelude.Maybe RepositoryAssociation,+ -- | An array of key-value pairs used to tag an associated repository. A tag+ -- is a custom attribute label with two parts:+ --+ -- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+ -- @Secret@). Tag keys are case sensitive.+ --+ -- - An optional field known as a /tag value/ (for example,+ -- @111122223333@, @Production@, or a team name). Omitting the tag+ -- value is the same as using an empty string. Like tag keys, tag+ -- values are case sensitive.+ 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 'DisassociateRepositoryResponse' 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:+--+-- 'repositoryAssociation', 'disassociateRepositoryResponse_repositoryAssociation' - Information about the disassociated repository.+--+-- 'tags', 'disassociateRepositoryResponse_tags' - An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+--+-- 'httpStatus', 'disassociateRepositoryResponse_httpStatus' - The response's http status code.+newDisassociateRepositoryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DisassociateRepositoryResponse+newDisassociateRepositoryResponse pHttpStatus_ =+ DisassociateRepositoryResponse'+ { repositoryAssociation =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the disassociated repository.+disassociateRepositoryResponse_repositoryAssociation :: Lens.Lens' DisassociateRepositoryResponse (Prelude.Maybe RepositoryAssociation)+disassociateRepositoryResponse_repositoryAssociation = Lens.lens (\DisassociateRepositoryResponse' {repositoryAssociation} -> repositoryAssociation) (\s@DisassociateRepositoryResponse' {} a -> s {repositoryAssociation = a} :: DisassociateRepositoryResponse)++-- | An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+disassociateRepositoryResponse_tags :: Lens.Lens' DisassociateRepositoryResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+disassociateRepositoryResponse_tags = Lens.lens (\DisassociateRepositoryResponse' {tags} -> tags) (\s@DisassociateRepositoryResponse' {} a -> s {tags = a} :: DisassociateRepositoryResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+disassociateRepositoryResponse_httpStatus :: Lens.Lens' DisassociateRepositoryResponse Prelude.Int+disassociateRepositoryResponse_httpStatus = Lens.lens (\DisassociateRepositoryResponse' {httpStatus} -> httpStatus) (\s@DisassociateRepositoryResponse' {} a -> s {httpStatus = a} :: DisassociateRepositoryResponse)++instance+ Prelude.NFData+ DisassociateRepositoryResponse+ where+ rnf DisassociateRepositoryResponse' {..} =+ Prelude.rnf repositoryAssociation+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/Lens.hs view
@@ -0,0 +1,329 @@+{-# 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.CodeGuruReviewer.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.CodeGuruReviewer.Lens+ ( -- * Operations++ -- ** AssociateRepository+ associateRepository_clientRequestToken,+ associateRepository_kmsKeyDetails,+ associateRepository_tags,+ associateRepository_repository,+ associateRepositoryResponse_repositoryAssociation,+ associateRepositoryResponse_tags,+ associateRepositoryResponse_httpStatus,++ -- ** CreateCodeReview+ createCodeReview_clientRequestToken,+ createCodeReview_name,+ createCodeReview_repositoryAssociationArn,+ createCodeReview_type,+ createCodeReviewResponse_codeReview,+ createCodeReviewResponse_httpStatus,++ -- ** DescribeCodeReview+ describeCodeReview_codeReviewArn,+ describeCodeReviewResponse_codeReview,+ describeCodeReviewResponse_httpStatus,++ -- ** DescribeRecommendationFeedback+ describeRecommendationFeedback_userId,+ describeRecommendationFeedback_codeReviewArn,+ describeRecommendationFeedback_recommendationId,+ describeRecommendationFeedbackResponse_recommendationFeedback,+ describeRecommendationFeedbackResponse_httpStatus,++ -- ** DescribeRepositoryAssociation+ describeRepositoryAssociation_associationArn,+ describeRepositoryAssociationResponse_repositoryAssociation,+ describeRepositoryAssociationResponse_tags,+ describeRepositoryAssociationResponse_httpStatus,++ -- ** DisassociateRepository+ disassociateRepository_associationArn,+ disassociateRepositoryResponse_repositoryAssociation,+ disassociateRepositoryResponse_tags,+ disassociateRepositoryResponse_httpStatus,++ -- ** ListCodeReviews+ listCodeReviews_maxResults,+ listCodeReviews_nextToken,+ listCodeReviews_providerTypes,+ listCodeReviews_repositoryNames,+ listCodeReviews_states,+ listCodeReviews_type,+ listCodeReviewsResponse_codeReviewSummaries,+ listCodeReviewsResponse_nextToken,+ listCodeReviewsResponse_httpStatus,++ -- ** ListRecommendationFeedback+ listRecommendationFeedback_maxResults,+ listRecommendationFeedback_nextToken,+ listRecommendationFeedback_recommendationIds,+ listRecommendationFeedback_userIds,+ listRecommendationFeedback_codeReviewArn,+ listRecommendationFeedbackResponse_nextToken,+ listRecommendationFeedbackResponse_recommendationFeedbackSummaries,+ listRecommendationFeedbackResponse_httpStatus,++ -- ** ListRecommendations+ listRecommendations_maxResults,+ listRecommendations_nextToken,+ listRecommendations_codeReviewArn,+ listRecommendationsResponse_nextToken,+ listRecommendationsResponse_recommendationSummaries,+ listRecommendationsResponse_httpStatus,++ -- ** ListRepositoryAssociations+ listRepositoryAssociations_maxResults,+ listRepositoryAssociations_names,+ listRepositoryAssociations_nextToken,+ listRepositoryAssociations_owners,+ listRepositoryAssociations_providerTypes,+ listRepositoryAssociations_states,+ listRepositoryAssociationsResponse_nextToken,+ listRepositoryAssociationsResponse_repositoryAssociationSummaries,+ listRepositoryAssociationsResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** PutRecommendationFeedback+ putRecommendationFeedback_codeReviewArn,+ putRecommendationFeedback_recommendationId,+ putRecommendationFeedback_reactions,+ putRecommendationFeedbackResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceArn,+ tagResource_tags,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_resourceArn,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- * Types++ -- ** BranchDiffSourceCodeType+ branchDiffSourceCodeType_sourceBranchName,+ branchDiffSourceCodeType_destinationBranchName,++ -- ** CodeArtifacts+ codeArtifacts_buildArtifactsObjectKey,+ codeArtifacts_sourceCodeArtifactsObjectKey,++ -- ** CodeCommitRepository+ codeCommitRepository_name,++ -- ** CodeReview+ codeReview_analysisTypes,+ codeReview_associationArn,+ codeReview_codeReviewArn,+ codeReview_configFileState,+ codeReview_createdTimeStamp,+ codeReview_lastUpdatedTimeStamp,+ codeReview_metrics,+ codeReview_name,+ codeReview_owner,+ codeReview_providerType,+ codeReview_pullRequestId,+ codeReview_repositoryName,+ codeReview_sourceCodeType,+ codeReview_state,+ codeReview_stateReason,+ codeReview_type,++ -- ** CodeReviewSummary+ codeReviewSummary_codeReviewArn,+ codeReviewSummary_createdTimeStamp,+ codeReviewSummary_lastUpdatedTimeStamp,+ codeReviewSummary_metricsSummary,+ codeReviewSummary_name,+ codeReviewSummary_owner,+ codeReviewSummary_providerType,+ codeReviewSummary_pullRequestId,+ codeReviewSummary_repositoryName,+ codeReviewSummary_sourceCodeType,+ codeReviewSummary_state,+ codeReviewSummary_type,++ -- ** CodeReviewType+ codeReviewType_analysisTypes,+ codeReviewType_repositoryAnalysis,++ -- ** CommitDiffSourceCodeType+ commitDiffSourceCodeType_destinationCommit,+ commitDiffSourceCodeType_mergeBaseCommit,+ commitDiffSourceCodeType_sourceCommit,++ -- ** EventInfo+ eventInfo_name,+ eventInfo_state,++ -- ** KMSKeyDetails+ kmsKeyDetails_encryptionOption,+ kmsKeyDetails_kmsKeyId,++ -- ** Metrics+ metrics_findingsCount,+ metrics_meteredLinesOfCodeCount,+ metrics_suppressedLinesOfCodeCount,++ -- ** MetricsSummary+ metricsSummary_findingsCount,+ metricsSummary_meteredLinesOfCodeCount,+ metricsSummary_suppressedLinesOfCodeCount,++ -- ** RecommendationFeedback+ recommendationFeedback_codeReviewArn,+ recommendationFeedback_createdTimeStamp,+ recommendationFeedback_lastUpdatedTimeStamp,+ recommendationFeedback_reactions,+ recommendationFeedback_recommendationId,+ recommendationFeedback_userId,++ -- ** RecommendationFeedbackSummary+ recommendationFeedbackSummary_reactions,+ recommendationFeedbackSummary_recommendationId,+ recommendationFeedbackSummary_userId,++ -- ** RecommendationSummary+ recommendationSummary_description,+ recommendationSummary_endLine,+ recommendationSummary_filePath,+ recommendationSummary_recommendationCategory,+ recommendationSummary_recommendationId,+ recommendationSummary_ruleMetadata,+ recommendationSummary_severity,+ recommendationSummary_startLine,++ -- ** Repository+ repository_bitbucket,+ repository_codeCommit,+ repository_gitHubEnterpriseServer,+ repository_s3Bucket,++ -- ** RepositoryAnalysis+ repositoryAnalysis_repositoryHead,+ repositoryAnalysis_sourceCodeType,++ -- ** RepositoryAssociation+ repositoryAssociation_associationArn,+ repositoryAssociation_associationId,+ repositoryAssociation_connectionArn,+ repositoryAssociation_createdTimeStamp,+ repositoryAssociation_kmsKeyDetails,+ repositoryAssociation_lastUpdatedTimeStamp,+ repositoryAssociation_name,+ repositoryAssociation_owner,+ repositoryAssociation_providerType,+ repositoryAssociation_s3RepositoryDetails,+ repositoryAssociation_state,+ repositoryAssociation_stateReason,++ -- ** RepositoryAssociationSummary+ repositoryAssociationSummary_associationArn,+ repositoryAssociationSummary_associationId,+ repositoryAssociationSummary_connectionArn,+ repositoryAssociationSummary_lastUpdatedTimeStamp,+ repositoryAssociationSummary_name,+ repositoryAssociationSummary_owner,+ repositoryAssociationSummary_providerType,+ repositoryAssociationSummary_state,++ -- ** RepositoryHeadSourceCodeType+ repositoryHeadSourceCodeType_branchName,++ -- ** RequestMetadata+ requestMetadata_eventInfo,+ requestMetadata_requestId,+ requestMetadata_requester,+ requestMetadata_vendorName,++ -- ** RuleMetadata+ ruleMetadata_longDescription,+ ruleMetadata_ruleId,+ ruleMetadata_ruleName,+ ruleMetadata_ruleTags,+ ruleMetadata_shortDescription,++ -- ** S3BucketRepository+ s3BucketRepository_details,+ s3BucketRepository_name,++ -- ** S3Repository+ s3Repository_name,+ s3Repository_bucketName,++ -- ** S3RepositoryDetails+ s3RepositoryDetails_bucketName,+ s3RepositoryDetails_codeArtifacts,++ -- ** SourceCodeType+ sourceCodeType_branchDiff,+ sourceCodeType_commitDiff,+ sourceCodeType_repositoryHead,+ sourceCodeType_requestMetadata,+ sourceCodeType_s3BucketRepository,++ -- ** ThirdPartySourceRepository+ thirdPartySourceRepository_name,+ thirdPartySourceRepository_connectionArn,+ thirdPartySourceRepository_owner,+ )+where++import Amazonka.CodeGuruReviewer.AssociateRepository+import Amazonka.CodeGuruReviewer.CreateCodeReview+import Amazonka.CodeGuruReviewer.DescribeCodeReview+import Amazonka.CodeGuruReviewer.DescribeRecommendationFeedback+import Amazonka.CodeGuruReviewer.DescribeRepositoryAssociation+import Amazonka.CodeGuruReviewer.DisassociateRepository+import Amazonka.CodeGuruReviewer.ListCodeReviews+import Amazonka.CodeGuruReviewer.ListRecommendationFeedback+import Amazonka.CodeGuruReviewer.ListRecommendations+import Amazonka.CodeGuruReviewer.ListRepositoryAssociations+import Amazonka.CodeGuruReviewer.ListTagsForResource+import Amazonka.CodeGuruReviewer.PutRecommendationFeedback+import Amazonka.CodeGuruReviewer.TagResource+import Amazonka.CodeGuruReviewer.Types.BranchDiffSourceCodeType+import Amazonka.CodeGuruReviewer.Types.CodeArtifacts+import Amazonka.CodeGuruReviewer.Types.CodeCommitRepository+import Amazonka.CodeGuruReviewer.Types.CodeReview+import Amazonka.CodeGuruReviewer.Types.CodeReviewSummary+import Amazonka.CodeGuruReviewer.Types.CodeReviewType+import Amazonka.CodeGuruReviewer.Types.CommitDiffSourceCodeType+import Amazonka.CodeGuruReviewer.Types.EventInfo+import Amazonka.CodeGuruReviewer.Types.KMSKeyDetails+import Amazonka.CodeGuruReviewer.Types.Metrics+import Amazonka.CodeGuruReviewer.Types.MetricsSummary+import Amazonka.CodeGuruReviewer.Types.RecommendationFeedback+import Amazonka.CodeGuruReviewer.Types.RecommendationFeedbackSummary+import Amazonka.CodeGuruReviewer.Types.RecommendationSummary+import Amazonka.CodeGuruReviewer.Types.Repository+import Amazonka.CodeGuruReviewer.Types.RepositoryAnalysis+import Amazonka.CodeGuruReviewer.Types.RepositoryAssociation+import Amazonka.CodeGuruReviewer.Types.RepositoryAssociationSummary+import Amazonka.CodeGuruReviewer.Types.RepositoryHeadSourceCodeType+import Amazonka.CodeGuruReviewer.Types.RequestMetadata+import Amazonka.CodeGuruReviewer.Types.RuleMetadata+import Amazonka.CodeGuruReviewer.Types.S3BucketRepository+import Amazonka.CodeGuruReviewer.Types.S3Repository+import Amazonka.CodeGuruReviewer.Types.S3RepositoryDetails+import Amazonka.CodeGuruReviewer.Types.SourceCodeType+import Amazonka.CodeGuruReviewer.Types.ThirdPartySourceRepository+import Amazonka.CodeGuruReviewer.UntagResource
+ gen/Amazonka/CodeGuruReviewer/ListCodeReviews.hs view
@@ -0,0 +1,312 @@+{-# 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.CodeGuruReviewer.ListCodeReviews+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the code reviews that the customer has created in the past 90+-- days.+module Amazonka.CodeGuruReviewer.ListCodeReviews+ ( -- * Creating a Request+ ListCodeReviews (..),+ newListCodeReviews,++ -- * Request Lenses+ listCodeReviews_maxResults,+ listCodeReviews_nextToken,+ listCodeReviews_providerTypes,+ listCodeReviews_repositoryNames,+ listCodeReviews_states,+ listCodeReviews_type,++ -- * Destructuring the Response+ ListCodeReviewsResponse (..),+ newListCodeReviewsResponse,++ -- * Response Lenses+ listCodeReviewsResponse_codeReviewSummaries,+ listCodeReviewsResponse_nextToken,+ listCodeReviewsResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newListCodeReviews' smart constructor.+data ListCodeReviews = ListCodeReviews'+ { -- | The maximum number of results that are returned per call. The default is+ -- 100.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If @nextToken@ is returned, there are more results available. The value+ -- of @nextToken@ is a unique pagination token for each page. Make the call+ -- again using the returned token to retrieve the next page. Keep all other+ -- arguments unchanged.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | List of provider types for filtering that needs to be applied before+ -- displaying the result. For example, @providerTypes=[GitHub]@ lists code+ -- reviews from GitHub.+ providerTypes :: Prelude.Maybe (Prelude.NonEmpty ProviderType),+ -- | List of repository names for filtering that needs to be applied before+ -- displaying the result.+ repositoryNames :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | List of states for filtering that needs to be applied before displaying+ -- the result. For example, @states=[Pending]@ lists code reviews in the+ -- Pending state.+ --+ -- The valid code review states are:+ --+ -- - @Completed@: The code review is complete.+ --+ -- - @Pending@: The code review started and has not completed or failed.+ --+ -- - @Failed@: The code review failed.+ --+ -- - @Deleting@: The code review is being deleted.+ states :: Prelude.Maybe (Prelude.NonEmpty JobState),+ -- | The type of code reviews to list in the response.+ type' :: Type+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListCodeReviews' 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', 'listCodeReviews_maxResults' - The maximum number of results that are returned per call. The default is+-- 100.+--+-- 'nextToken', 'listCodeReviews_nextToken' - If @nextToken@ is returned, there are more results available. The value+-- of @nextToken@ is a unique pagination token for each page. Make the call+-- again using the returned token to retrieve the next page. Keep all other+-- arguments unchanged.+--+-- 'providerTypes', 'listCodeReviews_providerTypes' - List of provider types for filtering that needs to be applied before+-- displaying the result. For example, @providerTypes=[GitHub]@ lists code+-- reviews from GitHub.+--+-- 'repositoryNames', 'listCodeReviews_repositoryNames' - List of repository names for filtering that needs to be applied before+-- displaying the result.+--+-- 'states', 'listCodeReviews_states' - List of states for filtering that needs to be applied before displaying+-- the result. For example, @states=[Pending]@ lists code reviews in the+-- Pending state.+--+-- The valid code review states are:+--+-- - @Completed@: The code review is complete.+--+-- - @Pending@: The code review started and has not completed or failed.+--+-- - @Failed@: The code review failed.+--+-- - @Deleting@: The code review is being deleted.+--+-- 'type'', 'listCodeReviews_type' - The type of code reviews to list in the response.+newListCodeReviews ::+ -- | 'type''+ Type ->+ ListCodeReviews+newListCodeReviews pType_ =+ ListCodeReviews'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ providerTypes = Prelude.Nothing,+ repositoryNames = Prelude.Nothing,+ states = Prelude.Nothing,+ type' = pType_+ }++-- | The maximum number of results that are returned per call. The default is+-- 100.+listCodeReviews_maxResults :: Lens.Lens' ListCodeReviews (Prelude.Maybe Prelude.Natural)+listCodeReviews_maxResults = Lens.lens (\ListCodeReviews' {maxResults} -> maxResults) (\s@ListCodeReviews' {} a -> s {maxResults = a} :: ListCodeReviews)++-- | If @nextToken@ is returned, there are more results available. The value+-- of @nextToken@ is a unique pagination token for each page. Make the call+-- again using the returned token to retrieve the next page. Keep all other+-- arguments unchanged.+listCodeReviews_nextToken :: Lens.Lens' ListCodeReviews (Prelude.Maybe Prelude.Text)+listCodeReviews_nextToken = Lens.lens (\ListCodeReviews' {nextToken} -> nextToken) (\s@ListCodeReviews' {} a -> s {nextToken = a} :: ListCodeReviews)++-- | List of provider types for filtering that needs to be applied before+-- displaying the result. For example, @providerTypes=[GitHub]@ lists code+-- reviews from GitHub.+listCodeReviews_providerTypes :: Lens.Lens' ListCodeReviews (Prelude.Maybe (Prelude.NonEmpty ProviderType))+listCodeReviews_providerTypes = Lens.lens (\ListCodeReviews' {providerTypes} -> providerTypes) (\s@ListCodeReviews' {} a -> s {providerTypes = a} :: ListCodeReviews) Prelude.. Lens.mapping Lens.coerced++-- | List of repository names for filtering that needs to be applied before+-- displaying the result.+listCodeReviews_repositoryNames :: Lens.Lens' ListCodeReviews (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+listCodeReviews_repositoryNames = Lens.lens (\ListCodeReviews' {repositoryNames} -> repositoryNames) (\s@ListCodeReviews' {} a -> s {repositoryNames = a} :: ListCodeReviews) Prelude.. Lens.mapping Lens.coerced++-- | List of states for filtering that needs to be applied before displaying+-- the result. For example, @states=[Pending]@ lists code reviews in the+-- Pending state.+--+-- The valid code review states are:+--+-- - @Completed@: The code review is complete.+--+-- - @Pending@: The code review started and has not completed or failed.+--+-- - @Failed@: The code review failed.+--+-- - @Deleting@: The code review is being deleted.+listCodeReviews_states :: Lens.Lens' ListCodeReviews (Prelude.Maybe (Prelude.NonEmpty JobState))+listCodeReviews_states = Lens.lens (\ListCodeReviews' {states} -> states) (\s@ListCodeReviews' {} a -> s {states = a} :: ListCodeReviews) Prelude.. Lens.mapping Lens.coerced++-- | The type of code reviews to list in the response.+listCodeReviews_type :: Lens.Lens' ListCodeReviews Type+listCodeReviews_type = Lens.lens (\ListCodeReviews' {type'} -> type') (\s@ListCodeReviews' {} a -> s {type' = a} :: ListCodeReviews)++instance Core.AWSRequest ListCodeReviews where+ type+ AWSResponse ListCodeReviews =+ ListCodeReviewsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListCodeReviewsResponse'+ Prelude.<$> ( x+ Data..?> "CodeReviewSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListCodeReviews where+ hashWithSalt _salt ListCodeReviews' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` providerTypes+ `Prelude.hashWithSalt` repositoryNames+ `Prelude.hashWithSalt` states+ `Prelude.hashWithSalt` type'++instance Prelude.NFData ListCodeReviews where+ rnf ListCodeReviews' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf providerTypes+ `Prelude.seq` Prelude.rnf repositoryNames+ `Prelude.seq` Prelude.rnf states+ `Prelude.seq` Prelude.rnf type'++instance Data.ToHeaders ListCodeReviews where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListCodeReviews where+ toPath = Prelude.const "/codereviews"++instance Data.ToQuery ListCodeReviews where+ toQuery ListCodeReviews' {..} =+ Prelude.mconcat+ [ "MaxResults" Data.=: maxResults,+ "NextToken" Data.=: nextToken,+ "ProviderTypes"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> providerTypes+ ),+ "RepositoryNames"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> repositoryNames+ ),+ "States"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> states),+ "Type" Data.=: type'+ ]++-- | /See:/ 'newListCodeReviewsResponse' smart constructor.+data ListCodeReviewsResponse = ListCodeReviewsResponse'+ { -- | A list of code reviews that meet the criteria of the request.+ codeReviewSummaries :: Prelude.Maybe [CodeReviewSummary],+ -- | Pagination token.+ 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 'ListCodeReviewsResponse' 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:+--+-- 'codeReviewSummaries', 'listCodeReviewsResponse_codeReviewSummaries' - A list of code reviews that meet the criteria of the request.+--+-- 'nextToken', 'listCodeReviewsResponse_nextToken' - Pagination token.+--+-- 'httpStatus', 'listCodeReviewsResponse_httpStatus' - The response's http status code.+newListCodeReviewsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListCodeReviewsResponse+newListCodeReviewsResponse pHttpStatus_ =+ ListCodeReviewsResponse'+ { codeReviewSummaries =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of code reviews that meet the criteria of the request.+listCodeReviewsResponse_codeReviewSummaries :: Lens.Lens' ListCodeReviewsResponse (Prelude.Maybe [CodeReviewSummary])+listCodeReviewsResponse_codeReviewSummaries = Lens.lens (\ListCodeReviewsResponse' {codeReviewSummaries} -> codeReviewSummaries) (\s@ListCodeReviewsResponse' {} a -> s {codeReviewSummaries = a} :: ListCodeReviewsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Pagination token.+listCodeReviewsResponse_nextToken :: Lens.Lens' ListCodeReviewsResponse (Prelude.Maybe Prelude.Text)+listCodeReviewsResponse_nextToken = Lens.lens (\ListCodeReviewsResponse' {nextToken} -> nextToken) (\s@ListCodeReviewsResponse' {} a -> s {nextToken = a} :: ListCodeReviewsResponse)++-- | The response's http status code.+listCodeReviewsResponse_httpStatus :: Lens.Lens' ListCodeReviewsResponse Prelude.Int+listCodeReviewsResponse_httpStatus = Lens.lens (\ListCodeReviewsResponse' {httpStatus} -> httpStatus) (\s@ListCodeReviewsResponse' {} a -> s {httpStatus = a} :: ListCodeReviewsResponse)++instance Prelude.NFData ListCodeReviewsResponse where+ rnf ListCodeReviewsResponse' {..} =+ Prelude.rnf codeReviewSummaries+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/ListRecommendationFeedback.hs view
@@ -0,0 +1,300 @@+{-# 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.CodeGuruReviewer.ListRecommendationFeedback+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RecommendationFeedbackSummary.html RecommendationFeedbackSummary>+-- objects that contain customer recommendation feedback for all CodeGuru+-- Reviewer users.+module Amazonka.CodeGuruReviewer.ListRecommendationFeedback+ ( -- * Creating a Request+ ListRecommendationFeedback (..),+ newListRecommendationFeedback,++ -- * Request Lenses+ listRecommendationFeedback_maxResults,+ listRecommendationFeedback_nextToken,+ listRecommendationFeedback_recommendationIds,+ listRecommendationFeedback_userIds,+ listRecommendationFeedback_codeReviewArn,++ -- * Destructuring the Response+ ListRecommendationFeedbackResponse (..),+ newListRecommendationFeedbackResponse,++ -- * Response Lenses+ listRecommendationFeedbackResponse_nextToken,+ listRecommendationFeedbackResponse_recommendationFeedbackSummaries,+ listRecommendationFeedbackResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newListRecommendationFeedback' smart constructor.+data ListRecommendationFeedback = ListRecommendationFeedback'+ { -- | The maximum number of results that are returned per call. The default is+ -- 100.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If @nextToken@ is returned, there are more results available. The value+ -- of @nextToken@ is a unique pagination token for each page. Make the call+ -- again using the returned token to retrieve the next page. Keep all other+ -- arguments unchanged.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Used to query the recommendation feedback for a given recommendation.+ recommendationIds :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | An Amazon Web Services user\'s account ID or Amazon Resource Name (ARN).+ -- Use this ID to query the recommendation feedback for a code review from+ -- that user.+ --+ -- The @UserId@ is an IAM principal that can be specified as an Amazon Web+ -- Services account ID or an Amazon Resource Name (ARN). For more+ -- information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+ -- in the /Amazon Web Services Identity and Access Management User Guide/.+ userIds :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+ -- object.+ codeReviewArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRecommendationFeedback' 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', 'listRecommendationFeedback_maxResults' - The maximum number of results that are returned per call. The default is+-- 100.+--+-- 'nextToken', 'listRecommendationFeedback_nextToken' - If @nextToken@ is returned, there are more results available. The value+-- of @nextToken@ is a unique pagination token for each page. Make the call+-- again using the returned token to retrieve the next page. Keep all other+-- arguments unchanged.+--+-- 'recommendationIds', 'listRecommendationFeedback_recommendationIds' - Used to query the recommendation feedback for a given recommendation.+--+-- 'userIds', 'listRecommendationFeedback_userIds' - An Amazon Web Services user\'s account ID or Amazon Resource Name (ARN).+-- Use this ID to query the recommendation feedback for a code review from+-- that user.+--+-- The @UserId@ is an IAM principal that can be specified as an Amazon Web+-- Services account ID or an Amazon Resource Name (ARN). For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+-- in the /Amazon Web Services Identity and Access Management User Guide/.+--+-- 'codeReviewArn', 'listRecommendationFeedback_codeReviewArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+newListRecommendationFeedback ::+ -- | 'codeReviewArn'+ Prelude.Text ->+ ListRecommendationFeedback+newListRecommendationFeedback pCodeReviewArn_ =+ ListRecommendationFeedback'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ recommendationIds = Prelude.Nothing,+ userIds = Prelude.Nothing,+ codeReviewArn = pCodeReviewArn_+ }++-- | The maximum number of results that are returned per call. The default is+-- 100.+listRecommendationFeedback_maxResults :: Lens.Lens' ListRecommendationFeedback (Prelude.Maybe Prelude.Natural)+listRecommendationFeedback_maxResults = Lens.lens (\ListRecommendationFeedback' {maxResults} -> maxResults) (\s@ListRecommendationFeedback' {} a -> s {maxResults = a} :: ListRecommendationFeedback)++-- | If @nextToken@ is returned, there are more results available. The value+-- of @nextToken@ is a unique pagination token for each page. Make the call+-- again using the returned token to retrieve the next page. Keep all other+-- arguments unchanged.+listRecommendationFeedback_nextToken :: Lens.Lens' ListRecommendationFeedback (Prelude.Maybe Prelude.Text)+listRecommendationFeedback_nextToken = Lens.lens (\ListRecommendationFeedback' {nextToken} -> nextToken) (\s@ListRecommendationFeedback' {} a -> s {nextToken = a} :: ListRecommendationFeedback)++-- | Used to query the recommendation feedback for a given recommendation.+listRecommendationFeedback_recommendationIds :: Lens.Lens' ListRecommendationFeedback (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+listRecommendationFeedback_recommendationIds = Lens.lens (\ListRecommendationFeedback' {recommendationIds} -> recommendationIds) (\s@ListRecommendationFeedback' {} a -> s {recommendationIds = a} :: ListRecommendationFeedback) Prelude.. Lens.mapping Lens.coerced++-- | An Amazon Web Services user\'s account ID or Amazon Resource Name (ARN).+-- Use this ID to query the recommendation feedback for a code review from+-- that user.+--+-- The @UserId@ is an IAM principal that can be specified as an Amazon Web+-- Services account ID or an Amazon Resource Name (ARN). For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+-- in the /Amazon Web Services Identity and Access Management User Guide/.+listRecommendationFeedback_userIds :: Lens.Lens' ListRecommendationFeedback (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+listRecommendationFeedback_userIds = Lens.lens (\ListRecommendationFeedback' {userIds} -> userIds) (\s@ListRecommendationFeedback' {} a -> s {userIds = a} :: ListRecommendationFeedback) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+listRecommendationFeedback_codeReviewArn :: Lens.Lens' ListRecommendationFeedback Prelude.Text+listRecommendationFeedback_codeReviewArn = Lens.lens (\ListRecommendationFeedback' {codeReviewArn} -> codeReviewArn) (\s@ListRecommendationFeedback' {} a -> s {codeReviewArn = a} :: ListRecommendationFeedback)++instance Core.AWSRequest ListRecommendationFeedback where+ type+ AWSResponse ListRecommendationFeedback =+ ListRecommendationFeedbackResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListRecommendationFeedbackResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "RecommendationFeedbackSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListRecommendationFeedback where+ hashWithSalt _salt ListRecommendationFeedback' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` recommendationIds+ `Prelude.hashWithSalt` userIds+ `Prelude.hashWithSalt` codeReviewArn++instance Prelude.NFData ListRecommendationFeedback where+ rnf ListRecommendationFeedback' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf recommendationIds+ `Prelude.seq` Prelude.rnf userIds+ `Prelude.seq` Prelude.rnf codeReviewArn++instance Data.ToHeaders ListRecommendationFeedback where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListRecommendationFeedback where+ toPath ListRecommendationFeedback' {..} =+ Prelude.mconcat+ [ "/feedback/",+ Data.toBS codeReviewArn,+ "/RecommendationFeedback"+ ]++instance Data.ToQuery ListRecommendationFeedback where+ toQuery ListRecommendationFeedback' {..} =+ Prelude.mconcat+ [ "MaxResults" Data.=: maxResults,+ "NextToken" Data.=: nextToken,+ "RecommendationIds"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> recommendationIds+ ),+ "UserIds"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> userIds)+ ]++-- | /See:/ 'newListRecommendationFeedbackResponse' smart constructor.+data ListRecommendationFeedbackResponse = ListRecommendationFeedbackResponse'+ { -- | If @nextToken@ is returned, there are more results available. The value+ -- of @nextToken@ is a unique pagination token for each page. Make the call+ -- again using the returned token to retrieve the next page. Keep all other+ -- arguments unchanged.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Recommendation feedback summaries corresponding to the code review ARN.+ recommendationFeedbackSummaries :: Prelude.Maybe [RecommendationFeedbackSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRecommendationFeedbackResponse' 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', 'listRecommendationFeedbackResponse_nextToken' - If @nextToken@ is returned, there are more results available. The value+-- of @nextToken@ is a unique pagination token for each page. Make the call+-- again using the returned token to retrieve the next page. Keep all other+-- arguments unchanged.+--+-- 'recommendationFeedbackSummaries', 'listRecommendationFeedbackResponse_recommendationFeedbackSummaries' - Recommendation feedback summaries corresponding to the code review ARN.+--+-- 'httpStatus', 'listRecommendationFeedbackResponse_httpStatus' - The response's http status code.+newListRecommendationFeedbackResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRecommendationFeedbackResponse+newListRecommendationFeedbackResponse pHttpStatus_ =+ ListRecommendationFeedbackResponse'+ { nextToken =+ Prelude.Nothing,+ recommendationFeedbackSummaries =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If @nextToken@ is returned, there are more results available. The value+-- of @nextToken@ is a unique pagination token for each page. Make the call+-- again using the returned token to retrieve the next page. Keep all other+-- arguments unchanged.+listRecommendationFeedbackResponse_nextToken :: Lens.Lens' ListRecommendationFeedbackResponse (Prelude.Maybe Prelude.Text)+listRecommendationFeedbackResponse_nextToken = Lens.lens (\ListRecommendationFeedbackResponse' {nextToken} -> nextToken) (\s@ListRecommendationFeedbackResponse' {} a -> s {nextToken = a} :: ListRecommendationFeedbackResponse)++-- | Recommendation feedback summaries corresponding to the code review ARN.+listRecommendationFeedbackResponse_recommendationFeedbackSummaries :: Lens.Lens' ListRecommendationFeedbackResponse (Prelude.Maybe [RecommendationFeedbackSummary])+listRecommendationFeedbackResponse_recommendationFeedbackSummaries = Lens.lens (\ListRecommendationFeedbackResponse' {recommendationFeedbackSummaries} -> recommendationFeedbackSummaries) (\s@ListRecommendationFeedbackResponse' {} a -> s {recommendationFeedbackSummaries = a} :: ListRecommendationFeedbackResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listRecommendationFeedbackResponse_httpStatus :: Lens.Lens' ListRecommendationFeedbackResponse Prelude.Int+listRecommendationFeedbackResponse_httpStatus = Lens.lens (\ListRecommendationFeedbackResponse' {httpStatus} -> httpStatus) (\s@ListRecommendationFeedbackResponse' {} a -> s {httpStatus = a} :: ListRecommendationFeedbackResponse)++instance+ Prelude.NFData+ ListRecommendationFeedbackResponse+ where+ rnf ListRecommendationFeedbackResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf recommendationFeedbackSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/ListRecommendations.hs view
@@ -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.CodeGuruReviewer.ListRecommendations+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the list of all recommendations for a completed code review.+module Amazonka.CodeGuruReviewer.ListRecommendations+ ( -- * Creating a Request+ ListRecommendations (..),+ newListRecommendations,++ -- * Request Lenses+ listRecommendations_maxResults,+ listRecommendations_nextToken,+ listRecommendations_codeReviewArn,++ -- * Destructuring the Response+ ListRecommendationsResponse (..),+ newListRecommendationsResponse,++ -- * Response Lenses+ listRecommendationsResponse_nextToken,+ listRecommendationsResponse_recommendationSummaries,+ listRecommendationsResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newListRecommendations' smart constructor.+data ListRecommendations = ListRecommendations'+ { -- | The maximum number of results that are returned per call. The default is+ -- 100.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Pagination token.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+ -- object.+ codeReviewArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRecommendations' 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', 'listRecommendations_maxResults' - The maximum number of results that are returned per call. The default is+-- 100.+--+-- 'nextToken', 'listRecommendations_nextToken' - Pagination token.+--+-- 'codeReviewArn', 'listRecommendations_codeReviewArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+newListRecommendations ::+ -- | 'codeReviewArn'+ Prelude.Text ->+ ListRecommendations+newListRecommendations pCodeReviewArn_ =+ ListRecommendations'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ codeReviewArn = pCodeReviewArn_+ }++-- | The maximum number of results that are returned per call. The default is+-- 100.+listRecommendations_maxResults :: Lens.Lens' ListRecommendations (Prelude.Maybe Prelude.Natural)+listRecommendations_maxResults = Lens.lens (\ListRecommendations' {maxResults} -> maxResults) (\s@ListRecommendations' {} a -> s {maxResults = a} :: ListRecommendations)++-- | Pagination token.+listRecommendations_nextToken :: Lens.Lens' ListRecommendations (Prelude.Maybe Prelude.Text)+listRecommendations_nextToken = Lens.lens (\ListRecommendations' {nextToken} -> nextToken) (\s@ListRecommendations' {} a -> s {nextToken = a} :: ListRecommendations)++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+listRecommendations_codeReviewArn :: Lens.Lens' ListRecommendations Prelude.Text+listRecommendations_codeReviewArn = Lens.lens (\ListRecommendations' {codeReviewArn} -> codeReviewArn) (\s@ListRecommendations' {} a -> s {codeReviewArn = a} :: ListRecommendations)++instance Core.AWSRequest ListRecommendations where+ type+ AWSResponse ListRecommendations =+ ListRecommendationsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListRecommendationsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "RecommendationSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListRecommendations where+ hashWithSalt _salt ListRecommendations' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` codeReviewArn++instance Prelude.NFData ListRecommendations where+ rnf ListRecommendations' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf codeReviewArn++instance Data.ToHeaders ListRecommendations where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListRecommendations where+ toPath ListRecommendations' {..} =+ Prelude.mconcat+ [ "/codereviews/",+ Data.toBS codeReviewArn,+ "/Recommendations"+ ]++instance Data.ToQuery ListRecommendations where+ toQuery ListRecommendations' {..} =+ Prelude.mconcat+ [ "MaxResults" Data.=: maxResults,+ "NextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListRecommendationsResponse' smart constructor.+data ListRecommendationsResponse = ListRecommendationsResponse'+ { -- | Pagination token.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | List of recommendations for the requested code review.+ recommendationSummaries :: Prelude.Maybe [RecommendationSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRecommendationsResponse' 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', 'listRecommendationsResponse_nextToken' - Pagination token.+--+-- 'recommendationSummaries', 'listRecommendationsResponse_recommendationSummaries' - List of recommendations for the requested code review.+--+-- 'httpStatus', 'listRecommendationsResponse_httpStatus' - The response's http status code.+newListRecommendationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRecommendationsResponse+newListRecommendationsResponse pHttpStatus_ =+ ListRecommendationsResponse'+ { nextToken =+ Prelude.Nothing,+ recommendationSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Pagination token.+listRecommendationsResponse_nextToken :: Lens.Lens' ListRecommendationsResponse (Prelude.Maybe Prelude.Text)+listRecommendationsResponse_nextToken = Lens.lens (\ListRecommendationsResponse' {nextToken} -> nextToken) (\s@ListRecommendationsResponse' {} a -> s {nextToken = a} :: ListRecommendationsResponse)++-- | List of recommendations for the requested code review.+listRecommendationsResponse_recommendationSummaries :: Lens.Lens' ListRecommendationsResponse (Prelude.Maybe [RecommendationSummary])+listRecommendationsResponse_recommendationSummaries = Lens.lens (\ListRecommendationsResponse' {recommendationSummaries} -> recommendationSummaries) (\s@ListRecommendationsResponse' {} a -> s {recommendationSummaries = a} :: ListRecommendationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listRecommendationsResponse_httpStatus :: Lens.Lens' ListRecommendationsResponse Prelude.Int+listRecommendationsResponse_httpStatus = Lens.lens (\ListRecommendationsResponse' {httpStatus} -> httpStatus) (\s@ListRecommendationsResponse' {} a -> s {httpStatus = a} :: ListRecommendationsResponse)++instance Prelude.NFData ListRecommendationsResponse where+ rnf ListRecommendationsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf recommendationSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/ListRepositoryAssociations.hs view
@@ -0,0 +1,445 @@+{-# 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.CodeGuruReviewer.ListRepositoryAssociations+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociationSummary.html RepositoryAssociationSummary>+-- objects that contain summary information about a repository association.+-- You can filter the returned list by+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociationSummary.html#reviewer-Type-RepositoryAssociationSummary-ProviderType ProviderType>,+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociationSummary.html#reviewer-Type-RepositoryAssociationSummary-Name Name>,+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociationSummary.html#reviewer-Type-RepositoryAssociationSummary-State State>,+-- and+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociationSummary.html#reviewer-Type-RepositoryAssociationSummary-Owner Owner>.+--+-- This operation returns paginated results.+module Amazonka.CodeGuruReviewer.ListRepositoryAssociations+ ( -- * Creating a Request+ ListRepositoryAssociations (..),+ newListRepositoryAssociations,++ -- * Request Lenses+ listRepositoryAssociations_maxResults,+ listRepositoryAssociations_names,+ listRepositoryAssociations_nextToken,+ listRepositoryAssociations_owners,+ listRepositoryAssociations_providerTypes,+ listRepositoryAssociations_states,++ -- * Destructuring the Response+ ListRepositoryAssociationsResponse (..),+ newListRepositoryAssociationsResponse,++ -- * Response Lenses+ listRepositoryAssociationsResponse_nextToken,+ listRepositoryAssociationsResponse_repositoryAssociationSummaries,+ listRepositoryAssociationsResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newListRepositoryAssociations' smart constructor.+data ListRepositoryAssociations = ListRepositoryAssociations'+ { -- | The maximum number of repository association results returned by+ -- @ListRepositoryAssociations@ in paginated output. When this parameter is+ -- used, @ListRepositoryAssociations@ only returns @maxResults@ results in+ -- a single page with a @nextToken@ response element. The remaining results+ -- of the initial request can be seen by sending another+ -- @ListRepositoryAssociations@ request with the returned @nextToken@+ -- value. This value can be between 1 and 100. If this parameter is not+ -- used, @ListRepositoryAssociations@ returns up to 100 results and a+ -- @nextToken@ value if applicable.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | List of repository names to use as a filter.+ names :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | The @nextToken@ value returned from a previous paginated+ -- @ListRepositoryAssociations@ request where @maxResults@ was used and the+ -- results exceeded the value of that parameter. Pagination continues from+ -- the end of the previous results that returned the @nextToken@ value.+ --+ -- Treat this token as an opaque identifier that is only used to retrieve+ -- the next items in a list and not for other programmatic purposes.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | List of owners to use as a filter. For Amazon Web Services CodeCommit,+ -- it is the name of the CodeCommit account that was used to associate the+ -- repository. For other repository source providers, such as Bitbucket and+ -- GitHub Enterprise Server, this is name of the account that was used to+ -- associate the repository.+ owners :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | List of provider types to use as a filter.+ providerTypes :: Prelude.Maybe (Prelude.NonEmpty ProviderType),+ -- | List of repository association states to use as a filter.+ --+ -- The valid repository association states are:+ --+ -- - __Associated__: The repository association is complete.+ --+ -- - __Associating__: CodeGuru Reviewer is:+ --+ -- - Setting up pull request notifications. This is required for pull+ -- requests to trigger a CodeGuru Reviewer review.+ --+ -- If your repository @ProviderType@ is @GitHub@,+ -- @GitHub Enterprise Server@, or @Bitbucket@, CodeGuru Reviewer+ -- creates webhooks in your repository to trigger CodeGuru Reviewer+ -- reviews. If you delete these webhooks, reviews of code in your+ -- repository cannot be triggered.+ --+ -- - Setting up source code access. This is required for CodeGuru+ -- Reviewer to securely clone code in your repository.+ --+ -- - __Failed__: The repository failed to associate or disassociate.+ --+ -- - __Disassociating__: CodeGuru Reviewer is removing the repository\'s+ -- pull request notifications and source code access.+ --+ -- - __Disassociated__: CodeGuru Reviewer successfully disassociated the+ -- repository. You can create a new association with this repository if+ -- you want to review source code in it later. You can control access+ -- to code reviews created in anassociated repository with tags after+ -- it has been disassociated. For more information, see+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html Using tags to control access to associated repositories>+ -- in the /Amazon CodeGuru Reviewer User Guide/.+ states :: Prelude.Maybe (Prelude.NonEmpty RepositoryAssociationState)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRepositoryAssociations' 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', 'listRepositoryAssociations_maxResults' - The maximum number of repository association results returned by+-- @ListRepositoryAssociations@ in paginated output. When this parameter is+-- used, @ListRepositoryAssociations@ only returns @maxResults@ results in+-- a single page with a @nextToken@ response element. The remaining results+-- of the initial request can be seen by sending another+-- @ListRepositoryAssociations@ request with the returned @nextToken@+-- value. This value can be between 1 and 100. If this parameter is not+-- used, @ListRepositoryAssociations@ returns up to 100 results and a+-- @nextToken@ value if applicable.+--+-- 'names', 'listRepositoryAssociations_names' - List of repository names to use as a filter.+--+-- 'nextToken', 'listRepositoryAssociations_nextToken' - The @nextToken@ value returned from a previous paginated+-- @ListRepositoryAssociations@ request where @maxResults@ was used and the+-- results exceeded the value of that parameter. Pagination continues from+-- the end of the previous results that returned the @nextToken@ value.+--+-- Treat this token as an opaque identifier that is only used to retrieve+-- the next items in a list and not for other programmatic purposes.+--+-- 'owners', 'listRepositoryAssociations_owners' - List of owners to use as a filter. For Amazon Web Services CodeCommit,+-- it is the name of the CodeCommit account that was used to associate the+-- repository. For other repository source providers, such as Bitbucket and+-- GitHub Enterprise Server, this is name of the account that was used to+-- associate the repository.+--+-- 'providerTypes', 'listRepositoryAssociations_providerTypes' - List of provider types to use as a filter.+--+-- 'states', 'listRepositoryAssociations_states' - List of repository association states to use as a filter.+--+-- The valid repository association states are:+--+-- - __Associated__: The repository association is complete.+--+-- - __Associating__: CodeGuru Reviewer is:+--+-- - Setting up pull request notifications. This is required for pull+-- requests to trigger a CodeGuru Reviewer review.+--+-- If your repository @ProviderType@ is @GitHub@,+-- @GitHub Enterprise Server@, or @Bitbucket@, CodeGuru Reviewer+-- creates webhooks in your repository to trigger CodeGuru Reviewer+-- reviews. If you delete these webhooks, reviews of code in your+-- repository cannot be triggered.+--+-- - Setting up source code access. This is required for CodeGuru+-- Reviewer to securely clone code in your repository.+--+-- - __Failed__: The repository failed to associate or disassociate.+--+-- - __Disassociating__: CodeGuru Reviewer is removing the repository\'s+-- pull request notifications and source code access.+--+-- - __Disassociated__: CodeGuru Reviewer successfully disassociated the+-- repository. You can create a new association with this repository if+-- you want to review source code in it later. You can control access+-- to code reviews created in anassociated repository with tags after+-- it has been disassociated. For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html Using tags to control access to associated repositories>+-- in the /Amazon CodeGuru Reviewer User Guide/.+newListRepositoryAssociations ::+ ListRepositoryAssociations+newListRepositoryAssociations =+ ListRepositoryAssociations'+ { maxResults =+ Prelude.Nothing,+ names = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ owners = Prelude.Nothing,+ providerTypes = Prelude.Nothing,+ states = Prelude.Nothing+ }++-- | The maximum number of repository association results returned by+-- @ListRepositoryAssociations@ in paginated output. When this parameter is+-- used, @ListRepositoryAssociations@ only returns @maxResults@ results in+-- a single page with a @nextToken@ response element. The remaining results+-- of the initial request can be seen by sending another+-- @ListRepositoryAssociations@ request with the returned @nextToken@+-- value. This value can be between 1 and 100. If this parameter is not+-- used, @ListRepositoryAssociations@ returns up to 100 results and a+-- @nextToken@ value if applicable.+listRepositoryAssociations_maxResults :: Lens.Lens' ListRepositoryAssociations (Prelude.Maybe Prelude.Natural)+listRepositoryAssociations_maxResults = Lens.lens (\ListRepositoryAssociations' {maxResults} -> maxResults) (\s@ListRepositoryAssociations' {} a -> s {maxResults = a} :: ListRepositoryAssociations)++-- | List of repository names to use as a filter.+listRepositoryAssociations_names :: Lens.Lens' ListRepositoryAssociations (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+listRepositoryAssociations_names = Lens.lens (\ListRepositoryAssociations' {names} -> names) (\s@ListRepositoryAssociations' {} a -> s {names = a} :: ListRepositoryAssociations) Prelude.. Lens.mapping Lens.coerced++-- | The @nextToken@ value returned from a previous paginated+-- @ListRepositoryAssociations@ request where @maxResults@ was used and the+-- results exceeded the value of that parameter. Pagination continues from+-- the end of the previous results that returned the @nextToken@ value.+--+-- Treat this token as an opaque identifier that is only used to retrieve+-- the next items in a list and not for other programmatic purposes.+listRepositoryAssociations_nextToken :: Lens.Lens' ListRepositoryAssociations (Prelude.Maybe Prelude.Text)+listRepositoryAssociations_nextToken = Lens.lens (\ListRepositoryAssociations' {nextToken} -> nextToken) (\s@ListRepositoryAssociations' {} a -> s {nextToken = a} :: ListRepositoryAssociations)++-- | List of owners to use as a filter. For Amazon Web Services CodeCommit,+-- it is the name of the CodeCommit account that was used to associate the+-- repository. For other repository source providers, such as Bitbucket and+-- GitHub Enterprise Server, this is name of the account that was used to+-- associate the repository.+listRepositoryAssociations_owners :: Lens.Lens' ListRepositoryAssociations (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+listRepositoryAssociations_owners = Lens.lens (\ListRepositoryAssociations' {owners} -> owners) (\s@ListRepositoryAssociations' {} a -> s {owners = a} :: ListRepositoryAssociations) Prelude.. Lens.mapping Lens.coerced++-- | List of provider types to use as a filter.+listRepositoryAssociations_providerTypes :: Lens.Lens' ListRepositoryAssociations (Prelude.Maybe (Prelude.NonEmpty ProviderType))+listRepositoryAssociations_providerTypes = Lens.lens (\ListRepositoryAssociations' {providerTypes} -> providerTypes) (\s@ListRepositoryAssociations' {} a -> s {providerTypes = a} :: ListRepositoryAssociations) Prelude.. Lens.mapping Lens.coerced++-- | List of repository association states to use as a filter.+--+-- The valid repository association states are:+--+-- - __Associated__: The repository association is complete.+--+-- - __Associating__: CodeGuru Reviewer is:+--+-- - Setting up pull request notifications. This is required for pull+-- requests to trigger a CodeGuru Reviewer review.+--+-- If your repository @ProviderType@ is @GitHub@,+-- @GitHub Enterprise Server@, or @Bitbucket@, CodeGuru Reviewer+-- creates webhooks in your repository to trigger CodeGuru Reviewer+-- reviews. If you delete these webhooks, reviews of code in your+-- repository cannot be triggered.+--+-- - Setting up source code access. This is required for CodeGuru+-- Reviewer to securely clone code in your repository.+--+-- - __Failed__: The repository failed to associate or disassociate.+--+-- - __Disassociating__: CodeGuru Reviewer is removing the repository\'s+-- pull request notifications and source code access.+--+-- - __Disassociated__: CodeGuru Reviewer successfully disassociated the+-- repository. You can create a new association with this repository if+-- you want to review source code in it later. You can control access+-- to code reviews created in anassociated repository with tags after+-- it has been disassociated. For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html Using tags to control access to associated repositories>+-- in the /Amazon CodeGuru Reviewer User Guide/.+listRepositoryAssociations_states :: Lens.Lens' ListRepositoryAssociations (Prelude.Maybe (Prelude.NonEmpty RepositoryAssociationState))+listRepositoryAssociations_states = Lens.lens (\ListRepositoryAssociations' {states} -> states) (\s@ListRepositoryAssociations' {} a -> s {states = a} :: ListRepositoryAssociations) Prelude.. Lens.mapping Lens.coerced++instance Core.AWSPager ListRepositoryAssociations where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listRepositoryAssociationsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listRepositoryAssociationsResponse_repositoryAssociationSummaries+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listRepositoryAssociations_nextToken+ Lens..~ rs+ Lens.^? listRepositoryAssociationsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListRepositoryAssociations where+ type+ AWSResponse ListRepositoryAssociations =+ ListRepositoryAssociationsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListRepositoryAssociationsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "RepositoryAssociationSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListRepositoryAssociations where+ hashWithSalt _salt ListRepositoryAssociations' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` names+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` owners+ `Prelude.hashWithSalt` providerTypes+ `Prelude.hashWithSalt` states++instance Prelude.NFData ListRepositoryAssociations where+ rnf ListRepositoryAssociations' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf names+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf owners+ `Prelude.seq` Prelude.rnf providerTypes+ `Prelude.seq` Prelude.rnf states++instance Data.ToHeaders ListRepositoryAssociations where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListRepositoryAssociations where+ toPath = Prelude.const "/associations"++instance Data.ToQuery ListRepositoryAssociations where+ toQuery ListRepositoryAssociations' {..} =+ Prelude.mconcat+ [ "MaxResults" Data.=: maxResults,+ "Name"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> names),+ "NextToken" Data.=: nextToken,+ "Owner"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> owners),+ "ProviderType"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> providerTypes+ ),+ "State"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> states)+ ]++-- | /See:/ 'newListRepositoryAssociationsResponse' smart constructor.+data ListRepositoryAssociationsResponse = ListRepositoryAssociationsResponse'+ { -- | The @nextToken@ value to include in a future @ListRecommendations@+ -- request. When the results of a @ListRecommendations@ request exceed+ -- @maxResults@, this value can be used to retrieve the next page of+ -- results. This value is @null@ when there are no more results to return.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A list of repository associations that meet the criteria of the request.+ repositoryAssociationSummaries :: Prelude.Maybe [RepositoryAssociationSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRepositoryAssociationsResponse' 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', 'listRepositoryAssociationsResponse_nextToken' - The @nextToken@ value to include in a future @ListRecommendations@+-- request. When the results of a @ListRecommendations@ request exceed+-- @maxResults@, this value can be used to retrieve the next page of+-- results. This value is @null@ when there are no more results to return.+--+-- 'repositoryAssociationSummaries', 'listRepositoryAssociationsResponse_repositoryAssociationSummaries' - A list of repository associations that meet the criteria of the request.+--+-- 'httpStatus', 'listRepositoryAssociationsResponse_httpStatus' - The response's http status code.+newListRepositoryAssociationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRepositoryAssociationsResponse+newListRepositoryAssociationsResponse pHttpStatus_ =+ ListRepositoryAssociationsResponse'+ { nextToken =+ Prelude.Nothing,+ repositoryAssociationSummaries =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The @nextToken@ value to include in a future @ListRecommendations@+-- request. When the results of a @ListRecommendations@ request exceed+-- @maxResults@, this value can be used to retrieve the next page of+-- results. This value is @null@ when there are no more results to return.+listRepositoryAssociationsResponse_nextToken :: Lens.Lens' ListRepositoryAssociationsResponse (Prelude.Maybe Prelude.Text)+listRepositoryAssociationsResponse_nextToken = Lens.lens (\ListRepositoryAssociationsResponse' {nextToken} -> nextToken) (\s@ListRepositoryAssociationsResponse' {} a -> s {nextToken = a} :: ListRepositoryAssociationsResponse)++-- | A list of repository associations that meet the criteria of the request.+listRepositoryAssociationsResponse_repositoryAssociationSummaries :: Lens.Lens' ListRepositoryAssociationsResponse (Prelude.Maybe [RepositoryAssociationSummary])+listRepositoryAssociationsResponse_repositoryAssociationSummaries = Lens.lens (\ListRepositoryAssociationsResponse' {repositoryAssociationSummaries} -> repositoryAssociationSummaries) (\s@ListRepositoryAssociationsResponse' {} a -> s {repositoryAssociationSummaries = a} :: ListRepositoryAssociationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listRepositoryAssociationsResponse_httpStatus :: Lens.Lens' ListRepositoryAssociationsResponse Prelude.Int+listRepositoryAssociationsResponse_httpStatus = Lens.lens (\ListRepositoryAssociationsResponse' {httpStatus} -> httpStatus) (\s@ListRepositoryAssociationsResponse' {} a -> s {httpStatus = a} :: ListRepositoryAssociationsResponse)++instance+ Prelude.NFData+ ListRepositoryAssociationsResponse+ where+ rnf ListRepositoryAssociationsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf repositoryAssociationSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/ListTagsForResource.hs view
@@ -0,0 +1,196 @@+{-# 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.CodeGuruReviewer.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)+--+-- Returns the list of tags associated with an associated repository+-- resource.+module Amazonka.CodeGuruReviewer.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_resourceArn,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+ -- object. You can retrieve this ARN by calling+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+ resourceArn :: 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:+--+-- 'resourceArn', 'listTagsForResource_resourceArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+newListTagsForResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceArn_ =+ ListTagsForResource' {resourceArn = pResourceArn_}++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+listTagsForResource_resourceArn :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_resourceArn = Lens.lens (\ListTagsForResource' {resourceArn} -> resourceArn) (\s@ListTagsForResource' {} a -> s {resourceArn = 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` resourceArn++instance Prelude.NFData ListTagsForResource where+ rnf ListTagsForResource' {..} =+ Prelude.rnf resourceArn++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 resourceArn]++instance Data.ToQuery ListTagsForResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | An array of key-value pairs used to tag an associated repository. A tag+ -- is a custom attribute label with two parts:+ --+ -- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+ -- @Secret@). Tag keys are case sensitive.+ --+ -- - An optional field known as a /tag value/ (for example,+ -- @111122223333@, @Production@, or a team name). Omitting the tag+ -- value is the same as using an empty string. Like tag keys, tag+ -- values are case sensitive.+ 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' - An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+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
+ gen/Amazonka/CodeGuruReviewer/PutRecommendationFeedback.hs view
@@ -0,0 +1,207 @@+{-# 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.CodeGuruReviewer.PutRecommendationFeedback+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Stores customer feedback for a CodeGuru Reviewer recommendation. When+-- this API is called again with different reactions the previous feedback+-- is overwritten.+module Amazonka.CodeGuruReviewer.PutRecommendationFeedback+ ( -- * Creating a Request+ PutRecommendationFeedback (..),+ newPutRecommendationFeedback,++ -- * Request Lenses+ putRecommendationFeedback_codeReviewArn,+ putRecommendationFeedback_recommendationId,+ putRecommendationFeedback_reactions,++ -- * Destructuring the Response+ PutRecommendationFeedbackResponse (..),+ newPutRecommendationFeedbackResponse,++ -- * Response Lenses+ putRecommendationFeedbackResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newPutRecommendationFeedback' smart constructor.+data PutRecommendationFeedback = PutRecommendationFeedback'+ { -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+ -- object.+ codeReviewArn :: Prelude.Text,+ -- | The recommendation ID that can be used to track the provided+ -- recommendations and then to collect the feedback.+ recommendationId :: Prelude.Text,+ -- | List for storing reactions. Reactions are utf-8 text code for emojis. If+ -- you send an empty list it clears all your feedback.+ reactions :: [Reaction]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutRecommendationFeedback' 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:+--+-- 'codeReviewArn', 'putRecommendationFeedback_codeReviewArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+--+-- 'recommendationId', 'putRecommendationFeedback_recommendationId' - The recommendation ID that can be used to track the provided+-- recommendations and then to collect the feedback.+--+-- 'reactions', 'putRecommendationFeedback_reactions' - List for storing reactions. Reactions are utf-8 text code for emojis. If+-- you send an empty list it clears all your feedback.+newPutRecommendationFeedback ::+ -- | 'codeReviewArn'+ Prelude.Text ->+ -- | 'recommendationId'+ Prelude.Text ->+ PutRecommendationFeedback+newPutRecommendationFeedback+ pCodeReviewArn_+ pRecommendationId_ =+ PutRecommendationFeedback'+ { codeReviewArn =+ pCodeReviewArn_,+ recommendationId = pRecommendationId_,+ reactions = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+putRecommendationFeedback_codeReviewArn :: Lens.Lens' PutRecommendationFeedback Prelude.Text+putRecommendationFeedback_codeReviewArn = Lens.lens (\PutRecommendationFeedback' {codeReviewArn} -> codeReviewArn) (\s@PutRecommendationFeedback' {} a -> s {codeReviewArn = a} :: PutRecommendationFeedback)++-- | The recommendation ID that can be used to track the provided+-- recommendations and then to collect the feedback.+putRecommendationFeedback_recommendationId :: Lens.Lens' PutRecommendationFeedback Prelude.Text+putRecommendationFeedback_recommendationId = Lens.lens (\PutRecommendationFeedback' {recommendationId} -> recommendationId) (\s@PutRecommendationFeedback' {} a -> s {recommendationId = a} :: PutRecommendationFeedback)++-- | List for storing reactions. Reactions are utf-8 text code for emojis. If+-- you send an empty list it clears all your feedback.+putRecommendationFeedback_reactions :: Lens.Lens' PutRecommendationFeedback [Reaction]+putRecommendationFeedback_reactions = Lens.lens (\PutRecommendationFeedback' {reactions} -> reactions) (\s@PutRecommendationFeedback' {} a -> s {reactions = a} :: PutRecommendationFeedback) Prelude.. Lens.coerced++instance Core.AWSRequest PutRecommendationFeedback where+ type+ AWSResponse PutRecommendationFeedback =+ PutRecommendationFeedbackResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ PutRecommendationFeedbackResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable PutRecommendationFeedback where+ hashWithSalt _salt PutRecommendationFeedback' {..} =+ _salt+ `Prelude.hashWithSalt` codeReviewArn+ `Prelude.hashWithSalt` recommendationId+ `Prelude.hashWithSalt` reactions++instance Prelude.NFData PutRecommendationFeedback where+ rnf PutRecommendationFeedback' {..} =+ Prelude.rnf codeReviewArn+ `Prelude.seq` Prelude.rnf recommendationId+ `Prelude.seq` Prelude.rnf reactions++instance Data.ToHeaders PutRecommendationFeedback where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PutRecommendationFeedback where+ toJSON PutRecommendationFeedback' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("CodeReviewArn" Data..= codeReviewArn),+ Prelude.Just+ ("RecommendationId" Data..= recommendationId),+ Prelude.Just ("Reactions" Data..= reactions)+ ]+ )++instance Data.ToPath PutRecommendationFeedback where+ toPath = Prelude.const "/feedback"++instance Data.ToQuery PutRecommendationFeedback where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newPutRecommendationFeedbackResponse' smart constructor.+data PutRecommendationFeedbackResponse = PutRecommendationFeedbackResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutRecommendationFeedbackResponse' 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', 'putRecommendationFeedbackResponse_httpStatus' - The response's http status code.+newPutRecommendationFeedbackResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ PutRecommendationFeedbackResponse+newPutRecommendationFeedbackResponse pHttpStatus_ =+ PutRecommendationFeedbackResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+putRecommendationFeedbackResponse_httpStatus :: Lens.Lens' PutRecommendationFeedbackResponse Prelude.Int+putRecommendationFeedbackResponse_httpStatus = Lens.lens (\PutRecommendationFeedbackResponse' {httpStatus} -> httpStatus) (\s@PutRecommendationFeedbackResponse' {} a -> s {httpStatus = a} :: PutRecommendationFeedbackResponse)++instance+ Prelude.NFData+ PutRecommendationFeedbackResponse+ where+ rnf PutRecommendationFeedbackResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/CodeGuruReviewer/TagResource.hs view
@@ -0,0 +1,199 @@+{-# 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.CodeGuruReviewer.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 an associated repository.+module Amazonka.CodeGuruReviewer.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_resourceArn,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,++ -- * Response Lenses+ tagResourceResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+ -- object. You can retrieve this ARN by calling+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+ resourceArn :: Prelude.Text,+ -- | An array of key-value pairs used to tag an associated repository. A tag+ -- is a custom attribute label with two parts:+ --+ -- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+ -- @Secret@). Tag keys are case sensitive.+ --+ -- - An optional field known as a /tag value/ (for example,+ -- @111122223333@, @Production@, or a team name). Omitting the tag+ -- value is the same as using an empty string. Like tag keys, tag+ -- values are case sensitive.+ 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:+--+-- 'resourceArn', 'tagResource_resourceArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+--+-- 'tags', 'tagResource_tags' - An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+newTagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pResourceArn_ =+ TagResource'+ { resourceArn = pResourceArn_,+ tags = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++-- | An array of key-value pairs used to tag an associated repository. A tag+-- is a custom attribute label with two parts:+--+-- - A /tag key/ (for example, @CostCenter@, @Environment@, @Project@, or+-- @Secret@). Tag keys are case sensitive.+--+-- - An optional field known as a /tag value/ (for example,+-- @111122223333@, @Production@, or a team name). Omitting the tag+-- value is the same as using an empty string. Like tag keys, tag+-- values are case sensitive.+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` resourceArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagResource where+ rnf TagResource' {..} =+ Prelude.rnf resourceArn+ `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 resourceArn]++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/CodeGuruReviewer/Types.hs view
@@ -0,0 +1,452 @@+{-# 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.CodeGuruReviewer.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.CodeGuruReviewer.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _ConflictException,+ _InternalServerException,+ _NotFoundException,+ _ResourceNotFoundException,+ _ThrottlingException,+ _ValidationException,++ -- * AnalysisType+ AnalysisType (..),++ -- * ConfigFileState+ ConfigFileState (..),++ -- * EncryptionOption+ EncryptionOption (..),++ -- * JobState+ JobState (..),++ -- * ProviderType+ ProviderType (..),++ -- * Reaction+ Reaction (..),++ -- * RecommendationCategory+ RecommendationCategory (..),++ -- * RepositoryAssociationState+ RepositoryAssociationState (..),++ -- * Severity+ Severity (..),++ -- * Type+ Type (..),++ -- * VendorName+ VendorName (..),++ -- * BranchDiffSourceCodeType+ BranchDiffSourceCodeType (..),+ newBranchDiffSourceCodeType,+ branchDiffSourceCodeType_sourceBranchName,+ branchDiffSourceCodeType_destinationBranchName,++ -- * CodeArtifacts+ CodeArtifacts (..),+ newCodeArtifacts,+ codeArtifacts_buildArtifactsObjectKey,+ codeArtifacts_sourceCodeArtifactsObjectKey,++ -- * CodeCommitRepository+ CodeCommitRepository (..),+ newCodeCommitRepository,+ codeCommitRepository_name,++ -- * CodeReview+ CodeReview (..),+ newCodeReview,+ codeReview_analysisTypes,+ codeReview_associationArn,+ codeReview_codeReviewArn,+ codeReview_configFileState,+ codeReview_createdTimeStamp,+ codeReview_lastUpdatedTimeStamp,+ codeReview_metrics,+ codeReview_name,+ codeReview_owner,+ codeReview_providerType,+ codeReview_pullRequestId,+ codeReview_repositoryName,+ codeReview_sourceCodeType,+ codeReview_state,+ codeReview_stateReason,+ codeReview_type,++ -- * CodeReviewSummary+ CodeReviewSummary (..),+ newCodeReviewSummary,+ codeReviewSummary_codeReviewArn,+ codeReviewSummary_createdTimeStamp,+ codeReviewSummary_lastUpdatedTimeStamp,+ codeReviewSummary_metricsSummary,+ codeReviewSummary_name,+ codeReviewSummary_owner,+ codeReviewSummary_providerType,+ codeReviewSummary_pullRequestId,+ codeReviewSummary_repositoryName,+ codeReviewSummary_sourceCodeType,+ codeReviewSummary_state,+ codeReviewSummary_type,++ -- * CodeReviewType+ CodeReviewType (..),+ newCodeReviewType,+ codeReviewType_analysisTypes,+ codeReviewType_repositoryAnalysis,++ -- * CommitDiffSourceCodeType+ CommitDiffSourceCodeType (..),+ newCommitDiffSourceCodeType,+ commitDiffSourceCodeType_destinationCommit,+ commitDiffSourceCodeType_mergeBaseCommit,+ commitDiffSourceCodeType_sourceCommit,++ -- * EventInfo+ EventInfo (..),+ newEventInfo,+ eventInfo_name,+ eventInfo_state,++ -- * KMSKeyDetails+ KMSKeyDetails (..),+ newKMSKeyDetails,+ kmsKeyDetails_encryptionOption,+ kmsKeyDetails_kmsKeyId,++ -- * Metrics+ Metrics (..),+ newMetrics,+ metrics_findingsCount,+ metrics_meteredLinesOfCodeCount,+ metrics_suppressedLinesOfCodeCount,++ -- * MetricsSummary+ MetricsSummary (..),+ newMetricsSummary,+ metricsSummary_findingsCount,+ metricsSummary_meteredLinesOfCodeCount,+ metricsSummary_suppressedLinesOfCodeCount,++ -- * RecommendationFeedback+ RecommendationFeedback (..),+ newRecommendationFeedback,+ recommendationFeedback_codeReviewArn,+ recommendationFeedback_createdTimeStamp,+ recommendationFeedback_lastUpdatedTimeStamp,+ recommendationFeedback_reactions,+ recommendationFeedback_recommendationId,+ recommendationFeedback_userId,++ -- * RecommendationFeedbackSummary+ RecommendationFeedbackSummary (..),+ newRecommendationFeedbackSummary,+ recommendationFeedbackSummary_reactions,+ recommendationFeedbackSummary_recommendationId,+ recommendationFeedbackSummary_userId,++ -- * RecommendationSummary+ RecommendationSummary (..),+ newRecommendationSummary,+ recommendationSummary_description,+ recommendationSummary_endLine,+ recommendationSummary_filePath,+ recommendationSummary_recommendationCategory,+ recommendationSummary_recommendationId,+ recommendationSummary_ruleMetadata,+ recommendationSummary_severity,+ recommendationSummary_startLine,++ -- * Repository+ Repository (..),+ newRepository,+ repository_bitbucket,+ repository_codeCommit,+ repository_gitHubEnterpriseServer,+ repository_s3Bucket,++ -- * RepositoryAnalysis+ RepositoryAnalysis (..),+ newRepositoryAnalysis,+ repositoryAnalysis_repositoryHead,+ repositoryAnalysis_sourceCodeType,++ -- * RepositoryAssociation+ RepositoryAssociation (..),+ newRepositoryAssociation,+ repositoryAssociation_associationArn,+ repositoryAssociation_associationId,+ repositoryAssociation_connectionArn,+ repositoryAssociation_createdTimeStamp,+ repositoryAssociation_kmsKeyDetails,+ repositoryAssociation_lastUpdatedTimeStamp,+ repositoryAssociation_name,+ repositoryAssociation_owner,+ repositoryAssociation_providerType,+ repositoryAssociation_s3RepositoryDetails,+ repositoryAssociation_state,+ repositoryAssociation_stateReason,++ -- * RepositoryAssociationSummary+ RepositoryAssociationSummary (..),+ newRepositoryAssociationSummary,+ repositoryAssociationSummary_associationArn,+ repositoryAssociationSummary_associationId,+ repositoryAssociationSummary_connectionArn,+ repositoryAssociationSummary_lastUpdatedTimeStamp,+ repositoryAssociationSummary_name,+ repositoryAssociationSummary_owner,+ repositoryAssociationSummary_providerType,+ repositoryAssociationSummary_state,++ -- * RepositoryHeadSourceCodeType+ RepositoryHeadSourceCodeType (..),+ newRepositoryHeadSourceCodeType,+ repositoryHeadSourceCodeType_branchName,++ -- * RequestMetadata+ RequestMetadata (..),+ newRequestMetadata,+ requestMetadata_eventInfo,+ requestMetadata_requestId,+ requestMetadata_requester,+ requestMetadata_vendorName,++ -- * RuleMetadata+ RuleMetadata (..),+ newRuleMetadata,+ ruleMetadata_longDescription,+ ruleMetadata_ruleId,+ ruleMetadata_ruleName,+ ruleMetadata_ruleTags,+ ruleMetadata_shortDescription,++ -- * S3BucketRepository+ S3BucketRepository (..),+ newS3BucketRepository,+ s3BucketRepository_details,+ s3BucketRepository_name,++ -- * S3Repository+ S3Repository (..),+ newS3Repository,+ s3Repository_name,+ s3Repository_bucketName,++ -- * S3RepositoryDetails+ S3RepositoryDetails (..),+ newS3RepositoryDetails,+ s3RepositoryDetails_bucketName,+ s3RepositoryDetails_codeArtifacts,++ -- * SourceCodeType+ SourceCodeType (..),+ newSourceCodeType,+ sourceCodeType_branchDiff,+ sourceCodeType_commitDiff,+ sourceCodeType_repositoryHead,+ sourceCodeType_requestMetadata,+ sourceCodeType_s3BucketRepository,++ -- * ThirdPartySourceRepository+ ThirdPartySourceRepository (..),+ newThirdPartySourceRepository,+ thirdPartySourceRepository_name,+ thirdPartySourceRepository_connectionArn,+ thirdPartySourceRepository_owner,+ )+where++import Amazonka.CodeGuruReviewer.Types.AnalysisType+import Amazonka.CodeGuruReviewer.Types.BranchDiffSourceCodeType+import Amazonka.CodeGuruReviewer.Types.CodeArtifacts+import Amazonka.CodeGuruReviewer.Types.CodeCommitRepository+import Amazonka.CodeGuruReviewer.Types.CodeReview+import Amazonka.CodeGuruReviewer.Types.CodeReviewSummary+import Amazonka.CodeGuruReviewer.Types.CodeReviewType+import Amazonka.CodeGuruReviewer.Types.CommitDiffSourceCodeType+import Amazonka.CodeGuruReviewer.Types.ConfigFileState+import Amazonka.CodeGuruReviewer.Types.EncryptionOption+import Amazonka.CodeGuruReviewer.Types.EventInfo+import Amazonka.CodeGuruReviewer.Types.JobState+import Amazonka.CodeGuruReviewer.Types.KMSKeyDetails+import Amazonka.CodeGuruReviewer.Types.Metrics+import Amazonka.CodeGuruReviewer.Types.MetricsSummary+import Amazonka.CodeGuruReviewer.Types.ProviderType+import Amazonka.CodeGuruReviewer.Types.Reaction+import Amazonka.CodeGuruReviewer.Types.RecommendationCategory+import Amazonka.CodeGuruReviewer.Types.RecommendationFeedback+import Amazonka.CodeGuruReviewer.Types.RecommendationFeedbackSummary+import Amazonka.CodeGuruReviewer.Types.RecommendationSummary+import Amazonka.CodeGuruReviewer.Types.Repository+import Amazonka.CodeGuruReviewer.Types.RepositoryAnalysis+import Amazonka.CodeGuruReviewer.Types.RepositoryAssociation+import Amazonka.CodeGuruReviewer.Types.RepositoryAssociationState+import Amazonka.CodeGuruReviewer.Types.RepositoryAssociationSummary+import Amazonka.CodeGuruReviewer.Types.RepositoryHeadSourceCodeType+import Amazonka.CodeGuruReviewer.Types.RequestMetadata+import Amazonka.CodeGuruReviewer.Types.RuleMetadata+import Amazonka.CodeGuruReviewer.Types.S3BucketRepository+import Amazonka.CodeGuruReviewer.Types.S3Repository+import Amazonka.CodeGuruReviewer.Types.S3RepositoryDetails+import Amazonka.CodeGuruReviewer.Types.Severity+import Amazonka.CodeGuruReviewer.Types.SourceCodeType+import Amazonka.CodeGuruReviewer.Types.ThirdPartySourceRepository+import Amazonka.CodeGuruReviewer.Types.Type+import Amazonka.CodeGuruReviewer.Types.VendorName+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++-- | API version @2019-09-19@ of the Amazon CodeGuru Reviewer SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "CodeGuruReviewer",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "codeguru-reviewer",+ Core.signingName = "codeguru-reviewer",+ Core.version = "2019-09-19",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "CodeGuruReviewer",+ 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++-- | You do 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 requested operation would cause a conflict with the current state of+-- a service resource associated with the request. Resolve the conflict+-- before retrying this request.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++-- | The server encountered an internal error and is unable to complete the+-- request.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | The resource specified in the request was not found.+_NotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_NotFoundException =+ Core._MatchServiceError+ defaultService+ "NotFoundException"+ Prelude.. Core.hasStatus 404++-- | The resource specified in the request was not found.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | The 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 input fails to satisfy the specified constraints.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/CodeGuruReviewer/Types/AnalysisType.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.CodeGuruReviewer.Types.AnalysisType+-- 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.CodeGuruReviewer.Types.AnalysisType+ ( AnalysisType+ ( ..,+ AnalysisType_CodeQuality,+ AnalysisType_Security+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AnalysisType = AnalysisType'+ { fromAnalysisType ::+ 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 AnalysisType_CodeQuality :: AnalysisType+pattern AnalysisType_CodeQuality = AnalysisType' "CodeQuality"++pattern AnalysisType_Security :: AnalysisType+pattern AnalysisType_Security = AnalysisType' "Security"++{-# COMPLETE+ AnalysisType_CodeQuality,+ AnalysisType_Security,+ AnalysisType'+ #-}
+ gen/Amazonka/CodeGuruReviewer/Types/BranchDiffSourceCodeType.hs view
@@ -0,0 +1,107 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeGuruReviewer.Types.BranchDiffSourceCodeType+-- 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.CodeGuruReviewer.Types.BranchDiffSourceCodeType 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 type of+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- that specifies a code diff between a source and destination branch in an+-- associated repository.+--+-- /See:/ 'newBranchDiffSourceCodeType' smart constructor.+data BranchDiffSourceCodeType = BranchDiffSourceCodeType'+ { -- | The source branch for a diff in an associated repository.+ sourceBranchName :: Prelude.Text,+ -- | The destination branch for a diff in an associated repository.+ destinationBranchName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BranchDiffSourceCodeType' 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:+--+-- 'sourceBranchName', 'branchDiffSourceCodeType_sourceBranchName' - The source branch for a diff in an associated repository.+--+-- 'destinationBranchName', 'branchDiffSourceCodeType_destinationBranchName' - The destination branch for a diff in an associated repository.+newBranchDiffSourceCodeType ::+ -- | 'sourceBranchName'+ Prelude.Text ->+ -- | 'destinationBranchName'+ Prelude.Text ->+ BranchDiffSourceCodeType+newBranchDiffSourceCodeType+ pSourceBranchName_+ pDestinationBranchName_ =+ BranchDiffSourceCodeType'+ { sourceBranchName =+ pSourceBranchName_,+ destinationBranchName = pDestinationBranchName_+ }++-- | The source branch for a diff in an associated repository.+branchDiffSourceCodeType_sourceBranchName :: Lens.Lens' BranchDiffSourceCodeType Prelude.Text+branchDiffSourceCodeType_sourceBranchName = Lens.lens (\BranchDiffSourceCodeType' {sourceBranchName} -> sourceBranchName) (\s@BranchDiffSourceCodeType' {} a -> s {sourceBranchName = a} :: BranchDiffSourceCodeType)++-- | The destination branch for a diff in an associated repository.+branchDiffSourceCodeType_destinationBranchName :: Lens.Lens' BranchDiffSourceCodeType Prelude.Text+branchDiffSourceCodeType_destinationBranchName = Lens.lens (\BranchDiffSourceCodeType' {destinationBranchName} -> destinationBranchName) (\s@BranchDiffSourceCodeType' {} a -> s {destinationBranchName = a} :: BranchDiffSourceCodeType)++instance Data.FromJSON BranchDiffSourceCodeType where+ parseJSON =+ Data.withObject+ "BranchDiffSourceCodeType"+ ( \x ->+ BranchDiffSourceCodeType'+ Prelude.<$> (x Data..: "SourceBranchName")+ Prelude.<*> (x Data..: "DestinationBranchName")+ )++instance Prelude.Hashable BranchDiffSourceCodeType where+ hashWithSalt _salt BranchDiffSourceCodeType' {..} =+ _salt+ `Prelude.hashWithSalt` sourceBranchName+ `Prelude.hashWithSalt` destinationBranchName++instance Prelude.NFData BranchDiffSourceCodeType where+ rnf BranchDiffSourceCodeType' {..} =+ Prelude.rnf sourceBranchName+ `Prelude.seq` Prelude.rnf destinationBranchName++instance Data.ToJSON BranchDiffSourceCodeType where+ toJSON BranchDiffSourceCodeType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("SourceBranchName" Data..= sourceBranchName),+ Prelude.Just+ ( "DestinationBranchName"+ Data..= destinationBranchName+ )+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/CodeArtifacts.hs view
@@ -0,0 +1,123 @@+{-# 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.CodeGuruReviewer.Types.CodeArtifacts+-- 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.CodeGuruReviewer.Types.CodeArtifacts 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++-- | Code artifacts are source code artifacts and build artifacts used in a+-- repository analysis or a pull request review.+--+-- - Source code artifacts are source code files in a Git repository that+-- are compressed into a .zip file.+--+-- - Build artifacts are .jar or .class files that are compressed in a+-- .zip file.+--+-- /See:/ 'newCodeArtifacts' smart constructor.+data CodeArtifacts = CodeArtifacts'+ { -- | The S3 object key for a build artifacts .zip file that contains .jar or+ -- .class files. This is required for a code review with security analysis.+ -- For more information, see+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/working-with-cicd.html Create code reviews with GitHub Actions>+ -- in the /Amazon CodeGuru Reviewer User Guide/.+ buildArtifactsObjectKey :: Prelude.Maybe Prelude.Text,+ -- | The S3 object key for a source code .zip file. This is required for all+ -- code reviews.+ sourceCodeArtifactsObjectKey :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CodeArtifacts' 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:+--+-- 'buildArtifactsObjectKey', 'codeArtifacts_buildArtifactsObjectKey' - The S3 object key for a build artifacts .zip file that contains .jar or+-- .class files. This is required for a code review with security analysis.+-- For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/working-with-cicd.html Create code reviews with GitHub Actions>+-- in the /Amazon CodeGuru Reviewer User Guide/.+--+-- 'sourceCodeArtifactsObjectKey', 'codeArtifacts_sourceCodeArtifactsObjectKey' - The S3 object key for a source code .zip file. This is required for all+-- code reviews.+newCodeArtifacts ::+ -- | 'sourceCodeArtifactsObjectKey'+ Prelude.Text ->+ CodeArtifacts+newCodeArtifacts pSourceCodeArtifactsObjectKey_ =+ CodeArtifacts'+ { buildArtifactsObjectKey =+ Prelude.Nothing,+ sourceCodeArtifactsObjectKey =+ pSourceCodeArtifactsObjectKey_+ }++-- | The S3 object key for a build artifacts .zip file that contains .jar or+-- .class files. This is required for a code review with security analysis.+-- For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/working-with-cicd.html Create code reviews with GitHub Actions>+-- in the /Amazon CodeGuru Reviewer User Guide/.+codeArtifacts_buildArtifactsObjectKey :: Lens.Lens' CodeArtifacts (Prelude.Maybe Prelude.Text)+codeArtifacts_buildArtifactsObjectKey = Lens.lens (\CodeArtifacts' {buildArtifactsObjectKey} -> buildArtifactsObjectKey) (\s@CodeArtifacts' {} a -> s {buildArtifactsObjectKey = a} :: CodeArtifacts)++-- | The S3 object key for a source code .zip file. This is required for all+-- code reviews.+codeArtifacts_sourceCodeArtifactsObjectKey :: Lens.Lens' CodeArtifacts Prelude.Text+codeArtifacts_sourceCodeArtifactsObjectKey = Lens.lens (\CodeArtifacts' {sourceCodeArtifactsObjectKey} -> sourceCodeArtifactsObjectKey) (\s@CodeArtifacts' {} a -> s {sourceCodeArtifactsObjectKey = a} :: CodeArtifacts)++instance Data.FromJSON CodeArtifacts where+ parseJSON =+ Data.withObject+ "CodeArtifacts"+ ( \x ->+ CodeArtifacts'+ Prelude.<$> (x Data..:? "BuildArtifactsObjectKey")+ Prelude.<*> (x Data..: "SourceCodeArtifactsObjectKey")+ )++instance Prelude.Hashable CodeArtifacts where+ hashWithSalt _salt CodeArtifacts' {..} =+ _salt+ `Prelude.hashWithSalt` buildArtifactsObjectKey+ `Prelude.hashWithSalt` sourceCodeArtifactsObjectKey++instance Prelude.NFData CodeArtifacts where+ rnf CodeArtifacts' {..} =+ Prelude.rnf buildArtifactsObjectKey+ `Prelude.seq` Prelude.rnf sourceCodeArtifactsObjectKey++instance Data.ToJSON CodeArtifacts where+ toJSON CodeArtifacts' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("BuildArtifactsObjectKey" Data..=)+ Prelude.<$> buildArtifactsObjectKey,+ Prelude.Just+ ( "SourceCodeArtifactsObjectKey"+ Data..= sourceCodeArtifactsObjectKey+ )+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/CodeCommitRepository.hs view
@@ -0,0 +1,80 @@+{-# 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.CodeGuruReviewer.Types.CodeCommitRepository+-- 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.CodeGuruReviewer.Types.CodeCommitRepository where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about an Amazon Web Services CodeCommit repository. The+-- CodeCommit repository must be in the same Amazon Web Services Region and+-- Amazon Web Services account where its CodeGuru Reviewer code reviews are+-- configured.+--+-- /See:/ 'newCodeCommitRepository' smart constructor.+data CodeCommitRepository = CodeCommitRepository'+ { -- | The name of the Amazon Web Services CodeCommit repository. For more+ -- information, see+ -- <https://docs.aws.amazon.com/codecommit/latest/APIReference/API_GetRepository.html#CodeCommit-GetRepository-request-repositoryName repositoryName>+ -- in the /Amazon Web Services CodeCommit API Reference/.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CodeCommitRepository' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'codeCommitRepository_name' - The name of the Amazon Web Services CodeCommit repository. For more+-- information, see+-- <https://docs.aws.amazon.com/codecommit/latest/APIReference/API_GetRepository.html#CodeCommit-GetRepository-request-repositoryName repositoryName>+-- in the /Amazon Web Services CodeCommit API Reference/.+newCodeCommitRepository ::+ -- | 'name'+ Prelude.Text ->+ CodeCommitRepository+newCodeCommitRepository pName_ =+ CodeCommitRepository' {name = pName_}++-- | The name of the Amazon Web Services CodeCommit repository. For more+-- information, see+-- <https://docs.aws.amazon.com/codecommit/latest/APIReference/API_GetRepository.html#CodeCommit-GetRepository-request-repositoryName repositoryName>+-- in the /Amazon Web Services CodeCommit API Reference/.+codeCommitRepository_name :: Lens.Lens' CodeCommitRepository Prelude.Text+codeCommitRepository_name = Lens.lens (\CodeCommitRepository' {name} -> name) (\s@CodeCommitRepository' {} a -> s {name = a} :: CodeCommitRepository)++instance Prelude.Hashable CodeCommitRepository where+ hashWithSalt _salt CodeCommitRepository' {..} =+ _salt `Prelude.hashWithSalt` name++instance Prelude.NFData CodeCommitRepository where+ rnf CodeCommitRepository' {..} = Prelude.rnf name++instance Data.ToJSON CodeCommitRepository where+ toJSON CodeCommitRepository' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Name" Data..= name)]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/CodeReview.hs view
@@ -0,0 +1,341 @@+{-# 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.CodeGuruReviewer.Types.CodeReview+-- 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.CodeGuruReviewer.Types.CodeReview where++import Amazonka.CodeGuruReviewer.Types.AnalysisType+import Amazonka.CodeGuruReviewer.Types.ConfigFileState+import Amazonka.CodeGuruReviewer.Types.JobState+import Amazonka.CodeGuruReviewer.Types.Metrics+import Amazonka.CodeGuruReviewer.Types.ProviderType+import Amazonka.CodeGuruReviewer.Types.SourceCodeType+import Amazonka.CodeGuruReviewer.Types.Type+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about a code review. A code review belongs to the associated+-- repository that contains the reviewed code.+--+-- /See:/ 'newCodeReview' smart constructor.+data CodeReview = CodeReview'+ { -- | The types of analysis performed during a repository analysis or a pull+ -- request review. You can specify either @Security@, @CodeQuality@, or+ -- both.+ analysisTypes :: Prelude.Maybe [AnalysisType],+ -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+ -- that contains the reviewed source code. You can retrieve associated+ -- repository ARNs by calling+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+ associationArn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+ -- object.+ codeReviewArn :: Prelude.Maybe Prelude.Text,+ -- | The state of the @aws-codeguru-reviewer.yml@ configuration file that+ -- allows the configuration of the CodeGuru Reviewer analysis. The file+ -- either exists, doesn\'t exist, or exists with errors at the root+ -- directory of your repository.+ configFileState :: Prelude.Maybe ConfigFileState,+ -- | The time, in milliseconds since the epoch, when the code review was+ -- created.+ createdTimeStamp :: Prelude.Maybe Data.POSIX,+ -- | The time, in milliseconds since the epoch, when the code review was last+ -- updated.+ lastUpdatedTimeStamp :: Prelude.Maybe Data.POSIX,+ -- | The statistics from the code review.+ metrics :: Prelude.Maybe Metrics,+ -- | The name of the code review.+ name :: Prelude.Maybe Prelude.Text,+ -- | The owner of the repository. For an Amazon Web Services CodeCommit+ -- repository, this is the Amazon Web Services account ID of the account+ -- that owns the repository. For a GitHub, GitHub Enterprise Server, or+ -- Bitbucket repository, this is the username for the account that owns the+ -- repository. For an S3 repository, it can be the username or Amazon Web+ -- Services account ID.+ owner :: Prelude.Maybe Prelude.Text,+ -- | The type of repository that contains the reviewed code (for example,+ -- GitHub or Bitbucket).+ providerType :: Prelude.Maybe ProviderType,+ -- | The pull request ID for the code review.+ pullRequestId :: Prelude.Maybe Prelude.Text,+ -- | The name of the repository.+ repositoryName :: Prelude.Maybe Prelude.Text,+ -- | The type of the source code for the code review.+ sourceCodeType :: Prelude.Maybe SourceCodeType,+ -- | The valid code review states are:+ --+ -- - @Completed@: The code review is complete.+ --+ -- - @Pending@: The code review started and has not completed or failed.+ --+ -- - @Failed@: The code review failed.+ --+ -- - @Deleting@: The code review is being deleted.+ state :: Prelude.Maybe JobState,+ -- | The reason for the state of the code review.+ stateReason :: Prelude.Maybe Prelude.Text,+ -- | The type of code review.+ type' :: Prelude.Maybe Type+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CodeReview' 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:+--+-- 'analysisTypes', 'codeReview_analysisTypes' - The types of analysis performed during a repository analysis or a pull+-- request review. You can specify either @Security@, @CodeQuality@, or+-- both.+--+-- 'associationArn', 'codeReview_associationArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- that contains the reviewed source code. You can retrieve associated+-- repository ARNs by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+--+-- 'codeReviewArn', 'codeReview_codeReviewArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+--+-- 'configFileState', 'codeReview_configFileState' - The state of the @aws-codeguru-reviewer.yml@ configuration file that+-- allows the configuration of the CodeGuru Reviewer analysis. The file+-- either exists, doesn\'t exist, or exists with errors at the root+-- directory of your repository.+--+-- 'createdTimeStamp', 'codeReview_createdTimeStamp' - The time, in milliseconds since the epoch, when the code review was+-- created.+--+-- 'lastUpdatedTimeStamp', 'codeReview_lastUpdatedTimeStamp' - The time, in milliseconds since the epoch, when the code review was last+-- updated.+--+-- 'metrics', 'codeReview_metrics' - The statistics from the code review.+--+-- 'name', 'codeReview_name' - The name of the code review.+--+-- 'owner', 'codeReview_owner' - The owner of the repository. For an Amazon Web Services CodeCommit+-- repository, this is the Amazon Web Services account ID of the account+-- that owns the repository. For a GitHub, GitHub Enterprise Server, or+-- Bitbucket repository, this is the username for the account that owns the+-- repository. For an S3 repository, it can be the username or Amazon Web+-- Services account ID.+--+-- 'providerType', 'codeReview_providerType' - The type of repository that contains the reviewed code (for example,+-- GitHub or Bitbucket).+--+-- 'pullRequestId', 'codeReview_pullRequestId' - The pull request ID for the code review.+--+-- 'repositoryName', 'codeReview_repositoryName' - The name of the repository.+--+-- 'sourceCodeType', 'codeReview_sourceCodeType' - The type of the source code for the code review.+--+-- 'state', 'codeReview_state' - The valid code review states are:+--+-- - @Completed@: The code review is complete.+--+-- - @Pending@: The code review started and has not completed or failed.+--+-- - @Failed@: The code review failed.+--+-- - @Deleting@: The code review is being deleted.+--+-- 'stateReason', 'codeReview_stateReason' - The reason for the state of the code review.+--+-- 'type'', 'codeReview_type' - The type of code review.+newCodeReview ::+ CodeReview+newCodeReview =+ CodeReview'+ { analysisTypes = Prelude.Nothing,+ associationArn = Prelude.Nothing,+ codeReviewArn = Prelude.Nothing,+ configFileState = Prelude.Nothing,+ createdTimeStamp = Prelude.Nothing,+ lastUpdatedTimeStamp = Prelude.Nothing,+ metrics = Prelude.Nothing,+ name = Prelude.Nothing,+ owner = Prelude.Nothing,+ providerType = Prelude.Nothing,+ pullRequestId = Prelude.Nothing,+ repositoryName = Prelude.Nothing,+ sourceCodeType = Prelude.Nothing,+ state = Prelude.Nothing,+ stateReason = Prelude.Nothing,+ type' = Prelude.Nothing+ }++-- | The types of analysis performed during a repository analysis or a pull+-- request review. You can specify either @Security@, @CodeQuality@, or+-- both.+codeReview_analysisTypes :: Lens.Lens' CodeReview (Prelude.Maybe [AnalysisType])+codeReview_analysisTypes = Lens.lens (\CodeReview' {analysisTypes} -> analysisTypes) (\s@CodeReview' {} a -> s {analysisTypes = a} :: CodeReview) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- that contains the reviewed source code. You can retrieve associated+-- repository ARNs by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+codeReview_associationArn :: Lens.Lens' CodeReview (Prelude.Maybe Prelude.Text)+codeReview_associationArn = Lens.lens (\CodeReview' {associationArn} -> associationArn) (\s@CodeReview' {} a -> s {associationArn = a} :: CodeReview)++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+codeReview_codeReviewArn :: Lens.Lens' CodeReview (Prelude.Maybe Prelude.Text)+codeReview_codeReviewArn = Lens.lens (\CodeReview' {codeReviewArn} -> codeReviewArn) (\s@CodeReview' {} a -> s {codeReviewArn = a} :: CodeReview)++-- | The state of the @aws-codeguru-reviewer.yml@ configuration file that+-- allows the configuration of the CodeGuru Reviewer analysis. The file+-- either exists, doesn\'t exist, or exists with errors at the root+-- directory of your repository.+codeReview_configFileState :: Lens.Lens' CodeReview (Prelude.Maybe ConfigFileState)+codeReview_configFileState = Lens.lens (\CodeReview' {configFileState} -> configFileState) (\s@CodeReview' {} a -> s {configFileState = a} :: CodeReview)++-- | The time, in milliseconds since the epoch, when the code review was+-- created.+codeReview_createdTimeStamp :: Lens.Lens' CodeReview (Prelude.Maybe Prelude.UTCTime)+codeReview_createdTimeStamp = Lens.lens (\CodeReview' {createdTimeStamp} -> createdTimeStamp) (\s@CodeReview' {} a -> s {createdTimeStamp = a} :: CodeReview) Prelude.. Lens.mapping Data._Time++-- | The time, in milliseconds since the epoch, when the code review was last+-- updated.+codeReview_lastUpdatedTimeStamp :: Lens.Lens' CodeReview (Prelude.Maybe Prelude.UTCTime)+codeReview_lastUpdatedTimeStamp = Lens.lens (\CodeReview' {lastUpdatedTimeStamp} -> lastUpdatedTimeStamp) (\s@CodeReview' {} a -> s {lastUpdatedTimeStamp = a} :: CodeReview) Prelude.. Lens.mapping Data._Time++-- | The statistics from the code review.+codeReview_metrics :: Lens.Lens' CodeReview (Prelude.Maybe Metrics)+codeReview_metrics = Lens.lens (\CodeReview' {metrics} -> metrics) (\s@CodeReview' {} a -> s {metrics = a} :: CodeReview)++-- | The name of the code review.+codeReview_name :: Lens.Lens' CodeReview (Prelude.Maybe Prelude.Text)+codeReview_name = Lens.lens (\CodeReview' {name} -> name) (\s@CodeReview' {} a -> s {name = a} :: CodeReview)++-- | The owner of the repository. For an Amazon Web Services CodeCommit+-- repository, this is the Amazon Web Services account ID of the account+-- that owns the repository. For a GitHub, GitHub Enterprise Server, or+-- Bitbucket repository, this is the username for the account that owns the+-- repository. For an S3 repository, it can be the username or Amazon Web+-- Services account ID.+codeReview_owner :: Lens.Lens' CodeReview (Prelude.Maybe Prelude.Text)+codeReview_owner = Lens.lens (\CodeReview' {owner} -> owner) (\s@CodeReview' {} a -> s {owner = a} :: CodeReview)++-- | The type of repository that contains the reviewed code (for example,+-- GitHub or Bitbucket).+codeReview_providerType :: Lens.Lens' CodeReview (Prelude.Maybe ProviderType)+codeReview_providerType = Lens.lens (\CodeReview' {providerType} -> providerType) (\s@CodeReview' {} a -> s {providerType = a} :: CodeReview)++-- | The pull request ID for the code review.+codeReview_pullRequestId :: Lens.Lens' CodeReview (Prelude.Maybe Prelude.Text)+codeReview_pullRequestId = Lens.lens (\CodeReview' {pullRequestId} -> pullRequestId) (\s@CodeReview' {} a -> s {pullRequestId = a} :: CodeReview)++-- | The name of the repository.+codeReview_repositoryName :: Lens.Lens' CodeReview (Prelude.Maybe Prelude.Text)+codeReview_repositoryName = Lens.lens (\CodeReview' {repositoryName} -> repositoryName) (\s@CodeReview' {} a -> s {repositoryName = a} :: CodeReview)++-- | The type of the source code for the code review.+codeReview_sourceCodeType :: Lens.Lens' CodeReview (Prelude.Maybe SourceCodeType)+codeReview_sourceCodeType = Lens.lens (\CodeReview' {sourceCodeType} -> sourceCodeType) (\s@CodeReview' {} a -> s {sourceCodeType = a} :: CodeReview)++-- | The valid code review states are:+--+-- - @Completed@: The code review is complete.+--+-- - @Pending@: The code review started and has not completed or failed.+--+-- - @Failed@: The code review failed.+--+-- - @Deleting@: The code review is being deleted.+codeReview_state :: Lens.Lens' CodeReview (Prelude.Maybe JobState)+codeReview_state = Lens.lens (\CodeReview' {state} -> state) (\s@CodeReview' {} a -> s {state = a} :: CodeReview)++-- | The reason for the state of the code review.+codeReview_stateReason :: Lens.Lens' CodeReview (Prelude.Maybe Prelude.Text)+codeReview_stateReason = Lens.lens (\CodeReview' {stateReason} -> stateReason) (\s@CodeReview' {} a -> s {stateReason = a} :: CodeReview)++-- | The type of code review.+codeReview_type :: Lens.Lens' CodeReview (Prelude.Maybe Type)+codeReview_type = Lens.lens (\CodeReview' {type'} -> type') (\s@CodeReview' {} a -> s {type' = a} :: CodeReview)++instance Data.FromJSON CodeReview where+ parseJSON =+ Data.withObject+ "CodeReview"+ ( \x ->+ CodeReview'+ Prelude.<$> (x Data..:? "AnalysisTypes" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "AssociationArn")+ Prelude.<*> (x Data..:? "CodeReviewArn")+ Prelude.<*> (x Data..:? "ConfigFileState")+ Prelude.<*> (x Data..:? "CreatedTimeStamp")+ Prelude.<*> (x Data..:? "LastUpdatedTimeStamp")+ Prelude.<*> (x Data..:? "Metrics")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "Owner")+ Prelude.<*> (x Data..:? "ProviderType")+ Prelude.<*> (x Data..:? "PullRequestId")+ Prelude.<*> (x Data..:? "RepositoryName")+ Prelude.<*> (x Data..:? "SourceCodeType")+ Prelude.<*> (x Data..:? "State")+ Prelude.<*> (x Data..:? "StateReason")+ Prelude.<*> (x Data..:? "Type")+ )++instance Prelude.Hashable CodeReview where+ hashWithSalt _salt CodeReview' {..} =+ _salt+ `Prelude.hashWithSalt` analysisTypes+ `Prelude.hashWithSalt` associationArn+ `Prelude.hashWithSalt` codeReviewArn+ `Prelude.hashWithSalt` configFileState+ `Prelude.hashWithSalt` createdTimeStamp+ `Prelude.hashWithSalt` lastUpdatedTimeStamp+ `Prelude.hashWithSalt` metrics+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` providerType+ `Prelude.hashWithSalt` pullRequestId+ `Prelude.hashWithSalt` repositoryName+ `Prelude.hashWithSalt` sourceCodeType+ `Prelude.hashWithSalt` state+ `Prelude.hashWithSalt` stateReason+ `Prelude.hashWithSalt` type'++instance Prelude.NFData CodeReview where+ rnf CodeReview' {..} =+ Prelude.rnf analysisTypes+ `Prelude.seq` Prelude.rnf associationArn+ `Prelude.seq` Prelude.rnf codeReviewArn+ `Prelude.seq` Prelude.rnf configFileState+ `Prelude.seq` Prelude.rnf createdTimeStamp+ `Prelude.seq` Prelude.rnf lastUpdatedTimeStamp+ `Prelude.seq` Prelude.rnf metrics+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf providerType+ `Prelude.seq` Prelude.rnf pullRequestId+ `Prelude.seq` Prelude.rnf repositoryName+ `Prelude.seq` Prelude.rnf sourceCodeType+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf stateReason+ `Prelude.seq` Prelude.rnf type'
+ gen/Amazonka/CodeGuruReviewer/Types/CodeReviewSummary.hs view
@@ -0,0 +1,265 @@+{-# 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.CodeGuruReviewer.Types.CodeReviewSummary+-- 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.CodeGuruReviewer.Types.CodeReviewSummary where++import Amazonka.CodeGuruReviewer.Types.JobState+import Amazonka.CodeGuruReviewer.Types.MetricsSummary+import Amazonka.CodeGuruReviewer.Types.ProviderType+import Amazonka.CodeGuruReviewer.Types.SourceCodeType+import Amazonka.CodeGuruReviewer.Types.Type+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about the summary of the code review.+--+-- /See:/ 'newCodeReviewSummary' smart constructor.+data CodeReviewSummary = CodeReviewSummary'+ { -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+ -- object.+ codeReviewArn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the code review was+ -- created.+ createdTimeStamp :: Prelude.Maybe Data.POSIX,+ -- | The time, in milliseconds since the epoch, when the code review was last+ -- updated.+ lastUpdatedTimeStamp :: Prelude.Maybe Data.POSIX,+ -- | The statistics from the code review.+ metricsSummary :: Prelude.Maybe MetricsSummary,+ -- | The name of the code review.+ name :: Prelude.Maybe Prelude.Text,+ -- | The owner of the repository. For an Amazon Web Services CodeCommit+ -- repository, this is the Amazon Web Services account ID of the account+ -- that owns the repository. For a GitHub, GitHub Enterprise Server, or+ -- Bitbucket repository, this is the username for the account that owns the+ -- repository. For an S3 repository, it can be the username or Amazon Web+ -- Services account ID.+ owner :: Prelude.Maybe Prelude.Text,+ -- | The provider type of the repository association.+ providerType :: Prelude.Maybe ProviderType,+ -- | The pull request ID for the code review.+ pullRequestId :: Prelude.Maybe Prelude.Text,+ -- | The name of the repository.+ repositoryName :: Prelude.Maybe Prelude.Text,+ sourceCodeType :: Prelude.Maybe SourceCodeType,+ -- | The state of the code review.+ --+ -- The valid code review states are:+ --+ -- - @Completed@: The code review is complete.+ --+ -- - @Pending@: The code review started and has not completed or failed.+ --+ -- - @Failed@: The code review failed.+ --+ -- - @Deleting@: The code review is being deleted.+ state :: Prelude.Maybe JobState,+ -- | The type of the code review.+ type' :: Prelude.Maybe Type+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CodeReviewSummary' 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:+--+-- 'codeReviewArn', 'codeReviewSummary_codeReviewArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+--+-- 'createdTimeStamp', 'codeReviewSummary_createdTimeStamp' - The time, in milliseconds since the epoch, when the code review was+-- created.+--+-- 'lastUpdatedTimeStamp', 'codeReviewSummary_lastUpdatedTimeStamp' - The time, in milliseconds since the epoch, when the code review was last+-- updated.+--+-- 'metricsSummary', 'codeReviewSummary_metricsSummary' - The statistics from the code review.+--+-- 'name', 'codeReviewSummary_name' - The name of the code review.+--+-- 'owner', 'codeReviewSummary_owner' - The owner of the repository. For an Amazon Web Services CodeCommit+-- repository, this is the Amazon Web Services account ID of the account+-- that owns the repository. For a GitHub, GitHub Enterprise Server, or+-- Bitbucket repository, this is the username for the account that owns the+-- repository. For an S3 repository, it can be the username or Amazon Web+-- Services account ID.+--+-- 'providerType', 'codeReviewSummary_providerType' - The provider type of the repository association.+--+-- 'pullRequestId', 'codeReviewSummary_pullRequestId' - The pull request ID for the code review.+--+-- 'repositoryName', 'codeReviewSummary_repositoryName' - The name of the repository.+--+-- 'sourceCodeType', 'codeReviewSummary_sourceCodeType' - Undocumented member.+--+-- 'state', 'codeReviewSummary_state' - The state of the code review.+--+-- The valid code review states are:+--+-- - @Completed@: The code review is complete.+--+-- - @Pending@: The code review started and has not completed or failed.+--+-- - @Failed@: The code review failed.+--+-- - @Deleting@: The code review is being deleted.+--+-- 'type'', 'codeReviewSummary_type' - The type of the code review.+newCodeReviewSummary ::+ CodeReviewSummary+newCodeReviewSummary =+ CodeReviewSummary'+ { codeReviewArn = Prelude.Nothing,+ createdTimeStamp = Prelude.Nothing,+ lastUpdatedTimeStamp = Prelude.Nothing,+ metricsSummary = Prelude.Nothing,+ name = Prelude.Nothing,+ owner = Prelude.Nothing,+ providerType = Prelude.Nothing,+ pullRequestId = Prelude.Nothing,+ repositoryName = Prelude.Nothing,+ sourceCodeType = Prelude.Nothing,+ state = Prelude.Nothing,+ type' = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+codeReviewSummary_codeReviewArn :: Lens.Lens' CodeReviewSummary (Prelude.Maybe Prelude.Text)+codeReviewSummary_codeReviewArn = Lens.lens (\CodeReviewSummary' {codeReviewArn} -> codeReviewArn) (\s@CodeReviewSummary' {} a -> s {codeReviewArn = a} :: CodeReviewSummary)++-- | The time, in milliseconds since the epoch, when the code review was+-- created.+codeReviewSummary_createdTimeStamp :: Lens.Lens' CodeReviewSummary (Prelude.Maybe Prelude.UTCTime)+codeReviewSummary_createdTimeStamp = Lens.lens (\CodeReviewSummary' {createdTimeStamp} -> createdTimeStamp) (\s@CodeReviewSummary' {} a -> s {createdTimeStamp = a} :: CodeReviewSummary) Prelude.. Lens.mapping Data._Time++-- | The time, in milliseconds since the epoch, when the code review was last+-- updated.+codeReviewSummary_lastUpdatedTimeStamp :: Lens.Lens' CodeReviewSummary (Prelude.Maybe Prelude.UTCTime)+codeReviewSummary_lastUpdatedTimeStamp = Lens.lens (\CodeReviewSummary' {lastUpdatedTimeStamp} -> lastUpdatedTimeStamp) (\s@CodeReviewSummary' {} a -> s {lastUpdatedTimeStamp = a} :: CodeReviewSummary) Prelude.. Lens.mapping Data._Time++-- | The statistics from the code review.+codeReviewSummary_metricsSummary :: Lens.Lens' CodeReviewSummary (Prelude.Maybe MetricsSummary)+codeReviewSummary_metricsSummary = Lens.lens (\CodeReviewSummary' {metricsSummary} -> metricsSummary) (\s@CodeReviewSummary' {} a -> s {metricsSummary = a} :: CodeReviewSummary)++-- | The name of the code review.+codeReviewSummary_name :: Lens.Lens' CodeReviewSummary (Prelude.Maybe Prelude.Text)+codeReviewSummary_name = Lens.lens (\CodeReviewSummary' {name} -> name) (\s@CodeReviewSummary' {} a -> s {name = a} :: CodeReviewSummary)++-- | The owner of the repository. For an Amazon Web Services CodeCommit+-- repository, this is the Amazon Web Services account ID of the account+-- that owns the repository. For a GitHub, GitHub Enterprise Server, or+-- Bitbucket repository, this is the username for the account that owns the+-- repository. For an S3 repository, it can be the username or Amazon Web+-- Services account ID.+codeReviewSummary_owner :: Lens.Lens' CodeReviewSummary (Prelude.Maybe Prelude.Text)+codeReviewSummary_owner = Lens.lens (\CodeReviewSummary' {owner} -> owner) (\s@CodeReviewSummary' {} a -> s {owner = a} :: CodeReviewSummary)++-- | The provider type of the repository association.+codeReviewSummary_providerType :: Lens.Lens' CodeReviewSummary (Prelude.Maybe ProviderType)+codeReviewSummary_providerType = Lens.lens (\CodeReviewSummary' {providerType} -> providerType) (\s@CodeReviewSummary' {} a -> s {providerType = a} :: CodeReviewSummary)++-- | The pull request ID for the code review.+codeReviewSummary_pullRequestId :: Lens.Lens' CodeReviewSummary (Prelude.Maybe Prelude.Text)+codeReviewSummary_pullRequestId = Lens.lens (\CodeReviewSummary' {pullRequestId} -> pullRequestId) (\s@CodeReviewSummary' {} a -> s {pullRequestId = a} :: CodeReviewSummary)++-- | The name of the repository.+codeReviewSummary_repositoryName :: Lens.Lens' CodeReviewSummary (Prelude.Maybe Prelude.Text)+codeReviewSummary_repositoryName = Lens.lens (\CodeReviewSummary' {repositoryName} -> repositoryName) (\s@CodeReviewSummary' {} a -> s {repositoryName = a} :: CodeReviewSummary)++-- | Undocumented member.+codeReviewSummary_sourceCodeType :: Lens.Lens' CodeReviewSummary (Prelude.Maybe SourceCodeType)+codeReviewSummary_sourceCodeType = Lens.lens (\CodeReviewSummary' {sourceCodeType} -> sourceCodeType) (\s@CodeReviewSummary' {} a -> s {sourceCodeType = a} :: CodeReviewSummary)++-- | The state of the code review.+--+-- The valid code review states are:+--+-- - @Completed@: The code review is complete.+--+-- - @Pending@: The code review started and has not completed or failed.+--+-- - @Failed@: The code review failed.+--+-- - @Deleting@: The code review is being deleted.+codeReviewSummary_state :: Lens.Lens' CodeReviewSummary (Prelude.Maybe JobState)+codeReviewSummary_state = Lens.lens (\CodeReviewSummary' {state} -> state) (\s@CodeReviewSummary' {} a -> s {state = a} :: CodeReviewSummary)++-- | The type of the code review.+codeReviewSummary_type :: Lens.Lens' CodeReviewSummary (Prelude.Maybe Type)+codeReviewSummary_type = Lens.lens (\CodeReviewSummary' {type'} -> type') (\s@CodeReviewSummary' {} a -> s {type' = a} :: CodeReviewSummary)++instance Data.FromJSON CodeReviewSummary where+ parseJSON =+ Data.withObject+ "CodeReviewSummary"+ ( \x ->+ CodeReviewSummary'+ Prelude.<$> (x Data..:? "CodeReviewArn")+ Prelude.<*> (x Data..:? "CreatedTimeStamp")+ Prelude.<*> (x Data..:? "LastUpdatedTimeStamp")+ Prelude.<*> (x Data..:? "MetricsSummary")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "Owner")+ Prelude.<*> (x Data..:? "ProviderType")+ Prelude.<*> (x Data..:? "PullRequestId")+ Prelude.<*> (x Data..:? "RepositoryName")+ Prelude.<*> (x Data..:? "SourceCodeType")+ Prelude.<*> (x Data..:? "State")+ Prelude.<*> (x Data..:? "Type")+ )++instance Prelude.Hashable CodeReviewSummary where+ hashWithSalt _salt CodeReviewSummary' {..} =+ _salt+ `Prelude.hashWithSalt` codeReviewArn+ `Prelude.hashWithSalt` createdTimeStamp+ `Prelude.hashWithSalt` lastUpdatedTimeStamp+ `Prelude.hashWithSalt` metricsSummary+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` providerType+ `Prelude.hashWithSalt` pullRequestId+ `Prelude.hashWithSalt` repositoryName+ `Prelude.hashWithSalt` sourceCodeType+ `Prelude.hashWithSalt` state+ `Prelude.hashWithSalt` type'++instance Prelude.NFData CodeReviewSummary where+ rnf CodeReviewSummary' {..} =+ Prelude.rnf codeReviewArn+ `Prelude.seq` Prelude.rnf createdTimeStamp+ `Prelude.seq` Prelude.rnf lastUpdatedTimeStamp+ `Prelude.seq` Prelude.rnf metricsSummary+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf providerType+ `Prelude.seq` Prelude.rnf pullRequestId+ `Prelude.seq` Prelude.rnf repositoryName+ `Prelude.seq` Prelude.rnf sourceCodeType+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf type'
+ gen/Amazonka/CodeGuruReviewer/Types/CodeReviewType.hs view
@@ -0,0 +1,111 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeGuruReviewer.Types.CodeReviewType+-- 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.CodeGuruReviewer.Types.CodeReviewType where++import Amazonka.CodeGuruReviewer.Types.AnalysisType+import Amazonka.CodeGuruReviewer.Types.RepositoryAnalysis+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 type of a code review. There are two code review types:+--+-- - @PullRequest@ - A code review that is automatically triggered by a+-- pull request on an associated repository.+--+-- - @RepositoryAnalysis@ - A code review that analyzes all code under a+-- specified branch in an associated repository. The associated+-- repository is specified using its ARN in+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CreateCodeReview CreateCodeReview>.+--+-- /See:/ 'newCodeReviewType' smart constructor.+data CodeReviewType = CodeReviewType'+ { -- | They types of analysis performed during a repository analysis or a pull+ -- request review. You can specify either @Security@, @CodeQuality@, or+ -- both.+ analysisTypes :: Prelude.Maybe [AnalysisType],+ -- | A code review that analyzes all code under a specified branch in an+ -- associated repository. The associated repository is specified using its+ -- ARN in+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CreateCodeReview CreateCodeReview>.+ repositoryAnalysis :: RepositoryAnalysis+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CodeReviewType' 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:+--+-- 'analysisTypes', 'codeReviewType_analysisTypes' - They types of analysis performed during a repository analysis or a pull+-- request review. You can specify either @Security@, @CodeQuality@, or+-- both.+--+-- 'repositoryAnalysis', 'codeReviewType_repositoryAnalysis' - A code review that analyzes all code under a specified branch in an+-- associated repository. The associated repository is specified using its+-- ARN in+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CreateCodeReview CreateCodeReview>.+newCodeReviewType ::+ -- | 'repositoryAnalysis'+ RepositoryAnalysis ->+ CodeReviewType+newCodeReviewType pRepositoryAnalysis_ =+ CodeReviewType'+ { analysisTypes = Prelude.Nothing,+ repositoryAnalysis = pRepositoryAnalysis_+ }++-- | They types of analysis performed during a repository analysis or a pull+-- request review. You can specify either @Security@, @CodeQuality@, or+-- both.+codeReviewType_analysisTypes :: Lens.Lens' CodeReviewType (Prelude.Maybe [AnalysisType])+codeReviewType_analysisTypes = Lens.lens (\CodeReviewType' {analysisTypes} -> analysisTypes) (\s@CodeReviewType' {} a -> s {analysisTypes = a} :: CodeReviewType) Prelude.. Lens.mapping Lens.coerced++-- | A code review that analyzes all code under a specified branch in an+-- associated repository. The associated repository is specified using its+-- ARN in+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CreateCodeReview CreateCodeReview>.+codeReviewType_repositoryAnalysis :: Lens.Lens' CodeReviewType RepositoryAnalysis+codeReviewType_repositoryAnalysis = Lens.lens (\CodeReviewType' {repositoryAnalysis} -> repositoryAnalysis) (\s@CodeReviewType' {} a -> s {repositoryAnalysis = a} :: CodeReviewType)++instance Prelude.Hashable CodeReviewType where+ hashWithSalt _salt CodeReviewType' {..} =+ _salt+ `Prelude.hashWithSalt` analysisTypes+ `Prelude.hashWithSalt` repositoryAnalysis++instance Prelude.NFData CodeReviewType where+ rnf CodeReviewType' {..} =+ Prelude.rnf analysisTypes+ `Prelude.seq` Prelude.rnf repositoryAnalysis++instance Data.ToJSON CodeReviewType where+ toJSON CodeReviewType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AnalysisTypes" Data..=) Prelude.<$> analysisTypes,+ Prelude.Just+ ("RepositoryAnalysis" Data..= repositoryAnalysis)+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/CommitDiffSourceCodeType.hs view
@@ -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.CodeGuruReviewer.Types.CommitDiffSourceCodeType+-- 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.CodeGuruReviewer.Types.CommitDiffSourceCodeType 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 type of+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- that specifies the commit diff for a pull request on an associated+-- repository. The @SourceCommit@ and @DestinationCommit@ fields are+-- required to do a pull request code review.+--+-- /See:/ 'newCommitDiffSourceCodeType' smart constructor.+data CommitDiffSourceCodeType = CommitDiffSourceCodeType'+ { -- | The SHA of the destination commit used to generate a commit diff. This+ -- field is required for a pull request code review.+ destinationCommit :: Prelude.Maybe Prelude.Text,+ -- | The SHA of the merge base of a commit.+ mergeBaseCommit :: Prelude.Maybe Prelude.Text,+ -- | The SHA of the source commit used to generate a commit diff. This field+ -- is required for a pull request code review.+ sourceCommit :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CommitDiffSourceCodeType' 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:+--+-- 'destinationCommit', 'commitDiffSourceCodeType_destinationCommit' - The SHA of the destination commit used to generate a commit diff. This+-- field is required for a pull request code review.+--+-- 'mergeBaseCommit', 'commitDiffSourceCodeType_mergeBaseCommit' - The SHA of the merge base of a commit.+--+-- 'sourceCommit', 'commitDiffSourceCodeType_sourceCommit' - The SHA of the source commit used to generate a commit diff. This field+-- is required for a pull request code review.+newCommitDiffSourceCodeType ::+ CommitDiffSourceCodeType+newCommitDiffSourceCodeType =+ CommitDiffSourceCodeType'+ { destinationCommit =+ Prelude.Nothing,+ mergeBaseCommit = Prelude.Nothing,+ sourceCommit = Prelude.Nothing+ }++-- | The SHA of the destination commit used to generate a commit diff. This+-- field is required for a pull request code review.+commitDiffSourceCodeType_destinationCommit :: Lens.Lens' CommitDiffSourceCodeType (Prelude.Maybe Prelude.Text)+commitDiffSourceCodeType_destinationCommit = Lens.lens (\CommitDiffSourceCodeType' {destinationCommit} -> destinationCommit) (\s@CommitDiffSourceCodeType' {} a -> s {destinationCommit = a} :: CommitDiffSourceCodeType)++-- | The SHA of the merge base of a commit.+commitDiffSourceCodeType_mergeBaseCommit :: Lens.Lens' CommitDiffSourceCodeType (Prelude.Maybe Prelude.Text)+commitDiffSourceCodeType_mergeBaseCommit = Lens.lens (\CommitDiffSourceCodeType' {mergeBaseCommit} -> mergeBaseCommit) (\s@CommitDiffSourceCodeType' {} a -> s {mergeBaseCommit = a} :: CommitDiffSourceCodeType)++-- | The SHA of the source commit used to generate a commit diff. This field+-- is required for a pull request code review.+commitDiffSourceCodeType_sourceCommit :: Lens.Lens' CommitDiffSourceCodeType (Prelude.Maybe Prelude.Text)+commitDiffSourceCodeType_sourceCommit = Lens.lens (\CommitDiffSourceCodeType' {sourceCommit} -> sourceCommit) (\s@CommitDiffSourceCodeType' {} a -> s {sourceCommit = a} :: CommitDiffSourceCodeType)++instance Data.FromJSON CommitDiffSourceCodeType where+ parseJSON =+ Data.withObject+ "CommitDiffSourceCodeType"+ ( \x ->+ CommitDiffSourceCodeType'+ Prelude.<$> (x Data..:? "DestinationCommit")+ Prelude.<*> (x Data..:? "MergeBaseCommit")+ Prelude.<*> (x Data..:? "SourceCommit")+ )++instance Prelude.Hashable CommitDiffSourceCodeType where+ hashWithSalt _salt CommitDiffSourceCodeType' {..} =+ _salt+ `Prelude.hashWithSalt` destinationCommit+ `Prelude.hashWithSalt` mergeBaseCommit+ `Prelude.hashWithSalt` sourceCommit++instance Prelude.NFData CommitDiffSourceCodeType where+ rnf CommitDiffSourceCodeType' {..} =+ Prelude.rnf destinationCommit+ `Prelude.seq` Prelude.rnf mergeBaseCommit+ `Prelude.seq` Prelude.rnf sourceCommit++instance Data.ToJSON CommitDiffSourceCodeType where+ toJSON CommitDiffSourceCodeType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("DestinationCommit" Data..=)+ Prelude.<$> destinationCommit,+ ("MergeBaseCommit" Data..=)+ Prelude.<$> mergeBaseCommit,+ ("SourceCommit" Data..=) Prelude.<$> sourceCommit+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/ConfigFileState.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.CodeGuruReviewer.Types.ConfigFileState+-- 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.CodeGuruReviewer.Types.ConfigFileState+ ( ConfigFileState+ ( ..,+ ConfigFileState_Absent,+ ConfigFileState_Present,+ ConfigFileState_PresentWithErrors+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ConfigFileState = ConfigFileState'+ { fromConfigFileState ::+ 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 ConfigFileState_Absent :: ConfigFileState+pattern ConfigFileState_Absent = ConfigFileState' "Absent"++pattern ConfigFileState_Present :: ConfigFileState+pattern ConfigFileState_Present = ConfigFileState' "Present"++pattern ConfigFileState_PresentWithErrors :: ConfigFileState+pattern ConfigFileState_PresentWithErrors = ConfigFileState' "PresentWithErrors"++{-# COMPLETE+ ConfigFileState_Absent,+ ConfigFileState_Present,+ ConfigFileState_PresentWithErrors,+ ConfigFileState'+ #-}
+ gen/Amazonka/CodeGuruReviewer/Types/EncryptionOption.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.CodeGuruReviewer.Types.EncryptionOption+-- 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.CodeGuruReviewer.Types.EncryptionOption+ ( EncryptionOption+ ( ..,+ EncryptionOption_AWS_OWNED_CMK,+ EncryptionOption_CUSTOMER_MANAGED_CMK+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype EncryptionOption = EncryptionOption'+ { fromEncryptionOption ::+ 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 EncryptionOption_AWS_OWNED_CMK :: EncryptionOption+pattern EncryptionOption_AWS_OWNED_CMK = EncryptionOption' "AWS_OWNED_CMK"++pattern EncryptionOption_CUSTOMER_MANAGED_CMK :: EncryptionOption+pattern EncryptionOption_CUSTOMER_MANAGED_CMK = EncryptionOption' "CUSTOMER_MANAGED_CMK"++{-# COMPLETE+ EncryptionOption_AWS_OWNED_CMK,+ EncryptionOption_CUSTOMER_MANAGED_CMK,+ EncryptionOption'+ #-}
+ gen/Amazonka/CodeGuruReviewer/Types/EventInfo.hs view
@@ -0,0 +1,99 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeGuruReviewer.Types.EventInfo+-- 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.CodeGuruReviewer.Types.EventInfo where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about an event. The event might be a push, pull request,+-- scheduled request, or another type of event.+--+-- /See:/ 'newEventInfo' smart constructor.+data EventInfo = EventInfo'+ { -- | The name of the event. The possible names are @pull_request@,+ -- @workflow_dispatch@, @schedule@, and @push@+ name :: Prelude.Maybe Prelude.Text,+ -- | The state of an event. The state might be open, closed, or another+ -- state.+ state :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EventInfo' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'eventInfo_name' - The name of the event. The possible names are @pull_request@,+-- @workflow_dispatch@, @schedule@, and @push@+--+-- 'state', 'eventInfo_state' - The state of an event. The state might be open, closed, or another+-- state.+newEventInfo ::+ EventInfo+newEventInfo =+ EventInfo'+ { name = Prelude.Nothing,+ state = Prelude.Nothing+ }++-- | The name of the event. The possible names are @pull_request@,+-- @workflow_dispatch@, @schedule@, and @push@+eventInfo_name :: Lens.Lens' EventInfo (Prelude.Maybe Prelude.Text)+eventInfo_name = Lens.lens (\EventInfo' {name} -> name) (\s@EventInfo' {} a -> s {name = a} :: EventInfo)++-- | The state of an event. The state might be open, closed, or another+-- state.+eventInfo_state :: Lens.Lens' EventInfo (Prelude.Maybe Prelude.Text)+eventInfo_state = Lens.lens (\EventInfo' {state} -> state) (\s@EventInfo' {} a -> s {state = a} :: EventInfo)++instance Data.FromJSON EventInfo where+ parseJSON =+ Data.withObject+ "EventInfo"+ ( \x ->+ EventInfo'+ Prelude.<$> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "State")+ )++instance Prelude.Hashable EventInfo where+ hashWithSalt _salt EventInfo' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` state++instance Prelude.NFData EventInfo where+ rnf EventInfo' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf state++instance Data.ToJSON EventInfo where+ toJSON EventInfo' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Name" Data..=) Prelude.<$> name,+ ("State" Data..=) Prelude.<$> state+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/JobState.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.CodeGuruReviewer.Types.JobState+-- 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.CodeGuruReviewer.Types.JobState+ ( JobState+ ( ..,+ JobState_Completed,+ JobState_Deleting,+ JobState_Failed,+ JobState_Pending+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype JobState = JobState'+ { fromJobState ::+ 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 JobState_Completed :: JobState+pattern JobState_Completed = JobState' "Completed"++pattern JobState_Deleting :: JobState+pattern JobState_Deleting = JobState' "Deleting"++pattern JobState_Failed :: JobState+pattern JobState_Failed = JobState' "Failed"++pattern JobState_Pending :: JobState+pattern JobState_Pending = JobState' "Pending"++{-# COMPLETE+ JobState_Completed,+ JobState_Deleting,+ JobState_Failed,+ JobState_Pending,+ JobState'+ #-}
+ gen/Amazonka/CodeGuruReviewer/Types/KMSKeyDetails.hs view
@@ -0,0 +1,111 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeGuruReviewer.Types.KMSKeyDetails+-- 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.CodeGuruReviewer.Types.KMSKeyDetails where++import Amazonka.CodeGuruReviewer.Types.EncryptionOption+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An object that contains:+--+-- - The encryption option for a repository association. It is either+-- owned by Amazon Web Services Key Management Service (KMS)+-- (@AWS_OWNED_CMK@) or customer managed (@CUSTOMER_MANAGED_CMK@).+--+-- - The ID of the Amazon Web Services KMS key that is associated with a+-- repository association.+--+-- /See:/ 'newKMSKeyDetails' smart constructor.+data KMSKeyDetails = KMSKeyDetails'+ { -- | The encryption option for a repository association. It is either owned+ -- by Amazon Web Services Key Management Service (KMS) (@AWS_OWNED_CMK@) or+ -- customer managed (@CUSTOMER_MANAGED_CMK@).+ encryptionOption :: Prelude.Maybe EncryptionOption,+ -- | The ID of the Amazon Web Services KMS key that is associated with a+ -- repository association.+ kmsKeyId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KMSKeyDetails' 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:+--+-- 'encryptionOption', 'kmsKeyDetails_encryptionOption' - The encryption option for a repository association. It is either owned+-- by Amazon Web Services Key Management Service (KMS) (@AWS_OWNED_CMK@) or+-- customer managed (@CUSTOMER_MANAGED_CMK@).+--+-- 'kmsKeyId', 'kmsKeyDetails_kmsKeyId' - The ID of the Amazon Web Services KMS key that is associated with a+-- repository association.+newKMSKeyDetails ::+ KMSKeyDetails+newKMSKeyDetails =+ KMSKeyDetails'+ { encryptionOption = Prelude.Nothing,+ kmsKeyId = Prelude.Nothing+ }++-- | The encryption option for a repository association. It is either owned+-- by Amazon Web Services Key Management Service (KMS) (@AWS_OWNED_CMK@) or+-- customer managed (@CUSTOMER_MANAGED_CMK@).+kmsKeyDetails_encryptionOption :: Lens.Lens' KMSKeyDetails (Prelude.Maybe EncryptionOption)+kmsKeyDetails_encryptionOption = Lens.lens (\KMSKeyDetails' {encryptionOption} -> encryptionOption) (\s@KMSKeyDetails' {} a -> s {encryptionOption = a} :: KMSKeyDetails)++-- | The ID of the Amazon Web Services KMS key that is associated with a+-- repository association.+kmsKeyDetails_kmsKeyId :: Lens.Lens' KMSKeyDetails (Prelude.Maybe Prelude.Text)+kmsKeyDetails_kmsKeyId = Lens.lens (\KMSKeyDetails' {kmsKeyId} -> kmsKeyId) (\s@KMSKeyDetails' {} a -> s {kmsKeyId = a} :: KMSKeyDetails)++instance Data.FromJSON KMSKeyDetails where+ parseJSON =+ Data.withObject+ "KMSKeyDetails"+ ( \x ->+ KMSKeyDetails'+ Prelude.<$> (x Data..:? "EncryptionOption")+ Prelude.<*> (x Data..:? "KMSKeyId")+ )++instance Prelude.Hashable KMSKeyDetails where+ hashWithSalt _salt KMSKeyDetails' {..} =+ _salt+ `Prelude.hashWithSalt` encryptionOption+ `Prelude.hashWithSalt` kmsKeyId++instance Prelude.NFData KMSKeyDetails where+ rnf KMSKeyDetails' {..} =+ Prelude.rnf encryptionOption+ `Prelude.seq` Prelude.rnf kmsKeyId++instance Data.ToJSON KMSKeyDetails where+ toJSON KMSKeyDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("EncryptionOption" Data..=)+ Prelude.<$> encryptionOption,+ ("KMSKeyId" Data..=) Prelude.<$> kmsKeyId+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/Metrics.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeGuruReviewer.Types.Metrics+-- 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.CodeGuruReviewer.Types.Metrics where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about the statistics from the code review.+--+-- /See:/ 'newMetrics' smart constructor.+data Metrics = Metrics'+ { -- | Total number of recommendations found in the code review.+ findingsCount :: Prelude.Maybe Prelude.Integer,+ -- | @MeteredLinesOfCodeCount@ is the number of lines of code in the+ -- repository where the code review happened. This does not include+ -- non-code lines such as comments and blank lines.+ meteredLinesOfCodeCount :: Prelude.Maybe Prelude.Integer,+ -- | @SuppressedLinesOfCodeCount@ is the number of lines of code in the+ -- repository where the code review happened that CodeGuru Reviewer did not+ -- analyze. The lines suppressed in the analysis is based on the+ -- @excludeFiles@ variable in the @aws-codeguru-reviewer.yml@ file. This+ -- number does not include non-code lines such as comments and blank lines.+ suppressedLinesOfCodeCount :: Prelude.Maybe Prelude.Integer+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Metrics' 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:+--+-- 'findingsCount', 'metrics_findingsCount' - Total number of recommendations found in the code review.+--+-- 'meteredLinesOfCodeCount', 'metrics_meteredLinesOfCodeCount' - @MeteredLinesOfCodeCount@ is the number of lines of code in the+-- repository where the code review happened. This does not include+-- non-code lines such as comments and blank lines.+--+-- 'suppressedLinesOfCodeCount', 'metrics_suppressedLinesOfCodeCount' - @SuppressedLinesOfCodeCount@ is the number of lines of code in the+-- repository where the code review happened that CodeGuru Reviewer did not+-- analyze. The lines suppressed in the analysis is based on the+-- @excludeFiles@ variable in the @aws-codeguru-reviewer.yml@ file. This+-- number does not include non-code lines such as comments and blank lines.+newMetrics ::+ Metrics+newMetrics =+ Metrics'+ { findingsCount = Prelude.Nothing,+ meteredLinesOfCodeCount = Prelude.Nothing,+ suppressedLinesOfCodeCount = Prelude.Nothing+ }++-- | Total number of recommendations found in the code review.+metrics_findingsCount :: Lens.Lens' Metrics (Prelude.Maybe Prelude.Integer)+metrics_findingsCount = Lens.lens (\Metrics' {findingsCount} -> findingsCount) (\s@Metrics' {} a -> s {findingsCount = a} :: Metrics)++-- | @MeteredLinesOfCodeCount@ is the number of lines of code in the+-- repository where the code review happened. This does not include+-- non-code lines such as comments and blank lines.+metrics_meteredLinesOfCodeCount :: Lens.Lens' Metrics (Prelude.Maybe Prelude.Integer)+metrics_meteredLinesOfCodeCount = Lens.lens (\Metrics' {meteredLinesOfCodeCount} -> meteredLinesOfCodeCount) (\s@Metrics' {} a -> s {meteredLinesOfCodeCount = a} :: Metrics)++-- | @SuppressedLinesOfCodeCount@ is the number of lines of code in the+-- repository where the code review happened that CodeGuru Reviewer did not+-- analyze. The lines suppressed in the analysis is based on the+-- @excludeFiles@ variable in the @aws-codeguru-reviewer.yml@ file. This+-- number does not include non-code lines such as comments and blank lines.+metrics_suppressedLinesOfCodeCount :: Lens.Lens' Metrics (Prelude.Maybe Prelude.Integer)+metrics_suppressedLinesOfCodeCount = Lens.lens (\Metrics' {suppressedLinesOfCodeCount} -> suppressedLinesOfCodeCount) (\s@Metrics' {} a -> s {suppressedLinesOfCodeCount = a} :: Metrics)++instance Data.FromJSON Metrics where+ parseJSON =+ Data.withObject+ "Metrics"+ ( \x ->+ Metrics'+ Prelude.<$> (x Data..:? "FindingsCount")+ Prelude.<*> (x Data..:? "MeteredLinesOfCodeCount")+ Prelude.<*> (x Data..:? "SuppressedLinesOfCodeCount")+ )++instance Prelude.Hashable Metrics where+ hashWithSalt _salt Metrics' {..} =+ _salt+ `Prelude.hashWithSalt` findingsCount+ `Prelude.hashWithSalt` meteredLinesOfCodeCount+ `Prelude.hashWithSalt` suppressedLinesOfCodeCount++instance Prelude.NFData Metrics where+ rnf Metrics' {..} =+ Prelude.rnf findingsCount+ `Prelude.seq` Prelude.rnf meteredLinesOfCodeCount+ `Prelude.seq` Prelude.rnf suppressedLinesOfCodeCount
+ gen/Amazonka/CodeGuruReviewer/Types/MetricsSummary.hs view
@@ -0,0 +1,171 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeGuruReviewer.Types.MetricsSummary+-- 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.CodeGuruReviewer.Types.MetricsSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about metrics summaries.+--+-- /See:/ 'newMetricsSummary' smart constructor.+data MetricsSummary = MetricsSummary'+ { -- | Total number of recommendations found in the code review.+ findingsCount :: Prelude.Maybe Prelude.Integer,+ -- | Lines of code metered in the code review. For the initial code review+ -- pull request and all subsequent revisions, this includes all lines of+ -- code in the files added to the pull request. In subsequent revisions,+ -- for files that already existed in the pull request, this includes only+ -- the changed lines of code. In both cases, this does not include non-code+ -- lines such as comments and import statements. For example, if you submit+ -- a pull request containing 5 files, each with 500 lines of code, and in a+ -- subsequent revision you added a new file with 200 lines of code, and+ -- also modified a total of 25 lines across the initial 5 files,+ -- @MeteredLinesOfCodeCount@ includes the first 5 files (5 * 500 = 2,500+ -- lines), the new file (200 lines) and the 25 changed lines of code for a+ -- total of 2,725 lines of code.+ meteredLinesOfCodeCount :: Prelude.Maybe Prelude.Integer,+ -- | Lines of code suppressed in the code review based on the @excludeFiles@+ -- element in the @aws-codeguru-reviewer.yml@ file. For full repository+ -- analyses, this number includes all lines of code in the files that are+ -- suppressed. For pull requests, this number only includes the /changed/+ -- lines of code that are suppressed. In both cases, this number does not+ -- include non-code lines such as comments and import statements. For+ -- example, if you initiate a full repository analysis on a repository+ -- containing 5 files, each file with 100 lines of code, and 2 files are+ -- listed as excluded in the @aws-codeguru-reviewer.yml@ file, then+ -- @SuppressedLinesOfCodeCount@ returns 200 (2 * 100) as the total number+ -- of lines of code suppressed. However, if you submit a pull request for+ -- the same repository, then @SuppressedLinesOfCodeCount@ only includes the+ -- lines in the 2 files that changed. If only 1 of the 2 files changed in+ -- the pull request, then @SuppressedLinesOfCodeCount@ returns 100 (1 *+ -- 100) as the total number of lines of code suppressed.+ suppressedLinesOfCodeCount :: Prelude.Maybe Prelude.Integer+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MetricsSummary' 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:+--+-- 'findingsCount', 'metricsSummary_findingsCount' - Total number of recommendations found in the code review.+--+-- 'meteredLinesOfCodeCount', 'metricsSummary_meteredLinesOfCodeCount' - Lines of code metered in the code review. For the initial code review+-- pull request and all subsequent revisions, this includes all lines of+-- code in the files added to the pull request. In subsequent revisions,+-- for files that already existed in the pull request, this includes only+-- the changed lines of code. In both cases, this does not include non-code+-- lines such as comments and import statements. For example, if you submit+-- a pull request containing 5 files, each with 500 lines of code, and in a+-- subsequent revision you added a new file with 200 lines of code, and+-- also modified a total of 25 lines across the initial 5 files,+-- @MeteredLinesOfCodeCount@ includes the first 5 files (5 * 500 = 2,500+-- lines), the new file (200 lines) and the 25 changed lines of code for a+-- total of 2,725 lines of code.+--+-- 'suppressedLinesOfCodeCount', 'metricsSummary_suppressedLinesOfCodeCount' - Lines of code suppressed in the code review based on the @excludeFiles@+-- element in the @aws-codeguru-reviewer.yml@ file. For full repository+-- analyses, this number includes all lines of code in the files that are+-- suppressed. For pull requests, this number only includes the /changed/+-- lines of code that are suppressed. In both cases, this number does not+-- include non-code lines such as comments and import statements. For+-- example, if you initiate a full repository analysis on a repository+-- containing 5 files, each file with 100 lines of code, and 2 files are+-- listed as excluded in the @aws-codeguru-reviewer.yml@ file, then+-- @SuppressedLinesOfCodeCount@ returns 200 (2 * 100) as the total number+-- of lines of code suppressed. However, if you submit a pull request for+-- the same repository, then @SuppressedLinesOfCodeCount@ only includes the+-- lines in the 2 files that changed. If only 1 of the 2 files changed in+-- the pull request, then @SuppressedLinesOfCodeCount@ returns 100 (1 *+-- 100) as the total number of lines of code suppressed.+newMetricsSummary ::+ MetricsSummary+newMetricsSummary =+ MetricsSummary'+ { findingsCount = Prelude.Nothing,+ meteredLinesOfCodeCount = Prelude.Nothing,+ suppressedLinesOfCodeCount = Prelude.Nothing+ }++-- | Total number of recommendations found in the code review.+metricsSummary_findingsCount :: Lens.Lens' MetricsSummary (Prelude.Maybe Prelude.Integer)+metricsSummary_findingsCount = Lens.lens (\MetricsSummary' {findingsCount} -> findingsCount) (\s@MetricsSummary' {} a -> s {findingsCount = a} :: MetricsSummary)++-- | Lines of code metered in the code review. For the initial code review+-- pull request and all subsequent revisions, this includes all lines of+-- code in the files added to the pull request. In subsequent revisions,+-- for files that already existed in the pull request, this includes only+-- the changed lines of code. In both cases, this does not include non-code+-- lines such as comments and import statements. For example, if you submit+-- a pull request containing 5 files, each with 500 lines of code, and in a+-- subsequent revision you added a new file with 200 lines of code, and+-- also modified a total of 25 lines across the initial 5 files,+-- @MeteredLinesOfCodeCount@ includes the first 5 files (5 * 500 = 2,500+-- lines), the new file (200 lines) and the 25 changed lines of code for a+-- total of 2,725 lines of code.+metricsSummary_meteredLinesOfCodeCount :: Lens.Lens' MetricsSummary (Prelude.Maybe Prelude.Integer)+metricsSummary_meteredLinesOfCodeCount = Lens.lens (\MetricsSummary' {meteredLinesOfCodeCount} -> meteredLinesOfCodeCount) (\s@MetricsSummary' {} a -> s {meteredLinesOfCodeCount = a} :: MetricsSummary)++-- | Lines of code suppressed in the code review based on the @excludeFiles@+-- element in the @aws-codeguru-reviewer.yml@ file. For full repository+-- analyses, this number includes all lines of code in the files that are+-- suppressed. For pull requests, this number only includes the /changed/+-- lines of code that are suppressed. In both cases, this number does not+-- include non-code lines such as comments and import statements. For+-- example, if you initiate a full repository analysis on a repository+-- containing 5 files, each file with 100 lines of code, and 2 files are+-- listed as excluded in the @aws-codeguru-reviewer.yml@ file, then+-- @SuppressedLinesOfCodeCount@ returns 200 (2 * 100) as the total number+-- of lines of code suppressed. However, if you submit a pull request for+-- the same repository, then @SuppressedLinesOfCodeCount@ only includes the+-- lines in the 2 files that changed. If only 1 of the 2 files changed in+-- the pull request, then @SuppressedLinesOfCodeCount@ returns 100 (1 *+-- 100) as the total number of lines of code suppressed.+metricsSummary_suppressedLinesOfCodeCount :: Lens.Lens' MetricsSummary (Prelude.Maybe Prelude.Integer)+metricsSummary_suppressedLinesOfCodeCount = Lens.lens (\MetricsSummary' {suppressedLinesOfCodeCount} -> suppressedLinesOfCodeCount) (\s@MetricsSummary' {} a -> s {suppressedLinesOfCodeCount = a} :: MetricsSummary)++instance Data.FromJSON MetricsSummary where+ parseJSON =+ Data.withObject+ "MetricsSummary"+ ( \x ->+ MetricsSummary'+ Prelude.<$> (x Data..:? "FindingsCount")+ Prelude.<*> (x Data..:? "MeteredLinesOfCodeCount")+ Prelude.<*> (x Data..:? "SuppressedLinesOfCodeCount")+ )++instance Prelude.Hashable MetricsSummary where+ hashWithSalt _salt MetricsSummary' {..} =+ _salt+ `Prelude.hashWithSalt` findingsCount+ `Prelude.hashWithSalt` meteredLinesOfCodeCount+ `Prelude.hashWithSalt` suppressedLinesOfCodeCount++instance Prelude.NFData MetricsSummary where+ rnf MetricsSummary' {..} =+ Prelude.rnf findingsCount+ `Prelude.seq` Prelude.rnf meteredLinesOfCodeCount+ `Prelude.seq` Prelude.rnf suppressedLinesOfCodeCount
+ gen/Amazonka/CodeGuruReviewer/Types/ProviderType.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.CodeGuruReviewer.Types.ProviderType+-- 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.CodeGuruReviewer.Types.ProviderType+ ( ProviderType+ ( ..,+ ProviderType_Bitbucket,+ ProviderType_CodeCommit,+ ProviderType_GitHub,+ ProviderType_GitHubEnterpriseServer,+ ProviderType_S3Bucket+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ProviderType = ProviderType'+ { fromProviderType ::+ 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 ProviderType_Bitbucket :: ProviderType+pattern ProviderType_Bitbucket = ProviderType' "Bitbucket"++pattern ProviderType_CodeCommit :: ProviderType+pattern ProviderType_CodeCommit = ProviderType' "CodeCommit"++pattern ProviderType_GitHub :: ProviderType+pattern ProviderType_GitHub = ProviderType' "GitHub"++pattern ProviderType_GitHubEnterpriseServer :: ProviderType+pattern ProviderType_GitHubEnterpriseServer = ProviderType' "GitHubEnterpriseServer"++pattern ProviderType_S3Bucket :: ProviderType+pattern ProviderType_S3Bucket = ProviderType' "S3Bucket"++{-# COMPLETE+ ProviderType_Bitbucket,+ ProviderType_CodeCommit,+ ProviderType_GitHub,+ ProviderType_GitHubEnterpriseServer,+ ProviderType_S3Bucket,+ ProviderType'+ #-}
+ gen/Amazonka/CodeGuruReviewer/Types/Reaction.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.CodeGuruReviewer.Types.Reaction+-- 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.CodeGuruReviewer.Types.Reaction+ ( Reaction+ ( ..,+ Reaction_ThumbsDown,+ Reaction_ThumbsUp+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Reaction = Reaction'+ { fromReaction ::+ 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 Reaction_ThumbsDown :: Reaction+pattern Reaction_ThumbsDown = Reaction' "ThumbsDown"++pattern Reaction_ThumbsUp :: Reaction+pattern Reaction_ThumbsUp = Reaction' "ThumbsUp"++{-# COMPLETE+ Reaction_ThumbsDown,+ Reaction_ThumbsUp,+ Reaction'+ #-}
+ gen/Amazonka/CodeGuruReviewer/Types/RecommendationCategory.hs view
@@ -0,0 +1,116 @@+{-# 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.CodeGuruReviewer.Types.RecommendationCategory+-- 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.CodeGuruReviewer.Types.RecommendationCategory+ ( RecommendationCategory+ ( ..,+ RecommendationCategory_AWSBestPractices,+ RecommendationCategory_AWSCloudFormationIssues,+ RecommendationCategory_CodeInconsistencies,+ RecommendationCategory_CodeMaintenanceIssues,+ RecommendationCategory_ConcurrencyIssues,+ RecommendationCategory_DuplicateCode,+ RecommendationCategory_InputValidations,+ RecommendationCategory_JavaBestPractices,+ RecommendationCategory_PythonBestPractices,+ RecommendationCategory_ResourceLeaks,+ RecommendationCategory_SecurityIssues+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype RecommendationCategory = RecommendationCategory'+ { fromRecommendationCategory ::+ 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 RecommendationCategory_AWSBestPractices :: RecommendationCategory+pattern RecommendationCategory_AWSBestPractices = RecommendationCategory' "AWSBestPractices"++pattern RecommendationCategory_AWSCloudFormationIssues :: RecommendationCategory+pattern RecommendationCategory_AWSCloudFormationIssues = RecommendationCategory' "AWSCloudFormationIssues"++pattern RecommendationCategory_CodeInconsistencies :: RecommendationCategory+pattern RecommendationCategory_CodeInconsistencies = RecommendationCategory' "CodeInconsistencies"++pattern RecommendationCategory_CodeMaintenanceIssues :: RecommendationCategory+pattern RecommendationCategory_CodeMaintenanceIssues = RecommendationCategory' "CodeMaintenanceIssues"++pattern RecommendationCategory_ConcurrencyIssues :: RecommendationCategory+pattern RecommendationCategory_ConcurrencyIssues = RecommendationCategory' "ConcurrencyIssues"++pattern RecommendationCategory_DuplicateCode :: RecommendationCategory+pattern RecommendationCategory_DuplicateCode = RecommendationCategory' "DuplicateCode"++pattern RecommendationCategory_InputValidations :: RecommendationCategory+pattern RecommendationCategory_InputValidations = RecommendationCategory' "InputValidations"++pattern RecommendationCategory_JavaBestPractices :: RecommendationCategory+pattern RecommendationCategory_JavaBestPractices = RecommendationCategory' "JavaBestPractices"++pattern RecommendationCategory_PythonBestPractices :: RecommendationCategory+pattern RecommendationCategory_PythonBestPractices = RecommendationCategory' "PythonBestPractices"++pattern RecommendationCategory_ResourceLeaks :: RecommendationCategory+pattern RecommendationCategory_ResourceLeaks = RecommendationCategory' "ResourceLeaks"++pattern RecommendationCategory_SecurityIssues :: RecommendationCategory+pattern RecommendationCategory_SecurityIssues = RecommendationCategory' "SecurityIssues"++{-# COMPLETE+ RecommendationCategory_AWSBestPractices,+ RecommendationCategory_AWSCloudFormationIssues,+ RecommendationCategory_CodeInconsistencies,+ RecommendationCategory_CodeMaintenanceIssues,+ RecommendationCategory_ConcurrencyIssues,+ RecommendationCategory_DuplicateCode,+ RecommendationCategory_InputValidations,+ RecommendationCategory_JavaBestPractices,+ RecommendationCategory_PythonBestPractices,+ RecommendationCategory_ResourceLeaks,+ RecommendationCategory_SecurityIssues,+ RecommendationCategory'+ #-}
+ gen/Amazonka/CodeGuruReviewer/Types/RecommendationFeedback.hs view
@@ -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.CodeGuruReviewer.Types.RecommendationFeedback+-- 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.CodeGuruReviewer.Types.RecommendationFeedback where++import Amazonka.CodeGuruReviewer.Types.Reaction+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about the recommendation feedback.+--+-- /See:/ 'newRecommendationFeedback' smart constructor.+data RecommendationFeedback = RecommendationFeedback'+ { -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+ -- object.+ codeReviewArn :: Prelude.Maybe Prelude.Text,+ -- | The time at which the feedback was created.+ createdTimeStamp :: Prelude.Maybe Data.POSIX,+ -- | The time at which the feedback was last updated.+ lastUpdatedTimeStamp :: Prelude.Maybe Data.POSIX,+ -- | List for storing reactions. Reactions are utf-8 text code for emojis.+ -- You can send an empty list to clear off all your feedback.+ reactions :: Prelude.Maybe [Reaction],+ -- | The recommendation ID that can be used to track the provided+ -- recommendations. Later on it can be used to collect the feedback.+ recommendationId :: Prelude.Maybe Prelude.Text,+ -- | The ID of the user that made the API call.+ --+ -- The @UserId@ is an IAM principal that can be specified as an Amazon Web+ -- Services account ID or an Amazon Resource Name (ARN). For more+ -- information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+ -- in the /Amazon Web Services Identity and Access Management User Guide/.+ userId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RecommendationFeedback' 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:+--+-- 'codeReviewArn', 'recommendationFeedback_codeReviewArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+--+-- 'createdTimeStamp', 'recommendationFeedback_createdTimeStamp' - The time at which the feedback was created.+--+-- 'lastUpdatedTimeStamp', 'recommendationFeedback_lastUpdatedTimeStamp' - The time at which the feedback was last updated.+--+-- 'reactions', 'recommendationFeedback_reactions' - List for storing reactions. Reactions are utf-8 text code for emojis.+-- You can send an empty list to clear off all your feedback.+--+-- 'recommendationId', 'recommendationFeedback_recommendationId' - The recommendation ID that can be used to track the provided+-- recommendations. Later on it can be used to collect the feedback.+--+-- 'userId', 'recommendationFeedback_userId' - The ID of the user that made the API call.+--+-- The @UserId@ is an IAM principal that can be specified as an Amazon Web+-- Services account ID or an Amazon Resource Name (ARN). For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+-- in the /Amazon Web Services Identity and Access Management User Guide/.+newRecommendationFeedback ::+ RecommendationFeedback+newRecommendationFeedback =+ RecommendationFeedback'+ { codeReviewArn =+ Prelude.Nothing,+ createdTimeStamp = Prelude.Nothing,+ lastUpdatedTimeStamp = Prelude.Nothing,+ reactions = Prelude.Nothing,+ recommendationId = Prelude.Nothing,+ userId = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CodeReview.html CodeReview>+-- object.+recommendationFeedback_codeReviewArn :: Lens.Lens' RecommendationFeedback (Prelude.Maybe Prelude.Text)+recommendationFeedback_codeReviewArn = Lens.lens (\RecommendationFeedback' {codeReviewArn} -> codeReviewArn) (\s@RecommendationFeedback' {} a -> s {codeReviewArn = a} :: RecommendationFeedback)++-- | The time at which the feedback was created.+recommendationFeedback_createdTimeStamp :: Lens.Lens' RecommendationFeedback (Prelude.Maybe Prelude.UTCTime)+recommendationFeedback_createdTimeStamp = Lens.lens (\RecommendationFeedback' {createdTimeStamp} -> createdTimeStamp) (\s@RecommendationFeedback' {} a -> s {createdTimeStamp = a} :: RecommendationFeedback) Prelude.. Lens.mapping Data._Time++-- | The time at which the feedback was last updated.+recommendationFeedback_lastUpdatedTimeStamp :: Lens.Lens' RecommendationFeedback (Prelude.Maybe Prelude.UTCTime)+recommendationFeedback_lastUpdatedTimeStamp = Lens.lens (\RecommendationFeedback' {lastUpdatedTimeStamp} -> lastUpdatedTimeStamp) (\s@RecommendationFeedback' {} a -> s {lastUpdatedTimeStamp = a} :: RecommendationFeedback) Prelude.. Lens.mapping Data._Time++-- | List for storing reactions. Reactions are utf-8 text code for emojis.+-- You can send an empty list to clear off all your feedback.+recommendationFeedback_reactions :: Lens.Lens' RecommendationFeedback (Prelude.Maybe [Reaction])+recommendationFeedback_reactions = Lens.lens (\RecommendationFeedback' {reactions} -> reactions) (\s@RecommendationFeedback' {} a -> s {reactions = a} :: RecommendationFeedback) Prelude.. Lens.mapping Lens.coerced++-- | The recommendation ID that can be used to track the provided+-- recommendations. Later on it can be used to collect the feedback.+recommendationFeedback_recommendationId :: Lens.Lens' RecommendationFeedback (Prelude.Maybe Prelude.Text)+recommendationFeedback_recommendationId = Lens.lens (\RecommendationFeedback' {recommendationId} -> recommendationId) (\s@RecommendationFeedback' {} a -> s {recommendationId = a} :: RecommendationFeedback)++-- | The ID of the user that made the API call.+--+-- The @UserId@ is an IAM principal that can be specified as an Amazon Web+-- Services account ID or an Amazon Resource Name (ARN). For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+-- in the /Amazon Web Services Identity and Access Management User Guide/.+recommendationFeedback_userId :: Lens.Lens' RecommendationFeedback (Prelude.Maybe Prelude.Text)+recommendationFeedback_userId = Lens.lens (\RecommendationFeedback' {userId} -> userId) (\s@RecommendationFeedback' {} a -> s {userId = a} :: RecommendationFeedback)++instance Data.FromJSON RecommendationFeedback where+ parseJSON =+ Data.withObject+ "RecommendationFeedback"+ ( \x ->+ RecommendationFeedback'+ Prelude.<$> (x Data..:? "CodeReviewArn")+ Prelude.<*> (x Data..:? "CreatedTimeStamp")+ Prelude.<*> (x Data..:? "LastUpdatedTimeStamp")+ Prelude.<*> (x Data..:? "Reactions" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "RecommendationId")+ Prelude.<*> (x Data..:? "UserId")+ )++instance Prelude.Hashable RecommendationFeedback where+ hashWithSalt _salt RecommendationFeedback' {..} =+ _salt+ `Prelude.hashWithSalt` codeReviewArn+ `Prelude.hashWithSalt` createdTimeStamp+ `Prelude.hashWithSalt` lastUpdatedTimeStamp+ `Prelude.hashWithSalt` reactions+ `Prelude.hashWithSalt` recommendationId+ `Prelude.hashWithSalt` userId++instance Prelude.NFData RecommendationFeedback where+ rnf RecommendationFeedback' {..} =+ Prelude.rnf codeReviewArn+ `Prelude.seq` Prelude.rnf createdTimeStamp+ `Prelude.seq` Prelude.rnf lastUpdatedTimeStamp+ `Prelude.seq` Prelude.rnf reactions+ `Prelude.seq` Prelude.rnf recommendationId+ `Prelude.seq` Prelude.rnf userId
+ gen/Amazonka/CodeGuruReviewer/Types/RecommendationFeedbackSummary.hs view
@@ -0,0 +1,122 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeGuruReviewer.Types.RecommendationFeedbackSummary+-- 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.CodeGuruReviewer.Types.RecommendationFeedbackSummary where++import Amazonka.CodeGuruReviewer.Types.Reaction+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about recommendation feedback summaries.+--+-- /See:/ 'newRecommendationFeedbackSummary' smart constructor.+data RecommendationFeedbackSummary = RecommendationFeedbackSummary'+ { -- | List for storing reactions. Reactions are utf-8 text code for emojis.+ reactions :: Prelude.Maybe [Reaction],+ -- | The recommendation ID that can be used to track the provided+ -- recommendations. Later on it can be used to collect the feedback.+ recommendationId :: Prelude.Maybe Prelude.Text,+ -- | The ID of the user that gave the feedback.+ --+ -- The @UserId@ is an IAM principal that can be specified as an Amazon Web+ -- Services account ID or an Amazon Resource Name (ARN). For more+ -- information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+ -- in the /Amazon Web Services Identity and Access Management User Guide/.+ userId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RecommendationFeedbackSummary' 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:+--+-- 'reactions', 'recommendationFeedbackSummary_reactions' - List for storing reactions. Reactions are utf-8 text code for emojis.+--+-- 'recommendationId', 'recommendationFeedbackSummary_recommendationId' - The recommendation ID that can be used to track the provided+-- recommendations. Later on it can be used to collect the feedback.+--+-- 'userId', 'recommendationFeedbackSummary_userId' - The ID of the user that gave the feedback.+--+-- The @UserId@ is an IAM principal that can be specified as an Amazon Web+-- Services account ID or an Amazon Resource Name (ARN). For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+-- in the /Amazon Web Services Identity and Access Management User Guide/.+newRecommendationFeedbackSummary ::+ RecommendationFeedbackSummary+newRecommendationFeedbackSummary =+ RecommendationFeedbackSummary'+ { reactions =+ Prelude.Nothing,+ recommendationId = Prelude.Nothing,+ userId = Prelude.Nothing+ }++-- | List for storing reactions. Reactions are utf-8 text code for emojis.+recommendationFeedbackSummary_reactions :: Lens.Lens' RecommendationFeedbackSummary (Prelude.Maybe [Reaction])+recommendationFeedbackSummary_reactions = Lens.lens (\RecommendationFeedbackSummary' {reactions} -> reactions) (\s@RecommendationFeedbackSummary' {} a -> s {reactions = a} :: RecommendationFeedbackSummary) Prelude.. Lens.mapping Lens.coerced++-- | The recommendation ID that can be used to track the provided+-- recommendations. Later on it can be used to collect the feedback.+recommendationFeedbackSummary_recommendationId :: Lens.Lens' RecommendationFeedbackSummary (Prelude.Maybe Prelude.Text)+recommendationFeedbackSummary_recommendationId = Lens.lens (\RecommendationFeedbackSummary' {recommendationId} -> recommendationId) (\s@RecommendationFeedbackSummary' {} a -> s {recommendationId = a} :: RecommendationFeedbackSummary)++-- | The ID of the user that gave the feedback.+--+-- The @UserId@ is an IAM principal that can be specified as an Amazon Web+-- Services account ID or an Amazon Resource Name (ARN). For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying Specifying a Principal>+-- in the /Amazon Web Services Identity and Access Management User Guide/.+recommendationFeedbackSummary_userId :: Lens.Lens' RecommendationFeedbackSummary (Prelude.Maybe Prelude.Text)+recommendationFeedbackSummary_userId = Lens.lens (\RecommendationFeedbackSummary' {userId} -> userId) (\s@RecommendationFeedbackSummary' {} a -> s {userId = a} :: RecommendationFeedbackSummary)++instance Data.FromJSON RecommendationFeedbackSummary where+ parseJSON =+ Data.withObject+ "RecommendationFeedbackSummary"+ ( \x ->+ RecommendationFeedbackSummary'+ Prelude.<$> (x Data..:? "Reactions" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "RecommendationId")+ Prelude.<*> (x Data..:? "UserId")+ )++instance+ Prelude.Hashable+ RecommendationFeedbackSummary+ where+ hashWithSalt _salt RecommendationFeedbackSummary' {..} =+ _salt+ `Prelude.hashWithSalt` reactions+ `Prelude.hashWithSalt` recommendationId+ `Prelude.hashWithSalt` userId++instance Prelude.NFData RecommendationFeedbackSummary where+ rnf RecommendationFeedbackSummary' {..} =+ Prelude.rnf reactions+ `Prelude.seq` Prelude.rnf recommendationId+ `Prelude.seq` Prelude.rnf userId
+ gen/Amazonka/CodeGuruReviewer/Types/RecommendationSummary.hs view
@@ -0,0 +1,187 @@+{-# 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.CodeGuruReviewer.Types.RecommendationSummary+-- 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.CodeGuruReviewer.Types.RecommendationSummary where++import Amazonka.CodeGuruReviewer.Types.RecommendationCategory+import Amazonka.CodeGuruReviewer.Types.RuleMetadata+import Amazonka.CodeGuruReviewer.Types.Severity+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about recommendations.+--+-- /See:/ 'newRecommendationSummary' smart constructor.+data RecommendationSummary = RecommendationSummary'+ { -- | A description of the recommendation generated by CodeGuru Reviewer for+ -- the lines of code between the start line and the end line.+ description :: Prelude.Maybe Prelude.Text,+ -- | Last line where the recommendation is applicable in the source commit or+ -- source branch. For a single line comment the start line and end line+ -- values are the same.+ endLine :: Prelude.Maybe Prelude.Int,+ -- | Name of the file on which a recommendation is provided.+ filePath :: Prelude.Maybe Prelude.Text,+ -- | The type of a recommendation.+ recommendationCategory :: Prelude.Maybe RecommendationCategory,+ -- | The recommendation ID that can be used to track the provided+ -- recommendations. Later on it can be used to collect the feedback.+ recommendationId :: Prelude.Maybe Prelude.Text,+ -- | Metadata about a rule. Rule metadata includes an ID, a name, a list of+ -- tags, and a short and long description. CodeGuru Reviewer uses rules to+ -- analyze code. A rule\'s recommendation is included in analysis results+ -- if code is detected that violates the rule.+ ruleMetadata :: Prelude.Maybe RuleMetadata,+ -- | The severity of the issue in the code that generated this+ -- recommendation.+ severity :: Prelude.Maybe Severity,+ -- | Start line from where the recommendation is applicable in the source+ -- commit or source branch.+ startLine :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RecommendationSummary' 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', 'recommendationSummary_description' - A description of the recommendation generated by CodeGuru Reviewer for+-- the lines of code between the start line and the end line.+--+-- 'endLine', 'recommendationSummary_endLine' - Last line where the recommendation is applicable in the source commit or+-- source branch. For a single line comment the start line and end line+-- values are the same.+--+-- 'filePath', 'recommendationSummary_filePath' - Name of the file on which a recommendation is provided.+--+-- 'recommendationCategory', 'recommendationSummary_recommendationCategory' - The type of a recommendation.+--+-- 'recommendationId', 'recommendationSummary_recommendationId' - The recommendation ID that can be used to track the provided+-- recommendations. Later on it can be used to collect the feedback.+--+-- 'ruleMetadata', 'recommendationSummary_ruleMetadata' - Metadata about a rule. Rule metadata includes an ID, a name, a list of+-- tags, and a short and long description. CodeGuru Reviewer uses rules to+-- analyze code. A rule\'s recommendation is included in analysis results+-- if code is detected that violates the rule.+--+-- 'severity', 'recommendationSummary_severity' - The severity of the issue in the code that generated this+-- recommendation.+--+-- 'startLine', 'recommendationSummary_startLine' - Start line from where the recommendation is applicable in the source+-- commit or source branch.+newRecommendationSummary ::+ RecommendationSummary+newRecommendationSummary =+ RecommendationSummary'+ { description =+ Prelude.Nothing,+ endLine = Prelude.Nothing,+ filePath = Prelude.Nothing,+ recommendationCategory = Prelude.Nothing,+ recommendationId = Prelude.Nothing,+ ruleMetadata = Prelude.Nothing,+ severity = Prelude.Nothing,+ startLine = Prelude.Nothing+ }++-- | A description of the recommendation generated by CodeGuru Reviewer for+-- the lines of code between the start line and the end line.+recommendationSummary_description :: Lens.Lens' RecommendationSummary (Prelude.Maybe Prelude.Text)+recommendationSummary_description = Lens.lens (\RecommendationSummary' {description} -> description) (\s@RecommendationSummary' {} a -> s {description = a} :: RecommendationSummary)++-- | Last line where the recommendation is applicable in the source commit or+-- source branch. For a single line comment the start line and end line+-- values are the same.+recommendationSummary_endLine :: Lens.Lens' RecommendationSummary (Prelude.Maybe Prelude.Int)+recommendationSummary_endLine = Lens.lens (\RecommendationSummary' {endLine} -> endLine) (\s@RecommendationSummary' {} a -> s {endLine = a} :: RecommendationSummary)++-- | Name of the file on which a recommendation is provided.+recommendationSummary_filePath :: Lens.Lens' RecommendationSummary (Prelude.Maybe Prelude.Text)+recommendationSummary_filePath = Lens.lens (\RecommendationSummary' {filePath} -> filePath) (\s@RecommendationSummary' {} a -> s {filePath = a} :: RecommendationSummary)++-- | The type of a recommendation.+recommendationSummary_recommendationCategory :: Lens.Lens' RecommendationSummary (Prelude.Maybe RecommendationCategory)+recommendationSummary_recommendationCategory = Lens.lens (\RecommendationSummary' {recommendationCategory} -> recommendationCategory) (\s@RecommendationSummary' {} a -> s {recommendationCategory = a} :: RecommendationSummary)++-- | The recommendation ID that can be used to track the provided+-- recommendations. Later on it can be used to collect the feedback.+recommendationSummary_recommendationId :: Lens.Lens' RecommendationSummary (Prelude.Maybe Prelude.Text)+recommendationSummary_recommendationId = Lens.lens (\RecommendationSummary' {recommendationId} -> recommendationId) (\s@RecommendationSummary' {} a -> s {recommendationId = a} :: RecommendationSummary)++-- | Metadata about a rule. Rule metadata includes an ID, a name, a list of+-- tags, and a short and long description. CodeGuru Reviewer uses rules to+-- analyze code. A rule\'s recommendation is included in analysis results+-- if code is detected that violates the rule.+recommendationSummary_ruleMetadata :: Lens.Lens' RecommendationSummary (Prelude.Maybe RuleMetadata)+recommendationSummary_ruleMetadata = Lens.lens (\RecommendationSummary' {ruleMetadata} -> ruleMetadata) (\s@RecommendationSummary' {} a -> s {ruleMetadata = a} :: RecommendationSummary)++-- | The severity of the issue in the code that generated this+-- recommendation.+recommendationSummary_severity :: Lens.Lens' RecommendationSummary (Prelude.Maybe Severity)+recommendationSummary_severity = Lens.lens (\RecommendationSummary' {severity} -> severity) (\s@RecommendationSummary' {} a -> s {severity = a} :: RecommendationSummary)++-- | Start line from where the recommendation is applicable in the source+-- commit or source branch.+recommendationSummary_startLine :: Lens.Lens' RecommendationSummary (Prelude.Maybe Prelude.Int)+recommendationSummary_startLine = Lens.lens (\RecommendationSummary' {startLine} -> startLine) (\s@RecommendationSummary' {} a -> s {startLine = a} :: RecommendationSummary)++instance Data.FromJSON RecommendationSummary where+ parseJSON =+ Data.withObject+ "RecommendationSummary"+ ( \x ->+ RecommendationSummary'+ Prelude.<$> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "EndLine")+ Prelude.<*> (x Data..:? "FilePath")+ Prelude.<*> (x Data..:? "RecommendationCategory")+ Prelude.<*> (x Data..:? "RecommendationId")+ Prelude.<*> (x Data..:? "RuleMetadata")+ Prelude.<*> (x Data..:? "Severity")+ Prelude.<*> (x Data..:? "StartLine")+ )++instance Prelude.Hashable RecommendationSummary where+ hashWithSalt _salt RecommendationSummary' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` endLine+ `Prelude.hashWithSalt` filePath+ `Prelude.hashWithSalt` recommendationCategory+ `Prelude.hashWithSalt` recommendationId+ `Prelude.hashWithSalt` ruleMetadata+ `Prelude.hashWithSalt` severity+ `Prelude.hashWithSalt` startLine++instance Prelude.NFData RecommendationSummary where+ rnf RecommendationSummary' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf endLine+ `Prelude.seq` Prelude.rnf filePath+ `Prelude.seq` Prelude.rnf recommendationCategory+ `Prelude.seq` Prelude.rnf recommendationId+ `Prelude.seq` Prelude.rnf ruleMetadata+ `Prelude.seq` Prelude.rnf severity+ `Prelude.seq` Prelude.rnf startLine
+ gen/Amazonka/CodeGuruReviewer/Types/Repository.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeGuruReviewer.Types.Repository+-- 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.CodeGuruReviewer.Types.Repository where++import Amazonka.CodeGuruReviewer.Types.CodeCommitRepository+import Amazonka.CodeGuruReviewer.Types.S3Repository+import Amazonka.CodeGuruReviewer.Types.ThirdPartySourceRepository+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about an associated Amazon Web Services CodeCommit+-- repository or an associated repository that is managed by Amazon Web+-- Services CodeStar Connections (for example, Bitbucket). This+-- @Repository@ object is not used if your source code is in an associated+-- GitHub repository.+--+-- /See:/ 'newRepository' smart constructor.+data Repository = Repository'+ { -- | Information about a Bitbucket repository.+ bitbucket :: Prelude.Maybe ThirdPartySourceRepository,+ -- | Information about an Amazon Web Services CodeCommit repository.+ codeCommit :: Prelude.Maybe CodeCommitRepository,+ -- | Information about a GitHub Enterprise Server repository.+ gitHubEnterpriseServer :: Prelude.Maybe ThirdPartySourceRepository,+ s3Bucket :: Prelude.Maybe S3Repository+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Repository' 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:+--+-- 'bitbucket', 'repository_bitbucket' - Information about a Bitbucket repository.+--+-- 'codeCommit', 'repository_codeCommit' - Information about an Amazon Web Services CodeCommit repository.+--+-- 'gitHubEnterpriseServer', 'repository_gitHubEnterpriseServer' - Information about a GitHub Enterprise Server repository.+--+-- 's3Bucket', 'repository_s3Bucket' - Undocumented member.+newRepository ::+ Repository+newRepository =+ Repository'+ { bitbucket = Prelude.Nothing,+ codeCommit = Prelude.Nothing,+ gitHubEnterpriseServer = Prelude.Nothing,+ s3Bucket = Prelude.Nothing+ }++-- | Information about a Bitbucket repository.+repository_bitbucket :: Lens.Lens' Repository (Prelude.Maybe ThirdPartySourceRepository)+repository_bitbucket = Lens.lens (\Repository' {bitbucket} -> bitbucket) (\s@Repository' {} a -> s {bitbucket = a} :: Repository)++-- | Information about an Amazon Web Services CodeCommit repository.+repository_codeCommit :: Lens.Lens' Repository (Prelude.Maybe CodeCommitRepository)+repository_codeCommit = Lens.lens (\Repository' {codeCommit} -> codeCommit) (\s@Repository' {} a -> s {codeCommit = a} :: Repository)++-- | Information about a GitHub Enterprise Server repository.+repository_gitHubEnterpriseServer :: Lens.Lens' Repository (Prelude.Maybe ThirdPartySourceRepository)+repository_gitHubEnterpriseServer = Lens.lens (\Repository' {gitHubEnterpriseServer} -> gitHubEnterpriseServer) (\s@Repository' {} a -> s {gitHubEnterpriseServer = a} :: Repository)++-- | Undocumented member.+repository_s3Bucket :: Lens.Lens' Repository (Prelude.Maybe S3Repository)+repository_s3Bucket = Lens.lens (\Repository' {s3Bucket} -> s3Bucket) (\s@Repository' {} a -> s {s3Bucket = a} :: Repository)++instance Prelude.Hashable Repository where+ hashWithSalt _salt Repository' {..} =+ _salt+ `Prelude.hashWithSalt` bitbucket+ `Prelude.hashWithSalt` codeCommit+ `Prelude.hashWithSalt` gitHubEnterpriseServer+ `Prelude.hashWithSalt` s3Bucket++instance Prelude.NFData Repository where+ rnf Repository' {..} =+ Prelude.rnf bitbucket+ `Prelude.seq` Prelude.rnf codeCommit+ `Prelude.seq` Prelude.rnf gitHubEnterpriseServer+ `Prelude.seq` Prelude.rnf s3Bucket++instance Data.ToJSON Repository where+ toJSON Repository' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Bitbucket" Data..=) Prelude.<$> bitbucket,+ ("CodeCommit" Data..=) Prelude.<$> codeCommit,+ ("GitHubEnterpriseServer" Data..=)+ Prelude.<$> gitHubEnterpriseServer,+ ("S3Bucket" Data..=) Prelude.<$> s3Bucket+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/RepositoryAnalysis.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.CodeGuruReviewer.Types.RepositoryAnalysis+-- 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.CodeGuruReviewer.Types.RepositoryAnalysis where++import Amazonka.CodeGuruReviewer.Types.RepositoryHeadSourceCodeType+import Amazonka.CodeGuruReviewer.Types.SourceCodeType+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 code review type that analyzes all code under a specified branch in an+-- associated repository. The associated repository is specified using its+-- ARN when you call+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_CreateCodeReview CreateCodeReview>.+--+-- /See:/ 'newRepositoryAnalysis' smart constructor.+data RepositoryAnalysis = RepositoryAnalysis'+ { -- | A+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+ -- that specifies the tip of a branch in an associated repository.+ repositoryHead :: Prelude.Maybe RepositoryHeadSourceCodeType,+ sourceCodeType :: Prelude.Maybe SourceCodeType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RepositoryAnalysis' 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:+--+-- 'repositoryHead', 'repositoryAnalysis_repositoryHead' - A+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- that specifies the tip of a branch in an associated repository.+--+-- 'sourceCodeType', 'repositoryAnalysis_sourceCodeType' - Undocumented member.+newRepositoryAnalysis ::+ RepositoryAnalysis+newRepositoryAnalysis =+ RepositoryAnalysis'+ { repositoryHead =+ Prelude.Nothing,+ sourceCodeType = Prelude.Nothing+ }++-- | A+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- that specifies the tip of a branch in an associated repository.+repositoryAnalysis_repositoryHead :: Lens.Lens' RepositoryAnalysis (Prelude.Maybe RepositoryHeadSourceCodeType)+repositoryAnalysis_repositoryHead = Lens.lens (\RepositoryAnalysis' {repositoryHead} -> repositoryHead) (\s@RepositoryAnalysis' {} a -> s {repositoryHead = a} :: RepositoryAnalysis)++-- | Undocumented member.+repositoryAnalysis_sourceCodeType :: Lens.Lens' RepositoryAnalysis (Prelude.Maybe SourceCodeType)+repositoryAnalysis_sourceCodeType = Lens.lens (\RepositoryAnalysis' {sourceCodeType} -> sourceCodeType) (\s@RepositoryAnalysis' {} a -> s {sourceCodeType = a} :: RepositoryAnalysis)++instance Prelude.Hashable RepositoryAnalysis where+ hashWithSalt _salt RepositoryAnalysis' {..} =+ _salt+ `Prelude.hashWithSalt` repositoryHead+ `Prelude.hashWithSalt` sourceCodeType++instance Prelude.NFData RepositoryAnalysis where+ rnf RepositoryAnalysis' {..} =+ Prelude.rnf repositoryHead+ `Prelude.seq` Prelude.rnf sourceCodeType++instance Data.ToJSON RepositoryAnalysis where+ toJSON RepositoryAnalysis' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("RepositoryHead" Data..=)+ Prelude.<$> repositoryHead,+ ("SourceCodeType" Data..=)+ Prelude.<$> sourceCodeType+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/RepositoryAssociation.hs view
@@ -0,0 +1,360 @@+{-# 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.CodeGuruReviewer.Types.RepositoryAssociation+-- 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.CodeGuruReviewer.Types.RepositoryAssociation where++import Amazonka.CodeGuruReviewer.Types.KMSKeyDetails+import Amazonka.CodeGuruReviewer.Types.ProviderType+import Amazonka.CodeGuruReviewer.Types.RepositoryAssociationState+import Amazonka.CodeGuruReviewer.Types.S3RepositoryDetails+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about a repository association. The+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_DescribeRepositoryAssociation.html DescribeRepositoryAssociation>+-- operation returns a @RepositoryAssociation@ object.+--+-- /See:/ 'newRepositoryAssociation' smart constructor.+data RepositoryAssociation = RepositoryAssociation'+ { -- | The Amazon Resource Name (ARN) identifying the repository association.+ associationArn :: Prelude.Maybe Prelude.Text,+ -- | The ID of the repository association.+ associationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar+ -- Connections connection. Its format is+ -- @arn:aws:codestar-connections:region-id:aws-account_id:connection\/connection-id@.+ -- For more information, see+ -- <https://docs.aws.amazon.com/codestar-connections/latest/APIReference/API_Connection.html Connection>+ -- in the /Amazon Web Services CodeStar Connections API Reference/.+ connectionArn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the repository+ -- association was created.+ createdTimeStamp :: Prelude.Maybe Data.POSIX,+ -- | A @KMSKeyDetails@ object that contains:+ --+ -- - The encryption option for this repository association. It is either+ -- owned by Amazon Web Services Key Management Service (KMS)+ -- (@AWS_OWNED_CMK@) or customer managed (@CUSTOMER_MANAGED_CMK@).+ --+ -- - The ID of the Amazon Web Services KMS key that is associated with+ -- this repository association.+ kmsKeyDetails :: Prelude.Maybe KMSKeyDetails,+ -- | The time, in milliseconds since the epoch, when the repository+ -- association was last updated.+ lastUpdatedTimeStamp :: Prelude.Maybe Data.POSIX,+ -- | The name of the repository.+ name :: Prelude.Maybe Prelude.Text,+ -- | The owner of the repository. For an Amazon Web Services CodeCommit+ -- repository, this is the Amazon Web Services account ID of the account+ -- that owns the repository. For a GitHub, GitHub Enterprise Server, or+ -- Bitbucket repository, this is the username for the account that owns the+ -- repository. For an S3 repository, it can be the username or Amazon Web+ -- Services account ID.+ owner :: Prelude.Maybe Prelude.Text,+ -- | The provider type of the repository association.+ providerType :: Prelude.Maybe ProviderType,+ s3RepositoryDetails :: Prelude.Maybe S3RepositoryDetails,+ -- | The state of the repository association.+ --+ -- The valid repository association states are:+ --+ -- - __Associated__: The repository association is complete.+ --+ -- - __Associating__: CodeGuru Reviewer is:+ --+ -- - Setting up pull request notifications. This is required for pull+ -- requests to trigger a CodeGuru Reviewer review.+ --+ -- If your repository @ProviderType@ is @GitHub@,+ -- @GitHub Enterprise Server@, or @Bitbucket@, CodeGuru Reviewer+ -- creates webhooks in your repository to trigger CodeGuru Reviewer+ -- reviews. If you delete these webhooks, reviews of code in your+ -- repository cannot be triggered.+ --+ -- - Setting up source code access. This is required for CodeGuru+ -- Reviewer to securely clone code in your repository.+ --+ -- - __Failed__: The repository failed to associate or disassociate.+ --+ -- - __Disassociating__: CodeGuru Reviewer is removing the repository\'s+ -- pull request notifications and source code access.+ --+ -- - __Disassociated__: CodeGuru Reviewer successfully disassociated the+ -- repository. You can create a new association with this repository if+ -- you want to review source code in it later. You can control access+ -- to code reviews created in anassociated repository with tags after+ -- it has been disassociated. For more information, see+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html Using tags to control access to associated repositories>+ -- in the /Amazon CodeGuru Reviewer User Guide/.+ state :: Prelude.Maybe RepositoryAssociationState,+ -- | A description of why the repository association is in the current state.+ stateReason :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RepositoryAssociation' 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:+--+-- 'associationArn', 'repositoryAssociation_associationArn' - The Amazon Resource Name (ARN) identifying the repository association.+--+-- 'associationId', 'repositoryAssociation_associationId' - The ID of the repository association.+--+-- 'connectionArn', 'repositoryAssociation_connectionArn' - The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar+-- Connections connection. Its format is+-- @arn:aws:codestar-connections:region-id:aws-account_id:connection\/connection-id@.+-- For more information, see+-- <https://docs.aws.amazon.com/codestar-connections/latest/APIReference/API_Connection.html Connection>+-- in the /Amazon Web Services CodeStar Connections API Reference/.+--+-- 'createdTimeStamp', 'repositoryAssociation_createdTimeStamp' - The time, in milliseconds since the epoch, when the repository+-- association was created.+--+-- 'kmsKeyDetails', 'repositoryAssociation_kmsKeyDetails' - A @KMSKeyDetails@ object that contains:+--+-- - The encryption option for this repository association. It is either+-- owned by Amazon Web Services Key Management Service (KMS)+-- (@AWS_OWNED_CMK@) or customer managed (@CUSTOMER_MANAGED_CMK@).+--+-- - The ID of the Amazon Web Services KMS key that is associated with+-- this repository association.+--+-- 'lastUpdatedTimeStamp', 'repositoryAssociation_lastUpdatedTimeStamp' - The time, in milliseconds since the epoch, when the repository+-- association was last updated.+--+-- 'name', 'repositoryAssociation_name' - The name of the repository.+--+-- 'owner', 'repositoryAssociation_owner' - The owner of the repository. For an Amazon Web Services CodeCommit+-- repository, this is the Amazon Web Services account ID of the account+-- that owns the repository. For a GitHub, GitHub Enterprise Server, or+-- Bitbucket repository, this is the username for the account that owns the+-- repository. For an S3 repository, it can be the username or Amazon Web+-- Services account ID.+--+-- 'providerType', 'repositoryAssociation_providerType' - The provider type of the repository association.+--+-- 's3RepositoryDetails', 'repositoryAssociation_s3RepositoryDetails' - Undocumented member.+--+-- 'state', 'repositoryAssociation_state' - The state of the repository association.+--+-- The valid repository association states are:+--+-- - __Associated__: The repository association is complete.+--+-- - __Associating__: CodeGuru Reviewer is:+--+-- - Setting up pull request notifications. This is required for pull+-- requests to trigger a CodeGuru Reviewer review.+--+-- If your repository @ProviderType@ is @GitHub@,+-- @GitHub Enterprise Server@, or @Bitbucket@, CodeGuru Reviewer+-- creates webhooks in your repository to trigger CodeGuru Reviewer+-- reviews. If you delete these webhooks, reviews of code in your+-- repository cannot be triggered.+--+-- - Setting up source code access. This is required for CodeGuru+-- Reviewer to securely clone code in your repository.+--+-- - __Failed__: The repository failed to associate or disassociate.+--+-- - __Disassociating__: CodeGuru Reviewer is removing the repository\'s+-- pull request notifications and source code access.+--+-- - __Disassociated__: CodeGuru Reviewer successfully disassociated the+-- repository. You can create a new association with this repository if+-- you want to review source code in it later. You can control access+-- to code reviews created in anassociated repository with tags after+-- it has been disassociated. For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html Using tags to control access to associated repositories>+-- in the /Amazon CodeGuru Reviewer User Guide/.+--+-- 'stateReason', 'repositoryAssociation_stateReason' - A description of why the repository association is in the current state.+newRepositoryAssociation ::+ RepositoryAssociation+newRepositoryAssociation =+ RepositoryAssociation'+ { associationArn =+ Prelude.Nothing,+ associationId = Prelude.Nothing,+ connectionArn = Prelude.Nothing,+ createdTimeStamp = Prelude.Nothing,+ kmsKeyDetails = Prelude.Nothing,+ lastUpdatedTimeStamp = Prelude.Nothing,+ name = Prelude.Nothing,+ owner = Prelude.Nothing,+ providerType = Prelude.Nothing,+ s3RepositoryDetails = Prelude.Nothing,+ state = Prelude.Nothing,+ stateReason = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) identifying the repository association.+repositoryAssociation_associationArn :: Lens.Lens' RepositoryAssociation (Prelude.Maybe Prelude.Text)+repositoryAssociation_associationArn = Lens.lens (\RepositoryAssociation' {associationArn} -> associationArn) (\s@RepositoryAssociation' {} a -> s {associationArn = a} :: RepositoryAssociation)++-- | The ID of the repository association.+repositoryAssociation_associationId :: Lens.Lens' RepositoryAssociation (Prelude.Maybe Prelude.Text)+repositoryAssociation_associationId = Lens.lens (\RepositoryAssociation' {associationId} -> associationId) (\s@RepositoryAssociation' {} a -> s {associationId = a} :: RepositoryAssociation)++-- | The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar+-- Connections connection. Its format is+-- @arn:aws:codestar-connections:region-id:aws-account_id:connection\/connection-id@.+-- For more information, see+-- <https://docs.aws.amazon.com/codestar-connections/latest/APIReference/API_Connection.html Connection>+-- in the /Amazon Web Services CodeStar Connections API Reference/.+repositoryAssociation_connectionArn :: Lens.Lens' RepositoryAssociation (Prelude.Maybe Prelude.Text)+repositoryAssociation_connectionArn = Lens.lens (\RepositoryAssociation' {connectionArn} -> connectionArn) (\s@RepositoryAssociation' {} a -> s {connectionArn = a} :: RepositoryAssociation)++-- | The time, in milliseconds since the epoch, when the repository+-- association was created.+repositoryAssociation_createdTimeStamp :: Lens.Lens' RepositoryAssociation (Prelude.Maybe Prelude.UTCTime)+repositoryAssociation_createdTimeStamp = Lens.lens (\RepositoryAssociation' {createdTimeStamp} -> createdTimeStamp) (\s@RepositoryAssociation' {} a -> s {createdTimeStamp = a} :: RepositoryAssociation) Prelude.. Lens.mapping Data._Time++-- | A @KMSKeyDetails@ object that contains:+--+-- - The encryption option for this repository association. It is either+-- owned by Amazon Web Services Key Management Service (KMS)+-- (@AWS_OWNED_CMK@) or customer managed (@CUSTOMER_MANAGED_CMK@).+--+-- - The ID of the Amazon Web Services KMS key that is associated with+-- this repository association.+repositoryAssociation_kmsKeyDetails :: Lens.Lens' RepositoryAssociation (Prelude.Maybe KMSKeyDetails)+repositoryAssociation_kmsKeyDetails = Lens.lens (\RepositoryAssociation' {kmsKeyDetails} -> kmsKeyDetails) (\s@RepositoryAssociation' {} a -> s {kmsKeyDetails = a} :: RepositoryAssociation)++-- | The time, in milliseconds since the epoch, when the repository+-- association was last updated.+repositoryAssociation_lastUpdatedTimeStamp :: Lens.Lens' RepositoryAssociation (Prelude.Maybe Prelude.UTCTime)+repositoryAssociation_lastUpdatedTimeStamp = Lens.lens (\RepositoryAssociation' {lastUpdatedTimeStamp} -> lastUpdatedTimeStamp) (\s@RepositoryAssociation' {} a -> s {lastUpdatedTimeStamp = a} :: RepositoryAssociation) Prelude.. Lens.mapping Data._Time++-- | The name of the repository.+repositoryAssociation_name :: Lens.Lens' RepositoryAssociation (Prelude.Maybe Prelude.Text)+repositoryAssociation_name = Lens.lens (\RepositoryAssociation' {name} -> name) (\s@RepositoryAssociation' {} a -> s {name = a} :: RepositoryAssociation)++-- | The owner of the repository. For an Amazon Web Services CodeCommit+-- repository, this is the Amazon Web Services account ID of the account+-- that owns the repository. For a GitHub, GitHub Enterprise Server, or+-- Bitbucket repository, this is the username for the account that owns the+-- repository. For an S3 repository, it can be the username or Amazon Web+-- Services account ID.+repositoryAssociation_owner :: Lens.Lens' RepositoryAssociation (Prelude.Maybe Prelude.Text)+repositoryAssociation_owner = Lens.lens (\RepositoryAssociation' {owner} -> owner) (\s@RepositoryAssociation' {} a -> s {owner = a} :: RepositoryAssociation)++-- | The provider type of the repository association.+repositoryAssociation_providerType :: Lens.Lens' RepositoryAssociation (Prelude.Maybe ProviderType)+repositoryAssociation_providerType = Lens.lens (\RepositoryAssociation' {providerType} -> providerType) (\s@RepositoryAssociation' {} a -> s {providerType = a} :: RepositoryAssociation)++-- | Undocumented member.+repositoryAssociation_s3RepositoryDetails :: Lens.Lens' RepositoryAssociation (Prelude.Maybe S3RepositoryDetails)+repositoryAssociation_s3RepositoryDetails = Lens.lens (\RepositoryAssociation' {s3RepositoryDetails} -> s3RepositoryDetails) (\s@RepositoryAssociation' {} a -> s {s3RepositoryDetails = a} :: RepositoryAssociation)++-- | The state of the repository association.+--+-- The valid repository association states are:+--+-- - __Associated__: The repository association is complete.+--+-- - __Associating__: CodeGuru Reviewer is:+--+-- - Setting up pull request notifications. This is required for pull+-- requests to trigger a CodeGuru Reviewer review.+--+-- If your repository @ProviderType@ is @GitHub@,+-- @GitHub Enterprise Server@, or @Bitbucket@, CodeGuru Reviewer+-- creates webhooks in your repository to trigger CodeGuru Reviewer+-- reviews. If you delete these webhooks, reviews of code in your+-- repository cannot be triggered.+--+-- - Setting up source code access. This is required for CodeGuru+-- Reviewer to securely clone code in your repository.+--+-- - __Failed__: The repository failed to associate or disassociate.+--+-- - __Disassociating__: CodeGuru Reviewer is removing the repository\'s+-- pull request notifications and source code access.+--+-- - __Disassociated__: CodeGuru Reviewer successfully disassociated the+-- repository. You can create a new association with this repository if+-- you want to review source code in it later. You can control access+-- to code reviews created in anassociated repository with tags after+-- it has been disassociated. For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html Using tags to control access to associated repositories>+-- in the /Amazon CodeGuru Reviewer User Guide/.+repositoryAssociation_state :: Lens.Lens' RepositoryAssociation (Prelude.Maybe RepositoryAssociationState)+repositoryAssociation_state = Lens.lens (\RepositoryAssociation' {state} -> state) (\s@RepositoryAssociation' {} a -> s {state = a} :: RepositoryAssociation)++-- | A description of why the repository association is in the current state.+repositoryAssociation_stateReason :: Lens.Lens' RepositoryAssociation (Prelude.Maybe Prelude.Text)+repositoryAssociation_stateReason = Lens.lens (\RepositoryAssociation' {stateReason} -> stateReason) (\s@RepositoryAssociation' {} a -> s {stateReason = a} :: RepositoryAssociation)++instance Data.FromJSON RepositoryAssociation where+ parseJSON =+ Data.withObject+ "RepositoryAssociation"+ ( \x ->+ RepositoryAssociation'+ Prelude.<$> (x Data..:? "AssociationArn")+ Prelude.<*> (x Data..:? "AssociationId")+ Prelude.<*> (x Data..:? "ConnectionArn")+ Prelude.<*> (x Data..:? "CreatedTimeStamp")+ Prelude.<*> (x Data..:? "KMSKeyDetails")+ Prelude.<*> (x Data..:? "LastUpdatedTimeStamp")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "Owner")+ Prelude.<*> (x Data..:? "ProviderType")+ Prelude.<*> (x Data..:? "S3RepositoryDetails")+ Prelude.<*> (x Data..:? "State")+ Prelude.<*> (x Data..:? "StateReason")+ )++instance Prelude.Hashable RepositoryAssociation where+ hashWithSalt _salt RepositoryAssociation' {..} =+ _salt+ `Prelude.hashWithSalt` associationArn+ `Prelude.hashWithSalt` associationId+ `Prelude.hashWithSalt` connectionArn+ `Prelude.hashWithSalt` createdTimeStamp+ `Prelude.hashWithSalt` kmsKeyDetails+ `Prelude.hashWithSalt` lastUpdatedTimeStamp+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` providerType+ `Prelude.hashWithSalt` s3RepositoryDetails+ `Prelude.hashWithSalt` state+ `Prelude.hashWithSalt` stateReason++instance Prelude.NFData RepositoryAssociation where+ rnf RepositoryAssociation' {..} =+ Prelude.rnf associationArn+ `Prelude.seq` Prelude.rnf associationId+ `Prelude.seq` Prelude.rnf connectionArn+ `Prelude.seq` Prelude.rnf createdTimeStamp+ `Prelude.seq` Prelude.rnf kmsKeyDetails+ `Prelude.seq` Prelude.rnf lastUpdatedTimeStamp+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf providerType+ `Prelude.seq` Prelude.rnf s3RepositoryDetails+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf stateReason
+ gen/Amazonka/CodeGuruReviewer/Types/RepositoryAssociationState.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.CodeGuruReviewer.Types.RepositoryAssociationState+-- 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.CodeGuruReviewer.Types.RepositoryAssociationState+ ( RepositoryAssociationState+ ( ..,+ RepositoryAssociationState_Associated,+ RepositoryAssociationState_Associating,+ RepositoryAssociationState_Disassociated,+ RepositoryAssociationState_Disassociating,+ RepositoryAssociationState_Failed+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype RepositoryAssociationState = RepositoryAssociationState'+ { fromRepositoryAssociationState ::+ 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 RepositoryAssociationState_Associated :: RepositoryAssociationState+pattern RepositoryAssociationState_Associated = RepositoryAssociationState' "Associated"++pattern RepositoryAssociationState_Associating :: RepositoryAssociationState+pattern RepositoryAssociationState_Associating = RepositoryAssociationState' "Associating"++pattern RepositoryAssociationState_Disassociated :: RepositoryAssociationState+pattern RepositoryAssociationState_Disassociated = RepositoryAssociationState' "Disassociated"++pattern RepositoryAssociationState_Disassociating :: RepositoryAssociationState+pattern RepositoryAssociationState_Disassociating = RepositoryAssociationState' "Disassociating"++pattern RepositoryAssociationState_Failed :: RepositoryAssociationState+pattern RepositoryAssociationState_Failed = RepositoryAssociationState' "Failed"++{-# COMPLETE+ RepositoryAssociationState_Associated,+ RepositoryAssociationState_Associating,+ RepositoryAssociationState_Disassociated,+ RepositoryAssociationState_Disassociating,+ RepositoryAssociationState_Failed,+ RepositoryAssociationState'+ #-}
+ gen/Amazonka/CodeGuruReviewer/Types/RepositoryAssociationSummary.hs view
@@ -0,0 +1,299 @@+{-# 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.CodeGuruReviewer.Types.RepositoryAssociationSummary+-- 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.CodeGuruReviewer.Types.RepositoryAssociationSummary where++import Amazonka.CodeGuruReviewer.Types.ProviderType+import Amazonka.CodeGuruReviewer.Types.RepositoryAssociationState+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++-- | Summary information about a repository association. The+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>+-- operation returns a list of @RepositoryAssociationSummary@ objects.+--+-- /See:/ 'newRepositoryAssociationSummary' smart constructor.+data RepositoryAssociationSummary = RepositoryAssociationSummary'+ { -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+ -- object. You can retrieve this ARN by calling+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+ associationArn :: Prelude.Maybe Prelude.Text,+ -- | The repository association ID.+ associationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar+ -- Connections connection. Its format is+ -- @arn:aws:codestar-connections:region-id:aws-account_id:connection\/connection-id@.+ -- For more information, see+ -- <https://docs.aws.amazon.com/codestar-connections/latest/APIReference/API_Connection.html Connection>+ -- in the /Amazon Web Services CodeStar Connections API Reference/.+ connectionArn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, since the repository+ -- association was last updated.+ lastUpdatedTimeStamp :: Prelude.Maybe Data.POSIX,+ -- | The name of the repository association.+ name :: Prelude.Maybe Prelude.Text,+ -- | The owner of the repository. For an Amazon Web Services CodeCommit+ -- repository, this is the Amazon Web Services account ID of the account+ -- that owns the repository. For a GitHub, GitHub Enterprise Server, or+ -- Bitbucket repository, this is the username for the account that owns the+ -- repository. For an S3 repository, it can be the username or Amazon Web+ -- Services account ID.+ owner :: Prelude.Maybe Prelude.Text,+ -- | The provider type of the repository association.+ providerType :: Prelude.Maybe ProviderType,+ -- | The state of the repository association.+ --+ -- The valid repository association states are:+ --+ -- - __Associated__: The repository association is complete.+ --+ -- - __Associating__: CodeGuru Reviewer is:+ --+ -- - Setting up pull request notifications. This is required for pull+ -- requests to trigger a CodeGuru Reviewer review.+ --+ -- If your repository @ProviderType@ is @GitHub@,+ -- @GitHub Enterprise Server@, or @Bitbucket@, CodeGuru Reviewer+ -- creates webhooks in your repository to trigger CodeGuru Reviewer+ -- reviews. If you delete these webhooks, reviews of code in your+ -- repository cannot be triggered.+ --+ -- - Setting up source code access. This is required for CodeGuru+ -- Reviewer to securely clone code in your repository.+ --+ -- - __Failed__: The repository failed to associate or disassociate.+ --+ -- - __Disassociating__: CodeGuru Reviewer is removing the repository\'s+ -- pull request notifications and source code access.+ --+ -- - __Disassociated__: CodeGuru Reviewer successfully disassociated the+ -- repository. You can create a new association with this repository if+ -- you want to review source code in it later. You can control access+ -- to code reviews created in anassociated repository with tags after+ -- it has been disassociated. For more information, see+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html Using tags to control access to associated repositories>+ -- in the /Amazon CodeGuru Reviewer User Guide/.+ state :: Prelude.Maybe RepositoryAssociationState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RepositoryAssociationSummary' 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:+--+-- 'associationArn', 'repositoryAssociationSummary_associationArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+--+-- 'associationId', 'repositoryAssociationSummary_associationId' - The repository association ID.+--+-- 'connectionArn', 'repositoryAssociationSummary_connectionArn' - The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar+-- Connections connection. Its format is+-- @arn:aws:codestar-connections:region-id:aws-account_id:connection\/connection-id@.+-- For more information, see+-- <https://docs.aws.amazon.com/codestar-connections/latest/APIReference/API_Connection.html Connection>+-- in the /Amazon Web Services CodeStar Connections API Reference/.+--+-- 'lastUpdatedTimeStamp', 'repositoryAssociationSummary_lastUpdatedTimeStamp' - The time, in milliseconds since the epoch, since the repository+-- association was last updated.+--+-- 'name', 'repositoryAssociationSummary_name' - The name of the repository association.+--+-- 'owner', 'repositoryAssociationSummary_owner' - The owner of the repository. For an Amazon Web Services CodeCommit+-- repository, this is the Amazon Web Services account ID of the account+-- that owns the repository. For a GitHub, GitHub Enterprise Server, or+-- Bitbucket repository, this is the username for the account that owns the+-- repository. For an S3 repository, it can be the username or Amazon Web+-- Services account ID.+--+-- 'providerType', 'repositoryAssociationSummary_providerType' - The provider type of the repository association.+--+-- 'state', 'repositoryAssociationSummary_state' - The state of the repository association.+--+-- The valid repository association states are:+--+-- - __Associated__: The repository association is complete.+--+-- - __Associating__: CodeGuru Reviewer is:+--+-- - Setting up pull request notifications. This is required for pull+-- requests to trigger a CodeGuru Reviewer review.+--+-- If your repository @ProviderType@ is @GitHub@,+-- @GitHub Enterprise Server@, or @Bitbucket@, CodeGuru Reviewer+-- creates webhooks in your repository to trigger CodeGuru Reviewer+-- reviews. If you delete these webhooks, reviews of code in your+-- repository cannot be triggered.+--+-- - Setting up source code access. This is required for CodeGuru+-- Reviewer to securely clone code in your repository.+--+-- - __Failed__: The repository failed to associate or disassociate.+--+-- - __Disassociating__: CodeGuru Reviewer is removing the repository\'s+-- pull request notifications and source code access.+--+-- - __Disassociated__: CodeGuru Reviewer successfully disassociated the+-- repository. You can create a new association with this repository if+-- you want to review source code in it later. You can control access+-- to code reviews created in anassociated repository with tags after+-- it has been disassociated. For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html Using tags to control access to associated repositories>+-- in the /Amazon CodeGuru Reviewer User Guide/.+newRepositoryAssociationSummary ::+ RepositoryAssociationSummary+newRepositoryAssociationSummary =+ RepositoryAssociationSummary'+ { associationArn =+ Prelude.Nothing,+ associationId = Prelude.Nothing,+ connectionArn = Prelude.Nothing,+ lastUpdatedTimeStamp = Prelude.Nothing,+ name = Prelude.Nothing,+ owner = Prelude.Nothing,+ providerType = Prelude.Nothing,+ state = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+repositoryAssociationSummary_associationArn :: Lens.Lens' RepositoryAssociationSummary (Prelude.Maybe Prelude.Text)+repositoryAssociationSummary_associationArn = Lens.lens (\RepositoryAssociationSummary' {associationArn} -> associationArn) (\s@RepositoryAssociationSummary' {} a -> s {associationArn = a} :: RepositoryAssociationSummary)++-- | The repository association ID.+repositoryAssociationSummary_associationId :: Lens.Lens' RepositoryAssociationSummary (Prelude.Maybe Prelude.Text)+repositoryAssociationSummary_associationId = Lens.lens (\RepositoryAssociationSummary' {associationId} -> associationId) (\s@RepositoryAssociationSummary' {} a -> s {associationId = a} :: RepositoryAssociationSummary)++-- | The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar+-- Connections connection. Its format is+-- @arn:aws:codestar-connections:region-id:aws-account_id:connection\/connection-id@.+-- For more information, see+-- <https://docs.aws.amazon.com/codestar-connections/latest/APIReference/API_Connection.html Connection>+-- in the /Amazon Web Services CodeStar Connections API Reference/.+repositoryAssociationSummary_connectionArn :: Lens.Lens' RepositoryAssociationSummary (Prelude.Maybe Prelude.Text)+repositoryAssociationSummary_connectionArn = Lens.lens (\RepositoryAssociationSummary' {connectionArn} -> connectionArn) (\s@RepositoryAssociationSummary' {} a -> s {connectionArn = a} :: RepositoryAssociationSummary)++-- | The time, in milliseconds since the epoch, since the repository+-- association was last updated.+repositoryAssociationSummary_lastUpdatedTimeStamp :: Lens.Lens' RepositoryAssociationSummary (Prelude.Maybe Prelude.UTCTime)+repositoryAssociationSummary_lastUpdatedTimeStamp = Lens.lens (\RepositoryAssociationSummary' {lastUpdatedTimeStamp} -> lastUpdatedTimeStamp) (\s@RepositoryAssociationSummary' {} a -> s {lastUpdatedTimeStamp = a} :: RepositoryAssociationSummary) Prelude.. Lens.mapping Data._Time++-- | The name of the repository association.+repositoryAssociationSummary_name :: Lens.Lens' RepositoryAssociationSummary (Prelude.Maybe Prelude.Text)+repositoryAssociationSummary_name = Lens.lens (\RepositoryAssociationSummary' {name} -> name) (\s@RepositoryAssociationSummary' {} a -> s {name = a} :: RepositoryAssociationSummary)++-- | The owner of the repository. For an Amazon Web Services CodeCommit+-- repository, this is the Amazon Web Services account ID of the account+-- that owns the repository. For a GitHub, GitHub Enterprise Server, or+-- Bitbucket repository, this is the username for the account that owns the+-- repository. For an S3 repository, it can be the username or Amazon Web+-- Services account ID.+repositoryAssociationSummary_owner :: Lens.Lens' RepositoryAssociationSummary (Prelude.Maybe Prelude.Text)+repositoryAssociationSummary_owner = Lens.lens (\RepositoryAssociationSummary' {owner} -> owner) (\s@RepositoryAssociationSummary' {} a -> s {owner = a} :: RepositoryAssociationSummary)++-- | The provider type of the repository association.+repositoryAssociationSummary_providerType :: Lens.Lens' RepositoryAssociationSummary (Prelude.Maybe ProviderType)+repositoryAssociationSummary_providerType = Lens.lens (\RepositoryAssociationSummary' {providerType} -> providerType) (\s@RepositoryAssociationSummary' {} a -> s {providerType = a} :: RepositoryAssociationSummary)++-- | The state of the repository association.+--+-- The valid repository association states are:+--+-- - __Associated__: The repository association is complete.+--+-- - __Associating__: CodeGuru Reviewer is:+--+-- - Setting up pull request notifications. This is required for pull+-- requests to trigger a CodeGuru Reviewer review.+--+-- If your repository @ProviderType@ is @GitHub@,+-- @GitHub Enterprise Server@, or @Bitbucket@, CodeGuru Reviewer+-- creates webhooks in your repository to trigger CodeGuru Reviewer+-- reviews. If you delete these webhooks, reviews of code in your+-- repository cannot be triggered.+--+-- - Setting up source code access. This is required for CodeGuru+-- Reviewer to securely clone code in your repository.+--+-- - __Failed__: The repository failed to associate or disassociate.+--+-- - __Disassociating__: CodeGuru Reviewer is removing the repository\'s+-- pull request notifications and source code access.+--+-- - __Disassociated__: CodeGuru Reviewer successfully disassociated the+-- repository. You can create a new association with this repository if+-- you want to review source code in it later. You can control access+-- to code reviews created in anassociated repository with tags after+-- it has been disassociated. For more information, see+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html Using tags to control access to associated repositories>+-- in the /Amazon CodeGuru Reviewer User Guide/.+repositoryAssociationSummary_state :: Lens.Lens' RepositoryAssociationSummary (Prelude.Maybe RepositoryAssociationState)+repositoryAssociationSummary_state = Lens.lens (\RepositoryAssociationSummary' {state} -> state) (\s@RepositoryAssociationSummary' {} a -> s {state = a} :: RepositoryAssociationSummary)++instance Data.FromJSON RepositoryAssociationSummary where+ parseJSON =+ Data.withObject+ "RepositoryAssociationSummary"+ ( \x ->+ RepositoryAssociationSummary'+ Prelude.<$> (x Data..:? "AssociationArn")+ Prelude.<*> (x Data..:? "AssociationId")+ Prelude.<*> (x Data..:? "ConnectionArn")+ Prelude.<*> (x Data..:? "LastUpdatedTimeStamp")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "Owner")+ Prelude.<*> (x Data..:? "ProviderType")+ Prelude.<*> (x Data..:? "State")+ )++instance+ Prelude.Hashable+ RepositoryAssociationSummary+ where+ hashWithSalt _salt RepositoryAssociationSummary' {..} =+ _salt+ `Prelude.hashWithSalt` associationArn+ `Prelude.hashWithSalt` associationId+ `Prelude.hashWithSalt` connectionArn+ `Prelude.hashWithSalt` lastUpdatedTimeStamp+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` providerType+ `Prelude.hashWithSalt` state++instance Prelude.NFData RepositoryAssociationSummary where+ rnf RepositoryAssociationSummary' {..} =+ Prelude.rnf associationArn+ `Prelude.seq` Prelude.rnf associationId+ `Prelude.seq` Prelude.rnf connectionArn+ `Prelude.seq` Prelude.rnf lastUpdatedTimeStamp+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf providerType+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/CodeGuruReviewer/Types/RepositoryHeadSourceCodeType.hs view
@@ -0,0 +1,89 @@+{-# 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.CodeGuruReviewer.Types.RepositoryHeadSourceCodeType+-- 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.CodeGuruReviewer.Types.RepositoryHeadSourceCodeType 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+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- that specifies the tip of a branch in an associated repository.+--+-- /See:/ 'newRepositoryHeadSourceCodeType' smart constructor.+data RepositoryHeadSourceCodeType = RepositoryHeadSourceCodeType'+ { -- | The name of the branch in an associated repository. The+ -- @RepositoryHeadSourceCodeType@ specifies the tip of this branch.+ branchName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RepositoryHeadSourceCodeType' 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:+--+-- 'branchName', 'repositoryHeadSourceCodeType_branchName' - The name of the branch in an associated repository. The+-- @RepositoryHeadSourceCodeType@ specifies the tip of this branch.+newRepositoryHeadSourceCodeType ::+ -- | 'branchName'+ Prelude.Text ->+ RepositoryHeadSourceCodeType+newRepositoryHeadSourceCodeType pBranchName_ =+ RepositoryHeadSourceCodeType'+ { branchName =+ pBranchName_+ }++-- | The name of the branch in an associated repository. The+-- @RepositoryHeadSourceCodeType@ specifies the tip of this branch.+repositoryHeadSourceCodeType_branchName :: Lens.Lens' RepositoryHeadSourceCodeType Prelude.Text+repositoryHeadSourceCodeType_branchName = Lens.lens (\RepositoryHeadSourceCodeType' {branchName} -> branchName) (\s@RepositoryHeadSourceCodeType' {} a -> s {branchName = a} :: RepositoryHeadSourceCodeType)++instance Data.FromJSON RepositoryHeadSourceCodeType where+ parseJSON =+ Data.withObject+ "RepositoryHeadSourceCodeType"+ ( \x ->+ RepositoryHeadSourceCodeType'+ Prelude.<$> (x Data..: "BranchName")+ )++instance+ Prelude.Hashable+ RepositoryHeadSourceCodeType+ where+ hashWithSalt _salt RepositoryHeadSourceCodeType' {..} =+ _salt `Prelude.hashWithSalt` branchName++instance Prelude.NFData RepositoryHeadSourceCodeType where+ rnf RepositoryHeadSourceCodeType' {..} =+ Prelude.rnf branchName++instance Data.ToJSON RepositoryHeadSourceCodeType where+ toJSON RepositoryHeadSourceCodeType' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("BranchName" Data..= branchName)]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/RequestMetadata.hs view
@@ -0,0 +1,146 @@+{-# 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.CodeGuruReviewer.Types.RequestMetadata+-- 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.CodeGuruReviewer.Types.RequestMetadata where++import Amazonka.CodeGuruReviewer.Types.EventInfo+import Amazonka.CodeGuruReviewer.Types.VendorName+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Metadata that is associated with a code review. This applies to both+-- pull request and repository analysis code reviews.+--+-- /See:/ 'newRequestMetadata' smart constructor.+data RequestMetadata = RequestMetadata'+ { -- | Information about the event associated with a code review.+ eventInfo :: Prelude.Maybe EventInfo,+ -- | The ID of the request. This is required for a pull request code review.+ requestId :: Prelude.Maybe Prelude.Text,+ -- | An identifier, such as a name or account ID, that is associated with the+ -- requester. The @Requester@ is used to capture the @author\/actor@ name+ -- of the event request.+ requester :: Prelude.Maybe Prelude.Text,+ -- | The name of the repository vendor used to upload code to an S3 bucket+ -- for a CI\/CD code review. For example, if code and artifacts are+ -- uploaded to an S3 bucket for a CI\/CD code review by GitHub scripts from+ -- a GitHub repository, then the repository association\'s @ProviderType@+ -- is @S3Bucket@ and the CI\/CD repository vendor name is GitHub. For more+ -- information, see the definition for @ProviderType@ in+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>.+ vendorName :: Prelude.Maybe VendorName+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RequestMetadata' 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:+--+-- 'eventInfo', 'requestMetadata_eventInfo' - Information about the event associated with a code review.+--+-- 'requestId', 'requestMetadata_requestId' - The ID of the request. This is required for a pull request code review.+--+-- 'requester', 'requestMetadata_requester' - An identifier, such as a name or account ID, that is associated with the+-- requester. The @Requester@ is used to capture the @author\/actor@ name+-- of the event request.+--+-- 'vendorName', 'requestMetadata_vendorName' - The name of the repository vendor used to upload code to an S3 bucket+-- for a CI\/CD code review. For example, if code and artifacts are+-- uploaded to an S3 bucket for a CI\/CD code review by GitHub scripts from+-- a GitHub repository, then the repository association\'s @ProviderType@+-- is @S3Bucket@ and the CI\/CD repository vendor name is GitHub. For more+-- information, see the definition for @ProviderType@ in+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>.+newRequestMetadata ::+ RequestMetadata+newRequestMetadata =+ RequestMetadata'+ { eventInfo = Prelude.Nothing,+ requestId = Prelude.Nothing,+ requester = Prelude.Nothing,+ vendorName = Prelude.Nothing+ }++-- | Information about the event associated with a code review.+requestMetadata_eventInfo :: Lens.Lens' RequestMetadata (Prelude.Maybe EventInfo)+requestMetadata_eventInfo = Lens.lens (\RequestMetadata' {eventInfo} -> eventInfo) (\s@RequestMetadata' {} a -> s {eventInfo = a} :: RequestMetadata)++-- | The ID of the request. This is required for a pull request code review.+requestMetadata_requestId :: Lens.Lens' RequestMetadata (Prelude.Maybe Prelude.Text)+requestMetadata_requestId = Lens.lens (\RequestMetadata' {requestId} -> requestId) (\s@RequestMetadata' {} a -> s {requestId = a} :: RequestMetadata)++-- | An identifier, such as a name or account ID, that is associated with the+-- requester. The @Requester@ is used to capture the @author\/actor@ name+-- of the event request.+requestMetadata_requester :: Lens.Lens' RequestMetadata (Prelude.Maybe Prelude.Text)+requestMetadata_requester = Lens.lens (\RequestMetadata' {requester} -> requester) (\s@RequestMetadata' {} a -> s {requester = a} :: RequestMetadata)++-- | The name of the repository vendor used to upload code to an S3 bucket+-- for a CI\/CD code review. For example, if code and artifacts are+-- uploaded to an S3 bucket for a CI\/CD code review by GitHub scripts from+-- a GitHub repository, then the repository association\'s @ProviderType@+-- is @S3Bucket@ and the CI\/CD repository vendor name is GitHub. For more+-- information, see the definition for @ProviderType@ in+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>.+requestMetadata_vendorName :: Lens.Lens' RequestMetadata (Prelude.Maybe VendorName)+requestMetadata_vendorName = Lens.lens (\RequestMetadata' {vendorName} -> vendorName) (\s@RequestMetadata' {} a -> s {vendorName = a} :: RequestMetadata)++instance Data.FromJSON RequestMetadata where+ parseJSON =+ Data.withObject+ "RequestMetadata"+ ( \x ->+ RequestMetadata'+ Prelude.<$> (x Data..:? "EventInfo")+ Prelude.<*> (x Data..:? "RequestId")+ Prelude.<*> (x Data..:? "Requester")+ Prelude.<*> (x Data..:? "VendorName")+ )++instance Prelude.Hashable RequestMetadata where+ hashWithSalt _salt RequestMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` eventInfo+ `Prelude.hashWithSalt` requestId+ `Prelude.hashWithSalt` requester+ `Prelude.hashWithSalt` vendorName++instance Prelude.NFData RequestMetadata where+ rnf RequestMetadata' {..} =+ Prelude.rnf eventInfo+ `Prelude.seq` Prelude.rnf requestId+ `Prelude.seq` Prelude.rnf requester+ `Prelude.seq` Prelude.rnf vendorName++instance Data.ToJSON RequestMetadata where+ toJSON RequestMetadata' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("EventInfo" Data..=) Prelude.<$> eventInfo,+ ("RequestId" Data..=) Prelude.<$> requestId,+ ("Requester" Data..=) Prelude.<$> requester,+ ("VendorName" Data..=) Prelude.<$> vendorName+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/RuleMetadata.hs view
@@ -0,0 +1,123 @@+{-# 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.CodeGuruReviewer.Types.RuleMetadata+-- 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.CodeGuruReviewer.Types.RuleMetadata where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Metadata about a rule. Rule metadata includes an ID, a name, a list of+-- tags, and a short and long description. CodeGuru Reviewer uses rules to+-- analyze code. A rule\'s recommendation is included in analysis results+-- if code is detected that violates the rule.+--+-- /See:/ 'newRuleMetadata' smart constructor.+data RuleMetadata = RuleMetadata'+ { -- | A long description of the rule.+ longDescription :: Prelude.Maybe Prelude.Text,+ -- | The ID of the rule.+ ruleId :: Prelude.Maybe Prelude.Text,+ -- | The name of the rule.+ ruleName :: Prelude.Maybe Prelude.Text,+ -- | Tags that are associated with the rule.+ ruleTags :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | A short description of the rule.+ shortDescription :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RuleMetadata' 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:+--+-- 'longDescription', 'ruleMetadata_longDescription' - A long description of the rule.+--+-- 'ruleId', 'ruleMetadata_ruleId' - The ID of the rule.+--+-- 'ruleName', 'ruleMetadata_ruleName' - The name of the rule.+--+-- 'ruleTags', 'ruleMetadata_ruleTags' - Tags that are associated with the rule.+--+-- 'shortDescription', 'ruleMetadata_shortDescription' - A short description of the rule.+newRuleMetadata ::+ RuleMetadata+newRuleMetadata =+ RuleMetadata'+ { longDescription = Prelude.Nothing,+ ruleId = Prelude.Nothing,+ ruleName = Prelude.Nothing,+ ruleTags = Prelude.Nothing,+ shortDescription = Prelude.Nothing+ }++-- | A long description of the rule.+ruleMetadata_longDescription :: Lens.Lens' RuleMetadata (Prelude.Maybe Prelude.Text)+ruleMetadata_longDescription = Lens.lens (\RuleMetadata' {longDescription} -> longDescription) (\s@RuleMetadata' {} a -> s {longDescription = a} :: RuleMetadata)++-- | The ID of the rule.+ruleMetadata_ruleId :: Lens.Lens' RuleMetadata (Prelude.Maybe Prelude.Text)+ruleMetadata_ruleId = Lens.lens (\RuleMetadata' {ruleId} -> ruleId) (\s@RuleMetadata' {} a -> s {ruleId = a} :: RuleMetadata)++-- | The name of the rule.+ruleMetadata_ruleName :: Lens.Lens' RuleMetadata (Prelude.Maybe Prelude.Text)+ruleMetadata_ruleName = Lens.lens (\RuleMetadata' {ruleName} -> ruleName) (\s@RuleMetadata' {} a -> s {ruleName = a} :: RuleMetadata)++-- | Tags that are associated with the rule.+ruleMetadata_ruleTags :: Lens.Lens' RuleMetadata (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+ruleMetadata_ruleTags = Lens.lens (\RuleMetadata' {ruleTags} -> ruleTags) (\s@RuleMetadata' {} a -> s {ruleTags = a} :: RuleMetadata) Prelude.. Lens.mapping Lens.coerced++-- | A short description of the rule.+ruleMetadata_shortDescription :: Lens.Lens' RuleMetadata (Prelude.Maybe Prelude.Text)+ruleMetadata_shortDescription = Lens.lens (\RuleMetadata' {shortDescription} -> shortDescription) (\s@RuleMetadata' {} a -> s {shortDescription = a} :: RuleMetadata)++instance Data.FromJSON RuleMetadata where+ parseJSON =+ Data.withObject+ "RuleMetadata"+ ( \x ->+ RuleMetadata'+ Prelude.<$> (x Data..:? "LongDescription")+ Prelude.<*> (x Data..:? "RuleId")+ Prelude.<*> (x Data..:? "RuleName")+ Prelude.<*> (x Data..:? "RuleTags")+ Prelude.<*> (x Data..:? "ShortDescription")+ )++instance Prelude.Hashable RuleMetadata where+ hashWithSalt _salt RuleMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` longDescription+ `Prelude.hashWithSalt` ruleId+ `Prelude.hashWithSalt` ruleName+ `Prelude.hashWithSalt` ruleTags+ `Prelude.hashWithSalt` shortDescription++instance Prelude.NFData RuleMetadata where+ rnf RuleMetadata' {..} =+ Prelude.rnf longDescription+ `Prelude.seq` Prelude.rnf ruleId+ `Prelude.seq` Prelude.rnf ruleName+ `Prelude.seq` Prelude.rnf ruleTags+ `Prelude.seq` Prelude.rnf shortDescription
+ gen/Amazonka/CodeGuruReviewer/Types/S3BucketRepository.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeGuruReviewer.Types.S3BucketRepository+-- 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.CodeGuruReviewer.Types.S3BucketRepository where++import Amazonka.CodeGuruReviewer.Types.S3RepositoryDetails+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about an associated repository in an S3 bucket. The+-- associated repository contains a source code .zip file and a build+-- artifacts .zip file that contains .jar or .class files.+--+-- /See:/ 'newS3BucketRepository' smart constructor.+data S3BucketRepository = S3BucketRepository'+ { -- | An @S3RepositoryDetails@ object that specifies the name of an S3 bucket+ -- and a @CodeArtifacts@ object. The @CodeArtifacts@ object includes the S3+ -- object keys for a source code .zip file and for a build artifacts .zip+ -- file.+ details :: Prelude.Maybe S3RepositoryDetails,+ -- | The name of the repository when the @ProviderType@ is @S3Bucket@.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3BucketRepository' 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:+--+-- 'details', 's3BucketRepository_details' - An @S3RepositoryDetails@ object that specifies the name of an S3 bucket+-- and a @CodeArtifacts@ object. The @CodeArtifacts@ object includes the S3+-- object keys for a source code .zip file and for a build artifacts .zip+-- file.+--+-- 'name', 's3BucketRepository_name' - The name of the repository when the @ProviderType@ is @S3Bucket@.+newS3BucketRepository ::+ -- | 'name'+ Prelude.Text ->+ S3BucketRepository+newS3BucketRepository pName_ =+ S3BucketRepository'+ { details = Prelude.Nothing,+ name = pName_+ }++-- | An @S3RepositoryDetails@ object that specifies the name of an S3 bucket+-- and a @CodeArtifacts@ object. The @CodeArtifacts@ object includes the S3+-- object keys for a source code .zip file and for a build artifacts .zip+-- file.+s3BucketRepository_details :: Lens.Lens' S3BucketRepository (Prelude.Maybe S3RepositoryDetails)+s3BucketRepository_details = Lens.lens (\S3BucketRepository' {details} -> details) (\s@S3BucketRepository' {} a -> s {details = a} :: S3BucketRepository)++-- | The name of the repository when the @ProviderType@ is @S3Bucket@.+s3BucketRepository_name :: Lens.Lens' S3BucketRepository Prelude.Text+s3BucketRepository_name = Lens.lens (\S3BucketRepository' {name} -> name) (\s@S3BucketRepository' {} a -> s {name = a} :: S3BucketRepository)++instance Data.FromJSON S3BucketRepository where+ parseJSON =+ Data.withObject+ "S3BucketRepository"+ ( \x ->+ S3BucketRepository'+ Prelude.<$> (x Data..:? "Details")+ Prelude.<*> (x Data..: "Name")+ )++instance Prelude.Hashable S3BucketRepository where+ hashWithSalt _salt S3BucketRepository' {..} =+ _salt+ `Prelude.hashWithSalt` details+ `Prelude.hashWithSalt` name++instance Prelude.NFData S3BucketRepository where+ rnf S3BucketRepository' {..} =+ Prelude.rnf details `Prelude.seq` Prelude.rnf name++instance Data.ToJSON S3BucketRepository where+ toJSON S3BucketRepository' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Details" Data..=) Prelude.<$> details,+ Prelude.Just ("Name" Data..= name)+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/S3Repository.hs view
@@ -0,0 +1,90 @@+{-# 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.CodeGuruReviewer.Types.S3Repository+-- 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.CodeGuruReviewer.Types.S3Repository where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about a repository in an S3 bucket.+--+-- /See:/ 'newS3Repository' smart constructor.+data S3Repository = S3Repository'+ { -- | The name of the repository in the S3 bucket.+ name :: Prelude.Text,+ -- | The name of the S3 bucket used for associating a new S3 repository. It+ -- must begin with @codeguru-reviewer-@.+ bucketName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3Repository' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 's3Repository_name' - The name of the repository in the S3 bucket.+--+-- 'bucketName', 's3Repository_bucketName' - The name of the S3 bucket used for associating a new S3 repository. It+-- must begin with @codeguru-reviewer-@.+newS3Repository ::+ -- | 'name'+ Prelude.Text ->+ -- | 'bucketName'+ Prelude.Text ->+ S3Repository+newS3Repository pName_ pBucketName_ =+ S3Repository'+ { name = pName_,+ bucketName = pBucketName_+ }++-- | The name of the repository in the S3 bucket.+s3Repository_name :: Lens.Lens' S3Repository Prelude.Text+s3Repository_name = Lens.lens (\S3Repository' {name} -> name) (\s@S3Repository' {} a -> s {name = a} :: S3Repository)++-- | The name of the S3 bucket used for associating a new S3 repository. It+-- must begin with @codeguru-reviewer-@.+s3Repository_bucketName :: Lens.Lens' S3Repository Prelude.Text+s3Repository_bucketName = Lens.lens (\S3Repository' {bucketName} -> bucketName) (\s@S3Repository' {} a -> s {bucketName = a} :: S3Repository)++instance Prelude.Hashable S3Repository where+ hashWithSalt _salt S3Repository' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` bucketName++instance Prelude.NFData S3Repository where+ rnf S3Repository' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf bucketName++instance Data.ToJSON S3Repository where+ toJSON S3Repository' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Name" Data..= name),+ Prelude.Just ("BucketName" Data..= bucketName)+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/S3RepositoryDetails.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.CodeGuruReviewer.Types.S3RepositoryDetails+-- 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.CodeGuruReviewer.Types.S3RepositoryDetails where++import Amazonka.CodeGuruReviewer.Types.CodeArtifacts+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++-- | Specifies the name of an S3 bucket and a @CodeArtifacts@ object that+-- contains the S3 object keys for a source code .zip file and for a build+-- artifacts .zip file that contains .jar or .class files.+--+-- /See:/ 'newS3RepositoryDetails' smart constructor.+data S3RepositoryDetails = S3RepositoryDetails'+ { -- | The name of the S3 bucket used for associating a new S3 repository. It+ -- must begin with @codeguru-reviewer-@.+ bucketName :: Prelude.Maybe Prelude.Text,+ -- | A @CodeArtifacts@ object. The @CodeArtifacts@ object includes the S3+ -- object key for a source code .zip file and for a build artifacts .zip+ -- file that contains .jar or .class files.+ codeArtifacts :: Prelude.Maybe CodeArtifacts+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3RepositoryDetails' 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:+--+-- 'bucketName', 's3RepositoryDetails_bucketName' - The name of the S3 bucket used for associating a new S3 repository. It+-- must begin with @codeguru-reviewer-@.+--+-- 'codeArtifacts', 's3RepositoryDetails_codeArtifacts' - A @CodeArtifacts@ object. The @CodeArtifacts@ object includes the S3+-- object key for a source code .zip file and for a build artifacts .zip+-- file that contains .jar or .class files.+newS3RepositoryDetails ::+ S3RepositoryDetails+newS3RepositoryDetails =+ S3RepositoryDetails'+ { bucketName = Prelude.Nothing,+ codeArtifacts = Prelude.Nothing+ }++-- | The name of the S3 bucket used for associating a new S3 repository. It+-- must begin with @codeguru-reviewer-@.+s3RepositoryDetails_bucketName :: Lens.Lens' S3RepositoryDetails (Prelude.Maybe Prelude.Text)+s3RepositoryDetails_bucketName = Lens.lens (\S3RepositoryDetails' {bucketName} -> bucketName) (\s@S3RepositoryDetails' {} a -> s {bucketName = a} :: S3RepositoryDetails)++-- | A @CodeArtifacts@ object. The @CodeArtifacts@ object includes the S3+-- object key for a source code .zip file and for a build artifacts .zip+-- file that contains .jar or .class files.+s3RepositoryDetails_codeArtifacts :: Lens.Lens' S3RepositoryDetails (Prelude.Maybe CodeArtifacts)+s3RepositoryDetails_codeArtifacts = Lens.lens (\S3RepositoryDetails' {codeArtifacts} -> codeArtifacts) (\s@S3RepositoryDetails' {} a -> s {codeArtifacts = a} :: S3RepositoryDetails)++instance Data.FromJSON S3RepositoryDetails where+ parseJSON =+ Data.withObject+ "S3RepositoryDetails"+ ( \x ->+ S3RepositoryDetails'+ Prelude.<$> (x Data..:? "BucketName")+ Prelude.<*> (x Data..:? "CodeArtifacts")+ )++instance Prelude.Hashable S3RepositoryDetails where+ hashWithSalt _salt S3RepositoryDetails' {..} =+ _salt+ `Prelude.hashWithSalt` bucketName+ `Prelude.hashWithSalt` codeArtifacts++instance Prelude.NFData S3RepositoryDetails where+ rnf S3RepositoryDetails' {..} =+ Prelude.rnf bucketName+ `Prelude.seq` Prelude.rnf codeArtifacts++instance Data.ToJSON S3RepositoryDetails where+ toJSON S3RepositoryDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("BucketName" Data..=) Prelude.<$> bucketName,+ ("CodeArtifacts" Data..=) Prelude.<$> codeArtifacts+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/Severity.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.CodeGuruReviewer.Types.Severity+-- 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.CodeGuruReviewer.Types.Severity+ ( Severity+ ( ..,+ Severity_Critical,+ Severity_High,+ Severity_Info,+ Severity_Low,+ Severity_Medium+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Severity = Severity'+ { fromSeverity ::+ 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 Severity_Critical :: Severity+pattern Severity_Critical = Severity' "Critical"++pattern Severity_High :: Severity+pattern Severity_High = Severity' "High"++pattern Severity_Info :: Severity+pattern Severity_Info = Severity' "Info"++pattern Severity_Low :: Severity+pattern Severity_Low = Severity' "Low"++pattern Severity_Medium :: Severity+pattern Severity_Medium = Severity' "Medium"++{-# COMPLETE+ Severity_Critical,+ Severity_High,+ Severity_Info,+ Severity_Low,+ Severity_Medium,+ Severity'+ #-}
+ gen/Amazonka/CodeGuruReviewer/Types/SourceCodeType.hs view
@@ -0,0 +1,187 @@+{-# 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.CodeGuruReviewer.Types.SourceCodeType+-- 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.CodeGuruReviewer.Types.SourceCodeType where++import Amazonka.CodeGuruReviewer.Types.BranchDiffSourceCodeType+import Amazonka.CodeGuruReviewer.Types.CommitDiffSourceCodeType+import Amazonka.CodeGuruReviewer.Types.RepositoryHeadSourceCodeType+import Amazonka.CodeGuruReviewer.Types.RequestMetadata+import Amazonka.CodeGuruReviewer.Types.S3BucketRepository+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++-- | Specifies the source code that is analyzed in a code review.+--+-- /See:/ 'newSourceCodeType' smart constructor.+data SourceCodeType = SourceCodeType'+ { -- | A type of+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+ -- that specifies a source branch name and a destination branch name in an+ -- associated repository.+ branchDiff :: Prelude.Maybe BranchDiffSourceCodeType,+ -- | A+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+ -- that specifies a commit diff created by a pull request on an associated+ -- repository.+ commitDiff :: Prelude.Maybe CommitDiffSourceCodeType,+ repositoryHead :: Prelude.Maybe RepositoryHeadSourceCodeType,+ -- | Metadata that is associated with a code review. This applies to any type+ -- of code review supported by CodeGuru Reviewer. The @RequestMetadaa@+ -- field captures any event metadata. For example, it might capture+ -- metadata associated with an event trigger, such as a push or a pull+ -- request.+ requestMetadata :: Prelude.Maybe RequestMetadata,+ -- | Information about an associated repository in an S3 bucket that includes+ -- its name and an @S3RepositoryDetails@ object. The @S3RepositoryDetails@+ -- object includes the name of an S3 bucket, an S3 key for a source code+ -- .zip file, and an S3 key for a build artifacts .zip file.+ -- @S3BucketRepository@ is required in+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+ -- for @S3BucketRepository@ based code reviews.+ s3BucketRepository :: Prelude.Maybe S3BucketRepository+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SourceCodeType' 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:+--+-- 'branchDiff', 'sourceCodeType_branchDiff' - A type of+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- that specifies a source branch name and a destination branch name in an+-- associated repository.+--+-- 'commitDiff', 'sourceCodeType_commitDiff' - A+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- that specifies a commit diff created by a pull request on an associated+-- repository.+--+-- 'repositoryHead', 'sourceCodeType_repositoryHead' - Undocumented member.+--+-- 'requestMetadata', 'sourceCodeType_requestMetadata' - Metadata that is associated with a code review. This applies to any type+-- of code review supported by CodeGuru Reviewer. The @RequestMetadaa@+-- field captures any event metadata. For example, it might capture+-- metadata associated with an event trigger, such as a push or a pull+-- request.+--+-- 's3BucketRepository', 'sourceCodeType_s3BucketRepository' - Information about an associated repository in an S3 bucket that includes+-- its name and an @S3RepositoryDetails@ object. The @S3RepositoryDetails@+-- object includes the name of an S3 bucket, an S3 key for a source code+-- .zip file, and an S3 key for a build artifacts .zip file.+-- @S3BucketRepository@ is required in+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- for @S3BucketRepository@ based code reviews.+newSourceCodeType ::+ SourceCodeType+newSourceCodeType =+ SourceCodeType'+ { branchDiff = Prelude.Nothing,+ commitDiff = Prelude.Nothing,+ repositoryHead = Prelude.Nothing,+ requestMetadata = Prelude.Nothing,+ s3BucketRepository = Prelude.Nothing+ }++-- | A type of+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- that specifies a source branch name and a destination branch name in an+-- associated repository.+sourceCodeType_branchDiff :: Lens.Lens' SourceCodeType (Prelude.Maybe BranchDiffSourceCodeType)+sourceCodeType_branchDiff = Lens.lens (\SourceCodeType' {branchDiff} -> branchDiff) (\s@SourceCodeType' {} a -> s {branchDiff = a} :: SourceCodeType)++-- | A+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- that specifies a commit diff created by a pull request on an associated+-- repository.+sourceCodeType_commitDiff :: Lens.Lens' SourceCodeType (Prelude.Maybe CommitDiffSourceCodeType)+sourceCodeType_commitDiff = Lens.lens (\SourceCodeType' {commitDiff} -> commitDiff) (\s@SourceCodeType' {} a -> s {commitDiff = a} :: SourceCodeType)++-- | Undocumented member.+sourceCodeType_repositoryHead :: Lens.Lens' SourceCodeType (Prelude.Maybe RepositoryHeadSourceCodeType)+sourceCodeType_repositoryHead = Lens.lens (\SourceCodeType' {repositoryHead} -> repositoryHead) (\s@SourceCodeType' {} a -> s {repositoryHead = a} :: SourceCodeType)++-- | Metadata that is associated with a code review. This applies to any type+-- of code review supported by CodeGuru Reviewer. The @RequestMetadaa@+-- field captures any event metadata. For example, it might capture+-- metadata associated with an event trigger, such as a push or a pull+-- request.+sourceCodeType_requestMetadata :: Lens.Lens' SourceCodeType (Prelude.Maybe RequestMetadata)+sourceCodeType_requestMetadata = Lens.lens (\SourceCodeType' {requestMetadata} -> requestMetadata) (\s@SourceCodeType' {} a -> s {requestMetadata = a} :: SourceCodeType)++-- | Information about an associated repository in an S3 bucket that includes+-- its name and an @S3RepositoryDetails@ object. The @S3RepositoryDetails@+-- object includes the name of an S3 bucket, an S3 key for a source code+-- .zip file, and an S3 key for a build artifacts .zip file.+-- @S3BucketRepository@ is required in+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_SourceCodeType SourceCodeType>+-- for @S3BucketRepository@ based code reviews.+sourceCodeType_s3BucketRepository :: Lens.Lens' SourceCodeType (Prelude.Maybe S3BucketRepository)+sourceCodeType_s3BucketRepository = Lens.lens (\SourceCodeType' {s3BucketRepository} -> s3BucketRepository) (\s@SourceCodeType' {} a -> s {s3BucketRepository = a} :: SourceCodeType)++instance Data.FromJSON SourceCodeType where+ parseJSON =+ Data.withObject+ "SourceCodeType"+ ( \x ->+ SourceCodeType'+ Prelude.<$> (x Data..:? "BranchDiff")+ Prelude.<*> (x Data..:? "CommitDiff")+ Prelude.<*> (x Data..:? "RepositoryHead")+ Prelude.<*> (x Data..:? "RequestMetadata")+ Prelude.<*> (x Data..:? "S3BucketRepository")+ )++instance Prelude.Hashable SourceCodeType where+ hashWithSalt _salt SourceCodeType' {..} =+ _salt+ `Prelude.hashWithSalt` branchDiff+ `Prelude.hashWithSalt` commitDiff+ `Prelude.hashWithSalt` repositoryHead+ `Prelude.hashWithSalt` requestMetadata+ `Prelude.hashWithSalt` s3BucketRepository++instance Prelude.NFData SourceCodeType where+ rnf SourceCodeType' {..} =+ Prelude.rnf branchDiff+ `Prelude.seq` Prelude.rnf commitDiff+ `Prelude.seq` Prelude.rnf repositoryHead+ `Prelude.seq` Prelude.rnf requestMetadata+ `Prelude.seq` Prelude.rnf s3BucketRepository++instance Data.ToJSON SourceCodeType where+ toJSON SourceCodeType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("BranchDiff" Data..=) Prelude.<$> branchDiff,+ ("CommitDiff" Data..=) Prelude.<$> commitDiff,+ ("RepositoryHead" Data..=)+ Prelude.<$> repositoryHead,+ ("RequestMetadata" Data..=)+ Prelude.<$> requestMetadata,+ ("S3BucketRepository" Data..=)+ Prelude.<$> s3BucketRepository+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/ThirdPartySourceRepository.hs view
@@ -0,0 +1,129 @@+{-# 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.CodeGuruReviewer.Types.ThirdPartySourceRepository+-- 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.CodeGuruReviewer.Types.ThirdPartySourceRepository where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about a third-party source repository connected to CodeGuru+-- Reviewer.+--+-- /See:/ 'newThirdPartySourceRepository' smart constructor.+data ThirdPartySourceRepository = ThirdPartySourceRepository'+ { -- | The name of the third party source repository.+ name :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar+ -- Connections connection. Its format is+ -- @arn:aws:codestar-connections:region-id:aws-account_id:connection\/connection-id@.+ -- For more information, see+ -- <https://docs.aws.amazon.com/codestar-connections/latest/APIReference/API_Connection.html Connection>+ -- in the /Amazon Web Services CodeStar Connections API Reference/.+ connectionArn :: Prelude.Text,+ -- | The owner of the repository. For a GitHub, GitHub Enterprise, or+ -- Bitbucket repository, this is the username for the account that owns the+ -- repository. For an S3 repository, this can be the username or Amazon Web+ -- Services account ID+ owner :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ThirdPartySourceRepository' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'thirdPartySourceRepository_name' - The name of the third party source repository.+--+-- 'connectionArn', 'thirdPartySourceRepository_connectionArn' - The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar+-- Connections connection. Its format is+-- @arn:aws:codestar-connections:region-id:aws-account_id:connection\/connection-id@.+-- For more information, see+-- <https://docs.aws.amazon.com/codestar-connections/latest/APIReference/API_Connection.html Connection>+-- in the /Amazon Web Services CodeStar Connections API Reference/.+--+-- 'owner', 'thirdPartySourceRepository_owner' - The owner of the repository. For a GitHub, GitHub Enterprise, or+-- Bitbucket repository, this is the username for the account that owns the+-- repository. For an S3 repository, this can be the username or Amazon Web+-- Services account ID+newThirdPartySourceRepository ::+ -- | 'name'+ Prelude.Text ->+ -- | 'connectionArn'+ Prelude.Text ->+ -- | 'owner'+ Prelude.Text ->+ ThirdPartySourceRepository+newThirdPartySourceRepository+ pName_+ pConnectionArn_+ pOwner_ =+ ThirdPartySourceRepository'+ { name = pName_,+ connectionArn = pConnectionArn_,+ owner = pOwner_+ }++-- | The name of the third party source repository.+thirdPartySourceRepository_name :: Lens.Lens' ThirdPartySourceRepository Prelude.Text+thirdPartySourceRepository_name = Lens.lens (\ThirdPartySourceRepository' {name} -> name) (\s@ThirdPartySourceRepository' {} a -> s {name = a} :: ThirdPartySourceRepository)++-- | The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar+-- Connections connection. Its format is+-- @arn:aws:codestar-connections:region-id:aws-account_id:connection\/connection-id@.+-- For more information, see+-- <https://docs.aws.amazon.com/codestar-connections/latest/APIReference/API_Connection.html Connection>+-- in the /Amazon Web Services CodeStar Connections API Reference/.+thirdPartySourceRepository_connectionArn :: Lens.Lens' ThirdPartySourceRepository Prelude.Text+thirdPartySourceRepository_connectionArn = Lens.lens (\ThirdPartySourceRepository' {connectionArn} -> connectionArn) (\s@ThirdPartySourceRepository' {} a -> s {connectionArn = a} :: ThirdPartySourceRepository)++-- | The owner of the repository. For a GitHub, GitHub Enterprise, or+-- Bitbucket repository, this is the username for the account that owns the+-- repository. For an S3 repository, this can be the username or Amazon Web+-- Services account ID+thirdPartySourceRepository_owner :: Lens.Lens' ThirdPartySourceRepository Prelude.Text+thirdPartySourceRepository_owner = Lens.lens (\ThirdPartySourceRepository' {owner} -> owner) (\s@ThirdPartySourceRepository' {} a -> s {owner = a} :: ThirdPartySourceRepository)++instance Prelude.Hashable ThirdPartySourceRepository where+ hashWithSalt _salt ThirdPartySourceRepository' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` connectionArn+ `Prelude.hashWithSalt` owner++instance Prelude.NFData ThirdPartySourceRepository where+ rnf ThirdPartySourceRepository' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf connectionArn+ `Prelude.seq` Prelude.rnf owner++instance Data.ToJSON ThirdPartySourceRepository where+ toJSON ThirdPartySourceRepository' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Name" Data..= name),+ Prelude.Just ("ConnectionArn" Data..= connectionArn),+ Prelude.Just ("Owner" Data..= owner)+ ]+ )
+ gen/Amazonka/CodeGuruReviewer/Types/Type.hs view
@@ -0,0 +1,68 @@+{-# 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.CodeGuruReviewer.Types.Type+-- 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.CodeGuruReviewer.Types.Type+ ( Type+ ( ..,+ Type_PullRequest,+ Type_RepositoryAnalysis+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Type = Type' {fromType :: 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 Type_PullRequest :: Type+pattern Type_PullRequest = Type' "PullRequest"++pattern Type_RepositoryAnalysis :: Type+pattern Type_RepositoryAnalysis = Type' "RepositoryAnalysis"++{-# COMPLETE+ Type_PullRequest,+ Type_RepositoryAnalysis,+ Type'+ #-}
+ gen/Amazonka/CodeGuruReviewer/Types/VendorName.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.CodeGuruReviewer.Types.VendorName+-- 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.CodeGuruReviewer.Types.VendorName+ ( VendorName+ ( ..,+ VendorName_GitHub,+ VendorName_GitLab,+ VendorName_NativeS3+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype VendorName = VendorName'+ { fromVendorName ::+ 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 VendorName_GitHub :: VendorName+pattern VendorName_GitHub = VendorName' "GitHub"++pattern VendorName_GitLab :: VendorName+pattern VendorName_GitLab = VendorName' "GitLab"++pattern VendorName_NativeS3 :: VendorName+pattern VendorName_NativeS3 = VendorName' "NativeS3"++{-# COMPLETE+ VendorName_GitHub,+ VendorName_GitLab,+ VendorName_NativeS3,+ VendorName'+ #-}
+ gen/Amazonka/CodeGuruReviewer/UntagResource.hs view
@@ -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.CodeGuruReviewer.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)+--+-- Removes a tag from an associated repository.+module Amazonka.CodeGuruReviewer.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,++ -- * Response Lenses+ untagResourceResponse_httpStatus,+ )+where++import Amazonka.CodeGuruReviewer.Types+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++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { -- | The Amazon Resource Name (ARN) of the+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+ -- object. You can retrieve this ARN by calling+ -- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+ resourceArn :: Prelude.Text,+ -- | A list of the keys for each tag you want to remove from an associated+ -- repository.+ 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:+--+-- 'resourceArn', 'untagResource_resourceArn' - The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+--+-- 'tagKeys', 'untagResource_tagKeys' - A list of the keys for each tag you want to remove from an associated+-- repository.+newUntagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ -- | 'tagKeys'+ Prelude.NonEmpty Prelude.Text ->+ UntagResource+newUntagResource pResourceArn_ pTagKeys_ =+ UntagResource'+ { resourceArn = pResourceArn_,+ tagKeys = Lens.coerced Lens.# pTagKeys_+ }++-- | The Amazon Resource Name (ARN) of the+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_RepositoryAssociation.html RepositoryAssociation>+-- object. You can retrieve this ARN by calling+-- <https://docs.aws.amazon.com/codeguru/latest/reviewer-api/API_ListRepositoryAssociations.html ListRepositoryAssociations>.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | A list of the keys for each tag you want to remove from an associated+-- repository.+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` resourceArn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagResource where+ rnf UntagResource' {..} =+ Prelude.rnf resourceArn+ `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 resourceArn]++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/CodeGuruReviewer/Waiters.hs view
@@ -0,0 +1,103 @@+{-# 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.CodeGuruReviewer.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.CodeGuruReviewer.Waiters where++import Amazonka.CodeGuruReviewer.DescribeCodeReview+import Amazonka.CodeGuruReviewer.DescribeRepositoryAssociation+import Amazonka.CodeGuruReviewer.Lens+import Amazonka.CodeGuruReviewer.Types+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++-- | Polls 'Amazonka.CodeGuruReviewer.DescribeCodeReview' every 10 seconds until a successful state is reached. An error is returned after 180 failed checks.+newCodeReviewCompleted :: Core.Wait DescribeCodeReview+newCodeReviewCompleted =+ Core.Wait+ { Core.name = "CodeReviewCompleted",+ Core.attempts = 180,+ Core.delay = 10,+ Core.acceptors =+ [ Core.matchAll+ "Completed"+ Core.AcceptSuccess+ ( describeCodeReviewResponse_codeReview+ Prelude.. Lens._Just+ Prelude.. codeReview_state+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Failed"+ Core.AcceptFailure+ ( describeCodeReviewResponse_codeReview+ Prelude.. Lens._Just+ Prelude.. codeReview_state+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Pending"+ Core.AcceptRetry+ ( describeCodeReviewResponse_codeReview+ Prelude.. Lens._Just+ Prelude.. codeReview_state+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }++-- | Polls 'Amazonka.CodeGuruReviewer.DescribeRepositoryAssociation' every 10 seconds until a successful state is reached. An error is returned after 30 failed checks.+newRepositoryAssociationSucceeded :: Core.Wait DescribeRepositoryAssociation+newRepositoryAssociationSucceeded =+ Core.Wait+ { Core.name =+ "RepositoryAssociationSucceeded",+ Core.attempts = 30,+ Core.delay = 10,+ Core.acceptors =+ [ Core.matchAll+ "Associated"+ Core.AcceptSuccess+ ( describeRepositoryAssociationResponse_repositoryAssociation+ Prelude.. Lens._Just+ Prelude.. repositoryAssociation_state+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Failed"+ Core.AcceptFailure+ ( describeRepositoryAssociationResponse_repositoryAssociation+ Prelude.. Lens._Just+ Prelude.. repositoryAssociation_state+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Associating"+ Core.AcceptRetry+ ( describeRepositoryAssociationResponse_repositoryAssociation+ Prelude.. Lens._Just+ Prelude.. repositoryAssociation_state+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.CodeGuruReviewer+import Test.Amazonka.CodeGuruReviewer.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "CodeGuruReviewer"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/CodeGuruReviewer.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.CodeGuruReviewer+-- 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.CodeGuruReviewer+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/CodeGuruReviewer/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.CodeGuruReviewer.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.CodeGuruReviewer.Internal where
+ test/Test/Amazonka/Gen/CodeGuruReviewer.hs view
@@ -0,0 +1,318 @@+{-# 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.CodeGuruReviewer+-- 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.CodeGuruReviewer where++import Amazonka.CodeGuruReviewer+import qualified Data.Proxy as Proxy+import Test.Amazonka.CodeGuruReviewer.Internal+import Test.Amazonka.Fixture+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ requestAssociateRepository $+-- newAssociateRepository+--+-- , requestCreateCodeReview $+-- newCreateCodeReview+--+-- , requestDescribeCodeReview $+-- newDescribeCodeReview+--+-- , requestDescribeRecommendationFeedback $+-- newDescribeRecommendationFeedback+--+-- , requestDescribeRepositoryAssociation $+-- newDescribeRepositoryAssociation+--+-- , requestDisassociateRepository $+-- newDisassociateRepository+--+-- , requestListCodeReviews $+-- newListCodeReviews+--+-- , requestListRecommendationFeedback $+-- newListRecommendationFeedback+--+-- , requestListRecommendations $+-- newListRecommendations+--+-- , requestListRepositoryAssociations $+-- newListRepositoryAssociations+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestPutRecommendationFeedback $+-- newPutRecommendationFeedback+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- ]++-- , testGroup "response"+-- [ responseAssociateRepository $+-- newAssociateRepositoryResponse+--+-- , responseCreateCodeReview $+-- newCreateCodeReviewResponse+--+-- , responseDescribeCodeReview $+-- newDescribeCodeReviewResponse+--+-- , responseDescribeRecommendationFeedback $+-- newDescribeRecommendationFeedbackResponse+--+-- , responseDescribeRepositoryAssociation $+-- newDescribeRepositoryAssociationResponse+--+-- , responseDisassociateRepository $+-- newDisassociateRepositoryResponse+--+-- , responseListCodeReviews $+-- newListCodeReviewsResponse+--+-- , responseListRecommendationFeedback $+-- newListRecommendationFeedbackResponse+--+-- , responseListRecommendations $+-- newListRecommendationsResponse+--+-- , responseListRepositoryAssociations $+-- newListRepositoryAssociationsResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responsePutRecommendationFeedback $+-- newPutRecommendationFeedbackResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- ]+-- ]++-- Requests++requestAssociateRepository :: AssociateRepository -> TestTree+requestAssociateRepository =+ req+ "AssociateRepository"+ "fixture/AssociateRepository.yaml"++requestCreateCodeReview :: CreateCodeReview -> TestTree+requestCreateCodeReview =+ req+ "CreateCodeReview"+ "fixture/CreateCodeReview.yaml"++requestDescribeCodeReview :: DescribeCodeReview -> TestTree+requestDescribeCodeReview =+ req+ "DescribeCodeReview"+ "fixture/DescribeCodeReview.yaml"++requestDescribeRecommendationFeedback :: DescribeRecommendationFeedback -> TestTree+requestDescribeRecommendationFeedback =+ req+ "DescribeRecommendationFeedback"+ "fixture/DescribeRecommendationFeedback.yaml"++requestDescribeRepositoryAssociation :: DescribeRepositoryAssociation -> TestTree+requestDescribeRepositoryAssociation =+ req+ "DescribeRepositoryAssociation"+ "fixture/DescribeRepositoryAssociation.yaml"++requestDisassociateRepository :: DisassociateRepository -> TestTree+requestDisassociateRepository =+ req+ "DisassociateRepository"+ "fixture/DisassociateRepository.yaml"++requestListCodeReviews :: ListCodeReviews -> TestTree+requestListCodeReviews =+ req+ "ListCodeReviews"+ "fixture/ListCodeReviews.yaml"++requestListRecommendationFeedback :: ListRecommendationFeedback -> TestTree+requestListRecommendationFeedback =+ req+ "ListRecommendationFeedback"+ "fixture/ListRecommendationFeedback.yaml"++requestListRecommendations :: ListRecommendations -> TestTree+requestListRecommendations =+ req+ "ListRecommendations"+ "fixture/ListRecommendations.yaml"++requestListRepositoryAssociations :: ListRepositoryAssociations -> TestTree+requestListRepositoryAssociations =+ req+ "ListRepositoryAssociations"+ "fixture/ListRepositoryAssociations.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestPutRecommendationFeedback :: PutRecommendationFeedback -> TestTree+requestPutRecommendationFeedback =+ req+ "PutRecommendationFeedback"+ "fixture/PutRecommendationFeedback.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++-- Responses++responseAssociateRepository :: AssociateRepositoryResponse -> TestTree+responseAssociateRepository =+ res+ "AssociateRepositoryResponse"+ "fixture/AssociateRepositoryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AssociateRepository)++responseCreateCodeReview :: CreateCodeReviewResponse -> TestTree+responseCreateCodeReview =+ res+ "CreateCodeReviewResponse"+ "fixture/CreateCodeReviewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateCodeReview)++responseDescribeCodeReview :: DescribeCodeReviewResponse -> TestTree+responseDescribeCodeReview =+ res+ "DescribeCodeReviewResponse"+ "fixture/DescribeCodeReviewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeCodeReview)++responseDescribeRecommendationFeedback :: DescribeRecommendationFeedbackResponse -> TestTree+responseDescribeRecommendationFeedback =+ res+ "DescribeRecommendationFeedbackResponse"+ "fixture/DescribeRecommendationFeedbackResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeRecommendationFeedback)++responseDescribeRepositoryAssociation :: DescribeRepositoryAssociationResponse -> TestTree+responseDescribeRepositoryAssociation =+ res+ "DescribeRepositoryAssociationResponse"+ "fixture/DescribeRepositoryAssociationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeRepositoryAssociation)++responseDisassociateRepository :: DisassociateRepositoryResponse -> TestTree+responseDisassociateRepository =+ res+ "DisassociateRepositoryResponse"+ "fixture/DisassociateRepositoryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DisassociateRepository)++responseListCodeReviews :: ListCodeReviewsResponse -> TestTree+responseListCodeReviews =+ res+ "ListCodeReviewsResponse"+ "fixture/ListCodeReviewsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListCodeReviews)++responseListRecommendationFeedback :: ListRecommendationFeedbackResponse -> TestTree+responseListRecommendationFeedback =+ res+ "ListRecommendationFeedbackResponse"+ "fixture/ListRecommendationFeedbackResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRecommendationFeedback)++responseListRecommendations :: ListRecommendationsResponse -> TestTree+responseListRecommendations =+ res+ "ListRecommendationsResponse"+ "fixture/ListRecommendationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRecommendations)++responseListRepositoryAssociations :: ListRepositoryAssociationsResponse -> TestTree+responseListRepositoryAssociations =+ res+ "ListRepositoryAssociationsResponse"+ "fixture/ListRepositoryAssociationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRepositoryAssociations)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responsePutRecommendationFeedback :: PutRecommendationFeedbackResponse -> TestTree+responsePutRecommendationFeedback =+ res+ "PutRecommendationFeedbackResponse"+ "fixture/PutRecommendationFeedbackResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutRecommendationFeedback)++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)