amazonka-codeartifact (empty) → 2.0
raw patch · 152 files changed
+17203/−0 lines, 152 filesdep +amazonka-codeartifactdep +amazonka-coredep +amazonka-test
Dependencies added: amazonka-codeartifact, amazonka-core, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-codeartifact.cabal +151/−0
- fixture/AssociateExternalConnection.yaml +10/−0
- fixture/AssociateExternalConnectionResponse.proto +0/−0
- fixture/CopyPackageVersions.yaml +10/−0
- fixture/CopyPackageVersionsResponse.proto +0/−0
- fixture/CreateDomain.yaml +10/−0
- fixture/CreateDomainResponse.proto +0/−0
- fixture/CreateRepository.yaml +10/−0
- fixture/CreateRepositoryResponse.proto +0/−0
- fixture/DeleteDomain.yaml +10/−0
- fixture/DeleteDomainPermissionsPolicy.yaml +10/−0
- fixture/DeleteDomainPermissionsPolicyResponse.proto +0/−0
- fixture/DeleteDomainResponse.proto +0/−0
- fixture/DeletePackageVersions.yaml +10/−0
- fixture/DeletePackageVersionsResponse.proto +0/−0
- fixture/DeleteRepository.yaml +10/−0
- fixture/DeleteRepositoryPermissionsPolicy.yaml +10/−0
- fixture/DeleteRepositoryPermissionsPolicyResponse.proto +0/−0
- fixture/DeleteRepositoryResponse.proto +0/−0
- fixture/DescribeDomain.yaml +10/−0
- fixture/DescribeDomainResponse.proto +0/−0
- fixture/DescribePackage.yaml +10/−0
- fixture/DescribePackageResponse.proto +0/−0
- fixture/DescribePackageVersion.yaml +10/−0
- fixture/DescribePackageVersionResponse.proto +0/−0
- fixture/DescribeRepository.yaml +10/−0
- fixture/DescribeRepositoryResponse.proto +0/−0
- fixture/DisassociateExternalConnection.yaml +10/−0
- fixture/DisassociateExternalConnectionResponse.proto +0/−0
- fixture/DisposePackageVersions.yaml +10/−0
- fixture/DisposePackageVersionsResponse.proto +0/−0
- fixture/GetAuthorizationToken.yaml +10/−0
- fixture/GetAuthorizationTokenResponse.proto +0/−0
- fixture/GetDomainPermissionsPolicy.yaml +10/−0
- fixture/GetDomainPermissionsPolicyResponse.proto +0/−0
- fixture/GetPackageVersionAsset.yaml +10/−0
- fixture/GetPackageVersionAssetResponse.proto +0/−0
- fixture/GetPackageVersionReadme.yaml +10/−0
- fixture/GetPackageVersionReadmeResponse.proto +0/−0
- fixture/GetRepositoryEndpoint.yaml +10/−0
- fixture/GetRepositoryEndpointResponse.proto +0/−0
- fixture/GetRepositoryPermissionsPolicy.yaml +10/−0
- fixture/GetRepositoryPermissionsPolicyResponse.proto +0/−0
- fixture/ListDomains.yaml +10/−0
- fixture/ListDomainsResponse.proto +0/−0
- fixture/ListPackageVersionAssets.yaml +10/−0
- fixture/ListPackageVersionAssetsResponse.proto +0/−0
- fixture/ListPackageVersionDependencies.yaml +10/−0
- fixture/ListPackageVersionDependenciesResponse.proto +0/−0
- fixture/ListPackageVersions.yaml +10/−0
- fixture/ListPackageVersionsResponse.proto +0/−0
- fixture/ListPackages.yaml +10/−0
- fixture/ListPackagesResponse.proto +0/−0
- fixture/ListRepositories.yaml +10/−0
- fixture/ListRepositoriesInDomain.yaml +10/−0
- fixture/ListRepositoriesInDomainResponse.proto +0/−0
- fixture/ListRepositoriesResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/PutDomainPermissionsPolicy.yaml +10/−0
- fixture/PutDomainPermissionsPolicyResponse.proto +0/−0
- fixture/PutPackageOriginConfiguration.yaml +10/−0
- fixture/PutPackageOriginConfigurationResponse.proto +0/−0
- fixture/PutRepositoryPermissionsPolicy.yaml +10/−0
- fixture/PutRepositoryPermissionsPolicyResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdatePackageVersionsStatus.yaml +10/−0
- fixture/UpdatePackageVersionsStatusResponse.proto +0/−0
- fixture/UpdateRepository.yaml +10/−0
- fixture/UpdateRepositoryResponse.proto +0/−0
- gen/Amazonka/CodeArtifact.hs +648/−0
- gen/Amazonka/CodeArtifact/AssociateExternalConnection.hs +264/−0
- gen/Amazonka/CodeArtifact/CopyPackageVersions.hs +470/−0
- gen/Amazonka/CodeArtifact/CreateDomain.hs +258/−0
- gen/Amazonka/CodeArtifact/CreateRepository.hs +253/−0
- gen/Amazonka/CodeArtifact/DeleteDomain.hs +182/−0
- gen/Amazonka/CodeArtifact/DeleteDomainPermissionsPolicy.hs +216/−0
- gen/Amazonka/CodeArtifact/DeletePackageVersions.hs +371/−0
- gen/Amazonka/CodeArtifact/DeleteRepository.hs +195/−0
- gen/Amazonka/CodeArtifact/DeleteRepositoryPermissionsPolicy.hs +258/−0
- gen/Amazonka/CodeArtifact/DescribeDomain.hs +180/−0
- gen/Amazonka/CodeArtifact/DescribePackage.hs +281/−0
- gen/Amazonka/CodeArtifact/DescribePackageVersion.hs +304/−0
- gen/Amazonka/CodeArtifact/DescribeRepository.hs +199/−0
- gen/Amazonka/CodeArtifact/DisassociateExternalConnection.hs +239/−0
- gen/Amazonka/CodeArtifact/DisposePackageVersions.hs +395/−0
- gen/Amazonka/CodeArtifact/GetAuthorizationToken.hs +250/−0
- gen/Amazonka/CodeArtifact/GetDomainPermissionsPolicy.hs +190/−0
- gen/Amazonka/CodeArtifact/GetPackageVersionAsset.hs +367/−0
- gen/Amazonka/CodeArtifact/GetPackageVersionReadme.hs +394/−0
- gen/Amazonka/CodeArtifact/GetRepositoryEndpoint.hs +229/−0
- gen/Amazonka/CodeArtifact/GetRepositoryPermissionsPolicy.hs +223/−0
- gen/Amazonka/CodeArtifact/Lens.hs +570/−0
- gen/Amazonka/CodeArtifact/ListDomains.hs +235/−0
- gen/Amazonka/CodeArtifact/ListPackageVersionAssets.hs +482/−0
- gen/Amazonka/CodeArtifact/ListPackageVersionDependencies.hs +460/−0
- gen/Amazonka/CodeArtifact/ListPackageVersions.hs +496/−0
- gen/Amazonka/CodeArtifact/ListPackages.hs +393/−0
- gen/Amazonka/CodeArtifact/ListRepositories.hs +249/−0
- gen/Amazonka/CodeArtifact/ListRepositoriesInDomain.hs +295/−0
- gen/Amazonka/CodeArtifact/ListTagsForResource.hs +166/−0
- gen/Amazonka/CodeArtifact/PutDomainPermissionsPolicy.hs +237/−0
- gen/Amazonka/CodeArtifact/PutPackageOriginConfiguration.hs +363/−0
- gen/Amazonka/CodeArtifact/PutRepositoryPermissionsPolicy.hs +276/−0
- gen/Amazonka/CodeArtifact/TagResource.hs +166/−0
- gen/Amazonka/CodeArtifact/Types.hs +399/−0
- gen/Amazonka/CodeArtifact/Types/AllowPublish.hs +71/−0
- gen/Amazonka/CodeArtifact/Types/AllowUpstream.hs +71/−0
- gen/Amazonka/CodeArtifact/Types/AssetSummary.hs +99/−0
- gen/Amazonka/CodeArtifact/Types/DomainDescription.hs +174/−0
- gen/Amazonka/CodeArtifact/Types/DomainEntryPoint.hs +91/−0
- gen/Amazonka/CodeArtifact/Types/DomainStatus.hs +71/−0
- gen/Amazonka/CodeArtifact/Types/DomainSummary.hs +139/−0
- gen/Amazonka/CodeArtifact/Types/ExternalConnectionStatus.hs +66/−0
- gen/Amazonka/CodeArtifact/Types/HashAlgorithm.hs +81/−0
- gen/Amazonka/CodeArtifact/Types/LicenseInfo.hs +83/−0
- gen/Amazonka/CodeArtifact/Types/PackageDependency.hs +148/−0
- gen/Amazonka/CodeArtifact/Types/PackageDescription.hs +134/−0
- gen/Amazonka/CodeArtifact/Types/PackageFormat.hs +81/−0
- gen/Amazonka/CodeArtifact/Types/PackageOriginConfiguration.hs +76/−0
- gen/Amazonka/CodeArtifact/Types/PackageOriginRestrictions.hs +110/−0
- gen/Amazonka/CodeArtifact/Types/PackageSummary.hs +151/−0
- gen/Amazonka/CodeArtifact/Types/PackageVersionDescription.hs +278/−0
- gen/Amazonka/CodeArtifact/Types/PackageVersionError.hs +121/−0
- gen/Amazonka/CodeArtifact/Types/PackageVersionErrorCode.hs +91/−0
- gen/Amazonka/CodeArtifact/Types/PackageVersionOrigin.hs +105/−0
- gen/Amazonka/CodeArtifact/Types/PackageVersionOriginType.hs +76/−0
- gen/Amazonka/CodeArtifact/Types/PackageVersionSortType.hs +66/−0
- gen/Amazonka/CodeArtifact/Types/PackageVersionStatus.hs +91/−0
- gen/Amazonka/CodeArtifact/Types/PackageVersionSummary.hs +129/−0
- gen/Amazonka/CodeArtifact/Types/RepositoryDescription.hs +189/−0
- gen/Amazonka/CodeArtifact/Types/RepositoryExternalConnectionInfo.hs +143/−0
- gen/Amazonka/CodeArtifact/Types/RepositorySummary.hs +139/−0
- gen/Amazonka/CodeArtifact/Types/ResourcePolicy.hs +97/−0
- gen/Amazonka/CodeArtifact/Types/SuccessfulPackageVersionInfo.hs +89/−0
- gen/Amazonka/CodeArtifact/Types/Tag.hs +94/−0
- gen/Amazonka/CodeArtifact/Types/UpstreamRepository.hs +78/−0
- gen/Amazonka/CodeArtifact/Types/UpstreamRepositoryInfo.hs +72/−0
- gen/Amazonka/CodeArtifact/UntagResource.hs +169/−0
- gen/Amazonka/CodeArtifact/UpdatePackageVersionsStatus.hs +390/−0
- gen/Amazonka/CodeArtifact/UpdateRepository.hs +240/−0
- gen/Amazonka/CodeArtifact/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/CodeArtifact.hs +20/−0
- test/Test/Amazonka/CodeArtifact/Internal.hs +8/−0
- test/Test/Amazonka/Gen/CodeArtifact.hs +750/−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 CodeArtifact SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2018-09-22@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-codeartifact)+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.CodeArtifact](http://hackage.haskell.org/package/amazonka-codeartifact/docs/Amazonka-CodeArtifact.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-codeartifact` 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-codeartifact.cabal view
@@ -0,0 +1,151 @@+cabal-version: 2.2+name: amazonka-codeartifact+version: 2.0+synopsis: Amazon CodeArtifact 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 @2018-09-22@ 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.CodeArtifact.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.CodeArtifact" 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-codeartifact++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.CodeArtifact+ Amazonka.CodeArtifact.AssociateExternalConnection+ Amazonka.CodeArtifact.CopyPackageVersions+ Amazonka.CodeArtifact.CreateDomain+ Amazonka.CodeArtifact.CreateRepository+ Amazonka.CodeArtifact.DeleteDomain+ Amazonka.CodeArtifact.DeleteDomainPermissionsPolicy+ Amazonka.CodeArtifact.DeletePackageVersions+ Amazonka.CodeArtifact.DeleteRepository+ Amazonka.CodeArtifact.DeleteRepositoryPermissionsPolicy+ Amazonka.CodeArtifact.DescribeDomain+ Amazonka.CodeArtifact.DescribePackage+ Amazonka.CodeArtifact.DescribePackageVersion+ Amazonka.CodeArtifact.DescribeRepository+ Amazonka.CodeArtifact.DisassociateExternalConnection+ Amazonka.CodeArtifact.DisposePackageVersions+ Amazonka.CodeArtifact.GetAuthorizationToken+ Amazonka.CodeArtifact.GetDomainPermissionsPolicy+ Amazonka.CodeArtifact.GetPackageVersionAsset+ Amazonka.CodeArtifact.GetPackageVersionReadme+ Amazonka.CodeArtifact.GetRepositoryEndpoint+ Amazonka.CodeArtifact.GetRepositoryPermissionsPolicy+ Amazonka.CodeArtifact.Lens+ Amazonka.CodeArtifact.ListDomains+ Amazonka.CodeArtifact.ListPackages+ Amazonka.CodeArtifact.ListPackageVersionAssets+ Amazonka.CodeArtifact.ListPackageVersionDependencies+ Amazonka.CodeArtifact.ListPackageVersions+ Amazonka.CodeArtifact.ListRepositories+ Amazonka.CodeArtifact.ListRepositoriesInDomain+ Amazonka.CodeArtifact.ListTagsForResource+ Amazonka.CodeArtifact.PutDomainPermissionsPolicy+ Amazonka.CodeArtifact.PutPackageOriginConfiguration+ Amazonka.CodeArtifact.PutRepositoryPermissionsPolicy+ Amazonka.CodeArtifact.TagResource+ Amazonka.CodeArtifact.Types+ Amazonka.CodeArtifact.Types.AllowPublish+ Amazonka.CodeArtifact.Types.AllowUpstream+ Amazonka.CodeArtifact.Types.AssetSummary+ Amazonka.CodeArtifact.Types.DomainDescription+ Amazonka.CodeArtifact.Types.DomainEntryPoint+ Amazonka.CodeArtifact.Types.DomainStatus+ Amazonka.CodeArtifact.Types.DomainSummary+ Amazonka.CodeArtifact.Types.ExternalConnectionStatus+ Amazonka.CodeArtifact.Types.HashAlgorithm+ Amazonka.CodeArtifact.Types.LicenseInfo+ Amazonka.CodeArtifact.Types.PackageDependency+ Amazonka.CodeArtifact.Types.PackageDescription+ Amazonka.CodeArtifact.Types.PackageFormat+ Amazonka.CodeArtifact.Types.PackageOriginConfiguration+ Amazonka.CodeArtifact.Types.PackageOriginRestrictions+ Amazonka.CodeArtifact.Types.PackageSummary+ Amazonka.CodeArtifact.Types.PackageVersionDescription+ Amazonka.CodeArtifact.Types.PackageVersionError+ Amazonka.CodeArtifact.Types.PackageVersionErrorCode+ Amazonka.CodeArtifact.Types.PackageVersionOrigin+ Amazonka.CodeArtifact.Types.PackageVersionOriginType+ Amazonka.CodeArtifact.Types.PackageVersionSortType+ Amazonka.CodeArtifact.Types.PackageVersionStatus+ Amazonka.CodeArtifact.Types.PackageVersionSummary+ Amazonka.CodeArtifact.Types.RepositoryDescription+ Amazonka.CodeArtifact.Types.RepositoryExternalConnectionInfo+ Amazonka.CodeArtifact.Types.RepositorySummary+ Amazonka.CodeArtifact.Types.ResourcePolicy+ Amazonka.CodeArtifact.Types.SuccessfulPackageVersionInfo+ Amazonka.CodeArtifact.Types.Tag+ Amazonka.CodeArtifact.Types.UpstreamRepository+ Amazonka.CodeArtifact.Types.UpstreamRepositoryInfo+ Amazonka.CodeArtifact.UntagResource+ Amazonka.CodeArtifact.UpdatePackageVersionsStatus+ Amazonka.CodeArtifact.UpdateRepository+ Amazonka.CodeArtifact.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-codeartifact-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.CodeArtifact+ Test.Amazonka.CodeArtifact.Internal+ Test.Amazonka.Gen.CodeArtifact++ build-depends:+ , amazonka-codeartifact+ , amazonka-core >=2.0 && <2.1+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/AssociateExternalConnection.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/AssociateExternalConnectionResponse.proto view
+ fixture/CopyPackageVersions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/CopyPackageVersionsResponse.proto view
+ fixture/CreateDomain.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/CreateDomainResponse.proto view
+ fixture/CreateRepository.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/CreateRepositoryResponse.proto view
+ fixture/DeleteDomain.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DeleteDomainPermissionsPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DeleteDomainPermissionsPolicyResponse.proto view
+ fixture/DeleteDomainResponse.proto view
+ fixture/DeletePackageVersions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DeletePackageVersionsResponse.proto view
+ fixture/DeleteRepository.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DeleteRepositoryPermissionsPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DeleteRepositoryPermissionsPolicyResponse.proto view
+ fixture/DeleteRepositoryResponse.proto view
+ fixture/DescribeDomain.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DescribeDomainResponse.proto view
+ fixture/DescribePackage.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DescribePackageResponse.proto view
+ fixture/DescribePackageVersion.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DescribePackageVersionResponse.proto view
+ fixture/DescribeRepository.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DescribeRepositoryResponse.proto view
+ fixture/DisassociateExternalConnection.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DisassociateExternalConnectionResponse.proto view
+ fixture/DisposePackageVersions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/DisposePackageVersionsResponse.proto view
+ fixture/GetAuthorizationToken.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/GetAuthorizationTokenResponse.proto view
+ fixture/GetDomainPermissionsPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/GetDomainPermissionsPolicyResponse.proto view
+ fixture/GetPackageVersionAsset.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/GetPackageVersionAssetResponse.proto view
+ fixture/GetPackageVersionReadme.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/GetPackageVersionReadmeResponse.proto view
+ fixture/GetRepositoryEndpoint.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/GetRepositoryEndpointResponse.proto view
+ fixture/GetRepositoryPermissionsPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/GetRepositoryPermissionsPolicyResponse.proto view
+ fixture/ListDomains.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/ListDomainsResponse.proto view
+ fixture/ListPackageVersionAssets.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/ListPackageVersionAssetsResponse.proto view
+ fixture/ListPackageVersionDependencies.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/ListPackageVersionDependenciesResponse.proto view
+ fixture/ListPackageVersions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/ListPackageVersionsResponse.proto view
+ fixture/ListPackages.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/ListPackagesResponse.proto view
+ fixture/ListRepositories.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/ListRepositoriesInDomain.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/ListRepositoriesInDomainResponse.proto view
+ fixture/ListRepositoriesResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/PutDomainPermissionsPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/PutDomainPermissionsPolicyResponse.proto view
+ fixture/PutPackageOriginConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/PutPackageOriginConfigurationResponse.proto view
+ fixture/PutRepositoryPermissionsPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/PutRepositoryPermissionsPolicyResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagResourceResponse.proto view
+ fixture/UpdatePackageVersionsStatus.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/UpdatePackageVersionsStatusResponse.proto view
+ fixture/UpdateRepository.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codeartifact/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: codeartifact.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/UpdateRepositoryResponse.proto view
+ gen/Amazonka/CodeArtifact.hs view
@@ -0,0 +1,648 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.CodeArtifact+-- 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 @2018-09-22@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- CodeArtifact is a fully managed artifact repository compatible with+-- language-native package managers and build tools such as npm, Apache+-- Maven, pip, and dotnet. You can use CodeArtifact to share packages with+-- development teams and pull packages. Packages can be pulled from both+-- public and CodeArtifact repositories. You can also create an upstream+-- relationship between a CodeArtifact repository and another repository,+-- which effectively merges their contents from the point of view of a+-- package manager client.+--+-- __CodeArtifact Components__+--+-- Use the information in this guide to help you work with the following+-- CodeArtifact components:+--+-- - __Repository__: A CodeArtifact repository contains a set of+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/welcome.html#welcome-concepts-package-version package versions>,+-- each of which maps to a set of assets, or files. Repositories are+-- polyglot, so a single repository can contain packages of any+-- supported type. Each repository exposes endpoints for fetching and+-- publishing packages using tools like the __@npm@__ CLI, the Maven+-- CLI ( __@mvn@__ ), Python CLIs ( __@pip@__ and @twine@), and NuGet+-- CLIs (@nuget@ and @dotnet@).+--+-- - __Domain__: Repositories are aggregated into a higher-level entity+-- known as a /domain/. All package assets and metadata are stored in+-- the domain, but are consumed through repositories. A given package+-- asset, such as a Maven JAR file, is stored once per domain, no+-- matter how many repositories it\'s present in. All of the assets and+-- metadata in a domain are encrypted with the same customer master key+-- (CMK) stored in Key Management Service (KMS).+--+-- Each repository is a member of a single domain and can\'t be moved+-- to a different domain.+--+-- The domain allows organizational policy to be applied across+-- multiple repositories, such as which accounts can access+-- repositories in the domain, and which public repositories can be+-- used as sources of packages.+--+-- Although an organization can have multiple domains, we recommend a+-- single production domain that contains all published artifacts so+-- that teams can find and share packages across their organization.+--+-- - __Package__: A /package/ is a bundle of software and the metadata+-- required to resolve dependencies and install the software.+-- CodeArtifact supports+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/using-npm.html npm>,+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/using-python.html PyPI>,+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/using-maven Maven>,+-- and+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/using-nuget NuGet>+-- package formats.+--+-- In CodeArtifact, a package consists of:+--+-- - A /name/ (for example, @webpack@ is the name of a popular npm+-- package)+--+-- - An optional namespace (for example, @\@types@ in+-- @\@types\/node@)+--+-- - A set of versions (for example, @1.0.0@, @1.0.1@, @1.0.2@, etc.)+--+-- - Package-level metadata (for example, npm tags)+--+-- - __Package version__: A version of a package, such as+-- @\@types\/node 12.6.9@. The version number format and semantics vary+-- for different package formats. For example, npm package versions+-- must conform to the+-- <https://semver.org/ Semantic Versioning specification>. In+-- CodeArtifact, a package version consists of the version identifier,+-- metadata at the package version level, and a set of assets.+--+-- - __Upstream repository__: One repository is /upstream/ of another+-- when the package versions in it can be accessed from the repository+-- endpoint of the downstream repository, effectively merging the+-- contents of the two repositories from the point of view of a client.+-- CodeArtifact allows creating an upstream relationship between two+-- repositories.+--+-- - __Asset__: An individual file stored in CodeArtifact associated with+-- a package version, such as an npm @.tgz@ file or Maven POM and JAR+-- files.+--+-- CodeArtifact supports these operations:+--+-- - @AssociateExternalConnection@: Adds an existing external connection+-- to a repository.+--+-- - @CopyPackageVersions@: Copies package versions from one repository+-- to another repository in the same domain.+--+-- - @CreateDomain@: Creates a domain+--+-- - @CreateRepository@: Creates a CodeArtifact repository in a domain.+--+-- - @DeleteDomain@: Deletes a domain. You cannot delete a domain that+-- contains repositories.+--+-- - @DeleteDomainPermissionsPolicy@: Deletes the resource policy that is+-- set on a domain.+--+-- - @DeletePackageVersions@: Deletes versions of a package. After a+-- package has been deleted, it can be republished, but its assets and+-- metadata cannot be restored because they have been permanently+-- removed from storage.+--+-- - @DeleteRepository@: Deletes a repository.+--+-- - @DeleteRepositoryPermissionsPolicy@: Deletes the resource policy+-- that is set on a repository.+--+-- - @DescribeDomain@: Returns a @DomainDescription@ object that contains+-- information about the requested domain.+--+-- - @DescribePackage@: Returns a+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDescription.html PackageDescription>+-- object that contains details about a package.+--+-- - @DescribePackageVersion@: Returns a+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionDescription.html PackageVersionDescription>+-- object that contains details about a package version.+--+-- - @DescribeRepository@: Returns a @RepositoryDescription@ object that+-- contains detailed information about the requested repository.+--+-- - @DisposePackageVersions@: Disposes versions of a package. A package+-- version with the status @Disposed@ cannot be restored because they+-- have been permanently removed from storage.+--+-- - @DisassociateExternalConnection@: Removes an existing external+-- connection from a repository.+--+-- - @GetAuthorizationToken@: Generates a temporary authorization token+-- for accessing repositories in the domain. The token expires the+-- authorization period has passed. The default authorization period is+-- 12 hours and can be customized to any length with a maximum of 12+-- hours.+--+-- - @GetDomainPermissionsPolicy@: Returns the policy of a resource that+-- is attached to the specified domain.+--+-- - @GetPackageVersionAsset@: Returns the contents of an asset that is+-- in a package version.+--+-- - @GetPackageVersionReadme@: Gets the readme file or descriptive text+-- for a package version.+--+-- - @GetRepositoryEndpoint@: Returns the endpoint of a repository for a+-- specific package format. A repository has one endpoint for each+-- package format:+--+-- - @maven@+--+-- - @npm@+--+-- - @nuget@+--+-- - @pypi@+--+-- - @GetRepositoryPermissionsPolicy@: Returns the resource policy that+-- is set on a repository.+--+-- - @ListDomains@: Returns a list of @DomainSummary@ objects. Each+-- returned @DomainSummary@ object contains information about a domain.+--+-- - @ListPackages@: Lists the packages in a repository.+--+-- - @ListPackageVersionAssets@: Lists the assets for a given package+-- version.+--+-- - @ListPackageVersionDependencies@: Returns a list of the direct+-- dependencies for a package version.+--+-- - @ListPackageVersions@: Returns a list of package versions for a+-- specified package in a repository.+--+-- - @ListRepositories@: Returns a list of repositories owned by the+-- Amazon Web Services account that called this method.+--+-- - @ListRepositoriesInDomain@: Returns a list of the repositories in a+-- domain.+--+-- - @PutDomainPermissionsPolicy@: Attaches a resource policy to a+-- domain.+--+-- - @PutPackageOriginConfiguration@: Sets the package origin+-- configuration for a package, which determine how new versions of the+-- package can be added to a specific repository.+--+-- - @PutRepositoryPermissionsPolicy@: Sets the resource policy on a+-- repository that specifies permissions to access it.+--+-- - @UpdatePackageVersionsStatus@: Updates the status of one or more+-- versions of a package.+--+-- - @UpdateRepository@: Updates the properties of a repository.+module Amazonka.CodeArtifact+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceQuotaExceededException+ _ServiceQuotaExceededException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** AssociateExternalConnection+ AssociateExternalConnection (AssociateExternalConnection'),+ newAssociateExternalConnection,+ AssociateExternalConnectionResponse (AssociateExternalConnectionResponse'),+ newAssociateExternalConnectionResponse,++ -- ** CopyPackageVersions+ CopyPackageVersions (CopyPackageVersions'),+ newCopyPackageVersions,+ CopyPackageVersionsResponse (CopyPackageVersionsResponse'),+ newCopyPackageVersionsResponse,++ -- ** CreateDomain+ CreateDomain (CreateDomain'),+ newCreateDomain,+ CreateDomainResponse (CreateDomainResponse'),+ newCreateDomainResponse,++ -- ** CreateRepository+ CreateRepository (CreateRepository'),+ newCreateRepository,+ CreateRepositoryResponse (CreateRepositoryResponse'),+ newCreateRepositoryResponse,++ -- ** DeleteDomain+ DeleteDomain (DeleteDomain'),+ newDeleteDomain,+ DeleteDomainResponse (DeleteDomainResponse'),+ newDeleteDomainResponse,++ -- ** DeleteDomainPermissionsPolicy+ DeleteDomainPermissionsPolicy (DeleteDomainPermissionsPolicy'),+ newDeleteDomainPermissionsPolicy,+ DeleteDomainPermissionsPolicyResponse (DeleteDomainPermissionsPolicyResponse'),+ newDeleteDomainPermissionsPolicyResponse,++ -- ** DeletePackageVersions+ DeletePackageVersions (DeletePackageVersions'),+ newDeletePackageVersions,+ DeletePackageVersionsResponse (DeletePackageVersionsResponse'),+ newDeletePackageVersionsResponse,++ -- ** DeleteRepository+ DeleteRepository (DeleteRepository'),+ newDeleteRepository,+ DeleteRepositoryResponse (DeleteRepositoryResponse'),+ newDeleteRepositoryResponse,++ -- ** DeleteRepositoryPermissionsPolicy+ DeleteRepositoryPermissionsPolicy (DeleteRepositoryPermissionsPolicy'),+ newDeleteRepositoryPermissionsPolicy,+ DeleteRepositoryPermissionsPolicyResponse (DeleteRepositoryPermissionsPolicyResponse'),+ newDeleteRepositoryPermissionsPolicyResponse,++ -- ** DescribeDomain+ DescribeDomain (DescribeDomain'),+ newDescribeDomain,+ DescribeDomainResponse (DescribeDomainResponse'),+ newDescribeDomainResponse,++ -- ** DescribePackage+ DescribePackage (DescribePackage'),+ newDescribePackage,+ DescribePackageResponse (DescribePackageResponse'),+ newDescribePackageResponse,++ -- ** DescribePackageVersion+ DescribePackageVersion (DescribePackageVersion'),+ newDescribePackageVersion,+ DescribePackageVersionResponse (DescribePackageVersionResponse'),+ newDescribePackageVersionResponse,++ -- ** DescribeRepository+ DescribeRepository (DescribeRepository'),+ newDescribeRepository,+ DescribeRepositoryResponse (DescribeRepositoryResponse'),+ newDescribeRepositoryResponse,++ -- ** DisassociateExternalConnection+ DisassociateExternalConnection (DisassociateExternalConnection'),+ newDisassociateExternalConnection,+ DisassociateExternalConnectionResponse (DisassociateExternalConnectionResponse'),+ newDisassociateExternalConnectionResponse,++ -- ** DisposePackageVersions+ DisposePackageVersions (DisposePackageVersions'),+ newDisposePackageVersions,+ DisposePackageVersionsResponse (DisposePackageVersionsResponse'),+ newDisposePackageVersionsResponse,++ -- ** GetAuthorizationToken+ GetAuthorizationToken (GetAuthorizationToken'),+ newGetAuthorizationToken,+ GetAuthorizationTokenResponse (GetAuthorizationTokenResponse'),+ newGetAuthorizationTokenResponse,++ -- ** GetDomainPermissionsPolicy+ GetDomainPermissionsPolicy (GetDomainPermissionsPolicy'),+ newGetDomainPermissionsPolicy,+ GetDomainPermissionsPolicyResponse (GetDomainPermissionsPolicyResponse'),+ newGetDomainPermissionsPolicyResponse,++ -- ** GetPackageVersionAsset+ GetPackageVersionAsset (GetPackageVersionAsset'),+ newGetPackageVersionAsset,+ GetPackageVersionAssetResponse (GetPackageVersionAssetResponse'),+ newGetPackageVersionAssetResponse,++ -- ** GetPackageVersionReadme+ GetPackageVersionReadme (GetPackageVersionReadme'),+ newGetPackageVersionReadme,+ GetPackageVersionReadmeResponse (GetPackageVersionReadmeResponse'),+ newGetPackageVersionReadmeResponse,++ -- ** GetRepositoryEndpoint+ GetRepositoryEndpoint (GetRepositoryEndpoint'),+ newGetRepositoryEndpoint,+ GetRepositoryEndpointResponse (GetRepositoryEndpointResponse'),+ newGetRepositoryEndpointResponse,++ -- ** GetRepositoryPermissionsPolicy+ GetRepositoryPermissionsPolicy (GetRepositoryPermissionsPolicy'),+ newGetRepositoryPermissionsPolicy,+ GetRepositoryPermissionsPolicyResponse (GetRepositoryPermissionsPolicyResponse'),+ newGetRepositoryPermissionsPolicyResponse,++ -- ** ListDomains (Paginated)+ ListDomains (ListDomains'),+ newListDomains,+ ListDomainsResponse (ListDomainsResponse'),+ newListDomainsResponse,++ -- ** ListPackageVersionAssets (Paginated)+ ListPackageVersionAssets (ListPackageVersionAssets'),+ newListPackageVersionAssets,+ ListPackageVersionAssetsResponse (ListPackageVersionAssetsResponse'),+ newListPackageVersionAssetsResponse,++ -- ** ListPackageVersionDependencies+ ListPackageVersionDependencies (ListPackageVersionDependencies'),+ newListPackageVersionDependencies,+ ListPackageVersionDependenciesResponse (ListPackageVersionDependenciesResponse'),+ newListPackageVersionDependenciesResponse,++ -- ** ListPackageVersions (Paginated)+ ListPackageVersions (ListPackageVersions'),+ newListPackageVersions,+ ListPackageVersionsResponse (ListPackageVersionsResponse'),+ newListPackageVersionsResponse,++ -- ** ListPackages (Paginated)+ ListPackages (ListPackages'),+ newListPackages,+ ListPackagesResponse (ListPackagesResponse'),+ newListPackagesResponse,++ -- ** ListRepositories (Paginated)+ ListRepositories (ListRepositories'),+ newListRepositories,+ ListRepositoriesResponse (ListRepositoriesResponse'),+ newListRepositoriesResponse,++ -- ** ListRepositoriesInDomain (Paginated)+ ListRepositoriesInDomain (ListRepositoriesInDomain'),+ newListRepositoriesInDomain,+ ListRepositoriesInDomainResponse (ListRepositoriesInDomainResponse'),+ newListRepositoriesInDomainResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** PutDomainPermissionsPolicy+ PutDomainPermissionsPolicy (PutDomainPermissionsPolicy'),+ newPutDomainPermissionsPolicy,+ PutDomainPermissionsPolicyResponse (PutDomainPermissionsPolicyResponse'),+ newPutDomainPermissionsPolicyResponse,++ -- ** PutPackageOriginConfiguration+ PutPackageOriginConfiguration (PutPackageOriginConfiguration'),+ newPutPackageOriginConfiguration,+ PutPackageOriginConfigurationResponse (PutPackageOriginConfigurationResponse'),+ newPutPackageOriginConfigurationResponse,++ -- ** PutRepositoryPermissionsPolicy+ PutRepositoryPermissionsPolicy (PutRepositoryPermissionsPolicy'),+ newPutRepositoryPermissionsPolicy,+ PutRepositoryPermissionsPolicyResponse (PutRepositoryPermissionsPolicyResponse'),+ newPutRepositoryPermissionsPolicyResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdatePackageVersionsStatus+ UpdatePackageVersionsStatus (UpdatePackageVersionsStatus'),+ newUpdatePackageVersionsStatus,+ UpdatePackageVersionsStatusResponse (UpdatePackageVersionsStatusResponse'),+ newUpdatePackageVersionsStatusResponse,++ -- ** UpdateRepository+ UpdateRepository (UpdateRepository'),+ newUpdateRepository,+ UpdateRepositoryResponse (UpdateRepositoryResponse'),+ newUpdateRepositoryResponse,++ -- * Types++ -- ** AllowPublish+ AllowPublish (..),++ -- ** AllowUpstream+ AllowUpstream (..),++ -- ** DomainStatus+ DomainStatus (..),++ -- ** ExternalConnectionStatus+ ExternalConnectionStatus (..),++ -- ** HashAlgorithm+ HashAlgorithm (..),++ -- ** PackageFormat+ PackageFormat (..),++ -- ** PackageVersionErrorCode+ PackageVersionErrorCode (..),++ -- ** PackageVersionOriginType+ PackageVersionOriginType (..),++ -- ** PackageVersionSortType+ PackageVersionSortType (..),++ -- ** PackageVersionStatus+ PackageVersionStatus (..),++ -- ** AssetSummary+ AssetSummary (AssetSummary'),+ newAssetSummary,++ -- ** DomainDescription+ DomainDescription (DomainDescription'),+ newDomainDescription,++ -- ** DomainEntryPoint+ DomainEntryPoint (DomainEntryPoint'),+ newDomainEntryPoint,++ -- ** DomainSummary+ DomainSummary (DomainSummary'),+ newDomainSummary,++ -- ** LicenseInfo+ LicenseInfo (LicenseInfo'),+ newLicenseInfo,++ -- ** PackageDependency+ PackageDependency (PackageDependency'),+ newPackageDependency,++ -- ** PackageDescription+ PackageDescription (PackageDescription'),+ newPackageDescription,++ -- ** PackageOriginConfiguration+ PackageOriginConfiguration (PackageOriginConfiguration'),+ newPackageOriginConfiguration,++ -- ** PackageOriginRestrictions+ PackageOriginRestrictions (PackageOriginRestrictions'),+ newPackageOriginRestrictions,++ -- ** PackageSummary+ PackageSummary (PackageSummary'),+ newPackageSummary,++ -- ** PackageVersionDescription+ PackageVersionDescription (PackageVersionDescription'),+ newPackageVersionDescription,++ -- ** PackageVersionError+ PackageVersionError (PackageVersionError'),+ newPackageVersionError,++ -- ** PackageVersionOrigin+ PackageVersionOrigin (PackageVersionOrigin'),+ newPackageVersionOrigin,++ -- ** PackageVersionSummary+ PackageVersionSummary (PackageVersionSummary'),+ newPackageVersionSummary,++ -- ** RepositoryDescription+ RepositoryDescription (RepositoryDescription'),+ newRepositoryDescription,++ -- ** RepositoryExternalConnectionInfo+ RepositoryExternalConnectionInfo (RepositoryExternalConnectionInfo'),+ newRepositoryExternalConnectionInfo,++ -- ** RepositorySummary+ RepositorySummary (RepositorySummary'),+ newRepositorySummary,++ -- ** ResourcePolicy+ ResourcePolicy (ResourcePolicy'),+ newResourcePolicy,++ -- ** SuccessfulPackageVersionInfo+ SuccessfulPackageVersionInfo (SuccessfulPackageVersionInfo'),+ newSuccessfulPackageVersionInfo,++ -- ** Tag+ Tag (Tag'),+ newTag,++ -- ** UpstreamRepository+ UpstreamRepository (UpstreamRepository'),+ newUpstreamRepository,++ -- ** UpstreamRepositoryInfo+ UpstreamRepositoryInfo (UpstreamRepositoryInfo'),+ newUpstreamRepositoryInfo,+ )+where++import Amazonka.CodeArtifact.AssociateExternalConnection+import Amazonka.CodeArtifact.CopyPackageVersions+import Amazonka.CodeArtifact.CreateDomain+import Amazonka.CodeArtifact.CreateRepository+import Amazonka.CodeArtifact.DeleteDomain+import Amazonka.CodeArtifact.DeleteDomainPermissionsPolicy+import Amazonka.CodeArtifact.DeletePackageVersions+import Amazonka.CodeArtifact.DeleteRepository+import Amazonka.CodeArtifact.DeleteRepositoryPermissionsPolicy+import Amazonka.CodeArtifact.DescribeDomain+import Amazonka.CodeArtifact.DescribePackage+import Amazonka.CodeArtifact.DescribePackageVersion+import Amazonka.CodeArtifact.DescribeRepository+import Amazonka.CodeArtifact.DisassociateExternalConnection+import Amazonka.CodeArtifact.DisposePackageVersions+import Amazonka.CodeArtifact.GetAuthorizationToken+import Amazonka.CodeArtifact.GetDomainPermissionsPolicy+import Amazonka.CodeArtifact.GetPackageVersionAsset+import Amazonka.CodeArtifact.GetPackageVersionReadme+import Amazonka.CodeArtifact.GetRepositoryEndpoint+import Amazonka.CodeArtifact.GetRepositoryPermissionsPolicy+import Amazonka.CodeArtifact.Lens+import Amazonka.CodeArtifact.ListDomains+import Amazonka.CodeArtifact.ListPackageVersionAssets+import Amazonka.CodeArtifact.ListPackageVersionDependencies+import Amazonka.CodeArtifact.ListPackageVersions+import Amazonka.CodeArtifact.ListPackages+import Amazonka.CodeArtifact.ListRepositories+import Amazonka.CodeArtifact.ListRepositoriesInDomain+import Amazonka.CodeArtifact.ListTagsForResource+import Amazonka.CodeArtifact.PutDomainPermissionsPolicy+import Amazonka.CodeArtifact.PutPackageOriginConfiguration+import Amazonka.CodeArtifact.PutRepositoryPermissionsPolicy+import Amazonka.CodeArtifact.TagResource+import Amazonka.CodeArtifact.Types+import Amazonka.CodeArtifact.UntagResource+import Amazonka.CodeArtifact.UpdatePackageVersionsStatus+import Amazonka.CodeArtifact.UpdateRepository+import Amazonka.CodeArtifact.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 'CodeArtifact'.++-- $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/CodeArtifact/AssociateExternalConnection.hs view
@@ -0,0 +1,264 @@+{-# 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.CodeArtifact.AssociateExternalConnection+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds an existing external connection to a repository. One external+-- connection is allowed per repository.+--+-- A repository can have one or more upstream repositories, or an external+-- connection.+module Amazonka.CodeArtifact.AssociateExternalConnection+ ( -- * Creating a Request+ AssociateExternalConnection (..),+ newAssociateExternalConnection,++ -- * Request Lenses+ associateExternalConnection_domainOwner,+ associateExternalConnection_domain,+ associateExternalConnection_repository,+ associateExternalConnection_externalConnection,++ -- * Destructuring the Response+ AssociateExternalConnectionResponse (..),+ newAssociateExternalConnectionResponse,++ -- * Response Lenses+ associateExternalConnectionResponse_repository,+ associateExternalConnectionResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newAssociateExternalConnection' smart constructor.+data AssociateExternalConnection = AssociateExternalConnection'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository.+ domain :: Prelude.Text,+ -- | The name of the repository to which the external connection is added.+ repository :: Prelude.Text,+ -- | The name of the external connection to add to the repository. The+ -- following values are supported:+ --+ -- - @public:npmjs@ - for the npm public repository.+ --+ -- - @public:pypi@ - for the Python Package Index.+ --+ -- - @public:maven-central@ - for Maven Central.+ --+ -- - @public:maven-googleandroid@ - for the Google Android repository.+ --+ -- - @public:maven-gradleplugins@ - for the Gradle plugins repository.+ --+ -- - @public:maven-commonsware@ - for the CommonsWare Android repository.+ externalConnection :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateExternalConnection' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'associateExternalConnection_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'domain', 'associateExternalConnection_domain' - The name of the domain that contains the repository.+--+-- 'repository', 'associateExternalConnection_repository' - The name of the repository to which the external connection is added.+--+-- 'externalConnection', 'associateExternalConnection_externalConnection' - The name of the external connection to add to the repository. The+-- following values are supported:+--+-- - @public:npmjs@ - for the npm public repository.+--+-- - @public:pypi@ - for the Python Package Index.+--+-- - @public:maven-central@ - for Maven Central.+--+-- - @public:maven-googleandroid@ - for the Google Android repository.+--+-- - @public:maven-gradleplugins@ - for the Gradle plugins repository.+--+-- - @public:maven-commonsware@ - for the CommonsWare Android repository.+newAssociateExternalConnection ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'externalConnection'+ Prelude.Text ->+ AssociateExternalConnection+newAssociateExternalConnection+ pDomain_+ pRepository_+ pExternalConnection_ =+ AssociateExternalConnection'+ { domainOwner =+ Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ externalConnection = pExternalConnection_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+associateExternalConnection_domainOwner :: Lens.Lens' AssociateExternalConnection (Prelude.Maybe Prelude.Text)+associateExternalConnection_domainOwner = Lens.lens (\AssociateExternalConnection' {domainOwner} -> domainOwner) (\s@AssociateExternalConnection' {} a -> s {domainOwner = a} :: AssociateExternalConnection)++-- | The name of the domain that contains the repository.+associateExternalConnection_domain :: Lens.Lens' AssociateExternalConnection Prelude.Text+associateExternalConnection_domain = Lens.lens (\AssociateExternalConnection' {domain} -> domain) (\s@AssociateExternalConnection' {} a -> s {domain = a} :: AssociateExternalConnection)++-- | The name of the repository to which the external connection is added.+associateExternalConnection_repository :: Lens.Lens' AssociateExternalConnection Prelude.Text+associateExternalConnection_repository = Lens.lens (\AssociateExternalConnection' {repository} -> repository) (\s@AssociateExternalConnection' {} a -> s {repository = a} :: AssociateExternalConnection)++-- | The name of the external connection to add to the repository. The+-- following values are supported:+--+-- - @public:npmjs@ - for the npm public repository.+--+-- - @public:pypi@ - for the Python Package Index.+--+-- - @public:maven-central@ - for Maven Central.+--+-- - @public:maven-googleandroid@ - for the Google Android repository.+--+-- - @public:maven-gradleplugins@ - for the Gradle plugins repository.+--+-- - @public:maven-commonsware@ - for the CommonsWare Android repository.+associateExternalConnection_externalConnection :: Lens.Lens' AssociateExternalConnection Prelude.Text+associateExternalConnection_externalConnection = Lens.lens (\AssociateExternalConnection' {externalConnection} -> externalConnection) (\s@AssociateExternalConnection' {} a -> s {externalConnection = a} :: AssociateExternalConnection)++instance Core.AWSRequest AssociateExternalConnection where+ type+ AWSResponse AssociateExternalConnection =+ AssociateExternalConnectionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ AssociateExternalConnectionResponse'+ Prelude.<$> (x Data..?> "repository")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable AssociateExternalConnection where+ hashWithSalt _salt AssociateExternalConnection' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` externalConnection++instance Prelude.NFData AssociateExternalConnection where+ rnf AssociateExternalConnection' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf externalConnection++instance Data.ToHeaders AssociateExternalConnection where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON AssociateExternalConnection where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath AssociateExternalConnection where+ toPath =+ Prelude.const "/v1/repository/external-connection"++instance Data.ToQuery AssociateExternalConnection where+ toQuery AssociateExternalConnection' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "external-connection" Data.=: externalConnection+ ]++-- | /See:/ 'newAssociateExternalConnectionResponse' smart constructor.+data AssociateExternalConnectionResponse = AssociateExternalConnectionResponse'+ { -- | Information about the connected repository after processing the request.+ repository :: Prelude.Maybe RepositoryDescription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateExternalConnectionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'repository', 'associateExternalConnectionResponse_repository' - Information about the connected repository after processing the request.+--+-- 'httpStatus', 'associateExternalConnectionResponse_httpStatus' - The response's http status code.+newAssociateExternalConnectionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ AssociateExternalConnectionResponse+newAssociateExternalConnectionResponse pHttpStatus_ =+ AssociateExternalConnectionResponse'+ { repository =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the connected repository after processing the request.+associateExternalConnectionResponse_repository :: Lens.Lens' AssociateExternalConnectionResponse (Prelude.Maybe RepositoryDescription)+associateExternalConnectionResponse_repository = Lens.lens (\AssociateExternalConnectionResponse' {repository} -> repository) (\s@AssociateExternalConnectionResponse' {} a -> s {repository = a} :: AssociateExternalConnectionResponse)++-- | The response's http status code.+associateExternalConnectionResponse_httpStatus :: Lens.Lens' AssociateExternalConnectionResponse Prelude.Int+associateExternalConnectionResponse_httpStatus = Lens.lens (\AssociateExternalConnectionResponse' {httpStatus} -> httpStatus) (\s@AssociateExternalConnectionResponse' {} a -> s {httpStatus = a} :: AssociateExternalConnectionResponse)++instance+ Prelude.NFData+ AssociateExternalConnectionResponse+ where+ rnf AssociateExternalConnectionResponse' {..} =+ Prelude.rnf repository+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/CopyPackageVersions.hs view
@@ -0,0 +1,470 @@+{-# 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.CodeArtifact.CopyPackageVersions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Copies package versions from one repository to another repository in the+-- same domain.+--+-- You must specify @versions@ or @versionRevisions@. You cannot specify+-- both.+module Amazonka.CodeArtifact.CopyPackageVersions+ ( -- * Creating a Request+ CopyPackageVersions (..),+ newCopyPackageVersions,++ -- * Request Lenses+ copyPackageVersions_allowOverwrite,+ copyPackageVersions_domainOwner,+ copyPackageVersions_includeFromUpstream,+ copyPackageVersions_namespace,+ copyPackageVersions_versionRevisions,+ copyPackageVersions_versions,+ copyPackageVersions_domain,+ copyPackageVersions_sourceRepository,+ copyPackageVersions_destinationRepository,+ copyPackageVersions_format,+ copyPackageVersions_package,++ -- * Destructuring the Response+ CopyPackageVersionsResponse (..),+ newCopyPackageVersionsResponse,++ -- * Response Lenses+ copyPackageVersionsResponse_failedVersions,+ copyPackageVersionsResponse_successfulVersions,+ copyPackageVersionsResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newCopyPackageVersions' smart constructor.+data CopyPackageVersions = CopyPackageVersions'+ { -- | Set to true to overwrite a package version that already exists in the+ -- destination repository. If set to false and the package version already+ -- exists in the destination repository, the package version is returned in+ -- the @failedVersions@ field of the response with an @ALREADY_EXISTS@+ -- error code.+ allowOverwrite :: Prelude.Maybe Prelude.Bool,+ -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | Set to true to copy packages from repositories that are upstream from+ -- the source repository to the destination repository. The default setting+ -- is false. For more information, see+ -- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+ includeFromUpstream :: Prelude.Maybe Prelude.Bool,+ -- | The namespace of the package versions to be copied. The package version+ -- component that specifies its namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@. The+ -- namespace is required when copying Maven package versions.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | A list of key-value pairs. The keys are package versions and the values+ -- are package version revisions. A @CopyPackageVersion@ operation succeeds+ -- if the specified versions in the source repository match the specified+ -- package version revision.+ --+ -- You must specify @versions@ or @versionRevisions@. You cannot specify+ -- both.+ versionRevisions :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The versions of the package to be copied.+ --+ -- You must specify @versions@ or @versionRevisions@. You cannot specify+ -- both.+ versions :: Prelude.Maybe [Prelude.Text],+ -- | The name of the domain that contains the source and destination+ -- repositories.+ domain :: Prelude.Text,+ -- | The name of the repository that contains the package versions to be+ -- copied.+ sourceRepository :: Prelude.Text,+ -- | The name of the repository into which package versions are copied.+ destinationRepository :: Prelude.Text,+ -- | The format of the package versions to be copied.+ format :: PackageFormat,+ -- | The name of the package that contains the versions to be copied.+ package :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CopyPackageVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowOverwrite', 'copyPackageVersions_allowOverwrite' - Set to true to overwrite a package version that already exists in the+-- destination repository. If set to false and the package version already+-- exists in the destination repository, the package version is returned in+-- the @failedVersions@ field of the response with an @ALREADY_EXISTS@+-- error code.+--+-- 'domainOwner', 'copyPackageVersions_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'includeFromUpstream', 'copyPackageVersions_includeFromUpstream' - Set to true to copy packages from repositories that are upstream from+-- the source repository to the destination repository. The default setting+-- is false. For more information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+--+-- 'namespace', 'copyPackageVersions_namespace' - The namespace of the package versions to be copied. The package version+-- component that specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@. The+-- namespace is required when copying Maven package versions.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'versionRevisions', 'copyPackageVersions_versionRevisions' - A list of key-value pairs. The keys are package versions and the values+-- are package version revisions. A @CopyPackageVersion@ operation succeeds+-- if the specified versions in the source repository match the specified+-- package version revision.+--+-- You must specify @versions@ or @versionRevisions@. You cannot specify+-- both.+--+-- 'versions', 'copyPackageVersions_versions' - The versions of the package to be copied.+--+-- You must specify @versions@ or @versionRevisions@. You cannot specify+-- both.+--+-- 'domain', 'copyPackageVersions_domain' - The name of the domain that contains the source and destination+-- repositories.+--+-- 'sourceRepository', 'copyPackageVersions_sourceRepository' - The name of the repository that contains the package versions to be+-- copied.+--+-- 'destinationRepository', 'copyPackageVersions_destinationRepository' - The name of the repository into which package versions are copied.+--+-- 'format', 'copyPackageVersions_format' - The format of the package versions to be copied.+--+-- 'package', 'copyPackageVersions_package' - The name of the package that contains the versions to be copied.+newCopyPackageVersions ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'sourceRepository'+ Prelude.Text ->+ -- | 'destinationRepository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ CopyPackageVersions+newCopyPackageVersions+ pDomain_+ pSourceRepository_+ pDestinationRepository_+ pFormat_+ pPackage_ =+ CopyPackageVersions'+ { allowOverwrite =+ Prelude.Nothing,+ domainOwner = Prelude.Nothing,+ includeFromUpstream = Prelude.Nothing,+ namespace = Prelude.Nothing,+ versionRevisions = Prelude.Nothing,+ versions = Prelude.Nothing,+ domain = pDomain_,+ sourceRepository = pSourceRepository_,+ destinationRepository = pDestinationRepository_,+ format = pFormat_,+ package = pPackage_+ }++-- | Set to true to overwrite a package version that already exists in the+-- destination repository. If set to false and the package version already+-- exists in the destination repository, the package version is returned in+-- the @failedVersions@ field of the response with an @ALREADY_EXISTS@+-- error code.+copyPackageVersions_allowOverwrite :: Lens.Lens' CopyPackageVersions (Prelude.Maybe Prelude.Bool)+copyPackageVersions_allowOverwrite = Lens.lens (\CopyPackageVersions' {allowOverwrite} -> allowOverwrite) (\s@CopyPackageVersions' {} a -> s {allowOverwrite = a} :: CopyPackageVersions)++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+copyPackageVersions_domainOwner :: Lens.Lens' CopyPackageVersions (Prelude.Maybe Prelude.Text)+copyPackageVersions_domainOwner = Lens.lens (\CopyPackageVersions' {domainOwner} -> domainOwner) (\s@CopyPackageVersions' {} a -> s {domainOwner = a} :: CopyPackageVersions)++-- | Set to true to copy packages from repositories that are upstream from+-- the source repository to the destination repository. The default setting+-- is false. For more information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+copyPackageVersions_includeFromUpstream :: Lens.Lens' CopyPackageVersions (Prelude.Maybe Prelude.Bool)+copyPackageVersions_includeFromUpstream = Lens.lens (\CopyPackageVersions' {includeFromUpstream} -> includeFromUpstream) (\s@CopyPackageVersions' {} a -> s {includeFromUpstream = a} :: CopyPackageVersions)++-- | The namespace of the package versions to be copied. The package version+-- component that specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@. The+-- namespace is required when copying Maven package versions.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+copyPackageVersions_namespace :: Lens.Lens' CopyPackageVersions (Prelude.Maybe Prelude.Text)+copyPackageVersions_namespace = Lens.lens (\CopyPackageVersions' {namespace} -> namespace) (\s@CopyPackageVersions' {} a -> s {namespace = a} :: CopyPackageVersions)++-- | A list of key-value pairs. The keys are package versions and the values+-- are package version revisions. A @CopyPackageVersion@ operation succeeds+-- if the specified versions in the source repository match the specified+-- package version revision.+--+-- You must specify @versions@ or @versionRevisions@. You cannot specify+-- both.+copyPackageVersions_versionRevisions :: Lens.Lens' CopyPackageVersions (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+copyPackageVersions_versionRevisions = Lens.lens (\CopyPackageVersions' {versionRevisions} -> versionRevisions) (\s@CopyPackageVersions' {} a -> s {versionRevisions = a} :: CopyPackageVersions) Prelude.. Lens.mapping Lens.coerced++-- | The versions of the package to be copied.+--+-- You must specify @versions@ or @versionRevisions@. You cannot specify+-- both.+copyPackageVersions_versions :: Lens.Lens' CopyPackageVersions (Prelude.Maybe [Prelude.Text])+copyPackageVersions_versions = Lens.lens (\CopyPackageVersions' {versions} -> versions) (\s@CopyPackageVersions' {} a -> s {versions = a} :: CopyPackageVersions) Prelude.. Lens.mapping Lens.coerced++-- | The name of the domain that contains the source and destination+-- repositories.+copyPackageVersions_domain :: Lens.Lens' CopyPackageVersions Prelude.Text+copyPackageVersions_domain = Lens.lens (\CopyPackageVersions' {domain} -> domain) (\s@CopyPackageVersions' {} a -> s {domain = a} :: CopyPackageVersions)++-- | The name of the repository that contains the package versions to be+-- copied.+copyPackageVersions_sourceRepository :: Lens.Lens' CopyPackageVersions Prelude.Text+copyPackageVersions_sourceRepository = Lens.lens (\CopyPackageVersions' {sourceRepository} -> sourceRepository) (\s@CopyPackageVersions' {} a -> s {sourceRepository = a} :: CopyPackageVersions)++-- | The name of the repository into which package versions are copied.+copyPackageVersions_destinationRepository :: Lens.Lens' CopyPackageVersions Prelude.Text+copyPackageVersions_destinationRepository = Lens.lens (\CopyPackageVersions' {destinationRepository} -> destinationRepository) (\s@CopyPackageVersions' {} a -> s {destinationRepository = a} :: CopyPackageVersions)++-- | The format of the package versions to be copied.+copyPackageVersions_format :: Lens.Lens' CopyPackageVersions PackageFormat+copyPackageVersions_format = Lens.lens (\CopyPackageVersions' {format} -> format) (\s@CopyPackageVersions' {} a -> s {format = a} :: CopyPackageVersions)++-- | The name of the package that contains the versions to be copied.+copyPackageVersions_package :: Lens.Lens' CopyPackageVersions Prelude.Text+copyPackageVersions_package = Lens.lens (\CopyPackageVersions' {package} -> package) (\s@CopyPackageVersions' {} a -> s {package = a} :: CopyPackageVersions)++instance Core.AWSRequest CopyPackageVersions where+ type+ AWSResponse CopyPackageVersions =+ CopyPackageVersionsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CopyPackageVersionsResponse'+ Prelude.<$> (x Data..?> "failedVersions" Core..!@ Prelude.mempty)+ Prelude.<*> ( x+ Data..?> "successfulVersions"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CopyPackageVersions where+ hashWithSalt _salt CopyPackageVersions' {..} =+ _salt+ `Prelude.hashWithSalt` allowOverwrite+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` includeFromUpstream+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` versionRevisions+ `Prelude.hashWithSalt` versions+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` sourceRepository+ `Prelude.hashWithSalt` destinationRepository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package++instance Prelude.NFData CopyPackageVersions where+ rnf CopyPackageVersions' {..} =+ Prelude.rnf allowOverwrite+ `Prelude.seq` Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf includeFromUpstream+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf versionRevisions+ `Prelude.seq` Prelude.rnf versions+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf sourceRepository+ `Prelude.seq` Prelude.rnf destinationRepository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package++instance Data.ToHeaders CopyPackageVersions where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CopyPackageVersions where+ toJSON CopyPackageVersions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("allowOverwrite" Data..=)+ Prelude.<$> allowOverwrite,+ ("includeFromUpstream" Data..=)+ Prelude.<$> includeFromUpstream,+ ("versionRevisions" Data..=)+ Prelude.<$> versionRevisions,+ ("versions" Data..=) Prelude.<$> versions+ ]+ )++instance Data.ToPath CopyPackageVersions where+ toPath = Prelude.const "/v1/package/versions/copy"++instance Data.ToQuery CopyPackageVersions where+ toQuery CopyPackageVersions' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "namespace" Data.=: namespace,+ "domain" Data.=: domain,+ "source-repository" Data.=: sourceRepository,+ "destination-repository"+ Data.=: destinationRepository,+ "format" Data.=: format,+ "package" Data.=: package+ ]++-- | /See:/ 'newCopyPackageVersionsResponse' smart constructor.+data CopyPackageVersionsResponse = CopyPackageVersionsResponse'+ { -- | A map of package versions that failed to copy and their error codes. The+ -- possible error codes are in the @PackageVersionError@ data type. They+ -- are:+ --+ -- - @ALREADY_EXISTS@+ --+ -- - @MISMATCHED_REVISION@+ --+ -- - @MISMATCHED_STATUS@+ --+ -- - @NOT_ALLOWED@+ --+ -- - @NOT_FOUND@+ --+ -- - @SKIPPED@+ failedVersions :: Prelude.Maybe (Prelude.HashMap Prelude.Text PackageVersionError),+ -- | A list of the package versions that were successfully copied to your+ -- repository.+ successfulVersions :: Prelude.Maybe (Prelude.HashMap Prelude.Text SuccessfulPackageVersionInfo),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CopyPackageVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'failedVersions', 'copyPackageVersionsResponse_failedVersions' - A map of package versions that failed to copy and their error codes. The+-- possible error codes are in the @PackageVersionError@ data type. They+-- are:+--+-- - @ALREADY_EXISTS@+--+-- - @MISMATCHED_REVISION@+--+-- - @MISMATCHED_STATUS@+--+-- - @NOT_ALLOWED@+--+-- - @NOT_FOUND@+--+-- - @SKIPPED@+--+-- 'successfulVersions', 'copyPackageVersionsResponse_successfulVersions' - A list of the package versions that were successfully copied to your+-- repository.+--+-- 'httpStatus', 'copyPackageVersionsResponse_httpStatus' - The response's http status code.+newCopyPackageVersionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CopyPackageVersionsResponse+newCopyPackageVersionsResponse pHttpStatus_ =+ CopyPackageVersionsResponse'+ { failedVersions =+ Prelude.Nothing,+ successfulVersions = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A map of package versions that failed to copy and their error codes. The+-- possible error codes are in the @PackageVersionError@ data type. They+-- are:+--+-- - @ALREADY_EXISTS@+--+-- - @MISMATCHED_REVISION@+--+-- - @MISMATCHED_STATUS@+--+-- - @NOT_ALLOWED@+--+-- - @NOT_FOUND@+--+-- - @SKIPPED@+copyPackageVersionsResponse_failedVersions :: Lens.Lens' CopyPackageVersionsResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text PackageVersionError))+copyPackageVersionsResponse_failedVersions = Lens.lens (\CopyPackageVersionsResponse' {failedVersions} -> failedVersions) (\s@CopyPackageVersionsResponse' {} a -> s {failedVersions = a} :: CopyPackageVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of the package versions that were successfully copied to your+-- repository.+copyPackageVersionsResponse_successfulVersions :: Lens.Lens' CopyPackageVersionsResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text SuccessfulPackageVersionInfo))+copyPackageVersionsResponse_successfulVersions = Lens.lens (\CopyPackageVersionsResponse' {successfulVersions} -> successfulVersions) (\s@CopyPackageVersionsResponse' {} a -> s {successfulVersions = a} :: CopyPackageVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+copyPackageVersionsResponse_httpStatus :: Lens.Lens' CopyPackageVersionsResponse Prelude.Int+copyPackageVersionsResponse_httpStatus = Lens.lens (\CopyPackageVersionsResponse' {httpStatus} -> httpStatus) (\s@CopyPackageVersionsResponse' {} a -> s {httpStatus = a} :: CopyPackageVersionsResponse)++instance Prelude.NFData CopyPackageVersionsResponse where+ rnf CopyPackageVersionsResponse' {..} =+ Prelude.rnf failedVersions+ `Prelude.seq` Prelude.rnf successfulVersions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/CreateDomain.hs view
@@ -0,0 +1,258 @@+{-# 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.CodeArtifact.CreateDomain+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a domain. CodeArtifact /domains/ make it easier to manage+-- multiple repositories across an organization. You can use a domain to+-- apply permissions across many repositories owned by different Amazon Web+-- Services accounts. An asset is stored only once in a domain, even if+-- it\'s in multiple repositories.+--+-- Although you can have multiple domains, we recommend a single production+-- domain that contains all published artifacts so that your development+-- teams can find and share packages. You can use a second pre-production+-- domain to test changes to the production domain configuration.+module Amazonka.CodeArtifact.CreateDomain+ ( -- * Creating a Request+ CreateDomain (..),+ newCreateDomain,++ -- * Request Lenses+ createDomain_encryptionKey,+ createDomain_tags,+ createDomain_domain,++ -- * Destructuring the Response+ CreateDomainResponse (..),+ newCreateDomainResponse,++ -- * Response Lenses+ createDomainResponse_domain,+ createDomainResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newCreateDomain' smart constructor.+data CreateDomain = CreateDomain'+ { -- | The encryption key for the domain. This is used to encrypt content+ -- stored in a domain. An encryption key can be a key ID, a key Amazon+ -- Resource Name (ARN), a key alias, or a key alias ARN. To specify an+ -- @encryptionKey@, your IAM role must have @kms:DescribeKey@ and+ -- @kms:CreateGrant@ permissions on the encryption key that is used. For+ -- more information, see+ -- <https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestSyntax DescribeKey>+ -- in the /Key Management Service API Reference/ and+ -- <https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html Key Management Service API Permissions Reference>+ -- in the /Key Management Service Developer Guide/.+ --+ -- CodeArtifact supports only symmetric CMKs. Do not associate an+ -- asymmetric CMK with your domain. For more information, see+ -- <https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html Using symmetric and asymmetric keys>+ -- in the /Key Management Service Developer Guide/.+ encryptionKey :: Prelude.Maybe Prelude.Text,+ -- | One or more tag key-value pairs for the domain.+ tags :: Prelude.Maybe [Tag],+ -- | The name of the domain to create. All domain names in an Amazon Web+ -- Services Region that are in the same Amazon Web Services account must be+ -- unique. The domain name is used as the prefix in DNS hostnames. Do not+ -- use sensitive information in a domain name because it is publicly+ -- discoverable.+ domain :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDomain' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'encryptionKey', 'createDomain_encryptionKey' - The encryption key for the domain. This is used to encrypt content+-- stored in a domain. An encryption key can be a key ID, a key Amazon+-- Resource Name (ARN), a key alias, or a key alias ARN. To specify an+-- @encryptionKey@, your IAM role must have @kms:DescribeKey@ and+-- @kms:CreateGrant@ permissions on the encryption key that is used. For+-- more information, see+-- <https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestSyntax DescribeKey>+-- in the /Key Management Service API Reference/ and+-- <https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html Key Management Service API Permissions Reference>+-- in the /Key Management Service Developer Guide/.+--+-- CodeArtifact supports only symmetric CMKs. Do not associate an+-- asymmetric CMK with your domain. For more information, see+-- <https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html Using symmetric and asymmetric keys>+-- in the /Key Management Service Developer Guide/.+--+-- 'tags', 'createDomain_tags' - One or more tag key-value pairs for the domain.+--+-- 'domain', 'createDomain_domain' - The name of the domain to create. All domain names in an Amazon Web+-- Services Region that are in the same Amazon Web Services account must be+-- unique. The domain name is used as the prefix in DNS hostnames. Do not+-- use sensitive information in a domain name because it is publicly+-- discoverable.+newCreateDomain ::+ -- | 'domain'+ Prelude.Text ->+ CreateDomain+newCreateDomain pDomain_ =+ CreateDomain'+ { encryptionKey = Prelude.Nothing,+ tags = Prelude.Nothing,+ domain = pDomain_+ }++-- | The encryption key for the domain. This is used to encrypt content+-- stored in a domain. An encryption key can be a key ID, a key Amazon+-- Resource Name (ARN), a key alias, or a key alias ARN. To specify an+-- @encryptionKey@, your IAM role must have @kms:DescribeKey@ and+-- @kms:CreateGrant@ permissions on the encryption key that is used. For+-- more information, see+-- <https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestSyntax DescribeKey>+-- in the /Key Management Service API Reference/ and+-- <https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html Key Management Service API Permissions Reference>+-- in the /Key Management Service Developer Guide/.+--+-- CodeArtifact supports only symmetric CMKs. Do not associate an+-- asymmetric CMK with your domain. For more information, see+-- <https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html Using symmetric and asymmetric keys>+-- in the /Key Management Service Developer Guide/.+createDomain_encryptionKey :: Lens.Lens' CreateDomain (Prelude.Maybe Prelude.Text)+createDomain_encryptionKey = Lens.lens (\CreateDomain' {encryptionKey} -> encryptionKey) (\s@CreateDomain' {} a -> s {encryptionKey = a} :: CreateDomain)++-- | One or more tag key-value pairs for the domain.+createDomain_tags :: Lens.Lens' CreateDomain (Prelude.Maybe [Tag])+createDomain_tags = Lens.lens (\CreateDomain' {tags} -> tags) (\s@CreateDomain' {} a -> s {tags = a} :: CreateDomain) Prelude.. Lens.mapping Lens.coerced++-- | The name of the domain to create. All domain names in an Amazon Web+-- Services Region that are in the same Amazon Web Services account must be+-- unique. The domain name is used as the prefix in DNS hostnames. Do not+-- use sensitive information in a domain name because it is publicly+-- discoverable.+createDomain_domain :: Lens.Lens' CreateDomain Prelude.Text+createDomain_domain = Lens.lens (\CreateDomain' {domain} -> domain) (\s@CreateDomain' {} a -> s {domain = a} :: CreateDomain)++instance Core.AWSRequest CreateDomain where+ type AWSResponse CreateDomain = CreateDomainResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateDomainResponse'+ Prelude.<$> (x Data..?> "domain")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateDomain where+ hashWithSalt _salt CreateDomain' {..} =+ _salt+ `Prelude.hashWithSalt` encryptionKey+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` domain++instance Prelude.NFData CreateDomain where+ rnf CreateDomain' {..} =+ Prelude.rnf encryptionKey+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf domain++instance Data.ToHeaders CreateDomain where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateDomain where+ toJSON CreateDomain' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("encryptionKey" Data..=) Prelude.<$> encryptionKey,+ ("tags" Data..=) Prelude.<$> tags+ ]+ )++instance Data.ToPath CreateDomain where+ toPath = Prelude.const "/v1/domain"++instance Data.ToQuery CreateDomain where+ toQuery CreateDomain' {..} =+ Prelude.mconcat ["domain" Data.=: domain]++-- | /See:/ 'newCreateDomainResponse' smart constructor.+data CreateDomainResponse = CreateDomainResponse'+ { -- | Contains information about the created domain after processing the+ -- request.+ domain :: Prelude.Maybe DomainDescription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDomainResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domain', 'createDomainResponse_domain' - Contains information about the created domain after processing the+-- request.+--+-- 'httpStatus', 'createDomainResponse_httpStatus' - The response's http status code.+newCreateDomainResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateDomainResponse+newCreateDomainResponse pHttpStatus_ =+ CreateDomainResponse'+ { domain = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Contains information about the created domain after processing the+-- request.+createDomainResponse_domain :: Lens.Lens' CreateDomainResponse (Prelude.Maybe DomainDescription)+createDomainResponse_domain = Lens.lens (\CreateDomainResponse' {domain} -> domain) (\s@CreateDomainResponse' {} a -> s {domain = a} :: CreateDomainResponse)++-- | The response's http status code.+createDomainResponse_httpStatus :: Lens.Lens' CreateDomainResponse Prelude.Int+createDomainResponse_httpStatus = Lens.lens (\CreateDomainResponse' {httpStatus} -> httpStatus) (\s@CreateDomainResponse' {} a -> s {httpStatus = a} :: CreateDomainResponse)++instance Prelude.NFData CreateDomainResponse where+ rnf CreateDomainResponse' {..} =+ Prelude.rnf domain+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/CreateRepository.hs view
@@ -0,0 +1,253 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.CreateRepository+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a repository.+module Amazonka.CodeArtifact.CreateRepository+ ( -- * Creating a Request+ CreateRepository (..),+ newCreateRepository,++ -- * Request Lenses+ createRepository_description,+ createRepository_domainOwner,+ createRepository_tags,+ createRepository_upstreams,+ createRepository_domain,+ createRepository_repository,++ -- * Destructuring the Response+ CreateRepositoryResponse (..),+ newCreateRepositoryResponse,++ -- * Response Lenses+ createRepositoryResponse_repository,+ createRepositoryResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newCreateRepository' smart constructor.+data CreateRepository = CreateRepository'+ { -- | A description of the created repository.+ description :: Prelude.Maybe Prelude.Text,+ -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | One or more tag key-value pairs for the repository.+ tags :: Prelude.Maybe [Tag],+ -- | A list of upstream repositories to associate with the repository. The+ -- order of the upstream repositories in the list determines their priority+ -- order when CodeArtifact looks for a requested package version. For more+ -- information, see+ -- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+ upstreams :: Prelude.Maybe [UpstreamRepository],+ -- | The name of the domain that contains the created repository.+ domain :: Prelude.Text,+ -- | The name of the repository to create.+ repository :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateRepository' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createRepository_description' - A description of the created repository.+--+-- 'domainOwner', 'createRepository_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'tags', 'createRepository_tags' - One or more tag key-value pairs for the repository.+--+-- 'upstreams', 'createRepository_upstreams' - A list of upstream repositories to associate with the repository. The+-- order of the upstream repositories in the list determines their priority+-- order when CodeArtifact looks for a requested package version. For more+-- information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+--+-- 'domain', 'createRepository_domain' - The name of the domain that contains the created repository.+--+-- 'repository', 'createRepository_repository' - The name of the repository to create.+newCreateRepository ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ CreateRepository+newCreateRepository pDomain_ pRepository_ =+ CreateRepository'+ { description = Prelude.Nothing,+ domainOwner = Prelude.Nothing,+ tags = Prelude.Nothing,+ upstreams = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_+ }++-- | A description of the created repository.+createRepository_description :: Lens.Lens' CreateRepository (Prelude.Maybe Prelude.Text)+createRepository_description = Lens.lens (\CreateRepository' {description} -> description) (\s@CreateRepository' {} a -> s {description = a} :: CreateRepository)++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+createRepository_domainOwner :: Lens.Lens' CreateRepository (Prelude.Maybe Prelude.Text)+createRepository_domainOwner = Lens.lens (\CreateRepository' {domainOwner} -> domainOwner) (\s@CreateRepository' {} a -> s {domainOwner = a} :: CreateRepository)++-- | One or more tag key-value pairs for the repository.+createRepository_tags :: Lens.Lens' CreateRepository (Prelude.Maybe [Tag])+createRepository_tags = Lens.lens (\CreateRepository' {tags} -> tags) (\s@CreateRepository' {} a -> s {tags = a} :: CreateRepository) Prelude.. Lens.mapping Lens.coerced++-- | A list of upstream repositories to associate with the repository. The+-- order of the upstream repositories in the list determines their priority+-- order when CodeArtifact looks for a requested package version. For more+-- information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+createRepository_upstreams :: Lens.Lens' CreateRepository (Prelude.Maybe [UpstreamRepository])+createRepository_upstreams = Lens.lens (\CreateRepository' {upstreams} -> upstreams) (\s@CreateRepository' {} a -> s {upstreams = a} :: CreateRepository) Prelude.. Lens.mapping Lens.coerced++-- | The name of the domain that contains the created repository.+createRepository_domain :: Lens.Lens' CreateRepository Prelude.Text+createRepository_domain = Lens.lens (\CreateRepository' {domain} -> domain) (\s@CreateRepository' {} a -> s {domain = a} :: CreateRepository)++-- | The name of the repository to create.+createRepository_repository :: Lens.Lens' CreateRepository Prelude.Text+createRepository_repository = Lens.lens (\CreateRepository' {repository} -> repository) (\s@CreateRepository' {} a -> s {repository = a} :: CreateRepository)++instance Core.AWSRequest CreateRepository where+ type+ AWSResponse CreateRepository =+ CreateRepositoryResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateRepositoryResponse'+ Prelude.<$> (x Data..?> "repository")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateRepository where+ hashWithSalt _salt CreateRepository' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` upstreams+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository++instance Prelude.NFData CreateRepository where+ rnf CreateRepository' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf upstreams+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository++instance Data.ToHeaders CreateRepository where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateRepository where+ toJSON CreateRepository' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("tags" Data..=) Prelude.<$> tags,+ ("upstreams" Data..=) Prelude.<$> upstreams+ ]+ )++instance Data.ToPath CreateRepository where+ toPath = Prelude.const "/v1/repository"++instance Data.ToQuery CreateRepository where+ toQuery CreateRepository' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain,+ "repository" Data.=: repository+ ]++-- | /See:/ 'newCreateRepositoryResponse' smart constructor.+data CreateRepositoryResponse = CreateRepositoryResponse'+ { -- | Information about the created repository after processing the request.+ repository :: Prelude.Maybe RepositoryDescription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateRepositoryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'repository', 'createRepositoryResponse_repository' - Information about the created repository after processing the request.+--+-- 'httpStatus', 'createRepositoryResponse_httpStatus' - The response's http status code.+newCreateRepositoryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateRepositoryResponse+newCreateRepositoryResponse pHttpStatus_ =+ CreateRepositoryResponse'+ { repository =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the created repository after processing the request.+createRepositoryResponse_repository :: Lens.Lens' CreateRepositoryResponse (Prelude.Maybe RepositoryDescription)+createRepositoryResponse_repository = Lens.lens (\CreateRepositoryResponse' {repository} -> repository) (\s@CreateRepositoryResponse' {} a -> s {repository = a} :: CreateRepositoryResponse)++-- | The response's http status code.+createRepositoryResponse_httpStatus :: Lens.Lens' CreateRepositoryResponse Prelude.Int+createRepositoryResponse_httpStatus = Lens.lens (\CreateRepositoryResponse' {httpStatus} -> httpStatus) (\s@CreateRepositoryResponse' {} a -> s {httpStatus = a} :: CreateRepositoryResponse)++instance Prelude.NFData CreateRepositoryResponse where+ rnf CreateRepositoryResponse' {..} =+ Prelude.rnf repository+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/DeleteDomain.hs view
@@ -0,0 +1,182 @@+{-# 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.CodeArtifact.DeleteDomain+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a domain. You cannot delete a domain that contains repositories.+-- If you want to delete a domain with repositories, first delete its+-- repositories.+module Amazonka.CodeArtifact.DeleteDomain+ ( -- * Creating a Request+ DeleteDomain (..),+ newDeleteDomain,++ -- * Request Lenses+ deleteDomain_domainOwner,+ deleteDomain_domain,++ -- * Destructuring the Response+ DeleteDomainResponse (..),+ newDeleteDomainResponse,++ -- * Response Lenses+ deleteDomainResponse_domain,+ deleteDomainResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDeleteDomain' smart constructor.+data DeleteDomain = DeleteDomain'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain to delete.+ domain :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDomain' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'deleteDomain_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'domain', 'deleteDomain_domain' - The name of the domain to delete.+newDeleteDomain ::+ -- | 'domain'+ Prelude.Text ->+ DeleteDomain+newDeleteDomain pDomain_ =+ DeleteDomain'+ { domainOwner = Prelude.Nothing,+ domain = pDomain_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+deleteDomain_domainOwner :: Lens.Lens' DeleteDomain (Prelude.Maybe Prelude.Text)+deleteDomain_domainOwner = Lens.lens (\DeleteDomain' {domainOwner} -> domainOwner) (\s@DeleteDomain' {} a -> s {domainOwner = a} :: DeleteDomain)++-- | The name of the domain to delete.+deleteDomain_domain :: Lens.Lens' DeleteDomain Prelude.Text+deleteDomain_domain = Lens.lens (\DeleteDomain' {domain} -> domain) (\s@DeleteDomain' {} a -> s {domain = a} :: DeleteDomain)++instance Core.AWSRequest DeleteDomain where+ type AWSResponse DeleteDomain = DeleteDomainResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteDomainResponse'+ Prelude.<$> (x Data..?> "domain")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteDomain where+ hashWithSalt _salt DeleteDomain' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` domain++instance Prelude.NFData DeleteDomain where+ rnf DeleteDomain' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf domain++instance Data.ToHeaders DeleteDomain where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteDomain where+ toPath = Prelude.const "/v1/domain"++instance Data.ToQuery DeleteDomain where+ toQuery DeleteDomain' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain+ ]++-- | /See:/ 'newDeleteDomainResponse' smart constructor.+data DeleteDomainResponse = DeleteDomainResponse'+ { -- | Contains information about the deleted domain after processing the+ -- request.+ domain :: Prelude.Maybe DomainDescription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDomainResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domain', 'deleteDomainResponse_domain' - Contains information about the deleted domain after processing the+-- request.+--+-- 'httpStatus', 'deleteDomainResponse_httpStatus' - The response's http status code.+newDeleteDomainResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteDomainResponse+newDeleteDomainResponse pHttpStatus_ =+ DeleteDomainResponse'+ { domain = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Contains information about the deleted domain after processing the+-- request.+deleteDomainResponse_domain :: Lens.Lens' DeleteDomainResponse (Prelude.Maybe DomainDescription)+deleteDomainResponse_domain = Lens.lens (\DeleteDomainResponse' {domain} -> domain) (\s@DeleteDomainResponse' {} a -> s {domain = a} :: DeleteDomainResponse)++-- | The response's http status code.+deleteDomainResponse_httpStatus :: Lens.Lens' DeleteDomainResponse Prelude.Int+deleteDomainResponse_httpStatus = Lens.lens (\DeleteDomainResponse' {httpStatus} -> httpStatus) (\s@DeleteDomainResponse' {} a -> s {httpStatus = a} :: DeleteDomainResponse)++instance Prelude.NFData DeleteDomainResponse where+ rnf DeleteDomainResponse' {..} =+ Prelude.rnf domain+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/DeleteDomainPermissionsPolicy.hs view
@@ -0,0 +1,216 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.DeleteDomainPermissionsPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the resource policy set on a domain.+module Amazonka.CodeArtifact.DeleteDomainPermissionsPolicy+ ( -- * Creating a Request+ DeleteDomainPermissionsPolicy (..),+ newDeleteDomainPermissionsPolicy,++ -- * Request Lenses+ deleteDomainPermissionsPolicy_domainOwner,+ deleteDomainPermissionsPolicy_policyRevision,+ deleteDomainPermissionsPolicy_domain,++ -- * Destructuring the Response+ DeleteDomainPermissionsPolicyResponse (..),+ newDeleteDomainPermissionsPolicyResponse,++ -- * Response Lenses+ deleteDomainPermissionsPolicyResponse_policy,+ deleteDomainPermissionsPolicyResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDeleteDomainPermissionsPolicy' smart constructor.+data DeleteDomainPermissionsPolicy = DeleteDomainPermissionsPolicy'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The current revision of the resource policy to be deleted. This revision+ -- is used for optimistic locking, which prevents others from overwriting+ -- your changes to the domain\'s resource policy.+ policyRevision :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain associated with the resource policy to be+ -- deleted.+ domain :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDomainPermissionsPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'deleteDomainPermissionsPolicy_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'policyRevision', 'deleteDomainPermissionsPolicy_policyRevision' - The current revision of the resource policy to be deleted. This revision+-- is used for optimistic locking, which prevents others from overwriting+-- your changes to the domain\'s resource policy.+--+-- 'domain', 'deleteDomainPermissionsPolicy_domain' - The name of the domain associated with the resource policy to be+-- deleted.+newDeleteDomainPermissionsPolicy ::+ -- | 'domain'+ Prelude.Text ->+ DeleteDomainPermissionsPolicy+newDeleteDomainPermissionsPolicy pDomain_ =+ DeleteDomainPermissionsPolicy'+ { domainOwner =+ Prelude.Nothing,+ policyRevision = Prelude.Nothing,+ domain = pDomain_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+deleteDomainPermissionsPolicy_domainOwner :: Lens.Lens' DeleteDomainPermissionsPolicy (Prelude.Maybe Prelude.Text)+deleteDomainPermissionsPolicy_domainOwner = Lens.lens (\DeleteDomainPermissionsPolicy' {domainOwner} -> domainOwner) (\s@DeleteDomainPermissionsPolicy' {} a -> s {domainOwner = a} :: DeleteDomainPermissionsPolicy)++-- | The current revision of the resource policy to be deleted. This revision+-- is used for optimistic locking, which prevents others from overwriting+-- your changes to the domain\'s resource policy.+deleteDomainPermissionsPolicy_policyRevision :: Lens.Lens' DeleteDomainPermissionsPolicy (Prelude.Maybe Prelude.Text)+deleteDomainPermissionsPolicy_policyRevision = Lens.lens (\DeleteDomainPermissionsPolicy' {policyRevision} -> policyRevision) (\s@DeleteDomainPermissionsPolicy' {} a -> s {policyRevision = a} :: DeleteDomainPermissionsPolicy)++-- | The name of the domain associated with the resource policy to be+-- deleted.+deleteDomainPermissionsPolicy_domain :: Lens.Lens' DeleteDomainPermissionsPolicy Prelude.Text+deleteDomainPermissionsPolicy_domain = Lens.lens (\DeleteDomainPermissionsPolicy' {domain} -> domain) (\s@DeleteDomainPermissionsPolicy' {} a -> s {domain = a} :: DeleteDomainPermissionsPolicy)++instance+ Core.AWSRequest+ DeleteDomainPermissionsPolicy+ where+ type+ AWSResponse DeleteDomainPermissionsPolicy =+ DeleteDomainPermissionsPolicyResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteDomainPermissionsPolicyResponse'+ Prelude.<$> (x Data..?> "policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DeleteDomainPermissionsPolicy+ where+ hashWithSalt _salt DeleteDomainPermissionsPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` policyRevision+ `Prelude.hashWithSalt` domain++instance Prelude.NFData DeleteDomainPermissionsPolicy where+ rnf DeleteDomainPermissionsPolicy' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf policyRevision+ `Prelude.seq` Prelude.rnf domain++instance Data.ToHeaders DeleteDomainPermissionsPolicy where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteDomainPermissionsPolicy where+ toPath =+ Prelude.const "/v1/domain/permissions/policy"++instance Data.ToQuery DeleteDomainPermissionsPolicy where+ toQuery DeleteDomainPermissionsPolicy' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "policy-revision" Data.=: policyRevision,+ "domain" Data.=: domain+ ]++-- | /See:/ 'newDeleteDomainPermissionsPolicyResponse' smart constructor.+data DeleteDomainPermissionsPolicyResponse = DeleteDomainPermissionsPolicyResponse'+ { -- | Information about the deleted resource policy after processing the+ -- request.+ policy :: Prelude.Maybe ResourcePolicy,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDomainPermissionsPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'deleteDomainPermissionsPolicyResponse_policy' - Information about the deleted resource policy after processing the+-- request.+--+-- 'httpStatus', 'deleteDomainPermissionsPolicyResponse_httpStatus' - The response's http status code.+newDeleteDomainPermissionsPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteDomainPermissionsPolicyResponse+newDeleteDomainPermissionsPolicyResponse pHttpStatus_ =+ DeleteDomainPermissionsPolicyResponse'+ { policy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the deleted resource policy after processing the+-- request.+deleteDomainPermissionsPolicyResponse_policy :: Lens.Lens' DeleteDomainPermissionsPolicyResponse (Prelude.Maybe ResourcePolicy)+deleteDomainPermissionsPolicyResponse_policy = Lens.lens (\DeleteDomainPermissionsPolicyResponse' {policy} -> policy) (\s@DeleteDomainPermissionsPolicyResponse' {} a -> s {policy = a} :: DeleteDomainPermissionsPolicyResponse)++-- | The response's http status code.+deleteDomainPermissionsPolicyResponse_httpStatus :: Lens.Lens' DeleteDomainPermissionsPolicyResponse Prelude.Int+deleteDomainPermissionsPolicyResponse_httpStatus = Lens.lens (\DeleteDomainPermissionsPolicyResponse' {httpStatus} -> httpStatus) (\s@DeleteDomainPermissionsPolicyResponse' {} a -> s {httpStatus = a} :: DeleteDomainPermissionsPolicyResponse)++instance+ Prelude.NFData+ DeleteDomainPermissionsPolicyResponse+ where+ rnf DeleteDomainPermissionsPolicyResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/DeletePackageVersions.hs view
@@ -0,0 +1,371 @@+{-# 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.CodeArtifact.DeletePackageVersions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes one or more versions of a package. A deleted package version+-- cannot be restored in your repository. If you want to remove a package+-- version from your repository and be able to restore it later, set its+-- status to @Archived@. Archived packages cannot be downloaded from a+-- repository and don\'t show up with list package APIs (for example,+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_ListPackageVersions.html ListackageVersions>),+-- but you can restore them using+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_UpdatePackageVersionsStatus.html UpdatePackageVersionsStatus>.+module Amazonka.CodeArtifact.DeletePackageVersions+ ( -- * Creating a Request+ DeletePackageVersions (..),+ newDeletePackageVersions,++ -- * Request Lenses+ deletePackageVersions_domainOwner,+ deletePackageVersions_expectedStatus,+ deletePackageVersions_namespace,+ deletePackageVersions_domain,+ deletePackageVersions_repository,+ deletePackageVersions_format,+ deletePackageVersions_package,+ deletePackageVersions_versions,++ -- * Destructuring the Response+ DeletePackageVersionsResponse (..),+ newDeletePackageVersionsResponse,++ -- * Response Lenses+ deletePackageVersionsResponse_failedVersions,+ deletePackageVersionsResponse_successfulVersions,+ deletePackageVersionsResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDeletePackageVersions' smart constructor.+data DeletePackageVersions = DeletePackageVersions'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The expected status of the package version to delete.+ expectedStatus :: Prelude.Maybe PackageVersionStatus,+ -- | The namespace of the package versions to be deleted. The package version+ -- component that specifies its namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@. The+ -- namespace is required when deleting Maven package versions.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the package to delete.+ domain :: Prelude.Text,+ -- | The name of the repository that contains the package versions to delete.+ repository :: Prelude.Text,+ -- | The format of the package versions to delete.+ format :: PackageFormat,+ -- | The name of the package with the versions to delete.+ package :: Prelude.Text,+ -- | An array of strings that specify the versions of the package to delete.+ versions :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePackageVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'deletePackageVersions_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'expectedStatus', 'deletePackageVersions_expectedStatus' - The expected status of the package version to delete.+--+-- 'namespace', 'deletePackageVersions_namespace' - The namespace of the package versions to be deleted. The package version+-- component that specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@. The+-- namespace is required when deleting Maven package versions.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'domain', 'deletePackageVersions_domain' - The name of the domain that contains the package to delete.+--+-- 'repository', 'deletePackageVersions_repository' - The name of the repository that contains the package versions to delete.+--+-- 'format', 'deletePackageVersions_format' - The format of the package versions to delete.+--+-- 'package', 'deletePackageVersions_package' - The name of the package with the versions to delete.+--+-- 'versions', 'deletePackageVersions_versions' - An array of strings that specify the versions of the package to delete.+newDeletePackageVersions ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ DeletePackageVersions+newDeletePackageVersions+ pDomain_+ pRepository_+ pFormat_+ pPackage_ =+ DeletePackageVersions'+ { domainOwner =+ Prelude.Nothing,+ expectedStatus = Prelude.Nothing,+ namespace = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_,+ versions = Prelude.mempty+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+deletePackageVersions_domainOwner :: Lens.Lens' DeletePackageVersions (Prelude.Maybe Prelude.Text)+deletePackageVersions_domainOwner = Lens.lens (\DeletePackageVersions' {domainOwner} -> domainOwner) (\s@DeletePackageVersions' {} a -> s {domainOwner = a} :: DeletePackageVersions)++-- | The expected status of the package version to delete.+deletePackageVersions_expectedStatus :: Lens.Lens' DeletePackageVersions (Prelude.Maybe PackageVersionStatus)+deletePackageVersions_expectedStatus = Lens.lens (\DeletePackageVersions' {expectedStatus} -> expectedStatus) (\s@DeletePackageVersions' {} a -> s {expectedStatus = a} :: DeletePackageVersions)++-- | The namespace of the package versions to be deleted. The package version+-- component that specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@. The+-- namespace is required when deleting Maven package versions.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+deletePackageVersions_namespace :: Lens.Lens' DeletePackageVersions (Prelude.Maybe Prelude.Text)+deletePackageVersions_namespace = Lens.lens (\DeletePackageVersions' {namespace} -> namespace) (\s@DeletePackageVersions' {} a -> s {namespace = a} :: DeletePackageVersions)++-- | The name of the domain that contains the package to delete.+deletePackageVersions_domain :: Lens.Lens' DeletePackageVersions Prelude.Text+deletePackageVersions_domain = Lens.lens (\DeletePackageVersions' {domain} -> domain) (\s@DeletePackageVersions' {} a -> s {domain = a} :: DeletePackageVersions)++-- | The name of the repository that contains the package versions to delete.+deletePackageVersions_repository :: Lens.Lens' DeletePackageVersions Prelude.Text+deletePackageVersions_repository = Lens.lens (\DeletePackageVersions' {repository} -> repository) (\s@DeletePackageVersions' {} a -> s {repository = a} :: DeletePackageVersions)++-- | The format of the package versions to delete.+deletePackageVersions_format :: Lens.Lens' DeletePackageVersions PackageFormat+deletePackageVersions_format = Lens.lens (\DeletePackageVersions' {format} -> format) (\s@DeletePackageVersions' {} a -> s {format = a} :: DeletePackageVersions)++-- | The name of the package with the versions to delete.+deletePackageVersions_package :: Lens.Lens' DeletePackageVersions Prelude.Text+deletePackageVersions_package = Lens.lens (\DeletePackageVersions' {package} -> package) (\s@DeletePackageVersions' {} a -> s {package = a} :: DeletePackageVersions)++-- | An array of strings that specify the versions of the package to delete.+deletePackageVersions_versions :: Lens.Lens' DeletePackageVersions [Prelude.Text]+deletePackageVersions_versions = Lens.lens (\DeletePackageVersions' {versions} -> versions) (\s@DeletePackageVersions' {} a -> s {versions = a} :: DeletePackageVersions) Prelude.. Lens.coerced++instance Core.AWSRequest DeletePackageVersions where+ type+ AWSResponse DeletePackageVersions =+ DeletePackageVersionsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeletePackageVersionsResponse'+ Prelude.<$> (x Data..?> "failedVersions" Core..!@ Prelude.mempty)+ Prelude.<*> ( x+ Data..?> "successfulVersions"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeletePackageVersions where+ hashWithSalt _salt DeletePackageVersions' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` expectedStatus+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package+ `Prelude.hashWithSalt` versions++instance Prelude.NFData DeletePackageVersions where+ rnf DeletePackageVersions' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf expectedStatus+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf versions++instance Data.ToHeaders DeletePackageVersions where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeletePackageVersions where+ toJSON DeletePackageVersions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("expectedStatus" Data..=)+ Prelude.<$> expectedStatus,+ Prelude.Just ("versions" Data..= versions)+ ]+ )++instance Data.ToPath DeletePackageVersions where+ toPath = Prelude.const "/v1/package/versions/delete"++instance Data.ToQuery DeletePackageVersions where+ toQuery DeletePackageVersions' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "namespace" Data.=: namespace,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package+ ]++-- | /See:/ 'newDeletePackageVersionsResponse' smart constructor.+data DeletePackageVersionsResponse = DeletePackageVersionsResponse'+ { -- | A @PackageVersionError@ object that contains a map of errors codes for+ -- the deleted package that failed. The possible error codes are:+ --+ -- - @ALREADY_EXISTS@+ --+ -- - @MISMATCHED_REVISION@+ --+ -- - @MISMATCHED_STATUS@+ --+ -- - @NOT_ALLOWED@+ --+ -- - @NOT_FOUND@+ --+ -- - @SKIPPED@+ failedVersions :: Prelude.Maybe (Prelude.HashMap Prelude.Text PackageVersionError),+ -- | A list of the package versions that were successfully deleted. The+ -- status of every successful version will be @Deleted@.+ successfulVersions :: Prelude.Maybe (Prelude.HashMap Prelude.Text SuccessfulPackageVersionInfo),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePackageVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'failedVersions', 'deletePackageVersionsResponse_failedVersions' - A @PackageVersionError@ object that contains a map of errors codes for+-- the deleted package that failed. The possible error codes are:+--+-- - @ALREADY_EXISTS@+--+-- - @MISMATCHED_REVISION@+--+-- - @MISMATCHED_STATUS@+--+-- - @NOT_ALLOWED@+--+-- - @NOT_FOUND@+--+-- - @SKIPPED@+--+-- 'successfulVersions', 'deletePackageVersionsResponse_successfulVersions' - A list of the package versions that were successfully deleted. The+-- status of every successful version will be @Deleted@.+--+-- 'httpStatus', 'deletePackageVersionsResponse_httpStatus' - The response's http status code.+newDeletePackageVersionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeletePackageVersionsResponse+newDeletePackageVersionsResponse pHttpStatus_ =+ DeletePackageVersionsResponse'+ { failedVersions =+ Prelude.Nothing,+ successfulVersions = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A @PackageVersionError@ object that contains a map of errors codes for+-- the deleted package that failed. The possible error codes are:+--+-- - @ALREADY_EXISTS@+--+-- - @MISMATCHED_REVISION@+--+-- - @MISMATCHED_STATUS@+--+-- - @NOT_ALLOWED@+--+-- - @NOT_FOUND@+--+-- - @SKIPPED@+deletePackageVersionsResponse_failedVersions :: Lens.Lens' DeletePackageVersionsResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text PackageVersionError))+deletePackageVersionsResponse_failedVersions = Lens.lens (\DeletePackageVersionsResponse' {failedVersions} -> failedVersions) (\s@DeletePackageVersionsResponse' {} a -> s {failedVersions = a} :: DeletePackageVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of the package versions that were successfully deleted. The+-- status of every successful version will be @Deleted@.+deletePackageVersionsResponse_successfulVersions :: Lens.Lens' DeletePackageVersionsResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text SuccessfulPackageVersionInfo))+deletePackageVersionsResponse_successfulVersions = Lens.lens (\DeletePackageVersionsResponse' {successfulVersions} -> successfulVersions) (\s@DeletePackageVersionsResponse' {} a -> s {successfulVersions = a} :: DeletePackageVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+deletePackageVersionsResponse_httpStatus :: Lens.Lens' DeletePackageVersionsResponse Prelude.Int+deletePackageVersionsResponse_httpStatus = Lens.lens (\DeletePackageVersionsResponse' {httpStatus} -> httpStatus) (\s@DeletePackageVersionsResponse' {} a -> s {httpStatus = a} :: DeletePackageVersionsResponse)++instance Prelude.NFData DeletePackageVersionsResponse where+ rnf DeletePackageVersionsResponse' {..} =+ Prelude.rnf failedVersions+ `Prelude.seq` Prelude.rnf successfulVersions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/DeleteRepository.hs view
@@ -0,0 +1,195 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.DeleteRepository+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a repository.+module Amazonka.CodeArtifact.DeleteRepository+ ( -- * Creating a Request+ DeleteRepository (..),+ newDeleteRepository,++ -- * Request Lenses+ deleteRepository_domainOwner,+ deleteRepository_domain,+ deleteRepository_repository,++ -- * Destructuring the Response+ DeleteRepositoryResponse (..),+ newDeleteRepositoryResponse,++ -- * Response Lenses+ deleteRepositoryResponse_repository,+ deleteRepositoryResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDeleteRepository' smart constructor.+data DeleteRepository = DeleteRepository'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository to delete.+ domain :: Prelude.Text,+ -- | The name of the repository to delete.+ repository :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRepository' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'deleteRepository_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'domain', 'deleteRepository_domain' - The name of the domain that contains the repository to delete.+--+-- 'repository', 'deleteRepository_repository' - The name of the repository to delete.+newDeleteRepository ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ DeleteRepository+newDeleteRepository pDomain_ pRepository_ =+ DeleteRepository'+ { domainOwner = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+deleteRepository_domainOwner :: Lens.Lens' DeleteRepository (Prelude.Maybe Prelude.Text)+deleteRepository_domainOwner = Lens.lens (\DeleteRepository' {domainOwner} -> domainOwner) (\s@DeleteRepository' {} a -> s {domainOwner = a} :: DeleteRepository)++-- | The name of the domain that contains the repository to delete.+deleteRepository_domain :: Lens.Lens' DeleteRepository Prelude.Text+deleteRepository_domain = Lens.lens (\DeleteRepository' {domain} -> domain) (\s@DeleteRepository' {} a -> s {domain = a} :: DeleteRepository)++-- | The name of the repository to delete.+deleteRepository_repository :: Lens.Lens' DeleteRepository Prelude.Text+deleteRepository_repository = Lens.lens (\DeleteRepository' {repository} -> repository) (\s@DeleteRepository' {} a -> s {repository = a} :: DeleteRepository)++instance Core.AWSRequest DeleteRepository where+ type+ AWSResponse DeleteRepository =+ DeleteRepositoryResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteRepositoryResponse'+ Prelude.<$> (x Data..?> "repository")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteRepository where+ hashWithSalt _salt DeleteRepository' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository++instance Prelude.NFData DeleteRepository where+ rnf DeleteRepository' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository++instance Data.ToHeaders DeleteRepository where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteRepository where+ toPath = Prelude.const "/v1/repository"++instance Data.ToQuery DeleteRepository where+ toQuery DeleteRepository' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain,+ "repository" Data.=: repository+ ]++-- | /See:/ 'newDeleteRepositoryResponse' smart constructor.+data DeleteRepositoryResponse = DeleteRepositoryResponse'+ { -- | Information about the deleted repository after processing the request.+ repository :: Prelude.Maybe RepositoryDescription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRepositoryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'repository', 'deleteRepositoryResponse_repository' - Information about the deleted repository after processing the request.+--+-- 'httpStatus', 'deleteRepositoryResponse_httpStatus' - The response's http status code.+newDeleteRepositoryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteRepositoryResponse+newDeleteRepositoryResponse pHttpStatus_ =+ DeleteRepositoryResponse'+ { repository =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the deleted repository after processing the request.+deleteRepositoryResponse_repository :: Lens.Lens' DeleteRepositoryResponse (Prelude.Maybe RepositoryDescription)+deleteRepositoryResponse_repository = Lens.lens (\DeleteRepositoryResponse' {repository} -> repository) (\s@DeleteRepositoryResponse' {} a -> s {repository = a} :: DeleteRepositoryResponse)++-- | The response's http status code.+deleteRepositoryResponse_httpStatus :: Lens.Lens' DeleteRepositoryResponse Prelude.Int+deleteRepositoryResponse_httpStatus = Lens.lens (\DeleteRepositoryResponse' {httpStatus} -> httpStatus) (\s@DeleteRepositoryResponse' {} a -> s {httpStatus = a} :: DeleteRepositoryResponse)++instance Prelude.NFData DeleteRepositoryResponse where+ rnf DeleteRepositoryResponse' {..} =+ Prelude.rnf repository+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/DeleteRepositoryPermissionsPolicy.hs view
@@ -0,0 +1,258 @@+{-# 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.CodeArtifact.DeleteRepositoryPermissionsPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the resource policy that is set on a repository. After a+-- resource policy is deleted, the permissions allowed and denied by the+-- deleted policy are removed. The effect of deleting a resource policy+-- might not be immediate.+--+-- Use @DeleteRepositoryPermissionsPolicy@ with caution. After a policy is+-- deleted, Amazon Web Services users, roles, and accounts lose permissions+-- to perform the repository actions granted by the deleted policy.+module Amazonka.CodeArtifact.DeleteRepositoryPermissionsPolicy+ ( -- * Creating a Request+ DeleteRepositoryPermissionsPolicy (..),+ newDeleteRepositoryPermissionsPolicy,++ -- * Request Lenses+ deleteRepositoryPermissionsPolicy_domainOwner,+ deleteRepositoryPermissionsPolicy_policyRevision,+ deleteRepositoryPermissionsPolicy_domain,+ deleteRepositoryPermissionsPolicy_repository,++ -- * Destructuring the Response+ DeleteRepositoryPermissionsPolicyResponse (..),+ newDeleteRepositoryPermissionsPolicyResponse,++ -- * Response Lenses+ deleteRepositoryPermissionsPolicyResponse_policy,+ deleteRepositoryPermissionsPolicyResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDeleteRepositoryPermissionsPolicy' smart constructor.+data DeleteRepositoryPermissionsPolicy = DeleteRepositoryPermissionsPolicy'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The revision of the repository\'s resource policy to be deleted. This+ -- revision is used for optimistic locking, which prevents others from+ -- accidentally overwriting your changes to the repository\'s resource+ -- policy.+ policyRevision :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository associated with the+ -- resource policy to be deleted.+ domain :: Prelude.Text,+ -- | The name of the repository that is associated with the resource policy+ -- to be deleted+ repository :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRepositoryPermissionsPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'deleteRepositoryPermissionsPolicy_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'policyRevision', 'deleteRepositoryPermissionsPolicy_policyRevision' - The revision of the repository\'s resource policy to be deleted. This+-- revision is used for optimistic locking, which prevents others from+-- accidentally overwriting your changes to the repository\'s resource+-- policy.+--+-- 'domain', 'deleteRepositoryPermissionsPolicy_domain' - The name of the domain that contains the repository associated with the+-- resource policy to be deleted.+--+-- 'repository', 'deleteRepositoryPermissionsPolicy_repository' - The name of the repository that is associated with the resource policy+-- to be deleted+newDeleteRepositoryPermissionsPolicy ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ DeleteRepositoryPermissionsPolicy+newDeleteRepositoryPermissionsPolicy+ pDomain_+ pRepository_ =+ DeleteRepositoryPermissionsPolicy'+ { domainOwner =+ Prelude.Nothing,+ policyRevision = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+deleteRepositoryPermissionsPolicy_domainOwner :: Lens.Lens' DeleteRepositoryPermissionsPolicy (Prelude.Maybe Prelude.Text)+deleteRepositoryPermissionsPolicy_domainOwner = Lens.lens (\DeleteRepositoryPermissionsPolicy' {domainOwner} -> domainOwner) (\s@DeleteRepositoryPermissionsPolicy' {} a -> s {domainOwner = a} :: DeleteRepositoryPermissionsPolicy)++-- | The revision of the repository\'s resource policy to be deleted. This+-- revision is used for optimistic locking, which prevents others from+-- accidentally overwriting your changes to the repository\'s resource+-- policy.+deleteRepositoryPermissionsPolicy_policyRevision :: Lens.Lens' DeleteRepositoryPermissionsPolicy (Prelude.Maybe Prelude.Text)+deleteRepositoryPermissionsPolicy_policyRevision = Lens.lens (\DeleteRepositoryPermissionsPolicy' {policyRevision} -> policyRevision) (\s@DeleteRepositoryPermissionsPolicy' {} a -> s {policyRevision = a} :: DeleteRepositoryPermissionsPolicy)++-- | The name of the domain that contains the repository associated with the+-- resource policy to be deleted.+deleteRepositoryPermissionsPolicy_domain :: Lens.Lens' DeleteRepositoryPermissionsPolicy Prelude.Text+deleteRepositoryPermissionsPolicy_domain = Lens.lens (\DeleteRepositoryPermissionsPolicy' {domain} -> domain) (\s@DeleteRepositoryPermissionsPolicy' {} a -> s {domain = a} :: DeleteRepositoryPermissionsPolicy)++-- | The name of the repository that is associated with the resource policy+-- to be deleted+deleteRepositoryPermissionsPolicy_repository :: Lens.Lens' DeleteRepositoryPermissionsPolicy Prelude.Text+deleteRepositoryPermissionsPolicy_repository = Lens.lens (\DeleteRepositoryPermissionsPolicy' {repository} -> repository) (\s@DeleteRepositoryPermissionsPolicy' {} a -> s {repository = a} :: DeleteRepositoryPermissionsPolicy)++instance+ Core.AWSRequest+ DeleteRepositoryPermissionsPolicy+ where+ type+ AWSResponse DeleteRepositoryPermissionsPolicy =+ DeleteRepositoryPermissionsPolicyResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteRepositoryPermissionsPolicyResponse'+ Prelude.<$> (x Data..?> "policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DeleteRepositoryPermissionsPolicy+ where+ hashWithSalt+ _salt+ DeleteRepositoryPermissionsPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` policyRevision+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository++instance+ Prelude.NFData+ DeleteRepositoryPermissionsPolicy+ where+ rnf DeleteRepositoryPermissionsPolicy' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf policyRevision+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository++instance+ Data.ToHeaders+ DeleteRepositoryPermissionsPolicy+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToPath+ DeleteRepositoryPermissionsPolicy+ where+ toPath =+ Prelude.const "/v1/repository/permissions/policies"++instance+ Data.ToQuery+ DeleteRepositoryPermissionsPolicy+ where+ toQuery DeleteRepositoryPermissionsPolicy' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "policy-revision" Data.=: policyRevision,+ "domain" Data.=: domain,+ "repository" Data.=: repository+ ]++-- | /See:/ 'newDeleteRepositoryPermissionsPolicyResponse' smart constructor.+data DeleteRepositoryPermissionsPolicyResponse = DeleteRepositoryPermissionsPolicyResponse'+ { -- | Information about the deleted policy after processing the request.+ policy :: Prelude.Maybe ResourcePolicy,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRepositoryPermissionsPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'deleteRepositoryPermissionsPolicyResponse_policy' - Information about the deleted policy after processing the request.+--+-- 'httpStatus', 'deleteRepositoryPermissionsPolicyResponse_httpStatus' - The response's http status code.+newDeleteRepositoryPermissionsPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteRepositoryPermissionsPolicyResponse+newDeleteRepositoryPermissionsPolicyResponse+ pHttpStatus_ =+ DeleteRepositoryPermissionsPolicyResponse'+ { policy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the deleted policy after processing the request.+deleteRepositoryPermissionsPolicyResponse_policy :: Lens.Lens' DeleteRepositoryPermissionsPolicyResponse (Prelude.Maybe ResourcePolicy)+deleteRepositoryPermissionsPolicyResponse_policy = Lens.lens (\DeleteRepositoryPermissionsPolicyResponse' {policy} -> policy) (\s@DeleteRepositoryPermissionsPolicyResponse' {} a -> s {policy = a} :: DeleteRepositoryPermissionsPolicyResponse)++-- | The response's http status code.+deleteRepositoryPermissionsPolicyResponse_httpStatus :: Lens.Lens' DeleteRepositoryPermissionsPolicyResponse Prelude.Int+deleteRepositoryPermissionsPolicyResponse_httpStatus = Lens.lens (\DeleteRepositoryPermissionsPolicyResponse' {httpStatus} -> httpStatus) (\s@DeleteRepositoryPermissionsPolicyResponse' {} a -> s {httpStatus = a} :: DeleteRepositoryPermissionsPolicyResponse)++instance+ Prelude.NFData+ DeleteRepositoryPermissionsPolicyResponse+ where+ rnf DeleteRepositoryPermissionsPolicyResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/DescribeDomain.hs view
@@ -0,0 +1,180 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.DescribeDomain+-- 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/codeartifact/latest/APIReference/API_DomainDescription.html DomainDescription>+-- object that contains information about the requested domain.+module Amazonka.CodeArtifact.DescribeDomain+ ( -- * Creating a Request+ DescribeDomain (..),+ newDescribeDomain,++ -- * Request Lenses+ describeDomain_domainOwner,+ describeDomain_domain,++ -- * Destructuring the Response+ DescribeDomainResponse (..),+ newDescribeDomainResponse,++ -- * Response Lenses+ describeDomainResponse_domain,+ describeDomainResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDescribeDomain' smart constructor.+data DescribeDomain = DescribeDomain'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | A string that specifies the name of the requested domain.+ domain :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomain' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'describeDomain_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'domain', 'describeDomain_domain' - A string that specifies the name of the requested domain.+newDescribeDomain ::+ -- | 'domain'+ Prelude.Text ->+ DescribeDomain+newDescribeDomain pDomain_ =+ DescribeDomain'+ { domainOwner = Prelude.Nothing,+ domain = pDomain_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+describeDomain_domainOwner :: Lens.Lens' DescribeDomain (Prelude.Maybe Prelude.Text)+describeDomain_domainOwner = Lens.lens (\DescribeDomain' {domainOwner} -> domainOwner) (\s@DescribeDomain' {} a -> s {domainOwner = a} :: DescribeDomain)++-- | A string that specifies the name of the requested domain.+describeDomain_domain :: Lens.Lens' DescribeDomain Prelude.Text+describeDomain_domain = Lens.lens (\DescribeDomain' {domain} -> domain) (\s@DescribeDomain' {} a -> s {domain = a} :: DescribeDomain)++instance Core.AWSRequest DescribeDomain where+ type+ AWSResponse DescribeDomain =+ DescribeDomainResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeDomainResponse'+ Prelude.<$> (x Data..?> "domain")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeDomain where+ hashWithSalt _salt DescribeDomain' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` domain++instance Prelude.NFData DescribeDomain where+ rnf DescribeDomain' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf domain++instance Data.ToHeaders DescribeDomain where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeDomain where+ toPath = Prelude.const "/v1/domain"++instance Data.ToQuery DescribeDomain where+ toQuery DescribeDomain' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain+ ]++-- | /See:/ 'newDescribeDomainResponse' smart constructor.+data DescribeDomainResponse = DescribeDomainResponse'+ { domain :: Prelude.Maybe DomainDescription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomainResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domain', 'describeDomainResponse_domain' - Undocumented member.+--+-- 'httpStatus', 'describeDomainResponse_httpStatus' - The response's http status code.+newDescribeDomainResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDomainResponse+newDescribeDomainResponse pHttpStatus_ =+ DescribeDomainResponse'+ { domain = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Undocumented member.+describeDomainResponse_domain :: Lens.Lens' DescribeDomainResponse (Prelude.Maybe DomainDescription)+describeDomainResponse_domain = Lens.lens (\DescribeDomainResponse' {domain} -> domain) (\s@DescribeDomainResponse' {} a -> s {domain = a} :: DescribeDomainResponse)++-- | The response's http status code.+describeDomainResponse_httpStatus :: Lens.Lens' DescribeDomainResponse Prelude.Int+describeDomainResponse_httpStatus = Lens.lens (\DescribeDomainResponse' {httpStatus} -> httpStatus) (\s@DescribeDomainResponse' {} a -> s {httpStatus = a} :: DescribeDomainResponse)++instance Prelude.NFData DescribeDomainResponse where+ rnf DescribeDomainResponse' {..} =+ Prelude.rnf domain+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/DescribePackage.hs view
@@ -0,0 +1,281 @@+{-# 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.CodeArtifact.DescribePackage+-- 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/codeartifact/latest/APIReference/API_PackageDescription.html PackageDescription>+-- object that contains information about the requested package.+module Amazonka.CodeArtifact.DescribePackage+ ( -- * Creating a Request+ DescribePackage (..),+ newDescribePackage,++ -- * Request Lenses+ describePackage_domainOwner,+ describePackage_namespace,+ describePackage_domain,+ describePackage_repository,+ describePackage_format,+ describePackage_package,++ -- * Destructuring the Response+ DescribePackageResponse (..),+ newDescribePackageResponse,++ -- * Response Lenses+ describePackageResponse_httpStatus,+ describePackageResponse_package,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDescribePackage' smart constructor.+data DescribePackage = DescribePackage'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The namespace of the requested package. The package component that+ -- specifies its namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package is its @groupId@. The namespace is+ -- required when requesting Maven packages.+ --+ -- - The namespace of an npm package is its @scope@.+ --+ -- - Python and NuGet packages do not contain a corresponding component,+ -- packages of those formats do not have a namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository that contains the+ -- package.+ domain :: Prelude.Text,+ -- | The name of the repository that contains the requested package.+ repository :: Prelude.Text,+ -- | A format that specifies the type of the requested package.+ format :: PackageFormat,+ -- | The name of the requested package.+ package :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'describePackage_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'namespace', 'describePackage_namespace' - The namespace of the requested package. The package component that+-- specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@. The namespace is+-- required when requesting Maven packages.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+--+-- 'domain', 'describePackage_domain' - The name of the domain that contains the repository that contains the+-- package.+--+-- 'repository', 'describePackage_repository' - The name of the repository that contains the requested package.+--+-- 'format', 'describePackage_format' - A format that specifies the type of the requested package.+--+-- 'package', 'describePackage_package' - The name of the requested package.+newDescribePackage ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ DescribePackage+newDescribePackage+ pDomain_+ pRepository_+ pFormat_+ pPackage_ =+ DescribePackage'+ { domainOwner = Prelude.Nothing,+ namespace = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+describePackage_domainOwner :: Lens.Lens' DescribePackage (Prelude.Maybe Prelude.Text)+describePackage_domainOwner = Lens.lens (\DescribePackage' {domainOwner} -> domainOwner) (\s@DescribePackage' {} a -> s {domainOwner = a} :: DescribePackage)++-- | The namespace of the requested package. The package component that+-- specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@. The namespace is+-- required when requesting Maven packages.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+describePackage_namespace :: Lens.Lens' DescribePackage (Prelude.Maybe Prelude.Text)+describePackage_namespace = Lens.lens (\DescribePackage' {namespace} -> namespace) (\s@DescribePackage' {} a -> s {namespace = a} :: DescribePackage)++-- | The name of the domain that contains the repository that contains the+-- package.+describePackage_domain :: Lens.Lens' DescribePackage Prelude.Text+describePackage_domain = Lens.lens (\DescribePackage' {domain} -> domain) (\s@DescribePackage' {} a -> s {domain = a} :: DescribePackage)++-- | The name of the repository that contains the requested package.+describePackage_repository :: Lens.Lens' DescribePackage Prelude.Text+describePackage_repository = Lens.lens (\DescribePackage' {repository} -> repository) (\s@DescribePackage' {} a -> s {repository = a} :: DescribePackage)++-- | A format that specifies the type of the requested package.+describePackage_format :: Lens.Lens' DescribePackage PackageFormat+describePackage_format = Lens.lens (\DescribePackage' {format} -> format) (\s@DescribePackage' {} a -> s {format = a} :: DescribePackage)++-- | The name of the requested package.+describePackage_package :: Lens.Lens' DescribePackage Prelude.Text+describePackage_package = Lens.lens (\DescribePackage' {package} -> package) (\s@DescribePackage' {} a -> s {package = a} :: DescribePackage)++instance Core.AWSRequest DescribePackage where+ type+ AWSResponse DescribePackage =+ DescribePackageResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribePackageResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "package")+ )++instance Prelude.Hashable DescribePackage where+ hashWithSalt _salt DescribePackage' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package++instance Prelude.NFData DescribePackage where+ rnf DescribePackage' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package++instance Data.ToHeaders DescribePackage where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribePackage where+ toPath = Prelude.const "/v1/package"++instance Data.ToQuery DescribePackage where+ toQuery DescribePackage' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "namespace" Data.=: namespace,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package+ ]++-- | /See:/ 'newDescribePackageResponse' smart constructor.+data DescribePackageResponse = DescribePackageResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDescription.html PackageDescription>+ -- object that contains information about the requested package.+ package :: PackageDescription+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePackageResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describePackageResponse_httpStatus' - The response's http status code.+--+-- 'package', 'describePackageResponse_package' - A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDescription.html PackageDescription>+-- object that contains information about the requested package.+newDescribePackageResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'package'+ PackageDescription ->+ DescribePackageResponse+newDescribePackageResponse pHttpStatus_ pPackage_ =+ DescribePackageResponse'+ { httpStatus = pHttpStatus_,+ package = pPackage_+ }++-- | The response's http status code.+describePackageResponse_httpStatus :: Lens.Lens' DescribePackageResponse Prelude.Int+describePackageResponse_httpStatus = Lens.lens (\DescribePackageResponse' {httpStatus} -> httpStatus) (\s@DescribePackageResponse' {} a -> s {httpStatus = a} :: DescribePackageResponse)++-- | A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDescription.html PackageDescription>+-- object that contains information about the requested package.+describePackageResponse_package :: Lens.Lens' DescribePackageResponse PackageDescription+describePackageResponse_package = Lens.lens (\DescribePackageResponse' {package} -> package) (\s@DescribePackageResponse' {} a -> s {package = a} :: DescribePackageResponse)++instance Prelude.NFData DescribePackageResponse where+ rnf DescribePackageResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf package
+ gen/Amazonka/CodeArtifact/DescribePackageVersion.hs view
@@ -0,0 +1,304 @@+{-# 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.CodeArtifact.DescribePackageVersion+-- 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/codeartifact/latest/APIReference/API_PackageVersionDescription.html PackageVersionDescription>+-- object that contains information about the requested package version.+module Amazonka.CodeArtifact.DescribePackageVersion+ ( -- * Creating a Request+ DescribePackageVersion (..),+ newDescribePackageVersion,++ -- * Request Lenses+ describePackageVersion_domainOwner,+ describePackageVersion_namespace,+ describePackageVersion_domain,+ describePackageVersion_repository,+ describePackageVersion_format,+ describePackageVersion_package,+ describePackageVersion_packageVersion,++ -- * Destructuring the Response+ DescribePackageVersionResponse (..),+ newDescribePackageVersionResponse,++ -- * Response Lenses+ describePackageVersionResponse_httpStatus,+ describePackageVersionResponse_packageVersion,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDescribePackageVersion' smart constructor.+data DescribePackageVersion = DescribePackageVersion'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The namespace of the requested package version. The package version+ -- component that specifies its namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository that contains the+ -- package version.+ domain :: Prelude.Text,+ -- | The name of the repository that contains the package version.+ repository :: Prelude.Text,+ -- | A format that specifies the type of the requested package version.+ format :: PackageFormat,+ -- | The name of the requested package version.+ package :: Prelude.Text,+ -- | A string that contains the package version (for example, @3.5.2@).+ packageVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePackageVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'describePackageVersion_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'namespace', 'describePackageVersion_namespace' - The namespace of the requested package version. The package version+-- component that specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'domain', 'describePackageVersion_domain' - The name of the domain that contains the repository that contains the+-- package version.+--+-- 'repository', 'describePackageVersion_repository' - The name of the repository that contains the package version.+--+-- 'format', 'describePackageVersion_format' - A format that specifies the type of the requested package version.+--+-- 'package', 'describePackageVersion_package' - The name of the requested package version.+--+-- 'packageVersion', 'describePackageVersion_packageVersion' - A string that contains the package version (for example, @3.5.2@).+newDescribePackageVersion ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ -- | 'packageVersion'+ Prelude.Text ->+ DescribePackageVersion+newDescribePackageVersion+ pDomain_+ pRepository_+ pFormat_+ pPackage_+ pPackageVersion_ =+ DescribePackageVersion'+ { domainOwner =+ Prelude.Nothing,+ namespace = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_,+ packageVersion = pPackageVersion_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+describePackageVersion_domainOwner :: Lens.Lens' DescribePackageVersion (Prelude.Maybe Prelude.Text)+describePackageVersion_domainOwner = Lens.lens (\DescribePackageVersion' {domainOwner} -> domainOwner) (\s@DescribePackageVersion' {} a -> s {domainOwner = a} :: DescribePackageVersion)++-- | The namespace of the requested package version. The package version+-- component that specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+describePackageVersion_namespace :: Lens.Lens' DescribePackageVersion (Prelude.Maybe Prelude.Text)+describePackageVersion_namespace = Lens.lens (\DescribePackageVersion' {namespace} -> namespace) (\s@DescribePackageVersion' {} a -> s {namespace = a} :: DescribePackageVersion)++-- | The name of the domain that contains the repository that contains the+-- package version.+describePackageVersion_domain :: Lens.Lens' DescribePackageVersion Prelude.Text+describePackageVersion_domain = Lens.lens (\DescribePackageVersion' {domain} -> domain) (\s@DescribePackageVersion' {} a -> s {domain = a} :: DescribePackageVersion)++-- | The name of the repository that contains the package version.+describePackageVersion_repository :: Lens.Lens' DescribePackageVersion Prelude.Text+describePackageVersion_repository = Lens.lens (\DescribePackageVersion' {repository} -> repository) (\s@DescribePackageVersion' {} a -> s {repository = a} :: DescribePackageVersion)++-- | A format that specifies the type of the requested package version.+describePackageVersion_format :: Lens.Lens' DescribePackageVersion PackageFormat+describePackageVersion_format = Lens.lens (\DescribePackageVersion' {format} -> format) (\s@DescribePackageVersion' {} a -> s {format = a} :: DescribePackageVersion)++-- | The name of the requested package version.+describePackageVersion_package :: Lens.Lens' DescribePackageVersion Prelude.Text+describePackageVersion_package = Lens.lens (\DescribePackageVersion' {package} -> package) (\s@DescribePackageVersion' {} a -> s {package = a} :: DescribePackageVersion)++-- | A string that contains the package version (for example, @3.5.2@).+describePackageVersion_packageVersion :: Lens.Lens' DescribePackageVersion Prelude.Text+describePackageVersion_packageVersion = Lens.lens (\DescribePackageVersion' {packageVersion} -> packageVersion) (\s@DescribePackageVersion' {} a -> s {packageVersion = a} :: DescribePackageVersion)++instance Core.AWSRequest DescribePackageVersion where+ type+ AWSResponse DescribePackageVersion =+ DescribePackageVersionResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribePackageVersionResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "packageVersion")+ )++instance Prelude.Hashable DescribePackageVersion where+ hashWithSalt _salt DescribePackageVersion' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package+ `Prelude.hashWithSalt` packageVersion++instance Prelude.NFData DescribePackageVersion where+ rnf DescribePackageVersion' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf packageVersion++instance Data.ToHeaders DescribePackageVersion where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribePackageVersion where+ toPath = Prelude.const "/v1/package/version"++instance Data.ToQuery DescribePackageVersion where+ toQuery DescribePackageVersion' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "namespace" Data.=: namespace,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package,+ "version" Data.=: packageVersion+ ]++-- | /See:/ 'newDescribePackageVersionResponse' smart constructor.+data DescribePackageVersionResponse = DescribePackageVersionResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionDescription.html PackageVersionDescription>+ -- object that contains information about the requested package version.+ packageVersion :: PackageVersionDescription+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePackageVersionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describePackageVersionResponse_httpStatus' - The response's http status code.+--+-- 'packageVersion', 'describePackageVersionResponse_packageVersion' - A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionDescription.html PackageVersionDescription>+-- object that contains information about the requested package version.+newDescribePackageVersionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'packageVersion'+ PackageVersionDescription ->+ DescribePackageVersionResponse+newDescribePackageVersionResponse+ pHttpStatus_+ pPackageVersion_ =+ DescribePackageVersionResponse'+ { httpStatus =+ pHttpStatus_,+ packageVersion = pPackageVersion_+ }++-- | The response's http status code.+describePackageVersionResponse_httpStatus :: Lens.Lens' DescribePackageVersionResponse Prelude.Int+describePackageVersionResponse_httpStatus = Lens.lens (\DescribePackageVersionResponse' {httpStatus} -> httpStatus) (\s@DescribePackageVersionResponse' {} a -> s {httpStatus = a} :: DescribePackageVersionResponse)++-- | A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionDescription.html PackageVersionDescription>+-- object that contains information about the requested package version.+describePackageVersionResponse_packageVersion :: Lens.Lens' DescribePackageVersionResponse PackageVersionDescription+describePackageVersionResponse_packageVersion = Lens.lens (\DescribePackageVersionResponse' {packageVersion} -> packageVersion) (\s@DescribePackageVersionResponse' {} a -> s {packageVersion = a} :: DescribePackageVersionResponse)++instance+ Prelude.NFData+ DescribePackageVersionResponse+ where+ rnf DescribePackageVersionResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf packageVersion
+ gen/Amazonka/CodeArtifact/DescribeRepository.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.CodeArtifact.DescribeRepository+-- 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 @RepositoryDescription@ object that contains detailed+-- information about the requested repository.+module Amazonka.CodeArtifact.DescribeRepository+ ( -- * Creating a Request+ DescribeRepository (..),+ newDescribeRepository,++ -- * Request Lenses+ describeRepository_domainOwner,+ describeRepository_domain,+ describeRepository_repository,++ -- * Destructuring the Response+ DescribeRepositoryResponse (..),+ newDescribeRepositoryResponse,++ -- * Response Lenses+ describeRepositoryResponse_repository,+ describeRepositoryResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDescribeRepository' smart constructor.+data DescribeRepository = DescribeRepository'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository to describe.+ domain :: Prelude.Text,+ -- | A string that specifies the name of the requested repository.+ repository :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeRepository' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'describeRepository_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'domain', 'describeRepository_domain' - The name of the domain that contains the repository to describe.+--+-- 'repository', 'describeRepository_repository' - A string that specifies the name of the requested repository.+newDescribeRepository ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ DescribeRepository+newDescribeRepository pDomain_ pRepository_ =+ DescribeRepository'+ { domainOwner = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+describeRepository_domainOwner :: Lens.Lens' DescribeRepository (Prelude.Maybe Prelude.Text)+describeRepository_domainOwner = Lens.lens (\DescribeRepository' {domainOwner} -> domainOwner) (\s@DescribeRepository' {} a -> s {domainOwner = a} :: DescribeRepository)++-- | The name of the domain that contains the repository to describe.+describeRepository_domain :: Lens.Lens' DescribeRepository Prelude.Text+describeRepository_domain = Lens.lens (\DescribeRepository' {domain} -> domain) (\s@DescribeRepository' {} a -> s {domain = a} :: DescribeRepository)++-- | A string that specifies the name of the requested repository.+describeRepository_repository :: Lens.Lens' DescribeRepository Prelude.Text+describeRepository_repository = Lens.lens (\DescribeRepository' {repository} -> repository) (\s@DescribeRepository' {} a -> s {repository = a} :: DescribeRepository)++instance Core.AWSRequest DescribeRepository where+ type+ AWSResponse DescribeRepository =+ DescribeRepositoryResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeRepositoryResponse'+ Prelude.<$> (x Data..?> "repository")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeRepository where+ hashWithSalt _salt DescribeRepository' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository++instance Prelude.NFData DescribeRepository where+ rnf DescribeRepository' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository++instance Data.ToHeaders DescribeRepository where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeRepository where+ toPath = Prelude.const "/v1/repository"++instance Data.ToQuery DescribeRepository where+ toQuery DescribeRepository' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain,+ "repository" Data.=: repository+ ]++-- | /See:/ 'newDescribeRepositoryResponse' smart constructor.+data DescribeRepositoryResponse = DescribeRepositoryResponse'+ { -- | A @RepositoryDescription@ object that contains the requested repository+ -- information.+ repository :: Prelude.Maybe RepositoryDescription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeRepositoryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'repository', 'describeRepositoryResponse_repository' - A @RepositoryDescription@ object that contains the requested repository+-- information.+--+-- 'httpStatus', 'describeRepositoryResponse_httpStatus' - The response's http status code.+newDescribeRepositoryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeRepositoryResponse+newDescribeRepositoryResponse pHttpStatus_ =+ DescribeRepositoryResponse'+ { repository =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A @RepositoryDescription@ object that contains the requested repository+-- information.+describeRepositoryResponse_repository :: Lens.Lens' DescribeRepositoryResponse (Prelude.Maybe RepositoryDescription)+describeRepositoryResponse_repository = Lens.lens (\DescribeRepositoryResponse' {repository} -> repository) (\s@DescribeRepositoryResponse' {} a -> s {repository = a} :: DescribeRepositoryResponse)++-- | The response's http status code.+describeRepositoryResponse_httpStatus :: Lens.Lens' DescribeRepositoryResponse Prelude.Int+describeRepositoryResponse_httpStatus = Lens.lens (\DescribeRepositoryResponse' {httpStatus} -> httpStatus) (\s@DescribeRepositoryResponse' {} a -> s {httpStatus = a} :: DescribeRepositoryResponse)++instance Prelude.NFData DescribeRepositoryResponse where+ rnf DescribeRepositoryResponse' {..} =+ Prelude.rnf repository+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/DisassociateExternalConnection.hs view
@@ -0,0 +1,239 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.DisassociateExternalConnection+-- 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 an existing external connection from a repository.+module Amazonka.CodeArtifact.DisassociateExternalConnection+ ( -- * Creating a Request+ DisassociateExternalConnection (..),+ newDisassociateExternalConnection,++ -- * Request Lenses+ disassociateExternalConnection_domainOwner,+ disassociateExternalConnection_domain,+ disassociateExternalConnection_repository,+ disassociateExternalConnection_externalConnection,++ -- * Destructuring the Response+ DisassociateExternalConnectionResponse (..),+ newDisassociateExternalConnectionResponse,++ -- * Response Lenses+ disassociateExternalConnectionResponse_repository,+ disassociateExternalConnectionResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDisassociateExternalConnection' smart constructor.+data DisassociateExternalConnection = DisassociateExternalConnection'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository from which to remove+ -- the external repository.+ domain :: Prelude.Text,+ -- | The name of the repository from which the external connection will be+ -- removed.+ repository :: Prelude.Text,+ -- | The name of the external connection to be removed from the repository.+ externalConnection :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateExternalConnection' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'disassociateExternalConnection_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'domain', 'disassociateExternalConnection_domain' - The name of the domain that contains the repository from which to remove+-- the external repository.+--+-- 'repository', 'disassociateExternalConnection_repository' - The name of the repository from which the external connection will be+-- removed.+--+-- 'externalConnection', 'disassociateExternalConnection_externalConnection' - The name of the external connection to be removed from the repository.+newDisassociateExternalConnection ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'externalConnection'+ Prelude.Text ->+ DisassociateExternalConnection+newDisassociateExternalConnection+ pDomain_+ pRepository_+ pExternalConnection_ =+ DisassociateExternalConnection'+ { domainOwner =+ Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ externalConnection = pExternalConnection_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+disassociateExternalConnection_domainOwner :: Lens.Lens' DisassociateExternalConnection (Prelude.Maybe Prelude.Text)+disassociateExternalConnection_domainOwner = Lens.lens (\DisassociateExternalConnection' {domainOwner} -> domainOwner) (\s@DisassociateExternalConnection' {} a -> s {domainOwner = a} :: DisassociateExternalConnection)++-- | The name of the domain that contains the repository from which to remove+-- the external repository.+disassociateExternalConnection_domain :: Lens.Lens' DisassociateExternalConnection Prelude.Text+disassociateExternalConnection_domain = Lens.lens (\DisassociateExternalConnection' {domain} -> domain) (\s@DisassociateExternalConnection' {} a -> s {domain = a} :: DisassociateExternalConnection)++-- | The name of the repository from which the external connection will be+-- removed.+disassociateExternalConnection_repository :: Lens.Lens' DisassociateExternalConnection Prelude.Text+disassociateExternalConnection_repository = Lens.lens (\DisassociateExternalConnection' {repository} -> repository) (\s@DisassociateExternalConnection' {} a -> s {repository = a} :: DisassociateExternalConnection)++-- | The name of the external connection to be removed from the repository.+disassociateExternalConnection_externalConnection :: Lens.Lens' DisassociateExternalConnection Prelude.Text+disassociateExternalConnection_externalConnection = Lens.lens (\DisassociateExternalConnection' {externalConnection} -> externalConnection) (\s@DisassociateExternalConnection' {} a -> s {externalConnection = a} :: DisassociateExternalConnection)++instance+ Core.AWSRequest+ DisassociateExternalConnection+ where+ type+ AWSResponse DisassociateExternalConnection =+ DisassociateExternalConnectionResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DisassociateExternalConnectionResponse'+ Prelude.<$> (x Data..?> "repository")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DisassociateExternalConnection+ where+ hashWithSalt+ _salt+ DisassociateExternalConnection' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` externalConnection++instance+ Prelude.NFData+ DisassociateExternalConnection+ where+ rnf DisassociateExternalConnection' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf externalConnection++instance+ Data.ToHeaders+ DisassociateExternalConnection+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DisassociateExternalConnection where+ toPath =+ Prelude.const "/v1/repository/external-connection"++instance Data.ToQuery DisassociateExternalConnection where+ toQuery DisassociateExternalConnection' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "external-connection" Data.=: externalConnection+ ]++-- | /See:/ 'newDisassociateExternalConnectionResponse' smart constructor.+data DisassociateExternalConnectionResponse = DisassociateExternalConnectionResponse'+ { -- | The repository associated with the removed external connection.+ repository :: Prelude.Maybe RepositoryDescription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateExternalConnectionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'repository', 'disassociateExternalConnectionResponse_repository' - The repository associated with the removed external connection.+--+-- 'httpStatus', 'disassociateExternalConnectionResponse_httpStatus' - The response's http status code.+newDisassociateExternalConnectionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DisassociateExternalConnectionResponse+newDisassociateExternalConnectionResponse+ pHttpStatus_ =+ DisassociateExternalConnectionResponse'+ { repository =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The repository associated with the removed external connection.+disassociateExternalConnectionResponse_repository :: Lens.Lens' DisassociateExternalConnectionResponse (Prelude.Maybe RepositoryDescription)+disassociateExternalConnectionResponse_repository = Lens.lens (\DisassociateExternalConnectionResponse' {repository} -> repository) (\s@DisassociateExternalConnectionResponse' {} a -> s {repository = a} :: DisassociateExternalConnectionResponse)++-- | The response's http status code.+disassociateExternalConnectionResponse_httpStatus :: Lens.Lens' DisassociateExternalConnectionResponse Prelude.Int+disassociateExternalConnectionResponse_httpStatus = Lens.lens (\DisassociateExternalConnectionResponse' {httpStatus} -> httpStatus) (\s@DisassociateExternalConnectionResponse' {} a -> s {httpStatus = a} :: DisassociateExternalConnectionResponse)++instance+ Prelude.NFData+ DisassociateExternalConnectionResponse+ where+ rnf DisassociateExternalConnectionResponse' {..} =+ Prelude.rnf repository+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/DisposePackageVersions.hs view
@@ -0,0 +1,395 @@+{-# 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.CodeArtifact.DisposePackageVersions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the assets in package versions and sets the package versions\'+-- status to @Disposed@. A disposed package version cannot be restored in+-- your repository because its assets are deleted.+--+-- To view all disposed package versions in a repository, use+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_ListPackageVersions.html ListPackageVersions>+-- and set the+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_ListPackageVersions.html#API_ListPackageVersions_RequestSyntax status>+-- parameter to @Disposed@.+--+-- To view information about a disposed package version, use+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_DescribePackageVersion.html DescribePackageVersion>.+module Amazonka.CodeArtifact.DisposePackageVersions+ ( -- * Creating a Request+ DisposePackageVersions (..),+ newDisposePackageVersions,++ -- * Request Lenses+ disposePackageVersions_domainOwner,+ disposePackageVersions_expectedStatus,+ disposePackageVersions_namespace,+ disposePackageVersions_versionRevisions,+ disposePackageVersions_domain,+ disposePackageVersions_repository,+ disposePackageVersions_format,+ disposePackageVersions_package,+ disposePackageVersions_versions,++ -- * Destructuring the Response+ DisposePackageVersionsResponse (..),+ newDisposePackageVersionsResponse,++ -- * Response Lenses+ disposePackageVersionsResponse_failedVersions,+ disposePackageVersionsResponse_successfulVersions,+ disposePackageVersionsResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newDisposePackageVersions' smart constructor.+data DisposePackageVersions = DisposePackageVersions'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The expected status of the package version to dispose.+ expectedStatus :: Prelude.Maybe PackageVersionStatus,+ -- | The namespace of the package versions to be disposed. The package+ -- version component that specifies its namespace depends on its type. For+ -- example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The revisions of the package versions you want to dispose.+ versionRevisions :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The name of the domain that contains the repository you want to dispose.+ domain :: Prelude.Text,+ -- | The name of the repository that contains the package versions you want+ -- to dispose.+ repository :: Prelude.Text,+ -- | A format that specifies the type of package versions you want to+ -- dispose.+ format :: PackageFormat,+ -- | The name of the package with the versions you want to dispose.+ package :: Prelude.Text,+ -- | The versions of the package you want to dispose.+ versions :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisposePackageVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'disposePackageVersions_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'expectedStatus', 'disposePackageVersions_expectedStatus' - The expected status of the package version to dispose.+--+-- 'namespace', 'disposePackageVersions_namespace' - The namespace of the package versions to be disposed. The package+-- version component that specifies its namespace depends on its type. For+-- example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'versionRevisions', 'disposePackageVersions_versionRevisions' - The revisions of the package versions you want to dispose.+--+-- 'domain', 'disposePackageVersions_domain' - The name of the domain that contains the repository you want to dispose.+--+-- 'repository', 'disposePackageVersions_repository' - The name of the repository that contains the package versions you want+-- to dispose.+--+-- 'format', 'disposePackageVersions_format' - A format that specifies the type of package versions you want to+-- dispose.+--+-- 'package', 'disposePackageVersions_package' - The name of the package with the versions you want to dispose.+--+-- 'versions', 'disposePackageVersions_versions' - The versions of the package you want to dispose.+newDisposePackageVersions ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ DisposePackageVersions+newDisposePackageVersions+ pDomain_+ pRepository_+ pFormat_+ pPackage_ =+ DisposePackageVersions'+ { domainOwner =+ Prelude.Nothing,+ expectedStatus = Prelude.Nothing,+ namespace = Prelude.Nothing,+ versionRevisions = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_,+ versions = Prelude.mempty+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+disposePackageVersions_domainOwner :: Lens.Lens' DisposePackageVersions (Prelude.Maybe Prelude.Text)+disposePackageVersions_domainOwner = Lens.lens (\DisposePackageVersions' {domainOwner} -> domainOwner) (\s@DisposePackageVersions' {} a -> s {domainOwner = a} :: DisposePackageVersions)++-- | The expected status of the package version to dispose.+disposePackageVersions_expectedStatus :: Lens.Lens' DisposePackageVersions (Prelude.Maybe PackageVersionStatus)+disposePackageVersions_expectedStatus = Lens.lens (\DisposePackageVersions' {expectedStatus} -> expectedStatus) (\s@DisposePackageVersions' {} a -> s {expectedStatus = a} :: DisposePackageVersions)++-- | The namespace of the package versions to be disposed. The package+-- version component that specifies its namespace depends on its type. For+-- example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+disposePackageVersions_namespace :: Lens.Lens' DisposePackageVersions (Prelude.Maybe Prelude.Text)+disposePackageVersions_namespace = Lens.lens (\DisposePackageVersions' {namespace} -> namespace) (\s@DisposePackageVersions' {} a -> s {namespace = a} :: DisposePackageVersions)++-- | The revisions of the package versions you want to dispose.+disposePackageVersions_versionRevisions :: Lens.Lens' DisposePackageVersions (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+disposePackageVersions_versionRevisions = Lens.lens (\DisposePackageVersions' {versionRevisions} -> versionRevisions) (\s@DisposePackageVersions' {} a -> s {versionRevisions = a} :: DisposePackageVersions) Prelude.. Lens.mapping Lens.coerced++-- | The name of the domain that contains the repository you want to dispose.+disposePackageVersions_domain :: Lens.Lens' DisposePackageVersions Prelude.Text+disposePackageVersions_domain = Lens.lens (\DisposePackageVersions' {domain} -> domain) (\s@DisposePackageVersions' {} a -> s {domain = a} :: DisposePackageVersions)++-- | The name of the repository that contains the package versions you want+-- to dispose.+disposePackageVersions_repository :: Lens.Lens' DisposePackageVersions Prelude.Text+disposePackageVersions_repository = Lens.lens (\DisposePackageVersions' {repository} -> repository) (\s@DisposePackageVersions' {} a -> s {repository = a} :: DisposePackageVersions)++-- | A format that specifies the type of package versions you want to+-- dispose.+disposePackageVersions_format :: Lens.Lens' DisposePackageVersions PackageFormat+disposePackageVersions_format = Lens.lens (\DisposePackageVersions' {format} -> format) (\s@DisposePackageVersions' {} a -> s {format = a} :: DisposePackageVersions)++-- | The name of the package with the versions you want to dispose.+disposePackageVersions_package :: Lens.Lens' DisposePackageVersions Prelude.Text+disposePackageVersions_package = Lens.lens (\DisposePackageVersions' {package} -> package) (\s@DisposePackageVersions' {} a -> s {package = a} :: DisposePackageVersions)++-- | The versions of the package you want to dispose.+disposePackageVersions_versions :: Lens.Lens' DisposePackageVersions [Prelude.Text]+disposePackageVersions_versions = Lens.lens (\DisposePackageVersions' {versions} -> versions) (\s@DisposePackageVersions' {} a -> s {versions = a} :: DisposePackageVersions) Prelude.. Lens.coerced++instance Core.AWSRequest DisposePackageVersions where+ type+ AWSResponse DisposePackageVersions =+ DisposePackageVersionsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DisposePackageVersionsResponse'+ Prelude.<$> (x Data..?> "failedVersions" Core..!@ Prelude.mempty)+ Prelude.<*> ( x+ Data..?> "successfulVersions"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DisposePackageVersions where+ hashWithSalt _salt DisposePackageVersions' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` expectedStatus+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` versionRevisions+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package+ `Prelude.hashWithSalt` versions++instance Prelude.NFData DisposePackageVersions where+ rnf DisposePackageVersions' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf expectedStatus+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf versionRevisions+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf versions++instance Data.ToHeaders DisposePackageVersions where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DisposePackageVersions where+ toJSON DisposePackageVersions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("expectedStatus" Data..=)+ Prelude.<$> expectedStatus,+ ("versionRevisions" Data..=)+ Prelude.<$> versionRevisions,+ Prelude.Just ("versions" Data..= versions)+ ]+ )++instance Data.ToPath DisposePackageVersions where+ toPath = Prelude.const "/v1/package/versions/dispose"++instance Data.ToQuery DisposePackageVersions where+ toQuery DisposePackageVersions' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "namespace" Data.=: namespace,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package+ ]++-- | /See:/ 'newDisposePackageVersionsResponse' smart constructor.+data DisposePackageVersionsResponse = DisposePackageVersionsResponse'+ { -- | A @PackageVersionError@ object that contains a map of errors codes for+ -- the disposed package versions that failed. The possible error codes are:+ --+ -- - @ALREADY_EXISTS@+ --+ -- - @MISMATCHED_REVISION@+ --+ -- - @MISMATCHED_STATUS@+ --+ -- - @NOT_ALLOWED@+ --+ -- - @NOT_FOUND@+ --+ -- - @SKIPPED@+ failedVersions :: Prelude.Maybe (Prelude.HashMap Prelude.Text PackageVersionError),+ -- | A list of the package versions that were successfully disposed.+ successfulVersions :: Prelude.Maybe (Prelude.HashMap Prelude.Text SuccessfulPackageVersionInfo),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisposePackageVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'failedVersions', 'disposePackageVersionsResponse_failedVersions' - A @PackageVersionError@ object that contains a map of errors codes for+-- the disposed package versions that failed. The possible error codes are:+--+-- - @ALREADY_EXISTS@+--+-- - @MISMATCHED_REVISION@+--+-- - @MISMATCHED_STATUS@+--+-- - @NOT_ALLOWED@+--+-- - @NOT_FOUND@+--+-- - @SKIPPED@+--+-- 'successfulVersions', 'disposePackageVersionsResponse_successfulVersions' - A list of the package versions that were successfully disposed.+--+-- 'httpStatus', 'disposePackageVersionsResponse_httpStatus' - The response's http status code.+newDisposePackageVersionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DisposePackageVersionsResponse+newDisposePackageVersionsResponse pHttpStatus_ =+ DisposePackageVersionsResponse'+ { failedVersions =+ Prelude.Nothing,+ successfulVersions = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A @PackageVersionError@ object that contains a map of errors codes for+-- the disposed package versions that failed. The possible error codes are:+--+-- - @ALREADY_EXISTS@+--+-- - @MISMATCHED_REVISION@+--+-- - @MISMATCHED_STATUS@+--+-- - @NOT_ALLOWED@+--+-- - @NOT_FOUND@+--+-- - @SKIPPED@+disposePackageVersionsResponse_failedVersions :: Lens.Lens' DisposePackageVersionsResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text PackageVersionError))+disposePackageVersionsResponse_failedVersions = Lens.lens (\DisposePackageVersionsResponse' {failedVersions} -> failedVersions) (\s@DisposePackageVersionsResponse' {} a -> s {failedVersions = a} :: DisposePackageVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of the package versions that were successfully disposed.+disposePackageVersionsResponse_successfulVersions :: Lens.Lens' DisposePackageVersionsResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text SuccessfulPackageVersionInfo))+disposePackageVersionsResponse_successfulVersions = Lens.lens (\DisposePackageVersionsResponse' {successfulVersions} -> successfulVersions) (\s@DisposePackageVersionsResponse' {} a -> s {successfulVersions = a} :: DisposePackageVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+disposePackageVersionsResponse_httpStatus :: Lens.Lens' DisposePackageVersionsResponse Prelude.Int+disposePackageVersionsResponse_httpStatus = Lens.lens (\DisposePackageVersionsResponse' {httpStatus} -> httpStatus) (\s@DisposePackageVersionsResponse' {} a -> s {httpStatus = a} :: DisposePackageVersionsResponse)++instance+ Prelude.NFData+ DisposePackageVersionsResponse+ where+ rnf DisposePackageVersionsResponse' {..} =+ Prelude.rnf failedVersions+ `Prelude.seq` Prelude.rnf successfulVersions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/GetAuthorizationToken.hs view
@@ -0,0 +1,250 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.GetAuthorizationToken+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Generates a temporary authorization token for accessing repositories in+-- the domain. This API requires the @codeartifact:GetAuthorizationToken@+-- and @sts:GetServiceBearerToken@ permissions. For more information about+-- authorization tokens, see+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/tokens-authentication.html CodeArtifact authentication and tokens>.+--+-- CodeArtifact authorization tokens are valid for a period of 12 hours+-- when created with the @login@ command. You can call @login@ periodically+-- to refresh the token. When you create an authorization token with the+-- @GetAuthorizationToken@ API, you can set a custom authorization period,+-- up to a maximum of 12 hours, with the @durationSeconds@ parameter.+--+-- The authorization period begins after @login@ or @GetAuthorizationToken@+-- is called. If @login@ or @GetAuthorizationToken@ is called while+-- assuming a role, the token lifetime is independent of the maximum+-- session duration of the role. For example, if you call @sts assume-role@+-- and specify a session duration of 15 minutes, then generate a+-- CodeArtifact authorization token, the token will be valid for the full+-- authorization period even though this is longer than the 15-minute+-- session duration.+--+-- See+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM Roles>+-- for more information on controlling session duration.+module Amazonka.CodeArtifact.GetAuthorizationToken+ ( -- * Creating a Request+ GetAuthorizationToken (..),+ newGetAuthorizationToken,++ -- * Request Lenses+ getAuthorizationToken_domainOwner,+ getAuthorizationToken_durationSeconds,+ getAuthorizationToken_domain,++ -- * Destructuring the Response+ GetAuthorizationTokenResponse (..),+ newGetAuthorizationTokenResponse,++ -- * Response Lenses+ getAuthorizationTokenResponse_authorizationToken,+ getAuthorizationTokenResponse_expiration,+ getAuthorizationTokenResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newGetAuthorizationToken' smart constructor.+data GetAuthorizationToken = GetAuthorizationToken'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The time, in seconds, that the generated authorization token is valid.+ -- Valid values are @0@ and any number between @900@ (15 minutes) and+ -- @43200@ (12 hours). A value of @0@ will set the expiration of the+ -- authorization token to the same expiration of the user\'s role\'s+ -- temporary credentials.+ durationSeconds :: Prelude.Maybe Prelude.Natural,+ -- | The name of the domain that is in scope for the generated authorization+ -- token.+ domain :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAuthorizationToken' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'getAuthorizationToken_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'durationSeconds', 'getAuthorizationToken_durationSeconds' - The time, in seconds, that the generated authorization token is valid.+-- Valid values are @0@ and any number between @900@ (15 minutes) and+-- @43200@ (12 hours). A value of @0@ will set the expiration of the+-- authorization token to the same expiration of the user\'s role\'s+-- temporary credentials.+--+-- 'domain', 'getAuthorizationToken_domain' - The name of the domain that is in scope for the generated authorization+-- token.+newGetAuthorizationToken ::+ -- | 'domain'+ Prelude.Text ->+ GetAuthorizationToken+newGetAuthorizationToken pDomain_ =+ GetAuthorizationToken'+ { domainOwner =+ Prelude.Nothing,+ durationSeconds = Prelude.Nothing,+ domain = pDomain_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+getAuthorizationToken_domainOwner :: Lens.Lens' GetAuthorizationToken (Prelude.Maybe Prelude.Text)+getAuthorizationToken_domainOwner = Lens.lens (\GetAuthorizationToken' {domainOwner} -> domainOwner) (\s@GetAuthorizationToken' {} a -> s {domainOwner = a} :: GetAuthorizationToken)++-- | The time, in seconds, that the generated authorization token is valid.+-- Valid values are @0@ and any number between @900@ (15 minutes) and+-- @43200@ (12 hours). A value of @0@ will set the expiration of the+-- authorization token to the same expiration of the user\'s role\'s+-- temporary credentials.+getAuthorizationToken_durationSeconds :: Lens.Lens' GetAuthorizationToken (Prelude.Maybe Prelude.Natural)+getAuthorizationToken_durationSeconds = Lens.lens (\GetAuthorizationToken' {durationSeconds} -> durationSeconds) (\s@GetAuthorizationToken' {} a -> s {durationSeconds = a} :: GetAuthorizationToken)++-- | The name of the domain that is in scope for the generated authorization+-- token.+getAuthorizationToken_domain :: Lens.Lens' GetAuthorizationToken Prelude.Text+getAuthorizationToken_domain = Lens.lens (\GetAuthorizationToken' {domain} -> domain) (\s@GetAuthorizationToken' {} a -> s {domain = a} :: GetAuthorizationToken)++instance Core.AWSRequest GetAuthorizationToken where+ type+ AWSResponse GetAuthorizationToken =+ GetAuthorizationTokenResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetAuthorizationTokenResponse'+ Prelude.<$> (x Data..?> "authorizationToken")+ Prelude.<*> (x Data..?> "expiration")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetAuthorizationToken where+ hashWithSalt _salt GetAuthorizationToken' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` durationSeconds+ `Prelude.hashWithSalt` domain++instance Prelude.NFData GetAuthorizationToken where+ rnf GetAuthorizationToken' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf durationSeconds+ `Prelude.seq` Prelude.rnf domain++instance Data.ToHeaders GetAuthorizationToken where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetAuthorizationToken where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath GetAuthorizationToken where+ toPath = Prelude.const "/v1/authorization-token"++instance Data.ToQuery GetAuthorizationToken where+ toQuery GetAuthorizationToken' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "duration" Data.=: durationSeconds,+ "domain" Data.=: domain+ ]++-- | /See:/ 'newGetAuthorizationTokenResponse' smart constructor.+data GetAuthorizationTokenResponse = GetAuthorizationTokenResponse'+ { -- | The returned authentication token.+ authorizationToken :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that specifies the date and time the authorization token+ -- expires.+ expiration :: Prelude.Maybe Data.POSIX,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAuthorizationTokenResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'authorizationToken', 'getAuthorizationTokenResponse_authorizationToken' - The returned authentication token.+--+-- 'expiration', 'getAuthorizationTokenResponse_expiration' - A timestamp that specifies the date and time the authorization token+-- expires.+--+-- 'httpStatus', 'getAuthorizationTokenResponse_httpStatus' - The response's http status code.+newGetAuthorizationTokenResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetAuthorizationTokenResponse+newGetAuthorizationTokenResponse pHttpStatus_ =+ GetAuthorizationTokenResponse'+ { authorizationToken =+ Prelude.Nothing,+ expiration = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The returned authentication token.+getAuthorizationTokenResponse_authorizationToken :: Lens.Lens' GetAuthorizationTokenResponse (Prelude.Maybe Prelude.Text)+getAuthorizationTokenResponse_authorizationToken = Lens.lens (\GetAuthorizationTokenResponse' {authorizationToken} -> authorizationToken) (\s@GetAuthorizationTokenResponse' {} a -> s {authorizationToken = a} :: GetAuthorizationTokenResponse)++-- | A timestamp that specifies the date and time the authorization token+-- expires.+getAuthorizationTokenResponse_expiration :: Lens.Lens' GetAuthorizationTokenResponse (Prelude.Maybe Prelude.UTCTime)+getAuthorizationTokenResponse_expiration = Lens.lens (\GetAuthorizationTokenResponse' {expiration} -> expiration) (\s@GetAuthorizationTokenResponse' {} a -> s {expiration = a} :: GetAuthorizationTokenResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+getAuthorizationTokenResponse_httpStatus :: Lens.Lens' GetAuthorizationTokenResponse Prelude.Int+getAuthorizationTokenResponse_httpStatus = Lens.lens (\GetAuthorizationTokenResponse' {httpStatus} -> httpStatus) (\s@GetAuthorizationTokenResponse' {} a -> s {httpStatus = a} :: GetAuthorizationTokenResponse)++instance Prelude.NFData GetAuthorizationTokenResponse where+ rnf GetAuthorizationTokenResponse' {..} =+ Prelude.rnf authorizationToken+ `Prelude.seq` Prelude.rnf expiration+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/GetDomainPermissionsPolicy.hs view
@@ -0,0 +1,190 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.GetDomainPermissionsPolicy+-- 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 resource policy attached to the specified domain.+--+-- The policy is a resource-based policy, not an identity-based policy. For+-- more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_identity-vs-resource.html Identity-based policies and resource-based policies>+-- in the /IAM User Guide/.+module Amazonka.CodeArtifact.GetDomainPermissionsPolicy+ ( -- * Creating a Request+ GetDomainPermissionsPolicy (..),+ newGetDomainPermissionsPolicy,++ -- * Request Lenses+ getDomainPermissionsPolicy_domainOwner,+ getDomainPermissionsPolicy_domain,++ -- * Destructuring the Response+ GetDomainPermissionsPolicyResponse (..),+ newGetDomainPermissionsPolicyResponse,++ -- * Response Lenses+ getDomainPermissionsPolicyResponse_policy,+ getDomainPermissionsPolicyResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newGetDomainPermissionsPolicy' smart constructor.+data GetDomainPermissionsPolicy = GetDomainPermissionsPolicy'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain to which the resource policy is attached.+ domain :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDomainPermissionsPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'getDomainPermissionsPolicy_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'domain', 'getDomainPermissionsPolicy_domain' - The name of the domain to which the resource policy is attached.+newGetDomainPermissionsPolicy ::+ -- | 'domain'+ Prelude.Text ->+ GetDomainPermissionsPolicy+newGetDomainPermissionsPolicy pDomain_ =+ GetDomainPermissionsPolicy'+ { domainOwner =+ Prelude.Nothing,+ domain = pDomain_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+getDomainPermissionsPolicy_domainOwner :: Lens.Lens' GetDomainPermissionsPolicy (Prelude.Maybe Prelude.Text)+getDomainPermissionsPolicy_domainOwner = Lens.lens (\GetDomainPermissionsPolicy' {domainOwner} -> domainOwner) (\s@GetDomainPermissionsPolicy' {} a -> s {domainOwner = a} :: GetDomainPermissionsPolicy)++-- | The name of the domain to which the resource policy is attached.+getDomainPermissionsPolicy_domain :: Lens.Lens' GetDomainPermissionsPolicy Prelude.Text+getDomainPermissionsPolicy_domain = Lens.lens (\GetDomainPermissionsPolicy' {domain} -> domain) (\s@GetDomainPermissionsPolicy' {} a -> s {domain = a} :: GetDomainPermissionsPolicy)++instance Core.AWSRequest GetDomainPermissionsPolicy where+ type+ AWSResponse GetDomainPermissionsPolicy =+ GetDomainPermissionsPolicyResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetDomainPermissionsPolicyResponse'+ Prelude.<$> (x Data..?> "policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetDomainPermissionsPolicy where+ hashWithSalt _salt GetDomainPermissionsPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` domain++instance Prelude.NFData GetDomainPermissionsPolicy where+ rnf GetDomainPermissionsPolicy' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf domain++instance Data.ToHeaders GetDomainPermissionsPolicy where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetDomainPermissionsPolicy where+ toPath =+ Prelude.const "/v1/domain/permissions/policy"++instance Data.ToQuery GetDomainPermissionsPolicy where+ toQuery GetDomainPermissionsPolicy' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain+ ]++-- | /See:/ 'newGetDomainPermissionsPolicyResponse' smart constructor.+data GetDomainPermissionsPolicyResponse = GetDomainPermissionsPolicyResponse'+ { -- | The returned resource policy.+ policy :: Prelude.Maybe ResourcePolicy,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDomainPermissionsPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'getDomainPermissionsPolicyResponse_policy' - The returned resource policy.+--+-- 'httpStatus', 'getDomainPermissionsPolicyResponse_httpStatus' - The response's http status code.+newGetDomainPermissionsPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetDomainPermissionsPolicyResponse+newGetDomainPermissionsPolicyResponse pHttpStatus_ =+ GetDomainPermissionsPolicyResponse'+ { policy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The returned resource policy.+getDomainPermissionsPolicyResponse_policy :: Lens.Lens' GetDomainPermissionsPolicyResponse (Prelude.Maybe ResourcePolicy)+getDomainPermissionsPolicyResponse_policy = Lens.lens (\GetDomainPermissionsPolicyResponse' {policy} -> policy) (\s@GetDomainPermissionsPolicyResponse' {} a -> s {policy = a} :: GetDomainPermissionsPolicyResponse)++-- | The response's http status code.+getDomainPermissionsPolicyResponse_httpStatus :: Lens.Lens' GetDomainPermissionsPolicyResponse Prelude.Int+getDomainPermissionsPolicyResponse_httpStatus = Lens.lens (\GetDomainPermissionsPolicyResponse' {httpStatus} -> httpStatus) (\s@GetDomainPermissionsPolicyResponse' {} a -> s {httpStatus = a} :: GetDomainPermissionsPolicyResponse)++instance+ Prelude.NFData+ GetDomainPermissionsPolicyResponse+ where+ rnf GetDomainPermissionsPolicyResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/GetPackageVersionAsset.hs view
@@ -0,0 +1,367 @@+{-# 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.CodeArtifact.GetPackageVersionAsset+-- 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 an asset (or file) that is in a package. For example, for a+-- Maven package version, use @GetPackageVersionAsset@ to download a @JAR@+-- file, a @POM@ file, or any other assets in the package version.+module Amazonka.CodeArtifact.GetPackageVersionAsset+ ( -- * Creating a Request+ GetPackageVersionAsset (..),+ newGetPackageVersionAsset,++ -- * Request Lenses+ getPackageVersionAsset_domainOwner,+ getPackageVersionAsset_namespace,+ getPackageVersionAsset_packageVersionRevision,+ getPackageVersionAsset_domain,+ getPackageVersionAsset_repository,+ getPackageVersionAsset_format,+ getPackageVersionAsset_package,+ getPackageVersionAsset_packageVersion,+ getPackageVersionAsset_asset,++ -- * Destructuring the Response+ GetPackageVersionAssetResponse (..),+ newGetPackageVersionAssetResponse,++ -- * Response Lenses+ getPackageVersionAssetResponse_assetName,+ getPackageVersionAssetResponse_packageVersion,+ getPackageVersionAssetResponse_packageVersionRevision,+ getPackageVersionAssetResponse_httpStatus,+ getPackageVersionAssetResponse_asset,+ )+where++import Amazonka.CodeArtifact.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:/ 'newGetPackageVersionAsset' smart constructor.+data GetPackageVersionAsset = GetPackageVersionAsset'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The namespace of the package version with the requested asset file. The+ -- package version component that specifies its namespace depends on its+ -- type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The name of the package version revision that contains the requested+ -- asset.+ packageVersionRevision :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository that contains the+ -- package version with the requested asset.+ domain :: Prelude.Text,+ -- | The repository that contains the package version with the requested+ -- asset.+ repository :: Prelude.Text,+ -- | A format that specifies the type of the package version with the+ -- requested asset file.+ format :: PackageFormat,+ -- | The name of the package that contains the requested asset.+ package :: Prelude.Text,+ -- | A string that contains the package version (for example, @3.5.2@).+ packageVersion :: Prelude.Text,+ -- | The name of the requested asset.+ asset :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPackageVersionAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'getPackageVersionAsset_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'namespace', 'getPackageVersionAsset_namespace' - The namespace of the package version with the requested asset file. The+-- package version component that specifies its namespace depends on its+-- type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'packageVersionRevision', 'getPackageVersionAsset_packageVersionRevision' - The name of the package version revision that contains the requested+-- asset.+--+-- 'domain', 'getPackageVersionAsset_domain' - The name of the domain that contains the repository that contains the+-- package version with the requested asset.+--+-- 'repository', 'getPackageVersionAsset_repository' - The repository that contains the package version with the requested+-- asset.+--+-- 'format', 'getPackageVersionAsset_format' - A format that specifies the type of the package version with the+-- requested asset file.+--+-- 'package', 'getPackageVersionAsset_package' - The name of the package that contains the requested asset.+--+-- 'packageVersion', 'getPackageVersionAsset_packageVersion' - A string that contains the package version (for example, @3.5.2@).+--+-- 'asset', 'getPackageVersionAsset_asset' - The name of the requested asset.+newGetPackageVersionAsset ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ -- | 'packageVersion'+ Prelude.Text ->+ -- | 'asset'+ Prelude.Text ->+ GetPackageVersionAsset+newGetPackageVersionAsset+ pDomain_+ pRepository_+ pFormat_+ pPackage_+ pPackageVersion_+ pAsset_ =+ GetPackageVersionAsset'+ { domainOwner =+ Prelude.Nothing,+ namespace = Prelude.Nothing,+ packageVersionRevision = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_,+ packageVersion = pPackageVersion_,+ asset = pAsset_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+getPackageVersionAsset_domainOwner :: Lens.Lens' GetPackageVersionAsset (Prelude.Maybe Prelude.Text)+getPackageVersionAsset_domainOwner = Lens.lens (\GetPackageVersionAsset' {domainOwner} -> domainOwner) (\s@GetPackageVersionAsset' {} a -> s {domainOwner = a} :: GetPackageVersionAsset)++-- | The namespace of the package version with the requested asset file. The+-- package version component that specifies its namespace depends on its+-- type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+getPackageVersionAsset_namespace :: Lens.Lens' GetPackageVersionAsset (Prelude.Maybe Prelude.Text)+getPackageVersionAsset_namespace = Lens.lens (\GetPackageVersionAsset' {namespace} -> namespace) (\s@GetPackageVersionAsset' {} a -> s {namespace = a} :: GetPackageVersionAsset)++-- | The name of the package version revision that contains the requested+-- asset.+getPackageVersionAsset_packageVersionRevision :: Lens.Lens' GetPackageVersionAsset (Prelude.Maybe Prelude.Text)+getPackageVersionAsset_packageVersionRevision = Lens.lens (\GetPackageVersionAsset' {packageVersionRevision} -> packageVersionRevision) (\s@GetPackageVersionAsset' {} a -> s {packageVersionRevision = a} :: GetPackageVersionAsset)++-- | The name of the domain that contains the repository that contains the+-- package version with the requested asset.+getPackageVersionAsset_domain :: Lens.Lens' GetPackageVersionAsset Prelude.Text+getPackageVersionAsset_domain = Lens.lens (\GetPackageVersionAsset' {domain} -> domain) (\s@GetPackageVersionAsset' {} a -> s {domain = a} :: GetPackageVersionAsset)++-- | The repository that contains the package version with the requested+-- asset.+getPackageVersionAsset_repository :: Lens.Lens' GetPackageVersionAsset Prelude.Text+getPackageVersionAsset_repository = Lens.lens (\GetPackageVersionAsset' {repository} -> repository) (\s@GetPackageVersionAsset' {} a -> s {repository = a} :: GetPackageVersionAsset)++-- | A format that specifies the type of the package version with the+-- requested asset file.+getPackageVersionAsset_format :: Lens.Lens' GetPackageVersionAsset PackageFormat+getPackageVersionAsset_format = Lens.lens (\GetPackageVersionAsset' {format} -> format) (\s@GetPackageVersionAsset' {} a -> s {format = a} :: GetPackageVersionAsset)++-- | The name of the package that contains the requested asset.+getPackageVersionAsset_package :: Lens.Lens' GetPackageVersionAsset Prelude.Text+getPackageVersionAsset_package = Lens.lens (\GetPackageVersionAsset' {package} -> package) (\s@GetPackageVersionAsset' {} a -> s {package = a} :: GetPackageVersionAsset)++-- | A string that contains the package version (for example, @3.5.2@).+getPackageVersionAsset_packageVersion :: Lens.Lens' GetPackageVersionAsset Prelude.Text+getPackageVersionAsset_packageVersion = Lens.lens (\GetPackageVersionAsset' {packageVersion} -> packageVersion) (\s@GetPackageVersionAsset' {} a -> s {packageVersion = a} :: GetPackageVersionAsset)++-- | The name of the requested asset.+getPackageVersionAsset_asset :: Lens.Lens' GetPackageVersionAsset Prelude.Text+getPackageVersionAsset_asset = Lens.lens (\GetPackageVersionAsset' {asset} -> asset) (\s@GetPackageVersionAsset' {} a -> s {asset = a} :: GetPackageVersionAsset)++instance Core.AWSRequest GetPackageVersionAsset where+ type+ AWSResponse GetPackageVersionAsset =+ GetPackageVersionAssetResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveBody+ ( \s h x ->+ GetPackageVersionAssetResponse'+ Prelude.<$> (h Data..#? "X-AssetName")+ Prelude.<*> (h Data..#? "X-PackageVersion")+ Prelude.<*> (h Data..#? "X-PackageVersionRevision")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (Prelude.pure x)+ )++instance Prelude.Hashable GetPackageVersionAsset where+ hashWithSalt _salt GetPackageVersionAsset' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` packageVersionRevision+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package+ `Prelude.hashWithSalt` packageVersion+ `Prelude.hashWithSalt` asset++instance Prelude.NFData GetPackageVersionAsset where+ rnf GetPackageVersionAsset' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf packageVersionRevision+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf packageVersion+ `Prelude.seq` Prelude.rnf asset++instance Data.ToHeaders GetPackageVersionAsset where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetPackageVersionAsset where+ toPath = Prelude.const "/v1/package/version/asset"++instance Data.ToQuery GetPackageVersionAsset where+ toQuery GetPackageVersionAsset' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "namespace" Data.=: namespace,+ "revision" Data.=: packageVersionRevision,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package,+ "version" Data.=: packageVersion,+ "asset" Data.=: asset+ ]++-- | /See:/ 'newGetPackageVersionAssetResponse' smart constructor.+data GetPackageVersionAssetResponse = GetPackageVersionAssetResponse'+ { -- | The name of the asset that is downloaded.+ assetName :: Prelude.Maybe Prelude.Text,+ -- | A string that contains the package version (for example, @3.5.2@).+ packageVersion :: Prelude.Maybe Prelude.Text,+ -- | The name of the package version revision that contains the downloaded+ -- asset.+ packageVersionRevision :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The binary file, or asset, that is downloaded.+ asset :: Data.ResponseBody+ }+ deriving (Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPackageVersionAssetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetName', 'getPackageVersionAssetResponse_assetName' - The name of the asset that is downloaded.+--+-- 'packageVersion', 'getPackageVersionAssetResponse_packageVersion' - A string that contains the package version (for example, @3.5.2@).+--+-- 'packageVersionRevision', 'getPackageVersionAssetResponse_packageVersionRevision' - The name of the package version revision that contains the downloaded+-- asset.+--+-- 'httpStatus', 'getPackageVersionAssetResponse_httpStatus' - The response's http status code.+--+-- 'asset', 'getPackageVersionAssetResponse_asset' - The binary file, or asset, that is downloaded.+newGetPackageVersionAssetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'asset'+ Data.ResponseBody ->+ GetPackageVersionAssetResponse+newGetPackageVersionAssetResponse+ pHttpStatus_+ pAsset_ =+ GetPackageVersionAssetResponse'+ { assetName =+ Prelude.Nothing,+ packageVersion = Prelude.Nothing,+ packageVersionRevision = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ asset = pAsset_+ }++-- | The name of the asset that is downloaded.+getPackageVersionAssetResponse_assetName :: Lens.Lens' GetPackageVersionAssetResponse (Prelude.Maybe Prelude.Text)+getPackageVersionAssetResponse_assetName = Lens.lens (\GetPackageVersionAssetResponse' {assetName} -> assetName) (\s@GetPackageVersionAssetResponse' {} a -> s {assetName = a} :: GetPackageVersionAssetResponse)++-- | A string that contains the package version (for example, @3.5.2@).+getPackageVersionAssetResponse_packageVersion :: Lens.Lens' GetPackageVersionAssetResponse (Prelude.Maybe Prelude.Text)+getPackageVersionAssetResponse_packageVersion = Lens.lens (\GetPackageVersionAssetResponse' {packageVersion} -> packageVersion) (\s@GetPackageVersionAssetResponse' {} a -> s {packageVersion = a} :: GetPackageVersionAssetResponse)++-- | The name of the package version revision that contains the downloaded+-- asset.+getPackageVersionAssetResponse_packageVersionRevision :: Lens.Lens' GetPackageVersionAssetResponse (Prelude.Maybe Prelude.Text)+getPackageVersionAssetResponse_packageVersionRevision = Lens.lens (\GetPackageVersionAssetResponse' {packageVersionRevision} -> packageVersionRevision) (\s@GetPackageVersionAssetResponse' {} a -> s {packageVersionRevision = a} :: GetPackageVersionAssetResponse)++-- | The response's http status code.+getPackageVersionAssetResponse_httpStatus :: Lens.Lens' GetPackageVersionAssetResponse Prelude.Int+getPackageVersionAssetResponse_httpStatus = Lens.lens (\GetPackageVersionAssetResponse' {httpStatus} -> httpStatus) (\s@GetPackageVersionAssetResponse' {} a -> s {httpStatus = a} :: GetPackageVersionAssetResponse)++-- | The binary file, or asset, that is downloaded.+getPackageVersionAssetResponse_asset :: Lens.Lens' GetPackageVersionAssetResponse Data.ResponseBody+getPackageVersionAssetResponse_asset = Lens.lens (\GetPackageVersionAssetResponse' {asset} -> asset) (\s@GetPackageVersionAssetResponse' {} a -> s {asset = a} :: GetPackageVersionAssetResponse)
+ gen/Amazonka/CodeArtifact/GetPackageVersionReadme.hs view
@@ -0,0 +1,394 @@+{-# 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.CodeArtifact.GetPackageVersionReadme+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the readme file or descriptive text for a package version. For+-- packages that do not contain a readme file, CodeArtifact extracts a+-- description from a metadata file. For example, from the @\<description>@+-- element in the @pom.xml@ file of a Maven package.+--+-- The returned text might contain formatting. For example, it might+-- contain formatting for Markdown or reStructuredText.+module Amazonka.CodeArtifact.GetPackageVersionReadme+ ( -- * Creating a Request+ GetPackageVersionReadme (..),+ newGetPackageVersionReadme,++ -- * Request Lenses+ getPackageVersionReadme_domainOwner,+ getPackageVersionReadme_namespace,+ getPackageVersionReadme_domain,+ getPackageVersionReadme_repository,+ getPackageVersionReadme_format,+ getPackageVersionReadme_package,+ getPackageVersionReadme_packageVersion,++ -- * Destructuring the Response+ GetPackageVersionReadmeResponse (..),+ newGetPackageVersionReadmeResponse,++ -- * Response Lenses+ getPackageVersionReadmeResponse_format,+ getPackageVersionReadmeResponse_namespace,+ getPackageVersionReadmeResponse_package,+ getPackageVersionReadmeResponse_readme,+ getPackageVersionReadmeResponse_version,+ getPackageVersionReadmeResponse_versionRevision,+ getPackageVersionReadmeResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newGetPackageVersionReadme' smart constructor.+data GetPackageVersionReadme = GetPackageVersionReadme'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The namespace of the package version with the requested readme file. The+ -- package version component that specifies its namespace depends on its+ -- type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository that contains the+ -- package version with the requested readme file.+ domain :: Prelude.Text,+ -- | The repository that contains the package with the requested readme file.+ repository :: Prelude.Text,+ -- | A format that specifies the type of the package version with the+ -- requested readme file.+ format :: PackageFormat,+ -- | The name of the package version that contains the requested readme file.+ package :: Prelude.Text,+ -- | A string that contains the package version (for example, @3.5.2@).+ packageVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPackageVersionReadme' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'getPackageVersionReadme_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'namespace', 'getPackageVersionReadme_namespace' - The namespace of the package version with the requested readme file. The+-- package version component that specifies its namespace depends on its+-- type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'domain', 'getPackageVersionReadme_domain' - The name of the domain that contains the repository that contains the+-- package version with the requested readme file.+--+-- 'repository', 'getPackageVersionReadme_repository' - The repository that contains the package with the requested readme file.+--+-- 'format', 'getPackageVersionReadme_format' - A format that specifies the type of the package version with the+-- requested readme file.+--+-- 'package', 'getPackageVersionReadme_package' - The name of the package version that contains the requested readme file.+--+-- 'packageVersion', 'getPackageVersionReadme_packageVersion' - A string that contains the package version (for example, @3.5.2@).+newGetPackageVersionReadme ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ -- | 'packageVersion'+ Prelude.Text ->+ GetPackageVersionReadme+newGetPackageVersionReadme+ pDomain_+ pRepository_+ pFormat_+ pPackage_+ pPackageVersion_ =+ GetPackageVersionReadme'+ { domainOwner =+ Prelude.Nothing,+ namespace = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_,+ packageVersion = pPackageVersion_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+getPackageVersionReadme_domainOwner :: Lens.Lens' GetPackageVersionReadme (Prelude.Maybe Prelude.Text)+getPackageVersionReadme_domainOwner = Lens.lens (\GetPackageVersionReadme' {domainOwner} -> domainOwner) (\s@GetPackageVersionReadme' {} a -> s {domainOwner = a} :: GetPackageVersionReadme)++-- | The namespace of the package version with the requested readme file. The+-- package version component that specifies its namespace depends on its+-- type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+getPackageVersionReadme_namespace :: Lens.Lens' GetPackageVersionReadme (Prelude.Maybe Prelude.Text)+getPackageVersionReadme_namespace = Lens.lens (\GetPackageVersionReadme' {namespace} -> namespace) (\s@GetPackageVersionReadme' {} a -> s {namespace = a} :: GetPackageVersionReadme)++-- | The name of the domain that contains the repository that contains the+-- package version with the requested readme file.+getPackageVersionReadme_domain :: Lens.Lens' GetPackageVersionReadme Prelude.Text+getPackageVersionReadme_domain = Lens.lens (\GetPackageVersionReadme' {domain} -> domain) (\s@GetPackageVersionReadme' {} a -> s {domain = a} :: GetPackageVersionReadme)++-- | The repository that contains the package with the requested readme file.+getPackageVersionReadme_repository :: Lens.Lens' GetPackageVersionReadme Prelude.Text+getPackageVersionReadme_repository = Lens.lens (\GetPackageVersionReadme' {repository} -> repository) (\s@GetPackageVersionReadme' {} a -> s {repository = a} :: GetPackageVersionReadme)++-- | A format that specifies the type of the package version with the+-- requested readme file.+getPackageVersionReadme_format :: Lens.Lens' GetPackageVersionReadme PackageFormat+getPackageVersionReadme_format = Lens.lens (\GetPackageVersionReadme' {format} -> format) (\s@GetPackageVersionReadme' {} a -> s {format = a} :: GetPackageVersionReadme)++-- | The name of the package version that contains the requested readme file.+getPackageVersionReadme_package :: Lens.Lens' GetPackageVersionReadme Prelude.Text+getPackageVersionReadme_package = Lens.lens (\GetPackageVersionReadme' {package} -> package) (\s@GetPackageVersionReadme' {} a -> s {package = a} :: GetPackageVersionReadme)++-- | A string that contains the package version (for example, @3.5.2@).+getPackageVersionReadme_packageVersion :: Lens.Lens' GetPackageVersionReadme Prelude.Text+getPackageVersionReadme_packageVersion = Lens.lens (\GetPackageVersionReadme' {packageVersion} -> packageVersion) (\s@GetPackageVersionReadme' {} a -> s {packageVersion = a} :: GetPackageVersionReadme)++instance Core.AWSRequest GetPackageVersionReadme where+ type+ AWSResponse GetPackageVersionReadme =+ GetPackageVersionReadmeResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetPackageVersionReadmeResponse'+ Prelude.<$> (x Data..?> "format")+ Prelude.<*> (x Data..?> "namespace")+ Prelude.<*> (x Data..?> "package")+ Prelude.<*> (x Data..?> "readme")+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (x Data..?> "versionRevision")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetPackageVersionReadme where+ hashWithSalt _salt GetPackageVersionReadme' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package+ `Prelude.hashWithSalt` packageVersion++instance Prelude.NFData GetPackageVersionReadme where+ rnf GetPackageVersionReadme' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf packageVersion++instance Data.ToHeaders GetPackageVersionReadme where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetPackageVersionReadme where+ toPath = Prelude.const "/v1/package/version/readme"++instance Data.ToQuery GetPackageVersionReadme where+ toQuery GetPackageVersionReadme' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "namespace" Data.=: namespace,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package,+ "version" Data.=: packageVersion+ ]++-- | /See:/ 'newGetPackageVersionReadmeResponse' smart constructor.+data GetPackageVersionReadmeResponse = GetPackageVersionReadmeResponse'+ { -- | The format of the package with the requested readme file.+ format :: Prelude.Maybe PackageFormat,+ -- | The namespace of the package version with the requested readme file. The+ -- package version component that specifies its namespace depends on its+ -- type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The name of the package that contains the returned readme file.+ package :: Prelude.Maybe Prelude.Text,+ -- | The text of the returned readme file.+ readme :: Prelude.Maybe Prelude.Text,+ -- | The version of the package with the requested readme file.+ version :: Prelude.Maybe Prelude.Text,+ -- | The current revision associated with the package version.+ versionRevision :: 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 'GetPackageVersionReadmeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'format', 'getPackageVersionReadmeResponse_format' - The format of the package with the requested readme file.+--+-- 'namespace', 'getPackageVersionReadmeResponse_namespace' - The namespace of the package version with the requested readme file. The+-- package version component that specifies its namespace depends on its+-- type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'package', 'getPackageVersionReadmeResponse_package' - The name of the package that contains the returned readme file.+--+-- 'readme', 'getPackageVersionReadmeResponse_readme' - The text of the returned readme file.+--+-- 'version', 'getPackageVersionReadmeResponse_version' - The version of the package with the requested readme file.+--+-- 'versionRevision', 'getPackageVersionReadmeResponse_versionRevision' - The current revision associated with the package version.+--+-- 'httpStatus', 'getPackageVersionReadmeResponse_httpStatus' - The response's http status code.+newGetPackageVersionReadmeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetPackageVersionReadmeResponse+newGetPackageVersionReadmeResponse pHttpStatus_ =+ GetPackageVersionReadmeResponse'+ { format =+ Prelude.Nothing,+ namespace = Prelude.Nothing,+ package = Prelude.Nothing,+ readme = Prelude.Nothing,+ version = Prelude.Nothing,+ versionRevision = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The format of the package with the requested readme file.+getPackageVersionReadmeResponse_format :: Lens.Lens' GetPackageVersionReadmeResponse (Prelude.Maybe PackageFormat)+getPackageVersionReadmeResponse_format = Lens.lens (\GetPackageVersionReadmeResponse' {format} -> format) (\s@GetPackageVersionReadmeResponse' {} a -> s {format = a} :: GetPackageVersionReadmeResponse)++-- | The namespace of the package version with the requested readme file. The+-- package version component that specifies its namespace depends on its+-- type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+getPackageVersionReadmeResponse_namespace :: Lens.Lens' GetPackageVersionReadmeResponse (Prelude.Maybe Prelude.Text)+getPackageVersionReadmeResponse_namespace = Lens.lens (\GetPackageVersionReadmeResponse' {namespace} -> namespace) (\s@GetPackageVersionReadmeResponse' {} a -> s {namespace = a} :: GetPackageVersionReadmeResponse)++-- | The name of the package that contains the returned readme file.+getPackageVersionReadmeResponse_package :: Lens.Lens' GetPackageVersionReadmeResponse (Prelude.Maybe Prelude.Text)+getPackageVersionReadmeResponse_package = Lens.lens (\GetPackageVersionReadmeResponse' {package} -> package) (\s@GetPackageVersionReadmeResponse' {} a -> s {package = a} :: GetPackageVersionReadmeResponse)++-- | The text of the returned readme file.+getPackageVersionReadmeResponse_readme :: Lens.Lens' GetPackageVersionReadmeResponse (Prelude.Maybe Prelude.Text)+getPackageVersionReadmeResponse_readme = Lens.lens (\GetPackageVersionReadmeResponse' {readme} -> readme) (\s@GetPackageVersionReadmeResponse' {} a -> s {readme = a} :: GetPackageVersionReadmeResponse)++-- | The version of the package with the requested readme file.+getPackageVersionReadmeResponse_version :: Lens.Lens' GetPackageVersionReadmeResponse (Prelude.Maybe Prelude.Text)+getPackageVersionReadmeResponse_version = Lens.lens (\GetPackageVersionReadmeResponse' {version} -> version) (\s@GetPackageVersionReadmeResponse' {} a -> s {version = a} :: GetPackageVersionReadmeResponse)++-- | The current revision associated with the package version.+getPackageVersionReadmeResponse_versionRevision :: Lens.Lens' GetPackageVersionReadmeResponse (Prelude.Maybe Prelude.Text)+getPackageVersionReadmeResponse_versionRevision = Lens.lens (\GetPackageVersionReadmeResponse' {versionRevision} -> versionRevision) (\s@GetPackageVersionReadmeResponse' {} a -> s {versionRevision = a} :: GetPackageVersionReadmeResponse)++-- | The response's http status code.+getPackageVersionReadmeResponse_httpStatus :: Lens.Lens' GetPackageVersionReadmeResponse Prelude.Int+getPackageVersionReadmeResponse_httpStatus = Lens.lens (\GetPackageVersionReadmeResponse' {httpStatus} -> httpStatus) (\s@GetPackageVersionReadmeResponse' {} a -> s {httpStatus = a} :: GetPackageVersionReadmeResponse)++instance+ Prelude.NFData+ GetPackageVersionReadmeResponse+ where+ rnf GetPackageVersionReadmeResponse' {..} =+ Prelude.rnf format+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf readme+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf versionRevision+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/GetRepositoryEndpoint.hs view
@@ -0,0 +1,229 @@+{-# 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.CodeArtifact.GetRepositoryEndpoint+-- 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 endpoint of a repository for a specific package format. A+-- repository has one endpoint for each package format:+--+-- - @maven@+--+-- - @npm@+--+-- - @nuget@+--+-- - @pypi@+module Amazonka.CodeArtifact.GetRepositoryEndpoint+ ( -- * Creating a Request+ GetRepositoryEndpoint (..),+ newGetRepositoryEndpoint,++ -- * Request Lenses+ getRepositoryEndpoint_domainOwner,+ getRepositoryEndpoint_domain,+ getRepositoryEndpoint_repository,+ getRepositoryEndpoint_format,++ -- * Destructuring the Response+ GetRepositoryEndpointResponse (..),+ newGetRepositoryEndpointResponse,++ -- * Response Lenses+ getRepositoryEndpointResponse_repositoryEndpoint,+ getRepositoryEndpointResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newGetRepositoryEndpoint' smart constructor.+data GetRepositoryEndpoint = GetRepositoryEndpoint'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain that contains the repository. It does not include dashes or+ -- spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository.+ domain :: Prelude.Text,+ -- | The name of the repository.+ repository :: Prelude.Text,+ -- | Returns which endpoint of a repository to return. A repository has one+ -- endpoint for each package format.+ format :: PackageFormat+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRepositoryEndpoint' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'getRepositoryEndpoint_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain that contains the repository. It does not include dashes or+-- spaces.+--+-- 'domain', 'getRepositoryEndpoint_domain' - The name of the domain that contains the repository.+--+-- 'repository', 'getRepositoryEndpoint_repository' - The name of the repository.+--+-- 'format', 'getRepositoryEndpoint_format' - Returns which endpoint of a repository to return. A repository has one+-- endpoint for each package format.+newGetRepositoryEndpoint ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ GetRepositoryEndpoint+newGetRepositoryEndpoint+ pDomain_+ pRepository_+ pFormat_ =+ GetRepositoryEndpoint'+ { domainOwner =+ Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain that contains the repository. It does not include dashes or+-- spaces.+getRepositoryEndpoint_domainOwner :: Lens.Lens' GetRepositoryEndpoint (Prelude.Maybe Prelude.Text)+getRepositoryEndpoint_domainOwner = Lens.lens (\GetRepositoryEndpoint' {domainOwner} -> domainOwner) (\s@GetRepositoryEndpoint' {} a -> s {domainOwner = a} :: GetRepositoryEndpoint)++-- | The name of the domain that contains the repository.+getRepositoryEndpoint_domain :: Lens.Lens' GetRepositoryEndpoint Prelude.Text+getRepositoryEndpoint_domain = Lens.lens (\GetRepositoryEndpoint' {domain} -> domain) (\s@GetRepositoryEndpoint' {} a -> s {domain = a} :: GetRepositoryEndpoint)++-- | The name of the repository.+getRepositoryEndpoint_repository :: Lens.Lens' GetRepositoryEndpoint Prelude.Text+getRepositoryEndpoint_repository = Lens.lens (\GetRepositoryEndpoint' {repository} -> repository) (\s@GetRepositoryEndpoint' {} a -> s {repository = a} :: GetRepositoryEndpoint)++-- | Returns which endpoint of a repository to return. A repository has one+-- endpoint for each package format.+getRepositoryEndpoint_format :: Lens.Lens' GetRepositoryEndpoint PackageFormat+getRepositoryEndpoint_format = Lens.lens (\GetRepositoryEndpoint' {format} -> format) (\s@GetRepositoryEndpoint' {} a -> s {format = a} :: GetRepositoryEndpoint)++instance Core.AWSRequest GetRepositoryEndpoint where+ type+ AWSResponse GetRepositoryEndpoint =+ GetRepositoryEndpointResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetRepositoryEndpointResponse'+ Prelude.<$> (x Data..?> "repositoryEndpoint")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetRepositoryEndpoint where+ hashWithSalt _salt GetRepositoryEndpoint' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format++instance Prelude.NFData GetRepositoryEndpoint where+ rnf GetRepositoryEndpoint' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format++instance Data.ToHeaders GetRepositoryEndpoint where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetRepositoryEndpoint where+ toPath = Prelude.const "/v1/repository/endpoint"++instance Data.ToQuery GetRepositoryEndpoint where+ toQuery GetRepositoryEndpoint' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format+ ]++-- | /See:/ 'newGetRepositoryEndpointResponse' smart constructor.+data GetRepositoryEndpointResponse = GetRepositoryEndpointResponse'+ { -- | A string that specifies the URL of the returned endpoint.+ repositoryEndpoint :: 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 'GetRepositoryEndpointResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'repositoryEndpoint', 'getRepositoryEndpointResponse_repositoryEndpoint' - A string that specifies the URL of the returned endpoint.+--+-- 'httpStatus', 'getRepositoryEndpointResponse_httpStatus' - The response's http status code.+newGetRepositoryEndpointResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetRepositoryEndpointResponse+newGetRepositoryEndpointResponse pHttpStatus_ =+ GetRepositoryEndpointResponse'+ { repositoryEndpoint =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A string that specifies the URL of the returned endpoint.+getRepositoryEndpointResponse_repositoryEndpoint :: Lens.Lens' GetRepositoryEndpointResponse (Prelude.Maybe Prelude.Text)+getRepositoryEndpointResponse_repositoryEndpoint = Lens.lens (\GetRepositoryEndpointResponse' {repositoryEndpoint} -> repositoryEndpoint) (\s@GetRepositoryEndpointResponse' {} a -> s {repositoryEndpoint = a} :: GetRepositoryEndpointResponse)++-- | The response's http status code.+getRepositoryEndpointResponse_httpStatus :: Lens.Lens' GetRepositoryEndpointResponse Prelude.Int+getRepositoryEndpointResponse_httpStatus = Lens.lens (\GetRepositoryEndpointResponse' {httpStatus} -> httpStatus) (\s@GetRepositoryEndpointResponse' {} a -> s {httpStatus = a} :: GetRepositoryEndpointResponse)++instance Prelude.NFData GetRepositoryEndpointResponse where+ rnf GetRepositoryEndpointResponse' {..} =+ Prelude.rnf repositoryEndpoint+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/GetRepositoryPermissionsPolicy.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.CodeArtifact.GetRepositoryPermissionsPolicy+-- 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 resource policy that is set on a repository.+module Amazonka.CodeArtifact.GetRepositoryPermissionsPolicy+ ( -- * Creating a Request+ GetRepositoryPermissionsPolicy (..),+ newGetRepositoryPermissionsPolicy,++ -- * Request Lenses+ getRepositoryPermissionsPolicy_domainOwner,+ getRepositoryPermissionsPolicy_domain,+ getRepositoryPermissionsPolicy_repository,++ -- * Destructuring the Response+ GetRepositoryPermissionsPolicyResponse (..),+ newGetRepositoryPermissionsPolicyResponse,++ -- * Response Lenses+ getRepositoryPermissionsPolicyResponse_policy,+ getRepositoryPermissionsPolicyResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newGetRepositoryPermissionsPolicy' smart constructor.+data GetRepositoryPermissionsPolicy = GetRepositoryPermissionsPolicy'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain containing the repository whose associated+ -- resource policy is to be retrieved.+ domain :: Prelude.Text,+ -- | The name of the repository whose associated resource policy is to be+ -- retrieved.+ repository :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRepositoryPermissionsPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'getRepositoryPermissionsPolicy_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'domain', 'getRepositoryPermissionsPolicy_domain' - The name of the domain containing the repository whose associated+-- resource policy is to be retrieved.+--+-- 'repository', 'getRepositoryPermissionsPolicy_repository' - The name of the repository whose associated resource policy is to be+-- retrieved.+newGetRepositoryPermissionsPolicy ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ GetRepositoryPermissionsPolicy+newGetRepositoryPermissionsPolicy+ pDomain_+ pRepository_ =+ GetRepositoryPermissionsPolicy'+ { domainOwner =+ Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+getRepositoryPermissionsPolicy_domainOwner :: Lens.Lens' GetRepositoryPermissionsPolicy (Prelude.Maybe Prelude.Text)+getRepositoryPermissionsPolicy_domainOwner = Lens.lens (\GetRepositoryPermissionsPolicy' {domainOwner} -> domainOwner) (\s@GetRepositoryPermissionsPolicy' {} a -> s {domainOwner = a} :: GetRepositoryPermissionsPolicy)++-- | The name of the domain containing the repository whose associated+-- resource policy is to be retrieved.+getRepositoryPermissionsPolicy_domain :: Lens.Lens' GetRepositoryPermissionsPolicy Prelude.Text+getRepositoryPermissionsPolicy_domain = Lens.lens (\GetRepositoryPermissionsPolicy' {domain} -> domain) (\s@GetRepositoryPermissionsPolicy' {} a -> s {domain = a} :: GetRepositoryPermissionsPolicy)++-- | The name of the repository whose associated resource policy is to be+-- retrieved.+getRepositoryPermissionsPolicy_repository :: Lens.Lens' GetRepositoryPermissionsPolicy Prelude.Text+getRepositoryPermissionsPolicy_repository = Lens.lens (\GetRepositoryPermissionsPolicy' {repository} -> repository) (\s@GetRepositoryPermissionsPolicy' {} a -> s {repository = a} :: GetRepositoryPermissionsPolicy)++instance+ Core.AWSRequest+ GetRepositoryPermissionsPolicy+ where+ type+ AWSResponse GetRepositoryPermissionsPolicy =+ GetRepositoryPermissionsPolicyResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetRepositoryPermissionsPolicyResponse'+ Prelude.<$> (x Data..?> "policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ GetRepositoryPermissionsPolicy+ where+ hashWithSalt+ _salt+ GetRepositoryPermissionsPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository++instance+ Prelude.NFData+ GetRepositoryPermissionsPolicy+ where+ rnf GetRepositoryPermissionsPolicy' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository++instance+ Data.ToHeaders+ GetRepositoryPermissionsPolicy+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetRepositoryPermissionsPolicy where+ toPath =+ Prelude.const "/v1/repository/permissions/policy"++instance Data.ToQuery GetRepositoryPermissionsPolicy where+ toQuery GetRepositoryPermissionsPolicy' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain,+ "repository" Data.=: repository+ ]++-- | /See:/ 'newGetRepositoryPermissionsPolicyResponse' smart constructor.+data GetRepositoryPermissionsPolicyResponse = GetRepositoryPermissionsPolicyResponse'+ { -- | The returned resource policy.+ policy :: Prelude.Maybe ResourcePolicy,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRepositoryPermissionsPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'getRepositoryPermissionsPolicyResponse_policy' - The returned resource policy.+--+-- 'httpStatus', 'getRepositoryPermissionsPolicyResponse_httpStatus' - The response's http status code.+newGetRepositoryPermissionsPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetRepositoryPermissionsPolicyResponse+newGetRepositoryPermissionsPolicyResponse+ pHttpStatus_ =+ GetRepositoryPermissionsPolicyResponse'+ { policy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The returned resource policy.+getRepositoryPermissionsPolicyResponse_policy :: Lens.Lens' GetRepositoryPermissionsPolicyResponse (Prelude.Maybe ResourcePolicy)+getRepositoryPermissionsPolicyResponse_policy = Lens.lens (\GetRepositoryPermissionsPolicyResponse' {policy} -> policy) (\s@GetRepositoryPermissionsPolicyResponse' {} a -> s {policy = a} :: GetRepositoryPermissionsPolicyResponse)++-- | The response's http status code.+getRepositoryPermissionsPolicyResponse_httpStatus :: Lens.Lens' GetRepositoryPermissionsPolicyResponse Prelude.Int+getRepositoryPermissionsPolicyResponse_httpStatus = Lens.lens (\GetRepositoryPermissionsPolicyResponse' {httpStatus} -> httpStatus) (\s@GetRepositoryPermissionsPolicyResponse' {} a -> s {httpStatus = a} :: GetRepositoryPermissionsPolicyResponse)++instance+ Prelude.NFData+ GetRepositoryPermissionsPolicyResponse+ where+ rnf GetRepositoryPermissionsPolicyResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/Lens.hs view
@@ -0,0 +1,570 @@+{-# 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.CodeArtifact.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.CodeArtifact.Lens+ ( -- * Operations++ -- ** AssociateExternalConnection+ associateExternalConnection_domainOwner,+ associateExternalConnection_domain,+ associateExternalConnection_repository,+ associateExternalConnection_externalConnection,+ associateExternalConnectionResponse_repository,+ associateExternalConnectionResponse_httpStatus,++ -- ** CopyPackageVersions+ copyPackageVersions_allowOverwrite,+ copyPackageVersions_domainOwner,+ copyPackageVersions_includeFromUpstream,+ copyPackageVersions_namespace,+ copyPackageVersions_versionRevisions,+ copyPackageVersions_versions,+ copyPackageVersions_domain,+ copyPackageVersions_sourceRepository,+ copyPackageVersions_destinationRepository,+ copyPackageVersions_format,+ copyPackageVersions_package,+ copyPackageVersionsResponse_failedVersions,+ copyPackageVersionsResponse_successfulVersions,+ copyPackageVersionsResponse_httpStatus,++ -- ** CreateDomain+ createDomain_encryptionKey,+ createDomain_tags,+ createDomain_domain,+ createDomainResponse_domain,+ createDomainResponse_httpStatus,++ -- ** CreateRepository+ createRepository_description,+ createRepository_domainOwner,+ createRepository_tags,+ createRepository_upstreams,+ createRepository_domain,+ createRepository_repository,+ createRepositoryResponse_repository,+ createRepositoryResponse_httpStatus,++ -- ** DeleteDomain+ deleteDomain_domainOwner,+ deleteDomain_domain,+ deleteDomainResponse_domain,+ deleteDomainResponse_httpStatus,++ -- ** DeleteDomainPermissionsPolicy+ deleteDomainPermissionsPolicy_domainOwner,+ deleteDomainPermissionsPolicy_policyRevision,+ deleteDomainPermissionsPolicy_domain,+ deleteDomainPermissionsPolicyResponse_policy,+ deleteDomainPermissionsPolicyResponse_httpStatus,++ -- ** DeletePackageVersions+ deletePackageVersions_domainOwner,+ deletePackageVersions_expectedStatus,+ deletePackageVersions_namespace,+ deletePackageVersions_domain,+ deletePackageVersions_repository,+ deletePackageVersions_format,+ deletePackageVersions_package,+ deletePackageVersions_versions,+ deletePackageVersionsResponse_failedVersions,+ deletePackageVersionsResponse_successfulVersions,+ deletePackageVersionsResponse_httpStatus,++ -- ** DeleteRepository+ deleteRepository_domainOwner,+ deleteRepository_domain,+ deleteRepository_repository,+ deleteRepositoryResponse_repository,+ deleteRepositoryResponse_httpStatus,++ -- ** DeleteRepositoryPermissionsPolicy+ deleteRepositoryPermissionsPolicy_domainOwner,+ deleteRepositoryPermissionsPolicy_policyRevision,+ deleteRepositoryPermissionsPolicy_domain,+ deleteRepositoryPermissionsPolicy_repository,+ deleteRepositoryPermissionsPolicyResponse_policy,+ deleteRepositoryPermissionsPolicyResponse_httpStatus,++ -- ** DescribeDomain+ describeDomain_domainOwner,+ describeDomain_domain,+ describeDomainResponse_domain,+ describeDomainResponse_httpStatus,++ -- ** DescribePackage+ describePackage_domainOwner,+ describePackage_namespace,+ describePackage_domain,+ describePackage_repository,+ describePackage_format,+ describePackage_package,+ describePackageResponse_httpStatus,+ describePackageResponse_package,++ -- ** DescribePackageVersion+ describePackageVersion_domainOwner,+ describePackageVersion_namespace,+ describePackageVersion_domain,+ describePackageVersion_repository,+ describePackageVersion_format,+ describePackageVersion_package,+ describePackageVersion_packageVersion,+ describePackageVersionResponse_httpStatus,+ describePackageVersionResponse_packageVersion,++ -- ** DescribeRepository+ describeRepository_domainOwner,+ describeRepository_domain,+ describeRepository_repository,+ describeRepositoryResponse_repository,+ describeRepositoryResponse_httpStatus,++ -- ** DisassociateExternalConnection+ disassociateExternalConnection_domainOwner,+ disassociateExternalConnection_domain,+ disassociateExternalConnection_repository,+ disassociateExternalConnection_externalConnection,+ disassociateExternalConnectionResponse_repository,+ disassociateExternalConnectionResponse_httpStatus,++ -- ** DisposePackageVersions+ disposePackageVersions_domainOwner,+ disposePackageVersions_expectedStatus,+ disposePackageVersions_namespace,+ disposePackageVersions_versionRevisions,+ disposePackageVersions_domain,+ disposePackageVersions_repository,+ disposePackageVersions_format,+ disposePackageVersions_package,+ disposePackageVersions_versions,+ disposePackageVersionsResponse_failedVersions,+ disposePackageVersionsResponse_successfulVersions,+ disposePackageVersionsResponse_httpStatus,++ -- ** GetAuthorizationToken+ getAuthorizationToken_domainOwner,+ getAuthorizationToken_durationSeconds,+ getAuthorizationToken_domain,+ getAuthorizationTokenResponse_authorizationToken,+ getAuthorizationTokenResponse_expiration,+ getAuthorizationTokenResponse_httpStatus,++ -- ** GetDomainPermissionsPolicy+ getDomainPermissionsPolicy_domainOwner,+ getDomainPermissionsPolicy_domain,+ getDomainPermissionsPolicyResponse_policy,+ getDomainPermissionsPolicyResponse_httpStatus,++ -- ** GetPackageVersionAsset+ getPackageVersionAsset_domainOwner,+ getPackageVersionAsset_namespace,+ getPackageVersionAsset_packageVersionRevision,+ getPackageVersionAsset_domain,+ getPackageVersionAsset_repository,+ getPackageVersionAsset_format,+ getPackageVersionAsset_package,+ getPackageVersionAsset_packageVersion,+ getPackageVersionAsset_asset,+ getPackageVersionAssetResponse_assetName,+ getPackageVersionAssetResponse_packageVersion,+ getPackageVersionAssetResponse_packageVersionRevision,+ getPackageVersionAssetResponse_httpStatus,+ getPackageVersionAssetResponse_asset,++ -- ** GetPackageVersionReadme+ getPackageVersionReadme_domainOwner,+ getPackageVersionReadme_namespace,+ getPackageVersionReadme_domain,+ getPackageVersionReadme_repository,+ getPackageVersionReadme_format,+ getPackageVersionReadme_package,+ getPackageVersionReadme_packageVersion,+ getPackageVersionReadmeResponse_format,+ getPackageVersionReadmeResponse_namespace,+ getPackageVersionReadmeResponse_package,+ getPackageVersionReadmeResponse_readme,+ getPackageVersionReadmeResponse_version,+ getPackageVersionReadmeResponse_versionRevision,+ getPackageVersionReadmeResponse_httpStatus,++ -- ** GetRepositoryEndpoint+ getRepositoryEndpoint_domainOwner,+ getRepositoryEndpoint_domain,+ getRepositoryEndpoint_repository,+ getRepositoryEndpoint_format,+ getRepositoryEndpointResponse_repositoryEndpoint,+ getRepositoryEndpointResponse_httpStatus,++ -- ** GetRepositoryPermissionsPolicy+ getRepositoryPermissionsPolicy_domainOwner,+ getRepositoryPermissionsPolicy_domain,+ getRepositoryPermissionsPolicy_repository,+ getRepositoryPermissionsPolicyResponse_policy,+ getRepositoryPermissionsPolicyResponse_httpStatus,++ -- ** ListDomains+ listDomains_maxResults,+ listDomains_nextToken,+ listDomainsResponse_domains,+ listDomainsResponse_nextToken,+ listDomainsResponse_httpStatus,++ -- ** ListPackageVersionAssets+ listPackageVersionAssets_domainOwner,+ listPackageVersionAssets_maxResults,+ listPackageVersionAssets_namespace,+ listPackageVersionAssets_nextToken,+ listPackageVersionAssets_domain,+ listPackageVersionAssets_repository,+ listPackageVersionAssets_format,+ listPackageVersionAssets_package,+ listPackageVersionAssets_packageVersion,+ listPackageVersionAssetsResponse_assets,+ listPackageVersionAssetsResponse_format,+ listPackageVersionAssetsResponse_namespace,+ listPackageVersionAssetsResponse_nextToken,+ listPackageVersionAssetsResponse_package,+ listPackageVersionAssetsResponse_version,+ listPackageVersionAssetsResponse_versionRevision,+ listPackageVersionAssetsResponse_httpStatus,++ -- ** ListPackageVersionDependencies+ listPackageVersionDependencies_domainOwner,+ listPackageVersionDependencies_namespace,+ listPackageVersionDependencies_nextToken,+ listPackageVersionDependencies_domain,+ listPackageVersionDependencies_repository,+ listPackageVersionDependencies_format,+ listPackageVersionDependencies_package,+ listPackageVersionDependencies_packageVersion,+ listPackageVersionDependenciesResponse_dependencies,+ listPackageVersionDependenciesResponse_format,+ listPackageVersionDependenciesResponse_namespace,+ listPackageVersionDependenciesResponse_nextToken,+ listPackageVersionDependenciesResponse_package,+ listPackageVersionDependenciesResponse_version,+ listPackageVersionDependenciesResponse_versionRevision,+ listPackageVersionDependenciesResponse_httpStatus,++ -- ** ListPackageVersions+ listPackageVersions_domainOwner,+ listPackageVersions_maxResults,+ listPackageVersions_namespace,+ listPackageVersions_nextToken,+ listPackageVersions_originType,+ listPackageVersions_sortBy,+ listPackageVersions_status,+ listPackageVersions_domain,+ listPackageVersions_repository,+ listPackageVersions_format,+ listPackageVersions_package,+ listPackageVersionsResponse_defaultDisplayVersion,+ listPackageVersionsResponse_format,+ listPackageVersionsResponse_namespace,+ listPackageVersionsResponse_nextToken,+ listPackageVersionsResponse_package,+ listPackageVersionsResponse_versions,+ listPackageVersionsResponse_httpStatus,++ -- ** ListPackages+ listPackages_domainOwner,+ listPackages_format,+ listPackages_maxResults,+ listPackages_namespace,+ listPackages_nextToken,+ listPackages_packagePrefix,+ listPackages_publish,+ listPackages_upstream,+ listPackages_domain,+ listPackages_repository,+ listPackagesResponse_nextToken,+ listPackagesResponse_packages,+ listPackagesResponse_httpStatus,++ -- ** ListRepositories+ listRepositories_maxResults,+ listRepositories_nextToken,+ listRepositories_repositoryPrefix,+ listRepositoriesResponse_nextToken,+ listRepositoriesResponse_repositories,+ listRepositoriesResponse_httpStatus,++ -- ** ListRepositoriesInDomain+ listRepositoriesInDomain_administratorAccount,+ listRepositoriesInDomain_domainOwner,+ listRepositoriesInDomain_maxResults,+ listRepositoriesInDomain_nextToken,+ listRepositoriesInDomain_repositoryPrefix,+ listRepositoriesInDomain_domain,+ listRepositoriesInDomainResponse_nextToken,+ listRepositoriesInDomainResponse_repositories,+ listRepositoriesInDomainResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** PutDomainPermissionsPolicy+ putDomainPermissionsPolicy_domainOwner,+ putDomainPermissionsPolicy_policyRevision,+ putDomainPermissionsPolicy_domain,+ putDomainPermissionsPolicy_policyDocument,+ putDomainPermissionsPolicyResponse_policy,+ putDomainPermissionsPolicyResponse_httpStatus,++ -- ** PutPackageOriginConfiguration+ putPackageOriginConfiguration_domainOwner,+ putPackageOriginConfiguration_namespace,+ putPackageOriginConfiguration_domain,+ putPackageOriginConfiguration_repository,+ putPackageOriginConfiguration_format,+ putPackageOriginConfiguration_package,+ putPackageOriginConfiguration_restrictions,+ putPackageOriginConfigurationResponse_originConfiguration,+ putPackageOriginConfigurationResponse_httpStatus,++ -- ** PutRepositoryPermissionsPolicy+ putRepositoryPermissionsPolicy_domainOwner,+ putRepositoryPermissionsPolicy_policyRevision,+ putRepositoryPermissionsPolicy_domain,+ putRepositoryPermissionsPolicy_repository,+ putRepositoryPermissionsPolicy_policyDocument,+ putRepositoryPermissionsPolicyResponse_policy,+ putRepositoryPermissionsPolicyResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceArn,+ tagResource_tags,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_resourceArn,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- ** UpdatePackageVersionsStatus+ updatePackageVersionsStatus_domainOwner,+ updatePackageVersionsStatus_expectedStatus,+ updatePackageVersionsStatus_namespace,+ updatePackageVersionsStatus_versionRevisions,+ updatePackageVersionsStatus_domain,+ updatePackageVersionsStatus_repository,+ updatePackageVersionsStatus_format,+ updatePackageVersionsStatus_package,+ updatePackageVersionsStatus_versions,+ updatePackageVersionsStatus_targetStatus,+ updatePackageVersionsStatusResponse_failedVersions,+ updatePackageVersionsStatusResponse_successfulVersions,+ updatePackageVersionsStatusResponse_httpStatus,++ -- ** UpdateRepository+ updateRepository_description,+ updateRepository_domainOwner,+ updateRepository_upstreams,+ updateRepository_domain,+ updateRepository_repository,+ updateRepositoryResponse_repository,+ updateRepositoryResponse_httpStatus,++ -- * Types++ -- ** AssetSummary+ assetSummary_hashes,+ assetSummary_size,+ assetSummary_name,++ -- ** DomainDescription+ domainDescription_arn,+ domainDescription_assetSizeBytes,+ domainDescription_createdTime,+ domainDescription_encryptionKey,+ domainDescription_name,+ domainDescription_owner,+ domainDescription_repositoryCount,+ domainDescription_s3BucketArn,+ domainDescription_status,++ -- ** DomainEntryPoint+ domainEntryPoint_externalConnectionName,+ domainEntryPoint_repositoryName,++ -- ** DomainSummary+ domainSummary_arn,+ domainSummary_createdTime,+ domainSummary_encryptionKey,+ domainSummary_name,+ domainSummary_owner,+ domainSummary_status,++ -- ** LicenseInfo+ licenseInfo_name,+ licenseInfo_url,++ -- ** PackageDependency+ packageDependency_dependencyType,+ packageDependency_namespace,+ packageDependency_package,+ packageDependency_versionRequirement,++ -- ** PackageDescription+ packageDescription_format,+ packageDescription_name,+ packageDescription_namespace,+ packageDescription_originConfiguration,++ -- ** PackageOriginConfiguration+ packageOriginConfiguration_restrictions,++ -- ** PackageOriginRestrictions+ packageOriginRestrictions_publish,+ packageOriginRestrictions_upstream,++ -- ** PackageSummary+ packageSummary_format,+ packageSummary_namespace,+ packageSummary_originConfiguration,+ packageSummary_package,++ -- ** PackageVersionDescription+ packageVersionDescription_displayName,+ packageVersionDescription_format,+ packageVersionDescription_homePage,+ packageVersionDescription_licenses,+ packageVersionDescription_namespace,+ packageVersionDescription_origin,+ packageVersionDescription_packageName,+ packageVersionDescription_publishedTime,+ packageVersionDescription_revision,+ packageVersionDescription_sourceCodeRepository,+ packageVersionDescription_status,+ packageVersionDescription_summary,+ packageVersionDescription_version,++ -- ** PackageVersionError+ packageVersionError_errorCode,+ packageVersionError_errorMessage,++ -- ** PackageVersionOrigin+ packageVersionOrigin_domainEntryPoint,+ packageVersionOrigin_originType,++ -- ** PackageVersionSummary+ packageVersionSummary_origin,+ packageVersionSummary_revision,+ packageVersionSummary_version,+ packageVersionSummary_status,++ -- ** RepositoryDescription+ repositoryDescription_administratorAccount,+ repositoryDescription_arn,+ repositoryDescription_description,+ repositoryDescription_domainName,+ repositoryDescription_domainOwner,+ repositoryDescription_externalConnections,+ repositoryDescription_name,+ repositoryDescription_upstreams,++ -- ** RepositoryExternalConnectionInfo+ repositoryExternalConnectionInfo_externalConnectionName,+ repositoryExternalConnectionInfo_packageFormat,+ repositoryExternalConnectionInfo_status,++ -- ** RepositorySummary+ repositorySummary_administratorAccount,+ repositorySummary_arn,+ repositorySummary_description,+ repositorySummary_domainName,+ repositorySummary_domainOwner,+ repositorySummary_name,++ -- ** ResourcePolicy+ resourcePolicy_document,+ resourcePolicy_resourceArn,+ resourcePolicy_revision,++ -- ** SuccessfulPackageVersionInfo+ successfulPackageVersionInfo_revision,+ successfulPackageVersionInfo_status,++ -- ** Tag+ tag_key,+ tag_value,++ -- ** UpstreamRepository+ upstreamRepository_repositoryName,++ -- ** UpstreamRepositoryInfo+ upstreamRepositoryInfo_repositoryName,+ )+where++import Amazonka.CodeArtifact.AssociateExternalConnection+import Amazonka.CodeArtifact.CopyPackageVersions+import Amazonka.CodeArtifact.CreateDomain+import Amazonka.CodeArtifact.CreateRepository+import Amazonka.CodeArtifact.DeleteDomain+import Amazonka.CodeArtifact.DeleteDomainPermissionsPolicy+import Amazonka.CodeArtifact.DeletePackageVersions+import Amazonka.CodeArtifact.DeleteRepository+import Amazonka.CodeArtifact.DeleteRepositoryPermissionsPolicy+import Amazonka.CodeArtifact.DescribeDomain+import Amazonka.CodeArtifact.DescribePackage+import Amazonka.CodeArtifact.DescribePackageVersion+import Amazonka.CodeArtifact.DescribeRepository+import Amazonka.CodeArtifact.DisassociateExternalConnection+import Amazonka.CodeArtifact.DisposePackageVersions+import Amazonka.CodeArtifact.GetAuthorizationToken+import Amazonka.CodeArtifact.GetDomainPermissionsPolicy+import Amazonka.CodeArtifact.GetPackageVersionAsset+import Amazonka.CodeArtifact.GetPackageVersionReadme+import Amazonka.CodeArtifact.GetRepositoryEndpoint+import Amazonka.CodeArtifact.GetRepositoryPermissionsPolicy+import Amazonka.CodeArtifact.ListDomains+import Amazonka.CodeArtifact.ListPackageVersionAssets+import Amazonka.CodeArtifact.ListPackageVersionDependencies+import Amazonka.CodeArtifact.ListPackageVersions+import Amazonka.CodeArtifact.ListPackages+import Amazonka.CodeArtifact.ListRepositories+import Amazonka.CodeArtifact.ListRepositoriesInDomain+import Amazonka.CodeArtifact.ListTagsForResource+import Amazonka.CodeArtifact.PutDomainPermissionsPolicy+import Amazonka.CodeArtifact.PutPackageOriginConfiguration+import Amazonka.CodeArtifact.PutRepositoryPermissionsPolicy+import Amazonka.CodeArtifact.TagResource+import Amazonka.CodeArtifact.Types.AssetSummary+import Amazonka.CodeArtifact.Types.DomainDescription+import Amazonka.CodeArtifact.Types.DomainEntryPoint+import Amazonka.CodeArtifact.Types.DomainSummary+import Amazonka.CodeArtifact.Types.LicenseInfo+import Amazonka.CodeArtifact.Types.PackageDependency+import Amazonka.CodeArtifact.Types.PackageDescription+import Amazonka.CodeArtifact.Types.PackageOriginConfiguration+import Amazonka.CodeArtifact.Types.PackageOriginRestrictions+import Amazonka.CodeArtifact.Types.PackageSummary+import Amazonka.CodeArtifact.Types.PackageVersionDescription+import Amazonka.CodeArtifact.Types.PackageVersionError+import Amazonka.CodeArtifact.Types.PackageVersionOrigin+import Amazonka.CodeArtifact.Types.PackageVersionSummary+import Amazonka.CodeArtifact.Types.RepositoryDescription+import Amazonka.CodeArtifact.Types.RepositoryExternalConnectionInfo+import Amazonka.CodeArtifact.Types.RepositorySummary+import Amazonka.CodeArtifact.Types.ResourcePolicy+import Amazonka.CodeArtifact.Types.SuccessfulPackageVersionInfo+import Amazonka.CodeArtifact.Types.Tag+import Amazonka.CodeArtifact.Types.UpstreamRepository+import Amazonka.CodeArtifact.Types.UpstreamRepositoryInfo+import Amazonka.CodeArtifact.UntagResource+import Amazonka.CodeArtifact.UpdatePackageVersionsStatus+import Amazonka.CodeArtifact.UpdateRepository
+ gen/Amazonka/CodeArtifact/ListDomains.hs view
@@ -0,0 +1,235 @@+{-# 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.CodeArtifact.ListDomains+-- 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/codeartifact/latest/APIReference/API_PackageVersionDescription.html DomainSummary>+-- objects for all domains owned by the Amazon Web Services account that+-- makes this call. Each returned @DomainSummary@ object contains+-- information about a domain.+--+-- This operation returns paginated results.+module Amazonka.CodeArtifact.ListDomains+ ( -- * Creating a Request+ ListDomains (..),+ newListDomains,++ -- * Request Lenses+ listDomains_maxResults,+ listDomains_nextToken,++ -- * Destructuring the Response+ ListDomainsResponse (..),+ newListDomainsResponse,++ -- * Response Lenses+ listDomainsResponse_domains,+ listDomainsResponse_nextToken,+ listDomainsResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newListDomains' smart constructor.+data ListDomains = ListDomains'+ { -- | The maximum number of results to return per page.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token for the next set of results. Use the value returned in the+ -- previous response in the next request to retrieve the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDomains' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listDomains_maxResults' - The maximum number of results to return per page.+--+-- 'nextToken', 'listDomains_nextToken' - The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+newListDomains ::+ ListDomains+newListDomains =+ ListDomains'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | The maximum number of results to return per page.+listDomains_maxResults :: Lens.Lens' ListDomains (Prelude.Maybe Prelude.Natural)+listDomains_maxResults = Lens.lens (\ListDomains' {maxResults} -> maxResults) (\s@ListDomains' {} a -> s {maxResults = a} :: ListDomains)++-- | The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+listDomains_nextToken :: Lens.Lens' ListDomains (Prelude.Maybe Prelude.Text)+listDomains_nextToken = Lens.lens (\ListDomains' {nextToken} -> nextToken) (\s@ListDomains' {} a -> s {nextToken = a} :: ListDomains)++instance Core.AWSPager ListDomains where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listDomainsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listDomainsResponse_domains+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listDomains_nextToken+ Lens..~ rs+ Lens.^? listDomainsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListDomains where+ type AWSResponse ListDomains = ListDomainsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListDomainsResponse'+ Prelude.<$> (x Data..?> "domains" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListDomains where+ hashWithSalt _salt ListDomains' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListDomains where+ rnf ListDomains' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListDomains where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListDomains where+ toJSON ListDomains' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListDomains where+ toPath = Prelude.const "/v1/domains"++instance Data.ToQuery ListDomains where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListDomainsResponse' smart constructor.+data ListDomainsResponse = ListDomainsResponse'+ { -- | The returned list of+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_DomainSummary.html DomainSummary>+ -- objects.+ domains :: Prelude.Maybe [DomainSummary],+ -- | The token for the next set of results. Use the value returned in the+ -- previous response in the next request to retrieve the next set of+ -- results.+ 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 'ListDomainsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domains', 'listDomainsResponse_domains' - The returned list of+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_DomainSummary.html DomainSummary>+-- objects.+--+-- 'nextToken', 'listDomainsResponse_nextToken' - The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+--+-- 'httpStatus', 'listDomainsResponse_httpStatus' - The response's http status code.+newListDomainsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListDomainsResponse+newListDomainsResponse pHttpStatus_ =+ ListDomainsResponse'+ { domains = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The returned list of+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_DomainSummary.html DomainSummary>+-- objects.+listDomainsResponse_domains :: Lens.Lens' ListDomainsResponse (Prelude.Maybe [DomainSummary])+listDomainsResponse_domains = Lens.lens (\ListDomainsResponse' {domains} -> domains) (\s@ListDomainsResponse' {} a -> s {domains = a} :: ListDomainsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+listDomainsResponse_nextToken :: Lens.Lens' ListDomainsResponse (Prelude.Maybe Prelude.Text)+listDomainsResponse_nextToken = Lens.lens (\ListDomainsResponse' {nextToken} -> nextToken) (\s@ListDomainsResponse' {} a -> s {nextToken = a} :: ListDomainsResponse)++-- | The response's http status code.+listDomainsResponse_httpStatus :: Lens.Lens' ListDomainsResponse Prelude.Int+listDomainsResponse_httpStatus = Lens.lens (\ListDomainsResponse' {httpStatus} -> httpStatus) (\s@ListDomainsResponse' {} a -> s {httpStatus = a} :: ListDomainsResponse)++instance Prelude.NFData ListDomainsResponse where+ rnf ListDomainsResponse' {..} =+ Prelude.rnf domains+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/ListPackageVersionAssets.hs view
@@ -0,0 +1,482 @@+{-# 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.CodeArtifact.ListPackageVersionAssets+-- 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/codeartifact/latest/APIReference/API_AssetSummary.html AssetSummary>+-- objects for assets in a package version.+--+-- This operation returns paginated results.+module Amazonka.CodeArtifact.ListPackageVersionAssets+ ( -- * Creating a Request+ ListPackageVersionAssets (..),+ newListPackageVersionAssets,++ -- * Request Lenses+ listPackageVersionAssets_domainOwner,+ listPackageVersionAssets_maxResults,+ listPackageVersionAssets_namespace,+ listPackageVersionAssets_nextToken,+ listPackageVersionAssets_domain,+ listPackageVersionAssets_repository,+ listPackageVersionAssets_format,+ listPackageVersionAssets_package,+ listPackageVersionAssets_packageVersion,++ -- * Destructuring the Response+ ListPackageVersionAssetsResponse (..),+ newListPackageVersionAssetsResponse,++ -- * Response Lenses+ listPackageVersionAssetsResponse_assets,+ listPackageVersionAssetsResponse_format,+ listPackageVersionAssetsResponse_namespace,+ listPackageVersionAssetsResponse_nextToken,+ listPackageVersionAssetsResponse_package,+ listPackageVersionAssetsResponse_version,+ listPackageVersionAssetsResponse_versionRevision,+ listPackageVersionAssetsResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newListPackageVersionAssets' smart constructor.+data ListPackageVersionAssets = ListPackageVersionAssets'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of results to return per page.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The namespace of the package version that contains the requested package+ -- version assets. The package version component that specifies its+ -- namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The token for the next set of results. Use the value returned in the+ -- previous response in the next request to retrieve the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository associated with the+ -- package version assets.+ domain :: Prelude.Text,+ -- | The name of the repository that contains the package that contains the+ -- requested package version assets.+ repository :: Prelude.Text,+ -- | The format of the package that contains the requested package version+ -- assets.+ format :: PackageFormat,+ -- | The name of the package that contains the requested package version+ -- assets.+ package :: Prelude.Text,+ -- | A string that contains the package version (for example, @3.5.2@).+ packageVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackageVersionAssets' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'listPackageVersionAssets_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'maxResults', 'listPackageVersionAssets_maxResults' - The maximum number of results to return per page.+--+-- 'namespace', 'listPackageVersionAssets_namespace' - The namespace of the package version that contains the requested package+-- version assets. The package version component that specifies its+-- namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'nextToken', 'listPackageVersionAssets_nextToken' - The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+--+-- 'domain', 'listPackageVersionAssets_domain' - The name of the domain that contains the repository associated with the+-- package version assets.+--+-- 'repository', 'listPackageVersionAssets_repository' - The name of the repository that contains the package that contains the+-- requested package version assets.+--+-- 'format', 'listPackageVersionAssets_format' - The format of the package that contains the requested package version+-- assets.+--+-- 'package', 'listPackageVersionAssets_package' - The name of the package that contains the requested package version+-- assets.+--+-- 'packageVersion', 'listPackageVersionAssets_packageVersion' - A string that contains the package version (for example, @3.5.2@).+newListPackageVersionAssets ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ -- | 'packageVersion'+ Prelude.Text ->+ ListPackageVersionAssets+newListPackageVersionAssets+ pDomain_+ pRepository_+ pFormat_+ pPackage_+ pPackageVersion_ =+ ListPackageVersionAssets'+ { domainOwner =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ namespace = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_,+ packageVersion = pPackageVersion_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+listPackageVersionAssets_domainOwner :: Lens.Lens' ListPackageVersionAssets (Prelude.Maybe Prelude.Text)+listPackageVersionAssets_domainOwner = Lens.lens (\ListPackageVersionAssets' {domainOwner} -> domainOwner) (\s@ListPackageVersionAssets' {} a -> s {domainOwner = a} :: ListPackageVersionAssets)++-- | The maximum number of results to return per page.+listPackageVersionAssets_maxResults :: Lens.Lens' ListPackageVersionAssets (Prelude.Maybe Prelude.Natural)+listPackageVersionAssets_maxResults = Lens.lens (\ListPackageVersionAssets' {maxResults} -> maxResults) (\s@ListPackageVersionAssets' {} a -> s {maxResults = a} :: ListPackageVersionAssets)++-- | The namespace of the package version that contains the requested package+-- version assets. The package version component that specifies its+-- namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+listPackageVersionAssets_namespace :: Lens.Lens' ListPackageVersionAssets (Prelude.Maybe Prelude.Text)+listPackageVersionAssets_namespace = Lens.lens (\ListPackageVersionAssets' {namespace} -> namespace) (\s@ListPackageVersionAssets' {} a -> s {namespace = a} :: ListPackageVersionAssets)++-- | The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+listPackageVersionAssets_nextToken :: Lens.Lens' ListPackageVersionAssets (Prelude.Maybe Prelude.Text)+listPackageVersionAssets_nextToken = Lens.lens (\ListPackageVersionAssets' {nextToken} -> nextToken) (\s@ListPackageVersionAssets' {} a -> s {nextToken = a} :: ListPackageVersionAssets)++-- | The name of the domain that contains the repository associated with the+-- package version assets.+listPackageVersionAssets_domain :: Lens.Lens' ListPackageVersionAssets Prelude.Text+listPackageVersionAssets_domain = Lens.lens (\ListPackageVersionAssets' {domain} -> domain) (\s@ListPackageVersionAssets' {} a -> s {domain = a} :: ListPackageVersionAssets)++-- | The name of the repository that contains the package that contains the+-- requested package version assets.+listPackageVersionAssets_repository :: Lens.Lens' ListPackageVersionAssets Prelude.Text+listPackageVersionAssets_repository = Lens.lens (\ListPackageVersionAssets' {repository} -> repository) (\s@ListPackageVersionAssets' {} a -> s {repository = a} :: ListPackageVersionAssets)++-- | The format of the package that contains the requested package version+-- assets.+listPackageVersionAssets_format :: Lens.Lens' ListPackageVersionAssets PackageFormat+listPackageVersionAssets_format = Lens.lens (\ListPackageVersionAssets' {format} -> format) (\s@ListPackageVersionAssets' {} a -> s {format = a} :: ListPackageVersionAssets)++-- | The name of the package that contains the requested package version+-- assets.+listPackageVersionAssets_package :: Lens.Lens' ListPackageVersionAssets Prelude.Text+listPackageVersionAssets_package = Lens.lens (\ListPackageVersionAssets' {package} -> package) (\s@ListPackageVersionAssets' {} a -> s {package = a} :: ListPackageVersionAssets)++-- | A string that contains the package version (for example, @3.5.2@).+listPackageVersionAssets_packageVersion :: Lens.Lens' ListPackageVersionAssets Prelude.Text+listPackageVersionAssets_packageVersion = Lens.lens (\ListPackageVersionAssets' {packageVersion} -> packageVersion) (\s@ListPackageVersionAssets' {} a -> s {packageVersion = a} :: ListPackageVersionAssets)++instance Core.AWSPager ListPackageVersionAssets where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listPackageVersionAssetsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listPackageVersionAssetsResponse_assets+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listPackageVersionAssets_nextToken+ Lens..~ rs+ Lens.^? listPackageVersionAssetsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListPackageVersionAssets where+ type+ AWSResponse ListPackageVersionAssets =+ ListPackageVersionAssetsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListPackageVersionAssetsResponse'+ Prelude.<$> (x Data..?> "assets" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "format")+ Prelude.<*> (x Data..?> "namespace")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "package")+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (x Data..?> "versionRevision")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListPackageVersionAssets where+ hashWithSalt _salt ListPackageVersionAssets' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package+ `Prelude.hashWithSalt` packageVersion++instance Prelude.NFData ListPackageVersionAssets where+ rnf ListPackageVersionAssets' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf packageVersion++instance Data.ToHeaders ListPackageVersionAssets where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListPackageVersionAssets where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath ListPackageVersionAssets where+ toPath = Prelude.const "/v1/package/version/assets"++instance Data.ToQuery ListPackageVersionAssets where+ toQuery ListPackageVersionAssets' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "max-results" Data.=: maxResults,+ "namespace" Data.=: namespace,+ "next-token" Data.=: nextToken,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package,+ "version" Data.=: packageVersion+ ]++-- | /See:/ 'newListPackageVersionAssetsResponse' smart constructor.+data ListPackageVersionAssetsResponse = ListPackageVersionAssetsResponse'+ { -- | The returned list of+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_AssetSummary.html AssetSummary>+ -- objects.+ assets :: Prelude.Maybe [AssetSummary],+ -- | The format of the package that contains the requested package version+ -- assets.+ format :: Prelude.Maybe PackageFormat,+ -- | The namespace of the package version that contains the requested package+ -- version assets. The package version component that specifies its+ -- namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | If there are additional results, this is the token for the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The name of the package that contains the requested package version+ -- assets.+ package :: Prelude.Maybe Prelude.Text,+ -- | The version of the package associated with the requested assets.+ version :: Prelude.Maybe Prelude.Text,+ -- | The current revision associated with the package version.+ versionRevision :: 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 'ListPackageVersionAssetsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assets', 'listPackageVersionAssetsResponse_assets' - The returned list of+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_AssetSummary.html AssetSummary>+-- objects.+--+-- 'format', 'listPackageVersionAssetsResponse_format' - The format of the package that contains the requested package version+-- assets.+--+-- 'namespace', 'listPackageVersionAssetsResponse_namespace' - The namespace of the package version that contains the requested package+-- version assets. The package version component that specifies its+-- namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'nextToken', 'listPackageVersionAssetsResponse_nextToken' - If there are additional results, this is the token for the next set of+-- results.+--+-- 'package', 'listPackageVersionAssetsResponse_package' - The name of the package that contains the requested package version+-- assets.+--+-- 'version', 'listPackageVersionAssetsResponse_version' - The version of the package associated with the requested assets.+--+-- 'versionRevision', 'listPackageVersionAssetsResponse_versionRevision' - The current revision associated with the package version.+--+-- 'httpStatus', 'listPackageVersionAssetsResponse_httpStatus' - The response's http status code.+newListPackageVersionAssetsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPackageVersionAssetsResponse+newListPackageVersionAssetsResponse pHttpStatus_ =+ ListPackageVersionAssetsResponse'+ { assets =+ Prelude.Nothing,+ format = Prelude.Nothing,+ namespace = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ package = Prelude.Nothing,+ version = Prelude.Nothing,+ versionRevision = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The returned list of+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_AssetSummary.html AssetSummary>+-- objects.+listPackageVersionAssetsResponse_assets :: Lens.Lens' ListPackageVersionAssetsResponse (Prelude.Maybe [AssetSummary])+listPackageVersionAssetsResponse_assets = Lens.lens (\ListPackageVersionAssetsResponse' {assets} -> assets) (\s@ListPackageVersionAssetsResponse' {} a -> s {assets = a} :: ListPackageVersionAssetsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The format of the package that contains the requested package version+-- assets.+listPackageVersionAssetsResponse_format :: Lens.Lens' ListPackageVersionAssetsResponse (Prelude.Maybe PackageFormat)+listPackageVersionAssetsResponse_format = Lens.lens (\ListPackageVersionAssetsResponse' {format} -> format) (\s@ListPackageVersionAssetsResponse' {} a -> s {format = a} :: ListPackageVersionAssetsResponse)++-- | The namespace of the package version that contains the requested package+-- version assets. The package version component that specifies its+-- namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+listPackageVersionAssetsResponse_namespace :: Lens.Lens' ListPackageVersionAssetsResponse (Prelude.Maybe Prelude.Text)+listPackageVersionAssetsResponse_namespace = Lens.lens (\ListPackageVersionAssetsResponse' {namespace} -> namespace) (\s@ListPackageVersionAssetsResponse' {} a -> s {namespace = a} :: ListPackageVersionAssetsResponse)++-- | If there are additional results, this is the token for the next set of+-- results.+listPackageVersionAssetsResponse_nextToken :: Lens.Lens' ListPackageVersionAssetsResponse (Prelude.Maybe Prelude.Text)+listPackageVersionAssetsResponse_nextToken = Lens.lens (\ListPackageVersionAssetsResponse' {nextToken} -> nextToken) (\s@ListPackageVersionAssetsResponse' {} a -> s {nextToken = a} :: ListPackageVersionAssetsResponse)++-- | The name of the package that contains the requested package version+-- assets.+listPackageVersionAssetsResponse_package :: Lens.Lens' ListPackageVersionAssetsResponse (Prelude.Maybe Prelude.Text)+listPackageVersionAssetsResponse_package = Lens.lens (\ListPackageVersionAssetsResponse' {package} -> package) (\s@ListPackageVersionAssetsResponse' {} a -> s {package = a} :: ListPackageVersionAssetsResponse)++-- | The version of the package associated with the requested assets.+listPackageVersionAssetsResponse_version :: Lens.Lens' ListPackageVersionAssetsResponse (Prelude.Maybe Prelude.Text)+listPackageVersionAssetsResponse_version = Lens.lens (\ListPackageVersionAssetsResponse' {version} -> version) (\s@ListPackageVersionAssetsResponse' {} a -> s {version = a} :: ListPackageVersionAssetsResponse)++-- | The current revision associated with the package version.+listPackageVersionAssetsResponse_versionRevision :: Lens.Lens' ListPackageVersionAssetsResponse (Prelude.Maybe Prelude.Text)+listPackageVersionAssetsResponse_versionRevision = Lens.lens (\ListPackageVersionAssetsResponse' {versionRevision} -> versionRevision) (\s@ListPackageVersionAssetsResponse' {} a -> s {versionRevision = a} :: ListPackageVersionAssetsResponse)++-- | The response's http status code.+listPackageVersionAssetsResponse_httpStatus :: Lens.Lens' ListPackageVersionAssetsResponse Prelude.Int+listPackageVersionAssetsResponse_httpStatus = Lens.lens (\ListPackageVersionAssetsResponse' {httpStatus} -> httpStatus) (\s@ListPackageVersionAssetsResponse' {} a -> s {httpStatus = a} :: ListPackageVersionAssetsResponse)++instance+ Prelude.NFData+ ListPackageVersionAssetsResponse+ where+ rnf ListPackageVersionAssetsResponse' {..} =+ Prelude.rnf assets+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf versionRevision+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/ListPackageVersionDependencies.hs view
@@ -0,0 +1,460 @@+{-# 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.CodeArtifact.ListPackageVersionDependencies+-- 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 direct dependencies for a package version. The dependencies+-- are returned as+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html PackageDependency>+-- objects. CodeArtifact extracts the dependencies for a package version+-- from the metadata file for the package format (for example, the+-- @package.json@ file for npm packages and the @pom.xml@ file for Maven).+-- Any package version dependencies that are not listed in the+-- configuration file are not returned.+module Amazonka.CodeArtifact.ListPackageVersionDependencies+ ( -- * Creating a Request+ ListPackageVersionDependencies (..),+ newListPackageVersionDependencies,++ -- * Request Lenses+ listPackageVersionDependencies_domainOwner,+ listPackageVersionDependencies_namespace,+ listPackageVersionDependencies_nextToken,+ listPackageVersionDependencies_domain,+ listPackageVersionDependencies_repository,+ listPackageVersionDependencies_format,+ listPackageVersionDependencies_package,+ listPackageVersionDependencies_packageVersion,++ -- * Destructuring the Response+ ListPackageVersionDependenciesResponse (..),+ newListPackageVersionDependenciesResponse,++ -- * Response Lenses+ listPackageVersionDependenciesResponse_dependencies,+ listPackageVersionDependenciesResponse_format,+ listPackageVersionDependenciesResponse_namespace,+ listPackageVersionDependenciesResponse_nextToken,+ listPackageVersionDependenciesResponse_package,+ listPackageVersionDependenciesResponse_version,+ listPackageVersionDependenciesResponse_versionRevision,+ listPackageVersionDependenciesResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newListPackageVersionDependencies' smart constructor.+data ListPackageVersionDependencies = ListPackageVersionDependencies'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The namespace of the package version with the requested dependencies.+ -- The package version component that specifies its namespace depends on+ -- its type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The token for the next set of results. Use the value returned in the+ -- previous response in the next request to retrieve the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository that contains the+ -- requested package version dependencies.+ domain :: Prelude.Text,+ -- | The name of the repository that contains the requested package version.+ repository :: Prelude.Text,+ -- | The format of the package with the requested dependencies.+ format :: PackageFormat,+ -- | The name of the package versions\' package.+ package :: Prelude.Text,+ -- | A string that contains the package version (for example, @3.5.2@).+ packageVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackageVersionDependencies' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'listPackageVersionDependencies_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'namespace', 'listPackageVersionDependencies_namespace' - The namespace of the package version with the requested dependencies.+-- The package version component that specifies its namespace depends on+-- its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'nextToken', 'listPackageVersionDependencies_nextToken' - The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+--+-- 'domain', 'listPackageVersionDependencies_domain' - The name of the domain that contains the repository that contains the+-- requested package version dependencies.+--+-- 'repository', 'listPackageVersionDependencies_repository' - The name of the repository that contains the requested package version.+--+-- 'format', 'listPackageVersionDependencies_format' - The format of the package with the requested dependencies.+--+-- 'package', 'listPackageVersionDependencies_package' - The name of the package versions\' package.+--+-- 'packageVersion', 'listPackageVersionDependencies_packageVersion' - A string that contains the package version (for example, @3.5.2@).+newListPackageVersionDependencies ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ -- | 'packageVersion'+ Prelude.Text ->+ ListPackageVersionDependencies+newListPackageVersionDependencies+ pDomain_+ pRepository_+ pFormat_+ pPackage_+ pPackageVersion_ =+ ListPackageVersionDependencies'+ { domainOwner =+ Prelude.Nothing,+ namespace = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_,+ packageVersion = pPackageVersion_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+listPackageVersionDependencies_domainOwner :: Lens.Lens' ListPackageVersionDependencies (Prelude.Maybe Prelude.Text)+listPackageVersionDependencies_domainOwner = Lens.lens (\ListPackageVersionDependencies' {domainOwner} -> domainOwner) (\s@ListPackageVersionDependencies' {} a -> s {domainOwner = a} :: ListPackageVersionDependencies)++-- | The namespace of the package version with the requested dependencies.+-- The package version component that specifies its namespace depends on+-- its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+listPackageVersionDependencies_namespace :: Lens.Lens' ListPackageVersionDependencies (Prelude.Maybe Prelude.Text)+listPackageVersionDependencies_namespace = Lens.lens (\ListPackageVersionDependencies' {namespace} -> namespace) (\s@ListPackageVersionDependencies' {} a -> s {namespace = a} :: ListPackageVersionDependencies)++-- | The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+listPackageVersionDependencies_nextToken :: Lens.Lens' ListPackageVersionDependencies (Prelude.Maybe Prelude.Text)+listPackageVersionDependencies_nextToken = Lens.lens (\ListPackageVersionDependencies' {nextToken} -> nextToken) (\s@ListPackageVersionDependencies' {} a -> s {nextToken = a} :: ListPackageVersionDependencies)++-- | The name of the domain that contains the repository that contains the+-- requested package version dependencies.+listPackageVersionDependencies_domain :: Lens.Lens' ListPackageVersionDependencies Prelude.Text+listPackageVersionDependencies_domain = Lens.lens (\ListPackageVersionDependencies' {domain} -> domain) (\s@ListPackageVersionDependencies' {} a -> s {domain = a} :: ListPackageVersionDependencies)++-- | The name of the repository that contains the requested package version.+listPackageVersionDependencies_repository :: Lens.Lens' ListPackageVersionDependencies Prelude.Text+listPackageVersionDependencies_repository = Lens.lens (\ListPackageVersionDependencies' {repository} -> repository) (\s@ListPackageVersionDependencies' {} a -> s {repository = a} :: ListPackageVersionDependencies)++-- | The format of the package with the requested dependencies.+listPackageVersionDependencies_format :: Lens.Lens' ListPackageVersionDependencies PackageFormat+listPackageVersionDependencies_format = Lens.lens (\ListPackageVersionDependencies' {format} -> format) (\s@ListPackageVersionDependencies' {} a -> s {format = a} :: ListPackageVersionDependencies)++-- | The name of the package versions\' package.+listPackageVersionDependencies_package :: Lens.Lens' ListPackageVersionDependencies Prelude.Text+listPackageVersionDependencies_package = Lens.lens (\ListPackageVersionDependencies' {package} -> package) (\s@ListPackageVersionDependencies' {} a -> s {package = a} :: ListPackageVersionDependencies)++-- | A string that contains the package version (for example, @3.5.2@).+listPackageVersionDependencies_packageVersion :: Lens.Lens' ListPackageVersionDependencies Prelude.Text+listPackageVersionDependencies_packageVersion = Lens.lens (\ListPackageVersionDependencies' {packageVersion} -> packageVersion) (\s@ListPackageVersionDependencies' {} a -> s {packageVersion = a} :: ListPackageVersionDependencies)++instance+ Core.AWSRequest+ ListPackageVersionDependencies+ where+ type+ AWSResponse ListPackageVersionDependencies =+ ListPackageVersionDependenciesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListPackageVersionDependenciesResponse'+ Prelude.<$> (x Data..?> "dependencies" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "format")+ Prelude.<*> (x Data..?> "namespace")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "package")+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (x Data..?> "versionRevision")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ListPackageVersionDependencies+ where+ hashWithSalt+ _salt+ ListPackageVersionDependencies' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package+ `Prelude.hashWithSalt` packageVersion++instance+ Prelude.NFData+ ListPackageVersionDependencies+ where+ rnf ListPackageVersionDependencies' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf packageVersion++instance+ Data.ToHeaders+ ListPackageVersionDependencies+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListPackageVersionDependencies where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath ListPackageVersionDependencies where+ toPath =+ Prelude.const "/v1/package/version/dependencies"++instance Data.ToQuery ListPackageVersionDependencies where+ toQuery ListPackageVersionDependencies' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "namespace" Data.=: namespace,+ "next-token" Data.=: nextToken,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package,+ "version" Data.=: packageVersion+ ]++-- | /See:/ 'newListPackageVersionDependenciesResponse' smart constructor.+data ListPackageVersionDependenciesResponse = ListPackageVersionDependenciesResponse'+ { -- | The returned list of+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html PackageDependency>+ -- objects.+ dependencies :: Prelude.Maybe [PackageDependency],+ -- | A format that specifies the type of the package that contains the+ -- returned dependencies.+ format :: Prelude.Maybe PackageFormat,+ -- | The namespace of the package version that contains the returned+ -- dependencies. The package version component that specifies its namespace+ -- depends on its type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The token for the next set of results. Use the value returned in the+ -- previous response in the next request to retrieve the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The name of the package that contains the returned package versions+ -- dependencies.+ package :: Prelude.Maybe Prelude.Text,+ -- | The version of the package that is specified in the request.+ version :: Prelude.Maybe Prelude.Text,+ -- | The current revision associated with the package version.+ versionRevision :: 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 'ListPackageVersionDependenciesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dependencies', 'listPackageVersionDependenciesResponse_dependencies' - The returned list of+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html PackageDependency>+-- objects.+--+-- 'format', 'listPackageVersionDependenciesResponse_format' - A format that specifies the type of the package that contains the+-- returned dependencies.+--+-- 'namespace', 'listPackageVersionDependenciesResponse_namespace' - The namespace of the package version that contains the returned+-- dependencies. The package version component that specifies its namespace+-- depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'nextToken', 'listPackageVersionDependenciesResponse_nextToken' - The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+--+-- 'package', 'listPackageVersionDependenciesResponse_package' - The name of the package that contains the returned package versions+-- dependencies.+--+-- 'version', 'listPackageVersionDependenciesResponse_version' - The version of the package that is specified in the request.+--+-- 'versionRevision', 'listPackageVersionDependenciesResponse_versionRevision' - The current revision associated with the package version.+--+-- 'httpStatus', 'listPackageVersionDependenciesResponse_httpStatus' - The response's http status code.+newListPackageVersionDependenciesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPackageVersionDependenciesResponse+newListPackageVersionDependenciesResponse+ pHttpStatus_ =+ ListPackageVersionDependenciesResponse'+ { dependencies =+ Prelude.Nothing,+ format = Prelude.Nothing,+ namespace = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ package = Prelude.Nothing,+ version = Prelude.Nothing,+ versionRevision = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The returned list of+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html PackageDependency>+-- objects.+listPackageVersionDependenciesResponse_dependencies :: Lens.Lens' ListPackageVersionDependenciesResponse (Prelude.Maybe [PackageDependency])+listPackageVersionDependenciesResponse_dependencies = Lens.lens (\ListPackageVersionDependenciesResponse' {dependencies} -> dependencies) (\s@ListPackageVersionDependenciesResponse' {} a -> s {dependencies = a} :: ListPackageVersionDependenciesResponse) Prelude.. Lens.mapping Lens.coerced++-- | A format that specifies the type of the package that contains the+-- returned dependencies.+listPackageVersionDependenciesResponse_format :: Lens.Lens' ListPackageVersionDependenciesResponse (Prelude.Maybe PackageFormat)+listPackageVersionDependenciesResponse_format = Lens.lens (\ListPackageVersionDependenciesResponse' {format} -> format) (\s@ListPackageVersionDependenciesResponse' {} a -> s {format = a} :: ListPackageVersionDependenciesResponse)++-- | The namespace of the package version that contains the returned+-- dependencies. The package version component that specifies its namespace+-- depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+listPackageVersionDependenciesResponse_namespace :: Lens.Lens' ListPackageVersionDependenciesResponse (Prelude.Maybe Prelude.Text)+listPackageVersionDependenciesResponse_namespace = Lens.lens (\ListPackageVersionDependenciesResponse' {namespace} -> namespace) (\s@ListPackageVersionDependenciesResponse' {} a -> s {namespace = a} :: ListPackageVersionDependenciesResponse)++-- | The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+listPackageVersionDependenciesResponse_nextToken :: Lens.Lens' ListPackageVersionDependenciesResponse (Prelude.Maybe Prelude.Text)+listPackageVersionDependenciesResponse_nextToken = Lens.lens (\ListPackageVersionDependenciesResponse' {nextToken} -> nextToken) (\s@ListPackageVersionDependenciesResponse' {} a -> s {nextToken = a} :: ListPackageVersionDependenciesResponse)++-- | The name of the package that contains the returned package versions+-- dependencies.+listPackageVersionDependenciesResponse_package :: Lens.Lens' ListPackageVersionDependenciesResponse (Prelude.Maybe Prelude.Text)+listPackageVersionDependenciesResponse_package = Lens.lens (\ListPackageVersionDependenciesResponse' {package} -> package) (\s@ListPackageVersionDependenciesResponse' {} a -> s {package = a} :: ListPackageVersionDependenciesResponse)++-- | The version of the package that is specified in the request.+listPackageVersionDependenciesResponse_version :: Lens.Lens' ListPackageVersionDependenciesResponse (Prelude.Maybe Prelude.Text)+listPackageVersionDependenciesResponse_version = Lens.lens (\ListPackageVersionDependenciesResponse' {version} -> version) (\s@ListPackageVersionDependenciesResponse' {} a -> s {version = a} :: ListPackageVersionDependenciesResponse)++-- | The current revision associated with the package version.+listPackageVersionDependenciesResponse_versionRevision :: Lens.Lens' ListPackageVersionDependenciesResponse (Prelude.Maybe Prelude.Text)+listPackageVersionDependenciesResponse_versionRevision = Lens.lens (\ListPackageVersionDependenciesResponse' {versionRevision} -> versionRevision) (\s@ListPackageVersionDependenciesResponse' {} a -> s {versionRevision = a} :: ListPackageVersionDependenciesResponse)++-- | The response's http status code.+listPackageVersionDependenciesResponse_httpStatus :: Lens.Lens' ListPackageVersionDependenciesResponse Prelude.Int+listPackageVersionDependenciesResponse_httpStatus = Lens.lens (\ListPackageVersionDependenciesResponse' {httpStatus} -> httpStatus) (\s@ListPackageVersionDependenciesResponse' {} a -> s {httpStatus = a} :: ListPackageVersionDependenciesResponse)++instance+ Prelude.NFData+ ListPackageVersionDependenciesResponse+ where+ rnf ListPackageVersionDependenciesResponse' {..} =+ Prelude.rnf dependencies+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf versionRevision+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/ListPackageVersions.hs view
@@ -0,0 +1,496 @@+{-# 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.CodeArtifact.ListPackageVersions+-- 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/codeartifact/latest/APIReference/API_PackageVersionSummary.html PackageVersionSummary>+-- objects for package versions in a repository that match the request+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.CodeArtifact.ListPackageVersions+ ( -- * Creating a Request+ ListPackageVersions (..),+ newListPackageVersions,++ -- * Request Lenses+ listPackageVersions_domainOwner,+ listPackageVersions_maxResults,+ listPackageVersions_namespace,+ listPackageVersions_nextToken,+ listPackageVersions_originType,+ listPackageVersions_sortBy,+ listPackageVersions_status,+ listPackageVersions_domain,+ listPackageVersions_repository,+ listPackageVersions_format,+ listPackageVersions_package,++ -- * Destructuring the Response+ ListPackageVersionsResponse (..),+ newListPackageVersionsResponse,++ -- * Response Lenses+ listPackageVersionsResponse_defaultDisplayVersion,+ listPackageVersionsResponse_format,+ listPackageVersionsResponse_namespace,+ listPackageVersionsResponse_nextToken,+ listPackageVersionsResponse_package,+ listPackageVersionsResponse_versions,+ listPackageVersionsResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newListPackageVersions' smart constructor.+data ListPackageVersions = ListPackageVersions'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of results to return per page.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The namespace of the package that contains the requested package+ -- versions. The package component that specifies its namespace depends on+ -- its type. For example:+ --+ -- - The namespace of a Maven package is its @groupId@.+ --+ -- - The namespace of an npm package is its @scope@.+ --+ -- - Python and NuGet packages do not contain a corresponding component,+ -- packages of those formats do not have a namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The token for the next set of results. Use the value returned in the+ -- previous response in the next request to retrieve the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The @originType@ used to filter package versions. Only package versions+ -- with the provided @originType@ will be returned.+ originType :: Prelude.Maybe PackageVersionOriginType,+ -- | How to sort the requested list of package versions.+ sortBy :: Prelude.Maybe PackageVersionSortType,+ -- | A string that filters the requested package versions by status.+ status :: Prelude.Maybe PackageVersionStatus,+ -- | The name of the domain that contains the repository that contains the+ -- requested package versions.+ domain :: Prelude.Text,+ -- | The name of the repository that contains the requested package versions.+ repository :: Prelude.Text,+ -- | The format of the returned package versions.+ format :: PackageFormat,+ -- | The name of the package for which you want to request package versions.+ package :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackageVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'listPackageVersions_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'maxResults', 'listPackageVersions_maxResults' - The maximum number of results to return per page.+--+-- 'namespace', 'listPackageVersions_namespace' - The namespace of the package that contains the requested package+-- versions. The package component that specifies its namespace depends on+-- its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+--+-- 'nextToken', 'listPackageVersions_nextToken' - The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+--+-- 'originType', 'listPackageVersions_originType' - The @originType@ used to filter package versions. Only package versions+-- with the provided @originType@ will be returned.+--+-- 'sortBy', 'listPackageVersions_sortBy' - How to sort the requested list of package versions.+--+-- 'status', 'listPackageVersions_status' - A string that filters the requested package versions by status.+--+-- 'domain', 'listPackageVersions_domain' - The name of the domain that contains the repository that contains the+-- requested package versions.+--+-- 'repository', 'listPackageVersions_repository' - The name of the repository that contains the requested package versions.+--+-- 'format', 'listPackageVersions_format' - The format of the returned package versions.+--+-- 'package', 'listPackageVersions_package' - The name of the package for which you want to request package versions.+newListPackageVersions ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ ListPackageVersions+newListPackageVersions+ pDomain_+ pRepository_+ pFormat_+ pPackage_ =+ ListPackageVersions'+ { domainOwner = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ namespace = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ originType = Prelude.Nothing,+ sortBy = Prelude.Nothing,+ status = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+listPackageVersions_domainOwner :: Lens.Lens' ListPackageVersions (Prelude.Maybe Prelude.Text)+listPackageVersions_domainOwner = Lens.lens (\ListPackageVersions' {domainOwner} -> domainOwner) (\s@ListPackageVersions' {} a -> s {domainOwner = a} :: ListPackageVersions)++-- | The maximum number of results to return per page.+listPackageVersions_maxResults :: Lens.Lens' ListPackageVersions (Prelude.Maybe Prelude.Natural)+listPackageVersions_maxResults = Lens.lens (\ListPackageVersions' {maxResults} -> maxResults) (\s@ListPackageVersions' {} a -> s {maxResults = a} :: ListPackageVersions)++-- | The namespace of the package that contains the requested package+-- versions. The package component that specifies its namespace depends on+-- its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+listPackageVersions_namespace :: Lens.Lens' ListPackageVersions (Prelude.Maybe Prelude.Text)+listPackageVersions_namespace = Lens.lens (\ListPackageVersions' {namespace} -> namespace) (\s@ListPackageVersions' {} a -> s {namespace = a} :: ListPackageVersions)++-- | The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+listPackageVersions_nextToken :: Lens.Lens' ListPackageVersions (Prelude.Maybe Prelude.Text)+listPackageVersions_nextToken = Lens.lens (\ListPackageVersions' {nextToken} -> nextToken) (\s@ListPackageVersions' {} a -> s {nextToken = a} :: ListPackageVersions)++-- | The @originType@ used to filter package versions. Only package versions+-- with the provided @originType@ will be returned.+listPackageVersions_originType :: Lens.Lens' ListPackageVersions (Prelude.Maybe PackageVersionOriginType)+listPackageVersions_originType = Lens.lens (\ListPackageVersions' {originType} -> originType) (\s@ListPackageVersions' {} a -> s {originType = a} :: ListPackageVersions)++-- | How to sort the requested list of package versions.+listPackageVersions_sortBy :: Lens.Lens' ListPackageVersions (Prelude.Maybe PackageVersionSortType)+listPackageVersions_sortBy = Lens.lens (\ListPackageVersions' {sortBy} -> sortBy) (\s@ListPackageVersions' {} a -> s {sortBy = a} :: ListPackageVersions)++-- | A string that filters the requested package versions by status.+listPackageVersions_status :: Lens.Lens' ListPackageVersions (Prelude.Maybe PackageVersionStatus)+listPackageVersions_status = Lens.lens (\ListPackageVersions' {status} -> status) (\s@ListPackageVersions' {} a -> s {status = a} :: ListPackageVersions)++-- | The name of the domain that contains the repository that contains the+-- requested package versions.+listPackageVersions_domain :: Lens.Lens' ListPackageVersions Prelude.Text+listPackageVersions_domain = Lens.lens (\ListPackageVersions' {domain} -> domain) (\s@ListPackageVersions' {} a -> s {domain = a} :: ListPackageVersions)++-- | The name of the repository that contains the requested package versions.+listPackageVersions_repository :: Lens.Lens' ListPackageVersions Prelude.Text+listPackageVersions_repository = Lens.lens (\ListPackageVersions' {repository} -> repository) (\s@ListPackageVersions' {} a -> s {repository = a} :: ListPackageVersions)++-- | The format of the returned package versions.+listPackageVersions_format :: Lens.Lens' ListPackageVersions PackageFormat+listPackageVersions_format = Lens.lens (\ListPackageVersions' {format} -> format) (\s@ListPackageVersions' {} a -> s {format = a} :: ListPackageVersions)++-- | The name of the package for which you want to request package versions.+listPackageVersions_package :: Lens.Lens' ListPackageVersions Prelude.Text+listPackageVersions_package = Lens.lens (\ListPackageVersions' {package} -> package) (\s@ListPackageVersions' {} a -> s {package = a} :: ListPackageVersions)++instance Core.AWSPager ListPackageVersions where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listPackageVersionsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listPackageVersionsResponse_versions+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listPackageVersions_nextToken+ Lens..~ rs+ Lens.^? listPackageVersionsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListPackageVersions where+ type+ AWSResponse ListPackageVersions =+ ListPackageVersionsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListPackageVersionsResponse'+ Prelude.<$> (x Data..?> "defaultDisplayVersion")+ Prelude.<*> (x Data..?> "format")+ Prelude.<*> (x Data..?> "namespace")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "package")+ Prelude.<*> (x Data..?> "versions" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListPackageVersions where+ hashWithSalt _salt ListPackageVersions' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` originType+ `Prelude.hashWithSalt` sortBy+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package++instance Prelude.NFData ListPackageVersions where+ rnf ListPackageVersions' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf originType+ `Prelude.seq` Prelude.rnf sortBy+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package++instance Data.ToHeaders ListPackageVersions where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListPackageVersions where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath ListPackageVersions where+ toPath = Prelude.const "/v1/package/versions"++instance Data.ToQuery ListPackageVersions where+ toQuery ListPackageVersions' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "max-results" Data.=: maxResults,+ "namespace" Data.=: namespace,+ "next-token" Data.=: nextToken,+ "originType" Data.=: originType,+ "sortBy" Data.=: sortBy,+ "status" Data.=: status,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package+ ]++-- | /See:/ 'newListPackageVersionsResponse' smart constructor.+data ListPackageVersionsResponse = ListPackageVersionsResponse'+ { -- | The default package version to display. This depends on the package+ -- format:+ --+ -- - For Maven and PyPI packages, it\'s the most recently published+ -- package version.+ --+ -- - For npm packages, it\'s the version referenced by the @latest@ tag.+ -- If the @latest@ tag is not set, it\'s the most recently published+ -- package version.+ defaultDisplayVersion :: Prelude.Maybe Prelude.Text,+ -- | A format of the package.+ format :: Prelude.Maybe PackageFormat,+ -- | The namespace of the package that contains the requested package+ -- versions. The package component that specifies its namespace depends on+ -- its type. For example:+ --+ -- - The namespace of a Maven package is its @groupId@.+ --+ -- - The namespace of an npm package is its @scope@.+ --+ -- - Python and NuGet packages do not contain a corresponding component,+ -- packages of those formats do not have a namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | If there are additional results, this is the token for the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The name of the package.+ package :: Prelude.Maybe Prelude.Text,+ -- | The returned list of+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionSummary.html PackageVersionSummary>+ -- objects.+ versions :: Prelude.Maybe [PackageVersionSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackageVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'defaultDisplayVersion', 'listPackageVersionsResponse_defaultDisplayVersion' - The default package version to display. This depends on the package+-- format:+--+-- - For Maven and PyPI packages, it\'s the most recently published+-- package version.+--+-- - For npm packages, it\'s the version referenced by the @latest@ tag.+-- If the @latest@ tag is not set, it\'s the most recently published+-- package version.+--+-- 'format', 'listPackageVersionsResponse_format' - A format of the package.+--+-- 'namespace', 'listPackageVersionsResponse_namespace' - The namespace of the package that contains the requested package+-- versions. The package component that specifies its namespace depends on+-- its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+--+-- 'nextToken', 'listPackageVersionsResponse_nextToken' - If there are additional results, this is the token for the next set of+-- results.+--+-- 'package', 'listPackageVersionsResponse_package' - The name of the package.+--+-- 'versions', 'listPackageVersionsResponse_versions' - The returned list of+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionSummary.html PackageVersionSummary>+-- objects.+--+-- 'httpStatus', 'listPackageVersionsResponse_httpStatus' - The response's http status code.+newListPackageVersionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPackageVersionsResponse+newListPackageVersionsResponse pHttpStatus_ =+ ListPackageVersionsResponse'+ { defaultDisplayVersion =+ Prelude.Nothing,+ format = Prelude.Nothing,+ namespace = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ package = Prelude.Nothing,+ versions = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The default package version to display. This depends on the package+-- format:+--+-- - For Maven and PyPI packages, it\'s the most recently published+-- package version.+--+-- - For npm packages, it\'s the version referenced by the @latest@ tag.+-- If the @latest@ tag is not set, it\'s the most recently published+-- package version.+listPackageVersionsResponse_defaultDisplayVersion :: Lens.Lens' ListPackageVersionsResponse (Prelude.Maybe Prelude.Text)+listPackageVersionsResponse_defaultDisplayVersion = Lens.lens (\ListPackageVersionsResponse' {defaultDisplayVersion} -> defaultDisplayVersion) (\s@ListPackageVersionsResponse' {} a -> s {defaultDisplayVersion = a} :: ListPackageVersionsResponse)++-- | A format of the package.+listPackageVersionsResponse_format :: Lens.Lens' ListPackageVersionsResponse (Prelude.Maybe PackageFormat)+listPackageVersionsResponse_format = Lens.lens (\ListPackageVersionsResponse' {format} -> format) (\s@ListPackageVersionsResponse' {} a -> s {format = a} :: ListPackageVersionsResponse)++-- | The namespace of the package that contains the requested package+-- versions. The package component that specifies its namespace depends on+-- its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+listPackageVersionsResponse_namespace :: Lens.Lens' ListPackageVersionsResponse (Prelude.Maybe Prelude.Text)+listPackageVersionsResponse_namespace = Lens.lens (\ListPackageVersionsResponse' {namespace} -> namespace) (\s@ListPackageVersionsResponse' {} a -> s {namespace = a} :: ListPackageVersionsResponse)++-- | If there are additional results, this is the token for the next set of+-- results.+listPackageVersionsResponse_nextToken :: Lens.Lens' ListPackageVersionsResponse (Prelude.Maybe Prelude.Text)+listPackageVersionsResponse_nextToken = Lens.lens (\ListPackageVersionsResponse' {nextToken} -> nextToken) (\s@ListPackageVersionsResponse' {} a -> s {nextToken = a} :: ListPackageVersionsResponse)++-- | The name of the package.+listPackageVersionsResponse_package :: Lens.Lens' ListPackageVersionsResponse (Prelude.Maybe Prelude.Text)+listPackageVersionsResponse_package = Lens.lens (\ListPackageVersionsResponse' {package} -> package) (\s@ListPackageVersionsResponse' {} a -> s {package = a} :: ListPackageVersionsResponse)++-- | The returned list of+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionSummary.html PackageVersionSummary>+-- objects.+listPackageVersionsResponse_versions :: Lens.Lens' ListPackageVersionsResponse (Prelude.Maybe [PackageVersionSummary])+listPackageVersionsResponse_versions = Lens.lens (\ListPackageVersionsResponse' {versions} -> versions) (\s@ListPackageVersionsResponse' {} a -> s {versions = a} :: ListPackageVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listPackageVersionsResponse_httpStatus :: Lens.Lens' ListPackageVersionsResponse Prelude.Int+listPackageVersionsResponse_httpStatus = Lens.lens (\ListPackageVersionsResponse' {httpStatus} -> httpStatus) (\s@ListPackageVersionsResponse' {} a -> s {httpStatus = a} :: ListPackageVersionsResponse)++instance Prelude.NFData ListPackageVersionsResponse where+ rnf ListPackageVersionsResponse' {..} =+ Prelude.rnf defaultDisplayVersion+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf versions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/ListPackages.hs view
@@ -0,0 +1,393 @@+{-# 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.CodeArtifact.ListPackages+-- 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/codeartifact/latest/APIReference/API_PackageSummary.html PackageSummary>+-- objects for packages in a repository that match the request parameters.+--+-- This operation returns paginated results.+module Amazonka.CodeArtifact.ListPackages+ ( -- * Creating a Request+ ListPackages (..),+ newListPackages,++ -- * Request Lenses+ listPackages_domainOwner,+ listPackages_format,+ listPackages_maxResults,+ listPackages_namespace,+ listPackages_nextToken,+ listPackages_packagePrefix,+ listPackages_publish,+ listPackages_upstream,+ listPackages_domain,+ listPackages_repository,++ -- * Destructuring the Response+ ListPackagesResponse (..),+ newListPackagesResponse,++ -- * Response Lenses+ listPackagesResponse_nextToken,+ listPackagesResponse_packages,+ listPackagesResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newListPackages' smart constructor.+data ListPackages = ListPackages'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The format used to filter requested packages. Only packages from the+ -- provided format will be returned.+ format :: Prelude.Maybe PackageFormat,+ -- | The maximum number of results to return per page.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The namespace used to filter requested packages. Only packages with the+ -- provided namespace will be returned. The package component that+ -- specifies its namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package is its @groupId@.+ --+ -- - The namespace of an npm package is its @scope@.+ --+ -- - Python and NuGet packages do not contain a corresponding component,+ -- packages of those formats do not have a namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The token for the next set of results. Use the value returned in the+ -- previous response in the next request to retrieve the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A prefix used to filter requested packages. Only packages with names+ -- that start with @packagePrefix@ are returned.+ packagePrefix :: Prelude.Maybe Prelude.Text,+ -- | The value of the @Publish@ package origin control restriction used to+ -- filter requested packages. Only packages with the provided restriction+ -- are returned. For more information, see+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>.+ publish :: Prelude.Maybe AllowPublish,+ -- | The value of the @Upstream@ package origin control restriction used to+ -- filter requested packages. Only packages with the provided restriction+ -- are returned. For more information, see+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>.+ upstream :: Prelude.Maybe AllowUpstream,+ -- | The name of the domain that contains the repository that contains the+ -- requested packages.+ domain :: Prelude.Text,+ -- | The name of the repository that contains the requested packages.+ repository :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackages' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'listPackages_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'format', 'listPackages_format' - The format used to filter requested packages. Only packages from the+-- provided format will be returned.+--+-- 'maxResults', 'listPackages_maxResults' - The maximum number of results to return per page.+--+-- 'namespace', 'listPackages_namespace' - The namespace used to filter requested packages. Only packages with the+-- provided namespace will be returned. The package component that+-- specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+--+-- 'nextToken', 'listPackages_nextToken' - The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+--+-- 'packagePrefix', 'listPackages_packagePrefix' - A prefix used to filter requested packages. Only packages with names+-- that start with @packagePrefix@ are returned.+--+-- 'publish', 'listPackages_publish' - The value of the @Publish@ package origin control restriction used to+-- filter requested packages. Only packages with the provided restriction+-- are returned. For more information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>.+--+-- 'upstream', 'listPackages_upstream' - The value of the @Upstream@ package origin control restriction used to+-- filter requested packages. Only packages with the provided restriction+-- are returned. For more information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>.+--+-- 'domain', 'listPackages_domain' - The name of the domain that contains the repository that contains the+-- requested packages.+--+-- 'repository', 'listPackages_repository' - The name of the repository that contains the requested packages.+newListPackages ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ ListPackages+newListPackages pDomain_ pRepository_ =+ ListPackages'+ { domainOwner = Prelude.Nothing,+ format = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ namespace = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ packagePrefix = Prelude.Nothing,+ publish = Prelude.Nothing,+ upstream = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+listPackages_domainOwner :: Lens.Lens' ListPackages (Prelude.Maybe Prelude.Text)+listPackages_domainOwner = Lens.lens (\ListPackages' {domainOwner} -> domainOwner) (\s@ListPackages' {} a -> s {domainOwner = a} :: ListPackages)++-- | The format used to filter requested packages. Only packages from the+-- provided format will be returned.+listPackages_format :: Lens.Lens' ListPackages (Prelude.Maybe PackageFormat)+listPackages_format = Lens.lens (\ListPackages' {format} -> format) (\s@ListPackages' {} a -> s {format = a} :: ListPackages)++-- | The maximum number of results to return per page.+listPackages_maxResults :: Lens.Lens' ListPackages (Prelude.Maybe Prelude.Natural)+listPackages_maxResults = Lens.lens (\ListPackages' {maxResults} -> maxResults) (\s@ListPackages' {} a -> s {maxResults = a} :: ListPackages)++-- | The namespace used to filter requested packages. Only packages with the+-- provided namespace will be returned. The package component that+-- specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+listPackages_namespace :: Lens.Lens' ListPackages (Prelude.Maybe Prelude.Text)+listPackages_namespace = Lens.lens (\ListPackages' {namespace} -> namespace) (\s@ListPackages' {} a -> s {namespace = a} :: ListPackages)++-- | The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+listPackages_nextToken :: Lens.Lens' ListPackages (Prelude.Maybe Prelude.Text)+listPackages_nextToken = Lens.lens (\ListPackages' {nextToken} -> nextToken) (\s@ListPackages' {} a -> s {nextToken = a} :: ListPackages)++-- | A prefix used to filter requested packages. Only packages with names+-- that start with @packagePrefix@ are returned.+listPackages_packagePrefix :: Lens.Lens' ListPackages (Prelude.Maybe Prelude.Text)+listPackages_packagePrefix = Lens.lens (\ListPackages' {packagePrefix} -> packagePrefix) (\s@ListPackages' {} a -> s {packagePrefix = a} :: ListPackages)++-- | The value of the @Publish@ package origin control restriction used to+-- filter requested packages. Only packages with the provided restriction+-- are returned. For more information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>.+listPackages_publish :: Lens.Lens' ListPackages (Prelude.Maybe AllowPublish)+listPackages_publish = Lens.lens (\ListPackages' {publish} -> publish) (\s@ListPackages' {} a -> s {publish = a} :: ListPackages)++-- | The value of the @Upstream@ package origin control restriction used to+-- filter requested packages. Only packages with the provided restriction+-- are returned. For more information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>.+listPackages_upstream :: Lens.Lens' ListPackages (Prelude.Maybe AllowUpstream)+listPackages_upstream = Lens.lens (\ListPackages' {upstream} -> upstream) (\s@ListPackages' {} a -> s {upstream = a} :: ListPackages)++-- | The name of the domain that contains the repository that contains the+-- requested packages.+listPackages_domain :: Lens.Lens' ListPackages Prelude.Text+listPackages_domain = Lens.lens (\ListPackages' {domain} -> domain) (\s@ListPackages' {} a -> s {domain = a} :: ListPackages)++-- | The name of the repository that contains the requested packages.+listPackages_repository :: Lens.Lens' ListPackages Prelude.Text+listPackages_repository = Lens.lens (\ListPackages' {repository} -> repository) (\s@ListPackages' {} a -> s {repository = a} :: ListPackages)++instance Core.AWSPager ListPackages where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listPackagesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listPackagesResponse_packages+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listPackages_nextToken+ Lens..~ rs+ Lens.^? listPackagesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListPackages where+ type AWSResponse ListPackages = ListPackagesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListPackagesResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "packages" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListPackages where+ hashWithSalt _salt ListPackages' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` packagePrefix+ `Prelude.hashWithSalt` publish+ `Prelude.hashWithSalt` upstream+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository++instance Prelude.NFData ListPackages where+ rnf ListPackages' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf packagePrefix+ `Prelude.seq` Prelude.rnf publish+ `Prelude.seq` Prelude.rnf upstream+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository++instance Data.ToHeaders ListPackages where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListPackages where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath ListPackages where+ toPath = Prelude.const "/v1/packages"++instance Data.ToQuery ListPackages where+ toQuery ListPackages' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "format" Data.=: format,+ "max-results" Data.=: maxResults,+ "namespace" Data.=: namespace,+ "next-token" Data.=: nextToken,+ "package-prefix" Data.=: packagePrefix,+ "publish" Data.=: publish,+ "upstream" Data.=: upstream,+ "domain" Data.=: domain,+ "repository" Data.=: repository+ ]++-- | /See:/ 'newListPackagesResponse' smart constructor.+data ListPackagesResponse = ListPackagesResponse'+ { -- | If there are additional results, this is the token for the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The list of returned+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageSummary.html PackageSummary>+ -- objects.+ packages :: Prelude.Maybe [PackageSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackagesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listPackagesResponse_nextToken' - If there are additional results, this is the token for the next set of+-- results.+--+-- 'packages', 'listPackagesResponse_packages' - The list of returned+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageSummary.html PackageSummary>+-- objects.+--+-- 'httpStatus', 'listPackagesResponse_httpStatus' - The response's http status code.+newListPackagesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPackagesResponse+newListPackagesResponse pHttpStatus_ =+ ListPackagesResponse'+ { nextToken = Prelude.Nothing,+ packages = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If there are additional results, this is the token for the next set of+-- results.+listPackagesResponse_nextToken :: Lens.Lens' ListPackagesResponse (Prelude.Maybe Prelude.Text)+listPackagesResponse_nextToken = Lens.lens (\ListPackagesResponse' {nextToken} -> nextToken) (\s@ListPackagesResponse' {} a -> s {nextToken = a} :: ListPackagesResponse)++-- | The list of returned+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageSummary.html PackageSummary>+-- objects.+listPackagesResponse_packages :: Lens.Lens' ListPackagesResponse (Prelude.Maybe [PackageSummary])+listPackagesResponse_packages = Lens.lens (\ListPackagesResponse' {packages} -> packages) (\s@ListPackagesResponse' {} a -> s {packages = a} :: ListPackagesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listPackagesResponse_httpStatus :: Lens.Lens' ListPackagesResponse Prelude.Int+listPackagesResponse_httpStatus = Lens.lens (\ListPackagesResponse' {httpStatus} -> httpStatus) (\s@ListPackagesResponse' {} a -> s {httpStatus = a} :: ListPackagesResponse)++instance Prelude.NFData ListPackagesResponse where+ rnf ListPackagesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf packages+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/ListRepositories.hs view
@@ -0,0 +1,249 @@+{-# 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.CodeArtifact.ListRepositories+-- 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/codeartifact/latest/APIReference/API_RepositorySummary.html RepositorySummary>+-- objects. Each @RepositorySummary@ contains information about a+-- repository in the specified Amazon Web Services account and that matches+-- the input parameters.+--+-- This operation returns paginated results.+module Amazonka.CodeArtifact.ListRepositories+ ( -- * Creating a Request+ ListRepositories (..),+ newListRepositories,++ -- * Request Lenses+ listRepositories_maxResults,+ listRepositories_nextToken,+ listRepositories_repositoryPrefix,++ -- * Destructuring the Response+ ListRepositoriesResponse (..),+ newListRepositoriesResponse,++ -- * Response Lenses+ listRepositoriesResponse_nextToken,+ listRepositoriesResponse_repositories,+ listRepositoriesResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newListRepositories' smart constructor.+data ListRepositories = ListRepositories'+ { -- | The maximum number of results to return per page.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token for the next set of results. Use the value returned in the+ -- previous response in the next request to retrieve the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A prefix used to filter returned repositories. Only repositories with+ -- names that start with @repositoryPrefix@ are returned.+ repositoryPrefix :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRepositories' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listRepositories_maxResults' - The maximum number of results to return per page.+--+-- 'nextToken', 'listRepositories_nextToken' - The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+--+-- 'repositoryPrefix', 'listRepositories_repositoryPrefix' - A prefix used to filter returned repositories. Only repositories with+-- names that start with @repositoryPrefix@ are returned.+newListRepositories ::+ ListRepositories+newListRepositories =+ ListRepositories'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ repositoryPrefix = Prelude.Nothing+ }++-- | The maximum number of results to return per page.+listRepositories_maxResults :: Lens.Lens' ListRepositories (Prelude.Maybe Prelude.Natural)+listRepositories_maxResults = Lens.lens (\ListRepositories' {maxResults} -> maxResults) (\s@ListRepositories' {} a -> s {maxResults = a} :: ListRepositories)++-- | The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+listRepositories_nextToken :: Lens.Lens' ListRepositories (Prelude.Maybe Prelude.Text)+listRepositories_nextToken = Lens.lens (\ListRepositories' {nextToken} -> nextToken) (\s@ListRepositories' {} a -> s {nextToken = a} :: ListRepositories)++-- | A prefix used to filter returned repositories. Only repositories with+-- names that start with @repositoryPrefix@ are returned.+listRepositories_repositoryPrefix :: Lens.Lens' ListRepositories (Prelude.Maybe Prelude.Text)+listRepositories_repositoryPrefix = Lens.lens (\ListRepositories' {repositoryPrefix} -> repositoryPrefix) (\s@ListRepositories' {} a -> s {repositoryPrefix = a} :: ListRepositories)++instance Core.AWSPager ListRepositories where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listRepositoriesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listRepositoriesResponse_repositories+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listRepositories_nextToken+ Lens..~ rs+ Lens.^? listRepositoriesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListRepositories where+ type+ AWSResponse ListRepositories =+ ListRepositoriesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListRepositoriesResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "repositories" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListRepositories where+ hashWithSalt _salt ListRepositories' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` repositoryPrefix++instance Prelude.NFData ListRepositories where+ rnf ListRepositories' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf repositoryPrefix++instance Data.ToHeaders ListRepositories where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListRepositories where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath ListRepositories where+ toPath = Prelude.const "/v1/repositories"++instance Data.ToQuery ListRepositories where+ toQuery ListRepositories' {..} =+ Prelude.mconcat+ [ "max-results" Data.=: maxResults,+ "next-token" Data.=: nextToken,+ "repository-prefix" Data.=: repositoryPrefix+ ]++-- | /See:/ 'newListRepositoriesResponse' smart constructor.+data ListRepositoriesResponse = ListRepositoriesResponse'+ { -- | If there are additional results, this is the token for the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The returned list of+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_RepositorySummary.html RepositorySummary>+ -- objects.+ repositories :: Prelude.Maybe [RepositorySummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRepositoriesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listRepositoriesResponse_nextToken' - If there are additional results, this is the token for the next set of+-- results.+--+-- 'repositories', 'listRepositoriesResponse_repositories' - The returned list of+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_RepositorySummary.html RepositorySummary>+-- objects.+--+-- 'httpStatus', 'listRepositoriesResponse_httpStatus' - The response's http status code.+newListRepositoriesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRepositoriesResponse+newListRepositoriesResponse pHttpStatus_ =+ ListRepositoriesResponse'+ { nextToken =+ Prelude.Nothing,+ repositories = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If there are additional results, this is the token for the next set of+-- results.+listRepositoriesResponse_nextToken :: Lens.Lens' ListRepositoriesResponse (Prelude.Maybe Prelude.Text)+listRepositoriesResponse_nextToken = Lens.lens (\ListRepositoriesResponse' {nextToken} -> nextToken) (\s@ListRepositoriesResponse' {} a -> s {nextToken = a} :: ListRepositoriesResponse)++-- | The returned list of+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_RepositorySummary.html RepositorySummary>+-- objects.+listRepositoriesResponse_repositories :: Lens.Lens' ListRepositoriesResponse (Prelude.Maybe [RepositorySummary])+listRepositoriesResponse_repositories = Lens.lens (\ListRepositoriesResponse' {repositories} -> repositories) (\s@ListRepositoriesResponse' {} a -> s {repositories = a} :: ListRepositoriesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listRepositoriesResponse_httpStatus :: Lens.Lens' ListRepositoriesResponse Prelude.Int+listRepositoriesResponse_httpStatus = Lens.lens (\ListRepositoriesResponse' {httpStatus} -> httpStatus) (\s@ListRepositoriesResponse' {} a -> s {httpStatus = a} :: ListRepositoriesResponse)++instance Prelude.NFData ListRepositoriesResponse where+ rnf ListRepositoriesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf repositories+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/ListRepositoriesInDomain.hs view
@@ -0,0 +1,295 @@+{-# 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.CodeArtifact.ListRepositoriesInDomain+-- 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/codeartifact/latest/APIReference/API_RepositorySummary.html RepositorySummary>+-- objects. Each @RepositorySummary@ contains information about a+-- repository in the specified domain and that matches the input+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.CodeArtifact.ListRepositoriesInDomain+ ( -- * Creating a Request+ ListRepositoriesInDomain (..),+ newListRepositoriesInDomain,++ -- * Request Lenses+ listRepositoriesInDomain_administratorAccount,+ listRepositoriesInDomain_domainOwner,+ listRepositoriesInDomain_maxResults,+ listRepositoriesInDomain_nextToken,+ listRepositoriesInDomain_repositoryPrefix,+ listRepositoriesInDomain_domain,++ -- * Destructuring the Response+ ListRepositoriesInDomainResponse (..),+ newListRepositoriesInDomainResponse,++ -- * Response Lenses+ listRepositoriesInDomainResponse_nextToken,+ listRepositoriesInDomainResponse_repositories,+ listRepositoriesInDomainResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newListRepositoriesInDomain' smart constructor.+data ListRepositoriesInDomain = ListRepositoriesInDomain'+ { -- | Filter the list of repositories to only include those that are managed+ -- by the Amazon Web Services account ID.+ administratorAccount :: Prelude.Maybe Prelude.Text,+ -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of results to return per page.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token for the next set of results. Use the value returned in the+ -- previous response in the next request to retrieve the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A prefix used to filter returned repositories. Only repositories with+ -- names that start with @repositoryPrefix@ are returned.+ repositoryPrefix :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the returned list of repositories.+ domain :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRepositoriesInDomain' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'administratorAccount', 'listRepositoriesInDomain_administratorAccount' - Filter the list of repositories to only include those that are managed+-- by the Amazon Web Services account ID.+--+-- 'domainOwner', 'listRepositoriesInDomain_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'maxResults', 'listRepositoriesInDomain_maxResults' - The maximum number of results to return per page.+--+-- 'nextToken', 'listRepositoriesInDomain_nextToken' - The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+--+-- 'repositoryPrefix', 'listRepositoriesInDomain_repositoryPrefix' - A prefix used to filter returned repositories. Only repositories with+-- names that start with @repositoryPrefix@ are returned.+--+-- 'domain', 'listRepositoriesInDomain_domain' - The name of the domain that contains the returned list of repositories.+newListRepositoriesInDomain ::+ -- | 'domain'+ Prelude.Text ->+ ListRepositoriesInDomain+newListRepositoriesInDomain pDomain_ =+ ListRepositoriesInDomain'+ { administratorAccount =+ Prelude.Nothing,+ domainOwner = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ repositoryPrefix = Prelude.Nothing,+ domain = pDomain_+ }++-- | Filter the list of repositories to only include those that are managed+-- by the Amazon Web Services account ID.+listRepositoriesInDomain_administratorAccount :: Lens.Lens' ListRepositoriesInDomain (Prelude.Maybe Prelude.Text)+listRepositoriesInDomain_administratorAccount = Lens.lens (\ListRepositoriesInDomain' {administratorAccount} -> administratorAccount) (\s@ListRepositoriesInDomain' {} a -> s {administratorAccount = a} :: ListRepositoriesInDomain)++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+listRepositoriesInDomain_domainOwner :: Lens.Lens' ListRepositoriesInDomain (Prelude.Maybe Prelude.Text)+listRepositoriesInDomain_domainOwner = Lens.lens (\ListRepositoriesInDomain' {domainOwner} -> domainOwner) (\s@ListRepositoriesInDomain' {} a -> s {domainOwner = a} :: ListRepositoriesInDomain)++-- | The maximum number of results to return per page.+listRepositoriesInDomain_maxResults :: Lens.Lens' ListRepositoriesInDomain (Prelude.Maybe Prelude.Natural)+listRepositoriesInDomain_maxResults = Lens.lens (\ListRepositoriesInDomain' {maxResults} -> maxResults) (\s@ListRepositoriesInDomain' {} a -> s {maxResults = a} :: ListRepositoriesInDomain)++-- | The token for the next set of results. Use the value returned in the+-- previous response in the next request to retrieve the next set of+-- results.+listRepositoriesInDomain_nextToken :: Lens.Lens' ListRepositoriesInDomain (Prelude.Maybe Prelude.Text)+listRepositoriesInDomain_nextToken = Lens.lens (\ListRepositoriesInDomain' {nextToken} -> nextToken) (\s@ListRepositoriesInDomain' {} a -> s {nextToken = a} :: ListRepositoriesInDomain)++-- | A prefix used to filter returned repositories. Only repositories with+-- names that start with @repositoryPrefix@ are returned.+listRepositoriesInDomain_repositoryPrefix :: Lens.Lens' ListRepositoriesInDomain (Prelude.Maybe Prelude.Text)+listRepositoriesInDomain_repositoryPrefix = Lens.lens (\ListRepositoriesInDomain' {repositoryPrefix} -> repositoryPrefix) (\s@ListRepositoriesInDomain' {} a -> s {repositoryPrefix = a} :: ListRepositoriesInDomain)++-- | The name of the domain that contains the returned list of repositories.+listRepositoriesInDomain_domain :: Lens.Lens' ListRepositoriesInDomain Prelude.Text+listRepositoriesInDomain_domain = Lens.lens (\ListRepositoriesInDomain' {domain} -> domain) (\s@ListRepositoriesInDomain' {} a -> s {domain = a} :: ListRepositoriesInDomain)++instance Core.AWSPager ListRepositoriesInDomain where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listRepositoriesInDomainResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listRepositoriesInDomainResponse_repositories+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listRepositoriesInDomain_nextToken+ Lens..~ rs+ Lens.^? listRepositoriesInDomainResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListRepositoriesInDomain where+ type+ AWSResponse ListRepositoriesInDomain =+ ListRepositoriesInDomainResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListRepositoriesInDomainResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "repositories" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListRepositoriesInDomain where+ hashWithSalt _salt ListRepositoriesInDomain' {..} =+ _salt+ `Prelude.hashWithSalt` administratorAccount+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` repositoryPrefix+ `Prelude.hashWithSalt` domain++instance Prelude.NFData ListRepositoriesInDomain where+ rnf ListRepositoriesInDomain' {..} =+ Prelude.rnf administratorAccount+ `Prelude.seq` Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf repositoryPrefix+ `Prelude.seq` Prelude.rnf domain++instance Data.ToHeaders ListRepositoriesInDomain where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListRepositoriesInDomain where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath ListRepositoriesInDomain where+ toPath = Prelude.const "/v1/domain/repositories"++instance Data.ToQuery ListRepositoriesInDomain where+ toQuery ListRepositoriesInDomain' {..} =+ Prelude.mconcat+ [ "administrator-account"+ Data.=: administratorAccount,+ "domain-owner" Data.=: domainOwner,+ "max-results" Data.=: maxResults,+ "next-token" Data.=: nextToken,+ "repository-prefix" Data.=: repositoryPrefix,+ "domain" Data.=: domain+ ]++-- | /See:/ 'newListRepositoriesInDomainResponse' smart constructor.+data ListRepositoriesInDomainResponse = ListRepositoriesInDomainResponse'+ { -- | If there are additional results, this is the token for the next set of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The returned list of repositories.+ repositories :: Prelude.Maybe [RepositorySummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRepositoriesInDomainResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listRepositoriesInDomainResponse_nextToken' - If there are additional results, this is the token for the next set of+-- results.+--+-- 'repositories', 'listRepositoriesInDomainResponse_repositories' - The returned list of repositories.+--+-- 'httpStatus', 'listRepositoriesInDomainResponse_httpStatus' - The response's http status code.+newListRepositoriesInDomainResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRepositoriesInDomainResponse+newListRepositoriesInDomainResponse pHttpStatus_ =+ ListRepositoriesInDomainResponse'+ { nextToken =+ Prelude.Nothing,+ repositories = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If there are additional results, this is the token for the next set of+-- results.+listRepositoriesInDomainResponse_nextToken :: Lens.Lens' ListRepositoriesInDomainResponse (Prelude.Maybe Prelude.Text)+listRepositoriesInDomainResponse_nextToken = Lens.lens (\ListRepositoriesInDomainResponse' {nextToken} -> nextToken) (\s@ListRepositoriesInDomainResponse' {} a -> s {nextToken = a} :: ListRepositoriesInDomainResponse)++-- | The returned list of repositories.+listRepositoriesInDomainResponse_repositories :: Lens.Lens' ListRepositoriesInDomainResponse (Prelude.Maybe [RepositorySummary])+listRepositoriesInDomainResponse_repositories = Lens.lens (\ListRepositoriesInDomainResponse' {repositories} -> repositories) (\s@ListRepositoriesInDomainResponse' {} a -> s {repositories = a} :: ListRepositoriesInDomainResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listRepositoriesInDomainResponse_httpStatus :: Lens.Lens' ListRepositoriesInDomainResponse Prelude.Int+listRepositoriesInDomainResponse_httpStatus = Lens.lens (\ListRepositoriesInDomainResponse' {httpStatus} -> httpStatus) (\s@ListRepositoriesInDomainResponse' {} a -> s {httpStatus = a} :: ListRepositoriesInDomainResponse)++instance+ Prelude.NFData+ ListRepositoriesInDomainResponse+ where+ rnf ListRepositoriesInDomainResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf repositories+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/ListTagsForResource.hs view
@@ -0,0 +1,166 @@+{-# 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.CodeArtifact.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)+--+-- Gets information about Amazon Web Services tags for a specified Amazon+-- Resource Name (ARN) in CodeArtifact.+module Amazonka.CodeArtifact.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_resourceArn,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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 resource to get tags for.+ 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 resource to get tags for.+newListTagsForResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceArn_ =+ ListTagsForResource' {resourceArn = pResourceArn_}++-- | The Amazon Resource Name (ARN) of the resource to get tags for.+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.postJSON (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.ToJSON ListTagsForResource where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath ListTagsForResource where+ toPath = Prelude.const "/v1/tags"++instance Data.ToQuery ListTagsForResource where+ toQuery ListTagsForResource' {..} =+ Prelude.mconcat ["resourceArn" Data.=: resourceArn]++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | A list of tag key and value pairs associated with the specified+ -- resource.+ tags :: Prelude.Maybe [Tag],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'listTagsForResourceResponse_tags' - A list of tag key and value pairs associated with the specified+-- resource.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of tag key and value pairs associated with the specified+-- resource.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe [Tag])+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/CodeArtifact/PutDomainPermissionsPolicy.hs view
@@ -0,0 +1,237 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.PutDomainPermissionsPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Sets a resource policy on a domain that specifies permissions to access+-- it.+--+-- When you call @PutDomainPermissionsPolicy@, the resource policy on the+-- domain is ignored when evaluting permissions. This ensures that the+-- owner of a domain cannot lock themselves out of the domain, which would+-- prevent them from being able to update the resource policy.+module Amazonka.CodeArtifact.PutDomainPermissionsPolicy+ ( -- * Creating a Request+ PutDomainPermissionsPolicy (..),+ newPutDomainPermissionsPolicy,++ -- * Request Lenses+ putDomainPermissionsPolicy_domainOwner,+ putDomainPermissionsPolicy_policyRevision,+ putDomainPermissionsPolicy_domain,+ putDomainPermissionsPolicy_policyDocument,++ -- * Destructuring the Response+ PutDomainPermissionsPolicyResponse (..),+ newPutDomainPermissionsPolicyResponse,++ -- * Response Lenses+ putDomainPermissionsPolicyResponse_policy,+ putDomainPermissionsPolicyResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newPutDomainPermissionsPolicy' smart constructor.+data PutDomainPermissionsPolicy = PutDomainPermissionsPolicy'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The current revision of the resource policy to be set. This revision is+ -- used for optimistic locking, which prevents others from overwriting your+ -- changes to the domain\'s resource policy.+ policyRevision :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain on which to set the resource policy.+ domain :: Prelude.Text,+ -- | A valid displayable JSON Aspen policy string to be set as the access+ -- control resource policy on the provided domain.+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutDomainPermissionsPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'putDomainPermissionsPolicy_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'policyRevision', 'putDomainPermissionsPolicy_policyRevision' - The current revision of the resource policy to be set. This revision is+-- used for optimistic locking, which prevents others from overwriting your+-- changes to the domain\'s resource policy.+--+-- 'domain', 'putDomainPermissionsPolicy_domain' - The name of the domain on which to set the resource policy.+--+-- 'policyDocument', 'putDomainPermissionsPolicy_policyDocument' - A valid displayable JSON Aspen policy string to be set as the access+-- control resource policy on the provided domain.+newPutDomainPermissionsPolicy ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ PutDomainPermissionsPolicy+newPutDomainPermissionsPolicy+ pDomain_+ pPolicyDocument_ =+ PutDomainPermissionsPolicy'+ { domainOwner =+ Prelude.Nothing,+ policyRevision = Prelude.Nothing,+ domain = pDomain_,+ policyDocument = pPolicyDocument_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+putDomainPermissionsPolicy_domainOwner :: Lens.Lens' PutDomainPermissionsPolicy (Prelude.Maybe Prelude.Text)+putDomainPermissionsPolicy_domainOwner = Lens.lens (\PutDomainPermissionsPolicy' {domainOwner} -> domainOwner) (\s@PutDomainPermissionsPolicy' {} a -> s {domainOwner = a} :: PutDomainPermissionsPolicy)++-- | The current revision of the resource policy to be set. This revision is+-- used for optimistic locking, which prevents others from overwriting your+-- changes to the domain\'s resource policy.+putDomainPermissionsPolicy_policyRevision :: Lens.Lens' PutDomainPermissionsPolicy (Prelude.Maybe Prelude.Text)+putDomainPermissionsPolicy_policyRevision = Lens.lens (\PutDomainPermissionsPolicy' {policyRevision} -> policyRevision) (\s@PutDomainPermissionsPolicy' {} a -> s {policyRevision = a} :: PutDomainPermissionsPolicy)++-- | The name of the domain on which to set the resource policy.+putDomainPermissionsPolicy_domain :: Lens.Lens' PutDomainPermissionsPolicy Prelude.Text+putDomainPermissionsPolicy_domain = Lens.lens (\PutDomainPermissionsPolicy' {domain} -> domain) (\s@PutDomainPermissionsPolicy' {} a -> s {domain = a} :: PutDomainPermissionsPolicy)++-- | A valid displayable JSON Aspen policy string to be set as the access+-- control resource policy on the provided domain.+putDomainPermissionsPolicy_policyDocument :: Lens.Lens' PutDomainPermissionsPolicy Prelude.Text+putDomainPermissionsPolicy_policyDocument = Lens.lens (\PutDomainPermissionsPolicy' {policyDocument} -> policyDocument) (\s@PutDomainPermissionsPolicy' {} a -> s {policyDocument = a} :: PutDomainPermissionsPolicy)++instance Core.AWSRequest PutDomainPermissionsPolicy where+ type+ AWSResponse PutDomainPermissionsPolicy =+ PutDomainPermissionsPolicyResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ PutDomainPermissionsPolicyResponse'+ Prelude.<$> (x Data..?> "policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable PutDomainPermissionsPolicy where+ hashWithSalt _salt PutDomainPermissionsPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` policyRevision+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` policyDocument++instance Prelude.NFData PutDomainPermissionsPolicy where+ rnf PutDomainPermissionsPolicy' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf policyRevision+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf policyDocument++instance Data.ToHeaders PutDomainPermissionsPolicy where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PutDomainPermissionsPolicy where+ toJSON PutDomainPermissionsPolicy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("domainOwner" Data..=) Prelude.<$> domainOwner,+ ("policyRevision" Data..=)+ Prelude.<$> policyRevision,+ Prelude.Just ("domain" Data..= domain),+ Prelude.Just+ ("policyDocument" Data..= policyDocument)+ ]+ )++instance Data.ToPath PutDomainPermissionsPolicy where+ toPath =+ Prelude.const "/v1/domain/permissions/policy"++instance Data.ToQuery PutDomainPermissionsPolicy where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newPutDomainPermissionsPolicyResponse' smart constructor.+data PutDomainPermissionsPolicyResponse = PutDomainPermissionsPolicyResponse'+ { -- | The resource policy that was set after processing the request.+ policy :: Prelude.Maybe ResourcePolicy,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutDomainPermissionsPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'putDomainPermissionsPolicyResponse_policy' - The resource policy that was set after processing the request.+--+-- 'httpStatus', 'putDomainPermissionsPolicyResponse_httpStatus' - The response's http status code.+newPutDomainPermissionsPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ PutDomainPermissionsPolicyResponse+newPutDomainPermissionsPolicyResponse pHttpStatus_ =+ PutDomainPermissionsPolicyResponse'+ { policy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The resource policy that was set after processing the request.+putDomainPermissionsPolicyResponse_policy :: Lens.Lens' PutDomainPermissionsPolicyResponse (Prelude.Maybe ResourcePolicy)+putDomainPermissionsPolicyResponse_policy = Lens.lens (\PutDomainPermissionsPolicyResponse' {policy} -> policy) (\s@PutDomainPermissionsPolicyResponse' {} a -> s {policy = a} :: PutDomainPermissionsPolicyResponse)++-- | The response's http status code.+putDomainPermissionsPolicyResponse_httpStatus :: Lens.Lens' PutDomainPermissionsPolicyResponse Prelude.Int+putDomainPermissionsPolicyResponse_httpStatus = Lens.lens (\PutDomainPermissionsPolicyResponse' {httpStatus} -> httpStatus) (\s@PutDomainPermissionsPolicyResponse' {} a -> s {httpStatus = a} :: PutDomainPermissionsPolicyResponse)++instance+ Prelude.NFData+ PutDomainPermissionsPolicyResponse+ where+ rnf PutDomainPermissionsPolicyResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/PutPackageOriginConfiguration.hs view
@@ -0,0 +1,363 @@+{-# 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.CodeArtifact.PutPackageOriginConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Sets the package origin configuration for a package.+--+-- The package origin configuration determines how new versions of a+-- package can be added to a repository. You can allow or block direct+-- publishing of new package versions, or ingestion and retaining of new+-- package versions from an external connection or upstream source. For+-- more information about package origin controls and configuration, see+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/package-origin-controls.html Editing package origin controls>+-- in the /CodeArtifact User Guide/.+--+-- @PutPackageOriginConfiguration@ can be called on a package that doesn\'t+-- yet exist in the repository. When called on a package that does not+-- exist, a package is created in the repository with no versions and the+-- requested restrictions are set on the package. This can be used to+-- preemptively block ingesting or retaining any versions from external+-- connections or upstream repositories, or to block publishing any+-- versions of the package into the repository before connecting any+-- package managers or publishers to the repository.+module Amazonka.CodeArtifact.PutPackageOriginConfiguration+ ( -- * Creating a Request+ PutPackageOriginConfiguration (..),+ newPutPackageOriginConfiguration,++ -- * Request Lenses+ putPackageOriginConfiguration_domainOwner,+ putPackageOriginConfiguration_namespace,+ putPackageOriginConfiguration_domain,+ putPackageOriginConfiguration_repository,+ putPackageOriginConfiguration_format,+ putPackageOriginConfiguration_package,+ putPackageOriginConfiguration_restrictions,++ -- * Destructuring the Response+ PutPackageOriginConfigurationResponse (..),+ newPutPackageOriginConfigurationResponse,++ -- * Response Lenses+ putPackageOriginConfigurationResponse_originConfiguration,+ putPackageOriginConfigurationResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newPutPackageOriginConfiguration' smart constructor.+data PutPackageOriginConfiguration = PutPackageOriginConfiguration'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The namespace of the package to be updated. The package component that+ -- specifies its namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package is its @groupId@.+ --+ -- - The namespace of an npm package is its @scope@.+ --+ -- - Python and NuGet packages do not contain a corresponding component,+ -- packages of those formats do not have a namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository that contains the+ -- package.+ domain :: Prelude.Text,+ -- | The name of the repository that contains the package.+ repository :: Prelude.Text,+ -- | A format that specifies the type of the package to be updated.+ format :: PackageFormat,+ -- | The name of the package to be updated.+ package :: Prelude.Text,+ -- | A+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>+ -- object that contains information about the @upstream@ and @publish@+ -- package origin restrictions. The @upstream@ restriction determines if+ -- new package versions can be ingested or retained from external+ -- connections or upstream repositories. The @publish@ restriction+ -- determines if new package versions can be published directly to the+ -- repository.+ --+ -- You must include both the desired @upstream@ and @publish@ restrictions.+ restrictions :: PackageOriginRestrictions+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutPackageOriginConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'putPackageOriginConfiguration_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'namespace', 'putPackageOriginConfiguration_namespace' - The namespace of the package to be updated. The package component that+-- specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+--+-- 'domain', 'putPackageOriginConfiguration_domain' - The name of the domain that contains the repository that contains the+-- package.+--+-- 'repository', 'putPackageOriginConfiguration_repository' - The name of the repository that contains the package.+--+-- 'format', 'putPackageOriginConfiguration_format' - A format that specifies the type of the package to be updated.+--+-- 'package', 'putPackageOriginConfiguration_package' - The name of the package to be updated.+--+-- 'restrictions', 'putPackageOriginConfiguration_restrictions' - A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>+-- object that contains information about the @upstream@ and @publish@+-- package origin restrictions. The @upstream@ restriction determines if+-- new package versions can be ingested or retained from external+-- connections or upstream repositories. The @publish@ restriction+-- determines if new package versions can be published directly to the+-- repository.+--+-- You must include both the desired @upstream@ and @publish@ restrictions.+newPutPackageOriginConfiguration ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ -- | 'restrictions'+ PackageOriginRestrictions ->+ PutPackageOriginConfiguration+newPutPackageOriginConfiguration+ pDomain_+ pRepository_+ pFormat_+ pPackage_+ pRestrictions_ =+ PutPackageOriginConfiguration'+ { domainOwner =+ Prelude.Nothing,+ namespace = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_,+ restrictions = pRestrictions_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+putPackageOriginConfiguration_domainOwner :: Lens.Lens' PutPackageOriginConfiguration (Prelude.Maybe Prelude.Text)+putPackageOriginConfiguration_domainOwner = Lens.lens (\PutPackageOriginConfiguration' {domainOwner} -> domainOwner) (\s@PutPackageOriginConfiguration' {} a -> s {domainOwner = a} :: PutPackageOriginConfiguration)++-- | The namespace of the package to be updated. The package component that+-- specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+putPackageOriginConfiguration_namespace :: Lens.Lens' PutPackageOriginConfiguration (Prelude.Maybe Prelude.Text)+putPackageOriginConfiguration_namespace = Lens.lens (\PutPackageOriginConfiguration' {namespace} -> namespace) (\s@PutPackageOriginConfiguration' {} a -> s {namespace = a} :: PutPackageOriginConfiguration)++-- | The name of the domain that contains the repository that contains the+-- package.+putPackageOriginConfiguration_domain :: Lens.Lens' PutPackageOriginConfiguration Prelude.Text+putPackageOriginConfiguration_domain = Lens.lens (\PutPackageOriginConfiguration' {domain} -> domain) (\s@PutPackageOriginConfiguration' {} a -> s {domain = a} :: PutPackageOriginConfiguration)++-- | The name of the repository that contains the package.+putPackageOriginConfiguration_repository :: Lens.Lens' PutPackageOriginConfiguration Prelude.Text+putPackageOriginConfiguration_repository = Lens.lens (\PutPackageOriginConfiguration' {repository} -> repository) (\s@PutPackageOriginConfiguration' {} a -> s {repository = a} :: PutPackageOriginConfiguration)++-- | A format that specifies the type of the package to be updated.+putPackageOriginConfiguration_format :: Lens.Lens' PutPackageOriginConfiguration PackageFormat+putPackageOriginConfiguration_format = Lens.lens (\PutPackageOriginConfiguration' {format} -> format) (\s@PutPackageOriginConfiguration' {} a -> s {format = a} :: PutPackageOriginConfiguration)++-- | The name of the package to be updated.+putPackageOriginConfiguration_package :: Lens.Lens' PutPackageOriginConfiguration Prelude.Text+putPackageOriginConfiguration_package = Lens.lens (\PutPackageOriginConfiguration' {package} -> package) (\s@PutPackageOriginConfiguration' {} a -> s {package = a} :: PutPackageOriginConfiguration)++-- | A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>+-- object that contains information about the @upstream@ and @publish@+-- package origin restrictions. The @upstream@ restriction determines if+-- new package versions can be ingested or retained from external+-- connections or upstream repositories. The @publish@ restriction+-- determines if new package versions can be published directly to the+-- repository.+--+-- You must include both the desired @upstream@ and @publish@ restrictions.+putPackageOriginConfiguration_restrictions :: Lens.Lens' PutPackageOriginConfiguration PackageOriginRestrictions+putPackageOriginConfiguration_restrictions = Lens.lens (\PutPackageOriginConfiguration' {restrictions} -> restrictions) (\s@PutPackageOriginConfiguration' {} a -> s {restrictions = a} :: PutPackageOriginConfiguration)++instance+ Core.AWSRequest+ PutPackageOriginConfiguration+ where+ type+ AWSResponse PutPackageOriginConfiguration =+ PutPackageOriginConfigurationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ PutPackageOriginConfigurationResponse'+ Prelude.<$> (x Data..?> "originConfiguration")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ PutPackageOriginConfiguration+ where+ hashWithSalt _salt PutPackageOriginConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package+ `Prelude.hashWithSalt` restrictions++instance Prelude.NFData PutPackageOriginConfiguration where+ rnf PutPackageOriginConfiguration' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf restrictions++instance Data.ToHeaders PutPackageOriginConfiguration where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PutPackageOriginConfiguration where+ toJSON PutPackageOriginConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("restrictions" Data..= restrictions)]+ )++instance Data.ToPath PutPackageOriginConfiguration where+ toPath = Prelude.const "/v1/package"++instance Data.ToQuery PutPackageOriginConfiguration where+ toQuery PutPackageOriginConfiguration' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "namespace" Data.=: namespace,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package+ ]++-- | /See:/ 'newPutPackageOriginConfigurationResponse' smart constructor.+data PutPackageOriginConfigurationResponse = PutPackageOriginConfigurationResponse'+ { -- | A+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginConfiguration.html PackageOriginConfiguration>+ -- object that describes the origin configuration set for the package. It+ -- contains a+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>+ -- object that describes how new versions of the package can be introduced+ -- to the repository.+ originConfiguration :: Prelude.Maybe PackageOriginConfiguration,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutPackageOriginConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'originConfiguration', 'putPackageOriginConfigurationResponse_originConfiguration' - A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginConfiguration.html PackageOriginConfiguration>+-- object that describes the origin configuration set for the package. It+-- contains a+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>+-- object that describes how new versions of the package can be introduced+-- to the repository.+--+-- 'httpStatus', 'putPackageOriginConfigurationResponse_httpStatus' - The response's http status code.+newPutPackageOriginConfigurationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ PutPackageOriginConfigurationResponse+newPutPackageOriginConfigurationResponse pHttpStatus_ =+ PutPackageOriginConfigurationResponse'+ { originConfiguration =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginConfiguration.html PackageOriginConfiguration>+-- object that describes the origin configuration set for the package. It+-- contains a+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>+-- object that describes how new versions of the package can be introduced+-- to the repository.+putPackageOriginConfigurationResponse_originConfiguration :: Lens.Lens' PutPackageOriginConfigurationResponse (Prelude.Maybe PackageOriginConfiguration)+putPackageOriginConfigurationResponse_originConfiguration = Lens.lens (\PutPackageOriginConfigurationResponse' {originConfiguration} -> originConfiguration) (\s@PutPackageOriginConfigurationResponse' {} a -> s {originConfiguration = a} :: PutPackageOriginConfigurationResponse)++-- | The response's http status code.+putPackageOriginConfigurationResponse_httpStatus :: Lens.Lens' PutPackageOriginConfigurationResponse Prelude.Int+putPackageOriginConfigurationResponse_httpStatus = Lens.lens (\PutPackageOriginConfigurationResponse' {httpStatus} -> httpStatus) (\s@PutPackageOriginConfigurationResponse' {} a -> s {httpStatus = a} :: PutPackageOriginConfigurationResponse)++instance+ Prelude.NFData+ PutPackageOriginConfigurationResponse+ where+ rnf PutPackageOriginConfigurationResponse' {..} =+ Prelude.rnf originConfiguration+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/PutRepositoryPermissionsPolicy.hs view
@@ -0,0 +1,276 @@+{-# 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.CodeArtifact.PutRepositoryPermissionsPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Sets the resource policy on a repository that specifies permissions to+-- access it.+--+-- When you call @PutRepositoryPermissionsPolicy@, the resource policy on+-- the repository is ignored when evaluting permissions. This ensures that+-- the owner of a repository cannot lock themselves out of the repository,+-- which would prevent them from being able to update the resource policy.+module Amazonka.CodeArtifact.PutRepositoryPermissionsPolicy+ ( -- * Creating a Request+ PutRepositoryPermissionsPolicy (..),+ newPutRepositoryPermissionsPolicy,++ -- * Request Lenses+ putRepositoryPermissionsPolicy_domainOwner,+ putRepositoryPermissionsPolicy_policyRevision,+ putRepositoryPermissionsPolicy_domain,+ putRepositoryPermissionsPolicy_repository,+ putRepositoryPermissionsPolicy_policyDocument,++ -- * Destructuring the Response+ PutRepositoryPermissionsPolicyResponse (..),+ newPutRepositoryPermissionsPolicyResponse,++ -- * Response Lenses+ putRepositoryPermissionsPolicyResponse_policy,+ putRepositoryPermissionsPolicyResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newPutRepositoryPermissionsPolicy' smart constructor.+data PutRepositoryPermissionsPolicy = PutRepositoryPermissionsPolicy'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | Sets the revision of the resource policy that specifies permissions to+ -- access the repository. This revision is used for optimistic locking,+ -- which prevents others from overwriting your changes to the repository\'s+ -- resource policy.+ policyRevision :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain containing the repository to set the resource+ -- policy on.+ domain :: Prelude.Text,+ -- | The name of the repository to set the resource policy on.+ repository :: Prelude.Text,+ -- | A valid displayable JSON Aspen policy string to be set as the access+ -- control resource policy on the provided repository.+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutRepositoryPermissionsPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'putRepositoryPermissionsPolicy_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'policyRevision', 'putRepositoryPermissionsPolicy_policyRevision' - Sets the revision of the resource policy that specifies permissions to+-- access the repository. This revision is used for optimistic locking,+-- which prevents others from overwriting your changes to the repository\'s+-- resource policy.+--+-- 'domain', 'putRepositoryPermissionsPolicy_domain' - The name of the domain containing the repository to set the resource+-- policy on.+--+-- 'repository', 'putRepositoryPermissionsPolicy_repository' - The name of the repository to set the resource policy on.+--+-- 'policyDocument', 'putRepositoryPermissionsPolicy_policyDocument' - A valid displayable JSON Aspen policy string to be set as the access+-- control resource policy on the provided repository.+newPutRepositoryPermissionsPolicy ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ PutRepositoryPermissionsPolicy+newPutRepositoryPermissionsPolicy+ pDomain_+ pRepository_+ pPolicyDocument_ =+ PutRepositoryPermissionsPolicy'+ { domainOwner =+ Prelude.Nothing,+ policyRevision = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ policyDocument = pPolicyDocument_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+putRepositoryPermissionsPolicy_domainOwner :: Lens.Lens' PutRepositoryPermissionsPolicy (Prelude.Maybe Prelude.Text)+putRepositoryPermissionsPolicy_domainOwner = Lens.lens (\PutRepositoryPermissionsPolicy' {domainOwner} -> domainOwner) (\s@PutRepositoryPermissionsPolicy' {} a -> s {domainOwner = a} :: PutRepositoryPermissionsPolicy)++-- | Sets the revision of the resource policy that specifies permissions to+-- access the repository. This revision is used for optimistic locking,+-- which prevents others from overwriting your changes to the repository\'s+-- resource policy.+putRepositoryPermissionsPolicy_policyRevision :: Lens.Lens' PutRepositoryPermissionsPolicy (Prelude.Maybe Prelude.Text)+putRepositoryPermissionsPolicy_policyRevision = Lens.lens (\PutRepositoryPermissionsPolicy' {policyRevision} -> policyRevision) (\s@PutRepositoryPermissionsPolicy' {} a -> s {policyRevision = a} :: PutRepositoryPermissionsPolicy)++-- | The name of the domain containing the repository to set the resource+-- policy on.+putRepositoryPermissionsPolicy_domain :: Lens.Lens' PutRepositoryPermissionsPolicy Prelude.Text+putRepositoryPermissionsPolicy_domain = Lens.lens (\PutRepositoryPermissionsPolicy' {domain} -> domain) (\s@PutRepositoryPermissionsPolicy' {} a -> s {domain = a} :: PutRepositoryPermissionsPolicy)++-- | The name of the repository to set the resource policy on.+putRepositoryPermissionsPolicy_repository :: Lens.Lens' PutRepositoryPermissionsPolicy Prelude.Text+putRepositoryPermissionsPolicy_repository = Lens.lens (\PutRepositoryPermissionsPolicy' {repository} -> repository) (\s@PutRepositoryPermissionsPolicy' {} a -> s {repository = a} :: PutRepositoryPermissionsPolicy)++-- | A valid displayable JSON Aspen policy string to be set as the access+-- control resource policy on the provided repository.+putRepositoryPermissionsPolicy_policyDocument :: Lens.Lens' PutRepositoryPermissionsPolicy Prelude.Text+putRepositoryPermissionsPolicy_policyDocument = Lens.lens (\PutRepositoryPermissionsPolicy' {policyDocument} -> policyDocument) (\s@PutRepositoryPermissionsPolicy' {} a -> s {policyDocument = a} :: PutRepositoryPermissionsPolicy)++instance+ Core.AWSRequest+ PutRepositoryPermissionsPolicy+ where+ type+ AWSResponse PutRepositoryPermissionsPolicy =+ PutRepositoryPermissionsPolicyResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ PutRepositoryPermissionsPolicyResponse'+ Prelude.<$> (x Data..?> "policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ PutRepositoryPermissionsPolicy+ where+ hashWithSalt+ _salt+ PutRepositoryPermissionsPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` policyRevision+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` policyDocument++instance+ Prelude.NFData+ PutRepositoryPermissionsPolicy+ where+ rnf PutRepositoryPermissionsPolicy' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf policyRevision+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf policyDocument++instance+ Data.ToHeaders+ PutRepositoryPermissionsPolicy+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PutRepositoryPermissionsPolicy where+ toJSON PutRepositoryPermissionsPolicy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("policyRevision" Data..=)+ Prelude.<$> policyRevision,+ Prelude.Just+ ("policyDocument" Data..= policyDocument)+ ]+ )++instance Data.ToPath PutRepositoryPermissionsPolicy where+ toPath =+ Prelude.const "/v1/repository/permissions/policy"++instance Data.ToQuery PutRepositoryPermissionsPolicy where+ toQuery PutRepositoryPermissionsPolicy' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain,+ "repository" Data.=: repository+ ]++-- | /See:/ 'newPutRepositoryPermissionsPolicyResponse' smart constructor.+data PutRepositoryPermissionsPolicyResponse = PutRepositoryPermissionsPolicyResponse'+ { -- | The resource policy that was set after processing the request.+ policy :: Prelude.Maybe ResourcePolicy,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutRepositoryPermissionsPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'putRepositoryPermissionsPolicyResponse_policy' - The resource policy that was set after processing the request.+--+-- 'httpStatus', 'putRepositoryPermissionsPolicyResponse_httpStatus' - The response's http status code.+newPutRepositoryPermissionsPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ PutRepositoryPermissionsPolicyResponse+newPutRepositoryPermissionsPolicyResponse+ pHttpStatus_ =+ PutRepositoryPermissionsPolicyResponse'+ { policy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The resource policy that was set after processing the request.+putRepositoryPermissionsPolicyResponse_policy :: Lens.Lens' PutRepositoryPermissionsPolicyResponse (Prelude.Maybe ResourcePolicy)+putRepositoryPermissionsPolicyResponse_policy = Lens.lens (\PutRepositoryPermissionsPolicyResponse' {policy} -> policy) (\s@PutRepositoryPermissionsPolicyResponse' {} a -> s {policy = a} :: PutRepositoryPermissionsPolicyResponse)++-- | The response's http status code.+putRepositoryPermissionsPolicyResponse_httpStatus :: Lens.Lens' PutRepositoryPermissionsPolicyResponse Prelude.Int+putRepositoryPermissionsPolicyResponse_httpStatus = Lens.lens (\PutRepositoryPermissionsPolicyResponse' {httpStatus} -> httpStatus) (\s@PutRepositoryPermissionsPolicyResponse' {} a -> s {httpStatus = a} :: PutRepositoryPermissionsPolicyResponse)++instance+ Prelude.NFData+ PutRepositoryPermissionsPolicyResponse+ where+ rnf PutRepositoryPermissionsPolicyResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/TagResource.hs view
@@ -0,0 +1,166 @@+{-# 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.CodeArtifact.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 or updates tags for a resource in CodeArtifact.+module Amazonka.CodeArtifact.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_resourceArn,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,++ -- * Response Lenses+ tagResourceResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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 resource that you want to add or+ -- update tags for.+ resourceArn :: Prelude.Text,+ -- | The tags you want to modify or add to the resource.+ tags :: [Tag]+ }+ 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 resource that you want to add or+-- update tags for.+--+-- 'tags', 'tagResource_tags' - The tags you want to modify or add to the resource.+newTagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pResourceArn_ =+ TagResource'+ { resourceArn = pResourceArn_,+ tags = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the resource that you want to add or+-- update tags for.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++-- | The tags you want to modify or add to the resource.+tagResource_tags :: Lens.Lens' TagResource [Tag]+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 = Prelude.const "/v1/tag"++instance Data.ToQuery TagResource where+ toQuery TagResource' {..} =+ Prelude.mconcat ["resourceArn" Data.=: resourceArn]++-- | /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/CodeArtifact/Types.hs view
@@ -0,0 +1,399 @@+{-# 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.CodeArtifact.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.CodeArtifact.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _ConflictException,+ _InternalServerException,+ _ResourceNotFoundException,+ _ServiceQuotaExceededException,+ _ThrottlingException,+ _ValidationException,++ -- * AllowPublish+ AllowPublish (..),++ -- * AllowUpstream+ AllowUpstream (..),++ -- * DomainStatus+ DomainStatus (..),++ -- * ExternalConnectionStatus+ ExternalConnectionStatus (..),++ -- * HashAlgorithm+ HashAlgorithm (..),++ -- * PackageFormat+ PackageFormat (..),++ -- * PackageVersionErrorCode+ PackageVersionErrorCode (..),++ -- * PackageVersionOriginType+ PackageVersionOriginType (..),++ -- * PackageVersionSortType+ PackageVersionSortType (..),++ -- * PackageVersionStatus+ PackageVersionStatus (..),++ -- * AssetSummary+ AssetSummary (..),+ newAssetSummary,+ assetSummary_hashes,+ assetSummary_size,+ assetSummary_name,++ -- * DomainDescription+ DomainDescription (..),+ newDomainDescription,+ domainDescription_arn,+ domainDescription_assetSizeBytes,+ domainDescription_createdTime,+ domainDescription_encryptionKey,+ domainDescription_name,+ domainDescription_owner,+ domainDescription_repositoryCount,+ domainDescription_s3BucketArn,+ domainDescription_status,++ -- * DomainEntryPoint+ DomainEntryPoint (..),+ newDomainEntryPoint,+ domainEntryPoint_externalConnectionName,+ domainEntryPoint_repositoryName,++ -- * DomainSummary+ DomainSummary (..),+ newDomainSummary,+ domainSummary_arn,+ domainSummary_createdTime,+ domainSummary_encryptionKey,+ domainSummary_name,+ domainSummary_owner,+ domainSummary_status,++ -- * LicenseInfo+ LicenseInfo (..),+ newLicenseInfo,+ licenseInfo_name,+ licenseInfo_url,++ -- * PackageDependency+ PackageDependency (..),+ newPackageDependency,+ packageDependency_dependencyType,+ packageDependency_namespace,+ packageDependency_package,+ packageDependency_versionRequirement,++ -- * PackageDescription+ PackageDescription (..),+ newPackageDescription,+ packageDescription_format,+ packageDescription_name,+ packageDescription_namespace,+ packageDescription_originConfiguration,++ -- * PackageOriginConfiguration+ PackageOriginConfiguration (..),+ newPackageOriginConfiguration,+ packageOriginConfiguration_restrictions,++ -- * PackageOriginRestrictions+ PackageOriginRestrictions (..),+ newPackageOriginRestrictions,+ packageOriginRestrictions_publish,+ packageOriginRestrictions_upstream,++ -- * PackageSummary+ PackageSummary (..),+ newPackageSummary,+ packageSummary_format,+ packageSummary_namespace,+ packageSummary_originConfiguration,+ packageSummary_package,++ -- * PackageVersionDescription+ PackageVersionDescription (..),+ newPackageVersionDescription,+ packageVersionDescription_displayName,+ packageVersionDescription_format,+ packageVersionDescription_homePage,+ packageVersionDescription_licenses,+ packageVersionDescription_namespace,+ packageVersionDescription_origin,+ packageVersionDescription_packageName,+ packageVersionDescription_publishedTime,+ packageVersionDescription_revision,+ packageVersionDescription_sourceCodeRepository,+ packageVersionDescription_status,+ packageVersionDescription_summary,+ packageVersionDescription_version,++ -- * PackageVersionError+ PackageVersionError (..),+ newPackageVersionError,+ packageVersionError_errorCode,+ packageVersionError_errorMessage,++ -- * PackageVersionOrigin+ PackageVersionOrigin (..),+ newPackageVersionOrigin,+ packageVersionOrigin_domainEntryPoint,+ packageVersionOrigin_originType,++ -- * PackageVersionSummary+ PackageVersionSummary (..),+ newPackageVersionSummary,+ packageVersionSummary_origin,+ packageVersionSummary_revision,+ packageVersionSummary_version,+ packageVersionSummary_status,++ -- * RepositoryDescription+ RepositoryDescription (..),+ newRepositoryDescription,+ repositoryDescription_administratorAccount,+ repositoryDescription_arn,+ repositoryDescription_description,+ repositoryDescription_domainName,+ repositoryDescription_domainOwner,+ repositoryDescription_externalConnections,+ repositoryDescription_name,+ repositoryDescription_upstreams,++ -- * RepositoryExternalConnectionInfo+ RepositoryExternalConnectionInfo (..),+ newRepositoryExternalConnectionInfo,+ repositoryExternalConnectionInfo_externalConnectionName,+ repositoryExternalConnectionInfo_packageFormat,+ repositoryExternalConnectionInfo_status,++ -- * RepositorySummary+ RepositorySummary (..),+ newRepositorySummary,+ repositorySummary_administratorAccount,+ repositorySummary_arn,+ repositorySummary_description,+ repositorySummary_domainName,+ repositorySummary_domainOwner,+ repositorySummary_name,++ -- * ResourcePolicy+ ResourcePolicy (..),+ newResourcePolicy,+ resourcePolicy_document,+ resourcePolicy_resourceArn,+ resourcePolicy_revision,++ -- * SuccessfulPackageVersionInfo+ SuccessfulPackageVersionInfo (..),+ newSuccessfulPackageVersionInfo,+ successfulPackageVersionInfo_revision,+ successfulPackageVersionInfo_status,++ -- * Tag+ Tag (..),+ newTag,+ tag_key,+ tag_value,++ -- * UpstreamRepository+ UpstreamRepository (..),+ newUpstreamRepository,+ upstreamRepository_repositoryName,++ -- * UpstreamRepositoryInfo+ UpstreamRepositoryInfo (..),+ newUpstreamRepositoryInfo,+ upstreamRepositoryInfo_repositoryName,+ )+where++import Amazonka.CodeArtifact.Types.AllowPublish+import Amazonka.CodeArtifact.Types.AllowUpstream+import Amazonka.CodeArtifact.Types.AssetSummary+import Amazonka.CodeArtifact.Types.DomainDescription+import Amazonka.CodeArtifact.Types.DomainEntryPoint+import Amazonka.CodeArtifact.Types.DomainStatus+import Amazonka.CodeArtifact.Types.DomainSummary+import Amazonka.CodeArtifact.Types.ExternalConnectionStatus+import Amazonka.CodeArtifact.Types.HashAlgorithm+import Amazonka.CodeArtifact.Types.LicenseInfo+import Amazonka.CodeArtifact.Types.PackageDependency+import Amazonka.CodeArtifact.Types.PackageDescription+import Amazonka.CodeArtifact.Types.PackageFormat+import Amazonka.CodeArtifact.Types.PackageOriginConfiguration+import Amazonka.CodeArtifact.Types.PackageOriginRestrictions+import Amazonka.CodeArtifact.Types.PackageSummary+import Amazonka.CodeArtifact.Types.PackageVersionDescription+import Amazonka.CodeArtifact.Types.PackageVersionError+import Amazonka.CodeArtifact.Types.PackageVersionErrorCode+import Amazonka.CodeArtifact.Types.PackageVersionOrigin+import Amazonka.CodeArtifact.Types.PackageVersionOriginType+import Amazonka.CodeArtifact.Types.PackageVersionSortType+import Amazonka.CodeArtifact.Types.PackageVersionStatus+import Amazonka.CodeArtifact.Types.PackageVersionSummary+import Amazonka.CodeArtifact.Types.RepositoryDescription+import Amazonka.CodeArtifact.Types.RepositoryExternalConnectionInfo+import Amazonka.CodeArtifact.Types.RepositorySummary+import Amazonka.CodeArtifact.Types.ResourcePolicy+import Amazonka.CodeArtifact.Types.SuccessfulPackageVersionInfo+import Amazonka.CodeArtifact.Types.Tag+import Amazonka.CodeArtifact.Types.UpstreamRepository+import Amazonka.CodeArtifact.Types.UpstreamRepositoryInfo+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 @2018-09-22@ of the Amazon CodeArtifact SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "CodeArtifact",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "codeartifact",+ Core.signingName = "codeartifact",+ Core.version = "2018-09-22",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "CodeArtifact",+ Core.retry = retry+ }+ where+ retry =+ Core.Exponential+ { Core.base = 5.0e-2,+ Core.growth = 2,+ Core.attempts = 5,+ Core.check = check+ }+ check e+ | Lens.has (Core.hasStatus 502) e =+ Prelude.Just "bad_gateway"+ | Lens.has (Core.hasStatus 504) e =+ Prelude.Just "gateway_timeout"+ | Lens.has (Core.hasStatus 500) e =+ Prelude.Just "general_server_error"+ | Lens.has (Core.hasStatus 509) e =+ Prelude.Just "limit_exceeded"+ | Lens.has+ ( Core.hasCode "RequestThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "request_throttled_exception"+ | Lens.has (Core.hasStatus 503) e =+ Prelude.Just "service_unavailable"+ | Lens.has+ ( Core.hasCode "ThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttled_exception"+ | Lens.has+ ( Core.hasCode "Throttling"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling"+ | Lens.has+ ( Core.hasCode "ThrottlingException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling_exception"+ | Lens.has+ ( Core.hasCode+ "ProvisionedThroughputExceededException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throughput_exceeded"+ | Lens.has (Core.hasStatus 429) e =+ Prelude.Just "too_many_requests"+ | Prelude.otherwise = Prelude.Nothing++-- | The operation did not succeed because of an unauthorized access attempt.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"+ Prelude.. Core.hasStatus 403++-- | The operation did not succeed because prerequisites are not met.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++-- | The operation did not succeed because of an error that occurred inside+-- CodeArtifact.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | The operation did not succeed because the resource requested is not+-- found in the service.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | The operation did not succeed because it would have exceeded a service+-- limit for your account.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceQuotaExceededException"+ Prelude.. Core.hasStatus 402++-- | The operation did not succeed because too many requests are sent to the+-- service.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"+ Prelude.. Core.hasStatus 429++-- | The operation did not succeed because a parameter in the request was+-- sent with an invalid value.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/CodeArtifact/Types/AllowPublish.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.CodeArtifact.Types.AllowPublish+-- 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.CodeArtifact.Types.AllowPublish+ ( AllowPublish+ ( ..,+ AllowPublish_ALLOW,+ AllowPublish_BLOCK+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AllowPublish = AllowPublish'+ { fromAllowPublish ::+ 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 AllowPublish_ALLOW :: AllowPublish+pattern AllowPublish_ALLOW = AllowPublish' "ALLOW"++pattern AllowPublish_BLOCK :: AllowPublish+pattern AllowPublish_BLOCK = AllowPublish' "BLOCK"++{-# COMPLETE+ AllowPublish_ALLOW,+ AllowPublish_BLOCK,+ AllowPublish'+ #-}
+ gen/Amazonka/CodeArtifact/Types/AllowUpstream.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.CodeArtifact.Types.AllowUpstream+-- 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.CodeArtifact.Types.AllowUpstream+ ( AllowUpstream+ ( ..,+ AllowUpstream_ALLOW,+ AllowUpstream_BLOCK+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AllowUpstream = AllowUpstream'+ { fromAllowUpstream ::+ 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 AllowUpstream_ALLOW :: AllowUpstream+pattern AllowUpstream_ALLOW = AllowUpstream' "ALLOW"++pattern AllowUpstream_BLOCK :: AllowUpstream+pattern AllowUpstream_BLOCK = AllowUpstream' "BLOCK"++{-# COMPLETE+ AllowUpstream_ALLOW,+ AllowUpstream_BLOCK,+ AllowUpstream'+ #-}
+ gen/Amazonka/CodeArtifact/Types/AssetSummary.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.CodeArtifact.Types.AssetSummary+-- 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.CodeArtifact.Types.AssetSummary where++import Amazonka.CodeArtifact.Types.HashAlgorithm+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains details about a package version asset.+--+-- /See:/ 'newAssetSummary' smart constructor.+data AssetSummary = AssetSummary'+ { -- | The hashes of the asset.+ hashes :: Prelude.Maybe (Prelude.HashMap HashAlgorithm Prelude.Text),+ -- | The size of the asset.+ size :: Prelude.Maybe Prelude.Integer,+ -- | The name of the asset.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssetSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'hashes', 'assetSummary_hashes' - The hashes of the asset.+--+-- 'size', 'assetSummary_size' - The size of the asset.+--+-- 'name', 'assetSummary_name' - The name of the asset.+newAssetSummary ::+ -- | 'name'+ Prelude.Text ->+ AssetSummary+newAssetSummary pName_ =+ AssetSummary'+ { hashes = Prelude.Nothing,+ size = Prelude.Nothing,+ name = pName_+ }++-- | The hashes of the asset.+assetSummary_hashes :: Lens.Lens' AssetSummary (Prelude.Maybe (Prelude.HashMap HashAlgorithm Prelude.Text))+assetSummary_hashes = Lens.lens (\AssetSummary' {hashes} -> hashes) (\s@AssetSummary' {} a -> s {hashes = a} :: AssetSummary) Prelude.. Lens.mapping Lens.coerced++-- | The size of the asset.+assetSummary_size :: Lens.Lens' AssetSummary (Prelude.Maybe Prelude.Integer)+assetSummary_size = Lens.lens (\AssetSummary' {size} -> size) (\s@AssetSummary' {} a -> s {size = a} :: AssetSummary)++-- | The name of the asset.+assetSummary_name :: Lens.Lens' AssetSummary Prelude.Text+assetSummary_name = Lens.lens (\AssetSummary' {name} -> name) (\s@AssetSummary' {} a -> s {name = a} :: AssetSummary)++instance Data.FromJSON AssetSummary where+ parseJSON =+ Data.withObject+ "AssetSummary"+ ( \x ->+ AssetSummary'+ Prelude.<$> (x Data..:? "hashes" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "size")+ Prelude.<*> (x Data..: "name")+ )++instance Prelude.Hashable AssetSummary where+ hashWithSalt _salt AssetSummary' {..} =+ _salt+ `Prelude.hashWithSalt` hashes+ `Prelude.hashWithSalt` size+ `Prelude.hashWithSalt` name++instance Prelude.NFData AssetSummary where+ rnf AssetSummary' {..} =+ Prelude.rnf hashes+ `Prelude.seq` Prelude.rnf size+ `Prelude.seq` Prelude.rnf name
+ gen/Amazonka/CodeArtifact/Types/DomainDescription.hs view
@@ -0,0 +1,174 @@+{-# 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.CodeArtifact.Types.DomainDescription+-- 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.CodeArtifact.Types.DomainDescription where++import Amazonka.CodeArtifact.Types.DomainStatus+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 domain. A domain is a container for repositories.+-- When you create a domain, it is empty until you add one or more+-- repositories.+--+-- /See:/ 'newDomainDescription' smart constructor.+data DomainDescription = DomainDescription'+ { -- | The Amazon Resource Name (ARN) of the domain.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The total size of all assets in the domain.+ assetSizeBytes :: Prelude.Maybe Prelude.Integer,+ -- | A timestamp that represents the date and time the domain was created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | The ARN of an Key Management Service (KMS) key associated with a domain.+ encryptionKey :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain.+ name :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID that owns the domain.+ owner :: Prelude.Maybe Prelude.Text,+ -- | The number of repositories in the domain.+ repositoryCount :: Prelude.Maybe Prelude.Int,+ -- | The Amazon Resource Name (ARN) of the Amazon S3 bucket that is used to+ -- store package assets in the domain.+ s3BucketArn :: Prelude.Maybe Prelude.Text,+ -- | The current status of a domain.+ status :: Prelude.Maybe DomainStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DomainDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'domainDescription_arn' - The Amazon Resource Name (ARN) of the domain.+--+-- 'assetSizeBytes', 'domainDescription_assetSizeBytes' - The total size of all assets in the domain.+--+-- 'createdTime', 'domainDescription_createdTime' - A timestamp that represents the date and time the domain was created.+--+-- 'encryptionKey', 'domainDescription_encryptionKey' - The ARN of an Key Management Service (KMS) key associated with a domain.+--+-- 'name', 'domainDescription_name' - The name of the domain.+--+-- 'owner', 'domainDescription_owner' - The Amazon Web Services account ID that owns the domain.+--+-- 'repositoryCount', 'domainDescription_repositoryCount' - The number of repositories in the domain.+--+-- 's3BucketArn', 'domainDescription_s3BucketArn' - The Amazon Resource Name (ARN) of the Amazon S3 bucket that is used to+-- store package assets in the domain.+--+-- 'status', 'domainDescription_status' - The current status of a domain.+newDomainDescription ::+ DomainDescription+newDomainDescription =+ DomainDescription'+ { arn = Prelude.Nothing,+ assetSizeBytes = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ encryptionKey = Prelude.Nothing,+ name = Prelude.Nothing,+ owner = Prelude.Nothing,+ repositoryCount = Prelude.Nothing,+ s3BucketArn = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the domain.+domainDescription_arn :: Lens.Lens' DomainDescription (Prelude.Maybe Prelude.Text)+domainDescription_arn = Lens.lens (\DomainDescription' {arn} -> arn) (\s@DomainDescription' {} a -> s {arn = a} :: DomainDescription)++-- | The total size of all assets in the domain.+domainDescription_assetSizeBytes :: Lens.Lens' DomainDescription (Prelude.Maybe Prelude.Integer)+domainDescription_assetSizeBytes = Lens.lens (\DomainDescription' {assetSizeBytes} -> assetSizeBytes) (\s@DomainDescription' {} a -> s {assetSizeBytes = a} :: DomainDescription)++-- | A timestamp that represents the date and time the domain was created.+domainDescription_createdTime :: Lens.Lens' DomainDescription (Prelude.Maybe Prelude.UTCTime)+domainDescription_createdTime = Lens.lens (\DomainDescription' {createdTime} -> createdTime) (\s@DomainDescription' {} a -> s {createdTime = a} :: DomainDescription) Prelude.. Lens.mapping Data._Time++-- | The ARN of an Key Management Service (KMS) key associated with a domain.+domainDescription_encryptionKey :: Lens.Lens' DomainDescription (Prelude.Maybe Prelude.Text)+domainDescription_encryptionKey = Lens.lens (\DomainDescription' {encryptionKey} -> encryptionKey) (\s@DomainDescription' {} a -> s {encryptionKey = a} :: DomainDescription)++-- | The name of the domain.+domainDescription_name :: Lens.Lens' DomainDescription (Prelude.Maybe Prelude.Text)+domainDescription_name = Lens.lens (\DomainDescription' {name} -> name) (\s@DomainDescription' {} a -> s {name = a} :: DomainDescription)++-- | The Amazon Web Services account ID that owns the domain.+domainDescription_owner :: Lens.Lens' DomainDescription (Prelude.Maybe Prelude.Text)+domainDescription_owner = Lens.lens (\DomainDescription' {owner} -> owner) (\s@DomainDescription' {} a -> s {owner = a} :: DomainDescription)++-- | The number of repositories in the domain.+domainDescription_repositoryCount :: Lens.Lens' DomainDescription (Prelude.Maybe Prelude.Int)+domainDescription_repositoryCount = Lens.lens (\DomainDescription' {repositoryCount} -> repositoryCount) (\s@DomainDescription' {} a -> s {repositoryCount = a} :: DomainDescription)++-- | The Amazon Resource Name (ARN) of the Amazon S3 bucket that is used to+-- store package assets in the domain.+domainDescription_s3BucketArn :: Lens.Lens' DomainDescription (Prelude.Maybe Prelude.Text)+domainDescription_s3BucketArn = Lens.lens (\DomainDescription' {s3BucketArn} -> s3BucketArn) (\s@DomainDescription' {} a -> s {s3BucketArn = a} :: DomainDescription)++-- | The current status of a domain.+domainDescription_status :: Lens.Lens' DomainDescription (Prelude.Maybe DomainStatus)+domainDescription_status = Lens.lens (\DomainDescription' {status} -> status) (\s@DomainDescription' {} a -> s {status = a} :: DomainDescription)++instance Data.FromJSON DomainDescription where+ parseJSON =+ Data.withObject+ "DomainDescription"+ ( \x ->+ DomainDescription'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "assetSizeBytes")+ Prelude.<*> (x Data..:? "createdTime")+ Prelude.<*> (x Data..:? "encryptionKey")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "owner")+ Prelude.<*> (x Data..:? "repositoryCount")+ Prelude.<*> (x Data..:? "s3BucketArn")+ Prelude.<*> (x Data..:? "status")+ )++instance Prelude.Hashable DomainDescription where+ hashWithSalt _salt DomainDescription' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` assetSizeBytes+ `Prelude.hashWithSalt` createdTime+ `Prelude.hashWithSalt` encryptionKey+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` repositoryCount+ `Prelude.hashWithSalt` s3BucketArn+ `Prelude.hashWithSalt` status++instance Prelude.NFData DomainDescription where+ rnf DomainDescription' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf assetSizeBytes+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf encryptionKey+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf repositoryCount+ `Prelude.seq` Prelude.rnf s3BucketArn+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/CodeArtifact/Types/DomainEntryPoint.hs view
@@ -0,0 +1,91 @@+{-# 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.CodeArtifact.Types.DomainEntryPoint+-- 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.CodeArtifact.Types.DomainEntryPoint 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 how a package originally entered the CodeArtifact+-- domain. For packages published directly to CodeArtifact, the entry point+-- is the repository it was published to. For packages ingested from an+-- external repository, the entry point is the external connection that it+-- was ingested from. An external connection is a CodeArtifact repository+-- that is connected to an external repository such as the npm registry or+-- NuGet gallery.+--+-- /See:/ 'newDomainEntryPoint' smart constructor.+data DomainEntryPoint = DomainEntryPoint'+ { -- | The name of the external connection that a package was ingested from.+ externalConnectionName :: Prelude.Maybe Prelude.Text,+ -- | The name of the repository that a package was originally published to.+ repositoryName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DomainEntryPoint' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'externalConnectionName', 'domainEntryPoint_externalConnectionName' - The name of the external connection that a package was ingested from.+--+-- 'repositoryName', 'domainEntryPoint_repositoryName' - The name of the repository that a package was originally published to.+newDomainEntryPoint ::+ DomainEntryPoint+newDomainEntryPoint =+ DomainEntryPoint'+ { externalConnectionName =+ Prelude.Nothing,+ repositoryName = Prelude.Nothing+ }++-- | The name of the external connection that a package was ingested from.+domainEntryPoint_externalConnectionName :: Lens.Lens' DomainEntryPoint (Prelude.Maybe Prelude.Text)+domainEntryPoint_externalConnectionName = Lens.lens (\DomainEntryPoint' {externalConnectionName} -> externalConnectionName) (\s@DomainEntryPoint' {} a -> s {externalConnectionName = a} :: DomainEntryPoint)++-- | The name of the repository that a package was originally published to.+domainEntryPoint_repositoryName :: Lens.Lens' DomainEntryPoint (Prelude.Maybe Prelude.Text)+domainEntryPoint_repositoryName = Lens.lens (\DomainEntryPoint' {repositoryName} -> repositoryName) (\s@DomainEntryPoint' {} a -> s {repositoryName = a} :: DomainEntryPoint)++instance Data.FromJSON DomainEntryPoint where+ parseJSON =+ Data.withObject+ "DomainEntryPoint"+ ( \x ->+ DomainEntryPoint'+ Prelude.<$> (x Data..:? "externalConnectionName")+ Prelude.<*> (x Data..:? "repositoryName")+ )++instance Prelude.Hashable DomainEntryPoint where+ hashWithSalt _salt DomainEntryPoint' {..} =+ _salt+ `Prelude.hashWithSalt` externalConnectionName+ `Prelude.hashWithSalt` repositoryName++instance Prelude.NFData DomainEntryPoint where+ rnf DomainEntryPoint' {..} =+ Prelude.rnf externalConnectionName+ `Prelude.seq` Prelude.rnf repositoryName
+ gen/Amazonka/CodeArtifact/Types/DomainStatus.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.CodeArtifact.Types.DomainStatus+-- 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.CodeArtifact.Types.DomainStatus+ ( DomainStatus+ ( ..,+ DomainStatus_Active,+ DomainStatus_Deleted+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DomainStatus = DomainStatus'+ { fromDomainStatus ::+ 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 DomainStatus_Active :: DomainStatus+pattern DomainStatus_Active = DomainStatus' "Active"++pattern DomainStatus_Deleted :: DomainStatus+pattern DomainStatus_Deleted = DomainStatus' "Deleted"++{-# COMPLETE+ DomainStatus_Active,+ DomainStatus_Deleted,+ DomainStatus'+ #-}
+ gen/Amazonka/CodeArtifact/Types/DomainSummary.hs view
@@ -0,0 +1,139 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.DomainSummary+-- 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.CodeArtifact.Types.DomainSummary where++import Amazonka.CodeArtifact.Types.DomainStatus+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 domain, including its name, Amazon Resource Name+-- (ARN), and status. The+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_ListDomains.html ListDomains>+-- operation returns a list of @DomainSummary@ objects.+--+-- /See:/ 'newDomainSummary' smart constructor.+data DomainSummary = DomainSummary'+ { -- | The ARN of the domain.+ arn :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that contains the date and time the domain was created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | The key used to encrypt the domain.+ encryptionKey :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain.+ name :: Prelude.Maybe Prelude.Text,+ -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ owner :: Prelude.Maybe Prelude.Text,+ -- | A string that contains the status of the domain.+ status :: Prelude.Maybe DomainStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DomainSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'domainSummary_arn' - The ARN of the domain.+--+-- 'createdTime', 'domainSummary_createdTime' - A timestamp that contains the date and time the domain was created.+--+-- 'encryptionKey', 'domainSummary_encryptionKey' - The key used to encrypt the domain.+--+-- 'name', 'domainSummary_name' - The name of the domain.+--+-- 'owner', 'domainSummary_owner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'status', 'domainSummary_status' - A string that contains the status of the domain.+newDomainSummary ::+ DomainSummary+newDomainSummary =+ DomainSummary'+ { arn = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ encryptionKey = Prelude.Nothing,+ name = Prelude.Nothing,+ owner = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The ARN of the domain.+domainSummary_arn :: Lens.Lens' DomainSummary (Prelude.Maybe Prelude.Text)+domainSummary_arn = Lens.lens (\DomainSummary' {arn} -> arn) (\s@DomainSummary' {} a -> s {arn = a} :: DomainSummary)++-- | A timestamp that contains the date and time the domain was created.+domainSummary_createdTime :: Lens.Lens' DomainSummary (Prelude.Maybe Prelude.UTCTime)+domainSummary_createdTime = Lens.lens (\DomainSummary' {createdTime} -> createdTime) (\s@DomainSummary' {} a -> s {createdTime = a} :: DomainSummary) Prelude.. Lens.mapping Data._Time++-- | The key used to encrypt the domain.+domainSummary_encryptionKey :: Lens.Lens' DomainSummary (Prelude.Maybe Prelude.Text)+domainSummary_encryptionKey = Lens.lens (\DomainSummary' {encryptionKey} -> encryptionKey) (\s@DomainSummary' {} a -> s {encryptionKey = a} :: DomainSummary)++-- | The name of the domain.+domainSummary_name :: Lens.Lens' DomainSummary (Prelude.Maybe Prelude.Text)+domainSummary_name = Lens.lens (\DomainSummary' {name} -> name) (\s@DomainSummary' {} a -> s {name = a} :: DomainSummary)++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+domainSummary_owner :: Lens.Lens' DomainSummary (Prelude.Maybe Prelude.Text)+domainSummary_owner = Lens.lens (\DomainSummary' {owner} -> owner) (\s@DomainSummary' {} a -> s {owner = a} :: DomainSummary)++-- | A string that contains the status of the domain.+domainSummary_status :: Lens.Lens' DomainSummary (Prelude.Maybe DomainStatus)+domainSummary_status = Lens.lens (\DomainSummary' {status} -> status) (\s@DomainSummary' {} a -> s {status = a} :: DomainSummary)++instance Data.FromJSON DomainSummary where+ parseJSON =+ Data.withObject+ "DomainSummary"+ ( \x ->+ DomainSummary'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "createdTime")+ Prelude.<*> (x Data..:? "encryptionKey")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "owner")+ Prelude.<*> (x Data..:? "status")+ )++instance Prelude.Hashable DomainSummary where+ hashWithSalt _salt DomainSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdTime+ `Prelude.hashWithSalt` encryptionKey+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` status++instance Prelude.NFData DomainSummary where+ rnf DomainSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf encryptionKey+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/CodeArtifact/Types/ExternalConnectionStatus.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.ExternalConnectionStatus+-- 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.CodeArtifact.Types.ExternalConnectionStatus+ ( ExternalConnectionStatus+ ( ..,+ ExternalConnectionStatus_Available+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ExternalConnectionStatus = ExternalConnectionStatus'+ { fromExternalConnectionStatus ::+ 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 ExternalConnectionStatus_Available :: ExternalConnectionStatus+pattern ExternalConnectionStatus_Available = ExternalConnectionStatus' "Available"++{-# COMPLETE+ ExternalConnectionStatus_Available,+ ExternalConnectionStatus'+ #-}
+ gen/Amazonka/CodeArtifact/Types/HashAlgorithm.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.CodeArtifact.Types.HashAlgorithm+-- 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.CodeArtifact.Types.HashAlgorithm+ ( HashAlgorithm+ ( ..,+ HashAlgorithm_MD5,+ HashAlgorithm_SHA_1,+ HashAlgorithm_SHA_256,+ HashAlgorithm_SHA_512+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype HashAlgorithm = HashAlgorithm'+ { fromHashAlgorithm ::+ 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 HashAlgorithm_MD5 :: HashAlgorithm+pattern HashAlgorithm_MD5 = HashAlgorithm' "MD5"++pattern HashAlgorithm_SHA_1 :: HashAlgorithm+pattern HashAlgorithm_SHA_1 = HashAlgorithm' "SHA-1"++pattern HashAlgorithm_SHA_256 :: HashAlgorithm+pattern HashAlgorithm_SHA_256 = HashAlgorithm' "SHA-256"++pattern HashAlgorithm_SHA_512 :: HashAlgorithm+pattern HashAlgorithm_SHA_512 = HashAlgorithm' "SHA-512"++{-# COMPLETE+ HashAlgorithm_MD5,+ HashAlgorithm_SHA_1,+ HashAlgorithm_SHA_256,+ HashAlgorithm_SHA_512,+ HashAlgorithm'+ #-}
+ gen/Amazonka/CodeArtifact/Types/LicenseInfo.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.LicenseInfo+-- 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.CodeArtifact.Types.LicenseInfo 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++-- | Details of the license data.+--+-- /See:/ 'newLicenseInfo' smart constructor.+data LicenseInfo = LicenseInfo'+ { -- | Name of the license.+ name :: Prelude.Maybe Prelude.Text,+ -- | The URL for license data.+ url :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LicenseInfo' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'licenseInfo_name' - Name of the license.+--+-- 'url', 'licenseInfo_url' - The URL for license data.+newLicenseInfo ::+ LicenseInfo+newLicenseInfo =+ LicenseInfo'+ { name = Prelude.Nothing,+ url = Prelude.Nothing+ }++-- | Name of the license.+licenseInfo_name :: Lens.Lens' LicenseInfo (Prelude.Maybe Prelude.Text)+licenseInfo_name = Lens.lens (\LicenseInfo' {name} -> name) (\s@LicenseInfo' {} a -> s {name = a} :: LicenseInfo)++-- | The URL for license data.+licenseInfo_url :: Lens.Lens' LicenseInfo (Prelude.Maybe Prelude.Text)+licenseInfo_url = Lens.lens (\LicenseInfo' {url} -> url) (\s@LicenseInfo' {} a -> s {url = a} :: LicenseInfo)++instance Data.FromJSON LicenseInfo where+ parseJSON =+ Data.withObject+ "LicenseInfo"+ ( \x ->+ LicenseInfo'+ Prelude.<$> (x Data..:? "name")+ Prelude.<*> (x Data..:? "url")+ )++instance Prelude.Hashable LicenseInfo where+ hashWithSalt _salt LicenseInfo' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` url++instance Prelude.NFData LicenseInfo where+ rnf LicenseInfo' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf url
+ gen/Amazonka/CodeArtifact/Types/PackageDependency.hs view
@@ -0,0 +1,148 @@+{-# 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.CodeArtifact.Types.PackageDependency+-- 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.CodeArtifact.Types.PackageDependency 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++-- | Details about a package dependency.+--+-- /See:/ 'newPackageDependency' smart constructor.+data PackageDependency = PackageDependency'+ { -- | The type of a package dependency. The possible values depend on the+ -- package type. Example types are @compile@, @runtime@, and @test@ for+ -- Maven packages, and @dev@, @prod@, and @optional@ for npm packages.+ dependencyType :: Prelude.Maybe Prelude.Text,+ -- | The namespace of the package that this package depends on. The package+ -- component that specifies its namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package is its @groupId@.+ --+ -- - The namespace of an npm package is its @scope@.+ --+ -- - Python and NuGet packages do not contain a corresponding component,+ -- packages of those formats do not have a namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The name of the package that this package depends on.+ package :: Prelude.Maybe Prelude.Text,+ -- | The required version, or version range, of the package that this package+ -- depends on. The version format is specific to the package type. For+ -- example, the following are possible valid required versions: @1.2.3@,+ -- @^2.3.4@, or @4.x@.+ versionRequirement :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageDependency' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dependencyType', 'packageDependency_dependencyType' - The type of a package dependency. The possible values depend on the+-- package type. Example types are @compile@, @runtime@, and @test@ for+-- Maven packages, and @dev@, @prod@, and @optional@ for npm packages.+--+-- 'namespace', 'packageDependency_namespace' - The namespace of the package that this package depends on. The package+-- component that specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+--+-- 'package', 'packageDependency_package' - The name of the package that this package depends on.+--+-- 'versionRequirement', 'packageDependency_versionRequirement' - The required version, or version range, of the package that this package+-- depends on. The version format is specific to the package type. For+-- example, the following are possible valid required versions: @1.2.3@,+-- @^2.3.4@, or @4.x@.+newPackageDependency ::+ PackageDependency+newPackageDependency =+ PackageDependency'+ { dependencyType =+ Prelude.Nothing,+ namespace = Prelude.Nothing,+ package = Prelude.Nothing,+ versionRequirement = Prelude.Nothing+ }++-- | The type of a package dependency. The possible values depend on the+-- package type. Example types are @compile@, @runtime@, and @test@ for+-- Maven packages, and @dev@, @prod@, and @optional@ for npm packages.+packageDependency_dependencyType :: Lens.Lens' PackageDependency (Prelude.Maybe Prelude.Text)+packageDependency_dependencyType = Lens.lens (\PackageDependency' {dependencyType} -> dependencyType) (\s@PackageDependency' {} a -> s {dependencyType = a} :: PackageDependency)++-- | The namespace of the package that this package depends on. The package+-- component that specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+packageDependency_namespace :: Lens.Lens' PackageDependency (Prelude.Maybe Prelude.Text)+packageDependency_namespace = Lens.lens (\PackageDependency' {namespace} -> namespace) (\s@PackageDependency' {} a -> s {namespace = a} :: PackageDependency)++-- | The name of the package that this package depends on.+packageDependency_package :: Lens.Lens' PackageDependency (Prelude.Maybe Prelude.Text)+packageDependency_package = Lens.lens (\PackageDependency' {package} -> package) (\s@PackageDependency' {} a -> s {package = a} :: PackageDependency)++-- | The required version, or version range, of the package that this package+-- depends on. The version format is specific to the package type. For+-- example, the following are possible valid required versions: @1.2.3@,+-- @^2.3.4@, or @4.x@.+packageDependency_versionRequirement :: Lens.Lens' PackageDependency (Prelude.Maybe Prelude.Text)+packageDependency_versionRequirement = Lens.lens (\PackageDependency' {versionRequirement} -> versionRequirement) (\s@PackageDependency' {} a -> s {versionRequirement = a} :: PackageDependency)++instance Data.FromJSON PackageDependency where+ parseJSON =+ Data.withObject+ "PackageDependency"+ ( \x ->+ PackageDependency'+ Prelude.<$> (x Data..:? "dependencyType")+ Prelude.<*> (x Data..:? "namespace")+ Prelude.<*> (x Data..:? "package")+ Prelude.<*> (x Data..:? "versionRequirement")+ )++instance Prelude.Hashable PackageDependency where+ hashWithSalt _salt PackageDependency' {..} =+ _salt+ `Prelude.hashWithSalt` dependencyType+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` package+ `Prelude.hashWithSalt` versionRequirement++instance Prelude.NFData PackageDependency where+ rnf PackageDependency' {..} =+ Prelude.rnf dependencyType+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf versionRequirement
+ gen/Amazonka/CodeArtifact/Types/PackageDescription.hs view
@@ -0,0 +1,134 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.PackageDescription+-- 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.CodeArtifact.Types.PackageDescription where++import Amazonka.CodeArtifact.Types.PackageFormat+import Amazonka.CodeArtifact.Types.PackageOriginConfiguration+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++-- | Details about a package.+--+-- /See:/ 'newPackageDescription' smart constructor.+data PackageDescription = PackageDescription'+ { -- | A format that specifies the type of the package.+ format :: Prelude.Maybe PackageFormat,+ -- | The name of the package.+ name :: Prelude.Maybe Prelude.Text,+ -- | The namespace of the package. The package component that specifies its+ -- namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package is its @groupId@.+ --+ -- - The namespace of an npm package is its @scope@.+ --+ -- - Python and NuGet packages do not contain a corresponding component,+ -- packages of those formats do not have a namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | The package origin configuration for the package.+ originConfiguration :: Prelude.Maybe PackageOriginConfiguration+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'format', 'packageDescription_format' - A format that specifies the type of the package.+--+-- 'name', 'packageDescription_name' - The name of the package.+--+-- 'namespace', 'packageDescription_namespace' - The namespace of the package. The package component that specifies its+-- namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+--+-- 'originConfiguration', 'packageDescription_originConfiguration' - The package origin configuration for the package.+newPackageDescription ::+ PackageDescription+newPackageDescription =+ PackageDescription'+ { format = Prelude.Nothing,+ name = Prelude.Nothing,+ namespace = Prelude.Nothing,+ originConfiguration = Prelude.Nothing+ }++-- | A format that specifies the type of the package.+packageDescription_format :: Lens.Lens' PackageDescription (Prelude.Maybe PackageFormat)+packageDescription_format = Lens.lens (\PackageDescription' {format} -> format) (\s@PackageDescription' {} a -> s {format = a} :: PackageDescription)++-- | The name of the package.+packageDescription_name :: Lens.Lens' PackageDescription (Prelude.Maybe Prelude.Text)+packageDescription_name = Lens.lens (\PackageDescription' {name} -> name) (\s@PackageDescription' {} a -> s {name = a} :: PackageDescription)++-- | The namespace of the package. The package component that specifies its+-- namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+packageDescription_namespace :: Lens.Lens' PackageDescription (Prelude.Maybe Prelude.Text)+packageDescription_namespace = Lens.lens (\PackageDescription' {namespace} -> namespace) (\s@PackageDescription' {} a -> s {namespace = a} :: PackageDescription)++-- | The package origin configuration for the package.+packageDescription_originConfiguration :: Lens.Lens' PackageDescription (Prelude.Maybe PackageOriginConfiguration)+packageDescription_originConfiguration = Lens.lens (\PackageDescription' {originConfiguration} -> originConfiguration) (\s@PackageDescription' {} a -> s {originConfiguration = a} :: PackageDescription)++instance Data.FromJSON PackageDescription where+ parseJSON =+ Data.withObject+ "PackageDescription"+ ( \x ->+ PackageDescription'+ Prelude.<$> (x Data..:? "format")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "namespace")+ Prelude.<*> (x Data..:? "originConfiguration")+ )++instance Prelude.Hashable PackageDescription where+ hashWithSalt _salt PackageDescription' {..} =+ _salt+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` originConfiguration++instance Prelude.NFData PackageDescription where+ rnf PackageDescription' {..} =+ Prelude.rnf format+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf originConfiguration
+ gen/Amazonka/CodeArtifact/Types/PackageFormat.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.CodeArtifact.Types.PackageFormat+-- 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.CodeArtifact.Types.PackageFormat+ ( PackageFormat+ ( ..,+ PackageFormat_Maven,+ PackageFormat_Npm,+ PackageFormat_Nuget,+ PackageFormat_Pypi+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PackageFormat = PackageFormat'+ { fromPackageFormat ::+ 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 PackageFormat_Maven :: PackageFormat+pattern PackageFormat_Maven = PackageFormat' "maven"++pattern PackageFormat_Npm :: PackageFormat+pattern PackageFormat_Npm = PackageFormat' "npm"++pattern PackageFormat_Nuget :: PackageFormat+pattern PackageFormat_Nuget = PackageFormat' "nuget"++pattern PackageFormat_Pypi :: PackageFormat+pattern PackageFormat_Pypi = PackageFormat' "pypi"++{-# COMPLETE+ PackageFormat_Maven,+ PackageFormat_Npm,+ PackageFormat_Nuget,+ PackageFormat_Pypi,+ PackageFormat'+ #-}
+ gen/Amazonka/CodeArtifact/Types/PackageOriginConfiguration.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.PackageOriginConfiguration+-- 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.CodeArtifact.Types.PackageOriginConfiguration where++import Amazonka.CodeArtifact.Types.PackageOriginRestrictions+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++-- | Details about the package origin configuration of a package.+--+-- /See:/ 'newPackageOriginConfiguration' smart constructor.+data PackageOriginConfiguration = PackageOriginConfiguration'+ { -- | A @PackageOriginRestrictions@ object that contains information about the+ -- upstream and publish package origin configuration for the package.+ restrictions :: Prelude.Maybe PackageOriginRestrictions+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageOriginConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'restrictions', 'packageOriginConfiguration_restrictions' - A @PackageOriginRestrictions@ object that contains information about the+-- upstream and publish package origin configuration for the package.+newPackageOriginConfiguration ::+ PackageOriginConfiguration+newPackageOriginConfiguration =+ PackageOriginConfiguration'+ { restrictions =+ Prelude.Nothing+ }++-- | A @PackageOriginRestrictions@ object that contains information about the+-- upstream and publish package origin configuration for the package.+packageOriginConfiguration_restrictions :: Lens.Lens' PackageOriginConfiguration (Prelude.Maybe PackageOriginRestrictions)+packageOriginConfiguration_restrictions = Lens.lens (\PackageOriginConfiguration' {restrictions} -> restrictions) (\s@PackageOriginConfiguration' {} a -> s {restrictions = a} :: PackageOriginConfiguration)++instance Data.FromJSON PackageOriginConfiguration where+ parseJSON =+ Data.withObject+ "PackageOriginConfiguration"+ ( \x ->+ PackageOriginConfiguration'+ Prelude.<$> (x Data..:? "restrictions")+ )++instance Prelude.Hashable PackageOriginConfiguration where+ hashWithSalt _salt PackageOriginConfiguration' {..} =+ _salt `Prelude.hashWithSalt` restrictions++instance Prelude.NFData PackageOriginConfiguration where+ rnf PackageOriginConfiguration' {..} =+ Prelude.rnf restrictions
+ gen/Amazonka/CodeArtifact/Types/PackageOriginRestrictions.hs view
@@ -0,0 +1,110 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.PackageOriginRestrictions+-- 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.CodeArtifact.Types.PackageOriginRestrictions where++import Amazonka.CodeArtifact.Types.AllowPublish+import Amazonka.CodeArtifact.Types.AllowUpstream+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++-- | Details about the origin restrictions set on the package. The package+-- origin restrictions determine how new versions of a package can be added+-- to a specific repository.+--+-- /See:/ 'newPackageOriginRestrictions' smart constructor.+data PackageOriginRestrictions = PackageOriginRestrictions'+ { -- | The package origin configuration that determines if new versions of the+ -- package can be published directly to the repository.+ publish :: AllowPublish,+ -- | The package origin configuration that determines if new versions of the+ -- package can be added to the repository from an external connection or+ -- upstream source.+ upstream :: AllowUpstream+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageOriginRestrictions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'publish', 'packageOriginRestrictions_publish' - The package origin configuration that determines if new versions of the+-- package can be published directly to the repository.+--+-- 'upstream', 'packageOriginRestrictions_upstream' - The package origin configuration that determines if new versions of the+-- package can be added to the repository from an external connection or+-- upstream source.+newPackageOriginRestrictions ::+ -- | 'publish'+ AllowPublish ->+ -- | 'upstream'+ AllowUpstream ->+ PackageOriginRestrictions+newPackageOriginRestrictions pPublish_ pUpstream_ =+ PackageOriginRestrictions'+ { publish = pPublish_,+ upstream = pUpstream_+ }++-- | The package origin configuration that determines if new versions of the+-- package can be published directly to the repository.+packageOriginRestrictions_publish :: Lens.Lens' PackageOriginRestrictions AllowPublish+packageOriginRestrictions_publish = Lens.lens (\PackageOriginRestrictions' {publish} -> publish) (\s@PackageOriginRestrictions' {} a -> s {publish = a} :: PackageOriginRestrictions)++-- | The package origin configuration that determines if new versions of the+-- package can be added to the repository from an external connection or+-- upstream source.+packageOriginRestrictions_upstream :: Lens.Lens' PackageOriginRestrictions AllowUpstream+packageOriginRestrictions_upstream = Lens.lens (\PackageOriginRestrictions' {upstream} -> upstream) (\s@PackageOriginRestrictions' {} a -> s {upstream = a} :: PackageOriginRestrictions)++instance Data.FromJSON PackageOriginRestrictions where+ parseJSON =+ Data.withObject+ "PackageOriginRestrictions"+ ( \x ->+ PackageOriginRestrictions'+ Prelude.<$> (x Data..: "publish")+ Prelude.<*> (x Data..: "upstream")+ )++instance Prelude.Hashable PackageOriginRestrictions where+ hashWithSalt _salt PackageOriginRestrictions' {..} =+ _salt+ `Prelude.hashWithSalt` publish+ `Prelude.hashWithSalt` upstream++instance Prelude.NFData PackageOriginRestrictions where+ rnf PackageOriginRestrictions' {..} =+ Prelude.rnf publish+ `Prelude.seq` Prelude.rnf upstream++instance Data.ToJSON PackageOriginRestrictions where+ toJSON PackageOriginRestrictions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("publish" Data..= publish),+ Prelude.Just ("upstream" Data..= upstream)+ ]+ )
+ gen/Amazonka/CodeArtifact/Types/PackageSummary.hs view
@@ -0,0 +1,151 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.PackageSummary+-- 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.CodeArtifact.Types.PackageSummary where++import Amazonka.CodeArtifact.Types.PackageFormat+import Amazonka.CodeArtifact.Types.PackageOriginConfiguration+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++-- | Details about a package, including its format, namespace, and name. The+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_ListPackages.html ListPackages>+-- operation returns a list of @PackageSummary@ objects.+--+-- /See:/ 'newPackageSummary' smart constructor.+data PackageSummary = PackageSummary'+ { -- | The format of the package.+ format :: Prelude.Maybe PackageFormat,+ -- | The namespace of the package. The package component that specifies its+ -- namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package is its @groupId@.+ --+ -- - The namespace of an npm package is its @scope@.+ --+ -- - Python and NuGet packages do not contain a corresponding component,+ -- packages of those formats do not have a namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | A+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginConfiguration.html PackageOriginConfiguration>+ -- object that contains a+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>+ -- object that contains information about the upstream and publish package+ -- origin restrictions.+ originConfiguration :: Prelude.Maybe PackageOriginConfiguration,+ -- | The name of the package.+ package :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'format', 'packageSummary_format' - The format of the package.+--+-- 'namespace', 'packageSummary_namespace' - The namespace of the package. The package component that specifies its+-- namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+--+-- 'originConfiguration', 'packageSummary_originConfiguration' - A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginConfiguration.html PackageOriginConfiguration>+-- object that contains a+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>+-- object that contains information about the upstream and publish package+-- origin restrictions.+--+-- 'package', 'packageSummary_package' - The name of the package.+newPackageSummary ::+ PackageSummary+newPackageSummary =+ PackageSummary'+ { format = Prelude.Nothing,+ namespace = Prelude.Nothing,+ originConfiguration = Prelude.Nothing,+ package = Prelude.Nothing+ }++-- | The format of the package.+packageSummary_format :: Lens.Lens' PackageSummary (Prelude.Maybe PackageFormat)+packageSummary_format = Lens.lens (\PackageSummary' {format} -> format) (\s@PackageSummary' {} a -> s {format = a} :: PackageSummary)++-- | The namespace of the package. The package component that specifies its+-- namespace depends on its type. For example:+--+-- - The namespace of a Maven package is its @groupId@.+--+-- - The namespace of an npm package is its @scope@.+--+-- - Python and NuGet packages do not contain a corresponding component,+-- packages of those formats do not have a namespace.+packageSummary_namespace :: Lens.Lens' PackageSummary (Prelude.Maybe Prelude.Text)+packageSummary_namespace = Lens.lens (\PackageSummary' {namespace} -> namespace) (\s@PackageSummary' {} a -> s {namespace = a} :: PackageSummary)++-- | A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginConfiguration.html PackageOriginConfiguration>+-- object that contains a+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html PackageOriginRestrictions>+-- object that contains information about the upstream and publish package+-- origin restrictions.+packageSummary_originConfiguration :: Lens.Lens' PackageSummary (Prelude.Maybe PackageOriginConfiguration)+packageSummary_originConfiguration = Lens.lens (\PackageSummary' {originConfiguration} -> originConfiguration) (\s@PackageSummary' {} a -> s {originConfiguration = a} :: PackageSummary)++-- | The name of the package.+packageSummary_package :: Lens.Lens' PackageSummary (Prelude.Maybe Prelude.Text)+packageSummary_package = Lens.lens (\PackageSummary' {package} -> package) (\s@PackageSummary' {} a -> s {package = a} :: PackageSummary)++instance Data.FromJSON PackageSummary where+ parseJSON =+ Data.withObject+ "PackageSummary"+ ( \x ->+ PackageSummary'+ Prelude.<$> (x Data..:? "format")+ Prelude.<*> (x Data..:? "namespace")+ Prelude.<*> (x Data..:? "originConfiguration")+ Prelude.<*> (x Data..:? "package")+ )++instance Prelude.Hashable PackageSummary where+ hashWithSalt _salt PackageSummary' {..} =+ _salt+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` originConfiguration+ `Prelude.hashWithSalt` package++instance Prelude.NFData PackageSummary where+ rnf PackageSummary' {..} =+ Prelude.rnf format+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf originConfiguration+ `Prelude.seq` Prelude.rnf package
+ gen/Amazonka/CodeArtifact/Types/PackageVersionDescription.hs view
@@ -0,0 +1,278 @@+{-# 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.CodeArtifact.Types.PackageVersionDescription+-- 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.CodeArtifact.Types.PackageVersionDescription where++import Amazonka.CodeArtifact.Types.LicenseInfo+import Amazonka.CodeArtifact.Types.PackageFormat+import Amazonka.CodeArtifact.Types.PackageVersionOrigin+import Amazonka.CodeArtifact.Types.PackageVersionStatus+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++-- | Details about a package version.+--+-- /See:/ 'newPackageVersionDescription' smart constructor.+data PackageVersionDescription = PackageVersionDescription'+ { -- | The name of the package that is displayed. The @displayName@ varies+ -- depending on the package version\'s format. For example, if an npm+ -- package is named @ui@, is in the namespace @vue@, and has the format+ -- @npm@, then the @displayName@ is @\@vue\/ui@.+ displayName :: Prelude.Maybe Prelude.Text,+ -- | The format of the package version.+ format :: Prelude.Maybe PackageFormat,+ -- | The homepage associated with the package.+ homePage :: Prelude.Maybe Prelude.Text,+ -- | Information about licenses associated with the package version.+ licenses :: Prelude.Maybe [LicenseInfo],+ -- | The namespace of the package version. The package version component that+ -- specifies its namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | A+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionOrigin.html PackageVersionOrigin>+ -- object that contains information about how the package version was added+ -- to the repository.+ origin :: Prelude.Maybe PackageVersionOrigin,+ -- | The name of the requested package.+ packageName :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that contains the date and time the package version was+ -- published.+ publishedTime :: Prelude.Maybe Data.POSIX,+ -- | The revision of the package version.+ revision :: Prelude.Maybe Prelude.Text,+ -- | The repository for the source code in the package version, or the source+ -- code used to build it.+ sourceCodeRepository :: Prelude.Maybe Prelude.Text,+ -- | A string that contains the status of the package version.+ status :: Prelude.Maybe PackageVersionStatus,+ -- | A summary of the package version. The summary is extracted from the+ -- package. The information in and detail level of the summary depends on+ -- the package version\'s format.+ summary :: Prelude.Maybe Prelude.Text,+ -- | The version of the package.+ version :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageVersionDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'displayName', 'packageVersionDescription_displayName' - The name of the package that is displayed. The @displayName@ varies+-- depending on the package version\'s format. For example, if an npm+-- package is named @ui@, is in the namespace @vue@, and has the format+-- @npm@, then the @displayName@ is @\@vue\/ui@.+--+-- 'format', 'packageVersionDescription_format' - The format of the package version.+--+-- 'homePage', 'packageVersionDescription_homePage' - The homepage associated with the package.+--+-- 'licenses', 'packageVersionDescription_licenses' - Information about licenses associated with the package version.+--+-- 'namespace', 'packageVersionDescription_namespace' - The namespace of the package version. The package version component that+-- specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'origin', 'packageVersionDescription_origin' - A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionOrigin.html PackageVersionOrigin>+-- object that contains information about how the package version was added+-- to the repository.+--+-- 'packageName', 'packageVersionDescription_packageName' - The name of the requested package.+--+-- 'publishedTime', 'packageVersionDescription_publishedTime' - A timestamp that contains the date and time the package version was+-- published.+--+-- 'revision', 'packageVersionDescription_revision' - The revision of the package version.+--+-- 'sourceCodeRepository', 'packageVersionDescription_sourceCodeRepository' - The repository for the source code in the package version, or the source+-- code used to build it.+--+-- 'status', 'packageVersionDescription_status' - A string that contains the status of the package version.+--+-- 'summary', 'packageVersionDescription_summary' - A summary of the package version. The summary is extracted from the+-- package. The information in and detail level of the summary depends on+-- the package version\'s format.+--+-- 'version', 'packageVersionDescription_version' - The version of the package.+newPackageVersionDescription ::+ PackageVersionDescription+newPackageVersionDescription =+ PackageVersionDescription'+ { displayName =+ Prelude.Nothing,+ format = Prelude.Nothing,+ homePage = Prelude.Nothing,+ licenses = Prelude.Nothing,+ namespace = Prelude.Nothing,+ origin = Prelude.Nothing,+ packageName = Prelude.Nothing,+ publishedTime = Prelude.Nothing,+ revision = Prelude.Nothing,+ sourceCodeRepository = Prelude.Nothing,+ status = Prelude.Nothing,+ summary = Prelude.Nothing,+ version = Prelude.Nothing+ }++-- | The name of the package that is displayed. The @displayName@ varies+-- depending on the package version\'s format. For example, if an npm+-- package is named @ui@, is in the namespace @vue@, and has the format+-- @npm@, then the @displayName@ is @\@vue\/ui@.+packageVersionDescription_displayName :: Lens.Lens' PackageVersionDescription (Prelude.Maybe Prelude.Text)+packageVersionDescription_displayName = Lens.lens (\PackageVersionDescription' {displayName} -> displayName) (\s@PackageVersionDescription' {} a -> s {displayName = a} :: PackageVersionDescription)++-- | The format of the package version.+packageVersionDescription_format :: Lens.Lens' PackageVersionDescription (Prelude.Maybe PackageFormat)+packageVersionDescription_format = Lens.lens (\PackageVersionDescription' {format} -> format) (\s@PackageVersionDescription' {} a -> s {format = a} :: PackageVersionDescription)++-- | The homepage associated with the package.+packageVersionDescription_homePage :: Lens.Lens' PackageVersionDescription (Prelude.Maybe Prelude.Text)+packageVersionDescription_homePage = Lens.lens (\PackageVersionDescription' {homePage} -> homePage) (\s@PackageVersionDescription' {} a -> s {homePage = a} :: PackageVersionDescription)++-- | Information about licenses associated with the package version.+packageVersionDescription_licenses :: Lens.Lens' PackageVersionDescription (Prelude.Maybe [LicenseInfo])+packageVersionDescription_licenses = Lens.lens (\PackageVersionDescription' {licenses} -> licenses) (\s@PackageVersionDescription' {} a -> s {licenses = a} :: PackageVersionDescription) Prelude.. Lens.mapping Lens.coerced++-- | The namespace of the package version. The package version component that+-- specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+packageVersionDescription_namespace :: Lens.Lens' PackageVersionDescription (Prelude.Maybe Prelude.Text)+packageVersionDescription_namespace = Lens.lens (\PackageVersionDescription' {namespace} -> namespace) (\s@PackageVersionDescription' {} a -> s {namespace = a} :: PackageVersionDescription)++-- | A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionOrigin.html PackageVersionOrigin>+-- object that contains information about how the package version was added+-- to the repository.+packageVersionDescription_origin :: Lens.Lens' PackageVersionDescription (Prelude.Maybe PackageVersionOrigin)+packageVersionDescription_origin = Lens.lens (\PackageVersionDescription' {origin} -> origin) (\s@PackageVersionDescription' {} a -> s {origin = a} :: PackageVersionDescription)++-- | The name of the requested package.+packageVersionDescription_packageName :: Lens.Lens' PackageVersionDescription (Prelude.Maybe Prelude.Text)+packageVersionDescription_packageName = Lens.lens (\PackageVersionDescription' {packageName} -> packageName) (\s@PackageVersionDescription' {} a -> s {packageName = a} :: PackageVersionDescription)++-- | A timestamp that contains the date and time the package version was+-- published.+packageVersionDescription_publishedTime :: Lens.Lens' PackageVersionDescription (Prelude.Maybe Prelude.UTCTime)+packageVersionDescription_publishedTime = Lens.lens (\PackageVersionDescription' {publishedTime} -> publishedTime) (\s@PackageVersionDescription' {} a -> s {publishedTime = a} :: PackageVersionDescription) Prelude.. Lens.mapping Data._Time++-- | The revision of the package version.+packageVersionDescription_revision :: Lens.Lens' PackageVersionDescription (Prelude.Maybe Prelude.Text)+packageVersionDescription_revision = Lens.lens (\PackageVersionDescription' {revision} -> revision) (\s@PackageVersionDescription' {} a -> s {revision = a} :: PackageVersionDescription)++-- | The repository for the source code in the package version, or the source+-- code used to build it.+packageVersionDescription_sourceCodeRepository :: Lens.Lens' PackageVersionDescription (Prelude.Maybe Prelude.Text)+packageVersionDescription_sourceCodeRepository = Lens.lens (\PackageVersionDescription' {sourceCodeRepository} -> sourceCodeRepository) (\s@PackageVersionDescription' {} a -> s {sourceCodeRepository = a} :: PackageVersionDescription)++-- | A string that contains the status of the package version.+packageVersionDescription_status :: Lens.Lens' PackageVersionDescription (Prelude.Maybe PackageVersionStatus)+packageVersionDescription_status = Lens.lens (\PackageVersionDescription' {status} -> status) (\s@PackageVersionDescription' {} a -> s {status = a} :: PackageVersionDescription)++-- | A summary of the package version. The summary is extracted from the+-- package. The information in and detail level of the summary depends on+-- the package version\'s format.+packageVersionDescription_summary :: Lens.Lens' PackageVersionDescription (Prelude.Maybe Prelude.Text)+packageVersionDescription_summary = Lens.lens (\PackageVersionDescription' {summary} -> summary) (\s@PackageVersionDescription' {} a -> s {summary = a} :: PackageVersionDescription)++-- | The version of the package.+packageVersionDescription_version :: Lens.Lens' PackageVersionDescription (Prelude.Maybe Prelude.Text)+packageVersionDescription_version = Lens.lens (\PackageVersionDescription' {version} -> version) (\s@PackageVersionDescription' {} a -> s {version = a} :: PackageVersionDescription)++instance Data.FromJSON PackageVersionDescription where+ parseJSON =+ Data.withObject+ "PackageVersionDescription"+ ( \x ->+ PackageVersionDescription'+ Prelude.<$> (x Data..:? "displayName")+ Prelude.<*> (x Data..:? "format")+ Prelude.<*> (x Data..:? "homePage")+ Prelude.<*> (x Data..:? "licenses" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "namespace")+ Prelude.<*> (x Data..:? "origin")+ Prelude.<*> (x Data..:? "packageName")+ Prelude.<*> (x Data..:? "publishedTime")+ Prelude.<*> (x Data..:? "revision")+ Prelude.<*> (x Data..:? "sourceCodeRepository")+ Prelude.<*> (x Data..:? "status")+ Prelude.<*> (x Data..:? "summary")+ Prelude.<*> (x Data..:? "version")+ )++instance Prelude.Hashable PackageVersionDescription where+ hashWithSalt _salt PackageVersionDescription' {..} =+ _salt+ `Prelude.hashWithSalt` displayName+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` homePage+ `Prelude.hashWithSalt` licenses+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` origin+ `Prelude.hashWithSalt` packageName+ `Prelude.hashWithSalt` publishedTime+ `Prelude.hashWithSalt` revision+ `Prelude.hashWithSalt` sourceCodeRepository+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` summary+ `Prelude.hashWithSalt` version++instance Prelude.NFData PackageVersionDescription where+ rnf PackageVersionDescription' {..} =+ Prelude.rnf displayName+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf homePage+ `Prelude.seq` Prelude.rnf licenses+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf origin+ `Prelude.seq` Prelude.rnf packageName+ `Prelude.seq` Prelude.rnf publishedTime+ `Prelude.seq` Prelude.rnf revision+ `Prelude.seq` Prelude.rnf sourceCodeRepository+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf summary+ `Prelude.seq` Prelude.rnf version
+ gen/Amazonka/CodeArtifact/Types/PackageVersionError.hs view
@@ -0,0 +1,121 @@+{-# 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.CodeArtifact.Types.PackageVersionError+-- 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.CodeArtifact.Types.PackageVersionError where++import Amazonka.CodeArtifact.Types.PackageVersionErrorCode+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++-- | l An error associated with package.+--+-- /See:/ 'newPackageVersionError' smart constructor.+data PackageVersionError = PackageVersionError'+ { -- | The error code associated with the error. Valid error codes are:+ --+ -- - @ALREADY_EXISTS@+ --+ -- - @MISMATCHED_REVISION@+ --+ -- - @MISMATCHED_STATUS@+ --+ -- - @NOT_ALLOWED@+ --+ -- - @NOT_FOUND@+ --+ -- - @SKIPPED@+ errorCode :: Prelude.Maybe PackageVersionErrorCode,+ -- | The error message associated with the error.+ errorMessage :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageVersionError' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errorCode', 'packageVersionError_errorCode' - The error code associated with the error. Valid error codes are:+--+-- - @ALREADY_EXISTS@+--+-- - @MISMATCHED_REVISION@+--+-- - @MISMATCHED_STATUS@+--+-- - @NOT_ALLOWED@+--+-- - @NOT_FOUND@+--+-- - @SKIPPED@+--+-- 'errorMessage', 'packageVersionError_errorMessage' - The error message associated with the error.+newPackageVersionError ::+ PackageVersionError+newPackageVersionError =+ PackageVersionError'+ { errorCode = Prelude.Nothing,+ errorMessage = Prelude.Nothing+ }++-- | The error code associated with the error. Valid error codes are:+--+-- - @ALREADY_EXISTS@+--+-- - @MISMATCHED_REVISION@+--+-- - @MISMATCHED_STATUS@+--+-- - @NOT_ALLOWED@+--+-- - @NOT_FOUND@+--+-- - @SKIPPED@+packageVersionError_errorCode :: Lens.Lens' PackageVersionError (Prelude.Maybe PackageVersionErrorCode)+packageVersionError_errorCode = Lens.lens (\PackageVersionError' {errorCode} -> errorCode) (\s@PackageVersionError' {} a -> s {errorCode = a} :: PackageVersionError)++-- | The error message associated with the error.+packageVersionError_errorMessage :: Lens.Lens' PackageVersionError (Prelude.Maybe Prelude.Text)+packageVersionError_errorMessage = Lens.lens (\PackageVersionError' {errorMessage} -> errorMessage) (\s@PackageVersionError' {} a -> s {errorMessage = a} :: PackageVersionError)++instance Data.FromJSON PackageVersionError where+ parseJSON =+ Data.withObject+ "PackageVersionError"+ ( \x ->+ PackageVersionError'+ Prelude.<$> (x Data..:? "errorCode")+ Prelude.<*> (x Data..:? "errorMessage")+ )++instance Prelude.Hashable PackageVersionError where+ hashWithSalt _salt PackageVersionError' {..} =+ _salt+ `Prelude.hashWithSalt` errorCode+ `Prelude.hashWithSalt` errorMessage++instance Prelude.NFData PackageVersionError where+ rnf PackageVersionError' {..} =+ Prelude.rnf errorCode+ `Prelude.seq` Prelude.rnf errorMessage
+ gen/Amazonka/CodeArtifact/Types/PackageVersionErrorCode.hs view
@@ -0,0 +1,91 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.PackageVersionErrorCode+-- 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.CodeArtifact.Types.PackageVersionErrorCode+ ( PackageVersionErrorCode+ ( ..,+ PackageVersionErrorCode_ALREADY_EXISTS,+ PackageVersionErrorCode_MISMATCHED_REVISION,+ PackageVersionErrorCode_MISMATCHED_STATUS,+ PackageVersionErrorCode_NOT_ALLOWED,+ PackageVersionErrorCode_NOT_FOUND,+ PackageVersionErrorCode_SKIPPED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PackageVersionErrorCode = PackageVersionErrorCode'+ { fromPackageVersionErrorCode ::+ 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 PackageVersionErrorCode_ALREADY_EXISTS :: PackageVersionErrorCode+pattern PackageVersionErrorCode_ALREADY_EXISTS = PackageVersionErrorCode' "ALREADY_EXISTS"++pattern PackageVersionErrorCode_MISMATCHED_REVISION :: PackageVersionErrorCode+pattern PackageVersionErrorCode_MISMATCHED_REVISION = PackageVersionErrorCode' "MISMATCHED_REVISION"++pattern PackageVersionErrorCode_MISMATCHED_STATUS :: PackageVersionErrorCode+pattern PackageVersionErrorCode_MISMATCHED_STATUS = PackageVersionErrorCode' "MISMATCHED_STATUS"++pattern PackageVersionErrorCode_NOT_ALLOWED :: PackageVersionErrorCode+pattern PackageVersionErrorCode_NOT_ALLOWED = PackageVersionErrorCode' "NOT_ALLOWED"++pattern PackageVersionErrorCode_NOT_FOUND :: PackageVersionErrorCode+pattern PackageVersionErrorCode_NOT_FOUND = PackageVersionErrorCode' "NOT_FOUND"++pattern PackageVersionErrorCode_SKIPPED :: PackageVersionErrorCode+pattern PackageVersionErrorCode_SKIPPED = PackageVersionErrorCode' "SKIPPED"++{-# COMPLETE+ PackageVersionErrorCode_ALREADY_EXISTS,+ PackageVersionErrorCode_MISMATCHED_REVISION,+ PackageVersionErrorCode_MISMATCHED_STATUS,+ PackageVersionErrorCode_NOT_ALLOWED,+ PackageVersionErrorCode_NOT_FOUND,+ PackageVersionErrorCode_SKIPPED,+ PackageVersionErrorCode'+ #-}
+ gen/Amazonka/CodeArtifact/Types/PackageVersionOrigin.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.CodeArtifact.Types.PackageVersionOrigin+-- 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.CodeArtifact.Types.PackageVersionOrigin where++import Amazonka.CodeArtifact.Types.DomainEntryPoint+import Amazonka.CodeArtifact.Types.PackageVersionOriginType+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 how a package version was added to a repository.+--+-- /See:/ 'newPackageVersionOrigin' smart constructor.+data PackageVersionOrigin = PackageVersionOrigin'+ { -- | A+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_DomainEntryPoint.html DomainEntryPoint>+ -- object that contains information about from which repository or external+ -- connection the package version was added to the domain.+ domainEntryPoint :: Prelude.Maybe DomainEntryPoint,+ -- | Describes how the package version was originally added to the domain. An+ -- @INTERNAL@ origin type means the package version was published directly+ -- to a repository in the domain. An @EXTERNAL@ origin type means the+ -- package version was ingested from an external connection.+ originType :: Prelude.Maybe PackageVersionOriginType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageVersionOrigin' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainEntryPoint', 'packageVersionOrigin_domainEntryPoint' - A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_DomainEntryPoint.html DomainEntryPoint>+-- object that contains information about from which repository or external+-- connection the package version was added to the domain.+--+-- 'originType', 'packageVersionOrigin_originType' - Describes how the package version was originally added to the domain. An+-- @INTERNAL@ origin type means the package version was published directly+-- to a repository in the domain. An @EXTERNAL@ origin type means the+-- package version was ingested from an external connection.+newPackageVersionOrigin ::+ PackageVersionOrigin+newPackageVersionOrigin =+ PackageVersionOrigin'+ { domainEntryPoint =+ Prelude.Nothing,+ originType = Prelude.Nothing+ }++-- | A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_DomainEntryPoint.html DomainEntryPoint>+-- object that contains information about from which repository or external+-- connection the package version was added to the domain.+packageVersionOrigin_domainEntryPoint :: Lens.Lens' PackageVersionOrigin (Prelude.Maybe DomainEntryPoint)+packageVersionOrigin_domainEntryPoint = Lens.lens (\PackageVersionOrigin' {domainEntryPoint} -> domainEntryPoint) (\s@PackageVersionOrigin' {} a -> s {domainEntryPoint = a} :: PackageVersionOrigin)++-- | Describes how the package version was originally added to the domain. An+-- @INTERNAL@ origin type means the package version was published directly+-- to a repository in the domain. An @EXTERNAL@ origin type means the+-- package version was ingested from an external connection.+packageVersionOrigin_originType :: Lens.Lens' PackageVersionOrigin (Prelude.Maybe PackageVersionOriginType)+packageVersionOrigin_originType = Lens.lens (\PackageVersionOrigin' {originType} -> originType) (\s@PackageVersionOrigin' {} a -> s {originType = a} :: PackageVersionOrigin)++instance Data.FromJSON PackageVersionOrigin where+ parseJSON =+ Data.withObject+ "PackageVersionOrigin"+ ( \x ->+ PackageVersionOrigin'+ Prelude.<$> (x Data..:? "domainEntryPoint")+ Prelude.<*> (x Data..:? "originType")+ )++instance Prelude.Hashable PackageVersionOrigin where+ hashWithSalt _salt PackageVersionOrigin' {..} =+ _salt+ `Prelude.hashWithSalt` domainEntryPoint+ `Prelude.hashWithSalt` originType++instance Prelude.NFData PackageVersionOrigin where+ rnf PackageVersionOrigin' {..} =+ Prelude.rnf domainEntryPoint+ `Prelude.seq` Prelude.rnf originType
+ gen/Amazonka/CodeArtifact/Types/PackageVersionOriginType.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.CodeArtifact.Types.PackageVersionOriginType+-- 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.CodeArtifact.Types.PackageVersionOriginType+ ( PackageVersionOriginType+ ( ..,+ PackageVersionOriginType_EXTERNAL,+ PackageVersionOriginType_INTERNAL,+ PackageVersionOriginType_UNKNOWN+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PackageVersionOriginType = PackageVersionOriginType'+ { fromPackageVersionOriginType ::+ 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 PackageVersionOriginType_EXTERNAL :: PackageVersionOriginType+pattern PackageVersionOriginType_EXTERNAL = PackageVersionOriginType' "EXTERNAL"++pattern PackageVersionOriginType_INTERNAL :: PackageVersionOriginType+pattern PackageVersionOriginType_INTERNAL = PackageVersionOriginType' "INTERNAL"++pattern PackageVersionOriginType_UNKNOWN :: PackageVersionOriginType+pattern PackageVersionOriginType_UNKNOWN = PackageVersionOriginType' "UNKNOWN"++{-# COMPLETE+ PackageVersionOriginType_EXTERNAL,+ PackageVersionOriginType_INTERNAL,+ PackageVersionOriginType_UNKNOWN,+ PackageVersionOriginType'+ #-}
+ gen/Amazonka/CodeArtifact/Types/PackageVersionSortType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.PackageVersionSortType+-- 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.CodeArtifact.Types.PackageVersionSortType+ ( PackageVersionSortType+ ( ..,+ PackageVersionSortType_PUBLISHED_TIME+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PackageVersionSortType = PackageVersionSortType'+ { fromPackageVersionSortType ::+ 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 PackageVersionSortType_PUBLISHED_TIME :: PackageVersionSortType+pattern PackageVersionSortType_PUBLISHED_TIME = PackageVersionSortType' "PUBLISHED_TIME"++{-# COMPLETE+ PackageVersionSortType_PUBLISHED_TIME,+ PackageVersionSortType'+ #-}
+ gen/Amazonka/CodeArtifact/Types/PackageVersionStatus.hs view
@@ -0,0 +1,91 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.PackageVersionStatus+-- 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.CodeArtifact.Types.PackageVersionStatus+ ( PackageVersionStatus+ ( ..,+ PackageVersionStatus_Archived,+ PackageVersionStatus_Deleted,+ PackageVersionStatus_Disposed,+ PackageVersionStatus_Published,+ PackageVersionStatus_Unfinished,+ PackageVersionStatus_Unlisted+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PackageVersionStatus = PackageVersionStatus'+ { fromPackageVersionStatus ::+ 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 PackageVersionStatus_Archived :: PackageVersionStatus+pattern PackageVersionStatus_Archived = PackageVersionStatus' "Archived"++pattern PackageVersionStatus_Deleted :: PackageVersionStatus+pattern PackageVersionStatus_Deleted = PackageVersionStatus' "Deleted"++pattern PackageVersionStatus_Disposed :: PackageVersionStatus+pattern PackageVersionStatus_Disposed = PackageVersionStatus' "Disposed"++pattern PackageVersionStatus_Published :: PackageVersionStatus+pattern PackageVersionStatus_Published = PackageVersionStatus' "Published"++pattern PackageVersionStatus_Unfinished :: PackageVersionStatus+pattern PackageVersionStatus_Unfinished = PackageVersionStatus' "Unfinished"++pattern PackageVersionStatus_Unlisted :: PackageVersionStatus+pattern PackageVersionStatus_Unlisted = PackageVersionStatus' "Unlisted"++{-# COMPLETE+ PackageVersionStatus_Archived,+ PackageVersionStatus_Deleted,+ PackageVersionStatus_Disposed,+ PackageVersionStatus_Published,+ PackageVersionStatus_Unfinished,+ PackageVersionStatus_Unlisted,+ PackageVersionStatus'+ #-}
+ gen/Amazonka/CodeArtifact/Types/PackageVersionSummary.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.CodeArtifact.Types.PackageVersionSummary+-- 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.CodeArtifact.Types.PackageVersionSummary where++import Amazonka.CodeArtifact.Types.PackageVersionOrigin+import Amazonka.CodeArtifact.Types.PackageVersionStatus+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++-- | Details about a package version, including its status, version, and+-- revision. The+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_ListPackageVersions.html ListPackageVersions>+-- operation returns a list of @PackageVersionSummary@ objects.+--+-- /See:/ 'newPackageVersionSummary' smart constructor.+data PackageVersionSummary = PackageVersionSummary'+ { -- | A+ -- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionOrigin.html PackageVersionOrigin>+ -- object that contains information about how the package version was added+ -- to the repository.+ origin :: Prelude.Maybe PackageVersionOrigin,+ -- | The revision associated with a package version.+ revision :: Prelude.Maybe Prelude.Text,+ -- | Information about a package version.+ version :: Prelude.Text,+ -- | A string that contains the status of the package version. It can be one+ -- of the following:+ status :: PackageVersionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageVersionSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'origin', 'packageVersionSummary_origin' - A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionOrigin.html PackageVersionOrigin>+-- object that contains information about how the package version was added+-- to the repository.+--+-- 'revision', 'packageVersionSummary_revision' - The revision associated with a package version.+--+-- 'version', 'packageVersionSummary_version' - Information about a package version.+--+-- 'status', 'packageVersionSummary_status' - A string that contains the status of the package version. It can be one+-- of the following:+newPackageVersionSummary ::+ -- | 'version'+ Prelude.Text ->+ -- | 'status'+ PackageVersionStatus ->+ PackageVersionSummary+newPackageVersionSummary pVersion_ pStatus_ =+ PackageVersionSummary'+ { origin = Prelude.Nothing,+ revision = Prelude.Nothing,+ version = pVersion_,+ status = pStatus_+ }++-- | A+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionOrigin.html PackageVersionOrigin>+-- object that contains information about how the package version was added+-- to the repository.+packageVersionSummary_origin :: Lens.Lens' PackageVersionSummary (Prelude.Maybe PackageVersionOrigin)+packageVersionSummary_origin = Lens.lens (\PackageVersionSummary' {origin} -> origin) (\s@PackageVersionSummary' {} a -> s {origin = a} :: PackageVersionSummary)++-- | The revision associated with a package version.+packageVersionSummary_revision :: Lens.Lens' PackageVersionSummary (Prelude.Maybe Prelude.Text)+packageVersionSummary_revision = Lens.lens (\PackageVersionSummary' {revision} -> revision) (\s@PackageVersionSummary' {} a -> s {revision = a} :: PackageVersionSummary)++-- | Information about a package version.+packageVersionSummary_version :: Lens.Lens' PackageVersionSummary Prelude.Text+packageVersionSummary_version = Lens.lens (\PackageVersionSummary' {version} -> version) (\s@PackageVersionSummary' {} a -> s {version = a} :: PackageVersionSummary)++-- | A string that contains the status of the package version. It can be one+-- of the following:+packageVersionSummary_status :: Lens.Lens' PackageVersionSummary PackageVersionStatus+packageVersionSummary_status = Lens.lens (\PackageVersionSummary' {status} -> status) (\s@PackageVersionSummary' {} a -> s {status = a} :: PackageVersionSummary)++instance Data.FromJSON PackageVersionSummary where+ parseJSON =+ Data.withObject+ "PackageVersionSummary"+ ( \x ->+ PackageVersionSummary'+ Prelude.<$> (x Data..:? "origin")+ Prelude.<*> (x Data..:? "revision")+ Prelude.<*> (x Data..: "version")+ Prelude.<*> (x Data..: "status")+ )++instance Prelude.Hashable PackageVersionSummary where+ hashWithSalt _salt PackageVersionSummary' {..} =+ _salt+ `Prelude.hashWithSalt` origin+ `Prelude.hashWithSalt` revision+ `Prelude.hashWithSalt` version+ `Prelude.hashWithSalt` status++instance Prelude.NFData PackageVersionSummary where+ rnf PackageVersionSummary' {..} =+ Prelude.rnf origin+ `Prelude.seq` Prelude.rnf revision+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/CodeArtifact/Types/RepositoryDescription.hs view
@@ -0,0 +1,189 @@+{-# 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.CodeArtifact.Types.RepositoryDescription+-- 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.CodeArtifact.Types.RepositoryDescription where++import Amazonka.CodeArtifact.Types.RepositoryExternalConnectionInfo+import Amazonka.CodeArtifact.Types.UpstreamRepositoryInfo+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 details of a repository stored in CodeArtifact. A CodeArtifact+-- repository contains a set of package versions, each of which maps to a+-- set of assets. Repositories are polyglot—a single repository can contain+-- packages of any supported type. Each repository exposes endpoints for+-- fetching and publishing packages using tools like the @npm@ CLI, the+-- Maven CLI (@mvn@), and @pip@. You can create up to 100 repositories per+-- Amazon Web Services account.+--+-- /See:/ 'newRepositoryDescription' smart constructor.+data RepositoryDescription = RepositoryDescription'+ { -- | The 12-digit account number of the Amazon Web Services account that+ -- manages the repository.+ administratorAccount :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the repository.+ arn :: Prelude.Maybe Prelude.Text,+ -- | A text description of the repository.+ description :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository.+ domainName :: Prelude.Maybe Prelude.Text,+ -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain that contains the repository. It does not include dashes or+ -- spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | An array of external connections associated with the repository.+ externalConnections :: Prelude.Maybe [RepositoryExternalConnectionInfo],+ -- | The name of the repository.+ name :: Prelude.Maybe Prelude.Text,+ -- | A list of upstream repositories to associate with the repository. The+ -- order of the upstream repositories in the list determines their priority+ -- order when CodeArtifact looks for a requested package version. For more+ -- information, see+ -- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+ upstreams :: Prelude.Maybe [UpstreamRepositoryInfo]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RepositoryDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'administratorAccount', 'repositoryDescription_administratorAccount' - The 12-digit account number of the Amazon Web Services account that+-- manages the repository.+--+-- 'arn', 'repositoryDescription_arn' - The Amazon Resource Name (ARN) of the repository.+--+-- 'description', 'repositoryDescription_description' - A text description of the repository.+--+-- 'domainName', 'repositoryDescription_domainName' - The name of the domain that contains the repository.+--+-- 'domainOwner', 'repositoryDescription_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain that contains the repository. It does not include dashes or+-- spaces.+--+-- 'externalConnections', 'repositoryDescription_externalConnections' - An array of external connections associated with the repository.+--+-- 'name', 'repositoryDescription_name' - The name of the repository.+--+-- 'upstreams', 'repositoryDescription_upstreams' - A list of upstream repositories to associate with the repository. The+-- order of the upstream repositories in the list determines their priority+-- order when CodeArtifact looks for a requested package version. For more+-- information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+newRepositoryDescription ::+ RepositoryDescription+newRepositoryDescription =+ RepositoryDescription'+ { administratorAccount =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ description = Prelude.Nothing,+ domainName = Prelude.Nothing,+ domainOwner = Prelude.Nothing,+ externalConnections = Prelude.Nothing,+ name = Prelude.Nothing,+ upstreams = Prelude.Nothing+ }++-- | The 12-digit account number of the Amazon Web Services account that+-- manages the repository.+repositoryDescription_administratorAccount :: Lens.Lens' RepositoryDescription (Prelude.Maybe Prelude.Text)+repositoryDescription_administratorAccount = Lens.lens (\RepositoryDescription' {administratorAccount} -> administratorAccount) (\s@RepositoryDescription' {} a -> s {administratorAccount = a} :: RepositoryDescription)++-- | The Amazon Resource Name (ARN) of the repository.+repositoryDescription_arn :: Lens.Lens' RepositoryDescription (Prelude.Maybe Prelude.Text)+repositoryDescription_arn = Lens.lens (\RepositoryDescription' {arn} -> arn) (\s@RepositoryDescription' {} a -> s {arn = a} :: RepositoryDescription)++-- | A text description of the repository.+repositoryDescription_description :: Lens.Lens' RepositoryDescription (Prelude.Maybe Prelude.Text)+repositoryDescription_description = Lens.lens (\RepositoryDescription' {description} -> description) (\s@RepositoryDescription' {} a -> s {description = a} :: RepositoryDescription)++-- | The name of the domain that contains the repository.+repositoryDescription_domainName :: Lens.Lens' RepositoryDescription (Prelude.Maybe Prelude.Text)+repositoryDescription_domainName = Lens.lens (\RepositoryDescription' {domainName} -> domainName) (\s@RepositoryDescription' {} a -> s {domainName = a} :: RepositoryDescription)++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain that contains the repository. It does not include dashes or+-- spaces.+repositoryDescription_domainOwner :: Lens.Lens' RepositoryDescription (Prelude.Maybe Prelude.Text)+repositoryDescription_domainOwner = Lens.lens (\RepositoryDescription' {domainOwner} -> domainOwner) (\s@RepositoryDescription' {} a -> s {domainOwner = a} :: RepositoryDescription)++-- | An array of external connections associated with the repository.+repositoryDescription_externalConnections :: Lens.Lens' RepositoryDescription (Prelude.Maybe [RepositoryExternalConnectionInfo])+repositoryDescription_externalConnections = Lens.lens (\RepositoryDescription' {externalConnections} -> externalConnections) (\s@RepositoryDescription' {} a -> s {externalConnections = a} :: RepositoryDescription) Prelude.. Lens.mapping Lens.coerced++-- | The name of the repository.+repositoryDescription_name :: Lens.Lens' RepositoryDescription (Prelude.Maybe Prelude.Text)+repositoryDescription_name = Lens.lens (\RepositoryDescription' {name} -> name) (\s@RepositoryDescription' {} a -> s {name = a} :: RepositoryDescription)++-- | A list of upstream repositories to associate with the repository. The+-- order of the upstream repositories in the list determines their priority+-- order when CodeArtifact looks for a requested package version. For more+-- information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+repositoryDescription_upstreams :: Lens.Lens' RepositoryDescription (Prelude.Maybe [UpstreamRepositoryInfo])+repositoryDescription_upstreams = Lens.lens (\RepositoryDescription' {upstreams} -> upstreams) (\s@RepositoryDescription' {} a -> s {upstreams = a} :: RepositoryDescription) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON RepositoryDescription where+ parseJSON =+ Data.withObject+ "RepositoryDescription"+ ( \x ->+ RepositoryDescription'+ Prelude.<$> (x Data..:? "administratorAccount")+ Prelude.<*> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "description")+ Prelude.<*> (x Data..:? "domainName")+ Prelude.<*> (x Data..:? "domainOwner")+ Prelude.<*> ( x+ Data..:? "externalConnections"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "upstreams" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable RepositoryDescription where+ hashWithSalt _salt RepositoryDescription' {..} =+ _salt+ `Prelude.hashWithSalt` administratorAccount+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` externalConnections+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` upstreams++instance Prelude.NFData RepositoryDescription where+ rnf RepositoryDescription' {..} =+ Prelude.rnf administratorAccount+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf externalConnections+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf upstreams
+ gen/Amazonka/CodeArtifact/Types/RepositoryExternalConnectionInfo.hs view
@@ -0,0 +1,143 @@+{-# 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.CodeArtifact.Types.RepositoryExternalConnectionInfo+-- 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.CodeArtifact.Types.RepositoryExternalConnectionInfo where++import Amazonka.CodeArtifact.Types.ExternalConnectionStatus+import Amazonka.CodeArtifact.Types.PackageFormat+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about the external connection of a repository.+--+-- /See:/ 'newRepositoryExternalConnectionInfo' smart constructor.+data RepositoryExternalConnectionInfo = RepositoryExternalConnectionInfo'+ { -- | The name of the external connection associated with a repository.+ externalConnectionName :: Prelude.Maybe Prelude.Text,+ -- | The package format associated with a repository\'s external connection.+ -- The valid package formats are:+ --+ -- - @npm@: A Node Package Manager (npm) package.+ --+ -- - @pypi@: A Python Package Index (PyPI) package.+ --+ -- - @maven@: A Maven package that contains compiled code in a+ -- distributable format, such as a JAR file.+ --+ -- - @nuget@: A NuGet package.+ packageFormat :: Prelude.Maybe PackageFormat,+ -- | The status of the external connection of a repository. There is one+ -- valid value, @Available@.+ status :: Prelude.Maybe ExternalConnectionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RepositoryExternalConnectionInfo' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'externalConnectionName', 'repositoryExternalConnectionInfo_externalConnectionName' - The name of the external connection associated with a repository.+--+-- 'packageFormat', 'repositoryExternalConnectionInfo_packageFormat' - The package format associated with a repository\'s external connection.+-- The valid package formats are:+--+-- - @npm@: A Node Package Manager (npm) package.+--+-- - @pypi@: A Python Package Index (PyPI) package.+--+-- - @maven@: A Maven package that contains compiled code in a+-- distributable format, such as a JAR file.+--+-- - @nuget@: A NuGet package.+--+-- 'status', 'repositoryExternalConnectionInfo_status' - The status of the external connection of a repository. There is one+-- valid value, @Available@.+newRepositoryExternalConnectionInfo ::+ RepositoryExternalConnectionInfo+newRepositoryExternalConnectionInfo =+ RepositoryExternalConnectionInfo'+ { externalConnectionName =+ Prelude.Nothing,+ packageFormat = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The name of the external connection associated with a repository.+repositoryExternalConnectionInfo_externalConnectionName :: Lens.Lens' RepositoryExternalConnectionInfo (Prelude.Maybe Prelude.Text)+repositoryExternalConnectionInfo_externalConnectionName = Lens.lens (\RepositoryExternalConnectionInfo' {externalConnectionName} -> externalConnectionName) (\s@RepositoryExternalConnectionInfo' {} a -> s {externalConnectionName = a} :: RepositoryExternalConnectionInfo)++-- | The package format associated with a repository\'s external connection.+-- The valid package formats are:+--+-- - @npm@: A Node Package Manager (npm) package.+--+-- - @pypi@: A Python Package Index (PyPI) package.+--+-- - @maven@: A Maven package that contains compiled code in a+-- distributable format, such as a JAR file.+--+-- - @nuget@: A NuGet package.+repositoryExternalConnectionInfo_packageFormat :: Lens.Lens' RepositoryExternalConnectionInfo (Prelude.Maybe PackageFormat)+repositoryExternalConnectionInfo_packageFormat = Lens.lens (\RepositoryExternalConnectionInfo' {packageFormat} -> packageFormat) (\s@RepositoryExternalConnectionInfo' {} a -> s {packageFormat = a} :: RepositoryExternalConnectionInfo)++-- | The status of the external connection of a repository. There is one+-- valid value, @Available@.+repositoryExternalConnectionInfo_status :: Lens.Lens' RepositoryExternalConnectionInfo (Prelude.Maybe ExternalConnectionStatus)+repositoryExternalConnectionInfo_status = Lens.lens (\RepositoryExternalConnectionInfo' {status} -> status) (\s@RepositoryExternalConnectionInfo' {} a -> s {status = a} :: RepositoryExternalConnectionInfo)++instance+ Data.FromJSON+ RepositoryExternalConnectionInfo+ where+ parseJSON =+ Data.withObject+ "RepositoryExternalConnectionInfo"+ ( \x ->+ RepositoryExternalConnectionInfo'+ Prelude.<$> (x Data..:? "externalConnectionName")+ Prelude.<*> (x Data..:? "packageFormat")+ Prelude.<*> (x Data..:? "status")+ )++instance+ Prelude.Hashable+ RepositoryExternalConnectionInfo+ where+ hashWithSalt+ _salt+ RepositoryExternalConnectionInfo' {..} =+ _salt+ `Prelude.hashWithSalt` externalConnectionName+ `Prelude.hashWithSalt` packageFormat+ `Prelude.hashWithSalt` status++instance+ Prelude.NFData+ RepositoryExternalConnectionInfo+ where+ rnf RepositoryExternalConnectionInfo' {..} =+ Prelude.rnf externalConnectionName+ `Prelude.seq` Prelude.rnf packageFormat+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/CodeArtifact/Types/RepositorySummary.hs view
@@ -0,0 +1,139 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.RepositorySummary+-- 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.CodeArtifact.Types.RepositorySummary 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++-- | Details about a repository, including its Amazon Resource Name (ARN),+-- description, and domain information. The+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_ListRepositories.html ListRepositories>+-- operation returns a list of @RepositorySummary@ objects.+--+-- /See:/ 'newRepositorySummary' smart constructor.+data RepositorySummary = RepositorySummary'+ { -- | The Amazon Web Services account ID that manages the repository.+ administratorAccount :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the repository.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The description of the repository.+ description :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain that contains the repository.+ domainName :: Prelude.Maybe Prelude.Text,+ -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The name of the repository.+ name :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RepositorySummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'administratorAccount', 'repositorySummary_administratorAccount' - The Amazon Web Services account ID that manages the repository.+--+-- 'arn', 'repositorySummary_arn' - The ARN of the repository.+--+-- 'description', 'repositorySummary_description' - The description of the repository.+--+-- 'domainName', 'repositorySummary_domainName' - The name of the domain that contains the repository.+--+-- 'domainOwner', 'repositorySummary_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'name', 'repositorySummary_name' - The name of the repository.+newRepositorySummary ::+ RepositorySummary+newRepositorySummary =+ RepositorySummary'+ { administratorAccount =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ description = Prelude.Nothing,+ domainName = Prelude.Nothing,+ domainOwner = Prelude.Nothing,+ name = Prelude.Nothing+ }++-- | The Amazon Web Services account ID that manages the repository.+repositorySummary_administratorAccount :: Lens.Lens' RepositorySummary (Prelude.Maybe Prelude.Text)+repositorySummary_administratorAccount = Lens.lens (\RepositorySummary' {administratorAccount} -> administratorAccount) (\s@RepositorySummary' {} a -> s {administratorAccount = a} :: RepositorySummary)++-- | The ARN of the repository.+repositorySummary_arn :: Lens.Lens' RepositorySummary (Prelude.Maybe Prelude.Text)+repositorySummary_arn = Lens.lens (\RepositorySummary' {arn} -> arn) (\s@RepositorySummary' {} a -> s {arn = a} :: RepositorySummary)++-- | The description of the repository.+repositorySummary_description :: Lens.Lens' RepositorySummary (Prelude.Maybe Prelude.Text)+repositorySummary_description = Lens.lens (\RepositorySummary' {description} -> description) (\s@RepositorySummary' {} a -> s {description = a} :: RepositorySummary)++-- | The name of the domain that contains the repository.+repositorySummary_domainName :: Lens.Lens' RepositorySummary (Prelude.Maybe Prelude.Text)+repositorySummary_domainName = Lens.lens (\RepositorySummary' {domainName} -> domainName) (\s@RepositorySummary' {} a -> s {domainName = a} :: RepositorySummary)++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+repositorySummary_domainOwner :: Lens.Lens' RepositorySummary (Prelude.Maybe Prelude.Text)+repositorySummary_domainOwner = Lens.lens (\RepositorySummary' {domainOwner} -> domainOwner) (\s@RepositorySummary' {} a -> s {domainOwner = a} :: RepositorySummary)++-- | The name of the repository.+repositorySummary_name :: Lens.Lens' RepositorySummary (Prelude.Maybe Prelude.Text)+repositorySummary_name = Lens.lens (\RepositorySummary' {name} -> name) (\s@RepositorySummary' {} a -> s {name = a} :: RepositorySummary)++instance Data.FromJSON RepositorySummary where+ parseJSON =+ Data.withObject+ "RepositorySummary"+ ( \x ->+ RepositorySummary'+ Prelude.<$> (x Data..:? "administratorAccount")+ Prelude.<*> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "description")+ Prelude.<*> (x Data..:? "domainName")+ Prelude.<*> (x Data..:? "domainOwner")+ Prelude.<*> (x Data..:? "name")+ )++instance Prelude.Hashable RepositorySummary where+ hashWithSalt _salt RepositorySummary' {..} =+ _salt+ `Prelude.hashWithSalt` administratorAccount+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` name++instance Prelude.NFData RepositorySummary where+ rnf RepositorySummary' {..} =+ Prelude.rnf administratorAccount+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf name
+ gen/Amazonka/CodeArtifact/Types/ResourcePolicy.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.ResourcePolicy+-- 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.CodeArtifact.Types.ResourcePolicy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An CodeArtifact resource policy that contains a resource ARN, document+-- details, and a revision.+--+-- /See:/ 'newResourcePolicy' smart constructor.+data ResourcePolicy = ResourcePolicy'+ { -- | The resource policy formatted in JSON.+ document :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the resource associated with the resource policy+ resourceArn :: Prelude.Maybe Prelude.Text,+ -- | The current revision of the resource policy.+ revision :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResourcePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'document', 'resourcePolicy_document' - The resource policy formatted in JSON.+--+-- 'resourceArn', 'resourcePolicy_resourceArn' - The ARN of the resource associated with the resource policy+--+-- 'revision', 'resourcePolicy_revision' - The current revision of the resource policy.+newResourcePolicy ::+ ResourcePolicy+newResourcePolicy =+ ResourcePolicy'+ { document = Prelude.Nothing,+ resourceArn = Prelude.Nothing,+ revision = Prelude.Nothing+ }++-- | The resource policy formatted in JSON.+resourcePolicy_document :: Lens.Lens' ResourcePolicy (Prelude.Maybe Prelude.Text)+resourcePolicy_document = Lens.lens (\ResourcePolicy' {document} -> document) (\s@ResourcePolicy' {} a -> s {document = a} :: ResourcePolicy)++-- | The ARN of the resource associated with the resource policy+resourcePolicy_resourceArn :: Lens.Lens' ResourcePolicy (Prelude.Maybe Prelude.Text)+resourcePolicy_resourceArn = Lens.lens (\ResourcePolicy' {resourceArn} -> resourceArn) (\s@ResourcePolicy' {} a -> s {resourceArn = a} :: ResourcePolicy)++-- | The current revision of the resource policy.+resourcePolicy_revision :: Lens.Lens' ResourcePolicy (Prelude.Maybe Prelude.Text)+resourcePolicy_revision = Lens.lens (\ResourcePolicy' {revision} -> revision) (\s@ResourcePolicy' {} a -> s {revision = a} :: ResourcePolicy)++instance Data.FromJSON ResourcePolicy where+ parseJSON =+ Data.withObject+ "ResourcePolicy"+ ( \x ->+ ResourcePolicy'+ Prelude.<$> (x Data..:? "document")+ Prelude.<*> (x Data..:? "resourceArn")+ Prelude.<*> (x Data..:? "revision")+ )++instance Prelude.Hashable ResourcePolicy where+ hashWithSalt _salt ResourcePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` document+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` revision++instance Prelude.NFData ResourcePolicy where+ rnf ResourcePolicy' {..} =+ Prelude.rnf document+ `Prelude.seq` Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf revision
+ gen/Amazonka/CodeArtifact/Types/SuccessfulPackageVersionInfo.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.CodeArtifact.Types.SuccessfulPackageVersionInfo+-- 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.CodeArtifact.Types.SuccessfulPackageVersionInfo where++import Amazonka.CodeArtifact.Types.PackageVersionStatus+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains the revision and status of a package version.+--+-- /See:/ 'newSuccessfulPackageVersionInfo' smart constructor.+data SuccessfulPackageVersionInfo = SuccessfulPackageVersionInfo'+ { -- | The revision of a package version.+ revision :: Prelude.Maybe Prelude.Text,+ -- | The status of a package version.+ status :: Prelude.Maybe PackageVersionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SuccessfulPackageVersionInfo' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'revision', 'successfulPackageVersionInfo_revision' - The revision of a package version.+--+-- 'status', 'successfulPackageVersionInfo_status' - The status of a package version.+newSuccessfulPackageVersionInfo ::+ SuccessfulPackageVersionInfo+newSuccessfulPackageVersionInfo =+ SuccessfulPackageVersionInfo'+ { revision =+ Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The revision of a package version.+successfulPackageVersionInfo_revision :: Lens.Lens' SuccessfulPackageVersionInfo (Prelude.Maybe Prelude.Text)+successfulPackageVersionInfo_revision = Lens.lens (\SuccessfulPackageVersionInfo' {revision} -> revision) (\s@SuccessfulPackageVersionInfo' {} a -> s {revision = a} :: SuccessfulPackageVersionInfo)++-- | The status of a package version.+successfulPackageVersionInfo_status :: Lens.Lens' SuccessfulPackageVersionInfo (Prelude.Maybe PackageVersionStatus)+successfulPackageVersionInfo_status = Lens.lens (\SuccessfulPackageVersionInfo' {status} -> status) (\s@SuccessfulPackageVersionInfo' {} a -> s {status = a} :: SuccessfulPackageVersionInfo)++instance Data.FromJSON SuccessfulPackageVersionInfo where+ parseJSON =+ Data.withObject+ "SuccessfulPackageVersionInfo"+ ( \x ->+ SuccessfulPackageVersionInfo'+ Prelude.<$> (x Data..:? "revision")+ Prelude.<*> (x Data..:? "status")+ )++instance+ Prelude.Hashable+ SuccessfulPackageVersionInfo+ where+ hashWithSalt _salt SuccessfulPackageVersionInfo' {..} =+ _salt+ `Prelude.hashWithSalt` revision+ `Prelude.hashWithSalt` status++instance Prelude.NFData SuccessfulPackageVersionInfo where+ rnf SuccessfulPackageVersionInfo' {..} =+ Prelude.rnf revision+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/CodeArtifact/Types/Tag.hs view
@@ -0,0 +1,94 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.Types.Tag+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.CodeArtifact.Types.Tag where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A tag is a key-value pair that can be used to manage, search for, or+-- filter resources in CodeArtifact.+--+-- /See:/ 'newTag' smart constructor.+data Tag = Tag'+ { -- | The tag key.+ key :: Prelude.Text,+ -- | The tag value.+ value :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Tag' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'key', 'tag_key' - The tag key.+--+-- 'value', 'tag_value' - The tag value.+newTag ::+ -- | 'key'+ Prelude.Text ->+ -- | 'value'+ Prelude.Text ->+ Tag+newTag pKey_ pValue_ =+ Tag' {key = pKey_, value = pValue_}++-- | The tag key.+tag_key :: Lens.Lens' Tag Prelude.Text+tag_key = Lens.lens (\Tag' {key} -> key) (\s@Tag' {} a -> s {key = a} :: Tag)++-- | The tag value.+tag_value :: Lens.Lens' Tag Prelude.Text+tag_value = Lens.lens (\Tag' {value} -> value) (\s@Tag' {} a -> s {value = a} :: Tag)++instance Data.FromJSON Tag where+ parseJSON =+ Data.withObject+ "Tag"+ ( \x ->+ Tag'+ Prelude.<$> (x Data..: "key")+ Prelude.<*> (x Data..: "value")+ )++instance Prelude.Hashable Tag where+ hashWithSalt _salt Tag' {..} =+ _salt+ `Prelude.hashWithSalt` key+ `Prelude.hashWithSalt` value++instance Prelude.NFData Tag where+ rnf Tag' {..} =+ Prelude.rnf key `Prelude.seq` Prelude.rnf value++instance Data.ToJSON Tag where+ toJSON Tag' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("key" Data..= key),+ Prelude.Just ("value" Data..= value)+ ]+ )
+ gen/Amazonka/CodeArtifact/Types/UpstreamRepository.hs view
@@ -0,0 +1,78 @@+{-# 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.CodeArtifact.Types.UpstreamRepository+-- 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.CodeArtifact.Types.UpstreamRepository 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 upstream repository. A list of @UpstreamRepository@+-- objects is an input parameter to+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_CreateRepository.html CreateRepository>+-- and+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_UpdateRepository.html UpdateRepository>.+--+-- /See:/ 'newUpstreamRepository' smart constructor.+data UpstreamRepository = UpstreamRepository'+ { -- | The name of an upstream repository.+ repositoryName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpstreamRepository' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'repositoryName', 'upstreamRepository_repositoryName' - The name of an upstream repository.+newUpstreamRepository ::+ -- | 'repositoryName'+ Prelude.Text ->+ UpstreamRepository+newUpstreamRepository pRepositoryName_ =+ UpstreamRepository'+ { repositoryName =+ pRepositoryName_+ }++-- | The name of an upstream repository.+upstreamRepository_repositoryName :: Lens.Lens' UpstreamRepository Prelude.Text+upstreamRepository_repositoryName = Lens.lens (\UpstreamRepository' {repositoryName} -> repositoryName) (\s@UpstreamRepository' {} a -> s {repositoryName = a} :: UpstreamRepository)++instance Prelude.Hashable UpstreamRepository where+ hashWithSalt _salt UpstreamRepository' {..} =+ _salt `Prelude.hashWithSalt` repositoryName++instance Prelude.NFData UpstreamRepository where+ rnf UpstreamRepository' {..} =+ Prelude.rnf repositoryName++instance Data.ToJSON UpstreamRepository where+ toJSON UpstreamRepository' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("repositoryName" Data..= repositoryName)+ ]+ )
+ gen/Amazonka/CodeArtifact/Types/UpstreamRepositoryInfo.hs view
@@ -0,0 +1,72 @@+{-# 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.CodeArtifact.Types.UpstreamRepositoryInfo+-- 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.CodeArtifact.Types.UpstreamRepositoryInfo 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 upstream repository.+--+-- /See:/ 'newUpstreamRepositoryInfo' smart constructor.+data UpstreamRepositoryInfo = UpstreamRepositoryInfo'+ { -- | The name of an upstream repository.+ repositoryName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpstreamRepositoryInfo' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'repositoryName', 'upstreamRepositoryInfo_repositoryName' - The name of an upstream repository.+newUpstreamRepositoryInfo ::+ UpstreamRepositoryInfo+newUpstreamRepositoryInfo =+ UpstreamRepositoryInfo'+ { repositoryName =+ Prelude.Nothing+ }++-- | The name of an upstream repository.+upstreamRepositoryInfo_repositoryName :: Lens.Lens' UpstreamRepositoryInfo (Prelude.Maybe Prelude.Text)+upstreamRepositoryInfo_repositoryName = Lens.lens (\UpstreamRepositoryInfo' {repositoryName} -> repositoryName) (\s@UpstreamRepositoryInfo' {} a -> s {repositoryName = a} :: UpstreamRepositoryInfo)++instance Data.FromJSON UpstreamRepositoryInfo where+ parseJSON =+ Data.withObject+ "UpstreamRepositoryInfo"+ ( \x ->+ UpstreamRepositoryInfo'+ Prelude.<$> (x Data..:? "repositoryName")+ )++instance Prelude.Hashable UpstreamRepositoryInfo where+ hashWithSalt _salt UpstreamRepositoryInfo' {..} =+ _salt `Prelude.hashWithSalt` repositoryName++instance Prelude.NFData UpstreamRepositoryInfo where+ rnf UpstreamRepositoryInfo' {..} =+ Prelude.rnf repositoryName
+ gen/Amazonka/CodeArtifact/UntagResource.hs view
@@ -0,0 +1,169 @@+{-# 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.CodeArtifact.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 tags from a resource in CodeArtifact.+module Amazonka.CodeArtifact.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,++ -- * Response Lenses+ untagResourceResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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 resource that you want to remove+ -- tags from.+ resourceArn :: Prelude.Text,+ -- | The tag key for each tag that you want to remove from the resource.+ tagKeys :: [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 resource that you want to remove+-- tags from.+--+-- 'tagKeys', 'untagResource_tagKeys' - The tag key for each tag that you want to remove from the resource.+newUntagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceArn_ =+ UntagResource'+ { resourceArn = pResourceArn_,+ tagKeys = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the resource that you want to remove+-- tags from.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | The tag key for each tag that you want to remove from the resource.+untagResource_tagKeys :: Lens.Lens' UntagResource [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.postJSON (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.ToJSON UntagResource where+ toJSON UntagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("tagKeys" Data..= tagKeys)]+ )++instance Data.ToPath UntagResource where+ toPath = Prelude.const "/v1/untag"++instance Data.ToQuery UntagResource where+ toQuery UntagResource' {..} =+ Prelude.mconcat ["resourceArn" Data.=: resourceArn]++-- | /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/CodeArtifact/UpdatePackageVersionsStatus.hs view
@@ -0,0 +1,390 @@+{-# 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.CodeArtifact.UpdatePackageVersionsStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the status of one or more versions of a package. Using+-- @UpdatePackageVersionsStatus@, you can update the status of package+-- versions to @Archived@, @Published@, or @Unlisted@. To set the status of+-- a package version to @Disposed@, use+-- <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_DisposePackageVersions.html DisposePackageVersions>.+module Amazonka.CodeArtifact.UpdatePackageVersionsStatus+ ( -- * Creating a Request+ UpdatePackageVersionsStatus (..),+ newUpdatePackageVersionsStatus,++ -- * Request Lenses+ updatePackageVersionsStatus_domainOwner,+ updatePackageVersionsStatus_expectedStatus,+ updatePackageVersionsStatus_namespace,+ updatePackageVersionsStatus_versionRevisions,+ updatePackageVersionsStatus_domain,+ updatePackageVersionsStatus_repository,+ updatePackageVersionsStatus_format,+ updatePackageVersionsStatus_package,+ updatePackageVersionsStatus_versions,+ updatePackageVersionsStatus_targetStatus,++ -- * Destructuring the Response+ UpdatePackageVersionsStatusResponse (..),+ newUpdatePackageVersionsStatusResponse,++ -- * Response Lenses+ updatePackageVersionsStatusResponse_failedVersions,+ updatePackageVersionsStatusResponse_successfulVersions,+ updatePackageVersionsStatusResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newUpdatePackageVersionsStatus' smart constructor.+data UpdatePackageVersionsStatus = UpdatePackageVersionsStatus'+ { -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | The package version’s expected status before it is updated. If+ -- @expectedStatus@ is provided, the package version\'s status is updated+ -- only if its status at the time @UpdatePackageVersionsStatus@ is called+ -- matches @expectedStatus@.+ expectedStatus :: Prelude.Maybe PackageVersionStatus,+ -- | The namespace of the package version to be updated. The package version+ -- component that specifies its namespace depends on its type. For example:+ --+ -- - The namespace of a Maven package version is its @groupId@.+ --+ -- - The namespace of an npm package version is its @scope@.+ --+ -- - Python and NuGet package versions do not contain a corresponding+ -- component, package versions of those formats do not have a+ -- namespace.+ namespace :: Prelude.Maybe Prelude.Text,+ -- | A map of package versions and package version revisions. The map @key@+ -- is the package version (for example, @3.5.2@), and the map @value@ is+ -- the package version revision.+ versionRevisions :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The name of the domain that contains the repository that contains the+ -- package versions with a status to be updated.+ domain :: Prelude.Text,+ -- | The repository that contains the package versions with the status you+ -- want to update.+ repository :: Prelude.Text,+ -- | A format that specifies the type of the package with the statuses to+ -- update.+ format :: PackageFormat,+ -- | The name of the package with the version statuses to update.+ package :: Prelude.Text,+ -- | An array of strings that specify the versions of the package with the+ -- statuses to update.+ versions :: [Prelude.Text],+ -- | The status you want to change the package version status to.+ targetStatus :: PackageVersionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdatePackageVersionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainOwner', 'updatePackageVersionsStatus_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'expectedStatus', 'updatePackageVersionsStatus_expectedStatus' - The package version’s expected status before it is updated. If+-- @expectedStatus@ is provided, the package version\'s status is updated+-- only if its status at the time @UpdatePackageVersionsStatus@ is called+-- matches @expectedStatus@.+--+-- 'namespace', 'updatePackageVersionsStatus_namespace' - The namespace of the package version to be updated. The package version+-- component that specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+--+-- 'versionRevisions', 'updatePackageVersionsStatus_versionRevisions' - A map of package versions and package version revisions. The map @key@+-- is the package version (for example, @3.5.2@), and the map @value@ is+-- the package version revision.+--+-- 'domain', 'updatePackageVersionsStatus_domain' - The name of the domain that contains the repository that contains the+-- package versions with a status to be updated.+--+-- 'repository', 'updatePackageVersionsStatus_repository' - The repository that contains the package versions with the status you+-- want to update.+--+-- 'format', 'updatePackageVersionsStatus_format' - A format that specifies the type of the package with the statuses to+-- update.+--+-- 'package', 'updatePackageVersionsStatus_package' - The name of the package with the version statuses to update.+--+-- 'versions', 'updatePackageVersionsStatus_versions' - An array of strings that specify the versions of the package with the+-- statuses to update.+--+-- 'targetStatus', 'updatePackageVersionsStatus_targetStatus' - The status you want to change the package version status to.+newUpdatePackageVersionsStatus ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ -- | 'format'+ PackageFormat ->+ -- | 'package'+ Prelude.Text ->+ -- | 'targetStatus'+ PackageVersionStatus ->+ UpdatePackageVersionsStatus+newUpdatePackageVersionsStatus+ pDomain_+ pRepository_+ pFormat_+ pPackage_+ pTargetStatus_ =+ UpdatePackageVersionsStatus'+ { domainOwner =+ Prelude.Nothing,+ expectedStatus = Prelude.Nothing,+ namespace = Prelude.Nothing,+ versionRevisions = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_,+ format = pFormat_,+ package = pPackage_,+ versions = Prelude.mempty,+ targetStatus = pTargetStatus_+ }++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+updatePackageVersionsStatus_domainOwner :: Lens.Lens' UpdatePackageVersionsStatus (Prelude.Maybe Prelude.Text)+updatePackageVersionsStatus_domainOwner = Lens.lens (\UpdatePackageVersionsStatus' {domainOwner} -> domainOwner) (\s@UpdatePackageVersionsStatus' {} a -> s {domainOwner = a} :: UpdatePackageVersionsStatus)++-- | The package version’s expected status before it is updated. If+-- @expectedStatus@ is provided, the package version\'s status is updated+-- only if its status at the time @UpdatePackageVersionsStatus@ is called+-- matches @expectedStatus@.+updatePackageVersionsStatus_expectedStatus :: Lens.Lens' UpdatePackageVersionsStatus (Prelude.Maybe PackageVersionStatus)+updatePackageVersionsStatus_expectedStatus = Lens.lens (\UpdatePackageVersionsStatus' {expectedStatus} -> expectedStatus) (\s@UpdatePackageVersionsStatus' {} a -> s {expectedStatus = a} :: UpdatePackageVersionsStatus)++-- | The namespace of the package version to be updated. The package version+-- component that specifies its namespace depends on its type. For example:+--+-- - The namespace of a Maven package version is its @groupId@.+--+-- - The namespace of an npm package version is its @scope@.+--+-- - Python and NuGet package versions do not contain a corresponding+-- component, package versions of those formats do not have a+-- namespace.+updatePackageVersionsStatus_namespace :: Lens.Lens' UpdatePackageVersionsStatus (Prelude.Maybe Prelude.Text)+updatePackageVersionsStatus_namespace = Lens.lens (\UpdatePackageVersionsStatus' {namespace} -> namespace) (\s@UpdatePackageVersionsStatus' {} a -> s {namespace = a} :: UpdatePackageVersionsStatus)++-- | A map of package versions and package version revisions. The map @key@+-- is the package version (for example, @3.5.2@), and the map @value@ is+-- the package version revision.+updatePackageVersionsStatus_versionRevisions :: Lens.Lens' UpdatePackageVersionsStatus (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+updatePackageVersionsStatus_versionRevisions = Lens.lens (\UpdatePackageVersionsStatus' {versionRevisions} -> versionRevisions) (\s@UpdatePackageVersionsStatus' {} a -> s {versionRevisions = a} :: UpdatePackageVersionsStatus) Prelude.. Lens.mapping Lens.coerced++-- | The name of the domain that contains the repository that contains the+-- package versions with a status to be updated.+updatePackageVersionsStatus_domain :: Lens.Lens' UpdatePackageVersionsStatus Prelude.Text+updatePackageVersionsStatus_domain = Lens.lens (\UpdatePackageVersionsStatus' {domain} -> domain) (\s@UpdatePackageVersionsStatus' {} a -> s {domain = a} :: UpdatePackageVersionsStatus)++-- | The repository that contains the package versions with the status you+-- want to update.+updatePackageVersionsStatus_repository :: Lens.Lens' UpdatePackageVersionsStatus Prelude.Text+updatePackageVersionsStatus_repository = Lens.lens (\UpdatePackageVersionsStatus' {repository} -> repository) (\s@UpdatePackageVersionsStatus' {} a -> s {repository = a} :: UpdatePackageVersionsStatus)++-- | A format that specifies the type of the package with the statuses to+-- update.+updatePackageVersionsStatus_format :: Lens.Lens' UpdatePackageVersionsStatus PackageFormat+updatePackageVersionsStatus_format = Lens.lens (\UpdatePackageVersionsStatus' {format} -> format) (\s@UpdatePackageVersionsStatus' {} a -> s {format = a} :: UpdatePackageVersionsStatus)++-- | The name of the package with the version statuses to update.+updatePackageVersionsStatus_package :: Lens.Lens' UpdatePackageVersionsStatus Prelude.Text+updatePackageVersionsStatus_package = Lens.lens (\UpdatePackageVersionsStatus' {package} -> package) (\s@UpdatePackageVersionsStatus' {} a -> s {package = a} :: UpdatePackageVersionsStatus)++-- | An array of strings that specify the versions of the package with the+-- statuses to update.+updatePackageVersionsStatus_versions :: Lens.Lens' UpdatePackageVersionsStatus [Prelude.Text]+updatePackageVersionsStatus_versions = Lens.lens (\UpdatePackageVersionsStatus' {versions} -> versions) (\s@UpdatePackageVersionsStatus' {} a -> s {versions = a} :: UpdatePackageVersionsStatus) Prelude.. Lens.coerced++-- | The status you want to change the package version status to.+updatePackageVersionsStatus_targetStatus :: Lens.Lens' UpdatePackageVersionsStatus PackageVersionStatus+updatePackageVersionsStatus_targetStatus = Lens.lens (\UpdatePackageVersionsStatus' {targetStatus} -> targetStatus) (\s@UpdatePackageVersionsStatus' {} a -> s {targetStatus = a} :: UpdatePackageVersionsStatus)++instance Core.AWSRequest UpdatePackageVersionsStatus where+ type+ AWSResponse UpdatePackageVersionsStatus =+ UpdatePackageVersionsStatusResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdatePackageVersionsStatusResponse'+ Prelude.<$> (x Data..?> "failedVersions" Core..!@ Prelude.mempty)+ Prelude.<*> ( x+ Data..?> "successfulVersions"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdatePackageVersionsStatus where+ hashWithSalt _salt UpdatePackageVersionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` expectedStatus+ `Prelude.hashWithSalt` namespace+ `Prelude.hashWithSalt` versionRevisions+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository+ `Prelude.hashWithSalt` format+ `Prelude.hashWithSalt` package+ `Prelude.hashWithSalt` versions+ `Prelude.hashWithSalt` targetStatus++instance Prelude.NFData UpdatePackageVersionsStatus where+ rnf UpdatePackageVersionsStatus' {..} =+ Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf expectedStatus+ `Prelude.seq` Prelude.rnf namespace+ `Prelude.seq` Prelude.rnf versionRevisions+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository+ `Prelude.seq` Prelude.rnf format+ `Prelude.seq` Prelude.rnf package+ `Prelude.seq` Prelude.rnf versions+ `Prelude.seq` Prelude.rnf targetStatus++instance Data.ToHeaders UpdatePackageVersionsStatus where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdatePackageVersionsStatus where+ toJSON UpdatePackageVersionsStatus' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("expectedStatus" Data..=)+ Prelude.<$> expectedStatus,+ ("versionRevisions" Data..=)+ Prelude.<$> versionRevisions,+ Prelude.Just ("versions" Data..= versions),+ Prelude.Just ("targetStatus" Data..= targetStatus)+ ]+ )++instance Data.ToPath UpdatePackageVersionsStatus where+ toPath =+ Prelude.const "/v1/package/versions/update_status"++instance Data.ToQuery UpdatePackageVersionsStatus where+ toQuery UpdatePackageVersionsStatus' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "namespace" Data.=: namespace,+ "domain" Data.=: domain,+ "repository" Data.=: repository,+ "format" Data.=: format,+ "package" Data.=: package+ ]++-- | /See:/ 'newUpdatePackageVersionsStatusResponse' smart constructor.+data UpdatePackageVersionsStatusResponse = UpdatePackageVersionsStatusResponse'+ { -- | A list of @SuccessfulPackageVersionInfo@ objects, one for each package+ -- version with a status that successfully updated.+ failedVersions :: Prelude.Maybe (Prelude.HashMap Prelude.Text PackageVersionError),+ -- | A list of @PackageVersionError@ objects, one for each package version+ -- with a status that failed to update.+ successfulVersions :: Prelude.Maybe (Prelude.HashMap Prelude.Text SuccessfulPackageVersionInfo),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdatePackageVersionsStatusResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'failedVersions', 'updatePackageVersionsStatusResponse_failedVersions' - A list of @SuccessfulPackageVersionInfo@ objects, one for each package+-- version with a status that successfully updated.+--+-- 'successfulVersions', 'updatePackageVersionsStatusResponse_successfulVersions' - A list of @PackageVersionError@ objects, one for each package version+-- with a status that failed to update.+--+-- 'httpStatus', 'updatePackageVersionsStatusResponse_httpStatus' - The response's http status code.+newUpdatePackageVersionsStatusResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdatePackageVersionsStatusResponse+newUpdatePackageVersionsStatusResponse pHttpStatus_ =+ UpdatePackageVersionsStatusResponse'+ { failedVersions =+ Prelude.Nothing,+ successfulVersions = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of @SuccessfulPackageVersionInfo@ objects, one for each package+-- version with a status that successfully updated.+updatePackageVersionsStatusResponse_failedVersions :: Lens.Lens' UpdatePackageVersionsStatusResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text PackageVersionError))+updatePackageVersionsStatusResponse_failedVersions = Lens.lens (\UpdatePackageVersionsStatusResponse' {failedVersions} -> failedVersions) (\s@UpdatePackageVersionsStatusResponse' {} a -> s {failedVersions = a} :: UpdatePackageVersionsStatusResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of @PackageVersionError@ objects, one for each package version+-- with a status that failed to update.+updatePackageVersionsStatusResponse_successfulVersions :: Lens.Lens' UpdatePackageVersionsStatusResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text SuccessfulPackageVersionInfo))+updatePackageVersionsStatusResponse_successfulVersions = Lens.lens (\UpdatePackageVersionsStatusResponse' {successfulVersions} -> successfulVersions) (\s@UpdatePackageVersionsStatusResponse' {} a -> s {successfulVersions = a} :: UpdatePackageVersionsStatusResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+updatePackageVersionsStatusResponse_httpStatus :: Lens.Lens' UpdatePackageVersionsStatusResponse Prelude.Int+updatePackageVersionsStatusResponse_httpStatus = Lens.lens (\UpdatePackageVersionsStatusResponse' {httpStatus} -> httpStatus) (\s@UpdatePackageVersionsStatusResponse' {} a -> s {httpStatus = a} :: UpdatePackageVersionsStatusResponse)++instance+ Prelude.NFData+ UpdatePackageVersionsStatusResponse+ where+ rnf UpdatePackageVersionsStatusResponse' {..} =+ Prelude.rnf failedVersions+ `Prelude.seq` Prelude.rnf successfulVersions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/UpdateRepository.hs view
@@ -0,0 +1,240 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.UpdateRepository+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update the properties of a repository.+module Amazonka.CodeArtifact.UpdateRepository+ ( -- * Creating a Request+ UpdateRepository (..),+ newUpdateRepository,++ -- * Request Lenses+ updateRepository_description,+ updateRepository_domainOwner,+ updateRepository_upstreams,+ updateRepository_domain,+ updateRepository_repository,++ -- * Destructuring the Response+ UpdateRepositoryResponse (..),+ newUpdateRepositoryResponse,++ -- * Response Lenses+ updateRepositoryResponse_repository,+ updateRepositoryResponse_httpStatus,+ )+where++import Amazonka.CodeArtifact.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:/ 'newUpdateRepository' smart constructor.+data UpdateRepository = UpdateRepository'+ { -- | An updated repository description.+ description :: Prelude.Maybe Prelude.Text,+ -- | The 12-digit account number of the Amazon Web Services account that owns+ -- the domain. It does not include dashes or spaces.+ domainOwner :: Prelude.Maybe Prelude.Text,+ -- | A list of upstream repositories to associate with the repository. The+ -- order of the upstream repositories in the list determines their priority+ -- order when CodeArtifact looks for a requested package version. For more+ -- information, see+ -- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+ upstreams :: Prelude.Maybe [UpstreamRepository],+ -- | The name of the domain associated with the repository to update.+ domain :: Prelude.Text,+ -- | The name of the repository to update.+ repository :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRepository' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateRepository_description' - An updated repository description.+--+-- 'domainOwner', 'updateRepository_domainOwner' - The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+--+-- 'upstreams', 'updateRepository_upstreams' - A list of upstream repositories to associate with the repository. The+-- order of the upstream repositories in the list determines their priority+-- order when CodeArtifact looks for a requested package version. For more+-- information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+--+-- 'domain', 'updateRepository_domain' - The name of the domain associated with the repository to update.+--+-- 'repository', 'updateRepository_repository' - The name of the repository to update.+newUpdateRepository ::+ -- | 'domain'+ Prelude.Text ->+ -- | 'repository'+ Prelude.Text ->+ UpdateRepository+newUpdateRepository pDomain_ pRepository_ =+ UpdateRepository'+ { description = Prelude.Nothing,+ domainOwner = Prelude.Nothing,+ upstreams = Prelude.Nothing,+ domain = pDomain_,+ repository = pRepository_+ }++-- | An updated repository description.+updateRepository_description :: Lens.Lens' UpdateRepository (Prelude.Maybe Prelude.Text)+updateRepository_description = Lens.lens (\UpdateRepository' {description} -> description) (\s@UpdateRepository' {} a -> s {description = a} :: UpdateRepository)++-- | The 12-digit account number of the Amazon Web Services account that owns+-- the domain. It does not include dashes or spaces.+updateRepository_domainOwner :: Lens.Lens' UpdateRepository (Prelude.Maybe Prelude.Text)+updateRepository_domainOwner = Lens.lens (\UpdateRepository' {domainOwner} -> domainOwner) (\s@UpdateRepository' {} a -> s {domainOwner = a} :: UpdateRepository)++-- | A list of upstream repositories to associate with the repository. The+-- order of the upstream repositories in the list determines their priority+-- order when CodeArtifact looks for a requested package version. For more+-- information, see+-- <https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html Working with upstream repositories>.+updateRepository_upstreams :: Lens.Lens' UpdateRepository (Prelude.Maybe [UpstreamRepository])+updateRepository_upstreams = Lens.lens (\UpdateRepository' {upstreams} -> upstreams) (\s@UpdateRepository' {} a -> s {upstreams = a} :: UpdateRepository) Prelude.. Lens.mapping Lens.coerced++-- | The name of the domain associated with the repository to update.+updateRepository_domain :: Lens.Lens' UpdateRepository Prelude.Text+updateRepository_domain = Lens.lens (\UpdateRepository' {domain} -> domain) (\s@UpdateRepository' {} a -> s {domain = a} :: UpdateRepository)++-- | The name of the repository to update.+updateRepository_repository :: Lens.Lens' UpdateRepository Prelude.Text+updateRepository_repository = Lens.lens (\UpdateRepository' {repository} -> repository) (\s@UpdateRepository' {} a -> s {repository = a} :: UpdateRepository)++instance Core.AWSRequest UpdateRepository where+ type+ AWSResponse UpdateRepository =+ UpdateRepositoryResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateRepositoryResponse'+ Prelude.<$> (x Data..?> "repository")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateRepository where+ hashWithSalt _salt UpdateRepository' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` domainOwner+ `Prelude.hashWithSalt` upstreams+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` repository++instance Prelude.NFData UpdateRepository where+ rnf UpdateRepository' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf domainOwner+ `Prelude.seq` Prelude.rnf upstreams+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf repository++instance Data.ToHeaders UpdateRepository where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateRepository where+ toJSON UpdateRepository' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("upstreams" Data..=) Prelude.<$> upstreams+ ]+ )++instance Data.ToPath UpdateRepository where+ toPath = Prelude.const "/v1/repository"++instance Data.ToQuery UpdateRepository where+ toQuery UpdateRepository' {..} =+ Prelude.mconcat+ [ "domain-owner" Data.=: domainOwner,+ "domain" Data.=: domain,+ "repository" Data.=: repository+ ]++-- | /See:/ 'newUpdateRepositoryResponse' smart constructor.+data UpdateRepositoryResponse = UpdateRepositoryResponse'+ { -- | The updated repository.+ repository :: Prelude.Maybe RepositoryDescription,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRepositoryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'repository', 'updateRepositoryResponse_repository' - The updated repository.+--+-- 'httpStatus', 'updateRepositoryResponse_httpStatus' - The response's http status code.+newUpdateRepositoryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateRepositoryResponse+newUpdateRepositoryResponse pHttpStatus_ =+ UpdateRepositoryResponse'+ { repository =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The updated repository.+updateRepositoryResponse_repository :: Lens.Lens' UpdateRepositoryResponse (Prelude.Maybe RepositoryDescription)+updateRepositoryResponse_repository = Lens.lens (\UpdateRepositoryResponse' {repository} -> repository) (\s@UpdateRepositoryResponse' {} a -> s {repository = a} :: UpdateRepositoryResponse)++-- | The response's http status code.+updateRepositoryResponse_httpStatus :: Lens.Lens' UpdateRepositoryResponse Prelude.Int+updateRepositoryResponse_httpStatus = Lens.lens (\UpdateRepositoryResponse' {httpStatus} -> httpStatus) (\s@UpdateRepositoryResponse' {} a -> s {httpStatus = a} :: UpdateRepositoryResponse)++instance Prelude.NFData UpdateRepositoryResponse where+ rnf UpdateRepositoryResponse' {..} =+ Prelude.rnf repository+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/CodeArtifact/Waiters.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.CodeArtifact.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.CodeArtifact.Waiters where++import Amazonka.CodeArtifact.Lens+import Amazonka.CodeArtifact.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
+ 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.CodeArtifact+import Test.Amazonka.CodeArtifact.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "CodeArtifact"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/CodeArtifact.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.CodeArtifact+-- 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.CodeArtifact+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/CodeArtifact/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.CodeArtifact.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.CodeArtifact.Internal where
+ test/Test/Amazonka/Gen/CodeArtifact.hs view
@@ -0,0 +1,750 @@+{-# 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.CodeArtifact+-- 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.CodeArtifact where++import Amazonka.CodeArtifact+import qualified Data.Proxy as Proxy+import Test.Amazonka.CodeArtifact.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"+-- [ requestAssociateExternalConnection $+-- newAssociateExternalConnection+--+-- , requestCopyPackageVersions $+-- newCopyPackageVersions+--+-- , requestCreateDomain $+-- newCreateDomain+--+-- , requestCreateRepository $+-- newCreateRepository+--+-- , requestDeleteDomain $+-- newDeleteDomain+--+-- , requestDeleteDomainPermissionsPolicy $+-- newDeleteDomainPermissionsPolicy+--+-- , requestDeletePackageVersions $+-- newDeletePackageVersions+--+-- , requestDeleteRepository $+-- newDeleteRepository+--+-- , requestDeleteRepositoryPermissionsPolicy $+-- newDeleteRepositoryPermissionsPolicy+--+-- , requestDescribeDomain $+-- newDescribeDomain+--+-- , requestDescribePackage $+-- newDescribePackage+--+-- , requestDescribePackageVersion $+-- newDescribePackageVersion+--+-- , requestDescribeRepository $+-- newDescribeRepository+--+-- , requestDisassociateExternalConnection $+-- newDisassociateExternalConnection+--+-- , requestDisposePackageVersions $+-- newDisposePackageVersions+--+-- , requestGetAuthorizationToken $+-- newGetAuthorizationToken+--+-- , requestGetDomainPermissionsPolicy $+-- newGetDomainPermissionsPolicy+--+-- , requestGetPackageVersionAsset $+-- newGetPackageVersionAsset+--+-- , requestGetPackageVersionReadme $+-- newGetPackageVersionReadme+--+-- , requestGetRepositoryEndpoint $+-- newGetRepositoryEndpoint+--+-- , requestGetRepositoryPermissionsPolicy $+-- newGetRepositoryPermissionsPolicy+--+-- , requestListDomains $+-- newListDomains+--+-- , requestListPackageVersionAssets $+-- newListPackageVersionAssets+--+-- , requestListPackageVersionDependencies $+-- newListPackageVersionDependencies+--+-- , requestListPackageVersions $+-- newListPackageVersions+--+-- , requestListPackages $+-- newListPackages+--+-- , requestListRepositories $+-- newListRepositories+--+-- , requestListRepositoriesInDomain $+-- newListRepositoriesInDomain+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestPutDomainPermissionsPolicy $+-- newPutDomainPermissionsPolicy+--+-- , requestPutPackageOriginConfiguration $+-- newPutPackageOriginConfiguration+--+-- , requestPutRepositoryPermissionsPolicy $+-- newPutRepositoryPermissionsPolicy+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdatePackageVersionsStatus $+-- newUpdatePackageVersionsStatus+--+-- , requestUpdateRepository $+-- newUpdateRepository+--+-- ]++-- , testGroup "response"+-- [ responseAssociateExternalConnection $+-- newAssociateExternalConnectionResponse+--+-- , responseCopyPackageVersions $+-- newCopyPackageVersionsResponse+--+-- , responseCreateDomain $+-- newCreateDomainResponse+--+-- , responseCreateRepository $+-- newCreateRepositoryResponse+--+-- , responseDeleteDomain $+-- newDeleteDomainResponse+--+-- , responseDeleteDomainPermissionsPolicy $+-- newDeleteDomainPermissionsPolicyResponse+--+-- , responseDeletePackageVersions $+-- newDeletePackageVersionsResponse+--+-- , responseDeleteRepository $+-- newDeleteRepositoryResponse+--+-- , responseDeleteRepositoryPermissionsPolicy $+-- newDeleteRepositoryPermissionsPolicyResponse+--+-- , responseDescribeDomain $+-- newDescribeDomainResponse+--+-- , responseDescribePackage $+-- newDescribePackageResponse+--+-- , responseDescribePackageVersion $+-- newDescribePackageVersionResponse+--+-- , responseDescribeRepository $+-- newDescribeRepositoryResponse+--+-- , responseDisassociateExternalConnection $+-- newDisassociateExternalConnectionResponse+--+-- , responseDisposePackageVersions $+-- newDisposePackageVersionsResponse+--+-- , responseGetAuthorizationToken $+-- newGetAuthorizationTokenResponse+--+-- , responseGetDomainPermissionsPolicy $+-- newGetDomainPermissionsPolicyResponse+--+-- , responseGetPackageVersionAsset $+-- newGetPackageVersionAssetResponse+--+-- , responseGetPackageVersionReadme $+-- newGetPackageVersionReadmeResponse+--+-- , responseGetRepositoryEndpoint $+-- newGetRepositoryEndpointResponse+--+-- , responseGetRepositoryPermissionsPolicy $+-- newGetRepositoryPermissionsPolicyResponse+--+-- , responseListDomains $+-- newListDomainsResponse+--+-- , responseListPackageVersionAssets $+-- newListPackageVersionAssetsResponse+--+-- , responseListPackageVersionDependencies $+-- newListPackageVersionDependenciesResponse+--+-- , responseListPackageVersions $+-- newListPackageVersionsResponse+--+-- , responseListPackages $+-- newListPackagesResponse+--+-- , responseListRepositories $+-- newListRepositoriesResponse+--+-- , responseListRepositoriesInDomain $+-- newListRepositoriesInDomainResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responsePutDomainPermissionsPolicy $+-- newPutDomainPermissionsPolicyResponse+--+-- , responsePutPackageOriginConfiguration $+-- newPutPackageOriginConfigurationResponse+--+-- , responsePutRepositoryPermissionsPolicy $+-- newPutRepositoryPermissionsPolicyResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdatePackageVersionsStatus $+-- newUpdatePackageVersionsStatusResponse+--+-- , responseUpdateRepository $+-- newUpdateRepositoryResponse+--+-- ]+-- ]++-- Requests++requestAssociateExternalConnection :: AssociateExternalConnection -> TestTree+requestAssociateExternalConnection =+ req+ "AssociateExternalConnection"+ "fixture/AssociateExternalConnection.yaml"++requestCopyPackageVersions :: CopyPackageVersions -> TestTree+requestCopyPackageVersions =+ req+ "CopyPackageVersions"+ "fixture/CopyPackageVersions.yaml"++requestCreateDomain :: CreateDomain -> TestTree+requestCreateDomain =+ req+ "CreateDomain"+ "fixture/CreateDomain.yaml"++requestCreateRepository :: CreateRepository -> TestTree+requestCreateRepository =+ req+ "CreateRepository"+ "fixture/CreateRepository.yaml"++requestDeleteDomain :: DeleteDomain -> TestTree+requestDeleteDomain =+ req+ "DeleteDomain"+ "fixture/DeleteDomain.yaml"++requestDeleteDomainPermissionsPolicy :: DeleteDomainPermissionsPolicy -> TestTree+requestDeleteDomainPermissionsPolicy =+ req+ "DeleteDomainPermissionsPolicy"+ "fixture/DeleteDomainPermissionsPolicy.yaml"++requestDeletePackageVersions :: DeletePackageVersions -> TestTree+requestDeletePackageVersions =+ req+ "DeletePackageVersions"+ "fixture/DeletePackageVersions.yaml"++requestDeleteRepository :: DeleteRepository -> TestTree+requestDeleteRepository =+ req+ "DeleteRepository"+ "fixture/DeleteRepository.yaml"++requestDeleteRepositoryPermissionsPolicy :: DeleteRepositoryPermissionsPolicy -> TestTree+requestDeleteRepositoryPermissionsPolicy =+ req+ "DeleteRepositoryPermissionsPolicy"+ "fixture/DeleteRepositoryPermissionsPolicy.yaml"++requestDescribeDomain :: DescribeDomain -> TestTree+requestDescribeDomain =+ req+ "DescribeDomain"+ "fixture/DescribeDomain.yaml"++requestDescribePackage :: DescribePackage -> TestTree+requestDescribePackage =+ req+ "DescribePackage"+ "fixture/DescribePackage.yaml"++requestDescribePackageVersion :: DescribePackageVersion -> TestTree+requestDescribePackageVersion =+ req+ "DescribePackageVersion"+ "fixture/DescribePackageVersion.yaml"++requestDescribeRepository :: DescribeRepository -> TestTree+requestDescribeRepository =+ req+ "DescribeRepository"+ "fixture/DescribeRepository.yaml"++requestDisassociateExternalConnection :: DisassociateExternalConnection -> TestTree+requestDisassociateExternalConnection =+ req+ "DisassociateExternalConnection"+ "fixture/DisassociateExternalConnection.yaml"++requestDisposePackageVersions :: DisposePackageVersions -> TestTree+requestDisposePackageVersions =+ req+ "DisposePackageVersions"+ "fixture/DisposePackageVersions.yaml"++requestGetAuthorizationToken :: GetAuthorizationToken -> TestTree+requestGetAuthorizationToken =+ req+ "GetAuthorizationToken"+ "fixture/GetAuthorizationToken.yaml"++requestGetDomainPermissionsPolicy :: GetDomainPermissionsPolicy -> TestTree+requestGetDomainPermissionsPolicy =+ req+ "GetDomainPermissionsPolicy"+ "fixture/GetDomainPermissionsPolicy.yaml"++requestGetPackageVersionAsset :: GetPackageVersionAsset -> TestTree+requestGetPackageVersionAsset =+ req+ "GetPackageVersionAsset"+ "fixture/GetPackageVersionAsset.yaml"++requestGetPackageVersionReadme :: GetPackageVersionReadme -> TestTree+requestGetPackageVersionReadme =+ req+ "GetPackageVersionReadme"+ "fixture/GetPackageVersionReadme.yaml"++requestGetRepositoryEndpoint :: GetRepositoryEndpoint -> TestTree+requestGetRepositoryEndpoint =+ req+ "GetRepositoryEndpoint"+ "fixture/GetRepositoryEndpoint.yaml"++requestGetRepositoryPermissionsPolicy :: GetRepositoryPermissionsPolicy -> TestTree+requestGetRepositoryPermissionsPolicy =+ req+ "GetRepositoryPermissionsPolicy"+ "fixture/GetRepositoryPermissionsPolicy.yaml"++requestListDomains :: ListDomains -> TestTree+requestListDomains =+ req+ "ListDomains"+ "fixture/ListDomains.yaml"++requestListPackageVersionAssets :: ListPackageVersionAssets -> TestTree+requestListPackageVersionAssets =+ req+ "ListPackageVersionAssets"+ "fixture/ListPackageVersionAssets.yaml"++requestListPackageVersionDependencies :: ListPackageVersionDependencies -> TestTree+requestListPackageVersionDependencies =+ req+ "ListPackageVersionDependencies"+ "fixture/ListPackageVersionDependencies.yaml"++requestListPackageVersions :: ListPackageVersions -> TestTree+requestListPackageVersions =+ req+ "ListPackageVersions"+ "fixture/ListPackageVersions.yaml"++requestListPackages :: ListPackages -> TestTree+requestListPackages =+ req+ "ListPackages"+ "fixture/ListPackages.yaml"++requestListRepositories :: ListRepositories -> TestTree+requestListRepositories =+ req+ "ListRepositories"+ "fixture/ListRepositories.yaml"++requestListRepositoriesInDomain :: ListRepositoriesInDomain -> TestTree+requestListRepositoriesInDomain =+ req+ "ListRepositoriesInDomain"+ "fixture/ListRepositoriesInDomain.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestPutDomainPermissionsPolicy :: PutDomainPermissionsPolicy -> TestTree+requestPutDomainPermissionsPolicy =+ req+ "PutDomainPermissionsPolicy"+ "fixture/PutDomainPermissionsPolicy.yaml"++requestPutPackageOriginConfiguration :: PutPackageOriginConfiguration -> TestTree+requestPutPackageOriginConfiguration =+ req+ "PutPackageOriginConfiguration"+ "fixture/PutPackageOriginConfiguration.yaml"++requestPutRepositoryPermissionsPolicy :: PutRepositoryPermissionsPolicy -> TestTree+requestPutRepositoryPermissionsPolicy =+ req+ "PutRepositoryPermissionsPolicy"+ "fixture/PutRepositoryPermissionsPolicy.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdatePackageVersionsStatus :: UpdatePackageVersionsStatus -> TestTree+requestUpdatePackageVersionsStatus =+ req+ "UpdatePackageVersionsStatus"+ "fixture/UpdatePackageVersionsStatus.yaml"++requestUpdateRepository :: UpdateRepository -> TestTree+requestUpdateRepository =+ req+ "UpdateRepository"+ "fixture/UpdateRepository.yaml"++-- Responses++responseAssociateExternalConnection :: AssociateExternalConnectionResponse -> TestTree+responseAssociateExternalConnection =+ res+ "AssociateExternalConnectionResponse"+ "fixture/AssociateExternalConnectionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AssociateExternalConnection)++responseCopyPackageVersions :: CopyPackageVersionsResponse -> TestTree+responseCopyPackageVersions =+ res+ "CopyPackageVersionsResponse"+ "fixture/CopyPackageVersionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CopyPackageVersions)++responseCreateDomain :: CreateDomainResponse -> TestTree+responseCreateDomain =+ res+ "CreateDomainResponse"+ "fixture/CreateDomainResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateDomain)++responseCreateRepository :: CreateRepositoryResponse -> TestTree+responseCreateRepository =+ res+ "CreateRepositoryResponse"+ "fixture/CreateRepositoryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateRepository)++responseDeleteDomain :: DeleteDomainResponse -> TestTree+responseDeleteDomain =+ res+ "DeleteDomainResponse"+ "fixture/DeleteDomainResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteDomain)++responseDeleteDomainPermissionsPolicy :: DeleteDomainPermissionsPolicyResponse -> TestTree+responseDeleteDomainPermissionsPolicy =+ res+ "DeleteDomainPermissionsPolicyResponse"+ "fixture/DeleteDomainPermissionsPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteDomainPermissionsPolicy)++responseDeletePackageVersions :: DeletePackageVersionsResponse -> TestTree+responseDeletePackageVersions =+ res+ "DeletePackageVersionsResponse"+ "fixture/DeletePackageVersionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeletePackageVersions)++responseDeleteRepository :: DeleteRepositoryResponse -> TestTree+responseDeleteRepository =+ res+ "DeleteRepositoryResponse"+ "fixture/DeleteRepositoryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteRepository)++responseDeleteRepositoryPermissionsPolicy :: DeleteRepositoryPermissionsPolicyResponse -> TestTree+responseDeleteRepositoryPermissionsPolicy =+ res+ "DeleteRepositoryPermissionsPolicyResponse"+ "fixture/DeleteRepositoryPermissionsPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteRepositoryPermissionsPolicy)++responseDescribeDomain :: DescribeDomainResponse -> TestTree+responseDescribeDomain =+ res+ "DescribeDomainResponse"+ "fixture/DescribeDomainResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDomain)++responseDescribePackage :: DescribePackageResponse -> TestTree+responseDescribePackage =+ res+ "DescribePackageResponse"+ "fixture/DescribePackageResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribePackage)++responseDescribePackageVersion :: DescribePackageVersionResponse -> TestTree+responseDescribePackageVersion =+ res+ "DescribePackageVersionResponse"+ "fixture/DescribePackageVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribePackageVersion)++responseDescribeRepository :: DescribeRepositoryResponse -> TestTree+responseDescribeRepository =+ res+ "DescribeRepositoryResponse"+ "fixture/DescribeRepositoryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeRepository)++responseDisassociateExternalConnection :: DisassociateExternalConnectionResponse -> TestTree+responseDisassociateExternalConnection =+ res+ "DisassociateExternalConnectionResponse"+ "fixture/DisassociateExternalConnectionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DisassociateExternalConnection)++responseDisposePackageVersions :: DisposePackageVersionsResponse -> TestTree+responseDisposePackageVersions =+ res+ "DisposePackageVersionsResponse"+ "fixture/DisposePackageVersionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DisposePackageVersions)++responseGetAuthorizationToken :: GetAuthorizationTokenResponse -> TestTree+responseGetAuthorizationToken =+ res+ "GetAuthorizationTokenResponse"+ "fixture/GetAuthorizationTokenResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetAuthorizationToken)++responseGetDomainPermissionsPolicy :: GetDomainPermissionsPolicyResponse -> TestTree+responseGetDomainPermissionsPolicy =+ res+ "GetDomainPermissionsPolicyResponse"+ "fixture/GetDomainPermissionsPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetDomainPermissionsPolicy)++responseGetPackageVersionReadme :: GetPackageVersionReadmeResponse -> TestTree+responseGetPackageVersionReadme =+ res+ "GetPackageVersionReadmeResponse"+ "fixture/GetPackageVersionReadmeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetPackageVersionReadme)++responseGetRepositoryEndpoint :: GetRepositoryEndpointResponse -> TestTree+responseGetRepositoryEndpoint =+ res+ "GetRepositoryEndpointResponse"+ "fixture/GetRepositoryEndpointResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetRepositoryEndpoint)++responseGetRepositoryPermissionsPolicy :: GetRepositoryPermissionsPolicyResponse -> TestTree+responseGetRepositoryPermissionsPolicy =+ res+ "GetRepositoryPermissionsPolicyResponse"+ "fixture/GetRepositoryPermissionsPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetRepositoryPermissionsPolicy)++responseListDomains :: ListDomainsResponse -> TestTree+responseListDomains =+ res+ "ListDomainsResponse"+ "fixture/ListDomainsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListDomains)++responseListPackageVersionAssets :: ListPackageVersionAssetsResponse -> TestTree+responseListPackageVersionAssets =+ res+ "ListPackageVersionAssetsResponse"+ "fixture/ListPackageVersionAssetsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPackageVersionAssets)++responseListPackageVersionDependencies :: ListPackageVersionDependenciesResponse -> TestTree+responseListPackageVersionDependencies =+ res+ "ListPackageVersionDependenciesResponse"+ "fixture/ListPackageVersionDependenciesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPackageVersionDependencies)++responseListPackageVersions :: ListPackageVersionsResponse -> TestTree+responseListPackageVersions =+ res+ "ListPackageVersionsResponse"+ "fixture/ListPackageVersionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPackageVersions)++responseListPackages :: ListPackagesResponse -> TestTree+responseListPackages =+ res+ "ListPackagesResponse"+ "fixture/ListPackagesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPackages)++responseListRepositories :: ListRepositoriesResponse -> TestTree+responseListRepositories =+ res+ "ListRepositoriesResponse"+ "fixture/ListRepositoriesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRepositories)++responseListRepositoriesInDomain :: ListRepositoriesInDomainResponse -> TestTree+responseListRepositoriesInDomain =+ res+ "ListRepositoriesInDomainResponse"+ "fixture/ListRepositoriesInDomainResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRepositoriesInDomain)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responsePutDomainPermissionsPolicy :: PutDomainPermissionsPolicyResponse -> TestTree+responsePutDomainPermissionsPolicy =+ res+ "PutDomainPermissionsPolicyResponse"+ "fixture/PutDomainPermissionsPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutDomainPermissionsPolicy)++responsePutPackageOriginConfiguration :: PutPackageOriginConfigurationResponse -> TestTree+responsePutPackageOriginConfiguration =+ res+ "PutPackageOriginConfigurationResponse"+ "fixture/PutPackageOriginConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutPackageOriginConfiguration)++responsePutRepositoryPermissionsPolicy :: PutRepositoryPermissionsPolicyResponse -> TestTree+responsePutRepositoryPermissionsPolicy =+ res+ "PutRepositoryPermissionsPolicyResponse"+ "fixture/PutRepositoryPermissionsPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutRepositoryPermissionsPolicy)++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)++responseUpdatePackageVersionsStatus :: UpdatePackageVersionsStatusResponse -> TestTree+responseUpdatePackageVersionsStatus =+ res+ "UpdatePackageVersionsStatusResponse"+ "fixture/UpdatePackageVersionsStatusResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdatePackageVersionsStatus)++responseUpdateRepository :: UpdateRepositoryResponse -> TestTree+responseUpdateRepository =+ res+ "UpdateRepositoryResponse"+ "fixture/UpdateRepositoryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateRepository)