amazonka-dataexchange (empty) → 2.0
raw patch · 167 files changed
+18671/−0 lines, 167 filesdep +amazonka-coredep +amazonka-dataexchangedep +amazonka-test
Dependencies added: amazonka-core, amazonka-dataexchange, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-dataexchange.cabal +180/−0
- fixture/CancelJob.yaml +10/−0
- fixture/CancelJobResponse.proto +0/−0
- fixture/CreateDataSet.yaml +10/−0
- fixture/CreateDataSetResponse.proto +0/−0
- fixture/CreateEventAction.yaml +10/−0
- fixture/CreateEventActionResponse.proto +0/−0
- fixture/CreateJob.yaml +10/−0
- fixture/CreateJobResponse.proto +0/−0
- fixture/CreateRevision.yaml +10/−0
- fixture/CreateRevisionResponse.proto +0/−0
- fixture/DeleteAsset.yaml +10/−0
- fixture/DeleteAssetResponse.proto +0/−0
- fixture/DeleteDataSet.yaml +10/−0
- fixture/DeleteDataSetResponse.proto +0/−0
- fixture/DeleteEventAction.yaml +10/−0
- fixture/DeleteEventActionResponse.proto +0/−0
- fixture/DeleteRevision.yaml +10/−0
- fixture/DeleteRevisionResponse.proto +0/−0
- fixture/GetAsset.yaml +10/−0
- fixture/GetAssetResponse.proto +0/−0
- fixture/GetDataSet.yaml +10/−0
- fixture/GetDataSetResponse.proto +0/−0
- fixture/GetEventAction.yaml +10/−0
- fixture/GetEventActionResponse.proto +0/−0
- fixture/GetJob.yaml +10/−0
- fixture/GetJobResponse.proto +0/−0
- fixture/GetRevision.yaml +10/−0
- fixture/GetRevisionResponse.proto +0/−0
- fixture/ListDataSetRevisions.yaml +10/−0
- fixture/ListDataSetRevisionsResponse.proto +0/−0
- fixture/ListDataSets.yaml +10/−0
- fixture/ListDataSetsResponse.proto +0/−0
- fixture/ListEventActions.yaml +10/−0
- fixture/ListEventActionsResponse.proto +0/−0
- fixture/ListJobs.yaml +10/−0
- fixture/ListJobsResponse.proto +0/−0
- fixture/ListRevisionAssets.yaml +10/−0
- fixture/ListRevisionAssetsResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/RevokeRevision.yaml +10/−0
- fixture/RevokeRevisionResponse.proto +0/−0
- fixture/SendApiAsset.yaml +10/−0
- fixture/SendApiAssetResponse.proto +0/−0
- fixture/StartJob.yaml +10/−0
- fixture/StartJobResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateAsset.yaml +10/−0
- fixture/UpdateAssetResponse.proto +0/−0
- fixture/UpdateDataSet.yaml +10/−0
- fixture/UpdateDataSetResponse.proto +0/−0
- fixture/UpdateEventAction.yaml +10/−0
- fixture/UpdateEventActionResponse.proto +0/−0
- fixture/UpdateRevision.yaml +10/−0
- fixture/UpdateRevisionResponse.proto +0/−0
- gen/Amazonka/DataExchange.hs +566/−0
- gen/Amazonka/DataExchange/CancelJob.hs +119/−0
- gen/Amazonka/DataExchange/CreateDataSet.hs +361/−0
- gen/Amazonka/DataExchange/CreateEventAction.hs +246/−0
- gen/Amazonka/DataExchange/CreateJob.hs +261/−0
- gen/Amazonka/DataExchange/CreateRevision.hs +378/−0
- gen/Amazonka/DataExchange/DeleteAsset.hs +158/−0
- gen/Amazonka/DataExchange/DeleteDataSet.hs +123/−0
- gen/Amazonka/DataExchange/DeleteEventAction.hs +125/−0
- gen/Amazonka/DataExchange/DeleteRevision.hs +145/−0
- gen/Amazonka/DataExchange/GetAsset.hs +329/−0
- gen/Amazonka/DataExchange/GetDataSet.hs +291/−0
- gen/Amazonka/DataExchange/GetEventAction.hs +221/−0
- gen/Amazonka/DataExchange/GetJob.hs +238/−0
- gen/Amazonka/DataExchange/GetRevision.hs +349/−0
- gen/Amazonka/DataExchange/Lens.hs +727/−0
- gen/Amazonka/DataExchange/ListDataSetRevisions.hs +234/−0
- gen/Amazonka/DataExchange/ListDataSets.hs +233/−0
- gen/Amazonka/DataExchange/ListEventActions.hs +230/−0
- gen/Amazonka/DataExchange/ListJobs.hs +240/−0
- gen/Amazonka/DataExchange/ListRevisionAssets.hs +253/−0
- gen/Amazonka/DataExchange/ListTagsForResource.hs +159/−0
- gen/Amazonka/DataExchange/RevokeRevision.hs +369/−0
- gen/Amazonka/DataExchange/SendApiAsset.hs +289/−0
- gen/Amazonka/DataExchange/StartJob.hs +142/−0
- gen/Amazonka/DataExchange/TagResource.hs +142/−0
- gen/Amazonka/DataExchange/Types.hs +704/−0
- gen/Amazonka/DataExchange/Types/Action.hs +78/−0
- gen/Amazonka/DataExchange/Types/ApiGatewayApiAsset.hs +171/−0
- gen/Amazonka/DataExchange/Types/AssetDestinationEntry.hs +110/−0
- gen/Amazonka/DataExchange/Types/AssetDetails.hs +125/−0
- gen/Amazonka/DataExchange/Types/AssetEntry.hs +245/−0
- gen/Amazonka/DataExchange/Types/AssetSourceEntry.hs +93/−0
- gen/Amazonka/DataExchange/Types/AssetType.hs +86/−0
- gen/Amazonka/DataExchange/Types/AutoExportRevisionDestinationEntry.hs +117/−0
- gen/Amazonka/DataExchange/Types/AutoExportRevisionToS3RequestDetails.hs +118/−0
- gen/Amazonka/DataExchange/Types/Code.hs +93/−0
- gen/Amazonka/DataExchange/Types/CreateS3DataAccessFromS3BucketRequestDetails.hs +122/−0
- gen/Amazonka/DataExchange/Types/CreateS3DataAccessFromS3BucketResponseDetails.hs +120/−0
- gen/Amazonka/DataExchange/Types/DataSetEntry.hs +222/−0
- gen/Amazonka/DataExchange/Types/DatabaseLFTagPolicy.hs +69/−0
- gen/Amazonka/DataExchange/Types/DatabaseLFTagPolicyAndPermissions.hs +110/−0
- gen/Amazonka/DataExchange/Types/DatabaseLFTagPolicyPermission.hs +66/−0
- gen/Amazonka/DataExchange/Types/Details.hs +92/−0
- gen/Amazonka/DataExchange/Types/Event.hs +77/−0
- gen/Amazonka/DataExchange/Types/EventActionEntry.hs +157/−0
- gen/Amazonka/DataExchange/Types/ExportAssetToSignedUrlRequestDetails.hs +119/−0
- gen/Amazonka/DataExchange/Types/ExportAssetToSignedUrlResponseDetails.hs +144/−0
- gen/Amazonka/DataExchange/Types/ExportAssetsToS3RequestDetails.hs +128/−0
- gen/Amazonka/DataExchange/Types/ExportAssetsToS3ResponseDetails.hs +134/−0
- gen/Amazonka/DataExchange/Types/ExportRevisionsToS3RequestDetails.hs +114/−0
- gen/Amazonka/DataExchange/Types/ExportRevisionsToS3ResponseDetails.hs +127/−0
- gen/Amazonka/DataExchange/Types/ExportServerSideEncryption.hs +108/−0
- gen/Amazonka/DataExchange/Types/ImportAssetFromApiGatewayApiRequestDetails.hs +210/−0
- gen/Amazonka/DataExchange/Types/ImportAssetFromApiGatewayApiResponseDetails.hs +239/−0
- gen/Amazonka/DataExchange/Types/ImportAssetFromSignedUrlJobErrorDetails.hs +86/−0
- gen/Amazonka/DataExchange/Types/ImportAssetFromSignedUrlRequestDetails.hs +140/−0
- gen/Amazonka/DataExchange/Types/ImportAssetFromSignedUrlResponseDetails.hs +161/−0
- gen/Amazonka/DataExchange/Types/ImportAssetsFromLakeFormationTagPolicyRequestDetails.hs +170/−0
- gen/Amazonka/DataExchange/Types/ImportAssetsFromLakeFormationTagPolicyResponseDetails.hs +166/−0
- gen/Amazonka/DataExchange/Types/ImportAssetsFromRedshiftDataSharesRequestDetails.hs +116/−0
- gen/Amazonka/DataExchange/Types/ImportAssetsFromRedshiftDataSharesResponseDetails.hs +117/−0
- gen/Amazonka/DataExchange/Types/ImportAssetsFromS3RequestDetails.hs +114/−0
- gen/Amazonka/DataExchange/Types/ImportAssetsFromS3ResponseDetails.hs +118/−0
- gen/Amazonka/DataExchange/Types/JobEntry.hs +187/−0
- gen/Amazonka/DataExchange/Types/JobError.hs +152/−0
- gen/Amazonka/DataExchange/Types/JobErrorLimitName.hs +86/−0
- gen/Amazonka/DataExchange/Types/JobErrorResourceTypes.hs +76/−0
- gen/Amazonka/DataExchange/Types/LFPermission.hs +71/−0
- gen/Amazonka/DataExchange/Types/LFResourceDetails.hs +93/−0
- gen/Amazonka/DataExchange/Types/LFResourceType.hs +71/−0
- gen/Amazonka/DataExchange/Types/LFTag.hs +96/−0
- gen/Amazonka/DataExchange/Types/LFTagPolicyDetails.hs +107/−0
- gen/Amazonka/DataExchange/Types/LakeFormationDataPermissionAsset.hs +134/−0
- gen/Amazonka/DataExchange/Types/LakeFormationDataPermissionDetails.hs +84/−0
- gen/Amazonka/DataExchange/Types/LakeFormationDataPermissionType.hs +66/−0
- gen/Amazonka/DataExchange/Types/Origin.hs +68/−0
- gen/Amazonka/DataExchange/Types/OriginDetails.hs +69/−0
- gen/Amazonka/DataExchange/Types/ProtocolType.hs +66/−0
- gen/Amazonka/DataExchange/Types/RedshiftDataShareAsset.hs +70/−0
- gen/Amazonka/DataExchange/Types/RedshiftDataShareAssetSourceEntry.hs +95/−0
- gen/Amazonka/DataExchange/Types/RequestDetails.hs +190/−0
- gen/Amazonka/DataExchange/Types/ResponseDetails.hs +179/−0
- gen/Amazonka/DataExchange/Types/RevisionDestinationEntry.hs +120/−0
- gen/Amazonka/DataExchange/Types/RevisionEntry.hs +246/−0
- gen/Amazonka/DataExchange/Types/RevisionPublished.hs +77/−0
- gen/Amazonka/DataExchange/Types/S3DataAccessAsset.hs +134/−0
- gen/Amazonka/DataExchange/Types/S3DataAccessAssetSourceEntry.hs +115/−0
- gen/Amazonka/DataExchange/Types/S3SnapshotAsset.hs +69/−0
- gen/Amazonka/DataExchange/Types/ServerSideEncryptionTypes.hs +71/−0
- gen/Amazonka/DataExchange/Types/State.hs +88/−0
- gen/Amazonka/DataExchange/Types/TableLFTagPolicy.hs +69/−0
- gen/Amazonka/DataExchange/Types/TableLFTagPolicyAndPermissions.hs +104/−0
- gen/Amazonka/DataExchange/Types/TableTagPolicyLFPermission.hs +71/−0
- gen/Amazonka/DataExchange/Types/Type.hs +103/−0
- gen/Amazonka/DataExchange/UntagResource.hs +140/−0
- gen/Amazonka/DataExchange/UpdateAsset.hs +375/−0
- gen/Amazonka/DataExchange/UpdateDataSet.hs +318/−0
- gen/Amazonka/DataExchange/UpdateEventAction.hs +245/−0
- gen/Amazonka/DataExchange/UpdateRevision.hs +378/−0
- gen/Amazonka/DataExchange/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/DataExchange.hs +20/−0
- test/Test/Amazonka/DataExchange/Internal.hs +8/−0
- test/Test/Amazonka/Gen/DataExchange.hs +618/−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 Data Exchange SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2017-07-25@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-dataexchange)+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.DataExchange](http://hackage.haskell.org/package/amazonka-dataexchange/docs/Amazonka-DataExchange.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-dataexchange` 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-dataexchange.cabal view
@@ -0,0 +1,180 @@+cabal-version: 2.2+name: amazonka-dataexchange+version: 2.0+synopsis: Amazon Data Exchange 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 @2017-07-25@ 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.DataExchange.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.DataExchange" 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-dataexchange++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.DataExchange+ Amazonka.DataExchange.CancelJob+ Amazonka.DataExchange.CreateDataSet+ Amazonka.DataExchange.CreateEventAction+ Amazonka.DataExchange.CreateJob+ Amazonka.DataExchange.CreateRevision+ Amazonka.DataExchange.DeleteAsset+ Amazonka.DataExchange.DeleteDataSet+ Amazonka.DataExchange.DeleteEventAction+ Amazonka.DataExchange.DeleteRevision+ Amazonka.DataExchange.GetAsset+ Amazonka.DataExchange.GetDataSet+ Amazonka.DataExchange.GetEventAction+ Amazonka.DataExchange.GetJob+ Amazonka.DataExchange.GetRevision+ Amazonka.DataExchange.Lens+ Amazonka.DataExchange.ListDataSetRevisions+ Amazonka.DataExchange.ListDataSets+ Amazonka.DataExchange.ListEventActions+ Amazonka.DataExchange.ListJobs+ Amazonka.DataExchange.ListRevisionAssets+ Amazonka.DataExchange.ListTagsForResource+ Amazonka.DataExchange.RevokeRevision+ Amazonka.DataExchange.SendApiAsset+ Amazonka.DataExchange.StartJob+ Amazonka.DataExchange.TagResource+ Amazonka.DataExchange.Types+ Amazonka.DataExchange.Types.Action+ Amazonka.DataExchange.Types.ApiGatewayApiAsset+ Amazonka.DataExchange.Types.AssetDestinationEntry+ Amazonka.DataExchange.Types.AssetDetails+ Amazonka.DataExchange.Types.AssetEntry+ Amazonka.DataExchange.Types.AssetSourceEntry+ Amazonka.DataExchange.Types.AssetType+ Amazonka.DataExchange.Types.AutoExportRevisionDestinationEntry+ Amazonka.DataExchange.Types.AutoExportRevisionToS3RequestDetails+ Amazonka.DataExchange.Types.Code+ Amazonka.DataExchange.Types.CreateS3DataAccessFromS3BucketRequestDetails+ Amazonka.DataExchange.Types.CreateS3DataAccessFromS3BucketResponseDetails+ Amazonka.DataExchange.Types.DatabaseLFTagPolicy+ Amazonka.DataExchange.Types.DatabaseLFTagPolicyAndPermissions+ Amazonka.DataExchange.Types.DatabaseLFTagPolicyPermission+ Amazonka.DataExchange.Types.DataSetEntry+ Amazonka.DataExchange.Types.Details+ Amazonka.DataExchange.Types.Event+ Amazonka.DataExchange.Types.EventActionEntry+ Amazonka.DataExchange.Types.ExportAssetsToS3RequestDetails+ Amazonka.DataExchange.Types.ExportAssetsToS3ResponseDetails+ Amazonka.DataExchange.Types.ExportAssetToSignedUrlRequestDetails+ Amazonka.DataExchange.Types.ExportAssetToSignedUrlResponseDetails+ Amazonka.DataExchange.Types.ExportRevisionsToS3RequestDetails+ Amazonka.DataExchange.Types.ExportRevisionsToS3ResponseDetails+ Amazonka.DataExchange.Types.ExportServerSideEncryption+ Amazonka.DataExchange.Types.ImportAssetFromApiGatewayApiRequestDetails+ Amazonka.DataExchange.Types.ImportAssetFromApiGatewayApiResponseDetails+ Amazonka.DataExchange.Types.ImportAssetFromSignedUrlJobErrorDetails+ Amazonka.DataExchange.Types.ImportAssetFromSignedUrlRequestDetails+ Amazonka.DataExchange.Types.ImportAssetFromSignedUrlResponseDetails+ Amazonka.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyRequestDetails+ Amazonka.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyResponseDetails+ Amazonka.DataExchange.Types.ImportAssetsFromRedshiftDataSharesRequestDetails+ Amazonka.DataExchange.Types.ImportAssetsFromRedshiftDataSharesResponseDetails+ Amazonka.DataExchange.Types.ImportAssetsFromS3RequestDetails+ Amazonka.DataExchange.Types.ImportAssetsFromS3ResponseDetails+ Amazonka.DataExchange.Types.JobEntry+ Amazonka.DataExchange.Types.JobError+ Amazonka.DataExchange.Types.JobErrorLimitName+ Amazonka.DataExchange.Types.JobErrorResourceTypes+ Amazonka.DataExchange.Types.LakeFormationDataPermissionAsset+ Amazonka.DataExchange.Types.LakeFormationDataPermissionDetails+ Amazonka.DataExchange.Types.LakeFormationDataPermissionType+ Amazonka.DataExchange.Types.LFPermission+ Amazonka.DataExchange.Types.LFResourceDetails+ Amazonka.DataExchange.Types.LFResourceType+ Amazonka.DataExchange.Types.LFTag+ Amazonka.DataExchange.Types.LFTagPolicyDetails+ Amazonka.DataExchange.Types.Origin+ Amazonka.DataExchange.Types.OriginDetails+ Amazonka.DataExchange.Types.ProtocolType+ Amazonka.DataExchange.Types.RedshiftDataShareAsset+ Amazonka.DataExchange.Types.RedshiftDataShareAssetSourceEntry+ Amazonka.DataExchange.Types.RequestDetails+ Amazonka.DataExchange.Types.ResponseDetails+ Amazonka.DataExchange.Types.RevisionDestinationEntry+ Amazonka.DataExchange.Types.RevisionEntry+ Amazonka.DataExchange.Types.RevisionPublished+ Amazonka.DataExchange.Types.S3DataAccessAsset+ Amazonka.DataExchange.Types.S3DataAccessAssetSourceEntry+ Amazonka.DataExchange.Types.S3SnapshotAsset+ Amazonka.DataExchange.Types.ServerSideEncryptionTypes+ Amazonka.DataExchange.Types.State+ Amazonka.DataExchange.Types.TableLFTagPolicy+ Amazonka.DataExchange.Types.TableLFTagPolicyAndPermissions+ Amazonka.DataExchange.Types.TableTagPolicyLFPermission+ Amazonka.DataExchange.Types.Type+ Amazonka.DataExchange.UntagResource+ Amazonka.DataExchange.UpdateAsset+ Amazonka.DataExchange.UpdateDataSet+ Amazonka.DataExchange.UpdateEventAction+ Amazonka.DataExchange.UpdateRevision+ Amazonka.DataExchange.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-dataexchange-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.DataExchange+ Test.Amazonka.DataExchange.Internal+ Test.Amazonka.Gen.DataExchange++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-dataexchange+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/CancelJob.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/CancelJobResponse.proto view
+ fixture/CreateDataSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/CreateDataSetResponse.proto view
+ fixture/CreateEventAction.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/CreateEventActionResponse.proto view
+ fixture/CreateJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/CreateJobResponse.proto view
+ fixture/CreateRevision.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/CreateRevisionResponse.proto view
+ fixture/DeleteAsset.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/DeleteAssetResponse.proto view
+ fixture/DeleteDataSet.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/DeleteDataSetResponse.proto view
+ fixture/DeleteEventAction.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/DeleteEventActionResponse.proto view
+ fixture/DeleteRevision.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/DeleteRevisionResponse.proto view
+ fixture/GetAsset.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/GetAssetResponse.proto view
+ fixture/GetDataSet.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/GetDataSetResponse.proto view
+ fixture/GetEventAction.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/GetEventActionResponse.proto view
+ fixture/GetJob.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/GetJobResponse.proto view
+ fixture/GetRevision.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/GetRevisionResponse.proto view
+ fixture/ListDataSetRevisions.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/ListDataSetRevisionsResponse.proto view
+ fixture/ListDataSets.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/ListDataSetsResponse.proto view
+ fixture/ListEventActions.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/ListEventActionsResponse.proto view
+ fixture/ListJobs.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/ListJobsResponse.proto view
+ fixture/ListRevisionAssets.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/ListRevisionAssetsResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/RevokeRevision.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/RevokeRevisionResponse.proto view
+ fixture/SendApiAsset.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/SendApiAssetResponse.proto view
+ fixture/StartJob.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/StartJobResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagResourceResponse.proto view
+ fixture/UntagResource.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/UpdateAsset.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/UpdateAssetResponse.proto view
+ fixture/UpdateDataSet.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/UpdateDataSetResponse.proto view
+ fixture/UpdateEventAction.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/UpdateEventActionResponse.proto view
+ fixture/UpdateRevision.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/dataexchange/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: dataexchange.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/UpdateRevisionResponse.proto view
+ gen/Amazonka/DataExchange.hs view
@@ -0,0 +1,566 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.DataExchange+-- 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 @2017-07-25@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- AWS Data Exchange is a service that makes it easy for AWS customers to+-- exchange data in the cloud. You can use the AWS Data Exchange APIs to+-- create, update, manage, and access file-based data set in the AWS Cloud.+--+-- As a subscriber, you can view and access the data sets that you have an+-- entitlement to through a subscription. You can use the APIs to download+-- or copy your entitled data sets to Amazon Simple Storage Service (Amazon+-- S3) for use across a variety of AWS analytics and machine learning+-- services.+--+-- As a provider, you can create and manage your data sets that you would+-- like to publish to a product. Being able to package and provide your+-- data sets into products requires a few steps to determine eligibility.+-- For more information, visit the /AWS Data Exchange User Guide/.+--+-- A data set is a collection of data that can be changed or updated over+-- time. Data sets can be updated using revisions, which represent a new+-- version or incremental change to a data set. A revision contains one or+-- more assets. An asset in AWS Data Exchange is a piece of data that can+-- be stored as an Amazon S3 object, Redshift datashare, API Gateway API,+-- AWS Lake Formation data permission, or Amazon S3 data access. The asset+-- can be a structured data file, an image file, or some other data file.+-- Jobs are asynchronous import or export operations used to create or copy+-- assets.+module Amazonka.DataExchange+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceLimitExceededException+ _ServiceLimitExceededException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** CancelJob+ CancelJob (CancelJob'),+ newCancelJob,+ CancelJobResponse (CancelJobResponse'),+ newCancelJobResponse,++ -- ** CreateDataSet+ CreateDataSet (CreateDataSet'),+ newCreateDataSet,+ CreateDataSetResponse (CreateDataSetResponse'),+ newCreateDataSetResponse,++ -- ** CreateEventAction+ CreateEventAction (CreateEventAction'),+ newCreateEventAction,+ CreateEventActionResponse (CreateEventActionResponse'),+ newCreateEventActionResponse,++ -- ** CreateJob+ CreateJob (CreateJob'),+ newCreateJob,+ CreateJobResponse (CreateJobResponse'),+ newCreateJobResponse,++ -- ** CreateRevision+ CreateRevision (CreateRevision'),+ newCreateRevision,+ CreateRevisionResponse (CreateRevisionResponse'),+ newCreateRevisionResponse,++ -- ** DeleteAsset+ DeleteAsset (DeleteAsset'),+ newDeleteAsset,+ DeleteAssetResponse (DeleteAssetResponse'),+ newDeleteAssetResponse,++ -- ** DeleteDataSet+ DeleteDataSet (DeleteDataSet'),+ newDeleteDataSet,+ DeleteDataSetResponse (DeleteDataSetResponse'),+ newDeleteDataSetResponse,++ -- ** DeleteEventAction+ DeleteEventAction (DeleteEventAction'),+ newDeleteEventAction,+ DeleteEventActionResponse (DeleteEventActionResponse'),+ newDeleteEventActionResponse,++ -- ** DeleteRevision+ DeleteRevision (DeleteRevision'),+ newDeleteRevision,+ DeleteRevisionResponse (DeleteRevisionResponse'),+ newDeleteRevisionResponse,++ -- ** GetAsset+ GetAsset (GetAsset'),+ newGetAsset,+ GetAssetResponse (GetAssetResponse'),+ newGetAssetResponse,++ -- ** GetDataSet+ GetDataSet (GetDataSet'),+ newGetDataSet,+ GetDataSetResponse (GetDataSetResponse'),+ newGetDataSetResponse,++ -- ** GetEventAction+ GetEventAction (GetEventAction'),+ newGetEventAction,+ GetEventActionResponse (GetEventActionResponse'),+ newGetEventActionResponse,++ -- ** GetJob+ GetJob (GetJob'),+ newGetJob,+ GetJobResponse (GetJobResponse'),+ newGetJobResponse,++ -- ** GetRevision+ GetRevision (GetRevision'),+ newGetRevision,+ GetRevisionResponse (GetRevisionResponse'),+ newGetRevisionResponse,++ -- ** ListDataSetRevisions (Paginated)+ ListDataSetRevisions (ListDataSetRevisions'),+ newListDataSetRevisions,+ ListDataSetRevisionsResponse (ListDataSetRevisionsResponse'),+ newListDataSetRevisionsResponse,++ -- ** ListDataSets (Paginated)+ ListDataSets (ListDataSets'),+ newListDataSets,+ ListDataSetsResponse (ListDataSetsResponse'),+ newListDataSetsResponse,++ -- ** ListEventActions (Paginated)+ ListEventActions (ListEventActions'),+ newListEventActions,+ ListEventActionsResponse (ListEventActionsResponse'),+ newListEventActionsResponse,++ -- ** ListJobs (Paginated)+ ListJobs (ListJobs'),+ newListJobs,+ ListJobsResponse (ListJobsResponse'),+ newListJobsResponse,++ -- ** ListRevisionAssets (Paginated)+ ListRevisionAssets (ListRevisionAssets'),+ newListRevisionAssets,+ ListRevisionAssetsResponse (ListRevisionAssetsResponse'),+ newListRevisionAssetsResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** RevokeRevision+ RevokeRevision (RevokeRevision'),+ newRevokeRevision,+ RevokeRevisionResponse (RevokeRevisionResponse'),+ newRevokeRevisionResponse,++ -- ** SendApiAsset+ SendApiAsset (SendApiAsset'),+ newSendApiAsset,+ SendApiAssetResponse (SendApiAssetResponse'),+ newSendApiAssetResponse,++ -- ** StartJob+ StartJob (StartJob'),+ newStartJob,+ StartJobResponse (StartJobResponse'),+ newStartJobResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateAsset+ UpdateAsset (UpdateAsset'),+ newUpdateAsset,+ UpdateAssetResponse (UpdateAssetResponse'),+ newUpdateAssetResponse,++ -- ** UpdateDataSet+ UpdateDataSet (UpdateDataSet'),+ newUpdateDataSet,+ UpdateDataSetResponse (UpdateDataSetResponse'),+ newUpdateDataSetResponse,++ -- ** UpdateEventAction+ UpdateEventAction (UpdateEventAction'),+ newUpdateEventAction,+ UpdateEventActionResponse (UpdateEventActionResponse'),+ newUpdateEventActionResponse,++ -- ** UpdateRevision+ UpdateRevision (UpdateRevision'),+ newUpdateRevision,+ UpdateRevisionResponse (UpdateRevisionResponse'),+ newUpdateRevisionResponse,++ -- * Types++ -- ** AssetType+ AssetType (..),++ -- ** Code+ Code (..),++ -- ** DatabaseLFTagPolicyPermission+ DatabaseLFTagPolicyPermission (..),++ -- ** JobErrorLimitName+ JobErrorLimitName (..),++ -- ** JobErrorResourceTypes+ JobErrorResourceTypes (..),++ -- ** LFPermission+ LFPermission (..),++ -- ** LFResourceType+ LFResourceType (..),++ -- ** LakeFormationDataPermissionType+ LakeFormationDataPermissionType (..),++ -- ** Origin+ Origin (..),++ -- ** ProtocolType+ ProtocolType (..),++ -- ** ServerSideEncryptionTypes+ ServerSideEncryptionTypes (..),++ -- ** State+ State (..),++ -- ** TableTagPolicyLFPermission+ TableTagPolicyLFPermission (..),++ -- ** Type+ Type (..),++ -- ** Action+ Action (Action'),+ newAction,++ -- ** ApiGatewayApiAsset+ ApiGatewayApiAsset (ApiGatewayApiAsset'),+ newApiGatewayApiAsset,++ -- ** AssetDestinationEntry+ AssetDestinationEntry (AssetDestinationEntry'),+ newAssetDestinationEntry,++ -- ** AssetDetails+ AssetDetails (AssetDetails'),+ newAssetDetails,++ -- ** AssetEntry+ AssetEntry (AssetEntry'),+ newAssetEntry,++ -- ** AssetSourceEntry+ AssetSourceEntry (AssetSourceEntry'),+ newAssetSourceEntry,++ -- ** AutoExportRevisionDestinationEntry+ AutoExportRevisionDestinationEntry (AutoExportRevisionDestinationEntry'),+ newAutoExportRevisionDestinationEntry,++ -- ** AutoExportRevisionToS3RequestDetails+ AutoExportRevisionToS3RequestDetails (AutoExportRevisionToS3RequestDetails'),+ newAutoExportRevisionToS3RequestDetails,++ -- ** CreateS3DataAccessFromS3BucketRequestDetails+ CreateS3DataAccessFromS3BucketRequestDetails (CreateS3DataAccessFromS3BucketRequestDetails'),+ newCreateS3DataAccessFromS3BucketRequestDetails,++ -- ** CreateS3DataAccessFromS3BucketResponseDetails+ CreateS3DataAccessFromS3BucketResponseDetails (CreateS3DataAccessFromS3BucketResponseDetails'),+ newCreateS3DataAccessFromS3BucketResponseDetails,++ -- ** DataSetEntry+ DataSetEntry (DataSetEntry'),+ newDataSetEntry,++ -- ** DatabaseLFTagPolicy+ DatabaseLFTagPolicy (DatabaseLFTagPolicy'),+ newDatabaseLFTagPolicy,++ -- ** DatabaseLFTagPolicyAndPermissions+ DatabaseLFTagPolicyAndPermissions (DatabaseLFTagPolicyAndPermissions'),+ newDatabaseLFTagPolicyAndPermissions,++ -- ** Details+ Details (Details'),+ newDetails,++ -- ** Event+ Event (Event'),+ newEvent,++ -- ** EventActionEntry+ EventActionEntry (EventActionEntry'),+ newEventActionEntry,++ -- ** ExportAssetToSignedUrlRequestDetails+ ExportAssetToSignedUrlRequestDetails (ExportAssetToSignedUrlRequestDetails'),+ newExportAssetToSignedUrlRequestDetails,++ -- ** ExportAssetToSignedUrlResponseDetails+ ExportAssetToSignedUrlResponseDetails (ExportAssetToSignedUrlResponseDetails'),+ newExportAssetToSignedUrlResponseDetails,++ -- ** ExportAssetsToS3RequestDetails+ ExportAssetsToS3RequestDetails (ExportAssetsToS3RequestDetails'),+ newExportAssetsToS3RequestDetails,++ -- ** ExportAssetsToS3ResponseDetails+ ExportAssetsToS3ResponseDetails (ExportAssetsToS3ResponseDetails'),+ newExportAssetsToS3ResponseDetails,++ -- ** ExportRevisionsToS3RequestDetails+ ExportRevisionsToS3RequestDetails (ExportRevisionsToS3RequestDetails'),+ newExportRevisionsToS3RequestDetails,++ -- ** ExportRevisionsToS3ResponseDetails+ ExportRevisionsToS3ResponseDetails (ExportRevisionsToS3ResponseDetails'),+ newExportRevisionsToS3ResponseDetails,++ -- ** ExportServerSideEncryption+ ExportServerSideEncryption (ExportServerSideEncryption'),+ newExportServerSideEncryption,++ -- ** ImportAssetFromApiGatewayApiRequestDetails+ ImportAssetFromApiGatewayApiRequestDetails (ImportAssetFromApiGatewayApiRequestDetails'),+ newImportAssetFromApiGatewayApiRequestDetails,++ -- ** ImportAssetFromApiGatewayApiResponseDetails+ ImportAssetFromApiGatewayApiResponseDetails (ImportAssetFromApiGatewayApiResponseDetails'),+ newImportAssetFromApiGatewayApiResponseDetails,++ -- ** ImportAssetFromSignedUrlJobErrorDetails+ ImportAssetFromSignedUrlJobErrorDetails (ImportAssetFromSignedUrlJobErrorDetails'),+ newImportAssetFromSignedUrlJobErrorDetails,++ -- ** ImportAssetFromSignedUrlRequestDetails+ ImportAssetFromSignedUrlRequestDetails (ImportAssetFromSignedUrlRequestDetails'),+ newImportAssetFromSignedUrlRequestDetails,++ -- ** ImportAssetFromSignedUrlResponseDetails+ ImportAssetFromSignedUrlResponseDetails (ImportAssetFromSignedUrlResponseDetails'),+ newImportAssetFromSignedUrlResponseDetails,++ -- ** ImportAssetsFromLakeFormationTagPolicyRequestDetails+ ImportAssetsFromLakeFormationTagPolicyRequestDetails (ImportAssetsFromLakeFormationTagPolicyRequestDetails'),+ newImportAssetsFromLakeFormationTagPolicyRequestDetails,++ -- ** ImportAssetsFromLakeFormationTagPolicyResponseDetails+ ImportAssetsFromLakeFormationTagPolicyResponseDetails (ImportAssetsFromLakeFormationTagPolicyResponseDetails'),+ newImportAssetsFromLakeFormationTagPolicyResponseDetails,++ -- ** ImportAssetsFromRedshiftDataSharesRequestDetails+ ImportAssetsFromRedshiftDataSharesRequestDetails (ImportAssetsFromRedshiftDataSharesRequestDetails'),+ newImportAssetsFromRedshiftDataSharesRequestDetails,++ -- ** ImportAssetsFromRedshiftDataSharesResponseDetails+ ImportAssetsFromRedshiftDataSharesResponseDetails (ImportAssetsFromRedshiftDataSharesResponseDetails'),+ newImportAssetsFromRedshiftDataSharesResponseDetails,++ -- ** ImportAssetsFromS3RequestDetails+ ImportAssetsFromS3RequestDetails (ImportAssetsFromS3RequestDetails'),+ newImportAssetsFromS3RequestDetails,++ -- ** ImportAssetsFromS3ResponseDetails+ ImportAssetsFromS3ResponseDetails (ImportAssetsFromS3ResponseDetails'),+ newImportAssetsFromS3ResponseDetails,++ -- ** JobEntry+ JobEntry (JobEntry'),+ newJobEntry,++ -- ** JobError+ JobError (JobError'),+ newJobError,++ -- ** LFResourceDetails+ LFResourceDetails (LFResourceDetails'),+ newLFResourceDetails,++ -- ** LFTag+ LFTag (LFTag'),+ newLFTag,++ -- ** LFTagPolicyDetails+ LFTagPolicyDetails (LFTagPolicyDetails'),+ newLFTagPolicyDetails,++ -- ** LakeFormationDataPermissionAsset+ LakeFormationDataPermissionAsset (LakeFormationDataPermissionAsset'),+ newLakeFormationDataPermissionAsset,++ -- ** LakeFormationDataPermissionDetails+ LakeFormationDataPermissionDetails (LakeFormationDataPermissionDetails'),+ newLakeFormationDataPermissionDetails,++ -- ** OriginDetails+ OriginDetails (OriginDetails'),+ newOriginDetails,++ -- ** RedshiftDataShareAsset+ RedshiftDataShareAsset (RedshiftDataShareAsset'),+ newRedshiftDataShareAsset,++ -- ** RedshiftDataShareAssetSourceEntry+ RedshiftDataShareAssetSourceEntry (RedshiftDataShareAssetSourceEntry'),+ newRedshiftDataShareAssetSourceEntry,++ -- ** RequestDetails+ RequestDetails (RequestDetails'),+ newRequestDetails,++ -- ** ResponseDetails+ ResponseDetails (ResponseDetails'),+ newResponseDetails,++ -- ** RevisionDestinationEntry+ RevisionDestinationEntry (RevisionDestinationEntry'),+ newRevisionDestinationEntry,++ -- ** RevisionEntry+ RevisionEntry (RevisionEntry'),+ newRevisionEntry,++ -- ** RevisionPublished+ RevisionPublished (RevisionPublished'),+ newRevisionPublished,++ -- ** S3DataAccessAsset+ S3DataAccessAsset (S3DataAccessAsset'),+ newS3DataAccessAsset,++ -- ** S3DataAccessAssetSourceEntry+ S3DataAccessAssetSourceEntry (S3DataAccessAssetSourceEntry'),+ newS3DataAccessAssetSourceEntry,++ -- ** S3SnapshotAsset+ S3SnapshotAsset (S3SnapshotAsset'),+ newS3SnapshotAsset,++ -- ** TableLFTagPolicy+ TableLFTagPolicy (TableLFTagPolicy'),+ newTableLFTagPolicy,++ -- ** TableLFTagPolicyAndPermissions+ TableLFTagPolicyAndPermissions (TableLFTagPolicyAndPermissions'),+ newTableLFTagPolicyAndPermissions,+ )+where++import Amazonka.DataExchange.CancelJob+import Amazonka.DataExchange.CreateDataSet+import Amazonka.DataExchange.CreateEventAction+import Amazonka.DataExchange.CreateJob+import Amazonka.DataExchange.CreateRevision+import Amazonka.DataExchange.DeleteAsset+import Amazonka.DataExchange.DeleteDataSet+import Amazonka.DataExchange.DeleteEventAction+import Amazonka.DataExchange.DeleteRevision+import Amazonka.DataExchange.GetAsset+import Amazonka.DataExchange.GetDataSet+import Amazonka.DataExchange.GetEventAction+import Amazonka.DataExchange.GetJob+import Amazonka.DataExchange.GetRevision+import Amazonka.DataExchange.Lens+import Amazonka.DataExchange.ListDataSetRevisions+import Amazonka.DataExchange.ListDataSets+import Amazonka.DataExchange.ListEventActions+import Amazonka.DataExchange.ListJobs+import Amazonka.DataExchange.ListRevisionAssets+import Amazonka.DataExchange.ListTagsForResource+import Amazonka.DataExchange.RevokeRevision+import Amazonka.DataExchange.SendApiAsset+import Amazonka.DataExchange.StartJob+import Amazonka.DataExchange.TagResource+import Amazonka.DataExchange.Types+import Amazonka.DataExchange.UntagResource+import Amazonka.DataExchange.UpdateAsset+import Amazonka.DataExchange.UpdateDataSet+import Amazonka.DataExchange.UpdateEventAction+import Amazonka.DataExchange.UpdateRevision+import Amazonka.DataExchange.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 'DataExchange'.++-- $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/DataExchange/CancelJob.hs view
@@ -0,0 +1,119 @@+{-# 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.DataExchange.CancelJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation cancels a job. Jobs can be cancelled only when they are+-- in the WAITING state.+module Amazonka.DataExchange.CancelJob+ ( -- * Creating a Request+ CancelJob (..),+ newCancelJob,++ -- * Request Lenses+ cancelJob_jobId,++ -- * Destructuring the Response+ CancelJobResponse (..),+ newCancelJobResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCancelJob' smart constructor.+data CancelJob = CancelJob'+ { -- | The unique identifier for a job.+ jobId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelJob' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'jobId', 'cancelJob_jobId' - The unique identifier for a job.+newCancelJob ::+ -- | 'jobId'+ Prelude.Text ->+ CancelJob+newCancelJob pJobId_ = CancelJob' {jobId = pJobId_}++-- | The unique identifier for a job.+cancelJob_jobId :: Lens.Lens' CancelJob Prelude.Text+cancelJob_jobId = Lens.lens (\CancelJob' {jobId} -> jobId) (\s@CancelJob' {} a -> s {jobId = a} :: CancelJob)++instance Core.AWSRequest CancelJob where+ type AWSResponse CancelJob = CancelJobResponse+ request overrides =+ Request.delete (overrides defaultService)+ response = Response.receiveNull CancelJobResponse'++instance Prelude.Hashable CancelJob where+ hashWithSalt _salt CancelJob' {..} =+ _salt `Prelude.hashWithSalt` jobId++instance Prelude.NFData CancelJob where+ rnf CancelJob' {..} = Prelude.rnf jobId++instance Data.ToHeaders CancelJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath CancelJob where+ toPath CancelJob' {..} =+ Prelude.mconcat ["/v1/jobs/", Data.toBS jobId]++instance Data.ToQuery CancelJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCancelJobResponse' smart constructor.+data CancelJobResponse = CancelJobResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelJobResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newCancelJobResponse ::+ CancelJobResponse+newCancelJobResponse = CancelJobResponse'++instance Prelude.NFData CancelJobResponse where+ rnf _ = ()
+ gen/Amazonka/DataExchange/CreateDataSet.hs view
@@ -0,0 +1,361 @@+{-# 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.DataExchange.CreateDataSet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation creates a data set.+module Amazonka.DataExchange.CreateDataSet+ ( -- * Creating a Request+ CreateDataSet (..),+ newCreateDataSet,++ -- * Request Lenses+ createDataSet_tags,+ createDataSet_assetType,+ createDataSet_description,+ createDataSet_name,++ -- * Destructuring the Response+ CreateDataSetResponse (..),+ newCreateDataSetResponse,++ -- * Response Lenses+ createDataSetResponse_arn,+ createDataSetResponse_assetType,+ createDataSetResponse_createdAt,+ createDataSetResponse_description,+ createDataSetResponse_id,+ createDataSetResponse_name,+ createDataSetResponse_origin,+ createDataSetResponse_originDetails,+ createDataSetResponse_sourceId,+ createDataSetResponse_tags,+ createDataSetResponse_updatedAt,+ createDataSetResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateDataSet' smart constructor.+data CreateDataSet = CreateDataSet'+ { -- | A data set tag is an optional label that you can assign to a data set+ -- when you create it. Each tag consists of a key and an optional value,+ -- both of which you define. When you use tagging, you can also use+ -- tag-based access control in IAM policies to control access to these data+ -- sets and revisions.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The type of asset that is added to a data set.+ assetType :: AssetType,+ -- | A description for the data set. This value can be up to 16,348+ -- characters long.+ description :: Prelude.Text,+ -- | The name of the data set.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDataSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createDataSet_tags' - A data set tag is an optional label that you can assign to a data set+-- when you create it. Each tag consists of a key and an optional value,+-- both of which you define. When you use tagging, you can also use+-- tag-based access control in IAM policies to control access to these data+-- sets and revisions.+--+-- 'assetType', 'createDataSet_assetType' - The type of asset that is added to a data set.+--+-- 'description', 'createDataSet_description' - A description for the data set. This value can be up to 16,348+-- characters long.+--+-- 'name', 'createDataSet_name' - The name of the data set.+newCreateDataSet ::+ -- | 'assetType'+ AssetType ->+ -- | 'description'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ CreateDataSet+newCreateDataSet pAssetType_ pDescription_ pName_ =+ CreateDataSet'+ { tags = Prelude.Nothing,+ assetType = pAssetType_,+ description = pDescription_,+ name = pName_+ }++-- | A data set tag is an optional label that you can assign to a data set+-- when you create it. Each tag consists of a key and an optional value,+-- both of which you define. When you use tagging, you can also use+-- tag-based access control in IAM policies to control access to these data+-- sets and revisions.+createDataSet_tags :: Lens.Lens' CreateDataSet (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createDataSet_tags = Lens.lens (\CreateDataSet' {tags} -> tags) (\s@CreateDataSet' {} a -> s {tags = a} :: CreateDataSet) Prelude.. Lens.mapping Lens.coerced++-- | The type of asset that is added to a data set.+createDataSet_assetType :: Lens.Lens' CreateDataSet AssetType+createDataSet_assetType = Lens.lens (\CreateDataSet' {assetType} -> assetType) (\s@CreateDataSet' {} a -> s {assetType = a} :: CreateDataSet)++-- | A description for the data set. This value can be up to 16,348+-- characters long.+createDataSet_description :: Lens.Lens' CreateDataSet Prelude.Text+createDataSet_description = Lens.lens (\CreateDataSet' {description} -> description) (\s@CreateDataSet' {} a -> s {description = a} :: CreateDataSet)++-- | The name of the data set.+createDataSet_name :: Lens.Lens' CreateDataSet Prelude.Text+createDataSet_name = Lens.lens (\CreateDataSet' {name} -> name) (\s@CreateDataSet' {} a -> s {name = a} :: CreateDataSet)++instance Core.AWSRequest CreateDataSet where+ type+ AWSResponse CreateDataSet =+ CreateDataSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateDataSetResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "AssetType")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "Description")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "Origin")+ Prelude.<*> (x Data..?> "OriginDetails")+ Prelude.<*> (x Data..?> "SourceId")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateDataSet where+ hashWithSalt _salt CreateDataSet' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` assetType+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` name++instance Prelude.NFData CreateDataSet where+ rnf CreateDataSet' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf assetType+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf name++instance Data.ToHeaders CreateDataSet where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateDataSet where+ toJSON CreateDataSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("AssetType" Data..= assetType),+ Prelude.Just ("Description" Data..= description),+ Prelude.Just ("Name" Data..= name)+ ]+ )++instance Data.ToPath CreateDataSet where+ toPath = Prelude.const "/v1/data-sets"++instance Data.ToQuery CreateDataSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateDataSetResponse' smart constructor.+data CreateDataSetResponse = CreateDataSetResponse'+ { -- | The ARN for the data set.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The type of asset that is added to a data set.+ assetType :: Prelude.Maybe AssetType,+ -- | The date and time that the data set was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | The description for the data set.+ description :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the data set.+ id :: Prelude.Maybe Prelude.Text,+ -- | The name of the data set.+ name :: Prelude.Maybe Prelude.Text,+ -- | A property that defines the data set as OWNED by the account (for+ -- providers) or ENTITLED to the account (for subscribers).+ origin :: Prelude.Maybe Origin,+ -- | If the origin of this data set is ENTITLED, includes the details for the+ -- product on AWS Marketplace.+ originDetails :: Prelude.Maybe OriginDetails,+ -- | The data set ID of the owned data set corresponding to the entitled data+ -- set being viewed. This parameter is returned when a data set owner is+ -- viewing the entitled copy of its owned data set.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The tags for the data set.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The date and time that the data set was last updated, in ISO 8601+ -- format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDataSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createDataSetResponse_arn' - The ARN for the data set.+--+-- 'assetType', 'createDataSetResponse_assetType' - The type of asset that is added to a data set.+--+-- 'createdAt', 'createDataSetResponse_createdAt' - The date and time that the data set was created, in ISO 8601 format.+--+-- 'description', 'createDataSetResponse_description' - The description for the data set.+--+-- 'id', 'createDataSetResponse_id' - The unique identifier for the data set.+--+-- 'name', 'createDataSetResponse_name' - The name of the data set.+--+-- 'origin', 'createDataSetResponse_origin' - A property that defines the data set as OWNED by the account (for+-- providers) or ENTITLED to the account (for subscribers).+--+-- 'originDetails', 'createDataSetResponse_originDetails' - If the origin of this data set is ENTITLED, includes the details for the+-- product on AWS Marketplace.+--+-- 'sourceId', 'createDataSetResponse_sourceId' - The data set ID of the owned data set corresponding to the entitled data+-- set being viewed. This parameter is returned when a data set owner is+-- viewing the entitled copy of its owned data set.+--+-- 'tags', 'createDataSetResponse_tags' - The tags for the data set.+--+-- 'updatedAt', 'createDataSetResponse_updatedAt' - The date and time that the data set was last updated, in ISO 8601+-- format.+--+-- 'httpStatus', 'createDataSetResponse_httpStatus' - The response's http status code.+newCreateDataSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateDataSetResponse+newCreateDataSetResponse pHttpStatus_ =+ CreateDataSetResponse'+ { arn = Prelude.Nothing,+ assetType = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ description = Prelude.Nothing,+ id = Prelude.Nothing,+ name = Prelude.Nothing,+ origin = Prelude.Nothing,+ originDetails = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ tags = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the data set.+createDataSetResponse_arn :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe Prelude.Text)+createDataSetResponse_arn = Lens.lens (\CreateDataSetResponse' {arn} -> arn) (\s@CreateDataSetResponse' {} a -> s {arn = a} :: CreateDataSetResponse)++-- | The type of asset that is added to a data set.+createDataSetResponse_assetType :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe AssetType)+createDataSetResponse_assetType = Lens.lens (\CreateDataSetResponse' {assetType} -> assetType) (\s@CreateDataSetResponse' {} a -> s {assetType = a} :: CreateDataSetResponse)++-- | The date and time that the data set was created, in ISO 8601 format.+createDataSetResponse_createdAt :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe Prelude.UTCTime)+createDataSetResponse_createdAt = Lens.lens (\CreateDataSetResponse' {createdAt} -> createdAt) (\s@CreateDataSetResponse' {} a -> s {createdAt = a} :: CreateDataSetResponse) Prelude.. Lens.mapping Data._Time++-- | The description for the data set.+createDataSetResponse_description :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe Prelude.Text)+createDataSetResponse_description = Lens.lens (\CreateDataSetResponse' {description} -> description) (\s@CreateDataSetResponse' {} a -> s {description = a} :: CreateDataSetResponse)++-- | The unique identifier for the data set.+createDataSetResponse_id :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe Prelude.Text)+createDataSetResponse_id = Lens.lens (\CreateDataSetResponse' {id} -> id) (\s@CreateDataSetResponse' {} a -> s {id = a} :: CreateDataSetResponse)++-- | The name of the data set.+createDataSetResponse_name :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe Prelude.Text)+createDataSetResponse_name = Lens.lens (\CreateDataSetResponse' {name} -> name) (\s@CreateDataSetResponse' {} a -> s {name = a} :: CreateDataSetResponse)++-- | A property that defines the data set as OWNED by the account (for+-- providers) or ENTITLED to the account (for subscribers).+createDataSetResponse_origin :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe Origin)+createDataSetResponse_origin = Lens.lens (\CreateDataSetResponse' {origin} -> origin) (\s@CreateDataSetResponse' {} a -> s {origin = a} :: CreateDataSetResponse)++-- | If the origin of this data set is ENTITLED, includes the details for the+-- product on AWS Marketplace.+createDataSetResponse_originDetails :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe OriginDetails)+createDataSetResponse_originDetails = Lens.lens (\CreateDataSetResponse' {originDetails} -> originDetails) (\s@CreateDataSetResponse' {} a -> s {originDetails = a} :: CreateDataSetResponse)++-- | The data set ID of the owned data set corresponding to the entitled data+-- set being viewed. This parameter is returned when a data set owner is+-- viewing the entitled copy of its owned data set.+createDataSetResponse_sourceId :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe Prelude.Text)+createDataSetResponse_sourceId = Lens.lens (\CreateDataSetResponse' {sourceId} -> sourceId) (\s@CreateDataSetResponse' {} a -> s {sourceId = a} :: CreateDataSetResponse)++-- | The tags for the data set.+createDataSetResponse_tags :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createDataSetResponse_tags = Lens.lens (\CreateDataSetResponse' {tags} -> tags) (\s@CreateDataSetResponse' {} a -> s {tags = a} :: CreateDataSetResponse) Prelude.. Lens.mapping Lens.coerced++-- | The date and time that the data set was last updated, in ISO 8601+-- format.+createDataSetResponse_updatedAt :: Lens.Lens' CreateDataSetResponse (Prelude.Maybe Prelude.UTCTime)+createDataSetResponse_updatedAt = Lens.lens (\CreateDataSetResponse' {updatedAt} -> updatedAt) (\s@CreateDataSetResponse' {} a -> s {updatedAt = a} :: CreateDataSetResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+createDataSetResponse_httpStatus :: Lens.Lens' CreateDataSetResponse Prelude.Int+createDataSetResponse_httpStatus = Lens.lens (\CreateDataSetResponse' {httpStatus} -> httpStatus) (\s@CreateDataSetResponse' {} a -> s {httpStatus = a} :: CreateDataSetResponse)++instance Prelude.NFData CreateDataSetResponse where+ rnf CreateDataSetResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf assetType+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf origin+ `Prelude.seq` Prelude.rnf originDetails+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/CreateEventAction.hs view
@@ -0,0 +1,246 @@+{-# 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.DataExchange.CreateEventAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation creates an event action.+module Amazonka.DataExchange.CreateEventAction+ ( -- * Creating a Request+ CreateEventAction (..),+ newCreateEventAction,++ -- * Request Lenses+ createEventAction_action,+ createEventAction_event,++ -- * Destructuring the Response+ CreateEventActionResponse (..),+ newCreateEventActionResponse,++ -- * Response Lenses+ createEventActionResponse_action,+ createEventActionResponse_arn,+ createEventActionResponse_createdAt,+ createEventActionResponse_event,+ createEventActionResponse_id,+ createEventActionResponse_updatedAt,+ createEventActionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateEventAction' smart constructor.+data CreateEventAction = CreateEventAction'+ { -- | What occurs after a certain event.+ action :: Action,+ -- | What occurs to start an action.+ event :: Event+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEventAction' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'action', 'createEventAction_action' - What occurs after a certain event.+--+-- 'event', 'createEventAction_event' - What occurs to start an action.+newCreateEventAction ::+ -- | 'action'+ Action ->+ -- | 'event'+ Event ->+ CreateEventAction+newCreateEventAction pAction_ pEvent_ =+ CreateEventAction'+ { action = pAction_,+ event = pEvent_+ }++-- | What occurs after a certain event.+createEventAction_action :: Lens.Lens' CreateEventAction Action+createEventAction_action = Lens.lens (\CreateEventAction' {action} -> action) (\s@CreateEventAction' {} a -> s {action = a} :: CreateEventAction)++-- | What occurs to start an action.+createEventAction_event :: Lens.Lens' CreateEventAction Event+createEventAction_event = Lens.lens (\CreateEventAction' {event} -> event) (\s@CreateEventAction' {} a -> s {event = a} :: CreateEventAction)++instance Core.AWSRequest CreateEventAction where+ type+ AWSResponse CreateEventAction =+ CreateEventActionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateEventActionResponse'+ Prelude.<$> (x Data..?> "Action")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "Event")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateEventAction where+ hashWithSalt _salt CreateEventAction' {..} =+ _salt+ `Prelude.hashWithSalt` action+ `Prelude.hashWithSalt` event++instance Prelude.NFData CreateEventAction where+ rnf CreateEventAction' {..} =+ Prelude.rnf action `Prelude.seq` Prelude.rnf event++instance Data.ToHeaders CreateEventAction where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateEventAction where+ toJSON CreateEventAction' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Action" Data..= action),+ Prelude.Just ("Event" Data..= event)+ ]+ )++instance Data.ToPath CreateEventAction where+ toPath = Prelude.const "/v1/event-actions"++instance Data.ToQuery CreateEventAction where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateEventActionResponse' smart constructor.+data CreateEventActionResponse = CreateEventActionResponse'+ { -- | What occurs after a certain event.+ action :: Prelude.Maybe Action,+ -- | The ARN for the event action.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the event action was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | What occurs to start an action.+ event :: Prelude.Maybe Event,+ -- | The unique identifier for the event action.+ id :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the event action was last updated, in ISO 8601+ -- format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEventActionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'action', 'createEventActionResponse_action' - What occurs after a certain event.+--+-- 'arn', 'createEventActionResponse_arn' - The ARN for the event action.+--+-- 'createdAt', 'createEventActionResponse_createdAt' - The date and time that the event action was created, in ISO 8601 format.+--+-- 'event', 'createEventActionResponse_event' - What occurs to start an action.+--+-- 'id', 'createEventActionResponse_id' - The unique identifier for the event action.+--+-- 'updatedAt', 'createEventActionResponse_updatedAt' - The date and time that the event action was last updated, in ISO 8601+-- format.+--+-- 'httpStatus', 'createEventActionResponse_httpStatus' - The response's http status code.+newCreateEventActionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateEventActionResponse+newCreateEventActionResponse pHttpStatus_ =+ CreateEventActionResponse'+ { action =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ event = Prelude.Nothing,+ id = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | What occurs after a certain event.+createEventActionResponse_action :: Lens.Lens' CreateEventActionResponse (Prelude.Maybe Action)+createEventActionResponse_action = Lens.lens (\CreateEventActionResponse' {action} -> action) (\s@CreateEventActionResponse' {} a -> s {action = a} :: CreateEventActionResponse)++-- | The ARN for the event action.+createEventActionResponse_arn :: Lens.Lens' CreateEventActionResponse (Prelude.Maybe Prelude.Text)+createEventActionResponse_arn = Lens.lens (\CreateEventActionResponse' {arn} -> arn) (\s@CreateEventActionResponse' {} a -> s {arn = a} :: CreateEventActionResponse)++-- | The date and time that the event action was created, in ISO 8601 format.+createEventActionResponse_createdAt :: Lens.Lens' CreateEventActionResponse (Prelude.Maybe Prelude.UTCTime)+createEventActionResponse_createdAt = Lens.lens (\CreateEventActionResponse' {createdAt} -> createdAt) (\s@CreateEventActionResponse' {} a -> s {createdAt = a} :: CreateEventActionResponse) Prelude.. Lens.mapping Data._Time++-- | What occurs to start an action.+createEventActionResponse_event :: Lens.Lens' CreateEventActionResponse (Prelude.Maybe Event)+createEventActionResponse_event = Lens.lens (\CreateEventActionResponse' {event} -> event) (\s@CreateEventActionResponse' {} a -> s {event = a} :: CreateEventActionResponse)++-- | The unique identifier for the event action.+createEventActionResponse_id :: Lens.Lens' CreateEventActionResponse (Prelude.Maybe Prelude.Text)+createEventActionResponse_id = Lens.lens (\CreateEventActionResponse' {id} -> id) (\s@CreateEventActionResponse' {} a -> s {id = a} :: CreateEventActionResponse)++-- | The date and time that the event action was last updated, in ISO 8601+-- format.+createEventActionResponse_updatedAt :: Lens.Lens' CreateEventActionResponse (Prelude.Maybe Prelude.UTCTime)+createEventActionResponse_updatedAt = Lens.lens (\CreateEventActionResponse' {updatedAt} -> updatedAt) (\s@CreateEventActionResponse' {} a -> s {updatedAt = a} :: CreateEventActionResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+createEventActionResponse_httpStatus :: Lens.Lens' CreateEventActionResponse Prelude.Int+createEventActionResponse_httpStatus = Lens.lens (\CreateEventActionResponse' {httpStatus} -> httpStatus) (\s@CreateEventActionResponse' {} a -> s {httpStatus = a} :: CreateEventActionResponse)++instance Prelude.NFData CreateEventActionResponse where+ rnf CreateEventActionResponse' {..} =+ Prelude.rnf action+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf event+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/CreateJob.hs view
@@ -0,0 +1,261 @@+{-# 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.DataExchange.CreateJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation creates a job.+module Amazonka.DataExchange.CreateJob+ ( -- * Creating a Request+ CreateJob (..),+ newCreateJob,++ -- * Request Lenses+ createJob_details,+ createJob_type,++ -- * Destructuring the Response+ CreateJobResponse (..),+ newCreateJobResponse,++ -- * Response Lenses+ createJobResponse_arn,+ createJobResponse_createdAt,+ createJobResponse_details,+ createJobResponse_errors,+ createJobResponse_id,+ createJobResponse_state,+ createJobResponse_type,+ createJobResponse_updatedAt,+ createJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateJob' smart constructor.+data CreateJob = CreateJob'+ { -- | The details for the CreateJob request.+ details :: RequestDetails,+ -- | The type of job to be created.+ type' :: Type+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateJob' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'details', 'createJob_details' - The details for the CreateJob request.+--+-- 'type'', 'createJob_type' - The type of job to be created.+newCreateJob ::+ -- | 'details'+ RequestDetails ->+ -- | 'type''+ Type ->+ CreateJob+newCreateJob pDetails_ pType_ =+ CreateJob' {details = pDetails_, type' = pType_}++-- | The details for the CreateJob request.+createJob_details :: Lens.Lens' CreateJob RequestDetails+createJob_details = Lens.lens (\CreateJob' {details} -> details) (\s@CreateJob' {} a -> s {details = a} :: CreateJob)++-- | The type of job to be created.+createJob_type :: Lens.Lens' CreateJob Type+createJob_type = Lens.lens (\CreateJob' {type'} -> type') (\s@CreateJob' {} a -> s {type' = a} :: CreateJob)++instance Core.AWSRequest CreateJob where+ type AWSResponse CreateJob = CreateJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateJobResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "Details")+ Prelude.<*> (x Data..?> "Errors" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Type")+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateJob where+ hashWithSalt _salt CreateJob' {..} =+ _salt+ `Prelude.hashWithSalt` details+ `Prelude.hashWithSalt` type'++instance Prelude.NFData CreateJob where+ rnf CreateJob' {..} =+ Prelude.rnf details `Prelude.seq` Prelude.rnf type'++instance Data.ToHeaders CreateJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateJob where+ toJSON CreateJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Details" Data..= details),+ Prelude.Just ("Type" Data..= type')+ ]+ )++instance Data.ToPath CreateJob where+ toPath = Prelude.const "/v1/jobs"++instance Data.ToQuery CreateJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateJobResponse' smart constructor.+data CreateJobResponse = CreateJobResponse'+ { -- | The ARN for the job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the job was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | Details about the job.+ details :: Prelude.Maybe ResponseDetails,+ -- | The errors associated with jobs.+ errors :: Prelude.Maybe [JobError],+ -- | The unique identifier for the job.+ id :: Prelude.Maybe Prelude.Text,+ -- | The state of the job.+ state :: Prelude.Maybe State,+ -- | The job type.+ type' :: Prelude.Maybe Type,+ -- | The date and time that the job was last updated, in ISO 8601 format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateJobResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createJobResponse_arn' - The ARN for the job.+--+-- 'createdAt', 'createJobResponse_createdAt' - The date and time that the job was created, in ISO 8601 format.+--+-- 'details', 'createJobResponse_details' - Details about the job.+--+-- 'errors', 'createJobResponse_errors' - The errors associated with jobs.+--+-- 'id', 'createJobResponse_id' - The unique identifier for the job.+--+-- 'state', 'createJobResponse_state' - The state of the job.+--+-- 'type'', 'createJobResponse_type' - The job type.+--+-- 'updatedAt', 'createJobResponse_updatedAt' - The date and time that the job was last updated, in ISO 8601 format.+--+-- 'httpStatus', 'createJobResponse_httpStatus' - The response's http status code.+newCreateJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateJobResponse+newCreateJobResponse pHttpStatus_ =+ CreateJobResponse'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ details = Prelude.Nothing,+ errors = Prelude.Nothing,+ id = Prelude.Nothing,+ state = Prelude.Nothing,+ type' = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the job.+createJobResponse_arn :: Lens.Lens' CreateJobResponse (Prelude.Maybe Prelude.Text)+createJobResponse_arn = Lens.lens (\CreateJobResponse' {arn} -> arn) (\s@CreateJobResponse' {} a -> s {arn = a} :: CreateJobResponse)++-- | The date and time that the job was created, in ISO 8601 format.+createJobResponse_createdAt :: Lens.Lens' CreateJobResponse (Prelude.Maybe Prelude.UTCTime)+createJobResponse_createdAt = Lens.lens (\CreateJobResponse' {createdAt} -> createdAt) (\s@CreateJobResponse' {} a -> s {createdAt = a} :: CreateJobResponse) Prelude.. Lens.mapping Data._Time++-- | Details about the job.+createJobResponse_details :: Lens.Lens' CreateJobResponse (Prelude.Maybe ResponseDetails)+createJobResponse_details = Lens.lens (\CreateJobResponse' {details} -> details) (\s@CreateJobResponse' {} a -> s {details = a} :: CreateJobResponse)++-- | The errors associated with jobs.+createJobResponse_errors :: Lens.Lens' CreateJobResponse (Prelude.Maybe [JobError])+createJobResponse_errors = Lens.lens (\CreateJobResponse' {errors} -> errors) (\s@CreateJobResponse' {} a -> s {errors = a} :: CreateJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier for the job.+createJobResponse_id :: Lens.Lens' CreateJobResponse (Prelude.Maybe Prelude.Text)+createJobResponse_id = Lens.lens (\CreateJobResponse' {id} -> id) (\s@CreateJobResponse' {} a -> s {id = a} :: CreateJobResponse)++-- | The state of the job.+createJobResponse_state :: Lens.Lens' CreateJobResponse (Prelude.Maybe State)+createJobResponse_state = Lens.lens (\CreateJobResponse' {state} -> state) (\s@CreateJobResponse' {} a -> s {state = a} :: CreateJobResponse)++-- | The job type.+createJobResponse_type :: Lens.Lens' CreateJobResponse (Prelude.Maybe Type)+createJobResponse_type = Lens.lens (\CreateJobResponse' {type'} -> type') (\s@CreateJobResponse' {} a -> s {type' = a} :: CreateJobResponse)++-- | The date and time that the job was last updated, in ISO 8601 format.+createJobResponse_updatedAt :: Lens.Lens' CreateJobResponse (Prelude.Maybe Prelude.UTCTime)+createJobResponse_updatedAt = Lens.lens (\CreateJobResponse' {updatedAt} -> updatedAt) (\s@CreateJobResponse' {} a -> s {updatedAt = a} :: CreateJobResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+createJobResponse_httpStatus :: Lens.Lens' CreateJobResponse Prelude.Int+createJobResponse_httpStatus = Lens.lens (\CreateJobResponse' {httpStatus} -> httpStatus) (\s@CreateJobResponse' {} a -> s {httpStatus = a} :: CreateJobResponse)++instance Prelude.NFData CreateJobResponse where+ rnf CreateJobResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf details+ `Prelude.seq` Prelude.rnf errors+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf type'+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/CreateRevision.hs view
@@ -0,0 +1,378 @@+{-# 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.DataExchange.CreateRevision+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation creates a revision for a data set.+module Amazonka.DataExchange.CreateRevision+ ( -- * Creating a Request+ CreateRevision (..),+ newCreateRevision,++ -- * Request Lenses+ createRevision_comment,+ createRevision_tags,+ createRevision_dataSetId,++ -- * Destructuring the Response+ CreateRevisionResponse (..),+ newCreateRevisionResponse,++ -- * Response Lenses+ createRevisionResponse_arn,+ createRevisionResponse_comment,+ createRevisionResponse_createdAt,+ createRevisionResponse_dataSetId,+ createRevisionResponse_finalized,+ createRevisionResponse_id,+ createRevisionResponse_revocationComment,+ createRevisionResponse_revoked,+ createRevisionResponse_revokedAt,+ createRevisionResponse_sourceId,+ createRevisionResponse_tags,+ createRevisionResponse_updatedAt,+ createRevisionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateRevision' smart constructor.+data CreateRevision = CreateRevision'+ { -- | An optional comment about the revision.+ comment :: Prelude.Maybe Prelude.Text,+ -- | A revision tag is an optional label that you can assign to a revision+ -- when you create it. Each tag consists of a key and an optional value,+ -- both of which you define. When you use tagging, you can also use+ -- tag-based access control in IAM policies to control access to these data+ -- sets and revisions.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateRevision' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'comment', 'createRevision_comment' - An optional comment about the revision.+--+-- 'tags', 'createRevision_tags' - A revision tag is an optional label that you can assign to a revision+-- when you create it. Each tag consists of a key and an optional value,+-- both of which you define. When you use tagging, you can also use+-- tag-based access control in IAM policies to control access to these data+-- sets and revisions.+--+-- 'dataSetId', 'createRevision_dataSetId' - The unique identifier for a data set.+newCreateRevision ::+ -- | 'dataSetId'+ Prelude.Text ->+ CreateRevision+newCreateRevision pDataSetId_ =+ CreateRevision'+ { comment = Prelude.Nothing,+ tags = Prelude.Nothing,+ dataSetId = pDataSetId_+ }++-- | An optional comment about the revision.+createRevision_comment :: Lens.Lens' CreateRevision (Prelude.Maybe Prelude.Text)+createRevision_comment = Lens.lens (\CreateRevision' {comment} -> comment) (\s@CreateRevision' {} a -> s {comment = a} :: CreateRevision)++-- | A revision tag is an optional label that you can assign to a revision+-- when you create it. Each tag consists of a key and an optional value,+-- both of which you define. When you use tagging, you can also use+-- tag-based access control in IAM policies to control access to these data+-- sets and revisions.+createRevision_tags :: Lens.Lens' CreateRevision (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createRevision_tags = Lens.lens (\CreateRevision' {tags} -> tags) (\s@CreateRevision' {} a -> s {tags = a} :: CreateRevision) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier for a data set.+createRevision_dataSetId :: Lens.Lens' CreateRevision Prelude.Text+createRevision_dataSetId = Lens.lens (\CreateRevision' {dataSetId} -> dataSetId) (\s@CreateRevision' {} a -> s {dataSetId = a} :: CreateRevision)++instance Core.AWSRequest CreateRevision where+ type+ AWSResponse CreateRevision =+ CreateRevisionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateRevisionResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "Comment")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "DataSetId")+ Prelude.<*> (x Data..?> "Finalized")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "RevocationComment")+ Prelude.<*> (x Data..?> "Revoked")+ Prelude.<*> (x Data..?> "RevokedAt")+ Prelude.<*> (x Data..?> "SourceId")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateRevision where+ hashWithSalt _salt CreateRevision' {..} =+ _salt+ `Prelude.hashWithSalt` comment+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` dataSetId++instance Prelude.NFData CreateRevision where+ rnf CreateRevision' {..} =+ Prelude.rnf comment+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf dataSetId++instance Data.ToHeaders CreateRevision where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateRevision where+ toJSON CreateRevision' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Comment" Data..=) Prelude.<$> comment,+ ("Tags" Data..=) Prelude.<$> tags+ ]+ )++instance Data.ToPath CreateRevision where+ toPath CreateRevision' {..} =+ Prelude.mconcat+ ["/v1/data-sets/", Data.toBS dataSetId, "/revisions"]++instance Data.ToQuery CreateRevision where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateRevisionResponse' smart constructor.+data CreateRevisionResponse = CreateRevisionResponse'+ { -- | The ARN for the revision.+ arn :: Prelude.Maybe Prelude.Text,+ -- | An optional comment about the revision.+ comment :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the revision was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | The unique identifier for the data set associated with the data set+ -- revision.+ dataSetId :: Prelude.Maybe Prelude.Text,+ -- | To publish a revision to a data set in a product, the revision must+ -- first be finalized. Finalizing a revision tells AWS Data Exchange that+ -- your changes to the assets in the revision are complete. After it\'s in+ -- this read-only state, you can publish the revision to your products.+ -- Finalized revisions can be published through the AWS Data Exchange+ -- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+ -- Marketplace Catalog API action. When using the API, revisions are+ -- uniquely identified by their ARN.+ finalized :: Prelude.Maybe Prelude.Bool,+ -- | The unique identifier for the revision.+ id :: Prelude.Maybe Prelude.Text,+ -- | A required comment to inform subscribers of the reason their access to+ -- the revision was revoked.+ revocationComment :: Prelude.Maybe Prelude.Text,+ -- | A status indicating that subscribers\' access to the revision was+ -- revoked.+ revoked :: Prelude.Maybe Prelude.Bool,+ -- | The date and time that the revision was revoked, in ISO 8601 format.+ revokedAt :: Prelude.Maybe Data.ISO8601,+ -- | The revision ID of the owned revision corresponding to the entitled+ -- revision being viewed. This parameter is returned when a revision owner+ -- is viewing the entitled copy of its owned revision.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The tags for the revision.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The date and time that the revision was last updated, in ISO 8601+ -- format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateRevisionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createRevisionResponse_arn' - The ARN for the revision.+--+-- 'comment', 'createRevisionResponse_comment' - An optional comment about the revision.+--+-- 'createdAt', 'createRevisionResponse_createdAt' - The date and time that the revision was created, in ISO 8601 format.+--+-- 'dataSetId', 'createRevisionResponse_dataSetId' - The unique identifier for the data set associated with the data set+-- revision.+--+-- 'finalized', 'createRevisionResponse_finalized' - To publish a revision to a data set in a product, the revision must+-- first be finalized. Finalizing a revision tells AWS Data Exchange that+-- your changes to the assets in the revision are complete. After it\'s in+-- this read-only state, you can publish the revision to your products.+-- Finalized revisions can be published through the AWS Data Exchange+-- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+-- Marketplace Catalog API action. When using the API, revisions are+-- uniquely identified by their ARN.+--+-- 'id', 'createRevisionResponse_id' - The unique identifier for the revision.+--+-- 'revocationComment', 'createRevisionResponse_revocationComment' - A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+--+-- 'revoked', 'createRevisionResponse_revoked' - A status indicating that subscribers\' access to the revision was+-- revoked.+--+-- 'revokedAt', 'createRevisionResponse_revokedAt' - The date and time that the revision was revoked, in ISO 8601 format.+--+-- 'sourceId', 'createRevisionResponse_sourceId' - The revision ID of the owned revision corresponding to the entitled+-- revision being viewed. This parameter is returned when a revision owner+-- is viewing the entitled copy of its owned revision.+--+-- 'tags', 'createRevisionResponse_tags' - The tags for the revision.+--+-- 'updatedAt', 'createRevisionResponse_updatedAt' - The date and time that the revision was last updated, in ISO 8601+-- format.+--+-- 'httpStatus', 'createRevisionResponse_httpStatus' - The response's http status code.+newCreateRevisionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateRevisionResponse+newCreateRevisionResponse pHttpStatus_ =+ CreateRevisionResponse'+ { arn = Prelude.Nothing,+ comment = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ dataSetId = Prelude.Nothing,+ finalized = Prelude.Nothing,+ id = Prelude.Nothing,+ revocationComment = Prelude.Nothing,+ revoked = Prelude.Nothing,+ revokedAt = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ tags = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the revision.+createRevisionResponse_arn :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.Text)+createRevisionResponse_arn = Lens.lens (\CreateRevisionResponse' {arn} -> arn) (\s@CreateRevisionResponse' {} a -> s {arn = a} :: CreateRevisionResponse)++-- | An optional comment about the revision.+createRevisionResponse_comment :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.Text)+createRevisionResponse_comment = Lens.lens (\CreateRevisionResponse' {comment} -> comment) (\s@CreateRevisionResponse' {} a -> s {comment = a} :: CreateRevisionResponse)++-- | The date and time that the revision was created, in ISO 8601 format.+createRevisionResponse_createdAt :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.UTCTime)+createRevisionResponse_createdAt = Lens.lens (\CreateRevisionResponse' {createdAt} -> createdAt) (\s@CreateRevisionResponse' {} a -> s {createdAt = a} :: CreateRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier for the data set associated with the data set+-- revision.+createRevisionResponse_dataSetId :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.Text)+createRevisionResponse_dataSetId = Lens.lens (\CreateRevisionResponse' {dataSetId} -> dataSetId) (\s@CreateRevisionResponse' {} a -> s {dataSetId = a} :: CreateRevisionResponse)++-- | To publish a revision to a data set in a product, the revision must+-- first be finalized. Finalizing a revision tells AWS Data Exchange that+-- your changes to the assets in the revision are complete. After it\'s in+-- this read-only state, you can publish the revision to your products.+-- Finalized revisions can be published through the AWS Data Exchange+-- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+-- Marketplace Catalog API action. When using the API, revisions are+-- uniquely identified by their ARN.+createRevisionResponse_finalized :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.Bool)+createRevisionResponse_finalized = Lens.lens (\CreateRevisionResponse' {finalized} -> finalized) (\s@CreateRevisionResponse' {} a -> s {finalized = a} :: CreateRevisionResponse)++-- | The unique identifier for the revision.+createRevisionResponse_id :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.Text)+createRevisionResponse_id = Lens.lens (\CreateRevisionResponse' {id} -> id) (\s@CreateRevisionResponse' {} a -> s {id = a} :: CreateRevisionResponse)++-- | A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+createRevisionResponse_revocationComment :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.Text)+createRevisionResponse_revocationComment = Lens.lens (\CreateRevisionResponse' {revocationComment} -> revocationComment) (\s@CreateRevisionResponse' {} a -> s {revocationComment = a} :: CreateRevisionResponse)++-- | A status indicating that subscribers\' access to the revision was+-- revoked.+createRevisionResponse_revoked :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.Bool)+createRevisionResponse_revoked = Lens.lens (\CreateRevisionResponse' {revoked} -> revoked) (\s@CreateRevisionResponse' {} a -> s {revoked = a} :: CreateRevisionResponse)++-- | The date and time that the revision was revoked, in ISO 8601 format.+createRevisionResponse_revokedAt :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.UTCTime)+createRevisionResponse_revokedAt = Lens.lens (\CreateRevisionResponse' {revokedAt} -> revokedAt) (\s@CreateRevisionResponse' {} a -> s {revokedAt = a} :: CreateRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The revision ID of the owned revision corresponding to the entitled+-- revision being viewed. This parameter is returned when a revision owner+-- is viewing the entitled copy of its owned revision.+createRevisionResponse_sourceId :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.Text)+createRevisionResponse_sourceId = Lens.lens (\CreateRevisionResponse' {sourceId} -> sourceId) (\s@CreateRevisionResponse' {} a -> s {sourceId = a} :: CreateRevisionResponse)++-- | The tags for the revision.+createRevisionResponse_tags :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createRevisionResponse_tags = Lens.lens (\CreateRevisionResponse' {tags} -> tags) (\s@CreateRevisionResponse' {} a -> s {tags = a} :: CreateRevisionResponse) Prelude.. Lens.mapping Lens.coerced++-- | The date and time that the revision was last updated, in ISO 8601+-- format.+createRevisionResponse_updatedAt :: Lens.Lens' CreateRevisionResponse (Prelude.Maybe Prelude.UTCTime)+createRevisionResponse_updatedAt = Lens.lens (\CreateRevisionResponse' {updatedAt} -> updatedAt) (\s@CreateRevisionResponse' {} a -> s {updatedAt = a} :: CreateRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+createRevisionResponse_httpStatus :: Lens.Lens' CreateRevisionResponse Prelude.Int+createRevisionResponse_httpStatus = Lens.lens (\CreateRevisionResponse' {httpStatus} -> httpStatus) (\s@CreateRevisionResponse' {} a -> s {httpStatus = a} :: CreateRevisionResponse)++instance Prelude.NFData CreateRevisionResponse where+ rnf CreateRevisionResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf comment+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf finalized+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf revocationComment+ `Prelude.seq` Prelude.rnf revoked+ `Prelude.seq` Prelude.rnf revokedAt+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/DeleteAsset.hs view
@@ -0,0 +1,158 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.DeleteAsset+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation deletes an asset.+module Amazonka.DataExchange.DeleteAsset+ ( -- * Creating a Request+ DeleteAsset (..),+ newDeleteAsset,++ -- * Request Lenses+ deleteAsset_assetId,+ deleteAsset_dataSetId,+ deleteAsset_revisionId,++ -- * Destructuring the Response+ DeleteAssetResponse (..),+ newDeleteAssetResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteAsset' smart constructor.+data DeleteAsset = DeleteAsset'+ { -- | The unique identifier for an asset.+ assetId :: Prelude.Text,+ -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for a revision.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetId', 'deleteAsset_assetId' - The unique identifier for an asset.+--+-- 'dataSetId', 'deleteAsset_dataSetId' - The unique identifier for a data set.+--+-- 'revisionId', 'deleteAsset_revisionId' - The unique identifier for a revision.+newDeleteAsset ::+ -- | 'assetId'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ DeleteAsset+newDeleteAsset pAssetId_ pDataSetId_ pRevisionId_ =+ DeleteAsset'+ { assetId = pAssetId_,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | The unique identifier for an asset.+deleteAsset_assetId :: Lens.Lens' DeleteAsset Prelude.Text+deleteAsset_assetId = Lens.lens (\DeleteAsset' {assetId} -> assetId) (\s@DeleteAsset' {} a -> s {assetId = a} :: DeleteAsset)++-- | The unique identifier for a data set.+deleteAsset_dataSetId :: Lens.Lens' DeleteAsset Prelude.Text+deleteAsset_dataSetId = Lens.lens (\DeleteAsset' {dataSetId} -> dataSetId) (\s@DeleteAsset' {} a -> s {dataSetId = a} :: DeleteAsset)++-- | The unique identifier for a revision.+deleteAsset_revisionId :: Lens.Lens' DeleteAsset Prelude.Text+deleteAsset_revisionId = Lens.lens (\DeleteAsset' {revisionId} -> revisionId) (\s@DeleteAsset' {} a -> s {revisionId = a} :: DeleteAsset)++instance Core.AWSRequest DeleteAsset where+ type AWSResponse DeleteAsset = DeleteAssetResponse+ request overrides =+ Request.delete (overrides defaultService)+ response = Response.receiveNull DeleteAssetResponse'++instance Prelude.Hashable DeleteAsset where+ hashWithSalt _salt DeleteAsset' {..} =+ _salt+ `Prelude.hashWithSalt` assetId+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance Prelude.NFData DeleteAsset where+ rnf DeleteAsset' {..} =+ Prelude.rnf assetId+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToHeaders DeleteAsset where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteAsset where+ toPath DeleteAsset' {..} =+ Prelude.mconcat+ [ "/v1/data-sets/",+ Data.toBS dataSetId,+ "/revisions/",+ Data.toBS revisionId,+ "/assets/",+ Data.toBS assetId+ ]++instance Data.ToQuery DeleteAsset where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteAssetResponse' smart constructor.+data DeleteAssetResponse = DeleteAssetResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteAssetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteAssetResponse ::+ DeleteAssetResponse+newDeleteAssetResponse = DeleteAssetResponse'++instance Prelude.NFData DeleteAssetResponse where+ rnf _ = ()
+ gen/Amazonka/DataExchange/DeleteDataSet.hs view
@@ -0,0 +1,123 @@+{-# 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.DataExchange.DeleteDataSet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation deletes a data set.+module Amazonka.DataExchange.DeleteDataSet+ ( -- * Creating a Request+ DeleteDataSet (..),+ newDeleteDataSet,++ -- * Request Lenses+ deleteDataSet_dataSetId,++ -- * Destructuring the Response+ DeleteDataSetResponse (..),+ newDeleteDataSetResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteDataSet' smart constructor.+data DeleteDataSet = DeleteDataSet'+ { -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDataSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSetId', 'deleteDataSet_dataSetId' - The unique identifier for a data set.+newDeleteDataSet ::+ -- | 'dataSetId'+ Prelude.Text ->+ DeleteDataSet+newDeleteDataSet pDataSetId_ =+ DeleteDataSet' {dataSetId = pDataSetId_}++-- | The unique identifier for a data set.+deleteDataSet_dataSetId :: Lens.Lens' DeleteDataSet Prelude.Text+deleteDataSet_dataSetId = Lens.lens (\DeleteDataSet' {dataSetId} -> dataSetId) (\s@DeleteDataSet' {} a -> s {dataSetId = a} :: DeleteDataSet)++instance Core.AWSRequest DeleteDataSet where+ type+ AWSResponse DeleteDataSet =+ DeleteDataSetResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveNull DeleteDataSetResponse'++instance Prelude.Hashable DeleteDataSet where+ hashWithSalt _salt DeleteDataSet' {..} =+ _salt `Prelude.hashWithSalt` dataSetId++instance Prelude.NFData DeleteDataSet where+ rnf DeleteDataSet' {..} = Prelude.rnf dataSetId++instance Data.ToHeaders DeleteDataSet where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteDataSet where+ toPath DeleteDataSet' {..} =+ Prelude.mconcat+ ["/v1/data-sets/", Data.toBS dataSetId]++instance Data.ToQuery DeleteDataSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteDataSetResponse' smart constructor.+data DeleteDataSetResponse = DeleteDataSetResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDataSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteDataSetResponse ::+ DeleteDataSetResponse+newDeleteDataSetResponse = DeleteDataSetResponse'++instance Prelude.NFData DeleteDataSetResponse where+ rnf _ = ()
+ gen/Amazonka/DataExchange/DeleteEventAction.hs view
@@ -0,0 +1,125 @@+{-# 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.DataExchange.DeleteEventAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation deletes the event action.+module Amazonka.DataExchange.DeleteEventAction+ ( -- * Creating a Request+ DeleteEventAction (..),+ newDeleteEventAction,++ -- * Request Lenses+ deleteEventAction_eventActionId,++ -- * Destructuring the Response+ DeleteEventActionResponse (..),+ newDeleteEventActionResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteEventAction' smart constructor.+data DeleteEventAction = DeleteEventAction'+ { -- | The unique identifier for the event action.+ eventActionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEventAction' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventActionId', 'deleteEventAction_eventActionId' - The unique identifier for the event action.+newDeleteEventAction ::+ -- | 'eventActionId'+ Prelude.Text ->+ DeleteEventAction+newDeleteEventAction pEventActionId_ =+ DeleteEventAction' {eventActionId = pEventActionId_}++-- | The unique identifier for the event action.+deleteEventAction_eventActionId :: Lens.Lens' DeleteEventAction Prelude.Text+deleteEventAction_eventActionId = Lens.lens (\DeleteEventAction' {eventActionId} -> eventActionId) (\s@DeleteEventAction' {} a -> s {eventActionId = a} :: DeleteEventAction)++instance Core.AWSRequest DeleteEventAction where+ type+ AWSResponse DeleteEventAction =+ DeleteEventActionResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveNull DeleteEventActionResponse'++instance Prelude.Hashable DeleteEventAction where+ hashWithSalt _salt DeleteEventAction' {..} =+ _salt `Prelude.hashWithSalt` eventActionId++instance Prelude.NFData DeleteEventAction where+ rnf DeleteEventAction' {..} =+ Prelude.rnf eventActionId++instance Data.ToHeaders DeleteEventAction where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteEventAction where+ toPath DeleteEventAction' {..} =+ Prelude.mconcat+ ["/v1/event-actions/", Data.toBS eventActionId]++instance Data.ToQuery DeleteEventAction where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteEventActionResponse' smart constructor.+data DeleteEventActionResponse = DeleteEventActionResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEventActionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteEventActionResponse ::+ DeleteEventActionResponse+newDeleteEventActionResponse =+ DeleteEventActionResponse'++instance Prelude.NFData DeleteEventActionResponse where+ rnf _ = ()
+ gen/Amazonka/DataExchange/DeleteRevision.hs view
@@ -0,0 +1,145 @@+{-# 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.DataExchange.DeleteRevision+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation deletes a revision.+module Amazonka.DataExchange.DeleteRevision+ ( -- * Creating a Request+ DeleteRevision (..),+ newDeleteRevision,++ -- * Request Lenses+ deleteRevision_dataSetId,+ deleteRevision_revisionId,++ -- * Destructuring the Response+ DeleteRevisionResponse (..),+ newDeleteRevisionResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteRevision' smart constructor.+data DeleteRevision = DeleteRevision'+ { -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for a revision.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRevision' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSetId', 'deleteRevision_dataSetId' - The unique identifier for a data set.+--+-- 'revisionId', 'deleteRevision_revisionId' - The unique identifier for a revision.+newDeleteRevision ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ DeleteRevision+newDeleteRevision pDataSetId_ pRevisionId_ =+ DeleteRevision'+ { dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | The unique identifier for a data set.+deleteRevision_dataSetId :: Lens.Lens' DeleteRevision Prelude.Text+deleteRevision_dataSetId = Lens.lens (\DeleteRevision' {dataSetId} -> dataSetId) (\s@DeleteRevision' {} a -> s {dataSetId = a} :: DeleteRevision)++-- | The unique identifier for a revision.+deleteRevision_revisionId :: Lens.Lens' DeleteRevision Prelude.Text+deleteRevision_revisionId = Lens.lens (\DeleteRevision' {revisionId} -> revisionId) (\s@DeleteRevision' {} a -> s {revisionId = a} :: DeleteRevision)++instance Core.AWSRequest DeleteRevision where+ type+ AWSResponse DeleteRevision =+ DeleteRevisionResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveNull DeleteRevisionResponse'++instance Prelude.Hashable DeleteRevision where+ hashWithSalt _salt DeleteRevision' {..} =+ _salt+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance Prelude.NFData DeleteRevision where+ rnf DeleteRevision' {..} =+ Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToHeaders DeleteRevision where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteRevision where+ toPath DeleteRevision' {..} =+ Prelude.mconcat+ [ "/v1/data-sets/",+ Data.toBS dataSetId,+ "/revisions/",+ Data.toBS revisionId+ ]++instance Data.ToQuery DeleteRevision where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteRevisionResponse' smart constructor.+data DeleteRevisionResponse = DeleteRevisionResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRevisionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteRevisionResponse ::+ DeleteRevisionResponse+newDeleteRevisionResponse = DeleteRevisionResponse'++instance Prelude.NFData DeleteRevisionResponse where+ rnf _ = ()
+ gen/Amazonka/DataExchange/GetAsset.hs view
@@ -0,0 +1,329 @@+{-# 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.DataExchange.GetAsset+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation returns information about an asset.+module Amazonka.DataExchange.GetAsset+ ( -- * Creating a Request+ GetAsset (..),+ newGetAsset,++ -- * Request Lenses+ getAsset_assetId,+ getAsset_dataSetId,+ getAsset_revisionId,++ -- * Destructuring the Response+ GetAssetResponse (..),+ newGetAssetResponse,++ -- * Response Lenses+ getAssetResponse_arn,+ getAssetResponse_assetDetails,+ getAssetResponse_assetType,+ getAssetResponse_createdAt,+ getAssetResponse_dataSetId,+ getAssetResponse_id,+ getAssetResponse_name,+ getAssetResponse_revisionId,+ getAssetResponse_sourceId,+ getAssetResponse_updatedAt,+ getAssetResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetAsset' smart constructor.+data GetAsset = GetAsset'+ { -- | The unique identifier for an asset.+ assetId :: Prelude.Text,+ -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for a revision.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetId', 'getAsset_assetId' - The unique identifier for an asset.+--+-- 'dataSetId', 'getAsset_dataSetId' - The unique identifier for a data set.+--+-- 'revisionId', 'getAsset_revisionId' - The unique identifier for a revision.+newGetAsset ::+ -- | 'assetId'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ GetAsset+newGetAsset pAssetId_ pDataSetId_ pRevisionId_ =+ GetAsset'+ { assetId = pAssetId_,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | The unique identifier for an asset.+getAsset_assetId :: Lens.Lens' GetAsset Prelude.Text+getAsset_assetId = Lens.lens (\GetAsset' {assetId} -> assetId) (\s@GetAsset' {} a -> s {assetId = a} :: GetAsset)++-- | The unique identifier for a data set.+getAsset_dataSetId :: Lens.Lens' GetAsset Prelude.Text+getAsset_dataSetId = Lens.lens (\GetAsset' {dataSetId} -> dataSetId) (\s@GetAsset' {} a -> s {dataSetId = a} :: GetAsset)++-- | The unique identifier for a revision.+getAsset_revisionId :: Lens.Lens' GetAsset Prelude.Text+getAsset_revisionId = Lens.lens (\GetAsset' {revisionId} -> revisionId) (\s@GetAsset' {} a -> s {revisionId = a} :: GetAsset)++instance Core.AWSRequest GetAsset where+ type AWSResponse GetAsset = GetAssetResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetAssetResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "AssetDetails")+ Prelude.<*> (x Data..?> "AssetType")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "DataSetId")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "RevisionId")+ Prelude.<*> (x Data..?> "SourceId")+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetAsset where+ hashWithSalt _salt GetAsset' {..} =+ _salt+ `Prelude.hashWithSalt` assetId+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance Prelude.NFData GetAsset where+ rnf GetAsset' {..} =+ Prelude.rnf assetId+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToHeaders GetAsset where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetAsset where+ toPath GetAsset' {..} =+ Prelude.mconcat+ [ "/v1/data-sets/",+ Data.toBS dataSetId,+ "/revisions/",+ Data.toBS revisionId,+ "/assets/",+ Data.toBS assetId+ ]++instance Data.ToQuery GetAsset where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetAssetResponse' smart constructor.+data GetAssetResponse = GetAssetResponse'+ { -- | The ARN for the asset.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Details about the asset.+ assetDetails :: Prelude.Maybe AssetDetails,+ -- | The type of asset that is added to a data set.+ assetType :: Prelude.Maybe AssetType,+ -- | The date and time that the asset was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | The unique identifier for the data set associated with this asset.+ dataSetId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the asset.+ id :: Prelude.Maybe Prelude.Text,+ -- | The name of the asset. When importing from Amazon S3, the Amazon S3+ -- object key is used as the asset name. When exporting to Amazon S3, the+ -- asset name is used as default target Amazon S3 object key. When+ -- importing from Amazon API Gateway API, the API name is used as the asset+ -- name. When importing from Amazon Redshift, the datashare name is used as+ -- the asset name. When importing from AWS Lake Formation, the static+ -- values of \"Database(s) included in the LF-tag policy\" or \"Table(s)+ -- included in the LF-tag policy\" are used as the asset name.+ name :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the revision associated with this asset.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The asset ID of the owned asset corresponding to the entitled asset+ -- being viewed. This parameter is returned when an asset owner is viewing+ -- the entitled copy of its owned asset.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the asset was last updated, in ISO 8601 format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAssetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'getAssetResponse_arn' - The ARN for the asset.+--+-- 'assetDetails', 'getAssetResponse_assetDetails' - Details about the asset.+--+-- 'assetType', 'getAssetResponse_assetType' - The type of asset that is added to a data set.+--+-- 'createdAt', 'getAssetResponse_createdAt' - The date and time that the asset was created, in ISO 8601 format.+--+-- 'dataSetId', 'getAssetResponse_dataSetId' - The unique identifier for the data set associated with this asset.+--+-- 'id', 'getAssetResponse_id' - The unique identifier for the asset.+--+-- 'name', 'getAssetResponse_name' - The name of the asset. When importing from Amazon S3, the Amazon S3+-- object key is used as the asset name. When exporting to Amazon S3, the+-- asset name is used as default target Amazon S3 object key. When+-- importing from Amazon API Gateway API, the API name is used as the asset+-- name. When importing from Amazon Redshift, the datashare name is used as+-- the asset name. When importing from AWS Lake Formation, the static+-- values of \"Database(s) included in the LF-tag policy\" or \"Table(s)+-- included in the LF-tag policy\" are used as the asset name.+--+-- 'revisionId', 'getAssetResponse_revisionId' - The unique identifier for the revision associated with this asset.+--+-- 'sourceId', 'getAssetResponse_sourceId' - The asset ID of the owned asset corresponding to the entitled asset+-- being viewed. This parameter is returned when an asset owner is viewing+-- the entitled copy of its owned asset.+--+-- 'updatedAt', 'getAssetResponse_updatedAt' - The date and time that the asset was last updated, in ISO 8601 format.+--+-- 'httpStatus', 'getAssetResponse_httpStatus' - The response's http status code.+newGetAssetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetAssetResponse+newGetAssetResponse pHttpStatus_ =+ GetAssetResponse'+ { arn = Prelude.Nothing,+ assetDetails = Prelude.Nothing,+ assetType = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ dataSetId = Prelude.Nothing,+ id = Prelude.Nothing,+ name = Prelude.Nothing,+ revisionId = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the asset.+getAssetResponse_arn :: Lens.Lens' GetAssetResponse (Prelude.Maybe Prelude.Text)+getAssetResponse_arn = Lens.lens (\GetAssetResponse' {arn} -> arn) (\s@GetAssetResponse' {} a -> s {arn = a} :: GetAssetResponse)++-- | Details about the asset.+getAssetResponse_assetDetails :: Lens.Lens' GetAssetResponse (Prelude.Maybe AssetDetails)+getAssetResponse_assetDetails = Lens.lens (\GetAssetResponse' {assetDetails} -> assetDetails) (\s@GetAssetResponse' {} a -> s {assetDetails = a} :: GetAssetResponse)++-- | The type of asset that is added to a data set.+getAssetResponse_assetType :: Lens.Lens' GetAssetResponse (Prelude.Maybe AssetType)+getAssetResponse_assetType = Lens.lens (\GetAssetResponse' {assetType} -> assetType) (\s@GetAssetResponse' {} a -> s {assetType = a} :: GetAssetResponse)++-- | The date and time that the asset was created, in ISO 8601 format.+getAssetResponse_createdAt :: Lens.Lens' GetAssetResponse (Prelude.Maybe Prelude.UTCTime)+getAssetResponse_createdAt = Lens.lens (\GetAssetResponse' {createdAt} -> createdAt) (\s@GetAssetResponse' {} a -> s {createdAt = a} :: GetAssetResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier for the data set associated with this asset.+getAssetResponse_dataSetId :: Lens.Lens' GetAssetResponse (Prelude.Maybe Prelude.Text)+getAssetResponse_dataSetId = Lens.lens (\GetAssetResponse' {dataSetId} -> dataSetId) (\s@GetAssetResponse' {} a -> s {dataSetId = a} :: GetAssetResponse)++-- | The unique identifier for the asset.+getAssetResponse_id :: Lens.Lens' GetAssetResponse (Prelude.Maybe Prelude.Text)+getAssetResponse_id = Lens.lens (\GetAssetResponse' {id} -> id) (\s@GetAssetResponse' {} a -> s {id = a} :: GetAssetResponse)++-- | The name of the asset. When importing from Amazon S3, the Amazon S3+-- object key is used as the asset name. When exporting to Amazon S3, the+-- asset name is used as default target Amazon S3 object key. When+-- importing from Amazon API Gateway API, the API name is used as the asset+-- name. When importing from Amazon Redshift, the datashare name is used as+-- the asset name. When importing from AWS Lake Formation, the static+-- values of \"Database(s) included in the LF-tag policy\" or \"Table(s)+-- included in the LF-tag policy\" are used as the asset name.+getAssetResponse_name :: Lens.Lens' GetAssetResponse (Prelude.Maybe Prelude.Text)+getAssetResponse_name = Lens.lens (\GetAssetResponse' {name} -> name) (\s@GetAssetResponse' {} a -> s {name = a} :: GetAssetResponse)++-- | The unique identifier for the revision associated with this asset.+getAssetResponse_revisionId :: Lens.Lens' GetAssetResponse (Prelude.Maybe Prelude.Text)+getAssetResponse_revisionId = Lens.lens (\GetAssetResponse' {revisionId} -> revisionId) (\s@GetAssetResponse' {} a -> s {revisionId = a} :: GetAssetResponse)++-- | The asset ID of the owned asset corresponding to the entitled asset+-- being viewed. This parameter is returned when an asset owner is viewing+-- the entitled copy of its owned asset.+getAssetResponse_sourceId :: Lens.Lens' GetAssetResponse (Prelude.Maybe Prelude.Text)+getAssetResponse_sourceId = Lens.lens (\GetAssetResponse' {sourceId} -> sourceId) (\s@GetAssetResponse' {} a -> s {sourceId = a} :: GetAssetResponse)++-- | The date and time that the asset was last updated, in ISO 8601 format.+getAssetResponse_updatedAt :: Lens.Lens' GetAssetResponse (Prelude.Maybe Prelude.UTCTime)+getAssetResponse_updatedAt = Lens.lens (\GetAssetResponse' {updatedAt} -> updatedAt) (\s@GetAssetResponse' {} a -> s {updatedAt = a} :: GetAssetResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+getAssetResponse_httpStatus :: Lens.Lens' GetAssetResponse Prelude.Int+getAssetResponse_httpStatus = Lens.lens (\GetAssetResponse' {httpStatus} -> httpStatus) (\s@GetAssetResponse' {} a -> s {httpStatus = a} :: GetAssetResponse)++instance Prelude.NFData GetAssetResponse where+ rnf GetAssetResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf assetDetails+ `Prelude.seq` Prelude.rnf assetType+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/GetDataSet.hs view
@@ -0,0 +1,291 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.GetDataSet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation returns information about a data set.+module Amazonka.DataExchange.GetDataSet+ ( -- * Creating a Request+ GetDataSet (..),+ newGetDataSet,++ -- * Request Lenses+ getDataSet_dataSetId,++ -- * Destructuring the Response+ GetDataSetResponse (..),+ newGetDataSetResponse,++ -- * Response Lenses+ getDataSetResponse_arn,+ getDataSetResponse_assetType,+ getDataSetResponse_createdAt,+ getDataSetResponse_description,+ getDataSetResponse_id,+ getDataSetResponse_name,+ getDataSetResponse_origin,+ getDataSetResponse_originDetails,+ getDataSetResponse_sourceId,+ getDataSetResponse_tags,+ getDataSetResponse_updatedAt,+ getDataSetResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetDataSet' smart constructor.+data GetDataSet = GetDataSet'+ { -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDataSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSetId', 'getDataSet_dataSetId' - The unique identifier for a data set.+newGetDataSet ::+ -- | 'dataSetId'+ Prelude.Text ->+ GetDataSet+newGetDataSet pDataSetId_ =+ GetDataSet' {dataSetId = pDataSetId_}++-- | The unique identifier for a data set.+getDataSet_dataSetId :: Lens.Lens' GetDataSet Prelude.Text+getDataSet_dataSetId = Lens.lens (\GetDataSet' {dataSetId} -> dataSetId) (\s@GetDataSet' {} a -> s {dataSetId = a} :: GetDataSet)++instance Core.AWSRequest GetDataSet where+ type AWSResponse GetDataSet = GetDataSetResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetDataSetResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "AssetType")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "Description")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "Origin")+ Prelude.<*> (x Data..?> "OriginDetails")+ Prelude.<*> (x Data..?> "SourceId")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetDataSet where+ hashWithSalt _salt GetDataSet' {..} =+ _salt `Prelude.hashWithSalt` dataSetId++instance Prelude.NFData GetDataSet where+ rnf GetDataSet' {..} = Prelude.rnf dataSetId++instance Data.ToHeaders GetDataSet where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetDataSet where+ toPath GetDataSet' {..} =+ Prelude.mconcat+ ["/v1/data-sets/", Data.toBS dataSetId]++instance Data.ToQuery GetDataSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetDataSetResponse' smart constructor.+data GetDataSetResponse = GetDataSetResponse'+ { -- | The ARN for the data set.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The type of asset that is added to a data set.+ assetType :: Prelude.Maybe AssetType,+ -- | The date and time that the data set was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | The description for the data set.+ description :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the data set.+ id :: Prelude.Maybe Prelude.Text,+ -- | The name of the data set.+ name :: Prelude.Maybe Prelude.Text,+ -- | A property that defines the data set as OWNED by the account (for+ -- providers) or ENTITLED to the account (for subscribers).+ origin :: Prelude.Maybe Origin,+ -- | If the origin of this data set is ENTITLED, includes the details for the+ -- product on AWS Marketplace.+ originDetails :: Prelude.Maybe OriginDetails,+ -- | The data set ID of the owned data set corresponding to the entitled data+ -- set being viewed. This parameter is returned when a data set owner is+ -- viewing the entitled copy of its owned data set.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The tags for the data set.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The date and time that the data set was last updated, in ISO 8601+ -- format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDataSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'getDataSetResponse_arn' - The ARN for the data set.+--+-- 'assetType', 'getDataSetResponse_assetType' - The type of asset that is added to a data set.+--+-- 'createdAt', 'getDataSetResponse_createdAt' - The date and time that the data set was created, in ISO 8601 format.+--+-- 'description', 'getDataSetResponse_description' - The description for the data set.+--+-- 'id', 'getDataSetResponse_id' - The unique identifier for the data set.+--+-- 'name', 'getDataSetResponse_name' - The name of the data set.+--+-- 'origin', 'getDataSetResponse_origin' - A property that defines the data set as OWNED by the account (for+-- providers) or ENTITLED to the account (for subscribers).+--+-- 'originDetails', 'getDataSetResponse_originDetails' - If the origin of this data set is ENTITLED, includes the details for the+-- product on AWS Marketplace.+--+-- 'sourceId', 'getDataSetResponse_sourceId' - The data set ID of the owned data set corresponding to the entitled data+-- set being viewed. This parameter is returned when a data set owner is+-- viewing the entitled copy of its owned data set.+--+-- 'tags', 'getDataSetResponse_tags' - The tags for the data set.+--+-- 'updatedAt', 'getDataSetResponse_updatedAt' - The date and time that the data set was last updated, in ISO 8601+-- format.+--+-- 'httpStatus', 'getDataSetResponse_httpStatus' - The response's http status code.+newGetDataSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetDataSetResponse+newGetDataSetResponse pHttpStatus_ =+ GetDataSetResponse'+ { arn = Prelude.Nothing,+ assetType = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ description = Prelude.Nothing,+ id = Prelude.Nothing,+ name = Prelude.Nothing,+ origin = Prelude.Nothing,+ originDetails = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ tags = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the data set.+getDataSetResponse_arn :: Lens.Lens' GetDataSetResponse (Prelude.Maybe Prelude.Text)+getDataSetResponse_arn = Lens.lens (\GetDataSetResponse' {arn} -> arn) (\s@GetDataSetResponse' {} a -> s {arn = a} :: GetDataSetResponse)++-- | The type of asset that is added to a data set.+getDataSetResponse_assetType :: Lens.Lens' GetDataSetResponse (Prelude.Maybe AssetType)+getDataSetResponse_assetType = Lens.lens (\GetDataSetResponse' {assetType} -> assetType) (\s@GetDataSetResponse' {} a -> s {assetType = a} :: GetDataSetResponse)++-- | The date and time that the data set was created, in ISO 8601 format.+getDataSetResponse_createdAt :: Lens.Lens' GetDataSetResponse (Prelude.Maybe Prelude.UTCTime)+getDataSetResponse_createdAt = Lens.lens (\GetDataSetResponse' {createdAt} -> createdAt) (\s@GetDataSetResponse' {} a -> s {createdAt = a} :: GetDataSetResponse) Prelude.. Lens.mapping Data._Time++-- | The description for the data set.+getDataSetResponse_description :: Lens.Lens' GetDataSetResponse (Prelude.Maybe Prelude.Text)+getDataSetResponse_description = Lens.lens (\GetDataSetResponse' {description} -> description) (\s@GetDataSetResponse' {} a -> s {description = a} :: GetDataSetResponse)++-- | The unique identifier for the data set.+getDataSetResponse_id :: Lens.Lens' GetDataSetResponse (Prelude.Maybe Prelude.Text)+getDataSetResponse_id = Lens.lens (\GetDataSetResponse' {id} -> id) (\s@GetDataSetResponse' {} a -> s {id = a} :: GetDataSetResponse)++-- | The name of the data set.+getDataSetResponse_name :: Lens.Lens' GetDataSetResponse (Prelude.Maybe Prelude.Text)+getDataSetResponse_name = Lens.lens (\GetDataSetResponse' {name} -> name) (\s@GetDataSetResponse' {} a -> s {name = a} :: GetDataSetResponse)++-- | A property that defines the data set as OWNED by the account (for+-- providers) or ENTITLED to the account (for subscribers).+getDataSetResponse_origin :: Lens.Lens' GetDataSetResponse (Prelude.Maybe Origin)+getDataSetResponse_origin = Lens.lens (\GetDataSetResponse' {origin} -> origin) (\s@GetDataSetResponse' {} a -> s {origin = a} :: GetDataSetResponse)++-- | If the origin of this data set is ENTITLED, includes the details for the+-- product on AWS Marketplace.+getDataSetResponse_originDetails :: Lens.Lens' GetDataSetResponse (Prelude.Maybe OriginDetails)+getDataSetResponse_originDetails = Lens.lens (\GetDataSetResponse' {originDetails} -> originDetails) (\s@GetDataSetResponse' {} a -> s {originDetails = a} :: GetDataSetResponse)++-- | The data set ID of the owned data set corresponding to the entitled data+-- set being viewed. This parameter is returned when a data set owner is+-- viewing the entitled copy of its owned data set.+getDataSetResponse_sourceId :: Lens.Lens' GetDataSetResponse (Prelude.Maybe Prelude.Text)+getDataSetResponse_sourceId = Lens.lens (\GetDataSetResponse' {sourceId} -> sourceId) (\s@GetDataSetResponse' {} a -> s {sourceId = a} :: GetDataSetResponse)++-- | The tags for the data set.+getDataSetResponse_tags :: Lens.Lens' GetDataSetResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getDataSetResponse_tags = Lens.lens (\GetDataSetResponse' {tags} -> tags) (\s@GetDataSetResponse' {} a -> s {tags = a} :: GetDataSetResponse) Prelude.. Lens.mapping Lens.coerced++-- | The date and time that the data set was last updated, in ISO 8601+-- format.+getDataSetResponse_updatedAt :: Lens.Lens' GetDataSetResponse (Prelude.Maybe Prelude.UTCTime)+getDataSetResponse_updatedAt = Lens.lens (\GetDataSetResponse' {updatedAt} -> updatedAt) (\s@GetDataSetResponse' {} a -> s {updatedAt = a} :: GetDataSetResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+getDataSetResponse_httpStatus :: Lens.Lens' GetDataSetResponse Prelude.Int+getDataSetResponse_httpStatus = Lens.lens (\GetDataSetResponse' {httpStatus} -> httpStatus) (\s@GetDataSetResponse' {} a -> s {httpStatus = a} :: GetDataSetResponse)++instance Prelude.NFData GetDataSetResponse where+ rnf GetDataSetResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf assetType+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf origin+ `Prelude.seq` Prelude.rnf originDetails+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/GetEventAction.hs view
@@ -0,0 +1,221 @@+{-# 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.DataExchange.GetEventAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation retrieves information about an event action.+module Amazonka.DataExchange.GetEventAction+ ( -- * Creating a Request+ GetEventAction (..),+ newGetEventAction,++ -- * Request Lenses+ getEventAction_eventActionId,++ -- * Destructuring the Response+ GetEventActionResponse (..),+ newGetEventActionResponse,++ -- * Response Lenses+ getEventActionResponse_action,+ getEventActionResponse_arn,+ getEventActionResponse_createdAt,+ getEventActionResponse_event,+ getEventActionResponse_id,+ getEventActionResponse_updatedAt,+ getEventActionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetEventAction' smart constructor.+data GetEventAction = GetEventAction'+ { -- | The unique identifier for the event action.+ eventActionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetEventAction' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventActionId', 'getEventAction_eventActionId' - The unique identifier for the event action.+newGetEventAction ::+ -- | 'eventActionId'+ Prelude.Text ->+ GetEventAction+newGetEventAction pEventActionId_ =+ GetEventAction' {eventActionId = pEventActionId_}++-- | The unique identifier for the event action.+getEventAction_eventActionId :: Lens.Lens' GetEventAction Prelude.Text+getEventAction_eventActionId = Lens.lens (\GetEventAction' {eventActionId} -> eventActionId) (\s@GetEventAction' {} a -> s {eventActionId = a} :: GetEventAction)++instance Core.AWSRequest GetEventAction where+ type+ AWSResponse GetEventAction =+ GetEventActionResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetEventActionResponse'+ Prelude.<$> (x Data..?> "Action")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "Event")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetEventAction where+ hashWithSalt _salt GetEventAction' {..} =+ _salt `Prelude.hashWithSalt` eventActionId++instance Prelude.NFData GetEventAction where+ rnf GetEventAction' {..} = Prelude.rnf eventActionId++instance Data.ToHeaders GetEventAction where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetEventAction where+ toPath GetEventAction' {..} =+ Prelude.mconcat+ ["/v1/event-actions/", Data.toBS eventActionId]++instance Data.ToQuery GetEventAction where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetEventActionResponse' smart constructor.+data GetEventActionResponse = GetEventActionResponse'+ { -- | What occurs after a certain event.+ action :: Prelude.Maybe Action,+ -- | The ARN for the event action.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the event action was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | What occurs to start an action.+ event :: Prelude.Maybe Event,+ -- | The unique identifier for the event action.+ id :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the event action was last updated, in ISO 8601+ -- format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetEventActionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'action', 'getEventActionResponse_action' - What occurs after a certain event.+--+-- 'arn', 'getEventActionResponse_arn' - The ARN for the event action.+--+-- 'createdAt', 'getEventActionResponse_createdAt' - The date and time that the event action was created, in ISO 8601 format.+--+-- 'event', 'getEventActionResponse_event' - What occurs to start an action.+--+-- 'id', 'getEventActionResponse_id' - The unique identifier for the event action.+--+-- 'updatedAt', 'getEventActionResponse_updatedAt' - The date and time that the event action was last updated, in ISO 8601+-- format.+--+-- 'httpStatus', 'getEventActionResponse_httpStatus' - The response's http status code.+newGetEventActionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetEventActionResponse+newGetEventActionResponse pHttpStatus_ =+ GetEventActionResponse'+ { action = Prelude.Nothing,+ arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ event = Prelude.Nothing,+ id = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | What occurs after a certain event.+getEventActionResponse_action :: Lens.Lens' GetEventActionResponse (Prelude.Maybe Action)+getEventActionResponse_action = Lens.lens (\GetEventActionResponse' {action} -> action) (\s@GetEventActionResponse' {} a -> s {action = a} :: GetEventActionResponse)++-- | The ARN for the event action.+getEventActionResponse_arn :: Lens.Lens' GetEventActionResponse (Prelude.Maybe Prelude.Text)+getEventActionResponse_arn = Lens.lens (\GetEventActionResponse' {arn} -> arn) (\s@GetEventActionResponse' {} a -> s {arn = a} :: GetEventActionResponse)++-- | The date and time that the event action was created, in ISO 8601 format.+getEventActionResponse_createdAt :: Lens.Lens' GetEventActionResponse (Prelude.Maybe Prelude.UTCTime)+getEventActionResponse_createdAt = Lens.lens (\GetEventActionResponse' {createdAt} -> createdAt) (\s@GetEventActionResponse' {} a -> s {createdAt = a} :: GetEventActionResponse) Prelude.. Lens.mapping Data._Time++-- | What occurs to start an action.+getEventActionResponse_event :: Lens.Lens' GetEventActionResponse (Prelude.Maybe Event)+getEventActionResponse_event = Lens.lens (\GetEventActionResponse' {event} -> event) (\s@GetEventActionResponse' {} a -> s {event = a} :: GetEventActionResponse)++-- | The unique identifier for the event action.+getEventActionResponse_id :: Lens.Lens' GetEventActionResponse (Prelude.Maybe Prelude.Text)+getEventActionResponse_id = Lens.lens (\GetEventActionResponse' {id} -> id) (\s@GetEventActionResponse' {} a -> s {id = a} :: GetEventActionResponse)++-- | The date and time that the event action was last updated, in ISO 8601+-- format.+getEventActionResponse_updatedAt :: Lens.Lens' GetEventActionResponse (Prelude.Maybe Prelude.UTCTime)+getEventActionResponse_updatedAt = Lens.lens (\GetEventActionResponse' {updatedAt} -> updatedAt) (\s@GetEventActionResponse' {} a -> s {updatedAt = a} :: GetEventActionResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+getEventActionResponse_httpStatus :: Lens.Lens' GetEventActionResponse Prelude.Int+getEventActionResponse_httpStatus = Lens.lens (\GetEventActionResponse' {httpStatus} -> httpStatus) (\s@GetEventActionResponse' {} a -> s {httpStatus = a} :: GetEventActionResponse)++instance Prelude.NFData GetEventActionResponse where+ rnf GetEventActionResponse' {..} =+ Prelude.rnf action+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf event+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/GetJob.hs view
@@ -0,0 +1,238 @@+{-# 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.DataExchange.GetJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation returns information about a job.+module Amazonka.DataExchange.GetJob+ ( -- * Creating a Request+ GetJob (..),+ newGetJob,++ -- * Request Lenses+ getJob_jobId,++ -- * Destructuring the Response+ GetJobResponse (..),+ newGetJobResponse,++ -- * Response Lenses+ getJobResponse_arn,+ getJobResponse_createdAt,+ getJobResponse_details,+ getJobResponse_errors,+ getJobResponse_id,+ getJobResponse_state,+ getJobResponse_type,+ getJobResponse_updatedAt,+ getJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetJob' smart constructor.+data GetJob = GetJob'+ { -- | The unique identifier for a job.+ jobId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetJob' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'jobId', 'getJob_jobId' - The unique identifier for a job.+newGetJob ::+ -- | 'jobId'+ Prelude.Text ->+ GetJob+newGetJob pJobId_ = GetJob' {jobId = pJobId_}++-- | The unique identifier for a job.+getJob_jobId :: Lens.Lens' GetJob Prelude.Text+getJob_jobId = Lens.lens (\GetJob' {jobId} -> jobId) (\s@GetJob' {} a -> s {jobId = a} :: GetJob)++instance Core.AWSRequest GetJob where+ type AWSResponse GetJob = GetJobResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetJobResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "Details")+ Prelude.<*> (x Data..?> "Errors" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Type")+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetJob where+ hashWithSalt _salt GetJob' {..} =+ _salt `Prelude.hashWithSalt` jobId++instance Prelude.NFData GetJob where+ rnf GetJob' {..} = Prelude.rnf jobId++instance Data.ToHeaders GetJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetJob where+ toPath GetJob' {..} =+ Prelude.mconcat ["/v1/jobs/", Data.toBS jobId]++instance Data.ToQuery GetJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetJobResponse' smart constructor.+data GetJobResponse = GetJobResponse'+ { -- | The ARN for the job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the job was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | Details about the job.+ details :: Prelude.Maybe ResponseDetails,+ -- | The errors associated with jobs.+ errors :: Prelude.Maybe [JobError],+ -- | The unique identifier for the job.+ id :: Prelude.Maybe Prelude.Text,+ -- | The state of the job.+ state :: Prelude.Maybe State,+ -- | The job type.+ type' :: Prelude.Maybe Type,+ -- | The date and time that the job was last updated, in ISO 8601 format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetJobResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'getJobResponse_arn' - The ARN for the job.+--+-- 'createdAt', 'getJobResponse_createdAt' - The date and time that the job was created, in ISO 8601 format.+--+-- 'details', 'getJobResponse_details' - Details about the job.+--+-- 'errors', 'getJobResponse_errors' - The errors associated with jobs.+--+-- 'id', 'getJobResponse_id' - The unique identifier for the job.+--+-- 'state', 'getJobResponse_state' - The state of the job.+--+-- 'type'', 'getJobResponse_type' - The job type.+--+-- 'updatedAt', 'getJobResponse_updatedAt' - The date and time that the job was last updated, in ISO 8601 format.+--+-- 'httpStatus', 'getJobResponse_httpStatus' - The response's http status code.+newGetJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetJobResponse+newGetJobResponse pHttpStatus_ =+ GetJobResponse'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ details = Prelude.Nothing,+ errors = Prelude.Nothing,+ id = Prelude.Nothing,+ state = Prelude.Nothing,+ type' = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the job.+getJobResponse_arn :: Lens.Lens' GetJobResponse (Prelude.Maybe Prelude.Text)+getJobResponse_arn = Lens.lens (\GetJobResponse' {arn} -> arn) (\s@GetJobResponse' {} a -> s {arn = a} :: GetJobResponse)++-- | The date and time that the job was created, in ISO 8601 format.+getJobResponse_createdAt :: Lens.Lens' GetJobResponse (Prelude.Maybe Prelude.UTCTime)+getJobResponse_createdAt = Lens.lens (\GetJobResponse' {createdAt} -> createdAt) (\s@GetJobResponse' {} a -> s {createdAt = a} :: GetJobResponse) Prelude.. Lens.mapping Data._Time++-- | Details about the job.+getJobResponse_details :: Lens.Lens' GetJobResponse (Prelude.Maybe ResponseDetails)+getJobResponse_details = Lens.lens (\GetJobResponse' {details} -> details) (\s@GetJobResponse' {} a -> s {details = a} :: GetJobResponse)++-- | The errors associated with jobs.+getJobResponse_errors :: Lens.Lens' GetJobResponse (Prelude.Maybe [JobError])+getJobResponse_errors = Lens.lens (\GetJobResponse' {errors} -> errors) (\s@GetJobResponse' {} a -> s {errors = a} :: GetJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier for the job.+getJobResponse_id :: Lens.Lens' GetJobResponse (Prelude.Maybe Prelude.Text)+getJobResponse_id = Lens.lens (\GetJobResponse' {id} -> id) (\s@GetJobResponse' {} a -> s {id = a} :: GetJobResponse)++-- | The state of the job.+getJobResponse_state :: Lens.Lens' GetJobResponse (Prelude.Maybe State)+getJobResponse_state = Lens.lens (\GetJobResponse' {state} -> state) (\s@GetJobResponse' {} a -> s {state = a} :: GetJobResponse)++-- | The job type.+getJobResponse_type :: Lens.Lens' GetJobResponse (Prelude.Maybe Type)+getJobResponse_type = Lens.lens (\GetJobResponse' {type'} -> type') (\s@GetJobResponse' {} a -> s {type' = a} :: GetJobResponse)++-- | The date and time that the job was last updated, in ISO 8601 format.+getJobResponse_updatedAt :: Lens.Lens' GetJobResponse (Prelude.Maybe Prelude.UTCTime)+getJobResponse_updatedAt = Lens.lens (\GetJobResponse' {updatedAt} -> updatedAt) (\s@GetJobResponse' {} a -> s {updatedAt = a} :: GetJobResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+getJobResponse_httpStatus :: Lens.Lens' GetJobResponse Prelude.Int+getJobResponse_httpStatus = Lens.lens (\GetJobResponse' {httpStatus} -> httpStatus) (\s@GetJobResponse' {} a -> s {httpStatus = a} :: GetJobResponse)++instance Prelude.NFData GetJobResponse where+ rnf GetJobResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf details+ `Prelude.seq` Prelude.rnf errors+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf type'+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/GetRevision.hs view
@@ -0,0 +1,349 @@+{-# 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.DataExchange.GetRevision+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation returns information about a revision.+module Amazonka.DataExchange.GetRevision+ ( -- * Creating a Request+ GetRevision (..),+ newGetRevision,++ -- * Request Lenses+ getRevision_dataSetId,+ getRevision_revisionId,++ -- * Destructuring the Response+ GetRevisionResponse (..),+ newGetRevisionResponse,++ -- * Response Lenses+ getRevisionResponse_arn,+ getRevisionResponse_comment,+ getRevisionResponse_createdAt,+ getRevisionResponse_dataSetId,+ getRevisionResponse_finalized,+ getRevisionResponse_id,+ getRevisionResponse_revocationComment,+ getRevisionResponse_revoked,+ getRevisionResponse_revokedAt,+ getRevisionResponse_sourceId,+ getRevisionResponse_tags,+ getRevisionResponse_updatedAt,+ getRevisionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetRevision' smart constructor.+data GetRevision = GetRevision'+ { -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for a revision.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRevision' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSetId', 'getRevision_dataSetId' - The unique identifier for a data set.+--+-- 'revisionId', 'getRevision_revisionId' - The unique identifier for a revision.+newGetRevision ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ GetRevision+newGetRevision pDataSetId_ pRevisionId_ =+ GetRevision'+ { dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | The unique identifier for a data set.+getRevision_dataSetId :: Lens.Lens' GetRevision Prelude.Text+getRevision_dataSetId = Lens.lens (\GetRevision' {dataSetId} -> dataSetId) (\s@GetRevision' {} a -> s {dataSetId = a} :: GetRevision)++-- | The unique identifier for a revision.+getRevision_revisionId :: Lens.Lens' GetRevision Prelude.Text+getRevision_revisionId = Lens.lens (\GetRevision' {revisionId} -> revisionId) (\s@GetRevision' {} a -> s {revisionId = a} :: GetRevision)++instance Core.AWSRequest GetRevision where+ type AWSResponse GetRevision = GetRevisionResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetRevisionResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "Comment")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "DataSetId")+ Prelude.<*> (x Data..?> "Finalized")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "RevocationComment")+ Prelude.<*> (x Data..?> "Revoked")+ Prelude.<*> (x Data..?> "RevokedAt")+ Prelude.<*> (x Data..?> "SourceId")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetRevision where+ hashWithSalt _salt GetRevision' {..} =+ _salt+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance Prelude.NFData GetRevision where+ rnf GetRevision' {..} =+ Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToHeaders GetRevision where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetRevision where+ toPath GetRevision' {..} =+ Prelude.mconcat+ [ "/v1/data-sets/",+ Data.toBS dataSetId,+ "/revisions/",+ Data.toBS revisionId+ ]++instance Data.ToQuery GetRevision where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetRevisionResponse' smart constructor.+data GetRevisionResponse = GetRevisionResponse'+ { -- | The ARN for the revision.+ arn :: Prelude.Maybe Prelude.Text,+ -- | An optional comment about the revision.+ comment :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the revision was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | The unique identifier for the data set associated with the data set+ -- revision.+ dataSetId :: Prelude.Maybe Prelude.Text,+ -- | To publish a revision to a data set in a product, the revision must+ -- first be finalized. Finalizing a revision tells AWS Data Exchange that+ -- your changes to the assets in the revision are complete. After it\'s in+ -- this read-only state, you can publish the revision to your products.+ -- Finalized revisions can be published through the AWS Data Exchange+ -- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+ -- Marketplace Catalog API action. When using the API, revisions are+ -- uniquely identified by their ARN.+ finalized :: Prelude.Maybe Prelude.Bool,+ -- | The unique identifier for the revision.+ id :: Prelude.Maybe Prelude.Text,+ -- | A required comment to inform subscribers of the reason their access to+ -- the revision was revoked.+ revocationComment :: Prelude.Maybe Prelude.Text,+ -- | A status indicating that subscribers\' access to the revision was+ -- revoked.+ revoked :: Prelude.Maybe Prelude.Bool,+ -- | The date and time that the revision was revoked, in ISO 8601 format.+ revokedAt :: Prelude.Maybe Data.ISO8601,+ -- | The revision ID of the owned revision corresponding to the entitled+ -- revision being viewed. This parameter is returned when a revision owner+ -- is viewing the entitled copy of its owned revision.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The tags for the revision.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The date and time that the revision was last updated, in ISO 8601+ -- format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRevisionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'getRevisionResponse_arn' - The ARN for the revision.+--+-- 'comment', 'getRevisionResponse_comment' - An optional comment about the revision.+--+-- 'createdAt', 'getRevisionResponse_createdAt' - The date and time that the revision was created, in ISO 8601 format.+--+-- 'dataSetId', 'getRevisionResponse_dataSetId' - The unique identifier for the data set associated with the data set+-- revision.+--+-- 'finalized', 'getRevisionResponse_finalized' - To publish a revision to a data set in a product, the revision must+-- first be finalized. Finalizing a revision tells AWS Data Exchange that+-- your changes to the assets in the revision are complete. After it\'s in+-- this read-only state, you can publish the revision to your products.+-- Finalized revisions can be published through the AWS Data Exchange+-- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+-- Marketplace Catalog API action. When using the API, revisions are+-- uniquely identified by their ARN.+--+-- 'id', 'getRevisionResponse_id' - The unique identifier for the revision.+--+-- 'revocationComment', 'getRevisionResponse_revocationComment' - A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+--+-- 'revoked', 'getRevisionResponse_revoked' - A status indicating that subscribers\' access to the revision was+-- revoked.+--+-- 'revokedAt', 'getRevisionResponse_revokedAt' - The date and time that the revision was revoked, in ISO 8601 format.+--+-- 'sourceId', 'getRevisionResponse_sourceId' - The revision ID of the owned revision corresponding to the entitled+-- revision being viewed. This parameter is returned when a revision owner+-- is viewing the entitled copy of its owned revision.+--+-- 'tags', 'getRevisionResponse_tags' - The tags for the revision.+--+-- 'updatedAt', 'getRevisionResponse_updatedAt' - The date and time that the revision was last updated, in ISO 8601+-- format.+--+-- 'httpStatus', 'getRevisionResponse_httpStatus' - The response's http status code.+newGetRevisionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetRevisionResponse+newGetRevisionResponse pHttpStatus_ =+ GetRevisionResponse'+ { arn = Prelude.Nothing,+ comment = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ dataSetId = Prelude.Nothing,+ finalized = Prelude.Nothing,+ id = Prelude.Nothing,+ revocationComment = Prelude.Nothing,+ revoked = Prelude.Nothing,+ revokedAt = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ tags = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the revision.+getRevisionResponse_arn :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.Text)+getRevisionResponse_arn = Lens.lens (\GetRevisionResponse' {arn} -> arn) (\s@GetRevisionResponse' {} a -> s {arn = a} :: GetRevisionResponse)++-- | An optional comment about the revision.+getRevisionResponse_comment :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.Text)+getRevisionResponse_comment = Lens.lens (\GetRevisionResponse' {comment} -> comment) (\s@GetRevisionResponse' {} a -> s {comment = a} :: GetRevisionResponse)++-- | The date and time that the revision was created, in ISO 8601 format.+getRevisionResponse_createdAt :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.UTCTime)+getRevisionResponse_createdAt = Lens.lens (\GetRevisionResponse' {createdAt} -> createdAt) (\s@GetRevisionResponse' {} a -> s {createdAt = a} :: GetRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier for the data set associated with the data set+-- revision.+getRevisionResponse_dataSetId :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.Text)+getRevisionResponse_dataSetId = Lens.lens (\GetRevisionResponse' {dataSetId} -> dataSetId) (\s@GetRevisionResponse' {} a -> s {dataSetId = a} :: GetRevisionResponse)++-- | To publish a revision to a data set in a product, the revision must+-- first be finalized. Finalizing a revision tells AWS Data Exchange that+-- your changes to the assets in the revision are complete. After it\'s in+-- this read-only state, you can publish the revision to your products.+-- Finalized revisions can be published through the AWS Data Exchange+-- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+-- Marketplace Catalog API action. When using the API, revisions are+-- uniquely identified by their ARN.+getRevisionResponse_finalized :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.Bool)+getRevisionResponse_finalized = Lens.lens (\GetRevisionResponse' {finalized} -> finalized) (\s@GetRevisionResponse' {} a -> s {finalized = a} :: GetRevisionResponse)++-- | The unique identifier for the revision.+getRevisionResponse_id :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.Text)+getRevisionResponse_id = Lens.lens (\GetRevisionResponse' {id} -> id) (\s@GetRevisionResponse' {} a -> s {id = a} :: GetRevisionResponse)++-- | A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+getRevisionResponse_revocationComment :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.Text)+getRevisionResponse_revocationComment = Lens.lens (\GetRevisionResponse' {revocationComment} -> revocationComment) (\s@GetRevisionResponse' {} a -> s {revocationComment = a} :: GetRevisionResponse)++-- | A status indicating that subscribers\' access to the revision was+-- revoked.+getRevisionResponse_revoked :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.Bool)+getRevisionResponse_revoked = Lens.lens (\GetRevisionResponse' {revoked} -> revoked) (\s@GetRevisionResponse' {} a -> s {revoked = a} :: GetRevisionResponse)++-- | The date and time that the revision was revoked, in ISO 8601 format.+getRevisionResponse_revokedAt :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.UTCTime)+getRevisionResponse_revokedAt = Lens.lens (\GetRevisionResponse' {revokedAt} -> revokedAt) (\s@GetRevisionResponse' {} a -> s {revokedAt = a} :: GetRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The revision ID of the owned revision corresponding to the entitled+-- revision being viewed. This parameter is returned when a revision owner+-- is viewing the entitled copy of its owned revision.+getRevisionResponse_sourceId :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.Text)+getRevisionResponse_sourceId = Lens.lens (\GetRevisionResponse' {sourceId} -> sourceId) (\s@GetRevisionResponse' {} a -> s {sourceId = a} :: GetRevisionResponse)++-- | The tags for the revision.+getRevisionResponse_tags :: Lens.Lens' GetRevisionResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getRevisionResponse_tags = Lens.lens (\GetRevisionResponse' {tags} -> tags) (\s@GetRevisionResponse' {} a -> s {tags = a} :: GetRevisionResponse) Prelude.. Lens.mapping Lens.coerced++-- | The date and time that the revision was last updated, in ISO 8601+-- format.+getRevisionResponse_updatedAt :: Lens.Lens' GetRevisionResponse (Prelude.Maybe Prelude.UTCTime)+getRevisionResponse_updatedAt = Lens.lens (\GetRevisionResponse' {updatedAt} -> updatedAt) (\s@GetRevisionResponse' {} a -> s {updatedAt = a} :: GetRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+getRevisionResponse_httpStatus :: Lens.Lens' GetRevisionResponse Prelude.Int+getRevisionResponse_httpStatus = Lens.lens (\GetRevisionResponse' {httpStatus} -> httpStatus) (\s@GetRevisionResponse' {} a -> s {httpStatus = a} :: GetRevisionResponse)++instance Prelude.NFData GetRevisionResponse where+ rnf GetRevisionResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf comment+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf finalized+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf revocationComment+ `Prelude.seq` Prelude.rnf revoked+ `Prelude.seq` Prelude.rnf revokedAt+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/Lens.hs view
@@ -0,0 +1,727 @@+{-# 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.DataExchange.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.DataExchange.Lens+ ( -- * Operations++ -- ** CancelJob+ cancelJob_jobId,++ -- ** CreateDataSet+ createDataSet_tags,+ createDataSet_assetType,+ createDataSet_description,+ createDataSet_name,+ createDataSetResponse_arn,+ createDataSetResponse_assetType,+ createDataSetResponse_createdAt,+ createDataSetResponse_description,+ createDataSetResponse_id,+ createDataSetResponse_name,+ createDataSetResponse_origin,+ createDataSetResponse_originDetails,+ createDataSetResponse_sourceId,+ createDataSetResponse_tags,+ createDataSetResponse_updatedAt,+ createDataSetResponse_httpStatus,++ -- ** CreateEventAction+ createEventAction_action,+ createEventAction_event,+ createEventActionResponse_action,+ createEventActionResponse_arn,+ createEventActionResponse_createdAt,+ createEventActionResponse_event,+ createEventActionResponse_id,+ createEventActionResponse_updatedAt,+ createEventActionResponse_httpStatus,++ -- ** CreateJob+ createJob_details,+ createJob_type,+ createJobResponse_arn,+ createJobResponse_createdAt,+ createJobResponse_details,+ createJobResponse_errors,+ createJobResponse_id,+ createJobResponse_state,+ createJobResponse_type,+ createJobResponse_updatedAt,+ createJobResponse_httpStatus,++ -- ** CreateRevision+ createRevision_comment,+ createRevision_tags,+ createRevision_dataSetId,+ createRevisionResponse_arn,+ createRevisionResponse_comment,+ createRevisionResponse_createdAt,+ createRevisionResponse_dataSetId,+ createRevisionResponse_finalized,+ createRevisionResponse_id,+ createRevisionResponse_revocationComment,+ createRevisionResponse_revoked,+ createRevisionResponse_revokedAt,+ createRevisionResponse_sourceId,+ createRevisionResponse_tags,+ createRevisionResponse_updatedAt,+ createRevisionResponse_httpStatus,++ -- ** DeleteAsset+ deleteAsset_assetId,+ deleteAsset_dataSetId,+ deleteAsset_revisionId,++ -- ** DeleteDataSet+ deleteDataSet_dataSetId,++ -- ** DeleteEventAction+ deleteEventAction_eventActionId,++ -- ** DeleteRevision+ deleteRevision_dataSetId,+ deleteRevision_revisionId,++ -- ** GetAsset+ getAsset_assetId,+ getAsset_dataSetId,+ getAsset_revisionId,+ getAssetResponse_arn,+ getAssetResponse_assetDetails,+ getAssetResponse_assetType,+ getAssetResponse_createdAt,+ getAssetResponse_dataSetId,+ getAssetResponse_id,+ getAssetResponse_name,+ getAssetResponse_revisionId,+ getAssetResponse_sourceId,+ getAssetResponse_updatedAt,+ getAssetResponse_httpStatus,++ -- ** GetDataSet+ getDataSet_dataSetId,+ getDataSetResponse_arn,+ getDataSetResponse_assetType,+ getDataSetResponse_createdAt,+ getDataSetResponse_description,+ getDataSetResponse_id,+ getDataSetResponse_name,+ getDataSetResponse_origin,+ getDataSetResponse_originDetails,+ getDataSetResponse_sourceId,+ getDataSetResponse_tags,+ getDataSetResponse_updatedAt,+ getDataSetResponse_httpStatus,++ -- ** GetEventAction+ getEventAction_eventActionId,+ getEventActionResponse_action,+ getEventActionResponse_arn,+ getEventActionResponse_createdAt,+ getEventActionResponse_event,+ getEventActionResponse_id,+ getEventActionResponse_updatedAt,+ getEventActionResponse_httpStatus,++ -- ** GetJob+ getJob_jobId,+ getJobResponse_arn,+ getJobResponse_createdAt,+ getJobResponse_details,+ getJobResponse_errors,+ getJobResponse_id,+ getJobResponse_state,+ getJobResponse_type,+ getJobResponse_updatedAt,+ getJobResponse_httpStatus,++ -- ** GetRevision+ getRevision_dataSetId,+ getRevision_revisionId,+ getRevisionResponse_arn,+ getRevisionResponse_comment,+ getRevisionResponse_createdAt,+ getRevisionResponse_dataSetId,+ getRevisionResponse_finalized,+ getRevisionResponse_id,+ getRevisionResponse_revocationComment,+ getRevisionResponse_revoked,+ getRevisionResponse_revokedAt,+ getRevisionResponse_sourceId,+ getRevisionResponse_tags,+ getRevisionResponse_updatedAt,+ getRevisionResponse_httpStatus,++ -- ** ListDataSetRevisions+ listDataSetRevisions_maxResults,+ listDataSetRevisions_nextToken,+ listDataSetRevisions_dataSetId,+ listDataSetRevisionsResponse_nextToken,+ listDataSetRevisionsResponse_revisions,+ listDataSetRevisionsResponse_httpStatus,++ -- ** ListDataSets+ listDataSets_maxResults,+ listDataSets_nextToken,+ listDataSets_origin,+ listDataSetsResponse_dataSets,+ listDataSetsResponse_nextToken,+ listDataSetsResponse_httpStatus,++ -- ** ListEventActions+ listEventActions_eventSourceId,+ listEventActions_maxResults,+ listEventActions_nextToken,+ listEventActionsResponse_eventActions,+ listEventActionsResponse_nextToken,+ listEventActionsResponse_httpStatus,++ -- ** ListJobs+ listJobs_dataSetId,+ listJobs_maxResults,+ listJobs_nextToken,+ listJobs_revisionId,+ listJobsResponse_jobs,+ listJobsResponse_nextToken,+ listJobsResponse_httpStatus,++ -- ** ListRevisionAssets+ listRevisionAssets_maxResults,+ listRevisionAssets_nextToken,+ listRevisionAssets_dataSetId,+ listRevisionAssets_revisionId,+ listRevisionAssetsResponse_assets,+ listRevisionAssetsResponse_nextToken,+ listRevisionAssetsResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** RevokeRevision+ revokeRevision_dataSetId,+ revokeRevision_revisionId,+ revokeRevision_revocationComment,+ revokeRevisionResponse_arn,+ revokeRevisionResponse_comment,+ revokeRevisionResponse_createdAt,+ revokeRevisionResponse_dataSetId,+ revokeRevisionResponse_finalized,+ revokeRevisionResponse_id,+ revokeRevisionResponse_revocationComment,+ revokeRevisionResponse_revoked,+ revokeRevisionResponse_revokedAt,+ revokeRevisionResponse_sourceId,+ revokeRevisionResponse_updatedAt,+ revokeRevisionResponse_httpStatus,++ -- ** SendApiAsset+ sendApiAsset_body,+ sendApiAsset_method,+ sendApiAsset_path,+ sendApiAsset_queryStringParameters,+ sendApiAsset_requestHeaders,+ sendApiAsset_assetId,+ sendApiAsset_dataSetId,+ sendApiAsset_revisionId,+ sendApiAssetResponse_body,+ sendApiAssetResponse_responseHeaders,+ sendApiAssetResponse_httpStatus,++ -- ** StartJob+ startJob_jobId,+ startJobResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceArn,+ tagResource_tags,++ -- ** UntagResource+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- ** UpdateAsset+ updateAsset_assetId,+ updateAsset_dataSetId,+ updateAsset_name,+ updateAsset_revisionId,+ updateAssetResponse_arn,+ updateAssetResponse_assetDetails,+ updateAssetResponse_assetType,+ updateAssetResponse_createdAt,+ updateAssetResponse_dataSetId,+ updateAssetResponse_id,+ updateAssetResponse_name,+ updateAssetResponse_revisionId,+ updateAssetResponse_sourceId,+ updateAssetResponse_updatedAt,+ updateAssetResponse_httpStatus,++ -- ** UpdateDataSet+ updateDataSet_description,+ updateDataSet_name,+ updateDataSet_dataSetId,+ updateDataSetResponse_arn,+ updateDataSetResponse_assetType,+ updateDataSetResponse_createdAt,+ updateDataSetResponse_description,+ updateDataSetResponse_id,+ updateDataSetResponse_name,+ updateDataSetResponse_origin,+ updateDataSetResponse_originDetails,+ updateDataSetResponse_sourceId,+ updateDataSetResponse_updatedAt,+ updateDataSetResponse_httpStatus,++ -- ** UpdateEventAction+ updateEventAction_action,+ updateEventAction_eventActionId,+ updateEventActionResponse_action,+ updateEventActionResponse_arn,+ updateEventActionResponse_createdAt,+ updateEventActionResponse_event,+ updateEventActionResponse_id,+ updateEventActionResponse_updatedAt,+ updateEventActionResponse_httpStatus,++ -- ** UpdateRevision+ updateRevision_comment,+ updateRevision_finalized,+ updateRevision_dataSetId,+ updateRevision_revisionId,+ updateRevisionResponse_arn,+ updateRevisionResponse_comment,+ updateRevisionResponse_createdAt,+ updateRevisionResponse_dataSetId,+ updateRevisionResponse_finalized,+ updateRevisionResponse_id,+ updateRevisionResponse_revocationComment,+ updateRevisionResponse_revoked,+ updateRevisionResponse_revokedAt,+ updateRevisionResponse_sourceId,+ updateRevisionResponse_updatedAt,+ updateRevisionResponse_httpStatus,++ -- * Types++ -- ** Action+ action_exportRevisionToS3,++ -- ** ApiGatewayApiAsset+ apiGatewayApiAsset_apiDescription,+ apiGatewayApiAsset_apiEndpoint,+ apiGatewayApiAsset_apiId,+ apiGatewayApiAsset_apiKey,+ apiGatewayApiAsset_apiName,+ apiGatewayApiAsset_apiSpecificationDownloadUrl,+ apiGatewayApiAsset_apiSpecificationDownloadUrlExpiresAt,+ apiGatewayApiAsset_protocolType,+ apiGatewayApiAsset_stage,++ -- ** AssetDestinationEntry+ assetDestinationEntry_key,+ assetDestinationEntry_assetId,+ assetDestinationEntry_bucket,++ -- ** AssetDetails+ assetDetails_apiGatewayApiAsset,+ assetDetails_lakeFormationDataPermissionAsset,+ assetDetails_redshiftDataShareAsset,+ assetDetails_s3DataAccessAsset,+ assetDetails_s3SnapshotAsset,++ -- ** AssetEntry+ assetEntry_sourceId,+ assetEntry_arn,+ assetEntry_assetDetails,+ assetEntry_assetType,+ assetEntry_createdAt,+ assetEntry_dataSetId,+ assetEntry_id,+ assetEntry_name,+ assetEntry_revisionId,+ assetEntry_updatedAt,++ -- ** AssetSourceEntry+ assetSourceEntry_bucket,+ assetSourceEntry_key,++ -- ** AutoExportRevisionDestinationEntry+ autoExportRevisionDestinationEntry_keyPattern,+ autoExportRevisionDestinationEntry_bucket,++ -- ** AutoExportRevisionToS3RequestDetails+ autoExportRevisionToS3RequestDetails_encryption,+ autoExportRevisionToS3RequestDetails_revisionDestination,++ -- ** CreateS3DataAccessFromS3BucketRequestDetails+ createS3DataAccessFromS3BucketRequestDetails_assetSource,+ createS3DataAccessFromS3BucketRequestDetails_dataSetId,+ createS3DataAccessFromS3BucketRequestDetails_revisionId,++ -- ** CreateS3DataAccessFromS3BucketResponseDetails+ createS3DataAccessFromS3BucketResponseDetails_assetSource,+ createS3DataAccessFromS3BucketResponseDetails_dataSetId,+ createS3DataAccessFromS3BucketResponseDetails_revisionId,++ -- ** DataSetEntry+ dataSetEntry_originDetails,+ dataSetEntry_sourceId,+ dataSetEntry_arn,+ dataSetEntry_assetType,+ dataSetEntry_createdAt,+ dataSetEntry_description,+ dataSetEntry_id,+ dataSetEntry_name,+ dataSetEntry_origin,+ dataSetEntry_updatedAt,++ -- ** DatabaseLFTagPolicy+ databaseLFTagPolicy_expression,++ -- ** DatabaseLFTagPolicyAndPermissions+ databaseLFTagPolicyAndPermissions_expression,+ databaseLFTagPolicyAndPermissions_permissions,++ -- ** Details+ details_importAssetFromSignedUrlJobErrorDetails,+ details_importAssetsFromS3JobErrorDetails,++ -- ** Event+ event_revisionPublished,++ -- ** EventActionEntry+ eventActionEntry_action,+ eventActionEntry_arn,+ eventActionEntry_createdAt,+ eventActionEntry_event,+ eventActionEntry_id,+ eventActionEntry_updatedAt,++ -- ** ExportAssetToSignedUrlRequestDetails+ exportAssetToSignedUrlRequestDetails_assetId,+ exportAssetToSignedUrlRequestDetails_dataSetId,+ exportAssetToSignedUrlRequestDetails_revisionId,++ -- ** ExportAssetToSignedUrlResponseDetails+ exportAssetToSignedUrlResponseDetails_signedUrl,+ exportAssetToSignedUrlResponseDetails_signedUrlExpiresAt,+ exportAssetToSignedUrlResponseDetails_assetId,+ exportAssetToSignedUrlResponseDetails_dataSetId,+ exportAssetToSignedUrlResponseDetails_revisionId,++ -- ** ExportAssetsToS3RequestDetails+ exportAssetsToS3RequestDetails_encryption,+ exportAssetsToS3RequestDetails_assetDestinations,+ exportAssetsToS3RequestDetails_dataSetId,+ exportAssetsToS3RequestDetails_revisionId,++ -- ** ExportAssetsToS3ResponseDetails+ exportAssetsToS3ResponseDetails_encryption,+ exportAssetsToS3ResponseDetails_assetDestinations,+ exportAssetsToS3ResponseDetails_dataSetId,+ exportAssetsToS3ResponseDetails_revisionId,++ -- ** ExportRevisionsToS3RequestDetails+ exportRevisionsToS3RequestDetails_encryption,+ exportRevisionsToS3RequestDetails_dataSetId,+ exportRevisionsToS3RequestDetails_revisionDestinations,++ -- ** ExportRevisionsToS3ResponseDetails+ exportRevisionsToS3ResponseDetails_encryption,+ exportRevisionsToS3ResponseDetails_eventActionArn,+ exportRevisionsToS3ResponseDetails_dataSetId,+ exportRevisionsToS3ResponseDetails_revisionDestinations,++ -- ** ExportServerSideEncryption+ exportServerSideEncryption_kmsKeyArn,+ exportServerSideEncryption_type,++ -- ** ImportAssetFromApiGatewayApiRequestDetails+ importAssetFromApiGatewayApiRequestDetails_apiDescription,+ importAssetFromApiGatewayApiRequestDetails_apiKey,+ importAssetFromApiGatewayApiRequestDetails_apiId,+ importAssetFromApiGatewayApiRequestDetails_apiName,+ importAssetFromApiGatewayApiRequestDetails_apiSpecificationMd5Hash,+ importAssetFromApiGatewayApiRequestDetails_dataSetId,+ importAssetFromApiGatewayApiRequestDetails_protocolType,+ importAssetFromApiGatewayApiRequestDetails_revisionId,+ importAssetFromApiGatewayApiRequestDetails_stage,++ -- ** ImportAssetFromApiGatewayApiResponseDetails+ importAssetFromApiGatewayApiResponseDetails_apiDescription,+ importAssetFromApiGatewayApiResponseDetails_apiKey,+ importAssetFromApiGatewayApiResponseDetails_apiId,+ importAssetFromApiGatewayApiResponseDetails_apiName,+ importAssetFromApiGatewayApiResponseDetails_apiSpecificationMd5Hash,+ importAssetFromApiGatewayApiResponseDetails_apiSpecificationUploadUrl,+ importAssetFromApiGatewayApiResponseDetails_apiSpecificationUploadUrlExpiresAt,+ importAssetFromApiGatewayApiResponseDetails_dataSetId,+ importAssetFromApiGatewayApiResponseDetails_protocolType,+ importAssetFromApiGatewayApiResponseDetails_revisionId,+ importAssetFromApiGatewayApiResponseDetails_stage,++ -- ** ImportAssetFromSignedUrlJobErrorDetails+ importAssetFromSignedUrlJobErrorDetails_assetName,++ -- ** ImportAssetFromSignedUrlRequestDetails+ importAssetFromSignedUrlRequestDetails_assetName,+ importAssetFromSignedUrlRequestDetails_dataSetId,+ importAssetFromSignedUrlRequestDetails_md5Hash,+ importAssetFromSignedUrlRequestDetails_revisionId,++ -- ** ImportAssetFromSignedUrlResponseDetails+ importAssetFromSignedUrlResponseDetails_md5Hash,+ importAssetFromSignedUrlResponseDetails_signedUrl,+ importAssetFromSignedUrlResponseDetails_signedUrlExpiresAt,+ importAssetFromSignedUrlResponseDetails_assetName,+ importAssetFromSignedUrlResponseDetails_dataSetId,+ importAssetFromSignedUrlResponseDetails_revisionId,++ -- ** ImportAssetsFromLakeFormationTagPolicyRequestDetails+ importAssetsFromLakeFormationTagPolicyRequestDetails_database,+ importAssetsFromLakeFormationTagPolicyRequestDetails_table,+ importAssetsFromLakeFormationTagPolicyRequestDetails_catalogId,+ importAssetsFromLakeFormationTagPolicyRequestDetails_roleArn,+ importAssetsFromLakeFormationTagPolicyRequestDetails_dataSetId,+ importAssetsFromLakeFormationTagPolicyRequestDetails_revisionId,++ -- ** ImportAssetsFromLakeFormationTagPolicyResponseDetails+ importAssetsFromLakeFormationTagPolicyResponseDetails_database,+ importAssetsFromLakeFormationTagPolicyResponseDetails_table,+ importAssetsFromLakeFormationTagPolicyResponseDetails_catalogId,+ importAssetsFromLakeFormationTagPolicyResponseDetails_roleArn,+ importAssetsFromLakeFormationTagPolicyResponseDetails_dataSetId,+ importAssetsFromLakeFormationTagPolicyResponseDetails_revisionId,++ -- ** ImportAssetsFromRedshiftDataSharesRequestDetails+ importAssetsFromRedshiftDataSharesRequestDetails_assetSources,+ importAssetsFromRedshiftDataSharesRequestDetails_dataSetId,+ importAssetsFromRedshiftDataSharesRequestDetails_revisionId,++ -- ** ImportAssetsFromRedshiftDataSharesResponseDetails+ importAssetsFromRedshiftDataSharesResponseDetails_assetSources,+ importAssetsFromRedshiftDataSharesResponseDetails_dataSetId,+ importAssetsFromRedshiftDataSharesResponseDetails_revisionId,++ -- ** ImportAssetsFromS3RequestDetails+ importAssetsFromS3RequestDetails_assetSources,+ importAssetsFromS3RequestDetails_dataSetId,+ importAssetsFromS3RequestDetails_revisionId,++ -- ** ImportAssetsFromS3ResponseDetails+ importAssetsFromS3ResponseDetails_assetSources,+ importAssetsFromS3ResponseDetails_dataSetId,+ importAssetsFromS3ResponseDetails_revisionId,++ -- ** JobEntry+ jobEntry_errors,+ jobEntry_arn,+ jobEntry_createdAt,+ jobEntry_details,+ jobEntry_id,+ jobEntry_state,+ jobEntry_type,+ jobEntry_updatedAt,++ -- ** JobError+ jobError_details,+ jobError_limitName,+ jobError_limitValue,+ jobError_resourceId,+ jobError_resourceType,+ jobError_code,+ jobError_message,++ -- ** LFResourceDetails+ lFResourceDetails_database,+ lFResourceDetails_table,++ -- ** LFTag+ lFTag_tagKey,+ lFTag_tagValues,++ -- ** LFTagPolicyDetails+ lFTagPolicyDetails_catalogId,+ lFTagPolicyDetails_resourceType,+ lFTagPolicyDetails_resourceDetails,++ -- ** LakeFormationDataPermissionAsset+ lakeFormationDataPermissionAsset_roleArn,+ lakeFormationDataPermissionAsset_lakeFormationDataPermissionDetails,+ lakeFormationDataPermissionAsset_lakeFormationDataPermissionType,+ lakeFormationDataPermissionAsset_permissions,++ -- ** LakeFormationDataPermissionDetails+ lakeFormationDataPermissionDetails_lFTagPolicy,++ -- ** OriginDetails+ originDetails_productId,++ -- ** RedshiftDataShareAsset+ redshiftDataShareAsset_arn,++ -- ** RedshiftDataShareAssetSourceEntry+ redshiftDataShareAssetSourceEntry_dataShareArn,++ -- ** RequestDetails+ requestDetails_createS3DataAccessFromS3Bucket,+ requestDetails_exportAssetToSignedUrl,+ requestDetails_exportAssetsToS3,+ requestDetails_exportRevisionsToS3,+ requestDetails_importAssetFromApiGatewayApi,+ requestDetails_importAssetFromSignedUrl,+ requestDetails_importAssetsFromLakeFormationTagPolicy,+ requestDetails_importAssetsFromRedshiftDataShares,+ requestDetails_importAssetsFromS3,++ -- ** ResponseDetails+ responseDetails_createS3DataAccessFromS3Bucket,+ responseDetails_exportAssetToSignedUrl,+ responseDetails_exportAssetsToS3,+ responseDetails_exportRevisionsToS3,+ responseDetails_importAssetFromApiGatewayApi,+ responseDetails_importAssetFromSignedUrl,+ responseDetails_importAssetsFromLakeFormationTagPolicy,+ responseDetails_importAssetsFromRedshiftDataShares,+ responseDetails_importAssetsFromS3,++ -- ** RevisionDestinationEntry+ revisionDestinationEntry_keyPattern,+ revisionDestinationEntry_bucket,+ revisionDestinationEntry_revisionId,++ -- ** RevisionEntry+ revisionEntry_comment,+ revisionEntry_finalized,+ revisionEntry_revocationComment,+ revisionEntry_revoked,+ revisionEntry_revokedAt,+ revisionEntry_sourceId,+ revisionEntry_arn,+ revisionEntry_createdAt,+ revisionEntry_dataSetId,+ revisionEntry_id,+ revisionEntry_updatedAt,++ -- ** RevisionPublished+ revisionPublished_dataSetId,++ -- ** S3DataAccessAsset+ s3DataAccessAsset_keyPrefixes,+ s3DataAccessAsset_keys,+ s3DataAccessAsset_s3AccessPointAlias,+ s3DataAccessAsset_s3AccessPointArn,+ s3DataAccessAsset_bucket,++ -- ** S3DataAccessAssetSourceEntry+ s3DataAccessAssetSourceEntry_keyPrefixes,+ s3DataAccessAssetSourceEntry_keys,+ s3DataAccessAssetSourceEntry_bucket,++ -- ** S3SnapshotAsset+ s3SnapshotAsset_size,++ -- ** TableLFTagPolicy+ tableLFTagPolicy_expression,++ -- ** TableLFTagPolicyAndPermissions+ tableLFTagPolicyAndPermissions_expression,+ tableLFTagPolicyAndPermissions_permissions,+ )+where++import Amazonka.DataExchange.CancelJob+import Amazonka.DataExchange.CreateDataSet+import Amazonka.DataExchange.CreateEventAction+import Amazonka.DataExchange.CreateJob+import Amazonka.DataExchange.CreateRevision+import Amazonka.DataExchange.DeleteAsset+import Amazonka.DataExchange.DeleteDataSet+import Amazonka.DataExchange.DeleteEventAction+import Amazonka.DataExchange.DeleteRevision+import Amazonka.DataExchange.GetAsset+import Amazonka.DataExchange.GetDataSet+import Amazonka.DataExchange.GetEventAction+import Amazonka.DataExchange.GetJob+import Amazonka.DataExchange.GetRevision+import Amazonka.DataExchange.ListDataSetRevisions+import Amazonka.DataExchange.ListDataSets+import Amazonka.DataExchange.ListEventActions+import Amazonka.DataExchange.ListJobs+import Amazonka.DataExchange.ListRevisionAssets+import Amazonka.DataExchange.ListTagsForResource+import Amazonka.DataExchange.RevokeRevision+import Amazonka.DataExchange.SendApiAsset+import Amazonka.DataExchange.StartJob+import Amazonka.DataExchange.TagResource+import Amazonka.DataExchange.Types.Action+import Amazonka.DataExchange.Types.ApiGatewayApiAsset+import Amazonka.DataExchange.Types.AssetDestinationEntry+import Amazonka.DataExchange.Types.AssetDetails+import Amazonka.DataExchange.Types.AssetEntry+import Amazonka.DataExchange.Types.AssetSourceEntry+import Amazonka.DataExchange.Types.AutoExportRevisionDestinationEntry+import Amazonka.DataExchange.Types.AutoExportRevisionToS3RequestDetails+import Amazonka.DataExchange.Types.CreateS3DataAccessFromS3BucketRequestDetails+import Amazonka.DataExchange.Types.CreateS3DataAccessFromS3BucketResponseDetails+import Amazonka.DataExchange.Types.DataSetEntry+import Amazonka.DataExchange.Types.DatabaseLFTagPolicy+import Amazonka.DataExchange.Types.DatabaseLFTagPolicyAndPermissions+import Amazonka.DataExchange.Types.Details+import Amazonka.DataExchange.Types.Event+import Amazonka.DataExchange.Types.EventActionEntry+import Amazonka.DataExchange.Types.ExportAssetToSignedUrlRequestDetails+import Amazonka.DataExchange.Types.ExportAssetToSignedUrlResponseDetails+import Amazonka.DataExchange.Types.ExportAssetsToS3RequestDetails+import Amazonka.DataExchange.Types.ExportAssetsToS3ResponseDetails+import Amazonka.DataExchange.Types.ExportRevisionsToS3RequestDetails+import Amazonka.DataExchange.Types.ExportRevisionsToS3ResponseDetails+import Amazonka.DataExchange.Types.ExportServerSideEncryption+import Amazonka.DataExchange.Types.ImportAssetFromApiGatewayApiRequestDetails+import Amazonka.DataExchange.Types.ImportAssetFromApiGatewayApiResponseDetails+import Amazonka.DataExchange.Types.ImportAssetFromSignedUrlJobErrorDetails+import Amazonka.DataExchange.Types.ImportAssetFromSignedUrlRequestDetails+import Amazonka.DataExchange.Types.ImportAssetFromSignedUrlResponseDetails+import Amazonka.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyRequestDetails+import Amazonka.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyResponseDetails+import Amazonka.DataExchange.Types.ImportAssetsFromRedshiftDataSharesRequestDetails+import Amazonka.DataExchange.Types.ImportAssetsFromRedshiftDataSharesResponseDetails+import Amazonka.DataExchange.Types.ImportAssetsFromS3RequestDetails+import Amazonka.DataExchange.Types.ImportAssetsFromS3ResponseDetails+import Amazonka.DataExchange.Types.JobEntry+import Amazonka.DataExchange.Types.JobError+import Amazonka.DataExchange.Types.LFResourceDetails+import Amazonka.DataExchange.Types.LFTag+import Amazonka.DataExchange.Types.LFTagPolicyDetails+import Amazonka.DataExchange.Types.LakeFormationDataPermissionAsset+import Amazonka.DataExchange.Types.LakeFormationDataPermissionDetails+import Amazonka.DataExchange.Types.OriginDetails+import Amazonka.DataExchange.Types.RedshiftDataShareAsset+import Amazonka.DataExchange.Types.RedshiftDataShareAssetSourceEntry+import Amazonka.DataExchange.Types.RequestDetails+import Amazonka.DataExchange.Types.ResponseDetails+import Amazonka.DataExchange.Types.RevisionDestinationEntry+import Amazonka.DataExchange.Types.RevisionEntry+import Amazonka.DataExchange.Types.RevisionPublished+import Amazonka.DataExchange.Types.S3DataAccessAsset+import Amazonka.DataExchange.Types.S3DataAccessAssetSourceEntry+import Amazonka.DataExchange.Types.S3SnapshotAsset+import Amazonka.DataExchange.Types.TableLFTagPolicy+import Amazonka.DataExchange.Types.TableLFTagPolicyAndPermissions+import Amazonka.DataExchange.UntagResource+import Amazonka.DataExchange.UpdateAsset+import Amazonka.DataExchange.UpdateDataSet+import Amazonka.DataExchange.UpdateEventAction+import Amazonka.DataExchange.UpdateRevision
+ gen/Amazonka/DataExchange/ListDataSetRevisions.hs view
@@ -0,0 +1,234 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.ListDataSetRevisions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation lists a data set\'s revisions sorted by CreatedAt in+-- descending order.+--+-- This operation returns paginated results.+module Amazonka.DataExchange.ListDataSetRevisions+ ( -- * Creating a Request+ ListDataSetRevisions (..),+ newListDataSetRevisions,++ -- * Request Lenses+ listDataSetRevisions_maxResults,+ listDataSetRevisions_nextToken,+ listDataSetRevisions_dataSetId,++ -- * Destructuring the Response+ ListDataSetRevisionsResponse (..),+ newListDataSetRevisionsResponse,++ -- * Response Lenses+ listDataSetRevisionsResponse_nextToken,+ listDataSetRevisionsResponse_revisions,+ listDataSetRevisionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListDataSetRevisions' smart constructor.+data ListDataSetRevisions = ListDataSetRevisions'+ { -- | The maximum number of results returned by a single call.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token value retrieved from a previous call to access the next page+ -- of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDataSetRevisions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listDataSetRevisions_maxResults' - The maximum number of results returned by a single call.+--+-- 'nextToken', 'listDataSetRevisions_nextToken' - The token value retrieved from a previous call to access the next page+-- of results.+--+-- 'dataSetId', 'listDataSetRevisions_dataSetId' - The unique identifier for a data set.+newListDataSetRevisions ::+ -- | 'dataSetId'+ Prelude.Text ->+ ListDataSetRevisions+newListDataSetRevisions pDataSetId_ =+ ListDataSetRevisions'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ dataSetId = pDataSetId_+ }++-- | The maximum number of results returned by a single call.+listDataSetRevisions_maxResults :: Lens.Lens' ListDataSetRevisions (Prelude.Maybe Prelude.Natural)+listDataSetRevisions_maxResults = Lens.lens (\ListDataSetRevisions' {maxResults} -> maxResults) (\s@ListDataSetRevisions' {} a -> s {maxResults = a} :: ListDataSetRevisions)++-- | The token value retrieved from a previous call to access the next page+-- of results.+listDataSetRevisions_nextToken :: Lens.Lens' ListDataSetRevisions (Prelude.Maybe Prelude.Text)+listDataSetRevisions_nextToken = Lens.lens (\ListDataSetRevisions' {nextToken} -> nextToken) (\s@ListDataSetRevisions' {} a -> s {nextToken = a} :: ListDataSetRevisions)++-- | The unique identifier for a data set.+listDataSetRevisions_dataSetId :: Lens.Lens' ListDataSetRevisions Prelude.Text+listDataSetRevisions_dataSetId = Lens.lens (\ListDataSetRevisions' {dataSetId} -> dataSetId) (\s@ListDataSetRevisions' {} a -> s {dataSetId = a} :: ListDataSetRevisions)++instance Core.AWSPager ListDataSetRevisions where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listDataSetRevisionsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listDataSetRevisionsResponse_revisions+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listDataSetRevisions_nextToken+ Lens..~ rs+ Lens.^? listDataSetRevisionsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListDataSetRevisions where+ type+ AWSResponse ListDataSetRevisions =+ ListDataSetRevisionsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListDataSetRevisionsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "Revisions" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListDataSetRevisions where+ hashWithSalt _salt ListDataSetRevisions' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` dataSetId++instance Prelude.NFData ListDataSetRevisions where+ rnf ListDataSetRevisions' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf dataSetId++instance Data.ToHeaders ListDataSetRevisions where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListDataSetRevisions where+ toPath ListDataSetRevisions' {..} =+ Prelude.mconcat+ ["/v1/data-sets/", Data.toBS dataSetId, "/revisions"]++instance Data.ToQuery ListDataSetRevisions where+ toQuery ListDataSetRevisions' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListDataSetRevisionsResponse' smart constructor.+data ListDataSetRevisionsResponse = ListDataSetRevisionsResponse'+ { -- | The token value retrieved from a previous call to access the next page+ -- of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The asset objects listed by the request.+ revisions :: Prelude.Maybe [RevisionEntry],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDataSetRevisionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listDataSetRevisionsResponse_nextToken' - The token value retrieved from a previous call to access the next page+-- of results.+--+-- 'revisions', 'listDataSetRevisionsResponse_revisions' - The asset objects listed by the request.+--+-- 'httpStatus', 'listDataSetRevisionsResponse_httpStatus' - The response's http status code.+newListDataSetRevisionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListDataSetRevisionsResponse+newListDataSetRevisionsResponse pHttpStatus_ =+ ListDataSetRevisionsResponse'+ { nextToken =+ Prelude.Nothing,+ revisions = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The token value retrieved from a previous call to access the next page+-- of results.+listDataSetRevisionsResponse_nextToken :: Lens.Lens' ListDataSetRevisionsResponse (Prelude.Maybe Prelude.Text)+listDataSetRevisionsResponse_nextToken = Lens.lens (\ListDataSetRevisionsResponse' {nextToken} -> nextToken) (\s@ListDataSetRevisionsResponse' {} a -> s {nextToken = a} :: ListDataSetRevisionsResponse)++-- | The asset objects listed by the request.+listDataSetRevisionsResponse_revisions :: Lens.Lens' ListDataSetRevisionsResponse (Prelude.Maybe [RevisionEntry])+listDataSetRevisionsResponse_revisions = Lens.lens (\ListDataSetRevisionsResponse' {revisions} -> revisions) (\s@ListDataSetRevisionsResponse' {} a -> s {revisions = a} :: ListDataSetRevisionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listDataSetRevisionsResponse_httpStatus :: Lens.Lens' ListDataSetRevisionsResponse Prelude.Int+listDataSetRevisionsResponse_httpStatus = Lens.lens (\ListDataSetRevisionsResponse' {httpStatus} -> httpStatus) (\s@ListDataSetRevisionsResponse' {} a -> s {httpStatus = a} :: ListDataSetRevisionsResponse)++instance Prelude.NFData ListDataSetRevisionsResponse where+ rnf ListDataSetRevisionsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf revisions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/ListDataSets.hs view
@@ -0,0 +1,233 @@+{-# 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.DataExchange.ListDataSets+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation lists your data sets. When listing by origin OWNED,+-- results are sorted by CreatedAt in descending order. When listing by+-- origin ENTITLED, there is no order and the maxResults parameter is+-- ignored.+--+-- This operation returns paginated results.+module Amazonka.DataExchange.ListDataSets+ ( -- * Creating a Request+ ListDataSets (..),+ newListDataSets,++ -- * Request Lenses+ listDataSets_maxResults,+ listDataSets_nextToken,+ listDataSets_origin,++ -- * Destructuring the Response+ ListDataSetsResponse (..),+ newListDataSetsResponse,++ -- * Response Lenses+ listDataSetsResponse_dataSets,+ listDataSetsResponse_nextToken,+ listDataSetsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListDataSets' smart constructor.+data ListDataSets = ListDataSets'+ { -- | The maximum number of results returned by a single call.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token value retrieved from a previous call to access the next page+ -- of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A property that defines the data set as OWNED by the account (for+ -- providers) or ENTITLED to the account (for subscribers).+ origin :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDataSets' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listDataSets_maxResults' - The maximum number of results returned by a single call.+--+-- 'nextToken', 'listDataSets_nextToken' - The token value retrieved from a previous call to access the next page+-- of results.+--+-- 'origin', 'listDataSets_origin' - A property that defines the data set as OWNED by the account (for+-- providers) or ENTITLED to the account (for subscribers).+newListDataSets ::+ ListDataSets+newListDataSets =+ ListDataSets'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ origin = Prelude.Nothing+ }++-- | The maximum number of results returned by a single call.+listDataSets_maxResults :: Lens.Lens' ListDataSets (Prelude.Maybe Prelude.Natural)+listDataSets_maxResults = Lens.lens (\ListDataSets' {maxResults} -> maxResults) (\s@ListDataSets' {} a -> s {maxResults = a} :: ListDataSets)++-- | The token value retrieved from a previous call to access the next page+-- of results.+listDataSets_nextToken :: Lens.Lens' ListDataSets (Prelude.Maybe Prelude.Text)+listDataSets_nextToken = Lens.lens (\ListDataSets' {nextToken} -> nextToken) (\s@ListDataSets' {} a -> s {nextToken = a} :: ListDataSets)++-- | A property that defines the data set as OWNED by the account (for+-- providers) or ENTITLED to the account (for subscribers).+listDataSets_origin :: Lens.Lens' ListDataSets (Prelude.Maybe Prelude.Text)+listDataSets_origin = Lens.lens (\ListDataSets' {origin} -> origin) (\s@ListDataSets' {} a -> s {origin = a} :: ListDataSets)++instance Core.AWSPager ListDataSets where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listDataSetsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listDataSetsResponse_dataSets+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listDataSets_nextToken+ Lens..~ rs+ Lens.^? listDataSetsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListDataSets where+ type AWSResponse ListDataSets = ListDataSetsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListDataSetsResponse'+ Prelude.<$> (x Data..?> "DataSets" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListDataSets where+ hashWithSalt _salt ListDataSets' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` origin++instance Prelude.NFData ListDataSets where+ rnf ListDataSets' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf origin++instance Data.ToHeaders ListDataSets where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListDataSets where+ toPath = Prelude.const "/v1/data-sets"++instance Data.ToQuery ListDataSets where+ toQuery ListDataSets' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken,+ "origin" Data.=: origin+ ]++-- | /See:/ 'newListDataSetsResponse' smart constructor.+data ListDataSetsResponse = ListDataSetsResponse'+ { -- | The data set objects listed by the request.+ dataSets :: Prelude.Maybe [DataSetEntry],+ -- | The token value retrieved from a previous call to access the next page+ -- 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 'ListDataSetsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSets', 'listDataSetsResponse_dataSets' - The data set objects listed by the request.+--+-- 'nextToken', 'listDataSetsResponse_nextToken' - The token value retrieved from a previous call to access the next page+-- of results.+--+-- 'httpStatus', 'listDataSetsResponse_httpStatus' - The response's http status code.+newListDataSetsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListDataSetsResponse+newListDataSetsResponse pHttpStatus_ =+ ListDataSetsResponse'+ { dataSets = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The data set objects listed by the request.+listDataSetsResponse_dataSets :: Lens.Lens' ListDataSetsResponse (Prelude.Maybe [DataSetEntry])+listDataSetsResponse_dataSets = Lens.lens (\ListDataSetsResponse' {dataSets} -> dataSets) (\s@ListDataSetsResponse' {} a -> s {dataSets = a} :: ListDataSetsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The token value retrieved from a previous call to access the next page+-- of results.+listDataSetsResponse_nextToken :: Lens.Lens' ListDataSetsResponse (Prelude.Maybe Prelude.Text)+listDataSetsResponse_nextToken = Lens.lens (\ListDataSetsResponse' {nextToken} -> nextToken) (\s@ListDataSetsResponse' {} a -> s {nextToken = a} :: ListDataSetsResponse)++-- | The response's http status code.+listDataSetsResponse_httpStatus :: Lens.Lens' ListDataSetsResponse Prelude.Int+listDataSetsResponse_httpStatus = Lens.lens (\ListDataSetsResponse' {httpStatus} -> httpStatus) (\s@ListDataSetsResponse' {} a -> s {httpStatus = a} :: ListDataSetsResponse)++instance Prelude.NFData ListDataSetsResponse where+ rnf ListDataSetsResponse' {..} =+ Prelude.rnf dataSets+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/ListEventActions.hs view
@@ -0,0 +1,230 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.ListEventActions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation lists your event actions.+--+-- This operation returns paginated results.+module Amazonka.DataExchange.ListEventActions+ ( -- * Creating a Request+ ListEventActions (..),+ newListEventActions,++ -- * Request Lenses+ listEventActions_eventSourceId,+ listEventActions_maxResults,+ listEventActions_nextToken,++ -- * Destructuring the Response+ ListEventActionsResponse (..),+ newListEventActionsResponse,++ -- * Response Lenses+ listEventActionsResponse_eventActions,+ listEventActionsResponse_nextToken,+ listEventActionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListEventActions' smart constructor.+data ListEventActions = ListEventActions'+ { -- | The unique identifier for the event source.+ eventSourceId :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of results returned by a single call.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token value retrieved from a previous call to access the next page+ -- of results.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEventActions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventSourceId', 'listEventActions_eventSourceId' - The unique identifier for the event source.+--+-- 'maxResults', 'listEventActions_maxResults' - The maximum number of results returned by a single call.+--+-- 'nextToken', 'listEventActions_nextToken' - The token value retrieved from a previous call to access the next page+-- of results.+newListEventActions ::+ ListEventActions+newListEventActions =+ ListEventActions'+ { eventSourceId = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | The unique identifier for the event source.+listEventActions_eventSourceId :: Lens.Lens' ListEventActions (Prelude.Maybe Prelude.Text)+listEventActions_eventSourceId = Lens.lens (\ListEventActions' {eventSourceId} -> eventSourceId) (\s@ListEventActions' {} a -> s {eventSourceId = a} :: ListEventActions)++-- | The maximum number of results returned by a single call.+listEventActions_maxResults :: Lens.Lens' ListEventActions (Prelude.Maybe Prelude.Natural)+listEventActions_maxResults = Lens.lens (\ListEventActions' {maxResults} -> maxResults) (\s@ListEventActions' {} a -> s {maxResults = a} :: ListEventActions)++-- | The token value retrieved from a previous call to access the next page+-- of results.+listEventActions_nextToken :: Lens.Lens' ListEventActions (Prelude.Maybe Prelude.Text)+listEventActions_nextToken = Lens.lens (\ListEventActions' {nextToken} -> nextToken) (\s@ListEventActions' {} a -> s {nextToken = a} :: ListEventActions)++instance Core.AWSPager ListEventActions where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listEventActionsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listEventActionsResponse_eventActions+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listEventActions_nextToken+ Lens..~ rs+ Lens.^? listEventActionsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListEventActions where+ type+ AWSResponse ListEventActions =+ ListEventActionsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListEventActionsResponse'+ Prelude.<$> (x Data..?> "EventActions" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListEventActions where+ hashWithSalt _salt ListEventActions' {..} =+ _salt+ `Prelude.hashWithSalt` eventSourceId+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListEventActions where+ rnf ListEventActions' {..} =+ Prelude.rnf eventSourceId+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListEventActions where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListEventActions where+ toPath = Prelude.const "/v1/event-actions"++instance Data.ToQuery ListEventActions where+ toQuery ListEventActions' {..} =+ Prelude.mconcat+ [ "eventSourceId" Data.=: eventSourceId,+ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListEventActionsResponse' smart constructor.+data ListEventActionsResponse = ListEventActionsResponse'+ { -- | The event action objects listed by the request.+ eventActions :: Prelude.Maybe [EventActionEntry],+ -- | The token value retrieved from a previous call to access the next page+ -- 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 'ListEventActionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eventActions', 'listEventActionsResponse_eventActions' - The event action objects listed by the request.+--+-- 'nextToken', 'listEventActionsResponse_nextToken' - The token value retrieved from a previous call to access the next page+-- of results.+--+-- 'httpStatus', 'listEventActionsResponse_httpStatus' - The response's http status code.+newListEventActionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListEventActionsResponse+newListEventActionsResponse pHttpStatus_ =+ ListEventActionsResponse'+ { eventActions =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The event action objects listed by the request.+listEventActionsResponse_eventActions :: Lens.Lens' ListEventActionsResponse (Prelude.Maybe [EventActionEntry])+listEventActionsResponse_eventActions = Lens.lens (\ListEventActionsResponse' {eventActions} -> eventActions) (\s@ListEventActionsResponse' {} a -> s {eventActions = a} :: ListEventActionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The token value retrieved from a previous call to access the next page+-- of results.+listEventActionsResponse_nextToken :: Lens.Lens' ListEventActionsResponse (Prelude.Maybe Prelude.Text)+listEventActionsResponse_nextToken = Lens.lens (\ListEventActionsResponse' {nextToken} -> nextToken) (\s@ListEventActionsResponse' {} a -> s {nextToken = a} :: ListEventActionsResponse)++-- | The response's http status code.+listEventActionsResponse_httpStatus :: Lens.Lens' ListEventActionsResponse Prelude.Int+listEventActionsResponse_httpStatus = Lens.lens (\ListEventActionsResponse' {httpStatus} -> httpStatus) (\s@ListEventActionsResponse' {} a -> s {httpStatus = a} :: ListEventActionsResponse)++instance Prelude.NFData ListEventActionsResponse where+ rnf ListEventActionsResponse' {..} =+ Prelude.rnf eventActions+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/ListJobs.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.DataExchange.ListJobs+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation lists your jobs sorted by CreatedAt in descending order.+--+-- This operation returns paginated results.+module Amazonka.DataExchange.ListJobs+ ( -- * Creating a Request+ ListJobs (..),+ newListJobs,++ -- * Request Lenses+ listJobs_dataSetId,+ listJobs_maxResults,+ listJobs_nextToken,+ listJobs_revisionId,++ -- * Destructuring the Response+ ListJobsResponse (..),+ newListJobsResponse,++ -- * Response Lenses+ listJobsResponse_jobs,+ listJobsResponse_nextToken,+ listJobsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListJobs' smart constructor.+data ListJobs = ListJobs'+ { -- | The unique identifier for a data set.+ dataSetId :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of results returned by a single call.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token value retrieved from a previous call to access the next page+ -- of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for a revision.+ revisionId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListJobs' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSetId', 'listJobs_dataSetId' - The unique identifier for a data set.+--+-- 'maxResults', 'listJobs_maxResults' - The maximum number of results returned by a single call.+--+-- 'nextToken', 'listJobs_nextToken' - The token value retrieved from a previous call to access the next page+-- of results.+--+-- 'revisionId', 'listJobs_revisionId' - The unique identifier for a revision.+newListJobs ::+ ListJobs+newListJobs =+ ListJobs'+ { dataSetId = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ revisionId = Prelude.Nothing+ }++-- | The unique identifier for a data set.+listJobs_dataSetId :: Lens.Lens' ListJobs (Prelude.Maybe Prelude.Text)+listJobs_dataSetId = Lens.lens (\ListJobs' {dataSetId} -> dataSetId) (\s@ListJobs' {} a -> s {dataSetId = a} :: ListJobs)++-- | The maximum number of results returned by a single call.+listJobs_maxResults :: Lens.Lens' ListJobs (Prelude.Maybe Prelude.Natural)+listJobs_maxResults = Lens.lens (\ListJobs' {maxResults} -> maxResults) (\s@ListJobs' {} a -> s {maxResults = a} :: ListJobs)++-- | The token value retrieved from a previous call to access the next page+-- of results.+listJobs_nextToken :: Lens.Lens' ListJobs (Prelude.Maybe Prelude.Text)+listJobs_nextToken = Lens.lens (\ListJobs' {nextToken} -> nextToken) (\s@ListJobs' {} a -> s {nextToken = a} :: ListJobs)++-- | The unique identifier for a revision.+listJobs_revisionId :: Lens.Lens' ListJobs (Prelude.Maybe Prelude.Text)+listJobs_revisionId = Lens.lens (\ListJobs' {revisionId} -> revisionId) (\s@ListJobs' {} a -> s {revisionId = a} :: ListJobs)++instance Core.AWSPager ListJobs where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listJobsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listJobsResponse_jobs+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listJobs_nextToken+ Lens..~ rs+ Lens.^? listJobsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListJobs where+ type AWSResponse ListJobs = ListJobsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListJobsResponse'+ Prelude.<$> (x Data..?> "Jobs" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListJobs where+ hashWithSalt _salt ListJobs' {..} =+ _salt+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` revisionId++instance Prelude.NFData ListJobs where+ rnf ListJobs' {..} =+ Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToHeaders ListJobs where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListJobs where+ toPath = Prelude.const "/v1/jobs"++instance Data.ToQuery ListJobs where+ toQuery ListJobs' {..} =+ Prelude.mconcat+ [ "dataSetId" Data.=: dataSetId,+ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken,+ "revisionId" Data.=: revisionId+ ]++-- | /See:/ 'newListJobsResponse' smart constructor.+data ListJobsResponse = ListJobsResponse'+ { -- | The jobs listed by the request.+ jobs :: Prelude.Maybe [JobEntry],+ -- | The token value retrieved from a previous call to access the next page+ -- 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 'ListJobsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'jobs', 'listJobsResponse_jobs' - The jobs listed by the request.+--+-- 'nextToken', 'listJobsResponse_nextToken' - The token value retrieved from a previous call to access the next page+-- of results.+--+-- 'httpStatus', 'listJobsResponse_httpStatus' - The response's http status code.+newListJobsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListJobsResponse+newListJobsResponse pHttpStatus_ =+ ListJobsResponse'+ { jobs = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The jobs listed by the request.+listJobsResponse_jobs :: Lens.Lens' ListJobsResponse (Prelude.Maybe [JobEntry])+listJobsResponse_jobs = Lens.lens (\ListJobsResponse' {jobs} -> jobs) (\s@ListJobsResponse' {} a -> s {jobs = a} :: ListJobsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The token value retrieved from a previous call to access the next page+-- of results.+listJobsResponse_nextToken :: Lens.Lens' ListJobsResponse (Prelude.Maybe Prelude.Text)+listJobsResponse_nextToken = Lens.lens (\ListJobsResponse' {nextToken} -> nextToken) (\s@ListJobsResponse' {} a -> s {nextToken = a} :: ListJobsResponse)++-- | The response's http status code.+listJobsResponse_httpStatus :: Lens.Lens' ListJobsResponse Prelude.Int+listJobsResponse_httpStatus = Lens.lens (\ListJobsResponse' {httpStatus} -> httpStatus) (\s@ListJobsResponse' {} a -> s {httpStatus = a} :: ListJobsResponse)++instance Prelude.NFData ListJobsResponse where+ rnf ListJobsResponse' {..} =+ Prelude.rnf jobs+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/ListRevisionAssets.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.DataExchange.ListRevisionAssets+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation lists a revision\'s assets sorted alphabetically in+-- descending order.+--+-- This operation returns paginated results.+module Amazonka.DataExchange.ListRevisionAssets+ ( -- * Creating a Request+ ListRevisionAssets (..),+ newListRevisionAssets,++ -- * Request Lenses+ listRevisionAssets_maxResults,+ listRevisionAssets_nextToken,+ listRevisionAssets_dataSetId,+ listRevisionAssets_revisionId,++ -- * Destructuring the Response+ ListRevisionAssetsResponse (..),+ newListRevisionAssetsResponse,++ -- * Response Lenses+ listRevisionAssetsResponse_assets,+ listRevisionAssetsResponse_nextToken,+ listRevisionAssetsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListRevisionAssets' smart constructor.+data ListRevisionAssets = ListRevisionAssets'+ { -- | The maximum number of results returned by a single call.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token value retrieved from a previous call to access the next page+ -- of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for a revision.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRevisionAssets' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listRevisionAssets_maxResults' - The maximum number of results returned by a single call.+--+-- 'nextToken', 'listRevisionAssets_nextToken' - The token value retrieved from a previous call to access the next page+-- of results.+--+-- 'dataSetId', 'listRevisionAssets_dataSetId' - The unique identifier for a data set.+--+-- 'revisionId', 'listRevisionAssets_revisionId' - The unique identifier for a revision.+newListRevisionAssets ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ListRevisionAssets+newListRevisionAssets pDataSetId_ pRevisionId_ =+ ListRevisionAssets'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | The maximum number of results returned by a single call.+listRevisionAssets_maxResults :: Lens.Lens' ListRevisionAssets (Prelude.Maybe Prelude.Natural)+listRevisionAssets_maxResults = Lens.lens (\ListRevisionAssets' {maxResults} -> maxResults) (\s@ListRevisionAssets' {} a -> s {maxResults = a} :: ListRevisionAssets)++-- | The token value retrieved from a previous call to access the next page+-- of results.+listRevisionAssets_nextToken :: Lens.Lens' ListRevisionAssets (Prelude.Maybe Prelude.Text)+listRevisionAssets_nextToken = Lens.lens (\ListRevisionAssets' {nextToken} -> nextToken) (\s@ListRevisionAssets' {} a -> s {nextToken = a} :: ListRevisionAssets)++-- | The unique identifier for a data set.+listRevisionAssets_dataSetId :: Lens.Lens' ListRevisionAssets Prelude.Text+listRevisionAssets_dataSetId = Lens.lens (\ListRevisionAssets' {dataSetId} -> dataSetId) (\s@ListRevisionAssets' {} a -> s {dataSetId = a} :: ListRevisionAssets)++-- | The unique identifier for a revision.+listRevisionAssets_revisionId :: Lens.Lens' ListRevisionAssets Prelude.Text+listRevisionAssets_revisionId = Lens.lens (\ListRevisionAssets' {revisionId} -> revisionId) (\s@ListRevisionAssets' {} a -> s {revisionId = a} :: ListRevisionAssets)++instance Core.AWSPager ListRevisionAssets where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listRevisionAssetsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listRevisionAssetsResponse_assets+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listRevisionAssets_nextToken+ Lens..~ rs+ Lens.^? listRevisionAssetsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListRevisionAssets where+ type+ AWSResponse ListRevisionAssets =+ ListRevisionAssetsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListRevisionAssetsResponse'+ Prelude.<$> (x Data..?> "Assets" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListRevisionAssets where+ hashWithSalt _salt ListRevisionAssets' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance Prelude.NFData ListRevisionAssets where+ rnf ListRevisionAssets' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToHeaders ListRevisionAssets where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListRevisionAssets where+ toPath ListRevisionAssets' {..} =+ Prelude.mconcat+ [ "/v1/data-sets/",+ Data.toBS dataSetId,+ "/revisions/",+ Data.toBS revisionId,+ "/assets"+ ]++instance Data.ToQuery ListRevisionAssets where+ toQuery ListRevisionAssets' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListRevisionAssetsResponse' smart constructor.+data ListRevisionAssetsResponse = ListRevisionAssetsResponse'+ { -- | The asset objects listed by the request.+ assets :: Prelude.Maybe [AssetEntry],+ -- | The token value retrieved from a previous call to access the next page+ -- 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 'ListRevisionAssetsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listRevisionAssetsResponse_assets' - The asset objects listed by the request.+--+-- 'nextToken', 'listRevisionAssetsResponse_nextToken' - The token value retrieved from a previous call to access the next page+-- of results.+--+-- 'httpStatus', 'listRevisionAssetsResponse_httpStatus' - The response's http status code.+newListRevisionAssetsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRevisionAssetsResponse+newListRevisionAssetsResponse pHttpStatus_ =+ ListRevisionAssetsResponse'+ { assets =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The asset objects listed by the request.+listRevisionAssetsResponse_assets :: Lens.Lens' ListRevisionAssetsResponse (Prelude.Maybe [AssetEntry])+listRevisionAssetsResponse_assets = Lens.lens (\ListRevisionAssetsResponse' {assets} -> assets) (\s@ListRevisionAssetsResponse' {} a -> s {assets = a} :: ListRevisionAssetsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The token value retrieved from a previous call to access the next page+-- of results.+listRevisionAssetsResponse_nextToken :: Lens.Lens' ListRevisionAssetsResponse (Prelude.Maybe Prelude.Text)+listRevisionAssetsResponse_nextToken = Lens.lens (\ListRevisionAssetsResponse' {nextToken} -> nextToken) (\s@ListRevisionAssetsResponse' {} a -> s {nextToken = a} :: ListRevisionAssetsResponse)++-- | The response's http status code.+listRevisionAssetsResponse_httpStatus :: Lens.Lens' ListRevisionAssetsResponse Prelude.Int+listRevisionAssetsResponse_httpStatus = Lens.lens (\ListRevisionAssetsResponse' {httpStatus} -> httpStatus) (\s@ListRevisionAssetsResponse' {} a -> s {httpStatus = a} :: ListRevisionAssetsResponse)++instance Prelude.NFData ListRevisionAssetsResponse where+ rnf ListRevisionAssetsResponse' {..} =+ Prelude.rnf assets+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/ListTagsForResource.hs view
@@ -0,0 +1,159 @@+{-# 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.DataExchange.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)+--+-- This operation lists the tags on the resource.+module Amazonka.DataExchange.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_resourceArn,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+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'+ { -- | An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.+ 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' - An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.+newListTagsForResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceArn_ =+ ListTagsForResource' {resourceArn = pResourceArn_}++-- | An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.+listTagsForResource_resourceArn :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_resourceArn = Lens.lens (\ListTagsForResource' {resourceArn} -> resourceArn) (\s@ListTagsForResource' {} a -> s {resourceArn = a} :: ListTagsForResource)++instance Core.AWSRequest ListTagsForResource where+ type+ AWSResponse ListTagsForResource =+ ListTagsForResourceResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListTagsForResourceResponse'+ Prelude.<$> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTagsForResource where+ hashWithSalt _salt ListTagsForResource' {..} =+ _salt `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData ListTagsForResource where+ rnf ListTagsForResource' {..} =+ Prelude.rnf resourceArn++instance Data.ToHeaders ListTagsForResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListTagsForResource where+ toPath ListTagsForResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery ListTagsForResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | A label that consists of a customer-defined key and an optional value.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'listTagsForResourceResponse_tags' - A label that consists of a customer-defined key and an optional value.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A label that consists of a customer-defined key and an optional value.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+ rnf ListTagsForResourceResponse' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/RevokeRevision.hs view
@@ -0,0 +1,369 @@+{-# 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.DataExchange.RevokeRevision+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation revokes subscribers\' access to a revision.+module Amazonka.DataExchange.RevokeRevision+ ( -- * Creating a Request+ RevokeRevision (..),+ newRevokeRevision,++ -- * Request Lenses+ revokeRevision_dataSetId,+ revokeRevision_revisionId,+ revokeRevision_revocationComment,++ -- * Destructuring the Response+ RevokeRevisionResponse (..),+ newRevokeRevisionResponse,++ -- * Response Lenses+ revokeRevisionResponse_arn,+ revokeRevisionResponse_comment,+ revokeRevisionResponse_createdAt,+ revokeRevisionResponse_dataSetId,+ revokeRevisionResponse_finalized,+ revokeRevisionResponse_id,+ revokeRevisionResponse_revocationComment,+ revokeRevisionResponse_revoked,+ revokeRevisionResponse_revokedAt,+ revokeRevisionResponse_sourceId,+ revokeRevisionResponse_updatedAt,+ revokeRevisionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRevokeRevision' smart constructor.+data RevokeRevision = RevokeRevision'+ { -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for a revision.+ revisionId :: Prelude.Text,+ -- | A required comment to inform subscribers of the reason their access to+ -- the revision was revoked.+ revocationComment :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RevokeRevision' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSetId', 'revokeRevision_dataSetId' - The unique identifier for a data set.+--+-- 'revisionId', 'revokeRevision_revisionId' - The unique identifier for a revision.+--+-- 'revocationComment', 'revokeRevision_revocationComment' - A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+newRevokeRevision ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ -- | 'revocationComment'+ Prelude.Text ->+ RevokeRevision+newRevokeRevision+ pDataSetId_+ pRevisionId_+ pRevocationComment_ =+ RevokeRevision'+ { dataSetId = pDataSetId_,+ revisionId = pRevisionId_,+ revocationComment = pRevocationComment_+ }++-- | The unique identifier for a data set.+revokeRevision_dataSetId :: Lens.Lens' RevokeRevision Prelude.Text+revokeRevision_dataSetId = Lens.lens (\RevokeRevision' {dataSetId} -> dataSetId) (\s@RevokeRevision' {} a -> s {dataSetId = a} :: RevokeRevision)++-- | The unique identifier for a revision.+revokeRevision_revisionId :: Lens.Lens' RevokeRevision Prelude.Text+revokeRevision_revisionId = Lens.lens (\RevokeRevision' {revisionId} -> revisionId) (\s@RevokeRevision' {} a -> s {revisionId = a} :: RevokeRevision)++-- | A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+revokeRevision_revocationComment :: Lens.Lens' RevokeRevision Prelude.Text+revokeRevision_revocationComment = Lens.lens (\RevokeRevision' {revocationComment} -> revocationComment) (\s@RevokeRevision' {} a -> s {revocationComment = a} :: RevokeRevision)++instance Core.AWSRequest RevokeRevision where+ type+ AWSResponse RevokeRevision =+ RevokeRevisionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ RevokeRevisionResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "Comment")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "DataSetId")+ Prelude.<*> (x Data..?> "Finalized")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "RevocationComment")+ Prelude.<*> (x Data..?> "Revoked")+ Prelude.<*> (x Data..?> "RevokedAt")+ Prelude.<*> (x Data..?> "SourceId")+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable RevokeRevision where+ hashWithSalt _salt RevokeRevision' {..} =+ _salt+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId+ `Prelude.hashWithSalt` revocationComment++instance Prelude.NFData RevokeRevision where+ rnf RevokeRevision' {..} =+ Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf revocationComment++instance Data.ToHeaders RevokeRevision where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON RevokeRevision where+ toJSON RevokeRevision' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("RevocationComment" Data..= revocationComment)+ ]+ )++instance Data.ToPath RevokeRevision where+ toPath RevokeRevision' {..} =+ Prelude.mconcat+ [ "/v1/data-sets/",+ Data.toBS dataSetId,+ "/revisions/",+ Data.toBS revisionId,+ "/revoke"+ ]++instance Data.ToQuery RevokeRevision where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newRevokeRevisionResponse' smart constructor.+data RevokeRevisionResponse = RevokeRevisionResponse'+ { -- | The ARN for the revision.+ arn :: Prelude.Maybe Prelude.Text,+ -- | An optional comment about the revision.+ comment :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the revision was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | The unique identifier for the data set associated with the data set+ -- revision.+ dataSetId :: Prelude.Maybe Prelude.Text,+ -- | To publish a revision to a data set in a product, the revision must+ -- first be finalized. Finalizing a revision tells AWS Data Exchange that+ -- changes to the assets in the revision are complete. After it\'s in this+ -- read-only state, you can publish the revision to your products.+ -- Finalized revisions can be published through the AWS Data Exchange+ -- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+ -- Marketplace Catalog API action. When using the API, revisions are+ -- uniquely identified by their ARN.+ finalized :: Prelude.Maybe Prelude.Bool,+ -- | The unique identifier for the revision.+ id :: Prelude.Maybe Prelude.Text,+ -- | A required comment to inform subscribers of the reason their access to+ -- the revision was revoked.+ revocationComment :: Prelude.Maybe Prelude.Text,+ -- | A status indicating that subscribers\' access to the revision was+ -- revoked.+ revoked :: Prelude.Maybe Prelude.Bool,+ -- | The date and time that the revision was revoked, in ISO 8601 format.+ revokedAt :: Prelude.Maybe Data.ISO8601,+ -- | The revision ID of the owned revision corresponding to the entitled+ -- revision being viewed. This parameter is returned when a revision owner+ -- is viewing the entitled copy of its owned revision.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the revision was last updated, in ISO 8601+ -- format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RevokeRevisionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'revokeRevisionResponse_arn' - The ARN for the revision.+--+-- 'comment', 'revokeRevisionResponse_comment' - An optional comment about the revision.+--+-- 'createdAt', 'revokeRevisionResponse_createdAt' - The date and time that the revision was created, in ISO 8601 format.+--+-- 'dataSetId', 'revokeRevisionResponse_dataSetId' - The unique identifier for the data set associated with the data set+-- revision.+--+-- 'finalized', 'revokeRevisionResponse_finalized' - To publish a revision to a data set in a product, the revision must+-- first be finalized. Finalizing a revision tells AWS Data Exchange that+-- changes to the assets in the revision are complete. After it\'s in this+-- read-only state, you can publish the revision to your products.+-- Finalized revisions can be published through the AWS Data Exchange+-- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+-- Marketplace Catalog API action. When using the API, revisions are+-- uniquely identified by their ARN.+--+-- 'id', 'revokeRevisionResponse_id' - The unique identifier for the revision.+--+-- 'revocationComment', 'revokeRevisionResponse_revocationComment' - A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+--+-- 'revoked', 'revokeRevisionResponse_revoked' - A status indicating that subscribers\' access to the revision was+-- revoked.+--+-- 'revokedAt', 'revokeRevisionResponse_revokedAt' - The date and time that the revision was revoked, in ISO 8601 format.+--+-- 'sourceId', 'revokeRevisionResponse_sourceId' - The revision ID of the owned revision corresponding to the entitled+-- revision being viewed. This parameter is returned when a revision owner+-- is viewing the entitled copy of its owned revision.+--+-- 'updatedAt', 'revokeRevisionResponse_updatedAt' - The date and time that the revision was last updated, in ISO 8601+-- format.+--+-- 'httpStatus', 'revokeRevisionResponse_httpStatus' - The response's http status code.+newRevokeRevisionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RevokeRevisionResponse+newRevokeRevisionResponse pHttpStatus_ =+ RevokeRevisionResponse'+ { arn = Prelude.Nothing,+ comment = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ dataSetId = Prelude.Nothing,+ finalized = Prelude.Nothing,+ id = Prelude.Nothing,+ revocationComment = Prelude.Nothing,+ revoked = Prelude.Nothing,+ revokedAt = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the revision.+revokeRevisionResponse_arn :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.Text)+revokeRevisionResponse_arn = Lens.lens (\RevokeRevisionResponse' {arn} -> arn) (\s@RevokeRevisionResponse' {} a -> s {arn = a} :: RevokeRevisionResponse)++-- | An optional comment about the revision.+revokeRevisionResponse_comment :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.Text)+revokeRevisionResponse_comment = Lens.lens (\RevokeRevisionResponse' {comment} -> comment) (\s@RevokeRevisionResponse' {} a -> s {comment = a} :: RevokeRevisionResponse)++-- | The date and time that the revision was created, in ISO 8601 format.+revokeRevisionResponse_createdAt :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.UTCTime)+revokeRevisionResponse_createdAt = Lens.lens (\RevokeRevisionResponse' {createdAt} -> createdAt) (\s@RevokeRevisionResponse' {} a -> s {createdAt = a} :: RevokeRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier for the data set associated with the data set+-- revision.+revokeRevisionResponse_dataSetId :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.Text)+revokeRevisionResponse_dataSetId = Lens.lens (\RevokeRevisionResponse' {dataSetId} -> dataSetId) (\s@RevokeRevisionResponse' {} a -> s {dataSetId = a} :: RevokeRevisionResponse)++-- | To publish a revision to a data set in a product, the revision must+-- first be finalized. Finalizing a revision tells AWS Data Exchange that+-- changes to the assets in the revision are complete. After it\'s in this+-- read-only state, you can publish the revision to your products.+-- Finalized revisions can be published through the AWS Data Exchange+-- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+-- Marketplace Catalog API action. When using the API, revisions are+-- uniquely identified by their ARN.+revokeRevisionResponse_finalized :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.Bool)+revokeRevisionResponse_finalized = Lens.lens (\RevokeRevisionResponse' {finalized} -> finalized) (\s@RevokeRevisionResponse' {} a -> s {finalized = a} :: RevokeRevisionResponse)++-- | The unique identifier for the revision.+revokeRevisionResponse_id :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.Text)+revokeRevisionResponse_id = Lens.lens (\RevokeRevisionResponse' {id} -> id) (\s@RevokeRevisionResponse' {} a -> s {id = a} :: RevokeRevisionResponse)++-- | A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+revokeRevisionResponse_revocationComment :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.Text)+revokeRevisionResponse_revocationComment = Lens.lens (\RevokeRevisionResponse' {revocationComment} -> revocationComment) (\s@RevokeRevisionResponse' {} a -> s {revocationComment = a} :: RevokeRevisionResponse)++-- | A status indicating that subscribers\' access to the revision was+-- revoked.+revokeRevisionResponse_revoked :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.Bool)+revokeRevisionResponse_revoked = Lens.lens (\RevokeRevisionResponse' {revoked} -> revoked) (\s@RevokeRevisionResponse' {} a -> s {revoked = a} :: RevokeRevisionResponse)++-- | The date and time that the revision was revoked, in ISO 8601 format.+revokeRevisionResponse_revokedAt :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.UTCTime)+revokeRevisionResponse_revokedAt = Lens.lens (\RevokeRevisionResponse' {revokedAt} -> revokedAt) (\s@RevokeRevisionResponse' {} a -> s {revokedAt = a} :: RevokeRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The revision ID of the owned revision corresponding to the entitled+-- revision being viewed. This parameter is returned when a revision owner+-- is viewing the entitled copy of its owned revision.+revokeRevisionResponse_sourceId :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.Text)+revokeRevisionResponse_sourceId = Lens.lens (\RevokeRevisionResponse' {sourceId} -> sourceId) (\s@RevokeRevisionResponse' {} a -> s {sourceId = a} :: RevokeRevisionResponse)++-- | The date and time that the revision was last updated, in ISO 8601+-- format.+revokeRevisionResponse_updatedAt :: Lens.Lens' RevokeRevisionResponse (Prelude.Maybe Prelude.UTCTime)+revokeRevisionResponse_updatedAt = Lens.lens (\RevokeRevisionResponse' {updatedAt} -> updatedAt) (\s@RevokeRevisionResponse' {} a -> s {updatedAt = a} :: RevokeRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+revokeRevisionResponse_httpStatus :: Lens.Lens' RevokeRevisionResponse Prelude.Int+revokeRevisionResponse_httpStatus = Lens.lens (\RevokeRevisionResponse' {httpStatus} -> httpStatus) (\s@RevokeRevisionResponse' {} a -> s {httpStatus = a} :: RevokeRevisionResponse)++instance Prelude.NFData RevokeRevisionResponse where+ rnf RevokeRevisionResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf comment+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf finalized+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf revocationComment+ `Prelude.seq` Prelude.rnf revoked+ `Prelude.seq` Prelude.rnf revokedAt+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/SendApiAsset.hs view
@@ -0,0 +1,289 @@+{-# 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.DataExchange.SendApiAsset+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation invokes an API Gateway API asset. The request is proxied+-- to the provider’s API Gateway API.+module Amazonka.DataExchange.SendApiAsset+ ( -- * Creating a Request+ SendApiAsset (..),+ newSendApiAsset,++ -- * Request Lenses+ sendApiAsset_body,+ sendApiAsset_method,+ sendApiAsset_path,+ sendApiAsset_queryStringParameters,+ sendApiAsset_requestHeaders,+ sendApiAsset_assetId,+ sendApiAsset_dataSetId,+ sendApiAsset_revisionId,++ -- * Destructuring the Response+ SendApiAssetResponse (..),+ newSendApiAssetResponse,++ -- * Response Lenses+ sendApiAssetResponse_body,+ sendApiAssetResponse_responseHeaders,+ sendApiAssetResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newSendApiAsset' smart constructor.+data SendApiAsset = SendApiAsset'+ { -- | The request body.+ body :: Prelude.Maybe Prelude.ByteString,+ -- | HTTP method value for the API request. Alternatively, you can use the+ -- appropriate verb in your request.+ method :: Prelude.Maybe Prelude.Text,+ -- | URI path value for the API request. Alternatively, you can set the URI+ -- path directly by invoking \/v1\/{pathValue}.+ path :: Prelude.Maybe Prelude.Text,+ -- | Attach query string parameters to the end of the URI (for example,+ -- \/v1\/examplePath?exampleParam=exampleValue).+ queryStringParameters :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | Any header value prefixed with x-amzn-dataexchange-header- will have+ -- that stripped before sending the Asset API request. Use this when you+ -- want to override a header that AWS Data Exchange uses. Alternatively,+ -- you can use the header without a prefix to the HTTP request.+ requestHeaders :: Prelude.HashMap Prelude.Text Prelude.Text,+ -- | Asset ID value for the API request.+ assetId :: Prelude.Text,+ -- | Data set ID value for the API request.+ dataSetId :: Prelude.Text,+ -- | Revision ID value for the API request.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SendApiAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'body', 'sendApiAsset_body' - The request body.+--+-- 'method', 'sendApiAsset_method' - HTTP method value for the API request. Alternatively, you can use the+-- appropriate verb in your request.+--+-- 'path', 'sendApiAsset_path' - URI path value for the API request. Alternatively, you can set the URI+-- path directly by invoking \/v1\/{pathValue}.+--+-- 'queryStringParameters', 'sendApiAsset_queryStringParameters' - Attach query string parameters to the end of the URI (for example,+-- \/v1\/examplePath?exampleParam=exampleValue).+--+-- 'requestHeaders', 'sendApiAsset_requestHeaders' - Any header value prefixed with x-amzn-dataexchange-header- will have+-- that stripped before sending the Asset API request. Use this when you+-- want to override a header that AWS Data Exchange uses. Alternatively,+-- you can use the header without a prefix to the HTTP request.+--+-- 'assetId', 'sendApiAsset_assetId' - Asset ID value for the API request.+--+-- 'dataSetId', 'sendApiAsset_dataSetId' - Data set ID value for the API request.+--+-- 'revisionId', 'sendApiAsset_revisionId' - Revision ID value for the API request.+newSendApiAsset ::+ -- | 'assetId'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ SendApiAsset+newSendApiAsset pAssetId_ pDataSetId_ pRevisionId_ =+ SendApiAsset'+ { body = Prelude.Nothing,+ method = Prelude.Nothing,+ path = Prelude.Nothing,+ queryStringParameters = Prelude.Nothing,+ requestHeaders = Prelude.mempty,+ assetId = pAssetId_,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | The request body.+sendApiAsset_body :: Lens.Lens' SendApiAsset (Prelude.Maybe Prelude.ByteString)+sendApiAsset_body = Lens.lens (\SendApiAsset' {body} -> body) (\s@SendApiAsset' {} a -> s {body = a} :: SendApiAsset)++-- | HTTP method value for the API request. Alternatively, you can use the+-- appropriate verb in your request.+sendApiAsset_method :: Lens.Lens' SendApiAsset (Prelude.Maybe Prelude.Text)+sendApiAsset_method = Lens.lens (\SendApiAsset' {method} -> method) (\s@SendApiAsset' {} a -> s {method = a} :: SendApiAsset)++-- | URI path value for the API request. Alternatively, you can set the URI+-- path directly by invoking \/v1\/{pathValue}.+sendApiAsset_path :: Lens.Lens' SendApiAsset (Prelude.Maybe Prelude.Text)+sendApiAsset_path = Lens.lens (\SendApiAsset' {path} -> path) (\s@SendApiAsset' {} a -> s {path = a} :: SendApiAsset)++-- | Attach query string parameters to the end of the URI (for example,+-- \/v1\/examplePath?exampleParam=exampleValue).+sendApiAsset_queryStringParameters :: Lens.Lens' SendApiAsset (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+sendApiAsset_queryStringParameters = Lens.lens (\SendApiAsset' {queryStringParameters} -> queryStringParameters) (\s@SendApiAsset' {} a -> s {queryStringParameters = a} :: SendApiAsset) Prelude.. Lens.mapping Lens.coerced++-- | Any header value prefixed with x-amzn-dataexchange-header- will have+-- that stripped before sending the Asset API request. Use this when you+-- want to override a header that AWS Data Exchange uses. Alternatively,+-- you can use the header without a prefix to the HTTP request.+sendApiAsset_requestHeaders :: Lens.Lens' SendApiAsset (Prelude.HashMap Prelude.Text Prelude.Text)+sendApiAsset_requestHeaders = Lens.lens (\SendApiAsset' {requestHeaders} -> requestHeaders) (\s@SendApiAsset' {} a -> s {requestHeaders = a} :: SendApiAsset) Prelude.. Lens.coerced++-- | Asset ID value for the API request.+sendApiAsset_assetId :: Lens.Lens' SendApiAsset Prelude.Text+sendApiAsset_assetId = Lens.lens (\SendApiAsset' {assetId} -> assetId) (\s@SendApiAsset' {} a -> s {assetId = a} :: SendApiAsset)++-- | Data set ID value for the API request.+sendApiAsset_dataSetId :: Lens.Lens' SendApiAsset Prelude.Text+sendApiAsset_dataSetId = Lens.lens (\SendApiAsset' {dataSetId} -> dataSetId) (\s@SendApiAsset' {} a -> s {dataSetId = a} :: SendApiAsset)++-- | Revision ID value for the API request.+sendApiAsset_revisionId :: Lens.Lens' SendApiAsset Prelude.Text+sendApiAsset_revisionId = Lens.lens (\SendApiAsset' {revisionId} -> revisionId) (\s@SendApiAsset' {} a -> s {revisionId = a} :: SendApiAsset)++instance Core.AWSRequest SendApiAsset where+ type AWSResponse SendApiAsset = SendApiAssetResponse+ request overrides =+ Request.postBody (overrides defaultService)+ response =+ Response.receiveBytes+ ( \s h x ->+ SendApiAssetResponse'+ Prelude.<$> (Prelude.pure (Prelude.Just (Prelude.coerce x)))+ Prelude.<*> (Data.parseHeadersMap "" h)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable SendApiAsset where+ hashWithSalt _salt SendApiAsset' {..} =+ _salt+ `Prelude.hashWithSalt` body+ `Prelude.hashWithSalt` method+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` queryStringParameters+ `Prelude.hashWithSalt` requestHeaders+ `Prelude.hashWithSalt` assetId+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance Prelude.NFData SendApiAsset where+ rnf SendApiAsset' {..} =+ Prelude.rnf body+ `Prelude.seq` Prelude.rnf method+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf queryStringParameters+ `Prelude.seq` Prelude.rnf requestHeaders+ `Prelude.seq` Prelude.rnf assetId+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToBody SendApiAsset where+ toBody SendApiAsset' {..} = Data.toBody body++instance Data.ToHeaders SendApiAsset where+ toHeaders SendApiAsset' {..} =+ Prelude.mconcat+ [ "x-amzn-dataexchange-http-method" Data.=# method,+ "x-amzn-dataexchange-path" Data.=# path,+ "x-amzn-dataexchange-header-" Data.=# requestHeaders,+ "x-amzn-dataexchange-asset-id" Data.=# assetId,+ "x-amzn-dataexchange-data-set-id" Data.=# dataSetId,+ "x-amzn-dataexchange-revision-id" Data.=# revisionId,+ "Content-Type"+ Data.=# ("application/x-amz-json-1.1" :: Prelude.ByteString)+ ]++instance Data.ToPath SendApiAsset where+ toPath = Prelude.const "/v1"++instance Data.ToQuery SendApiAsset where+ toQuery SendApiAsset' {..} =+ Prelude.mconcat+ [ "QueryStringParameters"+ Data.=: Data.toQuery+ ( Data.toQueryMap "entry" "key" "value"+ Prelude.<$> queryStringParameters+ )+ ]++-- | /See:/ 'newSendApiAssetResponse' smart constructor.+data SendApiAssetResponse = SendApiAssetResponse'+ { -- | The response body from the underlying API tracked by the API asset.+ body :: Prelude.Maybe Prelude.ByteString,+ -- | The response headers from the underlying API tracked by the API asset.+ responseHeaders :: Prelude.HashMap Prelude.Text Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SendApiAssetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'body', 'sendApiAssetResponse_body' - The response body from the underlying API tracked by the API asset.+--+-- 'responseHeaders', 'sendApiAssetResponse_responseHeaders' - The response headers from the underlying API tracked by the API asset.+--+-- 'httpStatus', 'sendApiAssetResponse_httpStatus' - The response's http status code.+newSendApiAssetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ SendApiAssetResponse+newSendApiAssetResponse pHttpStatus_ =+ SendApiAssetResponse'+ { body = Prelude.Nothing,+ responseHeaders = Prelude.mempty,+ httpStatus = pHttpStatus_+ }++-- | The response body from the underlying API tracked by the API asset.+sendApiAssetResponse_body :: Lens.Lens' SendApiAssetResponse (Prelude.Maybe Prelude.ByteString)+sendApiAssetResponse_body = Lens.lens (\SendApiAssetResponse' {body} -> body) (\s@SendApiAssetResponse' {} a -> s {body = a} :: SendApiAssetResponse)++-- | The response headers from the underlying API tracked by the API asset.+sendApiAssetResponse_responseHeaders :: Lens.Lens' SendApiAssetResponse (Prelude.HashMap Prelude.Text Prelude.Text)+sendApiAssetResponse_responseHeaders = Lens.lens (\SendApiAssetResponse' {responseHeaders} -> responseHeaders) (\s@SendApiAssetResponse' {} a -> s {responseHeaders = a} :: SendApiAssetResponse) Prelude.. Lens.coerced++-- | The response's http status code.+sendApiAssetResponse_httpStatus :: Lens.Lens' SendApiAssetResponse Prelude.Int+sendApiAssetResponse_httpStatus = Lens.lens (\SendApiAssetResponse' {httpStatus} -> httpStatus) (\s@SendApiAssetResponse' {} a -> s {httpStatus = a} :: SendApiAssetResponse)++instance Prelude.NFData SendApiAssetResponse where+ rnf SendApiAssetResponse' {..} =+ Prelude.rnf body+ `Prelude.seq` Prelude.rnf responseHeaders+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/StartJob.hs view
@@ -0,0 +1,142 @@+{-# 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.DataExchange.StartJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation starts a job.+module Amazonka.DataExchange.StartJob+ ( -- * Creating a Request+ StartJob (..),+ newStartJob,++ -- * Request Lenses+ startJob_jobId,++ -- * Destructuring the Response+ StartJobResponse (..),+ newStartJobResponse,++ -- * Response Lenses+ startJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStartJob' smart constructor.+data StartJob = StartJob'+ { -- | The unique identifier for a job.+ jobId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartJob' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'jobId', 'startJob_jobId' - The unique identifier for a job.+newStartJob ::+ -- | 'jobId'+ Prelude.Text ->+ StartJob+newStartJob pJobId_ = StartJob' {jobId = pJobId_}++-- | The unique identifier for a job.+startJob_jobId :: Lens.Lens' StartJob Prelude.Text+startJob_jobId = Lens.lens (\StartJob' {jobId} -> jobId) (\s@StartJob' {} a -> s {jobId = a} :: StartJob)++instance Core.AWSRequest StartJob where+ type AWSResponse StartJob = StartJobResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ StartJobResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable StartJob where+ hashWithSalt _salt StartJob' {..} =+ _salt `Prelude.hashWithSalt` jobId++instance Prelude.NFData StartJob where+ rnf StartJob' {..} = Prelude.rnf jobId++instance Data.ToHeaders StartJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON StartJob where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath StartJob where+ toPath StartJob' {..} =+ Prelude.mconcat ["/v1/jobs/", Data.toBS jobId]++instance Data.ToQuery StartJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStartJobResponse' smart constructor.+data StartJobResponse = StartJobResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartJobResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'startJobResponse_httpStatus' - The response's http status code.+newStartJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ StartJobResponse+newStartJobResponse pHttpStatus_ =+ StartJobResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+startJobResponse_httpStatus :: Lens.Lens' StartJobResponse Prelude.Int+startJobResponse_httpStatus = Lens.lens (\StartJobResponse' {httpStatus} -> httpStatus) (\s@StartJobResponse' {} a -> s {httpStatus = a} :: StartJobResponse)++instance Prelude.NFData StartJobResponse where+ rnf StartJobResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/TagResource.hs view
@@ -0,0 +1,142 @@+{-# 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.DataExchange.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)+--+-- This operation tags a resource.+module Amazonka.DataExchange.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_resourceArn,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+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'+ { -- | An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.+ resourceArn :: Prelude.Text,+ -- | A label that consists of a customer-defined key and an optional value.+ tags :: Prelude.HashMap Prelude.Text Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'tagResource_resourceArn' - An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.+--+-- 'tags', 'tagResource_tags' - A label that consists of a customer-defined key and an optional value.+newTagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pResourceArn_ =+ TagResource'+ { resourceArn = pResourceArn_,+ tags = Prelude.mempty+ }++-- | An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++-- | A label that consists of a customer-defined key and an optional value.+tagResource_tags :: Lens.Lens' TagResource (Prelude.HashMap Prelude.Text Prelude.Text)+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response = Response.receiveNull TagResourceResponse'++instance Prelude.Hashable TagResource where+ hashWithSalt _salt TagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagResource where+ rnf TagResource' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON TagResource where+ toJSON TagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("tags" Data..= tags)]+ )++instance Data.ToPath TagResource where+ toPath TagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery TagResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTagResourceResponse' smart constructor.+data TagResourceResponse = TagResourceResponse'+ {+ }+ 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.+newTagResourceResponse ::+ TagResourceResponse+newTagResourceResponse = TagResourceResponse'++instance Prelude.NFData TagResourceResponse where+ rnf _ = ()
+ gen/Amazonka/DataExchange/Types.hs view
@@ -0,0 +1,704 @@+{-# 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.DataExchange.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.DataExchange.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _ConflictException,+ _InternalServerException,+ _ResourceNotFoundException,+ _ServiceLimitExceededException,+ _ThrottlingException,+ _ValidationException,++ -- * AssetType+ AssetType (..),++ -- * Code+ Code (..),++ -- * DatabaseLFTagPolicyPermission+ DatabaseLFTagPolicyPermission (..),++ -- * JobErrorLimitName+ JobErrorLimitName (..),++ -- * JobErrorResourceTypes+ JobErrorResourceTypes (..),++ -- * LFPermission+ LFPermission (..),++ -- * LFResourceType+ LFResourceType (..),++ -- * LakeFormationDataPermissionType+ LakeFormationDataPermissionType (..),++ -- * Origin+ Origin (..),++ -- * ProtocolType+ ProtocolType (..),++ -- * ServerSideEncryptionTypes+ ServerSideEncryptionTypes (..),++ -- * State+ State (..),++ -- * TableTagPolicyLFPermission+ TableTagPolicyLFPermission (..),++ -- * Type+ Type (..),++ -- * Action+ Action (..),+ newAction,+ action_exportRevisionToS3,++ -- * ApiGatewayApiAsset+ ApiGatewayApiAsset (..),+ newApiGatewayApiAsset,+ apiGatewayApiAsset_apiDescription,+ apiGatewayApiAsset_apiEndpoint,+ apiGatewayApiAsset_apiId,+ apiGatewayApiAsset_apiKey,+ apiGatewayApiAsset_apiName,+ apiGatewayApiAsset_apiSpecificationDownloadUrl,+ apiGatewayApiAsset_apiSpecificationDownloadUrlExpiresAt,+ apiGatewayApiAsset_protocolType,+ apiGatewayApiAsset_stage,++ -- * AssetDestinationEntry+ AssetDestinationEntry (..),+ newAssetDestinationEntry,+ assetDestinationEntry_key,+ assetDestinationEntry_assetId,+ assetDestinationEntry_bucket,++ -- * AssetDetails+ AssetDetails (..),+ newAssetDetails,+ assetDetails_apiGatewayApiAsset,+ assetDetails_lakeFormationDataPermissionAsset,+ assetDetails_redshiftDataShareAsset,+ assetDetails_s3DataAccessAsset,+ assetDetails_s3SnapshotAsset,++ -- * AssetEntry+ AssetEntry (..),+ newAssetEntry,+ assetEntry_sourceId,+ assetEntry_arn,+ assetEntry_assetDetails,+ assetEntry_assetType,+ assetEntry_createdAt,+ assetEntry_dataSetId,+ assetEntry_id,+ assetEntry_name,+ assetEntry_revisionId,+ assetEntry_updatedAt,++ -- * AssetSourceEntry+ AssetSourceEntry (..),+ newAssetSourceEntry,+ assetSourceEntry_bucket,+ assetSourceEntry_key,++ -- * AutoExportRevisionDestinationEntry+ AutoExportRevisionDestinationEntry (..),+ newAutoExportRevisionDestinationEntry,+ autoExportRevisionDestinationEntry_keyPattern,+ autoExportRevisionDestinationEntry_bucket,++ -- * AutoExportRevisionToS3RequestDetails+ AutoExportRevisionToS3RequestDetails (..),+ newAutoExportRevisionToS3RequestDetails,+ autoExportRevisionToS3RequestDetails_encryption,+ autoExportRevisionToS3RequestDetails_revisionDestination,++ -- * CreateS3DataAccessFromS3BucketRequestDetails+ CreateS3DataAccessFromS3BucketRequestDetails (..),+ newCreateS3DataAccessFromS3BucketRequestDetails,+ createS3DataAccessFromS3BucketRequestDetails_assetSource,+ createS3DataAccessFromS3BucketRequestDetails_dataSetId,+ createS3DataAccessFromS3BucketRequestDetails_revisionId,++ -- * CreateS3DataAccessFromS3BucketResponseDetails+ CreateS3DataAccessFromS3BucketResponseDetails (..),+ newCreateS3DataAccessFromS3BucketResponseDetails,+ createS3DataAccessFromS3BucketResponseDetails_assetSource,+ createS3DataAccessFromS3BucketResponseDetails_dataSetId,+ createS3DataAccessFromS3BucketResponseDetails_revisionId,++ -- * DataSetEntry+ DataSetEntry (..),+ newDataSetEntry,+ dataSetEntry_originDetails,+ dataSetEntry_sourceId,+ dataSetEntry_arn,+ dataSetEntry_assetType,+ dataSetEntry_createdAt,+ dataSetEntry_description,+ dataSetEntry_id,+ dataSetEntry_name,+ dataSetEntry_origin,+ dataSetEntry_updatedAt,++ -- * DatabaseLFTagPolicy+ DatabaseLFTagPolicy (..),+ newDatabaseLFTagPolicy,+ databaseLFTagPolicy_expression,++ -- * DatabaseLFTagPolicyAndPermissions+ DatabaseLFTagPolicyAndPermissions (..),+ newDatabaseLFTagPolicyAndPermissions,+ databaseLFTagPolicyAndPermissions_expression,+ databaseLFTagPolicyAndPermissions_permissions,++ -- * Details+ Details (..),+ newDetails,+ details_importAssetFromSignedUrlJobErrorDetails,+ details_importAssetsFromS3JobErrorDetails,++ -- * Event+ Event (..),+ newEvent,+ event_revisionPublished,++ -- * EventActionEntry+ EventActionEntry (..),+ newEventActionEntry,+ eventActionEntry_action,+ eventActionEntry_arn,+ eventActionEntry_createdAt,+ eventActionEntry_event,+ eventActionEntry_id,+ eventActionEntry_updatedAt,++ -- * ExportAssetToSignedUrlRequestDetails+ ExportAssetToSignedUrlRequestDetails (..),+ newExportAssetToSignedUrlRequestDetails,+ exportAssetToSignedUrlRequestDetails_assetId,+ exportAssetToSignedUrlRequestDetails_dataSetId,+ exportAssetToSignedUrlRequestDetails_revisionId,++ -- * ExportAssetToSignedUrlResponseDetails+ ExportAssetToSignedUrlResponseDetails (..),+ newExportAssetToSignedUrlResponseDetails,+ exportAssetToSignedUrlResponseDetails_signedUrl,+ exportAssetToSignedUrlResponseDetails_signedUrlExpiresAt,+ exportAssetToSignedUrlResponseDetails_assetId,+ exportAssetToSignedUrlResponseDetails_dataSetId,+ exportAssetToSignedUrlResponseDetails_revisionId,++ -- * ExportAssetsToS3RequestDetails+ ExportAssetsToS3RequestDetails (..),+ newExportAssetsToS3RequestDetails,+ exportAssetsToS3RequestDetails_encryption,+ exportAssetsToS3RequestDetails_assetDestinations,+ exportAssetsToS3RequestDetails_dataSetId,+ exportAssetsToS3RequestDetails_revisionId,++ -- * ExportAssetsToS3ResponseDetails+ ExportAssetsToS3ResponseDetails (..),+ newExportAssetsToS3ResponseDetails,+ exportAssetsToS3ResponseDetails_encryption,+ exportAssetsToS3ResponseDetails_assetDestinations,+ exportAssetsToS3ResponseDetails_dataSetId,+ exportAssetsToS3ResponseDetails_revisionId,++ -- * ExportRevisionsToS3RequestDetails+ ExportRevisionsToS3RequestDetails (..),+ newExportRevisionsToS3RequestDetails,+ exportRevisionsToS3RequestDetails_encryption,+ exportRevisionsToS3RequestDetails_dataSetId,+ exportRevisionsToS3RequestDetails_revisionDestinations,++ -- * ExportRevisionsToS3ResponseDetails+ ExportRevisionsToS3ResponseDetails (..),+ newExportRevisionsToS3ResponseDetails,+ exportRevisionsToS3ResponseDetails_encryption,+ exportRevisionsToS3ResponseDetails_eventActionArn,+ exportRevisionsToS3ResponseDetails_dataSetId,+ exportRevisionsToS3ResponseDetails_revisionDestinations,++ -- * ExportServerSideEncryption+ ExportServerSideEncryption (..),+ newExportServerSideEncryption,+ exportServerSideEncryption_kmsKeyArn,+ exportServerSideEncryption_type,++ -- * ImportAssetFromApiGatewayApiRequestDetails+ ImportAssetFromApiGatewayApiRequestDetails (..),+ newImportAssetFromApiGatewayApiRequestDetails,+ importAssetFromApiGatewayApiRequestDetails_apiDescription,+ importAssetFromApiGatewayApiRequestDetails_apiKey,+ importAssetFromApiGatewayApiRequestDetails_apiId,+ importAssetFromApiGatewayApiRequestDetails_apiName,+ importAssetFromApiGatewayApiRequestDetails_apiSpecificationMd5Hash,+ importAssetFromApiGatewayApiRequestDetails_dataSetId,+ importAssetFromApiGatewayApiRequestDetails_protocolType,+ importAssetFromApiGatewayApiRequestDetails_revisionId,+ importAssetFromApiGatewayApiRequestDetails_stage,++ -- * ImportAssetFromApiGatewayApiResponseDetails+ ImportAssetFromApiGatewayApiResponseDetails (..),+ newImportAssetFromApiGatewayApiResponseDetails,+ importAssetFromApiGatewayApiResponseDetails_apiDescription,+ importAssetFromApiGatewayApiResponseDetails_apiKey,+ importAssetFromApiGatewayApiResponseDetails_apiId,+ importAssetFromApiGatewayApiResponseDetails_apiName,+ importAssetFromApiGatewayApiResponseDetails_apiSpecificationMd5Hash,+ importAssetFromApiGatewayApiResponseDetails_apiSpecificationUploadUrl,+ importAssetFromApiGatewayApiResponseDetails_apiSpecificationUploadUrlExpiresAt,+ importAssetFromApiGatewayApiResponseDetails_dataSetId,+ importAssetFromApiGatewayApiResponseDetails_protocolType,+ importAssetFromApiGatewayApiResponseDetails_revisionId,+ importAssetFromApiGatewayApiResponseDetails_stage,++ -- * ImportAssetFromSignedUrlJobErrorDetails+ ImportAssetFromSignedUrlJobErrorDetails (..),+ newImportAssetFromSignedUrlJobErrorDetails,+ importAssetFromSignedUrlJobErrorDetails_assetName,++ -- * ImportAssetFromSignedUrlRequestDetails+ ImportAssetFromSignedUrlRequestDetails (..),+ newImportAssetFromSignedUrlRequestDetails,+ importAssetFromSignedUrlRequestDetails_assetName,+ importAssetFromSignedUrlRequestDetails_dataSetId,+ importAssetFromSignedUrlRequestDetails_md5Hash,+ importAssetFromSignedUrlRequestDetails_revisionId,++ -- * ImportAssetFromSignedUrlResponseDetails+ ImportAssetFromSignedUrlResponseDetails (..),+ newImportAssetFromSignedUrlResponseDetails,+ importAssetFromSignedUrlResponseDetails_md5Hash,+ importAssetFromSignedUrlResponseDetails_signedUrl,+ importAssetFromSignedUrlResponseDetails_signedUrlExpiresAt,+ importAssetFromSignedUrlResponseDetails_assetName,+ importAssetFromSignedUrlResponseDetails_dataSetId,+ importAssetFromSignedUrlResponseDetails_revisionId,++ -- * ImportAssetsFromLakeFormationTagPolicyRequestDetails+ ImportAssetsFromLakeFormationTagPolicyRequestDetails (..),+ newImportAssetsFromLakeFormationTagPolicyRequestDetails,+ importAssetsFromLakeFormationTagPolicyRequestDetails_database,+ importAssetsFromLakeFormationTagPolicyRequestDetails_table,+ importAssetsFromLakeFormationTagPolicyRequestDetails_catalogId,+ importAssetsFromLakeFormationTagPolicyRequestDetails_roleArn,+ importAssetsFromLakeFormationTagPolicyRequestDetails_dataSetId,+ importAssetsFromLakeFormationTagPolicyRequestDetails_revisionId,++ -- * ImportAssetsFromLakeFormationTagPolicyResponseDetails+ ImportAssetsFromLakeFormationTagPolicyResponseDetails (..),+ newImportAssetsFromLakeFormationTagPolicyResponseDetails,+ importAssetsFromLakeFormationTagPolicyResponseDetails_database,+ importAssetsFromLakeFormationTagPolicyResponseDetails_table,+ importAssetsFromLakeFormationTagPolicyResponseDetails_catalogId,+ importAssetsFromLakeFormationTagPolicyResponseDetails_roleArn,+ importAssetsFromLakeFormationTagPolicyResponseDetails_dataSetId,+ importAssetsFromLakeFormationTagPolicyResponseDetails_revisionId,++ -- * ImportAssetsFromRedshiftDataSharesRequestDetails+ ImportAssetsFromRedshiftDataSharesRequestDetails (..),+ newImportAssetsFromRedshiftDataSharesRequestDetails,+ importAssetsFromRedshiftDataSharesRequestDetails_assetSources,+ importAssetsFromRedshiftDataSharesRequestDetails_dataSetId,+ importAssetsFromRedshiftDataSharesRequestDetails_revisionId,++ -- * ImportAssetsFromRedshiftDataSharesResponseDetails+ ImportAssetsFromRedshiftDataSharesResponseDetails (..),+ newImportAssetsFromRedshiftDataSharesResponseDetails,+ importAssetsFromRedshiftDataSharesResponseDetails_assetSources,+ importAssetsFromRedshiftDataSharesResponseDetails_dataSetId,+ importAssetsFromRedshiftDataSharesResponseDetails_revisionId,++ -- * ImportAssetsFromS3RequestDetails+ ImportAssetsFromS3RequestDetails (..),+ newImportAssetsFromS3RequestDetails,+ importAssetsFromS3RequestDetails_assetSources,+ importAssetsFromS3RequestDetails_dataSetId,+ importAssetsFromS3RequestDetails_revisionId,++ -- * ImportAssetsFromS3ResponseDetails+ ImportAssetsFromS3ResponseDetails (..),+ newImportAssetsFromS3ResponseDetails,+ importAssetsFromS3ResponseDetails_assetSources,+ importAssetsFromS3ResponseDetails_dataSetId,+ importAssetsFromS3ResponseDetails_revisionId,++ -- * JobEntry+ JobEntry (..),+ newJobEntry,+ jobEntry_errors,+ jobEntry_arn,+ jobEntry_createdAt,+ jobEntry_details,+ jobEntry_id,+ jobEntry_state,+ jobEntry_type,+ jobEntry_updatedAt,++ -- * JobError+ JobError (..),+ newJobError,+ jobError_details,+ jobError_limitName,+ jobError_limitValue,+ jobError_resourceId,+ jobError_resourceType,+ jobError_code,+ jobError_message,++ -- * LFResourceDetails+ LFResourceDetails (..),+ newLFResourceDetails,+ lFResourceDetails_database,+ lFResourceDetails_table,++ -- * LFTag+ LFTag (..),+ newLFTag,+ lFTag_tagKey,+ lFTag_tagValues,++ -- * LFTagPolicyDetails+ LFTagPolicyDetails (..),+ newLFTagPolicyDetails,+ lFTagPolicyDetails_catalogId,+ lFTagPolicyDetails_resourceType,+ lFTagPolicyDetails_resourceDetails,++ -- * LakeFormationDataPermissionAsset+ LakeFormationDataPermissionAsset (..),+ newLakeFormationDataPermissionAsset,+ lakeFormationDataPermissionAsset_roleArn,+ lakeFormationDataPermissionAsset_lakeFormationDataPermissionDetails,+ lakeFormationDataPermissionAsset_lakeFormationDataPermissionType,+ lakeFormationDataPermissionAsset_permissions,++ -- * LakeFormationDataPermissionDetails+ LakeFormationDataPermissionDetails (..),+ newLakeFormationDataPermissionDetails,+ lakeFormationDataPermissionDetails_lFTagPolicy,++ -- * OriginDetails+ OriginDetails (..),+ newOriginDetails,+ originDetails_productId,++ -- * RedshiftDataShareAsset+ RedshiftDataShareAsset (..),+ newRedshiftDataShareAsset,+ redshiftDataShareAsset_arn,++ -- * RedshiftDataShareAssetSourceEntry+ RedshiftDataShareAssetSourceEntry (..),+ newRedshiftDataShareAssetSourceEntry,+ redshiftDataShareAssetSourceEntry_dataShareArn,++ -- * RequestDetails+ RequestDetails (..),+ newRequestDetails,+ requestDetails_createS3DataAccessFromS3Bucket,+ requestDetails_exportAssetToSignedUrl,+ requestDetails_exportAssetsToS3,+ requestDetails_exportRevisionsToS3,+ requestDetails_importAssetFromApiGatewayApi,+ requestDetails_importAssetFromSignedUrl,+ requestDetails_importAssetsFromLakeFormationTagPolicy,+ requestDetails_importAssetsFromRedshiftDataShares,+ requestDetails_importAssetsFromS3,++ -- * ResponseDetails+ ResponseDetails (..),+ newResponseDetails,+ responseDetails_createS3DataAccessFromS3Bucket,+ responseDetails_exportAssetToSignedUrl,+ responseDetails_exportAssetsToS3,+ responseDetails_exportRevisionsToS3,+ responseDetails_importAssetFromApiGatewayApi,+ responseDetails_importAssetFromSignedUrl,+ responseDetails_importAssetsFromLakeFormationTagPolicy,+ responseDetails_importAssetsFromRedshiftDataShares,+ responseDetails_importAssetsFromS3,++ -- * RevisionDestinationEntry+ RevisionDestinationEntry (..),+ newRevisionDestinationEntry,+ revisionDestinationEntry_keyPattern,+ revisionDestinationEntry_bucket,+ revisionDestinationEntry_revisionId,++ -- * RevisionEntry+ RevisionEntry (..),+ newRevisionEntry,+ revisionEntry_comment,+ revisionEntry_finalized,+ revisionEntry_revocationComment,+ revisionEntry_revoked,+ revisionEntry_revokedAt,+ revisionEntry_sourceId,+ revisionEntry_arn,+ revisionEntry_createdAt,+ revisionEntry_dataSetId,+ revisionEntry_id,+ revisionEntry_updatedAt,++ -- * RevisionPublished+ RevisionPublished (..),+ newRevisionPublished,+ revisionPublished_dataSetId,++ -- * S3DataAccessAsset+ S3DataAccessAsset (..),+ newS3DataAccessAsset,+ s3DataAccessAsset_keyPrefixes,+ s3DataAccessAsset_keys,+ s3DataAccessAsset_s3AccessPointAlias,+ s3DataAccessAsset_s3AccessPointArn,+ s3DataAccessAsset_bucket,++ -- * S3DataAccessAssetSourceEntry+ S3DataAccessAssetSourceEntry (..),+ newS3DataAccessAssetSourceEntry,+ s3DataAccessAssetSourceEntry_keyPrefixes,+ s3DataAccessAssetSourceEntry_keys,+ s3DataAccessAssetSourceEntry_bucket,++ -- * S3SnapshotAsset+ S3SnapshotAsset (..),+ newS3SnapshotAsset,+ s3SnapshotAsset_size,++ -- * TableLFTagPolicy+ TableLFTagPolicy (..),+ newTableLFTagPolicy,+ tableLFTagPolicy_expression,++ -- * TableLFTagPolicyAndPermissions+ TableLFTagPolicyAndPermissions (..),+ newTableLFTagPolicyAndPermissions,+ tableLFTagPolicyAndPermissions_expression,+ tableLFTagPolicyAndPermissions_permissions,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.DataExchange.Types.Action+import Amazonka.DataExchange.Types.ApiGatewayApiAsset+import Amazonka.DataExchange.Types.AssetDestinationEntry+import Amazonka.DataExchange.Types.AssetDetails+import Amazonka.DataExchange.Types.AssetEntry+import Amazonka.DataExchange.Types.AssetSourceEntry+import Amazonka.DataExchange.Types.AssetType+import Amazonka.DataExchange.Types.AutoExportRevisionDestinationEntry+import Amazonka.DataExchange.Types.AutoExportRevisionToS3RequestDetails+import Amazonka.DataExchange.Types.Code+import Amazonka.DataExchange.Types.CreateS3DataAccessFromS3BucketRequestDetails+import Amazonka.DataExchange.Types.CreateS3DataAccessFromS3BucketResponseDetails+import Amazonka.DataExchange.Types.DataSetEntry+import Amazonka.DataExchange.Types.DatabaseLFTagPolicy+import Amazonka.DataExchange.Types.DatabaseLFTagPolicyAndPermissions+import Amazonka.DataExchange.Types.DatabaseLFTagPolicyPermission+import Amazonka.DataExchange.Types.Details+import Amazonka.DataExchange.Types.Event+import Amazonka.DataExchange.Types.EventActionEntry+import Amazonka.DataExchange.Types.ExportAssetToSignedUrlRequestDetails+import Amazonka.DataExchange.Types.ExportAssetToSignedUrlResponseDetails+import Amazonka.DataExchange.Types.ExportAssetsToS3RequestDetails+import Amazonka.DataExchange.Types.ExportAssetsToS3ResponseDetails+import Amazonka.DataExchange.Types.ExportRevisionsToS3RequestDetails+import Amazonka.DataExchange.Types.ExportRevisionsToS3ResponseDetails+import Amazonka.DataExchange.Types.ExportServerSideEncryption+import Amazonka.DataExchange.Types.ImportAssetFromApiGatewayApiRequestDetails+import Amazonka.DataExchange.Types.ImportAssetFromApiGatewayApiResponseDetails+import Amazonka.DataExchange.Types.ImportAssetFromSignedUrlJobErrorDetails+import Amazonka.DataExchange.Types.ImportAssetFromSignedUrlRequestDetails+import Amazonka.DataExchange.Types.ImportAssetFromSignedUrlResponseDetails+import Amazonka.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyRequestDetails+import Amazonka.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyResponseDetails+import Amazonka.DataExchange.Types.ImportAssetsFromRedshiftDataSharesRequestDetails+import Amazonka.DataExchange.Types.ImportAssetsFromRedshiftDataSharesResponseDetails+import Amazonka.DataExchange.Types.ImportAssetsFromS3RequestDetails+import Amazonka.DataExchange.Types.ImportAssetsFromS3ResponseDetails+import Amazonka.DataExchange.Types.JobEntry+import Amazonka.DataExchange.Types.JobError+import Amazonka.DataExchange.Types.JobErrorLimitName+import Amazonka.DataExchange.Types.JobErrorResourceTypes+import Amazonka.DataExchange.Types.LFPermission+import Amazonka.DataExchange.Types.LFResourceDetails+import Amazonka.DataExchange.Types.LFResourceType+import Amazonka.DataExchange.Types.LFTag+import Amazonka.DataExchange.Types.LFTagPolicyDetails+import Amazonka.DataExchange.Types.LakeFormationDataPermissionAsset+import Amazonka.DataExchange.Types.LakeFormationDataPermissionDetails+import Amazonka.DataExchange.Types.LakeFormationDataPermissionType+import Amazonka.DataExchange.Types.Origin+import Amazonka.DataExchange.Types.OriginDetails+import Amazonka.DataExchange.Types.ProtocolType+import Amazonka.DataExchange.Types.RedshiftDataShareAsset+import Amazonka.DataExchange.Types.RedshiftDataShareAssetSourceEntry+import Amazonka.DataExchange.Types.RequestDetails+import Amazonka.DataExchange.Types.ResponseDetails+import Amazonka.DataExchange.Types.RevisionDestinationEntry+import Amazonka.DataExchange.Types.RevisionEntry+import Amazonka.DataExchange.Types.RevisionPublished+import Amazonka.DataExchange.Types.S3DataAccessAsset+import Amazonka.DataExchange.Types.S3DataAccessAssetSourceEntry+import Amazonka.DataExchange.Types.S3SnapshotAsset+import Amazonka.DataExchange.Types.ServerSideEncryptionTypes+import Amazonka.DataExchange.Types.State+import Amazonka.DataExchange.Types.TableLFTagPolicy+import Amazonka.DataExchange.Types.TableLFTagPolicyAndPermissions+import Amazonka.DataExchange.Types.TableTagPolicyLFPermission+import Amazonka.DataExchange.Types.Type+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2017-07-25@ of the Amazon Data Exchange SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "DataExchange",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "dataexchange",+ Core.signingName = "dataexchange",+ Core.version = "2017-07-25",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "DataExchange",+ 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++-- | Access to the resource is denied.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"+ Prelude.. Core.hasStatus 403++-- | The request couldn\'t be completed because it conflicted with the+-- current state of the resource.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++-- | An exception occurred with the service.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | The resource couldn\'t be found.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | The request has exceeded the quotas imposed by the service.+_ServiceLimitExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceLimitExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceLimitExceededException"+ Prelude.. Core.hasStatus 402++-- | The limit on the number of requests per second was exceeded.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"+ Prelude.. Core.hasStatus 429++-- | The request was invalid.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/DataExchange/Types/Action.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.DataExchange.Types.Action+-- 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.DataExchange.Types.Action where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.AutoExportRevisionToS3RequestDetails+import qualified Amazonka.Prelude as Prelude++-- | What occurs after a certain event.+--+-- /See:/ 'newAction' smart constructor.+data Action = Action'+ { -- | Details for the export revision to Amazon S3 action.+ exportRevisionToS3 :: Prelude.Maybe AutoExportRevisionToS3RequestDetails+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Action' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'exportRevisionToS3', 'action_exportRevisionToS3' - Details for the export revision to Amazon S3 action.+newAction ::+ Action+newAction =+ Action' {exportRevisionToS3 = Prelude.Nothing}++-- | Details for the export revision to Amazon S3 action.+action_exportRevisionToS3 :: Lens.Lens' Action (Prelude.Maybe AutoExportRevisionToS3RequestDetails)+action_exportRevisionToS3 = Lens.lens (\Action' {exportRevisionToS3} -> exportRevisionToS3) (\s@Action' {} a -> s {exportRevisionToS3 = a} :: Action)++instance Data.FromJSON Action where+ parseJSON =+ Data.withObject+ "Action"+ ( \x ->+ Action'+ Prelude.<$> (x Data..:? "ExportRevisionToS3")+ )++instance Prelude.Hashable Action where+ hashWithSalt _salt Action' {..} =+ _salt `Prelude.hashWithSalt` exportRevisionToS3++instance Prelude.NFData Action where+ rnf Action' {..} = Prelude.rnf exportRevisionToS3++instance Data.ToJSON Action where+ toJSON Action' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ExportRevisionToS3" Data..=)+ Prelude.<$> exportRevisionToS3+ ]+ )
+ gen/Amazonka/DataExchange/Types/ApiGatewayApiAsset.hs view
@@ -0,0 +1,171 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.ApiGatewayApiAsset+-- 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.DataExchange.Types.ApiGatewayApiAsset where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.ProtocolType+import qualified Amazonka.Prelude as Prelude++-- | The API Gateway API that is the asset.+--+-- /See:/ 'newApiGatewayApiAsset' smart constructor.+data ApiGatewayApiAsset = ApiGatewayApiAsset'+ { -- | The API description of the API asset.+ apiDescription :: Prelude.Maybe Prelude.Text,+ -- | The API endpoint of the API asset.+ apiEndpoint :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the API asset.+ apiId :: Prelude.Maybe Prelude.Text,+ -- | The API key of the API asset.+ apiKey :: Prelude.Maybe Prelude.Text,+ -- | The API name of the API asset.+ apiName :: Prelude.Maybe Prelude.Text,+ -- | The download URL of the API specification of the API asset.+ apiSpecificationDownloadUrl :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the upload URL expires, in ISO 8601 format.+ apiSpecificationDownloadUrlExpiresAt :: Prelude.Maybe Data.ISO8601,+ -- | The protocol type of the API asset.+ protocolType :: Prelude.Maybe ProtocolType,+ -- | The stage of the API asset.+ stage :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApiGatewayApiAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'apiDescription', 'apiGatewayApiAsset_apiDescription' - The API description of the API asset.+--+-- 'apiEndpoint', 'apiGatewayApiAsset_apiEndpoint' - The API endpoint of the API asset.+--+-- 'apiId', 'apiGatewayApiAsset_apiId' - The unique identifier of the API asset.+--+-- 'apiKey', 'apiGatewayApiAsset_apiKey' - The API key of the API asset.+--+-- 'apiName', 'apiGatewayApiAsset_apiName' - The API name of the API asset.+--+-- 'apiSpecificationDownloadUrl', 'apiGatewayApiAsset_apiSpecificationDownloadUrl' - The download URL of the API specification of the API asset.+--+-- 'apiSpecificationDownloadUrlExpiresAt', 'apiGatewayApiAsset_apiSpecificationDownloadUrlExpiresAt' - The date and time that the upload URL expires, in ISO 8601 format.+--+-- 'protocolType', 'apiGatewayApiAsset_protocolType' - The protocol type of the API asset.+--+-- 'stage', 'apiGatewayApiAsset_stage' - The stage of the API asset.+newApiGatewayApiAsset ::+ ApiGatewayApiAsset+newApiGatewayApiAsset =+ ApiGatewayApiAsset'+ { apiDescription =+ Prelude.Nothing,+ apiEndpoint = Prelude.Nothing,+ apiId = Prelude.Nothing,+ apiKey = Prelude.Nothing,+ apiName = Prelude.Nothing,+ apiSpecificationDownloadUrl = Prelude.Nothing,+ apiSpecificationDownloadUrlExpiresAt =+ Prelude.Nothing,+ protocolType = Prelude.Nothing,+ stage = Prelude.Nothing+ }++-- | The API description of the API asset.+apiGatewayApiAsset_apiDescription :: Lens.Lens' ApiGatewayApiAsset (Prelude.Maybe Prelude.Text)+apiGatewayApiAsset_apiDescription = Lens.lens (\ApiGatewayApiAsset' {apiDescription} -> apiDescription) (\s@ApiGatewayApiAsset' {} a -> s {apiDescription = a} :: ApiGatewayApiAsset)++-- | The API endpoint of the API asset.+apiGatewayApiAsset_apiEndpoint :: Lens.Lens' ApiGatewayApiAsset (Prelude.Maybe Prelude.Text)+apiGatewayApiAsset_apiEndpoint = Lens.lens (\ApiGatewayApiAsset' {apiEndpoint} -> apiEndpoint) (\s@ApiGatewayApiAsset' {} a -> s {apiEndpoint = a} :: ApiGatewayApiAsset)++-- | The unique identifier of the API asset.+apiGatewayApiAsset_apiId :: Lens.Lens' ApiGatewayApiAsset (Prelude.Maybe Prelude.Text)+apiGatewayApiAsset_apiId = Lens.lens (\ApiGatewayApiAsset' {apiId} -> apiId) (\s@ApiGatewayApiAsset' {} a -> s {apiId = a} :: ApiGatewayApiAsset)++-- | The API key of the API asset.+apiGatewayApiAsset_apiKey :: Lens.Lens' ApiGatewayApiAsset (Prelude.Maybe Prelude.Text)+apiGatewayApiAsset_apiKey = Lens.lens (\ApiGatewayApiAsset' {apiKey} -> apiKey) (\s@ApiGatewayApiAsset' {} a -> s {apiKey = a} :: ApiGatewayApiAsset)++-- | The API name of the API asset.+apiGatewayApiAsset_apiName :: Lens.Lens' ApiGatewayApiAsset (Prelude.Maybe Prelude.Text)+apiGatewayApiAsset_apiName = Lens.lens (\ApiGatewayApiAsset' {apiName} -> apiName) (\s@ApiGatewayApiAsset' {} a -> s {apiName = a} :: ApiGatewayApiAsset)++-- | The download URL of the API specification of the API asset.+apiGatewayApiAsset_apiSpecificationDownloadUrl :: Lens.Lens' ApiGatewayApiAsset (Prelude.Maybe Prelude.Text)+apiGatewayApiAsset_apiSpecificationDownloadUrl = Lens.lens (\ApiGatewayApiAsset' {apiSpecificationDownloadUrl} -> apiSpecificationDownloadUrl) (\s@ApiGatewayApiAsset' {} a -> s {apiSpecificationDownloadUrl = a} :: ApiGatewayApiAsset)++-- | The date and time that the upload URL expires, in ISO 8601 format.+apiGatewayApiAsset_apiSpecificationDownloadUrlExpiresAt :: Lens.Lens' ApiGatewayApiAsset (Prelude.Maybe Prelude.UTCTime)+apiGatewayApiAsset_apiSpecificationDownloadUrlExpiresAt = Lens.lens (\ApiGatewayApiAsset' {apiSpecificationDownloadUrlExpiresAt} -> apiSpecificationDownloadUrlExpiresAt) (\s@ApiGatewayApiAsset' {} a -> s {apiSpecificationDownloadUrlExpiresAt = a} :: ApiGatewayApiAsset) Prelude.. Lens.mapping Data._Time++-- | The protocol type of the API asset.+apiGatewayApiAsset_protocolType :: Lens.Lens' ApiGatewayApiAsset (Prelude.Maybe ProtocolType)+apiGatewayApiAsset_protocolType = Lens.lens (\ApiGatewayApiAsset' {protocolType} -> protocolType) (\s@ApiGatewayApiAsset' {} a -> s {protocolType = a} :: ApiGatewayApiAsset)++-- | The stage of the API asset.+apiGatewayApiAsset_stage :: Lens.Lens' ApiGatewayApiAsset (Prelude.Maybe Prelude.Text)+apiGatewayApiAsset_stage = Lens.lens (\ApiGatewayApiAsset' {stage} -> stage) (\s@ApiGatewayApiAsset' {} a -> s {stage = a} :: ApiGatewayApiAsset)++instance Data.FromJSON ApiGatewayApiAsset where+ parseJSON =+ Data.withObject+ "ApiGatewayApiAsset"+ ( \x ->+ ApiGatewayApiAsset'+ Prelude.<$> (x Data..:? "ApiDescription")+ Prelude.<*> (x Data..:? "ApiEndpoint")+ Prelude.<*> (x Data..:? "ApiId")+ Prelude.<*> (x Data..:? "ApiKey")+ Prelude.<*> (x Data..:? "ApiName")+ Prelude.<*> (x Data..:? "ApiSpecificationDownloadUrl")+ Prelude.<*> (x Data..:? "ApiSpecificationDownloadUrlExpiresAt")+ Prelude.<*> (x Data..:? "ProtocolType")+ Prelude.<*> (x Data..:? "Stage")+ )++instance Prelude.Hashable ApiGatewayApiAsset where+ hashWithSalt _salt ApiGatewayApiAsset' {..} =+ _salt+ `Prelude.hashWithSalt` apiDescription+ `Prelude.hashWithSalt` apiEndpoint+ `Prelude.hashWithSalt` apiId+ `Prelude.hashWithSalt` apiKey+ `Prelude.hashWithSalt` apiName+ `Prelude.hashWithSalt` apiSpecificationDownloadUrl+ `Prelude.hashWithSalt` apiSpecificationDownloadUrlExpiresAt+ `Prelude.hashWithSalt` protocolType+ `Prelude.hashWithSalt` stage++instance Prelude.NFData ApiGatewayApiAsset where+ rnf ApiGatewayApiAsset' {..} =+ Prelude.rnf apiDescription+ `Prelude.seq` Prelude.rnf apiEndpoint+ `Prelude.seq` Prelude.rnf apiId+ `Prelude.seq` Prelude.rnf apiKey+ `Prelude.seq` Prelude.rnf apiName+ `Prelude.seq` Prelude.rnf apiSpecificationDownloadUrl+ `Prelude.seq` Prelude.rnf apiSpecificationDownloadUrlExpiresAt+ `Prelude.seq` Prelude.rnf protocolType+ `Prelude.seq` Prelude.rnf stage
+ gen/Amazonka/DataExchange/Types/AssetDestinationEntry.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.DataExchange.Types.AssetDestinationEntry+-- 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.DataExchange.Types.AssetDestinationEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The destination for the asset.+--+-- /See:/ 'newAssetDestinationEntry' smart constructor.+data AssetDestinationEntry = AssetDestinationEntry'+ { -- | The name of the object in Amazon S3 for the asset.+ key :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the asset.+ assetId :: Prelude.Text,+ -- | The Amazon S3 bucket that is the destination for the asset.+ bucket :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssetDestinationEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'assetDestinationEntry_key' - The name of the object in Amazon S3 for the asset.+--+-- 'assetId', 'assetDestinationEntry_assetId' - The unique identifier for the asset.+--+-- 'bucket', 'assetDestinationEntry_bucket' - The Amazon S3 bucket that is the destination for the asset.+newAssetDestinationEntry ::+ -- | 'assetId'+ Prelude.Text ->+ -- | 'bucket'+ Prelude.Text ->+ AssetDestinationEntry+newAssetDestinationEntry pAssetId_ pBucket_ =+ AssetDestinationEntry'+ { key = Prelude.Nothing,+ assetId = pAssetId_,+ bucket = pBucket_+ }++-- | The name of the object in Amazon S3 for the asset.+assetDestinationEntry_key :: Lens.Lens' AssetDestinationEntry (Prelude.Maybe Prelude.Text)+assetDestinationEntry_key = Lens.lens (\AssetDestinationEntry' {key} -> key) (\s@AssetDestinationEntry' {} a -> s {key = a} :: AssetDestinationEntry)++-- | The unique identifier for the asset.+assetDestinationEntry_assetId :: Lens.Lens' AssetDestinationEntry Prelude.Text+assetDestinationEntry_assetId = Lens.lens (\AssetDestinationEntry' {assetId} -> assetId) (\s@AssetDestinationEntry' {} a -> s {assetId = a} :: AssetDestinationEntry)++-- | The Amazon S3 bucket that is the destination for the asset.+assetDestinationEntry_bucket :: Lens.Lens' AssetDestinationEntry Prelude.Text+assetDestinationEntry_bucket = Lens.lens (\AssetDestinationEntry' {bucket} -> bucket) (\s@AssetDestinationEntry' {} a -> s {bucket = a} :: AssetDestinationEntry)++instance Data.FromJSON AssetDestinationEntry where+ parseJSON =+ Data.withObject+ "AssetDestinationEntry"+ ( \x ->+ AssetDestinationEntry'+ Prelude.<$> (x Data..:? "Key")+ Prelude.<*> (x Data..: "AssetId")+ Prelude.<*> (x Data..: "Bucket")+ )++instance Prelude.Hashable AssetDestinationEntry where+ hashWithSalt _salt AssetDestinationEntry' {..} =+ _salt+ `Prelude.hashWithSalt` key+ `Prelude.hashWithSalt` assetId+ `Prelude.hashWithSalt` bucket++instance Prelude.NFData AssetDestinationEntry where+ rnf AssetDestinationEntry' {..} =+ Prelude.rnf key+ `Prelude.seq` Prelude.rnf assetId+ `Prelude.seq` Prelude.rnf bucket++instance Data.ToJSON AssetDestinationEntry where+ toJSON AssetDestinationEntry' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Key" Data..=) Prelude.<$> key,+ Prelude.Just ("AssetId" Data..= assetId),+ Prelude.Just ("Bucket" Data..= bucket)+ ]+ )
+ gen/Amazonka/DataExchange/Types/AssetDetails.hs view
@@ -0,0 +1,125 @@+{-# 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.DataExchange.Types.AssetDetails+-- 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.DataExchange.Types.AssetDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.ApiGatewayApiAsset+import Amazonka.DataExchange.Types.LakeFormationDataPermissionAsset+import Amazonka.DataExchange.Types.RedshiftDataShareAsset+import Amazonka.DataExchange.Types.S3DataAccessAsset+import Amazonka.DataExchange.Types.S3SnapshotAsset+import qualified Amazonka.Prelude as Prelude++-- | Details about the asset.+--+-- /See:/ 'newAssetDetails' smart constructor.+data AssetDetails = AssetDetails'+ { -- | Information about the API Gateway API asset.+ apiGatewayApiAsset :: Prelude.Maybe ApiGatewayApiAsset,+ -- | The AWS Lake Formation data permission that is the asset.+ lakeFormationDataPermissionAsset :: Prelude.Maybe LakeFormationDataPermissionAsset,+ -- | The Amazon Redshift datashare that is the asset.+ redshiftDataShareAsset :: Prelude.Maybe RedshiftDataShareAsset,+ -- | The Amazon S3 data access that is the asset.+ s3DataAccessAsset :: Prelude.Maybe S3DataAccessAsset,+ -- | The Amazon S3 object that is the asset.+ s3SnapshotAsset :: Prelude.Maybe S3SnapshotAsset+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssetDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'apiGatewayApiAsset', 'assetDetails_apiGatewayApiAsset' - Information about the API Gateway API asset.+--+-- 'lakeFormationDataPermissionAsset', 'assetDetails_lakeFormationDataPermissionAsset' - The AWS Lake Formation data permission that is the asset.+--+-- 'redshiftDataShareAsset', 'assetDetails_redshiftDataShareAsset' - The Amazon Redshift datashare that is the asset.+--+-- 's3DataAccessAsset', 'assetDetails_s3DataAccessAsset' - The Amazon S3 data access that is the asset.+--+-- 's3SnapshotAsset', 'assetDetails_s3SnapshotAsset' - The Amazon S3 object that is the asset.+newAssetDetails ::+ AssetDetails+newAssetDetails =+ AssetDetails'+ { apiGatewayApiAsset = Prelude.Nothing,+ lakeFormationDataPermissionAsset = Prelude.Nothing,+ redshiftDataShareAsset = Prelude.Nothing,+ s3DataAccessAsset = Prelude.Nothing,+ s3SnapshotAsset = Prelude.Nothing+ }++-- | Information about the API Gateway API asset.+assetDetails_apiGatewayApiAsset :: Lens.Lens' AssetDetails (Prelude.Maybe ApiGatewayApiAsset)+assetDetails_apiGatewayApiAsset = Lens.lens (\AssetDetails' {apiGatewayApiAsset} -> apiGatewayApiAsset) (\s@AssetDetails' {} a -> s {apiGatewayApiAsset = a} :: AssetDetails)++-- | The AWS Lake Formation data permission that is the asset.+assetDetails_lakeFormationDataPermissionAsset :: Lens.Lens' AssetDetails (Prelude.Maybe LakeFormationDataPermissionAsset)+assetDetails_lakeFormationDataPermissionAsset = Lens.lens (\AssetDetails' {lakeFormationDataPermissionAsset} -> lakeFormationDataPermissionAsset) (\s@AssetDetails' {} a -> s {lakeFormationDataPermissionAsset = a} :: AssetDetails)++-- | The Amazon Redshift datashare that is the asset.+assetDetails_redshiftDataShareAsset :: Lens.Lens' AssetDetails (Prelude.Maybe RedshiftDataShareAsset)+assetDetails_redshiftDataShareAsset = Lens.lens (\AssetDetails' {redshiftDataShareAsset} -> redshiftDataShareAsset) (\s@AssetDetails' {} a -> s {redshiftDataShareAsset = a} :: AssetDetails)++-- | The Amazon S3 data access that is the asset.+assetDetails_s3DataAccessAsset :: Lens.Lens' AssetDetails (Prelude.Maybe S3DataAccessAsset)+assetDetails_s3DataAccessAsset = Lens.lens (\AssetDetails' {s3DataAccessAsset} -> s3DataAccessAsset) (\s@AssetDetails' {} a -> s {s3DataAccessAsset = a} :: AssetDetails)++-- | The Amazon S3 object that is the asset.+assetDetails_s3SnapshotAsset :: Lens.Lens' AssetDetails (Prelude.Maybe S3SnapshotAsset)+assetDetails_s3SnapshotAsset = Lens.lens (\AssetDetails' {s3SnapshotAsset} -> s3SnapshotAsset) (\s@AssetDetails' {} a -> s {s3SnapshotAsset = a} :: AssetDetails)++instance Data.FromJSON AssetDetails where+ parseJSON =+ Data.withObject+ "AssetDetails"+ ( \x ->+ AssetDetails'+ Prelude.<$> (x Data..:? "ApiGatewayApiAsset")+ Prelude.<*> (x Data..:? "LakeFormationDataPermissionAsset")+ Prelude.<*> (x Data..:? "RedshiftDataShareAsset")+ Prelude.<*> (x Data..:? "S3DataAccessAsset")+ Prelude.<*> (x Data..:? "S3SnapshotAsset")+ )++instance Prelude.Hashable AssetDetails where+ hashWithSalt _salt AssetDetails' {..} =+ _salt+ `Prelude.hashWithSalt` apiGatewayApiAsset+ `Prelude.hashWithSalt` lakeFormationDataPermissionAsset+ `Prelude.hashWithSalt` redshiftDataShareAsset+ `Prelude.hashWithSalt` s3DataAccessAsset+ `Prelude.hashWithSalt` s3SnapshotAsset++instance Prelude.NFData AssetDetails where+ rnf AssetDetails' {..} =+ Prelude.rnf apiGatewayApiAsset+ `Prelude.seq` Prelude.rnf lakeFormationDataPermissionAsset+ `Prelude.seq` Prelude.rnf redshiftDataShareAsset+ `Prelude.seq` Prelude.rnf s3DataAccessAsset+ `Prelude.seq` Prelude.rnf s3SnapshotAsset
+ gen/Amazonka/DataExchange/Types/AssetEntry.hs view
@@ -0,0 +1,245 @@+{-# 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.DataExchange.Types.AssetEntry+-- 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.DataExchange.Types.AssetEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.AssetDetails+import Amazonka.DataExchange.Types.AssetType+import qualified Amazonka.Prelude as Prelude++-- | An asset in AWS Data Exchange is a piece of data (Amazon S3 object) or a+-- means of fulfilling data (Amazon Redshift datashare or Amazon API+-- Gateway API, AWS Lake Formation data permission, or Amazon S3 data+-- access). The asset can be a structured data file, an image file, or some+-- other data file that can be stored as an Amazon S3 object, an Amazon API+-- Gateway API, or an Amazon Redshift datashare, an AWS Lake Formation data+-- permission, or an Amazon S3 data access. When you create an import job+-- for your files, API Gateway APIs, Amazon Redshift datashares, AWS Lake+-- Formation data permission, or Amazon S3 data access, you create an asset+-- in AWS Data Exchange.+--+-- /See:/ 'newAssetEntry' smart constructor.+data AssetEntry = AssetEntry'+ { -- | The asset ID of the owned asset corresponding to the entitled asset+ -- being viewed. This parameter is returned when an asset owner is viewing+ -- the entitled copy of its owned asset.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the asset.+ arn :: Prelude.Text,+ -- | Details about the asset.+ assetDetails :: AssetDetails,+ -- | The type of asset that is added to a data set.+ assetType :: AssetType,+ -- | The date and time that the asset was created, in ISO 8601 format.+ createdAt :: Data.ISO8601,+ -- | The unique identifier for the data set associated with this asset.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the asset.+ id :: Prelude.Text,+ -- | The name of the asset. When importing from Amazon S3, the Amazon S3+ -- object key is used as the asset name. When exporting to Amazon S3, the+ -- asset name is used as default target Amazon S3 object key. When+ -- importing from Amazon API Gateway API, the API name is used as the asset+ -- name. When importing from Amazon Redshift, the datashare name is used as+ -- the asset name. When importing from AWS Lake Formation, the static+ -- values of \"Database(s) included in LF-tag policy\" or \"Table(s)+ -- included in LF-tag policy\" are used as the asset name.+ name :: Prelude.Text,+ -- | The unique identifier for the revision associated with this asset.+ revisionId :: Prelude.Text,+ -- | The date and time that the asset was last updated, in ISO 8601 format.+ updatedAt :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssetEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sourceId', 'assetEntry_sourceId' - The asset ID of the owned asset corresponding to the entitled asset+-- being viewed. This parameter is returned when an asset owner is viewing+-- the entitled copy of its owned asset.+--+-- 'arn', 'assetEntry_arn' - The ARN for the asset.+--+-- 'assetDetails', 'assetEntry_assetDetails' - Details about the asset.+--+-- 'assetType', 'assetEntry_assetType' - The type of asset that is added to a data set.+--+-- 'createdAt', 'assetEntry_createdAt' - The date and time that the asset was created, in ISO 8601 format.+--+-- 'dataSetId', 'assetEntry_dataSetId' - The unique identifier for the data set associated with this asset.+--+-- 'id', 'assetEntry_id' - The unique identifier for the asset.+--+-- 'name', 'assetEntry_name' - The name of the asset. When importing from Amazon S3, the Amazon S3+-- object key is used as the asset name. When exporting to Amazon S3, the+-- asset name is used as default target Amazon S3 object key. When+-- importing from Amazon API Gateway API, the API name is used as the asset+-- name. When importing from Amazon Redshift, the datashare name is used as+-- the asset name. When importing from AWS Lake Formation, the static+-- values of \"Database(s) included in LF-tag policy\" or \"Table(s)+-- included in LF-tag policy\" are used as the asset name.+--+-- 'revisionId', 'assetEntry_revisionId' - The unique identifier for the revision associated with this asset.+--+-- 'updatedAt', 'assetEntry_updatedAt' - The date and time that the asset was last updated, in ISO 8601 format.+newAssetEntry ::+ -- | 'arn'+ Prelude.Text ->+ -- | 'assetDetails'+ AssetDetails ->+ -- | 'assetType'+ AssetType ->+ -- | 'createdAt'+ Prelude.UTCTime ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ -- | 'updatedAt'+ Prelude.UTCTime ->+ AssetEntry+newAssetEntry+ pArn_+ pAssetDetails_+ pAssetType_+ pCreatedAt_+ pDataSetId_+ pId_+ pName_+ pRevisionId_+ pUpdatedAt_ =+ AssetEntry'+ { sourceId = Prelude.Nothing,+ arn = pArn_,+ assetDetails = pAssetDetails_,+ assetType = pAssetType_,+ createdAt = Data._Time Lens.# pCreatedAt_,+ dataSetId = pDataSetId_,+ id = pId_,+ name = pName_,+ revisionId = pRevisionId_,+ updatedAt = Data._Time Lens.# pUpdatedAt_+ }++-- | The asset ID of the owned asset corresponding to the entitled asset+-- being viewed. This parameter is returned when an asset owner is viewing+-- the entitled copy of its owned asset.+assetEntry_sourceId :: Lens.Lens' AssetEntry (Prelude.Maybe Prelude.Text)+assetEntry_sourceId = Lens.lens (\AssetEntry' {sourceId} -> sourceId) (\s@AssetEntry' {} a -> s {sourceId = a} :: AssetEntry)++-- | The ARN for the asset.+assetEntry_arn :: Lens.Lens' AssetEntry Prelude.Text+assetEntry_arn = Lens.lens (\AssetEntry' {arn} -> arn) (\s@AssetEntry' {} a -> s {arn = a} :: AssetEntry)++-- | Details about the asset.+assetEntry_assetDetails :: Lens.Lens' AssetEntry AssetDetails+assetEntry_assetDetails = Lens.lens (\AssetEntry' {assetDetails} -> assetDetails) (\s@AssetEntry' {} a -> s {assetDetails = a} :: AssetEntry)++-- | The type of asset that is added to a data set.+assetEntry_assetType :: Lens.Lens' AssetEntry AssetType+assetEntry_assetType = Lens.lens (\AssetEntry' {assetType} -> assetType) (\s@AssetEntry' {} a -> s {assetType = a} :: AssetEntry)++-- | The date and time that the asset was created, in ISO 8601 format.+assetEntry_createdAt :: Lens.Lens' AssetEntry Prelude.UTCTime+assetEntry_createdAt = Lens.lens (\AssetEntry' {createdAt} -> createdAt) (\s@AssetEntry' {} a -> s {createdAt = a} :: AssetEntry) Prelude.. Data._Time++-- | The unique identifier for the data set associated with this asset.+assetEntry_dataSetId :: Lens.Lens' AssetEntry Prelude.Text+assetEntry_dataSetId = Lens.lens (\AssetEntry' {dataSetId} -> dataSetId) (\s@AssetEntry' {} a -> s {dataSetId = a} :: AssetEntry)++-- | The unique identifier for the asset.+assetEntry_id :: Lens.Lens' AssetEntry Prelude.Text+assetEntry_id = Lens.lens (\AssetEntry' {id} -> id) (\s@AssetEntry' {} a -> s {id = a} :: AssetEntry)++-- | The name of the asset. When importing from Amazon S3, the Amazon S3+-- object key is used as the asset name. When exporting to Amazon S3, the+-- asset name is used as default target Amazon S3 object key. When+-- importing from Amazon API Gateway API, the API name is used as the asset+-- name. When importing from Amazon Redshift, the datashare name is used as+-- the asset name. When importing from AWS Lake Formation, the static+-- values of \"Database(s) included in LF-tag policy\" or \"Table(s)+-- included in LF-tag policy\" are used as the asset name.+assetEntry_name :: Lens.Lens' AssetEntry Prelude.Text+assetEntry_name = Lens.lens (\AssetEntry' {name} -> name) (\s@AssetEntry' {} a -> s {name = a} :: AssetEntry)++-- | The unique identifier for the revision associated with this asset.+assetEntry_revisionId :: Lens.Lens' AssetEntry Prelude.Text+assetEntry_revisionId = Lens.lens (\AssetEntry' {revisionId} -> revisionId) (\s@AssetEntry' {} a -> s {revisionId = a} :: AssetEntry)++-- | The date and time that the asset was last updated, in ISO 8601 format.+assetEntry_updatedAt :: Lens.Lens' AssetEntry Prelude.UTCTime+assetEntry_updatedAt = Lens.lens (\AssetEntry' {updatedAt} -> updatedAt) (\s@AssetEntry' {} a -> s {updatedAt = a} :: AssetEntry) Prelude.. Data._Time++instance Data.FromJSON AssetEntry where+ parseJSON =+ Data.withObject+ "AssetEntry"+ ( \x ->+ AssetEntry'+ Prelude.<$> (x Data..:? "SourceId")+ Prelude.<*> (x Data..: "Arn")+ Prelude.<*> (x Data..: "AssetDetails")+ Prelude.<*> (x Data..: "AssetType")+ Prelude.<*> (x Data..: "CreatedAt")+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> (x Data..: "Id")+ Prelude.<*> (x Data..: "Name")+ Prelude.<*> (x Data..: "RevisionId")+ Prelude.<*> (x Data..: "UpdatedAt")+ )++instance Prelude.Hashable AssetEntry where+ hashWithSalt _salt AssetEntry' {..} =+ _salt+ `Prelude.hashWithSalt` sourceId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` assetDetails+ `Prelude.hashWithSalt` assetType+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` revisionId+ `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData AssetEntry where+ rnf AssetEntry' {..} =+ Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf assetDetails+ `Prelude.seq` Prelude.rnf assetType+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/DataExchange/Types/AssetSourceEntry.hs view
@@ -0,0 +1,93 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.AssetSourceEntry+-- 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.DataExchange.Types.AssetSourceEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The source of the assets.+--+-- /See:/ 'newAssetSourceEntry' smart constructor.+data AssetSourceEntry = AssetSourceEntry'+ { -- | The Amazon S3 bucket that\'s part of the source of the asset.+ bucket :: Prelude.Text,+ -- | The name of the object in Amazon S3 for the asset.+ key :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssetSourceEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'bucket', 'assetSourceEntry_bucket' - The Amazon S3 bucket that\'s part of the source of the asset.+--+-- 'key', 'assetSourceEntry_key' - The name of the object in Amazon S3 for the asset.+newAssetSourceEntry ::+ -- | 'bucket'+ Prelude.Text ->+ -- | 'key'+ Prelude.Text ->+ AssetSourceEntry+newAssetSourceEntry pBucket_ pKey_ =+ AssetSourceEntry' {bucket = pBucket_, key = pKey_}++-- | The Amazon S3 bucket that\'s part of the source of the asset.+assetSourceEntry_bucket :: Lens.Lens' AssetSourceEntry Prelude.Text+assetSourceEntry_bucket = Lens.lens (\AssetSourceEntry' {bucket} -> bucket) (\s@AssetSourceEntry' {} a -> s {bucket = a} :: AssetSourceEntry)++-- | The name of the object in Amazon S3 for the asset.+assetSourceEntry_key :: Lens.Lens' AssetSourceEntry Prelude.Text+assetSourceEntry_key = Lens.lens (\AssetSourceEntry' {key} -> key) (\s@AssetSourceEntry' {} a -> s {key = a} :: AssetSourceEntry)++instance Data.FromJSON AssetSourceEntry where+ parseJSON =+ Data.withObject+ "AssetSourceEntry"+ ( \x ->+ AssetSourceEntry'+ Prelude.<$> (x Data..: "Bucket")+ Prelude.<*> (x Data..: "Key")+ )++instance Prelude.Hashable AssetSourceEntry where+ hashWithSalt _salt AssetSourceEntry' {..} =+ _salt+ `Prelude.hashWithSalt` bucket+ `Prelude.hashWithSalt` key++instance Prelude.NFData AssetSourceEntry where+ rnf AssetSourceEntry' {..} =+ Prelude.rnf bucket `Prelude.seq` Prelude.rnf key++instance Data.ToJSON AssetSourceEntry where+ toJSON AssetSourceEntry' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Bucket" Data..= bucket),+ Prelude.Just ("Key" Data..= key)+ ]+ )
+ gen/Amazonka/DataExchange/Types/AssetType.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.AssetType+-- 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.DataExchange.Types.AssetType+ ( AssetType+ ( ..,+ AssetType_API_GATEWAY_API,+ AssetType_LAKE_FORMATION_DATA_PERMISSION,+ AssetType_REDSHIFT_DATA_SHARE,+ AssetType_S3_DATA_ACCESS,+ AssetType_S3_SNAPSHOT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AssetType = AssetType'+ { fromAssetType ::+ 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 AssetType_API_GATEWAY_API :: AssetType+pattern AssetType_API_GATEWAY_API = AssetType' "API_GATEWAY_API"++pattern AssetType_LAKE_FORMATION_DATA_PERMISSION :: AssetType+pattern AssetType_LAKE_FORMATION_DATA_PERMISSION = AssetType' "LAKE_FORMATION_DATA_PERMISSION"++pattern AssetType_REDSHIFT_DATA_SHARE :: AssetType+pattern AssetType_REDSHIFT_DATA_SHARE = AssetType' "REDSHIFT_DATA_SHARE"++pattern AssetType_S3_DATA_ACCESS :: AssetType+pattern AssetType_S3_DATA_ACCESS = AssetType' "S3_DATA_ACCESS"++pattern AssetType_S3_SNAPSHOT :: AssetType+pattern AssetType_S3_SNAPSHOT = AssetType' "S3_SNAPSHOT"++{-# COMPLETE+ AssetType_API_GATEWAY_API,+ AssetType_LAKE_FORMATION_DATA_PERMISSION,+ AssetType_REDSHIFT_DATA_SHARE,+ AssetType_S3_DATA_ACCESS,+ AssetType_S3_SNAPSHOT,+ AssetType'+ #-}
+ gen/Amazonka/DataExchange/Types/AutoExportRevisionDestinationEntry.hs view
@@ -0,0 +1,117 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.AutoExportRevisionDestinationEntry+-- 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.DataExchange.Types.AutoExportRevisionDestinationEntry 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 revision destination is the Amazon S3 bucket folder destination to+-- where the export will be sent.+--+-- /See:/ 'newAutoExportRevisionDestinationEntry' smart constructor.+data AutoExportRevisionDestinationEntry = AutoExportRevisionDestinationEntry'+ { -- | A string representing the pattern for generated names of the individual+ -- assets in the revision. For more information about key patterns, see+ -- <https://docs.aws.amazon.com/data-exchange/latest/userguide/jobs.html#revision-export-keypatterns Key patterns when exporting revisions>.+ keyPattern :: Prelude.Maybe Prelude.Text,+ -- | The Amazon S3 bucket that is the destination for the event action.+ bucket :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AutoExportRevisionDestinationEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'keyPattern', 'autoExportRevisionDestinationEntry_keyPattern' - A string representing the pattern for generated names of the individual+-- assets in the revision. For more information about key patterns, see+-- <https://docs.aws.amazon.com/data-exchange/latest/userguide/jobs.html#revision-export-keypatterns Key patterns when exporting revisions>.+--+-- 'bucket', 'autoExportRevisionDestinationEntry_bucket' - The Amazon S3 bucket that is the destination for the event action.+newAutoExportRevisionDestinationEntry ::+ -- | 'bucket'+ Prelude.Text ->+ AutoExportRevisionDestinationEntry+newAutoExportRevisionDestinationEntry pBucket_ =+ AutoExportRevisionDestinationEntry'+ { keyPattern =+ Prelude.Nothing,+ bucket = pBucket_+ }++-- | A string representing the pattern for generated names of the individual+-- assets in the revision. For more information about key patterns, see+-- <https://docs.aws.amazon.com/data-exchange/latest/userguide/jobs.html#revision-export-keypatterns Key patterns when exporting revisions>.+autoExportRevisionDestinationEntry_keyPattern :: Lens.Lens' AutoExportRevisionDestinationEntry (Prelude.Maybe Prelude.Text)+autoExportRevisionDestinationEntry_keyPattern = Lens.lens (\AutoExportRevisionDestinationEntry' {keyPattern} -> keyPattern) (\s@AutoExportRevisionDestinationEntry' {} a -> s {keyPattern = a} :: AutoExportRevisionDestinationEntry)++-- | The Amazon S3 bucket that is the destination for the event action.+autoExportRevisionDestinationEntry_bucket :: Lens.Lens' AutoExportRevisionDestinationEntry Prelude.Text+autoExportRevisionDestinationEntry_bucket = Lens.lens (\AutoExportRevisionDestinationEntry' {bucket} -> bucket) (\s@AutoExportRevisionDestinationEntry' {} a -> s {bucket = a} :: AutoExportRevisionDestinationEntry)++instance+ Data.FromJSON+ AutoExportRevisionDestinationEntry+ where+ parseJSON =+ Data.withObject+ "AutoExportRevisionDestinationEntry"+ ( \x ->+ AutoExportRevisionDestinationEntry'+ Prelude.<$> (x Data..:? "KeyPattern")+ Prelude.<*> (x Data..: "Bucket")+ )++instance+ Prelude.Hashable+ AutoExportRevisionDestinationEntry+ where+ hashWithSalt+ _salt+ AutoExportRevisionDestinationEntry' {..} =+ _salt+ `Prelude.hashWithSalt` keyPattern+ `Prelude.hashWithSalt` bucket++instance+ Prelude.NFData+ AutoExportRevisionDestinationEntry+ where+ rnf AutoExportRevisionDestinationEntry' {..} =+ Prelude.rnf keyPattern+ `Prelude.seq` Prelude.rnf bucket++instance+ Data.ToJSON+ AutoExportRevisionDestinationEntry+ where+ toJSON AutoExportRevisionDestinationEntry' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("KeyPattern" Data..=) Prelude.<$> keyPattern,+ Prelude.Just ("Bucket" Data..= bucket)+ ]+ )
+ gen/Amazonka/DataExchange/Types/AutoExportRevisionToS3RequestDetails.hs view
@@ -0,0 +1,118 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.AutoExportRevisionToS3RequestDetails+-- 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.DataExchange.Types.AutoExportRevisionToS3RequestDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.AutoExportRevisionDestinationEntry+import Amazonka.DataExchange.Types.ExportServerSideEncryption+import qualified Amazonka.Prelude as Prelude++-- | Details of the operation to be performed by the job.+--+-- /See:/ 'newAutoExportRevisionToS3RequestDetails' smart constructor.+data AutoExportRevisionToS3RequestDetails = AutoExportRevisionToS3RequestDetails'+ { -- | Encryption configuration for the auto export job.+ encryption :: Prelude.Maybe ExportServerSideEncryption,+ -- | A revision destination is the Amazon S3 bucket folder destination to+ -- where the export will be sent.+ revisionDestination :: AutoExportRevisionDestinationEntry+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AutoExportRevisionToS3RequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'encryption', 'autoExportRevisionToS3RequestDetails_encryption' - Encryption configuration for the auto export job.+--+-- 'revisionDestination', 'autoExportRevisionToS3RequestDetails_revisionDestination' - A revision destination is the Amazon S3 bucket folder destination to+-- where the export will be sent.+newAutoExportRevisionToS3RequestDetails ::+ -- | 'revisionDestination'+ AutoExportRevisionDestinationEntry ->+ AutoExportRevisionToS3RequestDetails+newAutoExportRevisionToS3RequestDetails+ pRevisionDestination_ =+ AutoExportRevisionToS3RequestDetails'+ { encryption =+ Prelude.Nothing,+ revisionDestination =+ pRevisionDestination_+ }++-- | Encryption configuration for the auto export job.+autoExportRevisionToS3RequestDetails_encryption :: Lens.Lens' AutoExportRevisionToS3RequestDetails (Prelude.Maybe ExportServerSideEncryption)+autoExportRevisionToS3RequestDetails_encryption = Lens.lens (\AutoExportRevisionToS3RequestDetails' {encryption} -> encryption) (\s@AutoExportRevisionToS3RequestDetails' {} a -> s {encryption = a} :: AutoExportRevisionToS3RequestDetails)++-- | A revision destination is the Amazon S3 bucket folder destination to+-- where the export will be sent.+autoExportRevisionToS3RequestDetails_revisionDestination :: Lens.Lens' AutoExportRevisionToS3RequestDetails AutoExportRevisionDestinationEntry+autoExportRevisionToS3RequestDetails_revisionDestination = Lens.lens (\AutoExportRevisionToS3RequestDetails' {revisionDestination} -> revisionDestination) (\s@AutoExportRevisionToS3RequestDetails' {} a -> s {revisionDestination = a} :: AutoExportRevisionToS3RequestDetails)++instance+ Data.FromJSON+ AutoExportRevisionToS3RequestDetails+ where+ parseJSON =+ Data.withObject+ "AutoExportRevisionToS3RequestDetails"+ ( \x ->+ AutoExportRevisionToS3RequestDetails'+ Prelude.<$> (x Data..:? "Encryption")+ Prelude.<*> (x Data..: "RevisionDestination")+ )++instance+ Prelude.Hashable+ AutoExportRevisionToS3RequestDetails+ where+ hashWithSalt+ _salt+ AutoExportRevisionToS3RequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` encryption+ `Prelude.hashWithSalt` revisionDestination++instance+ Prelude.NFData+ AutoExportRevisionToS3RequestDetails+ where+ rnf AutoExportRevisionToS3RequestDetails' {..} =+ Prelude.rnf encryption+ `Prelude.seq` Prelude.rnf revisionDestination++instance+ Data.ToJSON+ AutoExportRevisionToS3RequestDetails+ where+ toJSON AutoExportRevisionToS3RequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Encryption" Data..=) Prelude.<$> encryption,+ Prelude.Just+ ("RevisionDestination" Data..= revisionDestination)+ ]+ )
+ gen/Amazonka/DataExchange/Types/Code.hs view
@@ -0,0 +1,93 @@+{-# 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.DataExchange.Types.Code+-- 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.DataExchange.Types.Code+ ( Code+ ( ..,+ Code_ACCESS_DENIED_EXCEPTION,+ Code_INTERNAL_SERVER_EXCEPTION,+ Code_MALWARE_DETECTED,+ Code_MALWARE_SCAN_ENCRYPTED_FILE,+ Code_RESOURCE_NOT_FOUND_EXCEPTION,+ Code_SERVICE_QUOTA_EXCEEDED_EXCEPTION,+ Code_VALIDATION_EXCEPTION+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Code = Code' {fromCode :: 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 Code_ACCESS_DENIED_EXCEPTION :: Code+pattern Code_ACCESS_DENIED_EXCEPTION = Code' "ACCESS_DENIED_EXCEPTION"++pattern Code_INTERNAL_SERVER_EXCEPTION :: Code+pattern Code_INTERNAL_SERVER_EXCEPTION = Code' "INTERNAL_SERVER_EXCEPTION"++pattern Code_MALWARE_DETECTED :: Code+pattern Code_MALWARE_DETECTED = Code' "MALWARE_DETECTED"++pattern Code_MALWARE_SCAN_ENCRYPTED_FILE :: Code+pattern Code_MALWARE_SCAN_ENCRYPTED_FILE = Code' "MALWARE_SCAN_ENCRYPTED_FILE"++pattern Code_RESOURCE_NOT_FOUND_EXCEPTION :: Code+pattern Code_RESOURCE_NOT_FOUND_EXCEPTION = Code' "RESOURCE_NOT_FOUND_EXCEPTION"++pattern Code_SERVICE_QUOTA_EXCEEDED_EXCEPTION :: Code+pattern Code_SERVICE_QUOTA_EXCEEDED_EXCEPTION = Code' "SERVICE_QUOTA_EXCEEDED_EXCEPTION"++pattern Code_VALIDATION_EXCEPTION :: Code+pattern Code_VALIDATION_EXCEPTION = Code' "VALIDATION_EXCEPTION"++{-# COMPLETE+ Code_ACCESS_DENIED_EXCEPTION,+ Code_INTERNAL_SERVER_EXCEPTION,+ Code_MALWARE_DETECTED,+ Code_MALWARE_SCAN_ENCRYPTED_FILE,+ Code_RESOURCE_NOT_FOUND_EXCEPTION,+ Code_SERVICE_QUOTA_EXCEEDED_EXCEPTION,+ Code_VALIDATION_EXCEPTION,+ Code'+ #-}
+ gen/Amazonka/DataExchange/Types/CreateS3DataAccessFromS3BucketRequestDetails.hs view
@@ -0,0 +1,122 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.CreateS3DataAccessFromS3BucketRequestDetails+-- 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.DataExchange.Types.CreateS3DataAccessFromS3BucketRequestDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.S3DataAccessAssetSourceEntry+import qualified Amazonka.Prelude as Prelude++-- | Details of the operation to create an Amazon S3 data access from an S3+-- bucket.+--+-- /See:/ 'newCreateS3DataAccessFromS3BucketRequestDetails' smart constructor.+data CreateS3DataAccessFromS3BucketRequestDetails = CreateS3DataAccessFromS3BucketRequestDetails'+ { -- | Details about the S3 data access source asset.+ assetSource :: S3DataAccessAssetSourceEntry,+ -- | The unique identifier for the data set associated with the creation of+ -- this Amazon S3 data access.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for a revision.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateS3DataAccessFromS3BucketRequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetSource', 'createS3DataAccessFromS3BucketRequestDetails_assetSource' - Details about the S3 data access source asset.+--+-- 'dataSetId', 'createS3DataAccessFromS3BucketRequestDetails_dataSetId' - The unique identifier for the data set associated with the creation of+-- this Amazon S3 data access.+--+-- 'revisionId', 'createS3DataAccessFromS3BucketRequestDetails_revisionId' - The unique identifier for a revision.+newCreateS3DataAccessFromS3BucketRequestDetails ::+ -- | 'assetSource'+ S3DataAccessAssetSourceEntry ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ CreateS3DataAccessFromS3BucketRequestDetails+newCreateS3DataAccessFromS3BucketRequestDetails+ pAssetSource_+ pDataSetId_+ pRevisionId_ =+ CreateS3DataAccessFromS3BucketRequestDetails'+ { assetSource =+ pAssetSource_,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | Details about the S3 data access source asset.+createS3DataAccessFromS3BucketRequestDetails_assetSource :: Lens.Lens' CreateS3DataAccessFromS3BucketRequestDetails S3DataAccessAssetSourceEntry+createS3DataAccessFromS3BucketRequestDetails_assetSource = Lens.lens (\CreateS3DataAccessFromS3BucketRequestDetails' {assetSource} -> assetSource) (\s@CreateS3DataAccessFromS3BucketRequestDetails' {} a -> s {assetSource = a} :: CreateS3DataAccessFromS3BucketRequestDetails)++-- | The unique identifier for the data set associated with the creation of+-- this Amazon S3 data access.+createS3DataAccessFromS3BucketRequestDetails_dataSetId :: Lens.Lens' CreateS3DataAccessFromS3BucketRequestDetails Prelude.Text+createS3DataAccessFromS3BucketRequestDetails_dataSetId = Lens.lens (\CreateS3DataAccessFromS3BucketRequestDetails' {dataSetId} -> dataSetId) (\s@CreateS3DataAccessFromS3BucketRequestDetails' {} a -> s {dataSetId = a} :: CreateS3DataAccessFromS3BucketRequestDetails)++-- | The unique identifier for a revision.+createS3DataAccessFromS3BucketRequestDetails_revisionId :: Lens.Lens' CreateS3DataAccessFromS3BucketRequestDetails Prelude.Text+createS3DataAccessFromS3BucketRequestDetails_revisionId = Lens.lens (\CreateS3DataAccessFromS3BucketRequestDetails' {revisionId} -> revisionId) (\s@CreateS3DataAccessFromS3BucketRequestDetails' {} a -> s {revisionId = a} :: CreateS3DataAccessFromS3BucketRequestDetails)++instance+ Prelude.Hashable+ CreateS3DataAccessFromS3BucketRequestDetails+ where+ hashWithSalt+ _salt+ CreateS3DataAccessFromS3BucketRequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` assetSource+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ CreateS3DataAccessFromS3BucketRequestDetails+ where+ rnf CreateS3DataAccessFromS3BucketRequestDetails' {..} =+ Prelude.rnf assetSource+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance+ Data.ToJSON+ CreateS3DataAccessFromS3BucketRequestDetails+ where+ toJSON+ CreateS3DataAccessFromS3BucketRequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("AssetSource" Data..= assetSource),+ Prelude.Just ("DataSetId" Data..= dataSetId),+ Prelude.Just ("RevisionId" Data..= revisionId)+ ]+ )
+ gen/Amazonka/DataExchange/Types/CreateS3DataAccessFromS3BucketResponseDetails.hs view
@@ -0,0 +1,120 @@+{-# 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.DataExchange.Types.CreateS3DataAccessFromS3BucketResponseDetails+-- 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.DataExchange.Types.CreateS3DataAccessFromS3BucketResponseDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.S3DataAccessAssetSourceEntry+import qualified Amazonka.Prelude as Prelude++-- | Details about the response of the operation to create an S3 data access+-- from an S3 bucket.+--+-- /See:/ 'newCreateS3DataAccessFromS3BucketResponseDetails' smart constructor.+data CreateS3DataAccessFromS3BucketResponseDetails = CreateS3DataAccessFromS3BucketResponseDetails'+ { -- | Details about the asset source from an Amazon S3 bucket.+ assetSource :: S3DataAccessAssetSourceEntry,+ -- | The unique identifier for this data set.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateS3DataAccessFromS3BucketResponseDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetSource', 'createS3DataAccessFromS3BucketResponseDetails_assetSource' - Details about the asset source from an Amazon S3 bucket.+--+-- 'dataSetId', 'createS3DataAccessFromS3BucketResponseDetails_dataSetId' - The unique identifier for this data set.+--+-- 'revisionId', 'createS3DataAccessFromS3BucketResponseDetails_revisionId' - The unique identifier for the revision.+newCreateS3DataAccessFromS3BucketResponseDetails ::+ -- | 'assetSource'+ S3DataAccessAssetSourceEntry ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ CreateS3DataAccessFromS3BucketResponseDetails+newCreateS3DataAccessFromS3BucketResponseDetails+ pAssetSource_+ pDataSetId_+ pRevisionId_ =+ CreateS3DataAccessFromS3BucketResponseDetails'+ { assetSource =+ pAssetSource_,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | Details about the asset source from an Amazon S3 bucket.+createS3DataAccessFromS3BucketResponseDetails_assetSource :: Lens.Lens' CreateS3DataAccessFromS3BucketResponseDetails S3DataAccessAssetSourceEntry+createS3DataAccessFromS3BucketResponseDetails_assetSource = Lens.lens (\CreateS3DataAccessFromS3BucketResponseDetails' {assetSource} -> assetSource) (\s@CreateS3DataAccessFromS3BucketResponseDetails' {} a -> s {assetSource = a} :: CreateS3DataAccessFromS3BucketResponseDetails)++-- | The unique identifier for this data set.+createS3DataAccessFromS3BucketResponseDetails_dataSetId :: Lens.Lens' CreateS3DataAccessFromS3BucketResponseDetails Prelude.Text+createS3DataAccessFromS3BucketResponseDetails_dataSetId = Lens.lens (\CreateS3DataAccessFromS3BucketResponseDetails' {dataSetId} -> dataSetId) (\s@CreateS3DataAccessFromS3BucketResponseDetails' {} a -> s {dataSetId = a} :: CreateS3DataAccessFromS3BucketResponseDetails)++-- | The unique identifier for the revision.+createS3DataAccessFromS3BucketResponseDetails_revisionId :: Lens.Lens' CreateS3DataAccessFromS3BucketResponseDetails Prelude.Text+createS3DataAccessFromS3BucketResponseDetails_revisionId = Lens.lens (\CreateS3DataAccessFromS3BucketResponseDetails' {revisionId} -> revisionId) (\s@CreateS3DataAccessFromS3BucketResponseDetails' {} a -> s {revisionId = a} :: CreateS3DataAccessFromS3BucketResponseDetails)++instance+ Data.FromJSON+ CreateS3DataAccessFromS3BucketResponseDetails+ where+ parseJSON =+ Data.withObject+ "CreateS3DataAccessFromS3BucketResponseDetails"+ ( \x ->+ CreateS3DataAccessFromS3BucketResponseDetails'+ Prelude.<$> (x Data..: "AssetSource")+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> (x Data..: "RevisionId")+ )++instance+ Prelude.Hashable+ CreateS3DataAccessFromS3BucketResponseDetails+ where+ hashWithSalt+ _salt+ CreateS3DataAccessFromS3BucketResponseDetails' {..} =+ _salt+ `Prelude.hashWithSalt` assetSource+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ CreateS3DataAccessFromS3BucketResponseDetails+ where+ rnf+ CreateS3DataAccessFromS3BucketResponseDetails' {..} =+ Prelude.rnf assetSource+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId
+ gen/Amazonka/DataExchange/Types/DataSetEntry.hs view
@@ -0,0 +1,222 @@+{-# 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.DataExchange.Types.DataSetEntry+-- 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.DataExchange.Types.DataSetEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.AssetType+import Amazonka.DataExchange.Types.Origin+import Amazonka.DataExchange.Types.OriginDetails+import qualified Amazonka.Prelude as Prelude++-- | A data set is an AWS resource with one or more revisions.+--+-- /See:/ 'newDataSetEntry' smart constructor.+data DataSetEntry = DataSetEntry'+ { -- | If the origin of this data set is ENTITLED, includes the details for the+ -- product on AWS Marketplace.+ originDetails :: Prelude.Maybe OriginDetails,+ -- | The data set ID of the owned data set corresponding to the entitled data+ -- set being viewed. This parameter is returned when a data set owner is+ -- viewing the entitled copy of its owned data set.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the data set.+ arn :: Prelude.Text,+ -- | The type of asset that is added to a data set.+ assetType :: AssetType,+ -- | The date and time that the data set was created, in ISO 8601 format.+ createdAt :: Data.ISO8601,+ -- | The description for the data set.+ description :: Prelude.Text,+ -- | The unique identifier for the data set.+ id :: Prelude.Text,+ -- | The name of the data set.+ name :: Prelude.Text,+ -- | A property that defines the data set as OWNED by the account (for+ -- providers) or ENTITLED to the account (for subscribers).+ origin :: Origin,+ -- | The date and time that the data set was last updated, in ISO 8601+ -- format.+ updatedAt :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataSetEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'originDetails', 'dataSetEntry_originDetails' - If the origin of this data set is ENTITLED, includes the details for the+-- product on AWS Marketplace.+--+-- 'sourceId', 'dataSetEntry_sourceId' - The data set ID of the owned data set corresponding to the entitled data+-- set being viewed. This parameter is returned when a data set owner is+-- viewing the entitled copy of its owned data set.+--+-- 'arn', 'dataSetEntry_arn' - The ARN for the data set.+--+-- 'assetType', 'dataSetEntry_assetType' - The type of asset that is added to a data set.+--+-- 'createdAt', 'dataSetEntry_createdAt' - The date and time that the data set was created, in ISO 8601 format.+--+-- 'description', 'dataSetEntry_description' - The description for the data set.+--+-- 'id', 'dataSetEntry_id' - The unique identifier for the data set.+--+-- 'name', 'dataSetEntry_name' - The name of the data set.+--+-- 'origin', 'dataSetEntry_origin' - A property that defines the data set as OWNED by the account (for+-- providers) or ENTITLED to the account (for subscribers).+--+-- 'updatedAt', 'dataSetEntry_updatedAt' - The date and time that the data set was last updated, in ISO 8601+-- format.+newDataSetEntry ::+ -- | 'arn'+ Prelude.Text ->+ -- | 'assetType'+ AssetType ->+ -- | 'createdAt'+ Prelude.UTCTime ->+ -- | 'description'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ -- | 'origin'+ Origin ->+ -- | 'updatedAt'+ Prelude.UTCTime ->+ DataSetEntry+newDataSetEntry+ pArn_+ pAssetType_+ pCreatedAt_+ pDescription_+ pId_+ pName_+ pOrigin_+ pUpdatedAt_ =+ DataSetEntry'+ { originDetails = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ arn = pArn_,+ assetType = pAssetType_,+ createdAt = Data._Time Lens.# pCreatedAt_,+ description = pDescription_,+ id = pId_,+ name = pName_,+ origin = pOrigin_,+ updatedAt = Data._Time Lens.# pUpdatedAt_+ }++-- | If the origin of this data set is ENTITLED, includes the details for the+-- product on AWS Marketplace.+dataSetEntry_originDetails :: Lens.Lens' DataSetEntry (Prelude.Maybe OriginDetails)+dataSetEntry_originDetails = Lens.lens (\DataSetEntry' {originDetails} -> originDetails) (\s@DataSetEntry' {} a -> s {originDetails = a} :: DataSetEntry)++-- | The data set ID of the owned data set corresponding to the entitled data+-- set being viewed. This parameter is returned when a data set owner is+-- viewing the entitled copy of its owned data set.+dataSetEntry_sourceId :: Lens.Lens' DataSetEntry (Prelude.Maybe Prelude.Text)+dataSetEntry_sourceId = Lens.lens (\DataSetEntry' {sourceId} -> sourceId) (\s@DataSetEntry' {} a -> s {sourceId = a} :: DataSetEntry)++-- | The ARN for the data set.+dataSetEntry_arn :: Lens.Lens' DataSetEntry Prelude.Text+dataSetEntry_arn = Lens.lens (\DataSetEntry' {arn} -> arn) (\s@DataSetEntry' {} a -> s {arn = a} :: DataSetEntry)++-- | The type of asset that is added to a data set.+dataSetEntry_assetType :: Lens.Lens' DataSetEntry AssetType+dataSetEntry_assetType = Lens.lens (\DataSetEntry' {assetType} -> assetType) (\s@DataSetEntry' {} a -> s {assetType = a} :: DataSetEntry)++-- | The date and time that the data set was created, in ISO 8601 format.+dataSetEntry_createdAt :: Lens.Lens' DataSetEntry Prelude.UTCTime+dataSetEntry_createdAt = Lens.lens (\DataSetEntry' {createdAt} -> createdAt) (\s@DataSetEntry' {} a -> s {createdAt = a} :: DataSetEntry) Prelude.. Data._Time++-- | The description for the data set.+dataSetEntry_description :: Lens.Lens' DataSetEntry Prelude.Text+dataSetEntry_description = Lens.lens (\DataSetEntry' {description} -> description) (\s@DataSetEntry' {} a -> s {description = a} :: DataSetEntry)++-- | The unique identifier for the data set.+dataSetEntry_id :: Lens.Lens' DataSetEntry Prelude.Text+dataSetEntry_id = Lens.lens (\DataSetEntry' {id} -> id) (\s@DataSetEntry' {} a -> s {id = a} :: DataSetEntry)++-- | The name of the data set.+dataSetEntry_name :: Lens.Lens' DataSetEntry Prelude.Text+dataSetEntry_name = Lens.lens (\DataSetEntry' {name} -> name) (\s@DataSetEntry' {} a -> s {name = a} :: DataSetEntry)++-- | A property that defines the data set as OWNED by the account (for+-- providers) or ENTITLED to the account (for subscribers).+dataSetEntry_origin :: Lens.Lens' DataSetEntry Origin+dataSetEntry_origin = Lens.lens (\DataSetEntry' {origin} -> origin) (\s@DataSetEntry' {} a -> s {origin = a} :: DataSetEntry)++-- | The date and time that the data set was last updated, in ISO 8601+-- format.+dataSetEntry_updatedAt :: Lens.Lens' DataSetEntry Prelude.UTCTime+dataSetEntry_updatedAt = Lens.lens (\DataSetEntry' {updatedAt} -> updatedAt) (\s@DataSetEntry' {} a -> s {updatedAt = a} :: DataSetEntry) Prelude.. Data._Time++instance Data.FromJSON DataSetEntry where+ parseJSON =+ Data.withObject+ "DataSetEntry"+ ( \x ->+ DataSetEntry'+ Prelude.<$> (x Data..:? "OriginDetails")+ Prelude.<*> (x Data..:? "SourceId")+ Prelude.<*> (x Data..: "Arn")+ Prelude.<*> (x Data..: "AssetType")+ Prelude.<*> (x Data..: "CreatedAt")+ Prelude.<*> (x Data..: "Description")+ Prelude.<*> (x Data..: "Id")+ Prelude.<*> (x Data..: "Name")+ Prelude.<*> (x Data..: "Origin")+ Prelude.<*> (x Data..: "UpdatedAt")+ )++instance Prelude.Hashable DataSetEntry where+ hashWithSalt _salt DataSetEntry' {..} =+ _salt+ `Prelude.hashWithSalt` originDetails+ `Prelude.hashWithSalt` sourceId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` assetType+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` origin+ `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData DataSetEntry where+ rnf DataSetEntry' {..} =+ Prelude.rnf originDetails+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf assetType+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf origin+ `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/DataExchange/Types/DatabaseLFTagPolicy.hs view
@@ -0,0 +1,69 @@+{-# 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.DataExchange.Types.DatabaseLFTagPolicy+-- 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.DataExchange.Types.DatabaseLFTagPolicy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.LFTag+import qualified Amazonka.Prelude as Prelude++-- | The LF-tag policy for database resources.+--+-- /See:/ 'newDatabaseLFTagPolicy' smart constructor.+data DatabaseLFTagPolicy = DatabaseLFTagPolicy'+ { -- | A list of LF-tag conditions that apply to database resources.+ expression :: [LFTag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DatabaseLFTagPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'expression', 'databaseLFTagPolicy_expression' - A list of LF-tag conditions that apply to database resources.+newDatabaseLFTagPolicy ::+ DatabaseLFTagPolicy+newDatabaseLFTagPolicy =+ DatabaseLFTagPolicy' {expression = Prelude.mempty}++-- | A list of LF-tag conditions that apply to database resources.+databaseLFTagPolicy_expression :: Lens.Lens' DatabaseLFTagPolicy [LFTag]+databaseLFTagPolicy_expression = Lens.lens (\DatabaseLFTagPolicy' {expression} -> expression) (\s@DatabaseLFTagPolicy' {} a -> s {expression = a} :: DatabaseLFTagPolicy) Prelude.. Lens.coerced++instance Data.FromJSON DatabaseLFTagPolicy where+ parseJSON =+ Data.withObject+ "DatabaseLFTagPolicy"+ ( \x ->+ DatabaseLFTagPolicy'+ Prelude.<$> (x Data..:? "Expression" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable DatabaseLFTagPolicy where+ hashWithSalt _salt DatabaseLFTagPolicy' {..} =+ _salt `Prelude.hashWithSalt` expression++instance Prelude.NFData DatabaseLFTagPolicy where+ rnf DatabaseLFTagPolicy' {..} = Prelude.rnf expression
+ gen/Amazonka/DataExchange/Types/DatabaseLFTagPolicyAndPermissions.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.DataExchange.Types.DatabaseLFTagPolicyAndPermissions+-- 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.DataExchange.Types.DatabaseLFTagPolicyAndPermissions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.DatabaseLFTagPolicyPermission+import Amazonka.DataExchange.Types.LFTag+import qualified Amazonka.Prelude as Prelude++-- | The LF-tag policy and permissions for database resources.+--+-- /See:/ 'newDatabaseLFTagPolicyAndPermissions' smart constructor.+data DatabaseLFTagPolicyAndPermissions = DatabaseLFTagPolicyAndPermissions'+ { -- | A list of LF-tag conditions that apply to database resources.+ expression :: [LFTag],+ -- | The permissions granted to subscribers on database resources.+ permissions :: [DatabaseLFTagPolicyPermission]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DatabaseLFTagPolicyAndPermissions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'expression', 'databaseLFTagPolicyAndPermissions_expression' - A list of LF-tag conditions that apply to database resources.+--+-- 'permissions', 'databaseLFTagPolicyAndPermissions_permissions' - The permissions granted to subscribers on database resources.+newDatabaseLFTagPolicyAndPermissions ::+ DatabaseLFTagPolicyAndPermissions+newDatabaseLFTagPolicyAndPermissions =+ DatabaseLFTagPolicyAndPermissions'+ { expression =+ Prelude.mempty,+ permissions = Prelude.mempty+ }++-- | A list of LF-tag conditions that apply to database resources.+databaseLFTagPolicyAndPermissions_expression :: Lens.Lens' DatabaseLFTagPolicyAndPermissions [LFTag]+databaseLFTagPolicyAndPermissions_expression = Lens.lens (\DatabaseLFTagPolicyAndPermissions' {expression} -> expression) (\s@DatabaseLFTagPolicyAndPermissions' {} a -> s {expression = a} :: DatabaseLFTagPolicyAndPermissions) Prelude.. Lens.coerced++-- | The permissions granted to subscribers on database resources.+databaseLFTagPolicyAndPermissions_permissions :: Lens.Lens' DatabaseLFTagPolicyAndPermissions [DatabaseLFTagPolicyPermission]+databaseLFTagPolicyAndPermissions_permissions = Lens.lens (\DatabaseLFTagPolicyAndPermissions' {permissions} -> permissions) (\s@DatabaseLFTagPolicyAndPermissions' {} a -> s {permissions = a} :: DatabaseLFTagPolicyAndPermissions) Prelude.. Lens.coerced++instance+ Data.FromJSON+ DatabaseLFTagPolicyAndPermissions+ where+ parseJSON =+ Data.withObject+ "DatabaseLFTagPolicyAndPermissions"+ ( \x ->+ DatabaseLFTagPolicyAndPermissions'+ Prelude.<$> (x Data..:? "Expression" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Permissions" Data..!= Prelude.mempty)+ )++instance+ Prelude.Hashable+ DatabaseLFTagPolicyAndPermissions+ where+ hashWithSalt+ _salt+ DatabaseLFTagPolicyAndPermissions' {..} =+ _salt+ `Prelude.hashWithSalt` expression+ `Prelude.hashWithSalt` permissions++instance+ Prelude.NFData+ DatabaseLFTagPolicyAndPermissions+ where+ rnf DatabaseLFTagPolicyAndPermissions' {..} =+ Prelude.rnf expression+ `Prelude.seq` Prelude.rnf permissions++instance+ Data.ToJSON+ DatabaseLFTagPolicyAndPermissions+ where+ toJSON DatabaseLFTagPolicyAndPermissions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Expression" Data..= expression),+ Prelude.Just ("Permissions" Data..= permissions)+ ]+ )
+ gen/Amazonka/DataExchange/Types/DatabaseLFTagPolicyPermission.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.DataExchange.Types.DatabaseLFTagPolicyPermission+-- 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.DataExchange.Types.DatabaseLFTagPolicyPermission+ ( DatabaseLFTagPolicyPermission+ ( ..,+ DatabaseLFTagPolicyPermission_DESCRIBE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DatabaseLFTagPolicyPermission = DatabaseLFTagPolicyPermission'+ { fromDatabaseLFTagPolicyPermission ::+ 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 DatabaseLFTagPolicyPermission_DESCRIBE :: DatabaseLFTagPolicyPermission+pattern DatabaseLFTagPolicyPermission_DESCRIBE = DatabaseLFTagPolicyPermission' "DESCRIBE"++{-# COMPLETE+ DatabaseLFTagPolicyPermission_DESCRIBE,+ DatabaseLFTagPolicyPermission'+ #-}
+ gen/Amazonka/DataExchange/Types/Details.hs view
@@ -0,0 +1,92 @@+{-# 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.DataExchange.Types.Details+-- 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.DataExchange.Types.Details where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.AssetSourceEntry+import Amazonka.DataExchange.Types.ImportAssetFromSignedUrlJobErrorDetails+import qualified Amazonka.Prelude as Prelude++-- | Information about the job error.+--+-- /See:/ 'newDetails' smart constructor.+data Details = Details'+ { -- | Information about the job error.+ importAssetFromSignedUrlJobErrorDetails :: Prelude.Maybe ImportAssetFromSignedUrlJobErrorDetails,+ -- | Details about the job error.+ importAssetsFromS3JobErrorDetails :: Prelude.Maybe [AssetSourceEntry]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Details' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'importAssetFromSignedUrlJobErrorDetails', 'details_importAssetFromSignedUrlJobErrorDetails' - Information about the job error.+--+-- 'importAssetsFromS3JobErrorDetails', 'details_importAssetsFromS3JobErrorDetails' - Details about the job error.+newDetails ::+ Details+newDetails =+ Details'+ { importAssetFromSignedUrlJobErrorDetails =+ Prelude.Nothing,+ importAssetsFromS3JobErrorDetails = Prelude.Nothing+ }++-- | Information about the job error.+details_importAssetFromSignedUrlJobErrorDetails :: Lens.Lens' Details (Prelude.Maybe ImportAssetFromSignedUrlJobErrorDetails)+details_importAssetFromSignedUrlJobErrorDetails = Lens.lens (\Details' {importAssetFromSignedUrlJobErrorDetails} -> importAssetFromSignedUrlJobErrorDetails) (\s@Details' {} a -> s {importAssetFromSignedUrlJobErrorDetails = a} :: Details)++-- | Details about the job error.+details_importAssetsFromS3JobErrorDetails :: Lens.Lens' Details (Prelude.Maybe [AssetSourceEntry])+details_importAssetsFromS3JobErrorDetails = Lens.lens (\Details' {importAssetsFromS3JobErrorDetails} -> importAssetsFromS3JobErrorDetails) (\s@Details' {} a -> s {importAssetsFromS3JobErrorDetails = a} :: Details) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON Details where+ parseJSON =+ Data.withObject+ "Details"+ ( \x ->+ Details'+ Prelude.<$> ( x+ Data..:? "ImportAssetFromSignedUrlJobErrorDetails"+ )+ Prelude.<*> ( x+ Data..:? "ImportAssetsFromS3JobErrorDetails"+ Data..!= Prelude.mempty+ )+ )++instance Prelude.Hashable Details where+ hashWithSalt _salt Details' {..} =+ _salt+ `Prelude.hashWithSalt` importAssetFromSignedUrlJobErrorDetails+ `Prelude.hashWithSalt` importAssetsFromS3JobErrorDetails++instance Prelude.NFData Details where+ rnf Details' {..} =+ Prelude.rnf importAssetFromSignedUrlJobErrorDetails+ `Prelude.seq` Prelude.rnf importAssetsFromS3JobErrorDetails
+ gen/Amazonka/DataExchange/Types/Event.hs view
@@ -0,0 +1,77 @@+{-# 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.DataExchange.Types.Event+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DataExchange.Types.Event where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.RevisionPublished+import qualified Amazonka.Prelude as Prelude++-- | What occurs to start an action.+--+-- /See:/ 'newEvent' smart constructor.+data Event = Event'+ { -- | What occurs to start the revision publish action.+ revisionPublished :: Prelude.Maybe RevisionPublished+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Event' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'revisionPublished', 'event_revisionPublished' - What occurs to start the revision publish action.+newEvent ::+ Event+newEvent =+ Event' {revisionPublished = Prelude.Nothing}++-- | What occurs to start the revision publish action.+event_revisionPublished :: Lens.Lens' Event (Prelude.Maybe RevisionPublished)+event_revisionPublished = Lens.lens (\Event' {revisionPublished} -> revisionPublished) (\s@Event' {} a -> s {revisionPublished = a} :: Event)++instance Data.FromJSON Event where+ parseJSON =+ Data.withObject+ "Event"+ ( \x ->+ Event' Prelude.<$> (x Data..:? "RevisionPublished")+ )++instance Prelude.Hashable Event where+ hashWithSalt _salt Event' {..} =+ _salt `Prelude.hashWithSalt` revisionPublished++instance Prelude.NFData Event where+ rnf Event' {..} = Prelude.rnf revisionPublished++instance Data.ToJSON Event where+ toJSON Event' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("RevisionPublished" Data..=)+ Prelude.<$> revisionPublished+ ]+ )
+ gen/Amazonka/DataExchange/Types/EventActionEntry.hs view
@@ -0,0 +1,157 @@+{-# 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.DataExchange.Types.EventActionEntry+-- 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.DataExchange.Types.EventActionEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.Action+import Amazonka.DataExchange.Types.Event+import qualified Amazonka.Prelude as Prelude++-- | An event action is an object that defines the relationship between a+-- specific event and an automated action that will be taken on behalf of+-- the customer.+--+-- /See:/ 'newEventActionEntry' smart constructor.+data EventActionEntry = EventActionEntry'+ { -- | What occurs after a certain event.+ action :: Action,+ -- | The Amazon Resource Name (ARN) for the event action.+ arn :: Prelude.Text,+ -- | The date and time that the event action was created, in ISO 8601 format.+ createdAt :: Data.ISO8601,+ -- | What occurs to start an action.+ event :: Event,+ -- | The unique identifier for the event action.+ id :: Prelude.Text,+ -- | The date and time that the event action was last updated, in ISO 8601+ -- format.+ updatedAt :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EventActionEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'action', 'eventActionEntry_action' - What occurs after a certain event.+--+-- 'arn', 'eventActionEntry_arn' - The Amazon Resource Name (ARN) for the event action.+--+-- 'createdAt', 'eventActionEntry_createdAt' - The date and time that the event action was created, in ISO 8601 format.+--+-- 'event', 'eventActionEntry_event' - What occurs to start an action.+--+-- 'id', 'eventActionEntry_id' - The unique identifier for the event action.+--+-- 'updatedAt', 'eventActionEntry_updatedAt' - The date and time that the event action was last updated, in ISO 8601+-- format.+newEventActionEntry ::+ -- | 'action'+ Action ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'createdAt'+ Prelude.UTCTime ->+ -- | 'event'+ Event ->+ -- | 'id'+ Prelude.Text ->+ -- | 'updatedAt'+ Prelude.UTCTime ->+ EventActionEntry+newEventActionEntry+ pAction_+ pArn_+ pCreatedAt_+ pEvent_+ pId_+ pUpdatedAt_ =+ EventActionEntry'+ { action = pAction_,+ arn = pArn_,+ createdAt = Data._Time Lens.# pCreatedAt_,+ event = pEvent_,+ id = pId_,+ updatedAt = Data._Time Lens.# pUpdatedAt_+ }++-- | What occurs after a certain event.+eventActionEntry_action :: Lens.Lens' EventActionEntry Action+eventActionEntry_action = Lens.lens (\EventActionEntry' {action} -> action) (\s@EventActionEntry' {} a -> s {action = a} :: EventActionEntry)++-- | The Amazon Resource Name (ARN) for the event action.+eventActionEntry_arn :: Lens.Lens' EventActionEntry Prelude.Text+eventActionEntry_arn = Lens.lens (\EventActionEntry' {arn} -> arn) (\s@EventActionEntry' {} a -> s {arn = a} :: EventActionEntry)++-- | The date and time that the event action was created, in ISO 8601 format.+eventActionEntry_createdAt :: Lens.Lens' EventActionEntry Prelude.UTCTime+eventActionEntry_createdAt = Lens.lens (\EventActionEntry' {createdAt} -> createdAt) (\s@EventActionEntry' {} a -> s {createdAt = a} :: EventActionEntry) Prelude.. Data._Time++-- | What occurs to start an action.+eventActionEntry_event :: Lens.Lens' EventActionEntry Event+eventActionEntry_event = Lens.lens (\EventActionEntry' {event} -> event) (\s@EventActionEntry' {} a -> s {event = a} :: EventActionEntry)++-- | The unique identifier for the event action.+eventActionEntry_id :: Lens.Lens' EventActionEntry Prelude.Text+eventActionEntry_id = Lens.lens (\EventActionEntry' {id} -> id) (\s@EventActionEntry' {} a -> s {id = a} :: EventActionEntry)++-- | The date and time that the event action was last updated, in ISO 8601+-- format.+eventActionEntry_updatedAt :: Lens.Lens' EventActionEntry Prelude.UTCTime+eventActionEntry_updatedAt = Lens.lens (\EventActionEntry' {updatedAt} -> updatedAt) (\s@EventActionEntry' {} a -> s {updatedAt = a} :: EventActionEntry) Prelude.. Data._Time++instance Data.FromJSON EventActionEntry where+ parseJSON =+ Data.withObject+ "EventActionEntry"+ ( \x ->+ EventActionEntry'+ Prelude.<$> (x Data..: "Action")+ Prelude.<*> (x Data..: "Arn")+ Prelude.<*> (x Data..: "CreatedAt")+ Prelude.<*> (x Data..: "Event")+ Prelude.<*> (x Data..: "Id")+ Prelude.<*> (x Data..: "UpdatedAt")+ )++instance Prelude.Hashable EventActionEntry where+ hashWithSalt _salt EventActionEntry' {..} =+ _salt+ `Prelude.hashWithSalt` action+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` event+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData EventActionEntry where+ rnf EventActionEntry' {..} =+ Prelude.rnf action+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf event+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/DataExchange/Types/ExportAssetToSignedUrlRequestDetails.hs view
@@ -0,0 +1,119 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.ExportAssetToSignedUrlRequestDetails+-- 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.DataExchange.Types.ExportAssetToSignedUrlRequestDetails 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 operation to be performed by the job.+--+-- /See:/ 'newExportAssetToSignedUrlRequestDetails' smart constructor.+data ExportAssetToSignedUrlRequestDetails = ExportAssetToSignedUrlRequestDetails'+ { -- | The unique identifier for the asset that is exported to a signed URL.+ assetId :: Prelude.Text,+ -- | The unique identifier for the data set associated with this export job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this export+ -- request.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportAssetToSignedUrlRequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetId', 'exportAssetToSignedUrlRequestDetails_assetId' - The unique identifier for the asset that is exported to a signed URL.+--+-- 'dataSetId', 'exportAssetToSignedUrlRequestDetails_dataSetId' - The unique identifier for the data set associated with this export job.+--+-- 'revisionId', 'exportAssetToSignedUrlRequestDetails_revisionId' - The unique identifier for the revision associated with this export+-- request.+newExportAssetToSignedUrlRequestDetails ::+ -- | 'assetId'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ExportAssetToSignedUrlRequestDetails+newExportAssetToSignedUrlRequestDetails+ pAssetId_+ pDataSetId_+ pRevisionId_ =+ ExportAssetToSignedUrlRequestDetails'+ { assetId =+ pAssetId_,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | The unique identifier for the asset that is exported to a signed URL.+exportAssetToSignedUrlRequestDetails_assetId :: Lens.Lens' ExportAssetToSignedUrlRequestDetails Prelude.Text+exportAssetToSignedUrlRequestDetails_assetId = Lens.lens (\ExportAssetToSignedUrlRequestDetails' {assetId} -> assetId) (\s@ExportAssetToSignedUrlRequestDetails' {} a -> s {assetId = a} :: ExportAssetToSignedUrlRequestDetails)++-- | The unique identifier for the data set associated with this export job.+exportAssetToSignedUrlRequestDetails_dataSetId :: Lens.Lens' ExportAssetToSignedUrlRequestDetails Prelude.Text+exportAssetToSignedUrlRequestDetails_dataSetId = Lens.lens (\ExportAssetToSignedUrlRequestDetails' {dataSetId} -> dataSetId) (\s@ExportAssetToSignedUrlRequestDetails' {} a -> s {dataSetId = a} :: ExportAssetToSignedUrlRequestDetails)++-- | The unique identifier for the revision associated with this export+-- request.+exportAssetToSignedUrlRequestDetails_revisionId :: Lens.Lens' ExportAssetToSignedUrlRequestDetails Prelude.Text+exportAssetToSignedUrlRequestDetails_revisionId = Lens.lens (\ExportAssetToSignedUrlRequestDetails' {revisionId} -> revisionId) (\s@ExportAssetToSignedUrlRequestDetails' {} a -> s {revisionId = a} :: ExportAssetToSignedUrlRequestDetails)++instance+ Prelude.Hashable+ ExportAssetToSignedUrlRequestDetails+ where+ hashWithSalt+ _salt+ ExportAssetToSignedUrlRequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` assetId+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ExportAssetToSignedUrlRequestDetails+ where+ rnf ExportAssetToSignedUrlRequestDetails' {..} =+ Prelude.rnf assetId+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance+ Data.ToJSON+ ExportAssetToSignedUrlRequestDetails+ where+ toJSON ExportAssetToSignedUrlRequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("AssetId" Data..= assetId),+ Prelude.Just ("DataSetId" Data..= dataSetId),+ Prelude.Just ("RevisionId" Data..= revisionId)+ ]+ )
+ gen/Amazonka/DataExchange/Types/ExportAssetToSignedUrlResponseDetails.hs view
@@ -0,0 +1,144 @@+{-# 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.DataExchange.Types.ExportAssetToSignedUrlResponseDetails+-- 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.DataExchange.Types.ExportAssetToSignedUrlResponseDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The details of the export to signed URL response.+--+-- /See:/ 'newExportAssetToSignedUrlResponseDetails' smart constructor.+data ExportAssetToSignedUrlResponseDetails = ExportAssetToSignedUrlResponseDetails'+ { -- | The signed URL for the export request.+ signedUrl :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the signed URL expires, in ISO 8601 format.+ signedUrlExpiresAt :: Prelude.Maybe Data.ISO8601,+ -- | The unique identifier for the asset associated with this export job.+ assetId :: Prelude.Text,+ -- | The unique identifier for the data set associated with this export job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this export+ -- response.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportAssetToSignedUrlResponseDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'signedUrl', 'exportAssetToSignedUrlResponseDetails_signedUrl' - The signed URL for the export request.+--+-- 'signedUrlExpiresAt', 'exportAssetToSignedUrlResponseDetails_signedUrlExpiresAt' - The date and time that the signed URL expires, in ISO 8601 format.+--+-- 'assetId', 'exportAssetToSignedUrlResponseDetails_assetId' - The unique identifier for the asset associated with this export job.+--+-- 'dataSetId', 'exportAssetToSignedUrlResponseDetails_dataSetId' - The unique identifier for the data set associated with this export job.+--+-- 'revisionId', 'exportAssetToSignedUrlResponseDetails_revisionId' - The unique identifier for the revision associated with this export+-- response.+newExportAssetToSignedUrlResponseDetails ::+ -- | 'assetId'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ExportAssetToSignedUrlResponseDetails+newExportAssetToSignedUrlResponseDetails+ pAssetId_+ pDataSetId_+ pRevisionId_ =+ ExportAssetToSignedUrlResponseDetails'+ { signedUrl =+ Prelude.Nothing,+ signedUrlExpiresAt = Prelude.Nothing,+ assetId = pAssetId_,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | The signed URL for the export request.+exportAssetToSignedUrlResponseDetails_signedUrl :: Lens.Lens' ExportAssetToSignedUrlResponseDetails (Prelude.Maybe Prelude.Text)+exportAssetToSignedUrlResponseDetails_signedUrl = Lens.lens (\ExportAssetToSignedUrlResponseDetails' {signedUrl} -> signedUrl) (\s@ExportAssetToSignedUrlResponseDetails' {} a -> s {signedUrl = a} :: ExportAssetToSignedUrlResponseDetails)++-- | The date and time that the signed URL expires, in ISO 8601 format.+exportAssetToSignedUrlResponseDetails_signedUrlExpiresAt :: Lens.Lens' ExportAssetToSignedUrlResponseDetails (Prelude.Maybe Prelude.UTCTime)+exportAssetToSignedUrlResponseDetails_signedUrlExpiresAt = Lens.lens (\ExportAssetToSignedUrlResponseDetails' {signedUrlExpiresAt} -> signedUrlExpiresAt) (\s@ExportAssetToSignedUrlResponseDetails' {} a -> s {signedUrlExpiresAt = a} :: ExportAssetToSignedUrlResponseDetails) Prelude.. Lens.mapping Data._Time++-- | The unique identifier for the asset associated with this export job.+exportAssetToSignedUrlResponseDetails_assetId :: Lens.Lens' ExportAssetToSignedUrlResponseDetails Prelude.Text+exportAssetToSignedUrlResponseDetails_assetId = Lens.lens (\ExportAssetToSignedUrlResponseDetails' {assetId} -> assetId) (\s@ExportAssetToSignedUrlResponseDetails' {} a -> s {assetId = a} :: ExportAssetToSignedUrlResponseDetails)++-- | The unique identifier for the data set associated with this export job.+exportAssetToSignedUrlResponseDetails_dataSetId :: Lens.Lens' ExportAssetToSignedUrlResponseDetails Prelude.Text+exportAssetToSignedUrlResponseDetails_dataSetId = Lens.lens (\ExportAssetToSignedUrlResponseDetails' {dataSetId} -> dataSetId) (\s@ExportAssetToSignedUrlResponseDetails' {} a -> s {dataSetId = a} :: ExportAssetToSignedUrlResponseDetails)++-- | The unique identifier for the revision associated with this export+-- response.+exportAssetToSignedUrlResponseDetails_revisionId :: Lens.Lens' ExportAssetToSignedUrlResponseDetails Prelude.Text+exportAssetToSignedUrlResponseDetails_revisionId = Lens.lens (\ExportAssetToSignedUrlResponseDetails' {revisionId} -> revisionId) (\s@ExportAssetToSignedUrlResponseDetails' {} a -> s {revisionId = a} :: ExportAssetToSignedUrlResponseDetails)++instance+ Data.FromJSON+ ExportAssetToSignedUrlResponseDetails+ where+ parseJSON =+ Data.withObject+ "ExportAssetToSignedUrlResponseDetails"+ ( \x ->+ ExportAssetToSignedUrlResponseDetails'+ Prelude.<$> (x Data..:? "SignedUrl")+ Prelude.<*> (x Data..:? "SignedUrlExpiresAt")+ Prelude.<*> (x Data..: "AssetId")+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> (x Data..: "RevisionId")+ )++instance+ Prelude.Hashable+ ExportAssetToSignedUrlResponseDetails+ where+ hashWithSalt+ _salt+ ExportAssetToSignedUrlResponseDetails' {..} =+ _salt+ `Prelude.hashWithSalt` signedUrl+ `Prelude.hashWithSalt` signedUrlExpiresAt+ `Prelude.hashWithSalt` assetId+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ExportAssetToSignedUrlResponseDetails+ where+ rnf ExportAssetToSignedUrlResponseDetails' {..} =+ Prelude.rnf signedUrl+ `Prelude.seq` Prelude.rnf signedUrlExpiresAt+ `Prelude.seq` Prelude.rnf assetId+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId
+ gen/Amazonka/DataExchange/Types/ExportAssetsToS3RequestDetails.hs view
@@ -0,0 +1,128 @@+{-# 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.DataExchange.Types.ExportAssetsToS3RequestDetails+-- 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.DataExchange.Types.ExportAssetsToS3RequestDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.AssetDestinationEntry+import Amazonka.DataExchange.Types.ExportServerSideEncryption+import qualified Amazonka.Prelude as Prelude++-- | Details of the operation to be performed by the job.+--+-- /See:/ 'newExportAssetsToS3RequestDetails' smart constructor.+data ExportAssetsToS3RequestDetails = ExportAssetsToS3RequestDetails'+ { -- | Encryption configuration for the export job.+ encryption :: Prelude.Maybe ExportServerSideEncryption,+ -- | The destination for the asset.+ assetDestinations :: [AssetDestinationEntry],+ -- | The unique identifier for the data set associated with this export job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this export+ -- request.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportAssetsToS3RequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'encryption', 'exportAssetsToS3RequestDetails_encryption' - Encryption configuration for the export job.+--+-- 'assetDestinations', 'exportAssetsToS3RequestDetails_assetDestinations' - The destination for the asset.+--+-- 'dataSetId', 'exportAssetsToS3RequestDetails_dataSetId' - The unique identifier for the data set associated with this export job.+--+-- 'revisionId', 'exportAssetsToS3RequestDetails_revisionId' - The unique identifier for the revision associated with this export+-- request.+newExportAssetsToS3RequestDetails ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ExportAssetsToS3RequestDetails+newExportAssetsToS3RequestDetails+ pDataSetId_+ pRevisionId_ =+ ExportAssetsToS3RequestDetails'+ { encryption =+ Prelude.Nothing,+ assetDestinations = Prelude.mempty,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | Encryption configuration for the export job.+exportAssetsToS3RequestDetails_encryption :: Lens.Lens' ExportAssetsToS3RequestDetails (Prelude.Maybe ExportServerSideEncryption)+exportAssetsToS3RequestDetails_encryption = Lens.lens (\ExportAssetsToS3RequestDetails' {encryption} -> encryption) (\s@ExportAssetsToS3RequestDetails' {} a -> s {encryption = a} :: ExportAssetsToS3RequestDetails)++-- | The destination for the asset.+exportAssetsToS3RequestDetails_assetDestinations :: Lens.Lens' ExportAssetsToS3RequestDetails [AssetDestinationEntry]+exportAssetsToS3RequestDetails_assetDestinations = Lens.lens (\ExportAssetsToS3RequestDetails' {assetDestinations} -> assetDestinations) (\s@ExportAssetsToS3RequestDetails' {} a -> s {assetDestinations = a} :: ExportAssetsToS3RequestDetails) Prelude.. Lens.coerced++-- | The unique identifier for the data set associated with this export job.+exportAssetsToS3RequestDetails_dataSetId :: Lens.Lens' ExportAssetsToS3RequestDetails Prelude.Text+exportAssetsToS3RequestDetails_dataSetId = Lens.lens (\ExportAssetsToS3RequestDetails' {dataSetId} -> dataSetId) (\s@ExportAssetsToS3RequestDetails' {} a -> s {dataSetId = a} :: ExportAssetsToS3RequestDetails)++-- | The unique identifier for the revision associated with this export+-- request.+exportAssetsToS3RequestDetails_revisionId :: Lens.Lens' ExportAssetsToS3RequestDetails Prelude.Text+exportAssetsToS3RequestDetails_revisionId = Lens.lens (\ExportAssetsToS3RequestDetails' {revisionId} -> revisionId) (\s@ExportAssetsToS3RequestDetails' {} a -> s {revisionId = a} :: ExportAssetsToS3RequestDetails)++instance+ Prelude.Hashable+ ExportAssetsToS3RequestDetails+ where+ hashWithSalt+ _salt+ ExportAssetsToS3RequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` encryption+ `Prelude.hashWithSalt` assetDestinations+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ExportAssetsToS3RequestDetails+ where+ rnf ExportAssetsToS3RequestDetails' {..} =+ Prelude.rnf encryption+ `Prelude.seq` Prelude.rnf assetDestinations+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToJSON ExportAssetsToS3RequestDetails where+ toJSON ExportAssetsToS3RequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Encryption" Data..=) Prelude.<$> encryption,+ Prelude.Just+ ("AssetDestinations" Data..= assetDestinations),+ Prelude.Just ("DataSetId" Data..= dataSetId),+ Prelude.Just ("RevisionId" Data..= revisionId)+ ]+ )
+ gen/Amazonka/DataExchange/Types/ExportAssetsToS3ResponseDetails.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.DataExchange.Types.ExportAssetsToS3ResponseDetails+-- 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.DataExchange.Types.ExportAssetsToS3ResponseDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.AssetDestinationEntry+import Amazonka.DataExchange.Types.ExportServerSideEncryption+import qualified Amazonka.Prelude as Prelude++-- | Details about the export to Amazon S3 response.+--+-- /See:/ 'newExportAssetsToS3ResponseDetails' smart constructor.+data ExportAssetsToS3ResponseDetails = ExportAssetsToS3ResponseDetails'+ { -- | Encryption configuration of the export job.+ encryption :: Prelude.Maybe ExportServerSideEncryption,+ -- | The destination in Amazon S3 where the asset is exported.+ assetDestinations :: [AssetDestinationEntry],+ -- | The unique identifier for the data set associated with this export job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this export+ -- response.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportAssetsToS3ResponseDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'encryption', 'exportAssetsToS3ResponseDetails_encryption' - Encryption configuration of the export job.+--+-- 'assetDestinations', 'exportAssetsToS3ResponseDetails_assetDestinations' - The destination in Amazon S3 where the asset is exported.+--+-- 'dataSetId', 'exportAssetsToS3ResponseDetails_dataSetId' - The unique identifier for the data set associated with this export job.+--+-- 'revisionId', 'exportAssetsToS3ResponseDetails_revisionId' - The unique identifier for the revision associated with this export+-- response.+newExportAssetsToS3ResponseDetails ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ExportAssetsToS3ResponseDetails+newExportAssetsToS3ResponseDetails+ pDataSetId_+ pRevisionId_ =+ ExportAssetsToS3ResponseDetails'+ { encryption =+ Prelude.Nothing,+ assetDestinations = Prelude.mempty,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | Encryption configuration of the export job.+exportAssetsToS3ResponseDetails_encryption :: Lens.Lens' ExportAssetsToS3ResponseDetails (Prelude.Maybe ExportServerSideEncryption)+exportAssetsToS3ResponseDetails_encryption = Lens.lens (\ExportAssetsToS3ResponseDetails' {encryption} -> encryption) (\s@ExportAssetsToS3ResponseDetails' {} a -> s {encryption = a} :: ExportAssetsToS3ResponseDetails)++-- | The destination in Amazon S3 where the asset is exported.+exportAssetsToS3ResponseDetails_assetDestinations :: Lens.Lens' ExportAssetsToS3ResponseDetails [AssetDestinationEntry]+exportAssetsToS3ResponseDetails_assetDestinations = Lens.lens (\ExportAssetsToS3ResponseDetails' {assetDestinations} -> assetDestinations) (\s@ExportAssetsToS3ResponseDetails' {} a -> s {assetDestinations = a} :: ExportAssetsToS3ResponseDetails) Prelude.. Lens.coerced++-- | The unique identifier for the data set associated with this export job.+exportAssetsToS3ResponseDetails_dataSetId :: Lens.Lens' ExportAssetsToS3ResponseDetails Prelude.Text+exportAssetsToS3ResponseDetails_dataSetId = Lens.lens (\ExportAssetsToS3ResponseDetails' {dataSetId} -> dataSetId) (\s@ExportAssetsToS3ResponseDetails' {} a -> s {dataSetId = a} :: ExportAssetsToS3ResponseDetails)++-- | The unique identifier for the revision associated with this export+-- response.+exportAssetsToS3ResponseDetails_revisionId :: Lens.Lens' ExportAssetsToS3ResponseDetails Prelude.Text+exportAssetsToS3ResponseDetails_revisionId = Lens.lens (\ExportAssetsToS3ResponseDetails' {revisionId} -> revisionId) (\s@ExportAssetsToS3ResponseDetails' {} a -> s {revisionId = a} :: ExportAssetsToS3ResponseDetails)++instance+ Data.FromJSON+ ExportAssetsToS3ResponseDetails+ where+ parseJSON =+ Data.withObject+ "ExportAssetsToS3ResponseDetails"+ ( \x ->+ ExportAssetsToS3ResponseDetails'+ Prelude.<$> (x Data..:? "Encryption")+ Prelude.<*> ( x+ Data..:? "AssetDestinations"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> (x Data..: "RevisionId")+ )++instance+ Prelude.Hashable+ ExportAssetsToS3ResponseDetails+ where+ hashWithSalt+ _salt+ ExportAssetsToS3ResponseDetails' {..} =+ _salt+ `Prelude.hashWithSalt` encryption+ `Prelude.hashWithSalt` assetDestinations+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ExportAssetsToS3ResponseDetails+ where+ rnf ExportAssetsToS3ResponseDetails' {..} =+ Prelude.rnf encryption+ `Prelude.seq` Prelude.rnf assetDestinations+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId
+ gen/Amazonka/DataExchange/Types/ExportRevisionsToS3RequestDetails.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.ExportRevisionsToS3RequestDetails+-- 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.DataExchange.Types.ExportRevisionsToS3RequestDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.ExportServerSideEncryption+import Amazonka.DataExchange.Types.RevisionDestinationEntry+import qualified Amazonka.Prelude as Prelude++-- | Details of the operation to be performed by the job.+--+-- /See:/ 'newExportRevisionsToS3RequestDetails' smart constructor.+data ExportRevisionsToS3RequestDetails = ExportRevisionsToS3RequestDetails'+ { -- | Encryption configuration for the export job.+ encryption :: Prelude.Maybe ExportServerSideEncryption,+ -- | The unique identifier for the data set associated with this export job.+ dataSetId :: Prelude.Text,+ -- | The destination for the revision.+ revisionDestinations :: [RevisionDestinationEntry]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportRevisionsToS3RequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'encryption', 'exportRevisionsToS3RequestDetails_encryption' - Encryption configuration for the export job.+--+-- 'dataSetId', 'exportRevisionsToS3RequestDetails_dataSetId' - The unique identifier for the data set associated with this export job.+--+-- 'revisionDestinations', 'exportRevisionsToS3RequestDetails_revisionDestinations' - The destination for the revision.+newExportRevisionsToS3RequestDetails ::+ -- | 'dataSetId'+ Prelude.Text ->+ ExportRevisionsToS3RequestDetails+newExportRevisionsToS3RequestDetails pDataSetId_ =+ ExportRevisionsToS3RequestDetails'+ { encryption =+ Prelude.Nothing,+ dataSetId = pDataSetId_,+ revisionDestinations = Prelude.mempty+ }++-- | Encryption configuration for the export job.+exportRevisionsToS3RequestDetails_encryption :: Lens.Lens' ExportRevisionsToS3RequestDetails (Prelude.Maybe ExportServerSideEncryption)+exportRevisionsToS3RequestDetails_encryption = Lens.lens (\ExportRevisionsToS3RequestDetails' {encryption} -> encryption) (\s@ExportRevisionsToS3RequestDetails' {} a -> s {encryption = a} :: ExportRevisionsToS3RequestDetails)++-- | The unique identifier for the data set associated with this export job.+exportRevisionsToS3RequestDetails_dataSetId :: Lens.Lens' ExportRevisionsToS3RequestDetails Prelude.Text+exportRevisionsToS3RequestDetails_dataSetId = Lens.lens (\ExportRevisionsToS3RequestDetails' {dataSetId} -> dataSetId) (\s@ExportRevisionsToS3RequestDetails' {} a -> s {dataSetId = a} :: ExportRevisionsToS3RequestDetails)++-- | The destination for the revision.+exportRevisionsToS3RequestDetails_revisionDestinations :: Lens.Lens' ExportRevisionsToS3RequestDetails [RevisionDestinationEntry]+exportRevisionsToS3RequestDetails_revisionDestinations = Lens.lens (\ExportRevisionsToS3RequestDetails' {revisionDestinations} -> revisionDestinations) (\s@ExportRevisionsToS3RequestDetails' {} a -> s {revisionDestinations = a} :: ExportRevisionsToS3RequestDetails) Prelude.. Lens.coerced++instance+ Prelude.Hashable+ ExportRevisionsToS3RequestDetails+ where+ hashWithSalt+ _salt+ ExportRevisionsToS3RequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` encryption+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionDestinations++instance+ Prelude.NFData+ ExportRevisionsToS3RequestDetails+ where+ rnf ExportRevisionsToS3RequestDetails' {..} =+ Prelude.rnf encryption+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionDestinations++instance+ Data.ToJSON+ ExportRevisionsToS3RequestDetails+ where+ toJSON ExportRevisionsToS3RequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Encryption" Data..=) Prelude.<$> encryption,+ Prelude.Just ("DataSetId" Data..= dataSetId),+ Prelude.Just+ ( "RevisionDestinations"+ Data..= revisionDestinations+ )+ ]+ )
+ gen/Amazonka/DataExchange/Types/ExportRevisionsToS3ResponseDetails.hs view
@@ -0,0 +1,127 @@+{-# 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.DataExchange.Types.ExportRevisionsToS3ResponseDetails+-- 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.DataExchange.Types.ExportRevisionsToS3ResponseDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.ExportServerSideEncryption+import Amazonka.DataExchange.Types.RevisionDestinationEntry+import qualified Amazonka.Prelude as Prelude++-- | Details about the export revisions to Amazon S3 response.+--+-- /See:/ 'newExportRevisionsToS3ResponseDetails' smart constructor.+data ExportRevisionsToS3ResponseDetails = ExportRevisionsToS3ResponseDetails'+ { -- | Encryption configuration of the export job.+ encryption :: Prelude.Maybe ExportServerSideEncryption,+ -- | The Amazon Resource Name (ARN) of the event action.+ eventActionArn :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the data set associated with this export job.+ dataSetId :: Prelude.Text,+ -- | The destination in Amazon S3 where the revision is exported.+ revisionDestinations :: [RevisionDestinationEntry]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportRevisionsToS3ResponseDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'encryption', 'exportRevisionsToS3ResponseDetails_encryption' - Encryption configuration of the export job.+--+-- 'eventActionArn', 'exportRevisionsToS3ResponseDetails_eventActionArn' - The Amazon Resource Name (ARN) of the event action.+--+-- 'dataSetId', 'exportRevisionsToS3ResponseDetails_dataSetId' - The unique identifier for the data set associated with this export job.+--+-- 'revisionDestinations', 'exportRevisionsToS3ResponseDetails_revisionDestinations' - The destination in Amazon S3 where the revision is exported.+newExportRevisionsToS3ResponseDetails ::+ -- | 'dataSetId'+ Prelude.Text ->+ ExportRevisionsToS3ResponseDetails+newExportRevisionsToS3ResponseDetails pDataSetId_ =+ ExportRevisionsToS3ResponseDetails'+ { encryption =+ Prelude.Nothing,+ eventActionArn = Prelude.Nothing,+ dataSetId = pDataSetId_,+ revisionDestinations = Prelude.mempty+ }++-- | Encryption configuration of the export job.+exportRevisionsToS3ResponseDetails_encryption :: Lens.Lens' ExportRevisionsToS3ResponseDetails (Prelude.Maybe ExportServerSideEncryption)+exportRevisionsToS3ResponseDetails_encryption = Lens.lens (\ExportRevisionsToS3ResponseDetails' {encryption} -> encryption) (\s@ExportRevisionsToS3ResponseDetails' {} a -> s {encryption = a} :: ExportRevisionsToS3ResponseDetails)++-- | The Amazon Resource Name (ARN) of the event action.+exportRevisionsToS3ResponseDetails_eventActionArn :: Lens.Lens' ExportRevisionsToS3ResponseDetails (Prelude.Maybe Prelude.Text)+exportRevisionsToS3ResponseDetails_eventActionArn = Lens.lens (\ExportRevisionsToS3ResponseDetails' {eventActionArn} -> eventActionArn) (\s@ExportRevisionsToS3ResponseDetails' {} a -> s {eventActionArn = a} :: ExportRevisionsToS3ResponseDetails)++-- | The unique identifier for the data set associated with this export job.+exportRevisionsToS3ResponseDetails_dataSetId :: Lens.Lens' ExportRevisionsToS3ResponseDetails Prelude.Text+exportRevisionsToS3ResponseDetails_dataSetId = Lens.lens (\ExportRevisionsToS3ResponseDetails' {dataSetId} -> dataSetId) (\s@ExportRevisionsToS3ResponseDetails' {} a -> s {dataSetId = a} :: ExportRevisionsToS3ResponseDetails)++-- | The destination in Amazon S3 where the revision is exported.+exportRevisionsToS3ResponseDetails_revisionDestinations :: Lens.Lens' ExportRevisionsToS3ResponseDetails [RevisionDestinationEntry]+exportRevisionsToS3ResponseDetails_revisionDestinations = Lens.lens (\ExportRevisionsToS3ResponseDetails' {revisionDestinations} -> revisionDestinations) (\s@ExportRevisionsToS3ResponseDetails' {} a -> s {revisionDestinations = a} :: ExportRevisionsToS3ResponseDetails) Prelude.. Lens.coerced++instance+ Data.FromJSON+ ExportRevisionsToS3ResponseDetails+ where+ parseJSON =+ Data.withObject+ "ExportRevisionsToS3ResponseDetails"+ ( \x ->+ ExportRevisionsToS3ResponseDetails'+ Prelude.<$> (x Data..:? "Encryption")+ Prelude.<*> (x Data..:? "EventActionArn")+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> ( x+ Data..:? "RevisionDestinations"+ Data..!= Prelude.mempty+ )+ )++instance+ Prelude.Hashable+ ExportRevisionsToS3ResponseDetails+ where+ hashWithSalt+ _salt+ ExportRevisionsToS3ResponseDetails' {..} =+ _salt+ `Prelude.hashWithSalt` encryption+ `Prelude.hashWithSalt` eventActionArn+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionDestinations++instance+ Prelude.NFData+ ExportRevisionsToS3ResponseDetails+ where+ rnf ExportRevisionsToS3ResponseDetails' {..} =+ Prelude.rnf encryption+ `Prelude.seq` Prelude.rnf eventActionArn+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionDestinations
+ gen/Amazonka/DataExchange/Types/ExportServerSideEncryption.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.ExportServerSideEncryption+-- 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.DataExchange.Types.ExportServerSideEncryption where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.ServerSideEncryptionTypes+import qualified Amazonka.Prelude as Prelude++-- | Encryption configuration of the export job. Includes the encryption type+-- in addition to the AWS KMS key. The KMS key is only necessary if you+-- chose the KMS encryption type.+--+-- /See:/ 'newExportServerSideEncryption' smart constructor.+data ExportServerSideEncryption = ExportServerSideEncryption'+ { -- | The Amazon Resource Name (ARN) of the AWS KMS key you want to use to+ -- encrypt the Amazon S3 objects. This parameter is required if you choose+ -- aws:kms as an encryption type.+ kmsKeyArn :: Prelude.Maybe Prelude.Text,+ -- | The type of server side encryption used for encrypting the objects in+ -- Amazon S3.+ type' :: ServerSideEncryptionTypes+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportServerSideEncryption' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'kmsKeyArn', 'exportServerSideEncryption_kmsKeyArn' - The Amazon Resource Name (ARN) of the AWS KMS key you want to use to+-- encrypt the Amazon S3 objects. This parameter is required if you choose+-- aws:kms as an encryption type.+--+-- 'type'', 'exportServerSideEncryption_type' - The type of server side encryption used for encrypting the objects in+-- Amazon S3.+newExportServerSideEncryption ::+ -- | 'type''+ ServerSideEncryptionTypes ->+ ExportServerSideEncryption+newExportServerSideEncryption pType_ =+ ExportServerSideEncryption'+ { kmsKeyArn =+ Prelude.Nothing,+ type' = pType_+ }++-- | The Amazon Resource Name (ARN) of the AWS KMS key you want to use to+-- encrypt the Amazon S3 objects. This parameter is required if you choose+-- aws:kms as an encryption type.+exportServerSideEncryption_kmsKeyArn :: Lens.Lens' ExportServerSideEncryption (Prelude.Maybe Prelude.Text)+exportServerSideEncryption_kmsKeyArn = Lens.lens (\ExportServerSideEncryption' {kmsKeyArn} -> kmsKeyArn) (\s@ExportServerSideEncryption' {} a -> s {kmsKeyArn = a} :: ExportServerSideEncryption)++-- | The type of server side encryption used for encrypting the objects in+-- Amazon S3.+exportServerSideEncryption_type :: Lens.Lens' ExportServerSideEncryption ServerSideEncryptionTypes+exportServerSideEncryption_type = Lens.lens (\ExportServerSideEncryption' {type'} -> type') (\s@ExportServerSideEncryption' {} a -> s {type' = a} :: ExportServerSideEncryption)++instance Data.FromJSON ExportServerSideEncryption where+ parseJSON =+ Data.withObject+ "ExportServerSideEncryption"+ ( \x ->+ ExportServerSideEncryption'+ Prelude.<$> (x Data..:? "KmsKeyArn")+ Prelude.<*> (x Data..: "Type")+ )++instance Prelude.Hashable ExportServerSideEncryption where+ hashWithSalt _salt ExportServerSideEncryption' {..} =+ _salt+ `Prelude.hashWithSalt` kmsKeyArn+ `Prelude.hashWithSalt` type'++instance Prelude.NFData ExportServerSideEncryption where+ rnf ExportServerSideEncryption' {..} =+ Prelude.rnf kmsKeyArn+ `Prelude.seq` Prelude.rnf type'++instance Data.ToJSON ExportServerSideEncryption where+ toJSON ExportServerSideEncryption' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("KmsKeyArn" Data..=) Prelude.<$> kmsKeyArn,+ Prelude.Just ("Type" Data..= type')+ ]+ )
+ gen/Amazonka/DataExchange/Types/ImportAssetFromApiGatewayApiRequestDetails.hs view
@@ -0,0 +1,210 @@+{-# 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.DataExchange.Types.ImportAssetFromApiGatewayApiRequestDetails+-- 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.DataExchange.Types.ImportAssetFromApiGatewayApiRequestDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.ProtocolType+import qualified Amazonka.Prelude as Prelude++-- | The request details.+--+-- /See:/ 'newImportAssetFromApiGatewayApiRequestDetails' smart constructor.+data ImportAssetFromApiGatewayApiRequestDetails = ImportAssetFromApiGatewayApiRequestDetails'+ { -- | The API description. Markdown supported.+ apiDescription :: Prelude.Maybe Prelude.Text,+ -- | The API Gateway API key.+ apiKey :: Prelude.Maybe Prelude.Text,+ -- | The API Gateway API ID.+ apiId :: Prelude.Text,+ -- | The API name.+ apiName :: Prelude.Text,+ -- | The Base64-encoded MD5 hash of the OpenAPI 3.0 JSON API specification+ -- file. It is used to ensure the integrity of the file.+ apiSpecificationMd5Hash :: Prelude.Text,+ -- | The data set ID.+ dataSetId :: Prelude.Text,+ -- | The protocol type.+ protocolType :: ProtocolType,+ -- | The revision ID.+ revisionId :: Prelude.Text,+ -- | The API stage.+ stage :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetFromApiGatewayApiRequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'apiDescription', 'importAssetFromApiGatewayApiRequestDetails_apiDescription' - The API description. Markdown supported.+--+-- 'apiKey', 'importAssetFromApiGatewayApiRequestDetails_apiKey' - The API Gateway API key.+--+-- 'apiId', 'importAssetFromApiGatewayApiRequestDetails_apiId' - The API Gateway API ID.+--+-- 'apiName', 'importAssetFromApiGatewayApiRequestDetails_apiName' - The API name.+--+-- 'apiSpecificationMd5Hash', 'importAssetFromApiGatewayApiRequestDetails_apiSpecificationMd5Hash' - The Base64-encoded MD5 hash of the OpenAPI 3.0 JSON API specification+-- file. It is used to ensure the integrity of the file.+--+-- 'dataSetId', 'importAssetFromApiGatewayApiRequestDetails_dataSetId' - The data set ID.+--+-- 'protocolType', 'importAssetFromApiGatewayApiRequestDetails_protocolType' - The protocol type.+--+-- 'revisionId', 'importAssetFromApiGatewayApiRequestDetails_revisionId' - The revision ID.+--+-- 'stage', 'importAssetFromApiGatewayApiRequestDetails_stage' - The API stage.+newImportAssetFromApiGatewayApiRequestDetails ::+ -- | 'apiId'+ Prelude.Text ->+ -- | 'apiName'+ Prelude.Text ->+ -- | 'apiSpecificationMd5Hash'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'protocolType'+ ProtocolType ->+ -- | 'revisionId'+ Prelude.Text ->+ -- | 'stage'+ Prelude.Text ->+ ImportAssetFromApiGatewayApiRequestDetails+newImportAssetFromApiGatewayApiRequestDetails+ pApiId_+ pApiName_+ pApiSpecificationMd5Hash_+ pDataSetId_+ pProtocolType_+ pRevisionId_+ pStage_ =+ ImportAssetFromApiGatewayApiRequestDetails'+ { apiDescription =+ Prelude.Nothing,+ apiKey = Prelude.Nothing,+ apiId = pApiId_,+ apiName = pApiName_,+ apiSpecificationMd5Hash =+ pApiSpecificationMd5Hash_,+ dataSetId = pDataSetId_,+ protocolType = pProtocolType_,+ revisionId = pRevisionId_,+ stage = pStage_+ }++-- | The API description. Markdown supported.+importAssetFromApiGatewayApiRequestDetails_apiDescription :: Lens.Lens' ImportAssetFromApiGatewayApiRequestDetails (Prelude.Maybe Prelude.Text)+importAssetFromApiGatewayApiRequestDetails_apiDescription = Lens.lens (\ImportAssetFromApiGatewayApiRequestDetails' {apiDescription} -> apiDescription) (\s@ImportAssetFromApiGatewayApiRequestDetails' {} a -> s {apiDescription = a} :: ImportAssetFromApiGatewayApiRequestDetails)++-- | The API Gateway API key.+importAssetFromApiGatewayApiRequestDetails_apiKey :: Lens.Lens' ImportAssetFromApiGatewayApiRequestDetails (Prelude.Maybe Prelude.Text)+importAssetFromApiGatewayApiRequestDetails_apiKey = Lens.lens (\ImportAssetFromApiGatewayApiRequestDetails' {apiKey} -> apiKey) (\s@ImportAssetFromApiGatewayApiRequestDetails' {} a -> s {apiKey = a} :: ImportAssetFromApiGatewayApiRequestDetails)++-- | The API Gateway API ID.+importAssetFromApiGatewayApiRequestDetails_apiId :: Lens.Lens' ImportAssetFromApiGatewayApiRequestDetails Prelude.Text+importAssetFromApiGatewayApiRequestDetails_apiId = Lens.lens (\ImportAssetFromApiGatewayApiRequestDetails' {apiId} -> apiId) (\s@ImportAssetFromApiGatewayApiRequestDetails' {} a -> s {apiId = a} :: ImportAssetFromApiGatewayApiRequestDetails)++-- | The API name.+importAssetFromApiGatewayApiRequestDetails_apiName :: Lens.Lens' ImportAssetFromApiGatewayApiRequestDetails Prelude.Text+importAssetFromApiGatewayApiRequestDetails_apiName = Lens.lens (\ImportAssetFromApiGatewayApiRequestDetails' {apiName} -> apiName) (\s@ImportAssetFromApiGatewayApiRequestDetails' {} a -> s {apiName = a} :: ImportAssetFromApiGatewayApiRequestDetails)++-- | The Base64-encoded MD5 hash of the OpenAPI 3.0 JSON API specification+-- file. It is used to ensure the integrity of the file.+importAssetFromApiGatewayApiRequestDetails_apiSpecificationMd5Hash :: Lens.Lens' ImportAssetFromApiGatewayApiRequestDetails Prelude.Text+importAssetFromApiGatewayApiRequestDetails_apiSpecificationMd5Hash = Lens.lens (\ImportAssetFromApiGatewayApiRequestDetails' {apiSpecificationMd5Hash} -> apiSpecificationMd5Hash) (\s@ImportAssetFromApiGatewayApiRequestDetails' {} a -> s {apiSpecificationMd5Hash = a} :: ImportAssetFromApiGatewayApiRequestDetails)++-- | The data set ID.+importAssetFromApiGatewayApiRequestDetails_dataSetId :: Lens.Lens' ImportAssetFromApiGatewayApiRequestDetails Prelude.Text+importAssetFromApiGatewayApiRequestDetails_dataSetId = Lens.lens (\ImportAssetFromApiGatewayApiRequestDetails' {dataSetId} -> dataSetId) (\s@ImportAssetFromApiGatewayApiRequestDetails' {} a -> s {dataSetId = a} :: ImportAssetFromApiGatewayApiRequestDetails)++-- | The protocol type.+importAssetFromApiGatewayApiRequestDetails_protocolType :: Lens.Lens' ImportAssetFromApiGatewayApiRequestDetails ProtocolType+importAssetFromApiGatewayApiRequestDetails_protocolType = Lens.lens (\ImportAssetFromApiGatewayApiRequestDetails' {protocolType} -> protocolType) (\s@ImportAssetFromApiGatewayApiRequestDetails' {} a -> s {protocolType = a} :: ImportAssetFromApiGatewayApiRequestDetails)++-- | The revision ID.+importAssetFromApiGatewayApiRequestDetails_revisionId :: Lens.Lens' ImportAssetFromApiGatewayApiRequestDetails Prelude.Text+importAssetFromApiGatewayApiRequestDetails_revisionId = Lens.lens (\ImportAssetFromApiGatewayApiRequestDetails' {revisionId} -> revisionId) (\s@ImportAssetFromApiGatewayApiRequestDetails' {} a -> s {revisionId = a} :: ImportAssetFromApiGatewayApiRequestDetails)++-- | The API stage.+importAssetFromApiGatewayApiRequestDetails_stage :: Lens.Lens' ImportAssetFromApiGatewayApiRequestDetails Prelude.Text+importAssetFromApiGatewayApiRequestDetails_stage = Lens.lens (\ImportAssetFromApiGatewayApiRequestDetails' {stage} -> stage) (\s@ImportAssetFromApiGatewayApiRequestDetails' {} a -> s {stage = a} :: ImportAssetFromApiGatewayApiRequestDetails)++instance+ Prelude.Hashable+ ImportAssetFromApiGatewayApiRequestDetails+ where+ hashWithSalt+ _salt+ ImportAssetFromApiGatewayApiRequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` apiDescription+ `Prelude.hashWithSalt` apiKey+ `Prelude.hashWithSalt` apiId+ `Prelude.hashWithSalt` apiName+ `Prelude.hashWithSalt` apiSpecificationMd5Hash+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` protocolType+ `Prelude.hashWithSalt` revisionId+ `Prelude.hashWithSalt` stage++instance+ Prelude.NFData+ ImportAssetFromApiGatewayApiRequestDetails+ where+ rnf ImportAssetFromApiGatewayApiRequestDetails' {..} =+ Prelude.rnf apiDescription+ `Prelude.seq` Prelude.rnf apiKey+ `Prelude.seq` Prelude.rnf apiId+ `Prelude.seq` Prelude.rnf apiName+ `Prelude.seq` Prelude.rnf apiSpecificationMd5Hash+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf protocolType+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf stage++instance+ Data.ToJSON+ ImportAssetFromApiGatewayApiRequestDetails+ where+ toJSON+ ImportAssetFromApiGatewayApiRequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ApiDescription" Data..=)+ Prelude.<$> apiDescription,+ ("ApiKey" Data..=) Prelude.<$> apiKey,+ Prelude.Just ("ApiId" Data..= apiId),+ Prelude.Just ("ApiName" Data..= apiName),+ Prelude.Just+ ( "ApiSpecificationMd5Hash"+ Data..= apiSpecificationMd5Hash+ ),+ Prelude.Just ("DataSetId" Data..= dataSetId),+ Prelude.Just ("ProtocolType" Data..= protocolType),+ Prelude.Just ("RevisionId" Data..= revisionId),+ Prelude.Just ("Stage" Data..= stage)+ ]+ )
+ gen/Amazonka/DataExchange/Types/ImportAssetFromApiGatewayApiResponseDetails.hs view
@@ -0,0 +1,239 @@+{-# 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.DataExchange.Types.ImportAssetFromApiGatewayApiResponseDetails+-- 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.DataExchange.Types.ImportAssetFromApiGatewayApiResponseDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.ProtocolType+import qualified Amazonka.Prelude as Prelude++-- | The response details.+--+-- /See:/ 'newImportAssetFromApiGatewayApiResponseDetails' smart constructor.+data ImportAssetFromApiGatewayApiResponseDetails = ImportAssetFromApiGatewayApiResponseDetails'+ { -- | The API description.+ apiDescription :: Prelude.Maybe Prelude.Text,+ -- | The API key.+ apiKey :: Prelude.Maybe Prelude.Text,+ -- | The API ID.+ apiId :: Prelude.Text,+ -- | The API name.+ apiName :: Prelude.Text,+ -- | The Base64-encoded Md5 hash for the API asset, used to ensure the+ -- integrity of the API at that location.+ apiSpecificationMd5Hash :: Prelude.Text,+ -- | The upload URL of the API specification.+ apiSpecificationUploadUrl :: Prelude.Text,+ -- | The date and time that the upload URL expires, in ISO 8601 format.+ apiSpecificationUploadUrlExpiresAt :: Data.ISO8601,+ -- | The data set ID.+ dataSetId :: Prelude.Text,+ -- | The protocol type.+ protocolType :: ProtocolType,+ -- | The revision ID.+ revisionId :: Prelude.Text,+ -- | The API stage.+ stage :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetFromApiGatewayApiResponseDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'apiDescription', 'importAssetFromApiGatewayApiResponseDetails_apiDescription' - The API description.+--+-- 'apiKey', 'importAssetFromApiGatewayApiResponseDetails_apiKey' - The API key.+--+-- 'apiId', 'importAssetFromApiGatewayApiResponseDetails_apiId' - The API ID.+--+-- 'apiName', 'importAssetFromApiGatewayApiResponseDetails_apiName' - The API name.+--+-- 'apiSpecificationMd5Hash', 'importAssetFromApiGatewayApiResponseDetails_apiSpecificationMd5Hash' - The Base64-encoded Md5 hash for the API asset, used to ensure the+-- integrity of the API at that location.+--+-- 'apiSpecificationUploadUrl', 'importAssetFromApiGatewayApiResponseDetails_apiSpecificationUploadUrl' - The upload URL of the API specification.+--+-- 'apiSpecificationUploadUrlExpiresAt', 'importAssetFromApiGatewayApiResponseDetails_apiSpecificationUploadUrlExpiresAt' - The date and time that the upload URL expires, in ISO 8601 format.+--+-- 'dataSetId', 'importAssetFromApiGatewayApiResponseDetails_dataSetId' - The data set ID.+--+-- 'protocolType', 'importAssetFromApiGatewayApiResponseDetails_protocolType' - The protocol type.+--+-- 'revisionId', 'importAssetFromApiGatewayApiResponseDetails_revisionId' - The revision ID.+--+-- 'stage', 'importAssetFromApiGatewayApiResponseDetails_stage' - The API stage.+newImportAssetFromApiGatewayApiResponseDetails ::+ -- | 'apiId'+ Prelude.Text ->+ -- | 'apiName'+ Prelude.Text ->+ -- | 'apiSpecificationMd5Hash'+ Prelude.Text ->+ -- | 'apiSpecificationUploadUrl'+ Prelude.Text ->+ -- | 'apiSpecificationUploadUrlExpiresAt'+ Prelude.UTCTime ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'protocolType'+ ProtocolType ->+ -- | 'revisionId'+ Prelude.Text ->+ -- | 'stage'+ Prelude.Text ->+ ImportAssetFromApiGatewayApiResponseDetails+newImportAssetFromApiGatewayApiResponseDetails+ pApiId_+ pApiName_+ pApiSpecificationMd5Hash_+ pApiSpecificationUploadUrl_+ pApiSpecificationUploadUrlExpiresAt_+ pDataSetId_+ pProtocolType_+ pRevisionId_+ pStage_ =+ ImportAssetFromApiGatewayApiResponseDetails'+ { apiDescription =+ Prelude.Nothing,+ apiKey = Prelude.Nothing,+ apiId = pApiId_,+ apiName = pApiName_,+ apiSpecificationMd5Hash =+ pApiSpecificationMd5Hash_,+ apiSpecificationUploadUrl =+ pApiSpecificationUploadUrl_,+ apiSpecificationUploadUrlExpiresAt =+ Data._Time+ Lens.# pApiSpecificationUploadUrlExpiresAt_,+ dataSetId = pDataSetId_,+ protocolType = pProtocolType_,+ revisionId = pRevisionId_,+ stage = pStage_+ }++-- | The API description.+importAssetFromApiGatewayApiResponseDetails_apiDescription :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails (Prelude.Maybe Prelude.Text)+importAssetFromApiGatewayApiResponseDetails_apiDescription = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {apiDescription} -> apiDescription) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {apiDescription = a} :: ImportAssetFromApiGatewayApiResponseDetails)++-- | The API key.+importAssetFromApiGatewayApiResponseDetails_apiKey :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails (Prelude.Maybe Prelude.Text)+importAssetFromApiGatewayApiResponseDetails_apiKey = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {apiKey} -> apiKey) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {apiKey = a} :: ImportAssetFromApiGatewayApiResponseDetails)++-- | The API ID.+importAssetFromApiGatewayApiResponseDetails_apiId :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails Prelude.Text+importAssetFromApiGatewayApiResponseDetails_apiId = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {apiId} -> apiId) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {apiId = a} :: ImportAssetFromApiGatewayApiResponseDetails)++-- | The API name.+importAssetFromApiGatewayApiResponseDetails_apiName :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails Prelude.Text+importAssetFromApiGatewayApiResponseDetails_apiName = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {apiName} -> apiName) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {apiName = a} :: ImportAssetFromApiGatewayApiResponseDetails)++-- | The Base64-encoded Md5 hash for the API asset, used to ensure the+-- integrity of the API at that location.+importAssetFromApiGatewayApiResponseDetails_apiSpecificationMd5Hash :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails Prelude.Text+importAssetFromApiGatewayApiResponseDetails_apiSpecificationMd5Hash = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {apiSpecificationMd5Hash} -> apiSpecificationMd5Hash) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {apiSpecificationMd5Hash = a} :: ImportAssetFromApiGatewayApiResponseDetails)++-- | The upload URL of the API specification.+importAssetFromApiGatewayApiResponseDetails_apiSpecificationUploadUrl :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails Prelude.Text+importAssetFromApiGatewayApiResponseDetails_apiSpecificationUploadUrl = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {apiSpecificationUploadUrl} -> apiSpecificationUploadUrl) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {apiSpecificationUploadUrl = a} :: ImportAssetFromApiGatewayApiResponseDetails)++-- | The date and time that the upload URL expires, in ISO 8601 format.+importAssetFromApiGatewayApiResponseDetails_apiSpecificationUploadUrlExpiresAt :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails Prelude.UTCTime+importAssetFromApiGatewayApiResponseDetails_apiSpecificationUploadUrlExpiresAt = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {apiSpecificationUploadUrlExpiresAt} -> apiSpecificationUploadUrlExpiresAt) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {apiSpecificationUploadUrlExpiresAt = a} :: ImportAssetFromApiGatewayApiResponseDetails) Prelude.. Data._Time++-- | The data set ID.+importAssetFromApiGatewayApiResponseDetails_dataSetId :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails Prelude.Text+importAssetFromApiGatewayApiResponseDetails_dataSetId = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {dataSetId} -> dataSetId) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {dataSetId = a} :: ImportAssetFromApiGatewayApiResponseDetails)++-- | The protocol type.+importAssetFromApiGatewayApiResponseDetails_protocolType :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails ProtocolType+importAssetFromApiGatewayApiResponseDetails_protocolType = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {protocolType} -> protocolType) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {protocolType = a} :: ImportAssetFromApiGatewayApiResponseDetails)++-- | The revision ID.+importAssetFromApiGatewayApiResponseDetails_revisionId :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails Prelude.Text+importAssetFromApiGatewayApiResponseDetails_revisionId = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {revisionId} -> revisionId) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {revisionId = a} :: ImportAssetFromApiGatewayApiResponseDetails)++-- | The API stage.+importAssetFromApiGatewayApiResponseDetails_stage :: Lens.Lens' ImportAssetFromApiGatewayApiResponseDetails Prelude.Text+importAssetFromApiGatewayApiResponseDetails_stage = Lens.lens (\ImportAssetFromApiGatewayApiResponseDetails' {stage} -> stage) (\s@ImportAssetFromApiGatewayApiResponseDetails' {} a -> s {stage = a} :: ImportAssetFromApiGatewayApiResponseDetails)++instance+ Data.FromJSON+ ImportAssetFromApiGatewayApiResponseDetails+ where+ parseJSON =+ Data.withObject+ "ImportAssetFromApiGatewayApiResponseDetails"+ ( \x ->+ ImportAssetFromApiGatewayApiResponseDetails'+ Prelude.<$> (x Data..:? "ApiDescription")+ Prelude.<*> (x Data..:? "ApiKey")+ Prelude.<*> (x Data..: "ApiId")+ Prelude.<*> (x Data..: "ApiName")+ Prelude.<*> (x Data..: "ApiSpecificationMd5Hash")+ Prelude.<*> (x Data..: "ApiSpecificationUploadUrl")+ Prelude.<*> (x Data..: "ApiSpecificationUploadUrlExpiresAt")+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> (x Data..: "ProtocolType")+ Prelude.<*> (x Data..: "RevisionId")+ Prelude.<*> (x Data..: "Stage")+ )++instance+ Prelude.Hashable+ ImportAssetFromApiGatewayApiResponseDetails+ where+ hashWithSalt+ _salt+ ImportAssetFromApiGatewayApiResponseDetails' {..} =+ _salt+ `Prelude.hashWithSalt` apiDescription+ `Prelude.hashWithSalt` apiKey+ `Prelude.hashWithSalt` apiId+ `Prelude.hashWithSalt` apiName+ `Prelude.hashWithSalt` apiSpecificationMd5Hash+ `Prelude.hashWithSalt` apiSpecificationUploadUrl+ `Prelude.hashWithSalt` apiSpecificationUploadUrlExpiresAt+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` protocolType+ `Prelude.hashWithSalt` revisionId+ `Prelude.hashWithSalt` stage++instance+ Prelude.NFData+ ImportAssetFromApiGatewayApiResponseDetails+ where+ rnf ImportAssetFromApiGatewayApiResponseDetails' {..} =+ Prelude.rnf apiDescription+ `Prelude.seq` Prelude.rnf apiKey+ `Prelude.seq` Prelude.rnf apiId+ `Prelude.seq` Prelude.rnf apiName+ `Prelude.seq` Prelude.rnf apiSpecificationMd5Hash+ `Prelude.seq` Prelude.rnf apiSpecificationUploadUrl+ `Prelude.seq` Prelude.rnf apiSpecificationUploadUrlExpiresAt+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf protocolType+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf stage
+ gen/Amazonka/DataExchange/Types/ImportAssetFromSignedUrlJobErrorDetails.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.ImportAssetFromSignedUrlJobErrorDetails+-- 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.DataExchange.Types.ImportAssetFromSignedUrlJobErrorDetails 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 the job error.+--+-- /See:/ 'newImportAssetFromSignedUrlJobErrorDetails' smart constructor.+data ImportAssetFromSignedUrlJobErrorDetails = ImportAssetFromSignedUrlJobErrorDetails'+ { -- | Details about the job error.+ assetName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetFromSignedUrlJobErrorDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'importAssetFromSignedUrlJobErrorDetails_assetName' - Details about the job error.+newImportAssetFromSignedUrlJobErrorDetails ::+ -- | 'assetName'+ Prelude.Text ->+ ImportAssetFromSignedUrlJobErrorDetails+newImportAssetFromSignedUrlJobErrorDetails+ pAssetName_ =+ ImportAssetFromSignedUrlJobErrorDetails'+ { assetName =+ pAssetName_+ }++-- | Details about the job error.+importAssetFromSignedUrlJobErrorDetails_assetName :: Lens.Lens' ImportAssetFromSignedUrlJobErrorDetails Prelude.Text+importAssetFromSignedUrlJobErrorDetails_assetName = Lens.lens (\ImportAssetFromSignedUrlJobErrorDetails' {assetName} -> assetName) (\s@ImportAssetFromSignedUrlJobErrorDetails' {} a -> s {assetName = a} :: ImportAssetFromSignedUrlJobErrorDetails)++instance+ Data.FromJSON+ ImportAssetFromSignedUrlJobErrorDetails+ where+ parseJSON =+ Data.withObject+ "ImportAssetFromSignedUrlJobErrorDetails"+ ( \x ->+ ImportAssetFromSignedUrlJobErrorDetails'+ Prelude.<$> (x Data..: "AssetName")+ )++instance+ Prelude.Hashable+ ImportAssetFromSignedUrlJobErrorDetails+ where+ hashWithSalt+ _salt+ ImportAssetFromSignedUrlJobErrorDetails' {..} =+ _salt `Prelude.hashWithSalt` assetName++instance+ Prelude.NFData+ ImportAssetFromSignedUrlJobErrorDetails+ where+ rnf ImportAssetFromSignedUrlJobErrorDetails' {..} =+ Prelude.rnf assetName
+ gen/Amazonka/DataExchange/Types/ImportAssetFromSignedUrlRequestDetails.hs view
@@ -0,0 +1,140 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.ImportAssetFromSignedUrlRequestDetails+-- 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.DataExchange.Types.ImportAssetFromSignedUrlRequestDetails 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 operation to be performed by the job.+--+-- /See:/ 'newImportAssetFromSignedUrlRequestDetails' smart constructor.+data ImportAssetFromSignedUrlRequestDetails = ImportAssetFromSignedUrlRequestDetails'+ { -- | The name of the asset. When importing from Amazon S3, the Amazon S3+ -- object key is used as the asset name.+ assetName :: Prelude.Text,+ -- | The unique identifier for the data set associated with this import job.+ dataSetId :: Prelude.Text,+ -- | The Base64-encoded Md5 hash for the asset, used to ensure the integrity+ -- of the file at that location.+ md5Hash :: Prelude.Text,+ -- | The unique identifier for the revision associated with this import+ -- request.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetFromSignedUrlRequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'importAssetFromSignedUrlRequestDetails_assetName' - The name of the asset. When importing from Amazon S3, the Amazon S3+-- object key is used as the asset name.+--+-- 'dataSetId', 'importAssetFromSignedUrlRequestDetails_dataSetId' - The unique identifier for the data set associated with this import job.+--+-- 'md5Hash', 'importAssetFromSignedUrlRequestDetails_md5Hash' - The Base64-encoded Md5 hash for the asset, used to ensure the integrity+-- of the file at that location.+--+-- 'revisionId', 'importAssetFromSignedUrlRequestDetails_revisionId' - The unique identifier for the revision associated with this import+-- request.+newImportAssetFromSignedUrlRequestDetails ::+ -- | 'assetName'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'md5Hash'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ImportAssetFromSignedUrlRequestDetails+newImportAssetFromSignedUrlRequestDetails+ pAssetName_+ pDataSetId_+ pMd5Hash_+ pRevisionId_ =+ ImportAssetFromSignedUrlRequestDetails'+ { assetName =+ pAssetName_,+ dataSetId = pDataSetId_,+ md5Hash = pMd5Hash_,+ revisionId = pRevisionId_+ }++-- | The name of the asset. When importing from Amazon S3, the Amazon S3+-- object key is used as the asset name.+importAssetFromSignedUrlRequestDetails_assetName :: Lens.Lens' ImportAssetFromSignedUrlRequestDetails Prelude.Text+importAssetFromSignedUrlRequestDetails_assetName = Lens.lens (\ImportAssetFromSignedUrlRequestDetails' {assetName} -> assetName) (\s@ImportAssetFromSignedUrlRequestDetails' {} a -> s {assetName = a} :: ImportAssetFromSignedUrlRequestDetails)++-- | The unique identifier for the data set associated with this import job.+importAssetFromSignedUrlRequestDetails_dataSetId :: Lens.Lens' ImportAssetFromSignedUrlRequestDetails Prelude.Text+importAssetFromSignedUrlRequestDetails_dataSetId = Lens.lens (\ImportAssetFromSignedUrlRequestDetails' {dataSetId} -> dataSetId) (\s@ImportAssetFromSignedUrlRequestDetails' {} a -> s {dataSetId = a} :: ImportAssetFromSignedUrlRequestDetails)++-- | The Base64-encoded Md5 hash for the asset, used to ensure the integrity+-- of the file at that location.+importAssetFromSignedUrlRequestDetails_md5Hash :: Lens.Lens' ImportAssetFromSignedUrlRequestDetails Prelude.Text+importAssetFromSignedUrlRequestDetails_md5Hash = Lens.lens (\ImportAssetFromSignedUrlRequestDetails' {md5Hash} -> md5Hash) (\s@ImportAssetFromSignedUrlRequestDetails' {} a -> s {md5Hash = a} :: ImportAssetFromSignedUrlRequestDetails)++-- | The unique identifier for the revision associated with this import+-- request.+importAssetFromSignedUrlRequestDetails_revisionId :: Lens.Lens' ImportAssetFromSignedUrlRequestDetails Prelude.Text+importAssetFromSignedUrlRequestDetails_revisionId = Lens.lens (\ImportAssetFromSignedUrlRequestDetails' {revisionId} -> revisionId) (\s@ImportAssetFromSignedUrlRequestDetails' {} a -> s {revisionId = a} :: ImportAssetFromSignedUrlRequestDetails)++instance+ Prelude.Hashable+ ImportAssetFromSignedUrlRequestDetails+ where+ hashWithSalt+ _salt+ ImportAssetFromSignedUrlRequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` assetName+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` md5Hash+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ImportAssetFromSignedUrlRequestDetails+ where+ rnf ImportAssetFromSignedUrlRequestDetails' {..} =+ Prelude.rnf assetName+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf md5Hash+ `Prelude.seq` Prelude.rnf revisionId++instance+ Data.ToJSON+ ImportAssetFromSignedUrlRequestDetails+ where+ toJSON ImportAssetFromSignedUrlRequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("AssetName" Data..= assetName),+ Prelude.Just ("DataSetId" Data..= dataSetId),+ Prelude.Just ("Md5Hash" Data..= md5Hash),+ Prelude.Just ("RevisionId" Data..= revisionId)+ ]+ )
+ gen/Amazonka/DataExchange/Types/ImportAssetFromSignedUrlResponseDetails.hs view
@@ -0,0 +1,161 @@+{-# 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.DataExchange.Types.ImportAssetFromSignedUrlResponseDetails+-- 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.DataExchange.Types.ImportAssetFromSignedUrlResponseDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The details in the response for an import request, including the signed+-- URL and other information.+--+-- /See:/ 'newImportAssetFromSignedUrlResponseDetails' smart constructor.+data ImportAssetFromSignedUrlResponseDetails = ImportAssetFromSignedUrlResponseDetails'+ { -- | The Base64-encoded Md5 hash for the asset, used to ensure the integrity+ -- of the file at that location.+ md5Hash :: Prelude.Maybe Prelude.Text,+ -- | The signed URL.+ signedUrl :: Prelude.Maybe Prelude.Text,+ -- | The time and date at which the signed URL expires, in ISO 8601 format.+ signedUrlExpiresAt :: Prelude.Maybe Data.ISO8601,+ -- | The name for the asset associated with this import job.+ assetName :: Prelude.Text,+ -- | The unique identifier for the data set associated with this import job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this import+ -- response.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetFromSignedUrlResponseDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'md5Hash', 'importAssetFromSignedUrlResponseDetails_md5Hash' - The Base64-encoded Md5 hash for the asset, used to ensure the integrity+-- of the file at that location.+--+-- 'signedUrl', 'importAssetFromSignedUrlResponseDetails_signedUrl' - The signed URL.+--+-- 'signedUrlExpiresAt', 'importAssetFromSignedUrlResponseDetails_signedUrlExpiresAt' - The time and date at which the signed URL expires, in ISO 8601 format.+--+-- 'assetName', 'importAssetFromSignedUrlResponseDetails_assetName' - The name for the asset associated with this import job.+--+-- 'dataSetId', 'importAssetFromSignedUrlResponseDetails_dataSetId' - The unique identifier for the data set associated with this import job.+--+-- 'revisionId', 'importAssetFromSignedUrlResponseDetails_revisionId' - The unique identifier for the revision associated with this import+-- response.+newImportAssetFromSignedUrlResponseDetails ::+ -- | 'assetName'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ImportAssetFromSignedUrlResponseDetails+newImportAssetFromSignedUrlResponseDetails+ pAssetName_+ pDataSetId_+ pRevisionId_ =+ ImportAssetFromSignedUrlResponseDetails'+ { md5Hash =+ Prelude.Nothing,+ signedUrl = Prelude.Nothing,+ signedUrlExpiresAt =+ Prelude.Nothing,+ assetName = pAssetName_,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | The Base64-encoded Md5 hash for the asset, used to ensure the integrity+-- of the file at that location.+importAssetFromSignedUrlResponseDetails_md5Hash :: Lens.Lens' ImportAssetFromSignedUrlResponseDetails (Prelude.Maybe Prelude.Text)+importAssetFromSignedUrlResponseDetails_md5Hash = Lens.lens (\ImportAssetFromSignedUrlResponseDetails' {md5Hash} -> md5Hash) (\s@ImportAssetFromSignedUrlResponseDetails' {} a -> s {md5Hash = a} :: ImportAssetFromSignedUrlResponseDetails)++-- | The signed URL.+importAssetFromSignedUrlResponseDetails_signedUrl :: Lens.Lens' ImportAssetFromSignedUrlResponseDetails (Prelude.Maybe Prelude.Text)+importAssetFromSignedUrlResponseDetails_signedUrl = Lens.lens (\ImportAssetFromSignedUrlResponseDetails' {signedUrl} -> signedUrl) (\s@ImportAssetFromSignedUrlResponseDetails' {} a -> s {signedUrl = a} :: ImportAssetFromSignedUrlResponseDetails)++-- | The time and date at which the signed URL expires, in ISO 8601 format.+importAssetFromSignedUrlResponseDetails_signedUrlExpiresAt :: Lens.Lens' ImportAssetFromSignedUrlResponseDetails (Prelude.Maybe Prelude.UTCTime)+importAssetFromSignedUrlResponseDetails_signedUrlExpiresAt = Lens.lens (\ImportAssetFromSignedUrlResponseDetails' {signedUrlExpiresAt} -> signedUrlExpiresAt) (\s@ImportAssetFromSignedUrlResponseDetails' {} a -> s {signedUrlExpiresAt = a} :: ImportAssetFromSignedUrlResponseDetails) Prelude.. Lens.mapping Data._Time++-- | The name for the asset associated with this import job.+importAssetFromSignedUrlResponseDetails_assetName :: Lens.Lens' ImportAssetFromSignedUrlResponseDetails Prelude.Text+importAssetFromSignedUrlResponseDetails_assetName = Lens.lens (\ImportAssetFromSignedUrlResponseDetails' {assetName} -> assetName) (\s@ImportAssetFromSignedUrlResponseDetails' {} a -> s {assetName = a} :: ImportAssetFromSignedUrlResponseDetails)++-- | The unique identifier for the data set associated with this import job.+importAssetFromSignedUrlResponseDetails_dataSetId :: Lens.Lens' ImportAssetFromSignedUrlResponseDetails Prelude.Text+importAssetFromSignedUrlResponseDetails_dataSetId = Lens.lens (\ImportAssetFromSignedUrlResponseDetails' {dataSetId} -> dataSetId) (\s@ImportAssetFromSignedUrlResponseDetails' {} a -> s {dataSetId = a} :: ImportAssetFromSignedUrlResponseDetails)++-- | The unique identifier for the revision associated with this import+-- response.+importAssetFromSignedUrlResponseDetails_revisionId :: Lens.Lens' ImportAssetFromSignedUrlResponseDetails Prelude.Text+importAssetFromSignedUrlResponseDetails_revisionId = Lens.lens (\ImportAssetFromSignedUrlResponseDetails' {revisionId} -> revisionId) (\s@ImportAssetFromSignedUrlResponseDetails' {} a -> s {revisionId = a} :: ImportAssetFromSignedUrlResponseDetails)++instance+ Data.FromJSON+ ImportAssetFromSignedUrlResponseDetails+ where+ parseJSON =+ Data.withObject+ "ImportAssetFromSignedUrlResponseDetails"+ ( \x ->+ ImportAssetFromSignedUrlResponseDetails'+ Prelude.<$> (x Data..:? "Md5Hash")+ Prelude.<*> (x Data..:? "SignedUrl")+ Prelude.<*> (x Data..:? "SignedUrlExpiresAt")+ Prelude.<*> (x Data..: "AssetName")+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> (x Data..: "RevisionId")+ )++instance+ Prelude.Hashable+ ImportAssetFromSignedUrlResponseDetails+ where+ hashWithSalt+ _salt+ ImportAssetFromSignedUrlResponseDetails' {..} =+ _salt+ `Prelude.hashWithSalt` md5Hash+ `Prelude.hashWithSalt` signedUrl+ `Prelude.hashWithSalt` signedUrlExpiresAt+ `Prelude.hashWithSalt` assetName+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ImportAssetFromSignedUrlResponseDetails+ where+ rnf ImportAssetFromSignedUrlResponseDetails' {..} =+ Prelude.rnf md5Hash+ `Prelude.seq` Prelude.rnf signedUrl+ `Prelude.seq` Prelude.rnf signedUrlExpiresAt+ `Prelude.seq` Prelude.rnf assetName+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId
+ gen/Amazonka/DataExchange/Types/ImportAssetsFromLakeFormationTagPolicyRequestDetails.hs view
@@ -0,0 +1,170 @@+{-# 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.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyRequestDetails+-- 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.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyRequestDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.DatabaseLFTagPolicyAndPermissions+import Amazonka.DataExchange.Types.TableLFTagPolicyAndPermissions+import qualified Amazonka.Prelude as Prelude++-- | Details about the assets imported from an AWS Lake Formation tag policy+-- request.+--+-- /See:/ 'newImportAssetsFromLakeFormationTagPolicyRequestDetails' smart constructor.+data ImportAssetsFromLakeFormationTagPolicyRequestDetails = ImportAssetsFromLakeFormationTagPolicyRequestDetails'+ { -- | A structure for the database object.+ database :: Prelude.Maybe DatabaseLFTagPolicyAndPermissions,+ -- | A structure for the table object.+ table :: Prelude.Maybe TableLFTagPolicyAndPermissions,+ -- | The identifier for the AWS Glue Data Catalog.+ catalogId :: Prelude.Text,+ -- | The IAM role\'s ARN that allows AWS Data Exchange to assume the role and+ -- grant and revoke permissions of subscribers to AWS Lake Formation data+ -- permissions.+ roleArn :: Prelude.Text,+ -- | The unique identifier for the data set associated with this import job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this import job.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetsFromLakeFormationTagPolicyRequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'database', 'importAssetsFromLakeFormationTagPolicyRequestDetails_database' - A structure for the database object.+--+-- 'table', 'importAssetsFromLakeFormationTagPolicyRequestDetails_table' - A structure for the table object.+--+-- 'catalogId', 'importAssetsFromLakeFormationTagPolicyRequestDetails_catalogId' - The identifier for the AWS Glue Data Catalog.+--+-- 'roleArn', 'importAssetsFromLakeFormationTagPolicyRequestDetails_roleArn' - The IAM role\'s ARN that allows AWS Data Exchange to assume the role and+-- grant and revoke permissions of subscribers to AWS Lake Formation data+-- permissions.+--+-- 'dataSetId', 'importAssetsFromLakeFormationTagPolicyRequestDetails_dataSetId' - The unique identifier for the data set associated with this import job.+--+-- 'revisionId', 'importAssetsFromLakeFormationTagPolicyRequestDetails_revisionId' - The unique identifier for the revision associated with this import job.+newImportAssetsFromLakeFormationTagPolicyRequestDetails ::+ -- | 'catalogId'+ Prelude.Text ->+ -- | 'roleArn'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ImportAssetsFromLakeFormationTagPolicyRequestDetails+newImportAssetsFromLakeFormationTagPolicyRequestDetails+ pCatalogId_+ pRoleArn_+ pDataSetId_+ pRevisionId_ =+ ImportAssetsFromLakeFormationTagPolicyRequestDetails'+ { database =+ Prelude.Nothing,+ table =+ Prelude.Nothing,+ catalogId =+ pCatalogId_,+ roleArn = pRoleArn_,+ dataSetId =+ pDataSetId_,+ revisionId =+ pRevisionId_+ }++-- | A structure for the database object.+importAssetsFromLakeFormationTagPolicyRequestDetails_database :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyRequestDetails (Prelude.Maybe DatabaseLFTagPolicyAndPermissions)+importAssetsFromLakeFormationTagPolicyRequestDetails_database = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyRequestDetails' {database} -> database) (\s@ImportAssetsFromLakeFormationTagPolicyRequestDetails' {} a -> s {database = a} :: ImportAssetsFromLakeFormationTagPolicyRequestDetails)++-- | A structure for the table object.+importAssetsFromLakeFormationTagPolicyRequestDetails_table :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyRequestDetails (Prelude.Maybe TableLFTagPolicyAndPermissions)+importAssetsFromLakeFormationTagPolicyRequestDetails_table = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyRequestDetails' {table} -> table) (\s@ImportAssetsFromLakeFormationTagPolicyRequestDetails' {} a -> s {table = a} :: ImportAssetsFromLakeFormationTagPolicyRequestDetails)++-- | The identifier for the AWS Glue Data Catalog.+importAssetsFromLakeFormationTagPolicyRequestDetails_catalogId :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyRequestDetails Prelude.Text+importAssetsFromLakeFormationTagPolicyRequestDetails_catalogId = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyRequestDetails' {catalogId} -> catalogId) (\s@ImportAssetsFromLakeFormationTagPolicyRequestDetails' {} a -> s {catalogId = a} :: ImportAssetsFromLakeFormationTagPolicyRequestDetails)++-- | The IAM role\'s ARN that allows AWS Data Exchange to assume the role and+-- grant and revoke permissions of subscribers to AWS Lake Formation data+-- permissions.+importAssetsFromLakeFormationTagPolicyRequestDetails_roleArn :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyRequestDetails Prelude.Text+importAssetsFromLakeFormationTagPolicyRequestDetails_roleArn = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyRequestDetails' {roleArn} -> roleArn) (\s@ImportAssetsFromLakeFormationTagPolicyRequestDetails' {} a -> s {roleArn = a} :: ImportAssetsFromLakeFormationTagPolicyRequestDetails)++-- | The unique identifier for the data set associated with this import job.+importAssetsFromLakeFormationTagPolicyRequestDetails_dataSetId :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyRequestDetails Prelude.Text+importAssetsFromLakeFormationTagPolicyRequestDetails_dataSetId = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyRequestDetails' {dataSetId} -> dataSetId) (\s@ImportAssetsFromLakeFormationTagPolicyRequestDetails' {} a -> s {dataSetId = a} :: ImportAssetsFromLakeFormationTagPolicyRequestDetails)++-- | The unique identifier for the revision associated with this import job.+importAssetsFromLakeFormationTagPolicyRequestDetails_revisionId :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyRequestDetails Prelude.Text+importAssetsFromLakeFormationTagPolicyRequestDetails_revisionId = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyRequestDetails' {revisionId} -> revisionId) (\s@ImportAssetsFromLakeFormationTagPolicyRequestDetails' {} a -> s {revisionId = a} :: ImportAssetsFromLakeFormationTagPolicyRequestDetails)++instance+ Prelude.Hashable+ ImportAssetsFromLakeFormationTagPolicyRequestDetails+ where+ hashWithSalt+ _salt+ ImportAssetsFromLakeFormationTagPolicyRequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` database+ `Prelude.hashWithSalt` table+ `Prelude.hashWithSalt` catalogId+ `Prelude.hashWithSalt` roleArn+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ImportAssetsFromLakeFormationTagPolicyRequestDetails+ where+ rnf+ ImportAssetsFromLakeFormationTagPolicyRequestDetails' {..} =+ Prelude.rnf database+ `Prelude.seq` Prelude.rnf table+ `Prelude.seq` Prelude.rnf catalogId+ `Prelude.seq` Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance+ Data.ToJSON+ ImportAssetsFromLakeFormationTagPolicyRequestDetails+ where+ toJSON+ ImportAssetsFromLakeFormationTagPolicyRequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Database" Data..=) Prelude.<$> database,+ ("Table" Data..=) Prelude.<$> table,+ Prelude.Just ("CatalogId" Data..= catalogId),+ Prelude.Just ("RoleArn" Data..= roleArn),+ Prelude.Just ("DataSetId" Data..= dataSetId),+ Prelude.Just ("RevisionId" Data..= revisionId)+ ]+ )
+ gen/Amazonka/DataExchange/Types/ImportAssetsFromLakeFormationTagPolicyResponseDetails.hs view
@@ -0,0 +1,166 @@+{-# 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.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyResponseDetails+-- 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.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyResponseDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.DatabaseLFTagPolicyAndPermissions+import Amazonka.DataExchange.Types.TableLFTagPolicyAndPermissions+import qualified Amazonka.Prelude as Prelude++-- | Details from an import AWS Lake Formation tag policy job response.+--+-- /See:/ 'newImportAssetsFromLakeFormationTagPolicyResponseDetails' smart constructor.+data ImportAssetsFromLakeFormationTagPolicyResponseDetails = ImportAssetsFromLakeFormationTagPolicyResponseDetails'+ { -- | A structure for the database object.+ database :: Prelude.Maybe DatabaseLFTagPolicyAndPermissions,+ -- | A structure for the table object.+ table :: Prelude.Maybe TableLFTagPolicyAndPermissions,+ -- | The identifier for the AWS Glue Data Catalog.+ catalogId :: Prelude.Text,+ -- | The IAM role\'s ARN that allows AWS Data Exchange to assume the role and+ -- grant and revoke permissions to AWS Lake Formation data permissions.+ roleArn :: Prelude.Text,+ -- | The unique identifier for the data set associated with this import job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this import job.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetsFromLakeFormationTagPolicyResponseDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'database', 'importAssetsFromLakeFormationTagPolicyResponseDetails_database' - A structure for the database object.+--+-- 'table', 'importAssetsFromLakeFormationTagPolicyResponseDetails_table' - A structure for the table object.+--+-- 'catalogId', 'importAssetsFromLakeFormationTagPolicyResponseDetails_catalogId' - The identifier for the AWS Glue Data Catalog.+--+-- 'roleArn', 'importAssetsFromLakeFormationTagPolicyResponseDetails_roleArn' - The IAM role\'s ARN that allows AWS Data Exchange to assume the role and+-- grant and revoke permissions to AWS Lake Formation data permissions.+--+-- 'dataSetId', 'importAssetsFromLakeFormationTagPolicyResponseDetails_dataSetId' - The unique identifier for the data set associated with this import job.+--+-- 'revisionId', 'importAssetsFromLakeFormationTagPolicyResponseDetails_revisionId' - The unique identifier for the revision associated with this import job.+newImportAssetsFromLakeFormationTagPolicyResponseDetails ::+ -- | 'catalogId'+ Prelude.Text ->+ -- | 'roleArn'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ImportAssetsFromLakeFormationTagPolicyResponseDetails+newImportAssetsFromLakeFormationTagPolicyResponseDetails+ pCatalogId_+ pRoleArn_+ pDataSetId_+ pRevisionId_ =+ ImportAssetsFromLakeFormationTagPolicyResponseDetails'+ { database =+ Prelude.Nothing,+ table =+ Prelude.Nothing,+ catalogId =+ pCatalogId_,+ roleArn = pRoleArn_,+ dataSetId =+ pDataSetId_,+ revisionId =+ pRevisionId_+ }++-- | A structure for the database object.+importAssetsFromLakeFormationTagPolicyResponseDetails_database :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyResponseDetails (Prelude.Maybe DatabaseLFTagPolicyAndPermissions)+importAssetsFromLakeFormationTagPolicyResponseDetails_database = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyResponseDetails' {database} -> database) (\s@ImportAssetsFromLakeFormationTagPolicyResponseDetails' {} a -> s {database = a} :: ImportAssetsFromLakeFormationTagPolicyResponseDetails)++-- | A structure for the table object.+importAssetsFromLakeFormationTagPolicyResponseDetails_table :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyResponseDetails (Prelude.Maybe TableLFTagPolicyAndPermissions)+importAssetsFromLakeFormationTagPolicyResponseDetails_table = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyResponseDetails' {table} -> table) (\s@ImportAssetsFromLakeFormationTagPolicyResponseDetails' {} a -> s {table = a} :: ImportAssetsFromLakeFormationTagPolicyResponseDetails)++-- | The identifier for the AWS Glue Data Catalog.+importAssetsFromLakeFormationTagPolicyResponseDetails_catalogId :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyResponseDetails Prelude.Text+importAssetsFromLakeFormationTagPolicyResponseDetails_catalogId = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyResponseDetails' {catalogId} -> catalogId) (\s@ImportAssetsFromLakeFormationTagPolicyResponseDetails' {} a -> s {catalogId = a} :: ImportAssetsFromLakeFormationTagPolicyResponseDetails)++-- | The IAM role\'s ARN that allows AWS Data Exchange to assume the role and+-- grant and revoke permissions to AWS Lake Formation data permissions.+importAssetsFromLakeFormationTagPolicyResponseDetails_roleArn :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyResponseDetails Prelude.Text+importAssetsFromLakeFormationTagPolicyResponseDetails_roleArn = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyResponseDetails' {roleArn} -> roleArn) (\s@ImportAssetsFromLakeFormationTagPolicyResponseDetails' {} a -> s {roleArn = a} :: ImportAssetsFromLakeFormationTagPolicyResponseDetails)++-- | The unique identifier for the data set associated with this import job.+importAssetsFromLakeFormationTagPolicyResponseDetails_dataSetId :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyResponseDetails Prelude.Text+importAssetsFromLakeFormationTagPolicyResponseDetails_dataSetId = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyResponseDetails' {dataSetId} -> dataSetId) (\s@ImportAssetsFromLakeFormationTagPolicyResponseDetails' {} a -> s {dataSetId = a} :: ImportAssetsFromLakeFormationTagPolicyResponseDetails)++-- | The unique identifier for the revision associated with this import job.+importAssetsFromLakeFormationTagPolicyResponseDetails_revisionId :: Lens.Lens' ImportAssetsFromLakeFormationTagPolicyResponseDetails Prelude.Text+importAssetsFromLakeFormationTagPolicyResponseDetails_revisionId = Lens.lens (\ImportAssetsFromLakeFormationTagPolicyResponseDetails' {revisionId} -> revisionId) (\s@ImportAssetsFromLakeFormationTagPolicyResponseDetails' {} a -> s {revisionId = a} :: ImportAssetsFromLakeFormationTagPolicyResponseDetails)++instance+ Data.FromJSON+ ImportAssetsFromLakeFormationTagPolicyResponseDetails+ where+ parseJSON =+ Data.withObject+ "ImportAssetsFromLakeFormationTagPolicyResponseDetails"+ ( \x ->+ ImportAssetsFromLakeFormationTagPolicyResponseDetails'+ Prelude.<$> (x Data..:? "Database")+ Prelude.<*> (x Data..:? "Table")+ Prelude.<*> (x Data..: "CatalogId")+ Prelude.<*> (x Data..: "RoleArn")+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> (x Data..: "RevisionId")+ )++instance+ Prelude.Hashable+ ImportAssetsFromLakeFormationTagPolicyResponseDetails+ where+ hashWithSalt+ _salt+ ImportAssetsFromLakeFormationTagPolicyResponseDetails' {..} =+ _salt+ `Prelude.hashWithSalt` database+ `Prelude.hashWithSalt` table+ `Prelude.hashWithSalt` catalogId+ `Prelude.hashWithSalt` roleArn+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ImportAssetsFromLakeFormationTagPolicyResponseDetails+ where+ rnf+ ImportAssetsFromLakeFormationTagPolicyResponseDetails' {..} =+ Prelude.rnf database+ `Prelude.seq` Prelude.rnf table+ `Prelude.seq` Prelude.rnf catalogId+ `Prelude.seq` Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId
@@ -0,0 +1,116 @@+{-# 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.DataExchange.Types.ImportAssetsFromRedshiftDataSharesRequestDetails+-- 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.DataExchange.Types.ImportAssetsFromRedshiftDataSharesRequestDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.RedshiftDataShareAssetSourceEntry+import qualified Amazonka.Prelude as Prelude++-- | Details from an import from Amazon Redshift datashare request.+--+-- /See:/ 'newImportAssetsFromRedshiftDataSharesRequestDetails' smart constructor.+data ImportAssetsFromRedshiftDataSharesRequestDetails = ImportAssetsFromRedshiftDataSharesRequestDetails'+ { -- | A list of Amazon Redshift datashare assets.+ assetSources :: [RedshiftDataShareAssetSourceEntry],+ -- | The unique identifier for the data set associated with this import job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this import job.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetsFromRedshiftDataSharesRequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetSources', 'importAssetsFromRedshiftDataSharesRequestDetails_assetSources' - A list of Amazon Redshift datashare assets.+--+-- 'dataSetId', 'importAssetsFromRedshiftDataSharesRequestDetails_dataSetId' - The unique identifier for the data set associated with this import job.+--+-- 'revisionId', 'importAssetsFromRedshiftDataSharesRequestDetails_revisionId' - The unique identifier for the revision associated with this import job.+newImportAssetsFromRedshiftDataSharesRequestDetails ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ImportAssetsFromRedshiftDataSharesRequestDetails+newImportAssetsFromRedshiftDataSharesRequestDetails+ pDataSetId_+ pRevisionId_ =+ ImportAssetsFromRedshiftDataSharesRequestDetails'+ { assetSources =+ Prelude.mempty,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | A list of Amazon Redshift datashare assets.+importAssetsFromRedshiftDataSharesRequestDetails_assetSources :: Lens.Lens' ImportAssetsFromRedshiftDataSharesRequestDetails [RedshiftDataShareAssetSourceEntry]+importAssetsFromRedshiftDataSharesRequestDetails_assetSources = Lens.lens (\ImportAssetsFromRedshiftDataSharesRequestDetails' {assetSources} -> assetSources) (\s@ImportAssetsFromRedshiftDataSharesRequestDetails' {} a -> s {assetSources = a} :: ImportAssetsFromRedshiftDataSharesRequestDetails) Prelude.. Lens.coerced++-- | The unique identifier for the data set associated with this import job.+importAssetsFromRedshiftDataSharesRequestDetails_dataSetId :: Lens.Lens' ImportAssetsFromRedshiftDataSharesRequestDetails Prelude.Text+importAssetsFromRedshiftDataSharesRequestDetails_dataSetId = Lens.lens (\ImportAssetsFromRedshiftDataSharesRequestDetails' {dataSetId} -> dataSetId) (\s@ImportAssetsFromRedshiftDataSharesRequestDetails' {} a -> s {dataSetId = a} :: ImportAssetsFromRedshiftDataSharesRequestDetails)++-- | The unique identifier for the revision associated with this import job.+importAssetsFromRedshiftDataSharesRequestDetails_revisionId :: Lens.Lens' ImportAssetsFromRedshiftDataSharesRequestDetails Prelude.Text+importAssetsFromRedshiftDataSharesRequestDetails_revisionId = Lens.lens (\ImportAssetsFromRedshiftDataSharesRequestDetails' {revisionId} -> revisionId) (\s@ImportAssetsFromRedshiftDataSharesRequestDetails' {} a -> s {revisionId = a} :: ImportAssetsFromRedshiftDataSharesRequestDetails)++instance+ Prelude.Hashable+ ImportAssetsFromRedshiftDataSharesRequestDetails+ where+ hashWithSalt+ _salt+ ImportAssetsFromRedshiftDataSharesRequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` assetSources+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ImportAssetsFromRedshiftDataSharesRequestDetails+ where+ rnf+ ImportAssetsFromRedshiftDataSharesRequestDetails' {..} =+ Prelude.rnf assetSources+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance+ Data.ToJSON+ ImportAssetsFromRedshiftDataSharesRequestDetails+ where+ toJSON+ ImportAssetsFromRedshiftDataSharesRequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("AssetSources" Data..= assetSources),+ Prelude.Just ("DataSetId" Data..= dataSetId),+ Prelude.Just ("RevisionId" Data..= revisionId)+ ]+ )
@@ -0,0 +1,117 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.ImportAssetsFromRedshiftDataSharesResponseDetails+-- 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.DataExchange.Types.ImportAssetsFromRedshiftDataSharesResponseDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.RedshiftDataShareAssetSourceEntry+import qualified Amazonka.Prelude as Prelude++-- | Details from an import from Amazon Redshift datashare response.+--+-- /See:/ 'newImportAssetsFromRedshiftDataSharesResponseDetails' smart constructor.+data ImportAssetsFromRedshiftDataSharesResponseDetails = ImportAssetsFromRedshiftDataSharesResponseDetails'+ { -- | A list of Amazon Redshift datashare asset sources.+ assetSources :: [RedshiftDataShareAssetSourceEntry],+ -- | The unique identifier for the data set associated with this import job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this import job.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetsFromRedshiftDataSharesResponseDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetSources', 'importAssetsFromRedshiftDataSharesResponseDetails_assetSources' - A list of Amazon Redshift datashare asset sources.+--+-- 'dataSetId', 'importAssetsFromRedshiftDataSharesResponseDetails_dataSetId' - The unique identifier for the data set associated with this import job.+--+-- 'revisionId', 'importAssetsFromRedshiftDataSharesResponseDetails_revisionId' - The unique identifier for the revision associated with this import job.+newImportAssetsFromRedshiftDataSharesResponseDetails ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ImportAssetsFromRedshiftDataSharesResponseDetails+newImportAssetsFromRedshiftDataSharesResponseDetails+ pDataSetId_+ pRevisionId_ =+ ImportAssetsFromRedshiftDataSharesResponseDetails'+ { assetSources =+ Prelude.mempty,+ dataSetId = pDataSetId_,+ revisionId =+ pRevisionId_+ }++-- | A list of Amazon Redshift datashare asset sources.+importAssetsFromRedshiftDataSharesResponseDetails_assetSources :: Lens.Lens' ImportAssetsFromRedshiftDataSharesResponseDetails [RedshiftDataShareAssetSourceEntry]+importAssetsFromRedshiftDataSharesResponseDetails_assetSources = Lens.lens (\ImportAssetsFromRedshiftDataSharesResponseDetails' {assetSources} -> assetSources) (\s@ImportAssetsFromRedshiftDataSharesResponseDetails' {} a -> s {assetSources = a} :: ImportAssetsFromRedshiftDataSharesResponseDetails) Prelude.. Lens.coerced++-- | The unique identifier for the data set associated with this import job.+importAssetsFromRedshiftDataSharesResponseDetails_dataSetId :: Lens.Lens' ImportAssetsFromRedshiftDataSharesResponseDetails Prelude.Text+importAssetsFromRedshiftDataSharesResponseDetails_dataSetId = Lens.lens (\ImportAssetsFromRedshiftDataSharesResponseDetails' {dataSetId} -> dataSetId) (\s@ImportAssetsFromRedshiftDataSharesResponseDetails' {} a -> s {dataSetId = a} :: ImportAssetsFromRedshiftDataSharesResponseDetails)++-- | The unique identifier for the revision associated with this import job.+importAssetsFromRedshiftDataSharesResponseDetails_revisionId :: Lens.Lens' ImportAssetsFromRedshiftDataSharesResponseDetails Prelude.Text+importAssetsFromRedshiftDataSharesResponseDetails_revisionId = Lens.lens (\ImportAssetsFromRedshiftDataSharesResponseDetails' {revisionId} -> revisionId) (\s@ImportAssetsFromRedshiftDataSharesResponseDetails' {} a -> s {revisionId = a} :: ImportAssetsFromRedshiftDataSharesResponseDetails)++instance+ Data.FromJSON+ ImportAssetsFromRedshiftDataSharesResponseDetails+ where+ parseJSON =+ Data.withObject+ "ImportAssetsFromRedshiftDataSharesResponseDetails"+ ( \x ->+ ImportAssetsFromRedshiftDataSharesResponseDetails'+ Prelude.<$> (x Data..:? "AssetSources" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> (x Data..: "RevisionId")+ )++instance+ Prelude.Hashable+ ImportAssetsFromRedshiftDataSharesResponseDetails+ where+ hashWithSalt+ _salt+ ImportAssetsFromRedshiftDataSharesResponseDetails' {..} =+ _salt+ `Prelude.hashWithSalt` assetSources+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ImportAssetsFromRedshiftDataSharesResponseDetails+ where+ rnf+ ImportAssetsFromRedshiftDataSharesResponseDetails' {..} =+ Prelude.rnf assetSources+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId
+ gen/Amazonka/DataExchange/Types/ImportAssetsFromS3RequestDetails.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.ImportAssetsFromS3RequestDetails+-- 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.DataExchange.Types.ImportAssetsFromS3RequestDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.AssetSourceEntry+import qualified Amazonka.Prelude as Prelude++-- | Details of the operation to be performed by the job.+--+-- /See:/ 'newImportAssetsFromS3RequestDetails' smart constructor.+data ImportAssetsFromS3RequestDetails = ImportAssetsFromS3RequestDetails'+ { -- | Is a list of Amazon S3 bucket and object key pairs.+ assetSources :: [AssetSourceEntry],+ -- | The unique identifier for the data set associated with this import job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this import+ -- request.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetsFromS3RequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetSources', 'importAssetsFromS3RequestDetails_assetSources' - Is a list of Amazon S3 bucket and object key pairs.+--+-- 'dataSetId', 'importAssetsFromS3RequestDetails_dataSetId' - The unique identifier for the data set associated with this import job.+--+-- 'revisionId', 'importAssetsFromS3RequestDetails_revisionId' - The unique identifier for the revision associated with this import+-- request.+newImportAssetsFromS3RequestDetails ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ImportAssetsFromS3RequestDetails+newImportAssetsFromS3RequestDetails+ pDataSetId_+ pRevisionId_ =+ ImportAssetsFromS3RequestDetails'+ { assetSources =+ Prelude.mempty,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | Is a list of Amazon S3 bucket and object key pairs.+importAssetsFromS3RequestDetails_assetSources :: Lens.Lens' ImportAssetsFromS3RequestDetails [AssetSourceEntry]+importAssetsFromS3RequestDetails_assetSources = Lens.lens (\ImportAssetsFromS3RequestDetails' {assetSources} -> assetSources) (\s@ImportAssetsFromS3RequestDetails' {} a -> s {assetSources = a} :: ImportAssetsFromS3RequestDetails) Prelude.. Lens.coerced++-- | The unique identifier for the data set associated with this import job.+importAssetsFromS3RequestDetails_dataSetId :: Lens.Lens' ImportAssetsFromS3RequestDetails Prelude.Text+importAssetsFromS3RequestDetails_dataSetId = Lens.lens (\ImportAssetsFromS3RequestDetails' {dataSetId} -> dataSetId) (\s@ImportAssetsFromS3RequestDetails' {} a -> s {dataSetId = a} :: ImportAssetsFromS3RequestDetails)++-- | The unique identifier for the revision associated with this import+-- request.+importAssetsFromS3RequestDetails_revisionId :: Lens.Lens' ImportAssetsFromS3RequestDetails Prelude.Text+importAssetsFromS3RequestDetails_revisionId = Lens.lens (\ImportAssetsFromS3RequestDetails' {revisionId} -> revisionId) (\s@ImportAssetsFromS3RequestDetails' {} a -> s {revisionId = a} :: ImportAssetsFromS3RequestDetails)++instance+ Prelude.Hashable+ ImportAssetsFromS3RequestDetails+ where+ hashWithSalt+ _salt+ ImportAssetsFromS3RequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` assetSources+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ImportAssetsFromS3RequestDetails+ where+ rnf ImportAssetsFromS3RequestDetails' {..} =+ Prelude.rnf assetSources+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToJSON ImportAssetsFromS3RequestDetails where+ toJSON ImportAssetsFromS3RequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("AssetSources" Data..= assetSources),+ Prelude.Just ("DataSetId" Data..= dataSetId),+ Prelude.Just ("RevisionId" Data..= revisionId)+ ]+ )
+ gen/Amazonka/DataExchange/Types/ImportAssetsFromS3ResponseDetails.hs view
@@ -0,0 +1,118 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.ImportAssetsFromS3ResponseDetails+-- 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.DataExchange.Types.ImportAssetsFromS3ResponseDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.AssetSourceEntry+import qualified Amazonka.Prelude as Prelude++-- | Details from an import from Amazon S3 response.+--+-- /See:/ 'newImportAssetsFromS3ResponseDetails' smart constructor.+data ImportAssetsFromS3ResponseDetails = ImportAssetsFromS3ResponseDetails'+ { -- | Is a list of Amazon S3 bucket and object key pairs.+ assetSources :: [AssetSourceEntry],+ -- | The unique identifier for the data set associated with this import job.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision associated with this import+ -- response.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportAssetsFromS3ResponseDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetSources', 'importAssetsFromS3ResponseDetails_assetSources' - Is a list of Amazon S3 bucket and object key pairs.+--+-- 'dataSetId', 'importAssetsFromS3ResponseDetails_dataSetId' - The unique identifier for the data set associated with this import job.+--+-- 'revisionId', 'importAssetsFromS3ResponseDetails_revisionId' - The unique identifier for the revision associated with this import+-- response.+newImportAssetsFromS3ResponseDetails ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ ImportAssetsFromS3ResponseDetails+newImportAssetsFromS3ResponseDetails+ pDataSetId_+ pRevisionId_ =+ ImportAssetsFromS3ResponseDetails'+ { assetSources =+ Prelude.mempty,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | Is a list of Amazon S3 bucket and object key pairs.+importAssetsFromS3ResponseDetails_assetSources :: Lens.Lens' ImportAssetsFromS3ResponseDetails [AssetSourceEntry]+importAssetsFromS3ResponseDetails_assetSources = Lens.lens (\ImportAssetsFromS3ResponseDetails' {assetSources} -> assetSources) (\s@ImportAssetsFromS3ResponseDetails' {} a -> s {assetSources = a} :: ImportAssetsFromS3ResponseDetails) Prelude.. Lens.coerced++-- | The unique identifier for the data set associated with this import job.+importAssetsFromS3ResponseDetails_dataSetId :: Lens.Lens' ImportAssetsFromS3ResponseDetails Prelude.Text+importAssetsFromS3ResponseDetails_dataSetId = Lens.lens (\ImportAssetsFromS3ResponseDetails' {dataSetId} -> dataSetId) (\s@ImportAssetsFromS3ResponseDetails' {} a -> s {dataSetId = a} :: ImportAssetsFromS3ResponseDetails)++-- | The unique identifier for the revision associated with this import+-- response.+importAssetsFromS3ResponseDetails_revisionId :: Lens.Lens' ImportAssetsFromS3ResponseDetails Prelude.Text+importAssetsFromS3ResponseDetails_revisionId = Lens.lens (\ImportAssetsFromS3ResponseDetails' {revisionId} -> revisionId) (\s@ImportAssetsFromS3ResponseDetails' {} a -> s {revisionId = a} :: ImportAssetsFromS3ResponseDetails)++instance+ Data.FromJSON+ ImportAssetsFromS3ResponseDetails+ where+ parseJSON =+ Data.withObject+ "ImportAssetsFromS3ResponseDetails"+ ( \x ->+ ImportAssetsFromS3ResponseDetails'+ Prelude.<$> (x Data..:? "AssetSources" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> (x Data..: "RevisionId")+ )++instance+ Prelude.Hashable+ ImportAssetsFromS3ResponseDetails+ where+ hashWithSalt+ _salt+ ImportAssetsFromS3ResponseDetails' {..} =+ _salt+ `Prelude.hashWithSalt` assetSources+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance+ Prelude.NFData+ ImportAssetsFromS3ResponseDetails+ where+ rnf ImportAssetsFromS3ResponseDetails' {..} =+ Prelude.rnf assetSources+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId
+ gen/Amazonka/DataExchange/Types/JobEntry.hs view
@@ -0,0 +1,187 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.JobEntry+-- 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.DataExchange.Types.JobEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.JobError+import Amazonka.DataExchange.Types.ResponseDetails+import Amazonka.DataExchange.Types.State+import Amazonka.DataExchange.Types.Type+import qualified Amazonka.Prelude as Prelude++-- | AWS Data Exchange Jobs are asynchronous import or export operations used+-- to create or copy assets. A data set owner can both import and export as+-- they see fit. Someone with an entitlement to a data set can only export.+-- Jobs are deleted 90 days after they are created.+--+-- /See:/ 'newJobEntry' smart constructor.+data JobEntry = JobEntry'+ { -- | Errors for jobs.+ errors :: Prelude.Maybe [JobError],+ -- | The ARN for the job.+ arn :: Prelude.Text,+ -- | The date and time that the job was created, in ISO 8601 format.+ createdAt :: Data.ISO8601,+ -- | Details of the operation to be performed by the job, such as export+ -- destination details or import source details.+ details :: ResponseDetails,+ -- | The unique identifier for the job.+ id :: Prelude.Text,+ -- | The state of the job.+ state :: State,+ -- | The job type.+ type' :: Type,+ -- | The date and time that the job was last updated, in ISO 8601 format.+ updatedAt :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'JobEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errors', 'jobEntry_errors' - Errors for jobs.+--+-- 'arn', 'jobEntry_arn' - The ARN for the job.+--+-- 'createdAt', 'jobEntry_createdAt' - The date and time that the job was created, in ISO 8601 format.+--+-- 'details', 'jobEntry_details' - Details of the operation to be performed by the job, such as export+-- destination details or import source details.+--+-- 'id', 'jobEntry_id' - The unique identifier for the job.+--+-- 'state', 'jobEntry_state' - The state of the job.+--+-- 'type'', 'jobEntry_type' - The job type.+--+-- 'updatedAt', 'jobEntry_updatedAt' - The date and time that the job was last updated, in ISO 8601 format.+newJobEntry ::+ -- | 'arn'+ Prelude.Text ->+ -- | 'createdAt'+ Prelude.UTCTime ->+ -- | 'details'+ ResponseDetails ->+ -- | 'id'+ Prelude.Text ->+ -- | 'state'+ State ->+ -- | 'type''+ Type ->+ -- | 'updatedAt'+ Prelude.UTCTime ->+ JobEntry+newJobEntry+ pArn_+ pCreatedAt_+ pDetails_+ pId_+ pState_+ pType_+ pUpdatedAt_ =+ JobEntry'+ { errors = Prelude.Nothing,+ arn = pArn_,+ createdAt = Data._Time Lens.# pCreatedAt_,+ details = pDetails_,+ id = pId_,+ state = pState_,+ type' = pType_,+ updatedAt = Data._Time Lens.# pUpdatedAt_+ }++-- | Errors for jobs.+jobEntry_errors :: Lens.Lens' JobEntry (Prelude.Maybe [JobError])+jobEntry_errors = Lens.lens (\JobEntry' {errors} -> errors) (\s@JobEntry' {} a -> s {errors = a} :: JobEntry) Prelude.. Lens.mapping Lens.coerced++-- | The ARN for the job.+jobEntry_arn :: Lens.Lens' JobEntry Prelude.Text+jobEntry_arn = Lens.lens (\JobEntry' {arn} -> arn) (\s@JobEntry' {} a -> s {arn = a} :: JobEntry)++-- | The date and time that the job was created, in ISO 8601 format.+jobEntry_createdAt :: Lens.Lens' JobEntry Prelude.UTCTime+jobEntry_createdAt = Lens.lens (\JobEntry' {createdAt} -> createdAt) (\s@JobEntry' {} a -> s {createdAt = a} :: JobEntry) Prelude.. Data._Time++-- | Details of the operation to be performed by the job, such as export+-- destination details or import source details.+jobEntry_details :: Lens.Lens' JobEntry ResponseDetails+jobEntry_details = Lens.lens (\JobEntry' {details} -> details) (\s@JobEntry' {} a -> s {details = a} :: JobEntry)++-- | The unique identifier for the job.+jobEntry_id :: Lens.Lens' JobEntry Prelude.Text+jobEntry_id = Lens.lens (\JobEntry' {id} -> id) (\s@JobEntry' {} a -> s {id = a} :: JobEntry)++-- | The state of the job.+jobEntry_state :: Lens.Lens' JobEntry State+jobEntry_state = Lens.lens (\JobEntry' {state} -> state) (\s@JobEntry' {} a -> s {state = a} :: JobEntry)++-- | The job type.+jobEntry_type :: Lens.Lens' JobEntry Type+jobEntry_type = Lens.lens (\JobEntry' {type'} -> type') (\s@JobEntry' {} a -> s {type' = a} :: JobEntry)++-- | The date and time that the job was last updated, in ISO 8601 format.+jobEntry_updatedAt :: Lens.Lens' JobEntry Prelude.UTCTime+jobEntry_updatedAt = Lens.lens (\JobEntry' {updatedAt} -> updatedAt) (\s@JobEntry' {} a -> s {updatedAt = a} :: JobEntry) Prelude.. Data._Time++instance Data.FromJSON JobEntry where+ parseJSON =+ Data.withObject+ "JobEntry"+ ( \x ->+ JobEntry'+ Prelude.<$> (x Data..:? "Errors" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "Arn")+ Prelude.<*> (x Data..: "CreatedAt")+ Prelude.<*> (x Data..: "Details")+ Prelude.<*> (x Data..: "Id")+ Prelude.<*> (x Data..: "State")+ Prelude.<*> (x Data..: "Type")+ Prelude.<*> (x Data..: "UpdatedAt")+ )++instance Prelude.Hashable JobEntry where+ hashWithSalt _salt JobEntry' {..} =+ _salt+ `Prelude.hashWithSalt` errors+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` details+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` state+ `Prelude.hashWithSalt` type'+ `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData JobEntry where+ rnf JobEntry' {..} =+ Prelude.rnf errors+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf details+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf type'+ `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/DataExchange/Types/JobError.hs view
@@ -0,0 +1,152 @@+{-# 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.DataExchange.Types.JobError+-- 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.DataExchange.Types.JobError where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.Code+import Amazonka.DataExchange.Types.Details+import Amazonka.DataExchange.Types.JobErrorLimitName+import Amazonka.DataExchange.Types.JobErrorResourceTypes+import qualified Amazonka.Prelude as Prelude++-- | An error that occurred with the job request.+--+-- /See:/ 'newJobError' smart constructor.+data JobError = JobError'+ { -- | The details about the job error.+ details :: Prelude.Maybe Details,+ -- | The name of the limit that was reached.+ limitName :: Prelude.Maybe JobErrorLimitName,+ -- | The value of the exceeded limit.+ limitValue :: Prelude.Maybe Prelude.Double,+ -- | The unique identifier for the resource related to the error.+ resourceId :: Prelude.Maybe Prelude.Text,+ -- | The type of resource related to the error.+ resourceType :: Prelude.Maybe JobErrorResourceTypes,+ -- | The code for the job error.+ code :: Code,+ -- | The message related to the job error.+ message :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'JobError' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'details', 'jobError_details' - The details about the job error.+--+-- 'limitName', 'jobError_limitName' - The name of the limit that was reached.+--+-- 'limitValue', 'jobError_limitValue' - The value of the exceeded limit.+--+-- 'resourceId', 'jobError_resourceId' - The unique identifier for the resource related to the error.+--+-- 'resourceType', 'jobError_resourceType' - The type of resource related to the error.+--+-- 'code', 'jobError_code' - The code for the job error.+--+-- 'message', 'jobError_message' - The message related to the job error.+newJobError ::+ -- | 'code'+ Code ->+ -- | 'message'+ Prelude.Text ->+ JobError+newJobError pCode_ pMessage_ =+ JobError'+ { details = Prelude.Nothing,+ limitName = Prelude.Nothing,+ limitValue = Prelude.Nothing,+ resourceId = Prelude.Nothing,+ resourceType = Prelude.Nothing,+ code = pCode_,+ message = pMessage_+ }++-- | The details about the job error.+jobError_details :: Lens.Lens' JobError (Prelude.Maybe Details)+jobError_details = Lens.lens (\JobError' {details} -> details) (\s@JobError' {} a -> s {details = a} :: JobError)++-- | The name of the limit that was reached.+jobError_limitName :: Lens.Lens' JobError (Prelude.Maybe JobErrorLimitName)+jobError_limitName = Lens.lens (\JobError' {limitName} -> limitName) (\s@JobError' {} a -> s {limitName = a} :: JobError)++-- | The value of the exceeded limit.+jobError_limitValue :: Lens.Lens' JobError (Prelude.Maybe Prelude.Double)+jobError_limitValue = Lens.lens (\JobError' {limitValue} -> limitValue) (\s@JobError' {} a -> s {limitValue = a} :: JobError)++-- | The unique identifier for the resource related to the error.+jobError_resourceId :: Lens.Lens' JobError (Prelude.Maybe Prelude.Text)+jobError_resourceId = Lens.lens (\JobError' {resourceId} -> resourceId) (\s@JobError' {} a -> s {resourceId = a} :: JobError)++-- | The type of resource related to the error.+jobError_resourceType :: Lens.Lens' JobError (Prelude.Maybe JobErrorResourceTypes)+jobError_resourceType = Lens.lens (\JobError' {resourceType} -> resourceType) (\s@JobError' {} a -> s {resourceType = a} :: JobError)++-- | The code for the job error.+jobError_code :: Lens.Lens' JobError Code+jobError_code = Lens.lens (\JobError' {code} -> code) (\s@JobError' {} a -> s {code = a} :: JobError)++-- | The message related to the job error.+jobError_message :: Lens.Lens' JobError Prelude.Text+jobError_message = Lens.lens (\JobError' {message} -> message) (\s@JobError' {} a -> s {message = a} :: JobError)++instance Data.FromJSON JobError where+ parseJSON =+ Data.withObject+ "JobError"+ ( \x ->+ JobError'+ Prelude.<$> (x Data..:? "Details")+ Prelude.<*> (x Data..:? "LimitName")+ Prelude.<*> (x Data..:? "LimitValue")+ Prelude.<*> (x Data..:? "ResourceId")+ Prelude.<*> (x Data..:? "ResourceType")+ Prelude.<*> (x Data..: "Code")+ Prelude.<*> (x Data..: "Message")+ )++instance Prelude.Hashable JobError where+ hashWithSalt _salt JobError' {..} =+ _salt+ `Prelude.hashWithSalt` details+ `Prelude.hashWithSalt` limitName+ `Prelude.hashWithSalt` limitValue+ `Prelude.hashWithSalt` resourceId+ `Prelude.hashWithSalt` resourceType+ `Prelude.hashWithSalt` code+ `Prelude.hashWithSalt` message++instance Prelude.NFData JobError where+ rnf JobError' {..} =+ Prelude.rnf details+ `Prelude.seq` Prelude.rnf limitName+ `Prelude.seq` Prelude.rnf limitValue+ `Prelude.seq` Prelude.rnf resourceId+ `Prelude.seq` Prelude.rnf resourceType+ `Prelude.seq` Prelude.rnf code+ `Prelude.seq` Prelude.rnf message
+ gen/Amazonka/DataExchange/Types/JobErrorLimitName.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.JobErrorLimitName+-- 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.DataExchange.Types.JobErrorLimitName+ ( JobErrorLimitName+ ( ..,+ JobErrorLimitName_AWS_Lake_Formation_data_permission_assets_per_revision,+ JobErrorLimitName_Amazon_Redshift_datashare_assets_per_revision,+ JobErrorLimitName_Amazon_S3_data_access_assets_per_revision,+ JobErrorLimitName_Asset_size_in_GB,+ JobErrorLimitName_Assets_per_revision+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype JobErrorLimitName = JobErrorLimitName'+ { fromJobErrorLimitName ::+ 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 JobErrorLimitName_AWS_Lake_Formation_data_permission_assets_per_revision :: JobErrorLimitName+pattern JobErrorLimitName_AWS_Lake_Formation_data_permission_assets_per_revision = JobErrorLimitName' "AWS Lake Formation data permission assets per revision"++pattern JobErrorLimitName_Amazon_Redshift_datashare_assets_per_revision :: JobErrorLimitName+pattern JobErrorLimitName_Amazon_Redshift_datashare_assets_per_revision = JobErrorLimitName' "Amazon Redshift datashare assets per revision"++pattern JobErrorLimitName_Amazon_S3_data_access_assets_per_revision :: JobErrorLimitName+pattern JobErrorLimitName_Amazon_S3_data_access_assets_per_revision = JobErrorLimitName' "Amazon S3 data access assets per revision"++pattern JobErrorLimitName_Asset_size_in_GB :: JobErrorLimitName+pattern JobErrorLimitName_Asset_size_in_GB = JobErrorLimitName' "Asset size in GB"++pattern JobErrorLimitName_Assets_per_revision :: JobErrorLimitName+pattern JobErrorLimitName_Assets_per_revision = JobErrorLimitName' "Assets per revision"++{-# COMPLETE+ JobErrorLimitName_AWS_Lake_Formation_data_permission_assets_per_revision,+ JobErrorLimitName_Amazon_Redshift_datashare_assets_per_revision,+ JobErrorLimitName_Amazon_S3_data_access_assets_per_revision,+ JobErrorLimitName_Asset_size_in_GB,+ JobErrorLimitName_Assets_per_revision,+ JobErrorLimitName'+ #-}
+ gen/Amazonka/DataExchange/Types/JobErrorResourceTypes.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.DataExchange.Types.JobErrorResourceTypes+-- 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.DataExchange.Types.JobErrorResourceTypes+ ( JobErrorResourceTypes+ ( ..,+ JobErrorResourceTypes_ASSET,+ JobErrorResourceTypes_DATA_SET,+ JobErrorResourceTypes_REVISION+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype JobErrorResourceTypes = JobErrorResourceTypes'+ { fromJobErrorResourceTypes ::+ 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 JobErrorResourceTypes_ASSET :: JobErrorResourceTypes+pattern JobErrorResourceTypes_ASSET = JobErrorResourceTypes' "ASSET"++pattern JobErrorResourceTypes_DATA_SET :: JobErrorResourceTypes+pattern JobErrorResourceTypes_DATA_SET = JobErrorResourceTypes' "DATA_SET"++pattern JobErrorResourceTypes_REVISION :: JobErrorResourceTypes+pattern JobErrorResourceTypes_REVISION = JobErrorResourceTypes' "REVISION"++{-# COMPLETE+ JobErrorResourceTypes_ASSET,+ JobErrorResourceTypes_DATA_SET,+ JobErrorResourceTypes_REVISION,+ JobErrorResourceTypes'+ #-}
+ gen/Amazonka/DataExchange/Types/LFPermission.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.DataExchange.Types.LFPermission+-- 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.DataExchange.Types.LFPermission+ ( LFPermission+ ( ..,+ LFPermission_DESCRIBE,+ LFPermission_SELECT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LFPermission = LFPermission'+ { fromLFPermission ::+ 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 LFPermission_DESCRIBE :: LFPermission+pattern LFPermission_DESCRIBE = LFPermission' "DESCRIBE"++pattern LFPermission_SELECT :: LFPermission+pattern LFPermission_SELECT = LFPermission' "SELECT"++{-# COMPLETE+ LFPermission_DESCRIBE,+ LFPermission_SELECT,+ LFPermission'+ #-}
+ gen/Amazonka/DataExchange/Types/LFResourceDetails.hs view
@@ -0,0 +1,93 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.LFResourceDetails+-- 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.DataExchange.Types.LFResourceDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.DatabaseLFTagPolicy+import Amazonka.DataExchange.Types.TableLFTagPolicy+import qualified Amazonka.Prelude as Prelude++-- | Details about the AWS Lake Formation resource (Table or Database)+-- included in the AWS Lake Formation data permission.+--+-- /See:/ 'newLFResourceDetails' smart constructor.+data LFResourceDetails = LFResourceDetails'+ { -- | Details about the database resource included in the AWS Lake Formation+ -- data permission.+ database :: Prelude.Maybe DatabaseLFTagPolicy,+ -- | Details about the table resource included in the AWS Lake Formation data+ -- permission.+ table :: Prelude.Maybe TableLFTagPolicy+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LFResourceDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'database', 'lFResourceDetails_database' - Details about the database resource included in the AWS Lake Formation+-- data permission.+--+-- 'table', 'lFResourceDetails_table' - Details about the table resource included in the AWS Lake Formation data+-- permission.+newLFResourceDetails ::+ LFResourceDetails+newLFResourceDetails =+ LFResourceDetails'+ { database = Prelude.Nothing,+ table = Prelude.Nothing+ }++-- | Details about the database resource included in the AWS Lake Formation+-- data permission.+lFResourceDetails_database :: Lens.Lens' LFResourceDetails (Prelude.Maybe DatabaseLFTagPolicy)+lFResourceDetails_database = Lens.lens (\LFResourceDetails' {database} -> database) (\s@LFResourceDetails' {} a -> s {database = a} :: LFResourceDetails)++-- | Details about the table resource included in the AWS Lake Formation data+-- permission.+lFResourceDetails_table :: Lens.Lens' LFResourceDetails (Prelude.Maybe TableLFTagPolicy)+lFResourceDetails_table = Lens.lens (\LFResourceDetails' {table} -> table) (\s@LFResourceDetails' {} a -> s {table = a} :: LFResourceDetails)++instance Data.FromJSON LFResourceDetails where+ parseJSON =+ Data.withObject+ "LFResourceDetails"+ ( \x ->+ LFResourceDetails'+ Prelude.<$> (x Data..:? "Database")+ Prelude.<*> (x Data..:? "Table")+ )++instance Prelude.Hashable LFResourceDetails where+ hashWithSalt _salt LFResourceDetails' {..} =+ _salt+ `Prelude.hashWithSalt` database+ `Prelude.hashWithSalt` table++instance Prelude.NFData LFResourceDetails where+ rnf LFResourceDetails' {..} =+ Prelude.rnf database+ `Prelude.seq` Prelude.rnf table
+ gen/Amazonka/DataExchange/Types/LFResourceType.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.DataExchange.Types.LFResourceType+-- 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.DataExchange.Types.LFResourceType+ ( LFResourceType+ ( ..,+ LFResourceType_DATABASE,+ LFResourceType_TABLE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LFResourceType = LFResourceType'+ { fromLFResourceType ::+ 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 LFResourceType_DATABASE :: LFResourceType+pattern LFResourceType_DATABASE = LFResourceType' "DATABASE"++pattern LFResourceType_TABLE :: LFResourceType+pattern LFResourceType_TABLE = LFResourceType' "TABLE"++{-# COMPLETE+ LFResourceType_DATABASE,+ LFResourceType_TABLE,+ LFResourceType'+ #-}
+ gen/Amazonka/DataExchange/Types/LFTag.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.LFTag+-- 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.DataExchange.Types.LFTag 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 structure that allows an LF-admin to grant permissions on certain+-- conditions.+--+-- /See:/ 'newLFTag' smart constructor.+data LFTag = LFTag'+ { -- | The key name for the LF-tag.+ tagKey :: Prelude.Text,+ -- | A list of LF-tag values.+ tagValues :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LFTag' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tagKey', 'lFTag_tagKey' - The key name for the LF-tag.+--+-- 'tagValues', 'lFTag_tagValues' - A list of LF-tag values.+newLFTag ::+ -- | 'tagKey'+ Prelude.Text ->+ LFTag+newLFTag pTagKey_ =+ LFTag'+ { tagKey = pTagKey_,+ tagValues = Prelude.mempty+ }++-- | The key name for the LF-tag.+lFTag_tagKey :: Lens.Lens' LFTag Prelude.Text+lFTag_tagKey = Lens.lens (\LFTag' {tagKey} -> tagKey) (\s@LFTag' {} a -> s {tagKey = a} :: LFTag)++-- | A list of LF-tag values.+lFTag_tagValues :: Lens.Lens' LFTag [Prelude.Text]+lFTag_tagValues = Lens.lens (\LFTag' {tagValues} -> tagValues) (\s@LFTag' {} a -> s {tagValues = a} :: LFTag) Prelude.. Lens.coerced++instance Data.FromJSON LFTag where+ parseJSON =+ Data.withObject+ "LFTag"+ ( \x ->+ LFTag'+ Prelude.<$> (x Data..: "TagKey")+ Prelude.<*> (x Data..:? "TagValues" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable LFTag where+ hashWithSalt _salt LFTag' {..} =+ _salt+ `Prelude.hashWithSalt` tagKey+ `Prelude.hashWithSalt` tagValues++instance Prelude.NFData LFTag where+ rnf LFTag' {..} =+ Prelude.rnf tagKey+ `Prelude.seq` Prelude.rnf tagValues++instance Data.ToJSON LFTag where+ toJSON LFTag' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("TagKey" Data..= tagKey),+ Prelude.Just ("TagValues" Data..= tagValues)+ ]+ )
+ gen/Amazonka/DataExchange/Types/LFTagPolicyDetails.hs view
@@ -0,0 +1,107 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.LFTagPolicyDetails+-- 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.DataExchange.Types.LFTagPolicyDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.LFResourceDetails+import Amazonka.DataExchange.Types.LFResourceType+import qualified Amazonka.Prelude as Prelude++-- | Details about the LF-tag policy.+--+-- /See:/ 'newLFTagPolicyDetails' smart constructor.+data LFTagPolicyDetails = LFTagPolicyDetails'+ { -- | The identifier for the AWS Glue Data Catalog.+ catalogId :: Prelude.Text,+ -- | The resource type for which the LF-tag policy applies.+ resourceType :: LFResourceType,+ -- | Details for the Lake Formation Resources included in the LF-tag policy.+ resourceDetails :: LFResourceDetails+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LFTagPolicyDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'catalogId', 'lFTagPolicyDetails_catalogId' - The identifier for the AWS Glue Data Catalog.+--+-- 'resourceType', 'lFTagPolicyDetails_resourceType' - The resource type for which the LF-tag policy applies.+--+-- 'resourceDetails', 'lFTagPolicyDetails_resourceDetails' - Details for the Lake Formation Resources included in the LF-tag policy.+newLFTagPolicyDetails ::+ -- | 'catalogId'+ Prelude.Text ->+ -- | 'resourceType'+ LFResourceType ->+ -- | 'resourceDetails'+ LFResourceDetails ->+ LFTagPolicyDetails+newLFTagPolicyDetails+ pCatalogId_+ pResourceType_+ pResourceDetails_ =+ LFTagPolicyDetails'+ { catalogId = pCatalogId_,+ resourceType = pResourceType_,+ resourceDetails = pResourceDetails_+ }++-- | The identifier for the AWS Glue Data Catalog.+lFTagPolicyDetails_catalogId :: Lens.Lens' LFTagPolicyDetails Prelude.Text+lFTagPolicyDetails_catalogId = Lens.lens (\LFTagPolicyDetails' {catalogId} -> catalogId) (\s@LFTagPolicyDetails' {} a -> s {catalogId = a} :: LFTagPolicyDetails)++-- | The resource type for which the LF-tag policy applies.+lFTagPolicyDetails_resourceType :: Lens.Lens' LFTagPolicyDetails LFResourceType+lFTagPolicyDetails_resourceType = Lens.lens (\LFTagPolicyDetails' {resourceType} -> resourceType) (\s@LFTagPolicyDetails' {} a -> s {resourceType = a} :: LFTagPolicyDetails)++-- | Details for the Lake Formation Resources included in the LF-tag policy.+lFTagPolicyDetails_resourceDetails :: Lens.Lens' LFTagPolicyDetails LFResourceDetails+lFTagPolicyDetails_resourceDetails = Lens.lens (\LFTagPolicyDetails' {resourceDetails} -> resourceDetails) (\s@LFTagPolicyDetails' {} a -> s {resourceDetails = a} :: LFTagPolicyDetails)++instance Data.FromJSON LFTagPolicyDetails where+ parseJSON =+ Data.withObject+ "LFTagPolicyDetails"+ ( \x ->+ LFTagPolicyDetails'+ Prelude.<$> (x Data..: "CatalogId")+ Prelude.<*> (x Data..: "ResourceType")+ Prelude.<*> (x Data..: "ResourceDetails")+ )++instance Prelude.Hashable LFTagPolicyDetails where+ hashWithSalt _salt LFTagPolicyDetails' {..} =+ _salt+ `Prelude.hashWithSalt` catalogId+ `Prelude.hashWithSalt` resourceType+ `Prelude.hashWithSalt` resourceDetails++instance Prelude.NFData LFTagPolicyDetails where+ rnf LFTagPolicyDetails' {..} =+ Prelude.rnf catalogId+ `Prelude.seq` Prelude.rnf resourceType+ `Prelude.seq` Prelude.rnf resourceDetails
+ gen/Amazonka/DataExchange/Types/LakeFormationDataPermissionAsset.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.DataExchange.Types.LakeFormationDataPermissionAsset+-- 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.DataExchange.Types.LakeFormationDataPermissionAsset where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.LFPermission+import Amazonka.DataExchange.Types.LakeFormationDataPermissionDetails+import Amazonka.DataExchange.Types.LakeFormationDataPermissionType+import qualified Amazonka.Prelude as Prelude++-- | The AWS Lake Formation data permission asset.+--+-- /See:/ 'newLakeFormationDataPermissionAsset' smart constructor.+data LakeFormationDataPermissionAsset = LakeFormationDataPermissionAsset'+ { -- | The IAM role\'s ARN that allows AWS Data Exchange to assume the role and+ -- grant and revoke permissions to AWS Lake Formation data permissions.+ roleArn :: Prelude.Maybe Prelude.Text,+ -- | Details about the AWS Lake Formation data permission.+ lakeFormationDataPermissionDetails :: LakeFormationDataPermissionDetails,+ -- | The data permission type.+ lakeFormationDataPermissionType :: LakeFormationDataPermissionType,+ -- | The permissions granted to the subscribers on the resource.+ permissions :: [LFPermission]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LakeFormationDataPermissionAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleArn', 'lakeFormationDataPermissionAsset_roleArn' - The IAM role\'s ARN that allows AWS Data Exchange to assume the role and+-- grant and revoke permissions to AWS Lake Formation data permissions.+--+-- 'lakeFormationDataPermissionDetails', 'lakeFormationDataPermissionAsset_lakeFormationDataPermissionDetails' - Details about the AWS Lake Formation data permission.+--+-- 'lakeFormationDataPermissionType', 'lakeFormationDataPermissionAsset_lakeFormationDataPermissionType' - The data permission type.+--+-- 'permissions', 'lakeFormationDataPermissionAsset_permissions' - The permissions granted to the subscribers on the resource.+newLakeFormationDataPermissionAsset ::+ -- | 'lakeFormationDataPermissionDetails'+ LakeFormationDataPermissionDetails ->+ -- | 'lakeFormationDataPermissionType'+ LakeFormationDataPermissionType ->+ LakeFormationDataPermissionAsset+newLakeFormationDataPermissionAsset+ pLakeFormationDataPermissionDetails_+ pLakeFormationDataPermissionType_ =+ LakeFormationDataPermissionAsset'+ { roleArn =+ Prelude.Nothing,+ lakeFormationDataPermissionDetails =+ pLakeFormationDataPermissionDetails_,+ lakeFormationDataPermissionType =+ pLakeFormationDataPermissionType_,+ permissions = Prelude.mempty+ }++-- | The IAM role\'s ARN that allows AWS Data Exchange to assume the role and+-- grant and revoke permissions to AWS Lake Formation data permissions.+lakeFormationDataPermissionAsset_roleArn :: Lens.Lens' LakeFormationDataPermissionAsset (Prelude.Maybe Prelude.Text)+lakeFormationDataPermissionAsset_roleArn = Lens.lens (\LakeFormationDataPermissionAsset' {roleArn} -> roleArn) (\s@LakeFormationDataPermissionAsset' {} a -> s {roleArn = a} :: LakeFormationDataPermissionAsset)++-- | Details about the AWS Lake Formation data permission.+lakeFormationDataPermissionAsset_lakeFormationDataPermissionDetails :: Lens.Lens' LakeFormationDataPermissionAsset LakeFormationDataPermissionDetails+lakeFormationDataPermissionAsset_lakeFormationDataPermissionDetails = Lens.lens (\LakeFormationDataPermissionAsset' {lakeFormationDataPermissionDetails} -> lakeFormationDataPermissionDetails) (\s@LakeFormationDataPermissionAsset' {} a -> s {lakeFormationDataPermissionDetails = a} :: LakeFormationDataPermissionAsset)++-- | The data permission type.+lakeFormationDataPermissionAsset_lakeFormationDataPermissionType :: Lens.Lens' LakeFormationDataPermissionAsset LakeFormationDataPermissionType+lakeFormationDataPermissionAsset_lakeFormationDataPermissionType = Lens.lens (\LakeFormationDataPermissionAsset' {lakeFormationDataPermissionType} -> lakeFormationDataPermissionType) (\s@LakeFormationDataPermissionAsset' {} a -> s {lakeFormationDataPermissionType = a} :: LakeFormationDataPermissionAsset)++-- | The permissions granted to the subscribers on the resource.+lakeFormationDataPermissionAsset_permissions :: Lens.Lens' LakeFormationDataPermissionAsset [LFPermission]+lakeFormationDataPermissionAsset_permissions = Lens.lens (\LakeFormationDataPermissionAsset' {permissions} -> permissions) (\s@LakeFormationDataPermissionAsset' {} a -> s {permissions = a} :: LakeFormationDataPermissionAsset) Prelude.. Lens.coerced++instance+ Data.FromJSON+ LakeFormationDataPermissionAsset+ where+ parseJSON =+ Data.withObject+ "LakeFormationDataPermissionAsset"+ ( \x ->+ LakeFormationDataPermissionAsset'+ Prelude.<$> (x Data..:? "RoleArn")+ Prelude.<*> (x Data..: "LakeFormationDataPermissionDetails")+ Prelude.<*> (x Data..: "LakeFormationDataPermissionType")+ Prelude.<*> (x Data..:? "Permissions" Data..!= Prelude.mempty)+ )++instance+ Prelude.Hashable+ LakeFormationDataPermissionAsset+ where+ hashWithSalt+ _salt+ LakeFormationDataPermissionAsset' {..} =+ _salt+ `Prelude.hashWithSalt` roleArn+ `Prelude.hashWithSalt` lakeFormationDataPermissionDetails+ `Prelude.hashWithSalt` lakeFormationDataPermissionType+ `Prelude.hashWithSalt` permissions++instance+ Prelude.NFData+ LakeFormationDataPermissionAsset+ where+ rnf LakeFormationDataPermissionAsset' {..} =+ Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf lakeFormationDataPermissionDetails+ `Prelude.seq` Prelude.rnf lakeFormationDataPermissionType+ `Prelude.seq` Prelude.rnf permissions
+ gen/Amazonka/DataExchange/Types/LakeFormationDataPermissionDetails.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.LakeFormationDataPermissionDetails+-- 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.DataExchange.Types.LakeFormationDataPermissionDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.LFTagPolicyDetails+import qualified Amazonka.Prelude as Prelude++-- | Details about the AWS Lake Formation data permission.+--+-- /See:/ 'newLakeFormationDataPermissionDetails' smart constructor.+data LakeFormationDataPermissionDetails = LakeFormationDataPermissionDetails'+ { -- | Details about the LF-tag policy.+ lFTagPolicy :: Prelude.Maybe LFTagPolicyDetails+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LakeFormationDataPermissionDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'lFTagPolicy', 'lakeFormationDataPermissionDetails_lFTagPolicy' - Details about the LF-tag policy.+newLakeFormationDataPermissionDetails ::+ LakeFormationDataPermissionDetails+newLakeFormationDataPermissionDetails =+ LakeFormationDataPermissionDetails'+ { lFTagPolicy =+ Prelude.Nothing+ }++-- | Details about the LF-tag policy.+lakeFormationDataPermissionDetails_lFTagPolicy :: Lens.Lens' LakeFormationDataPermissionDetails (Prelude.Maybe LFTagPolicyDetails)+lakeFormationDataPermissionDetails_lFTagPolicy = Lens.lens (\LakeFormationDataPermissionDetails' {lFTagPolicy} -> lFTagPolicy) (\s@LakeFormationDataPermissionDetails' {} a -> s {lFTagPolicy = a} :: LakeFormationDataPermissionDetails)++instance+ Data.FromJSON+ LakeFormationDataPermissionDetails+ where+ parseJSON =+ Data.withObject+ "LakeFormationDataPermissionDetails"+ ( \x ->+ LakeFormationDataPermissionDetails'+ Prelude.<$> (x Data..:? "LFTagPolicy")+ )++instance+ Prelude.Hashable+ LakeFormationDataPermissionDetails+ where+ hashWithSalt+ _salt+ LakeFormationDataPermissionDetails' {..} =+ _salt `Prelude.hashWithSalt` lFTagPolicy++instance+ Prelude.NFData+ LakeFormationDataPermissionDetails+ where+ rnf LakeFormationDataPermissionDetails' {..} =+ Prelude.rnf lFTagPolicy
+ gen/Amazonka/DataExchange/Types/LakeFormationDataPermissionType.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.DataExchange.Types.LakeFormationDataPermissionType+-- 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.DataExchange.Types.LakeFormationDataPermissionType+ ( LakeFormationDataPermissionType+ ( ..,+ LakeFormationDataPermissionType_LFTagPolicy+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LakeFormationDataPermissionType = LakeFormationDataPermissionType'+ { fromLakeFormationDataPermissionType ::+ 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 LakeFormationDataPermissionType_LFTagPolicy :: LakeFormationDataPermissionType+pattern LakeFormationDataPermissionType_LFTagPolicy = LakeFormationDataPermissionType' "LFTagPolicy"++{-# COMPLETE+ LakeFormationDataPermissionType_LFTagPolicy,+ LakeFormationDataPermissionType'+ #-}
+ gen/Amazonka/DataExchange/Types/Origin.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.Origin+-- 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.DataExchange.Types.Origin+ ( Origin+ ( ..,+ Origin_ENTITLED,+ Origin_OWNED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Origin = Origin' {fromOrigin :: 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 Origin_ENTITLED :: Origin+pattern Origin_ENTITLED = Origin' "ENTITLED"++pattern Origin_OWNED :: Origin+pattern Origin_OWNED = Origin' "OWNED"++{-# COMPLETE+ Origin_ENTITLED,+ Origin_OWNED,+ Origin'+ #-}
+ gen/Amazonka/DataExchange/Types/OriginDetails.hs view
@@ -0,0 +1,69 @@+{-# 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.DataExchange.Types.OriginDetails+-- 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.DataExchange.Types.OriginDetails 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 the origin of the data set.+--+-- /See:/ 'newOriginDetails' smart constructor.+data OriginDetails = OriginDetails'+ { -- | The product ID of the origin of the data set.+ productId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OriginDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'productId', 'originDetails_productId' - The product ID of the origin of the data set.+newOriginDetails ::+ -- | 'productId'+ Prelude.Text ->+ OriginDetails+newOriginDetails pProductId_ =+ OriginDetails' {productId = pProductId_}++-- | The product ID of the origin of the data set.+originDetails_productId :: Lens.Lens' OriginDetails Prelude.Text+originDetails_productId = Lens.lens (\OriginDetails' {productId} -> productId) (\s@OriginDetails' {} a -> s {productId = a} :: OriginDetails)++instance Data.FromJSON OriginDetails where+ parseJSON =+ Data.withObject+ "OriginDetails"+ ( \x ->+ OriginDetails' Prelude.<$> (x Data..: "ProductId")+ )++instance Prelude.Hashable OriginDetails where+ hashWithSalt _salt OriginDetails' {..} =+ _salt `Prelude.hashWithSalt` productId++instance Prelude.NFData OriginDetails where+ rnf OriginDetails' {..} = Prelude.rnf productId
+ gen/Amazonka/DataExchange/Types/ProtocolType.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.DataExchange.Types.ProtocolType+-- 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.DataExchange.Types.ProtocolType+ ( ProtocolType+ ( ..,+ ProtocolType_REST+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ProtocolType = ProtocolType'+ { fromProtocolType ::+ 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 ProtocolType_REST :: ProtocolType+pattern ProtocolType_REST = ProtocolType' "REST"++{-# COMPLETE+ ProtocolType_REST,+ ProtocolType'+ #-}
@@ -0,0 +1,70 @@+{-# 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.DataExchange.Types.RedshiftDataShareAsset+-- 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.DataExchange.Types.RedshiftDataShareAsset where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The Amazon Redshift datashare asset.+--+-- /See:/ 'newRedshiftDataShareAsset' smart constructor.+data RedshiftDataShareAsset = RedshiftDataShareAsset'+ { -- | The Amazon Resource Name (ARN) of the datashare asset.+ arn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RedshiftDataShareAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'redshiftDataShareAsset_arn' - The Amazon Resource Name (ARN) of the datashare asset.+newRedshiftDataShareAsset ::+ -- | 'arn'+ Prelude.Text ->+ RedshiftDataShareAsset+newRedshiftDataShareAsset pArn_ =+ RedshiftDataShareAsset' {arn = pArn_}++-- | The Amazon Resource Name (ARN) of the datashare asset.+redshiftDataShareAsset_arn :: Lens.Lens' RedshiftDataShareAsset Prelude.Text+redshiftDataShareAsset_arn = Lens.lens (\RedshiftDataShareAsset' {arn} -> arn) (\s@RedshiftDataShareAsset' {} a -> s {arn = a} :: RedshiftDataShareAsset)++instance Data.FromJSON RedshiftDataShareAsset where+ parseJSON =+ Data.withObject+ "RedshiftDataShareAsset"+ ( \x ->+ RedshiftDataShareAsset'+ Prelude.<$> (x Data..: "Arn")+ )++instance Prelude.Hashable RedshiftDataShareAsset where+ hashWithSalt _salt RedshiftDataShareAsset' {..} =+ _salt `Prelude.hashWithSalt` arn++instance Prelude.NFData RedshiftDataShareAsset where+ rnf RedshiftDataShareAsset' {..} = Prelude.rnf arn
@@ -0,0 +1,95 @@+{-# 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.DataExchange.Types.RedshiftDataShareAssetSourceEntry+-- 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.DataExchange.Types.RedshiftDataShareAssetSourceEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The source of the Amazon Redshift datashare asset.+--+-- /See:/ 'newRedshiftDataShareAssetSourceEntry' smart constructor.+data RedshiftDataShareAssetSourceEntry = RedshiftDataShareAssetSourceEntry'+ { -- | The Amazon Resource Name (ARN) of the datashare asset.+ dataShareArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RedshiftDataShareAssetSourceEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataShareArn', 'redshiftDataShareAssetSourceEntry_dataShareArn' - The Amazon Resource Name (ARN) of the datashare asset.+newRedshiftDataShareAssetSourceEntry ::+ -- | 'dataShareArn'+ Prelude.Text ->+ RedshiftDataShareAssetSourceEntry+newRedshiftDataShareAssetSourceEntry pDataShareArn_ =+ RedshiftDataShareAssetSourceEntry'+ { dataShareArn =+ pDataShareArn_+ }++-- | The Amazon Resource Name (ARN) of the datashare asset.+redshiftDataShareAssetSourceEntry_dataShareArn :: Lens.Lens' RedshiftDataShareAssetSourceEntry Prelude.Text+redshiftDataShareAssetSourceEntry_dataShareArn = Lens.lens (\RedshiftDataShareAssetSourceEntry' {dataShareArn} -> dataShareArn) (\s@RedshiftDataShareAssetSourceEntry' {} a -> s {dataShareArn = a} :: RedshiftDataShareAssetSourceEntry)++instance+ Data.FromJSON+ RedshiftDataShareAssetSourceEntry+ where+ parseJSON =+ Data.withObject+ "RedshiftDataShareAssetSourceEntry"+ ( \x ->+ RedshiftDataShareAssetSourceEntry'+ Prelude.<$> (x Data..: "DataShareArn")+ )++instance+ Prelude.Hashable+ RedshiftDataShareAssetSourceEntry+ where+ hashWithSalt+ _salt+ RedshiftDataShareAssetSourceEntry' {..} =+ _salt `Prelude.hashWithSalt` dataShareArn++instance+ Prelude.NFData+ RedshiftDataShareAssetSourceEntry+ where+ rnf RedshiftDataShareAssetSourceEntry' {..} =+ Prelude.rnf dataShareArn++instance+ Data.ToJSON+ RedshiftDataShareAssetSourceEntry+ where+ toJSON RedshiftDataShareAssetSourceEntry' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("DataShareArn" Data..= dataShareArn)]+ )
+ gen/Amazonka/DataExchange/Types/RequestDetails.hs view
@@ -0,0 +1,190 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.RequestDetails+-- 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.DataExchange.Types.RequestDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.CreateS3DataAccessFromS3BucketRequestDetails+import Amazonka.DataExchange.Types.ExportAssetToSignedUrlRequestDetails+import Amazonka.DataExchange.Types.ExportAssetsToS3RequestDetails+import Amazonka.DataExchange.Types.ExportRevisionsToS3RequestDetails+import Amazonka.DataExchange.Types.ImportAssetFromApiGatewayApiRequestDetails+import Amazonka.DataExchange.Types.ImportAssetFromSignedUrlRequestDetails+import Amazonka.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyRequestDetails+import Amazonka.DataExchange.Types.ImportAssetsFromRedshiftDataSharesRequestDetails+import Amazonka.DataExchange.Types.ImportAssetsFromS3RequestDetails+import qualified Amazonka.Prelude as Prelude++-- | The details for the request.+--+-- /See:/ 'newRequestDetails' smart constructor.+data RequestDetails = RequestDetails'+ { -- | Details of the request to create S3 data access from the Amazon S3+ -- bucket.+ createS3DataAccessFromS3Bucket :: Prelude.Maybe CreateS3DataAccessFromS3BucketRequestDetails,+ -- | Details about the export to signed URL request.+ exportAssetToSignedUrl :: Prelude.Maybe ExportAssetToSignedUrlRequestDetails,+ -- | Details about the export to Amazon S3 request.+ exportAssetsToS3 :: Prelude.Maybe ExportAssetsToS3RequestDetails,+ -- | Details about the export to Amazon S3 request.+ exportRevisionsToS3 :: Prelude.Maybe ExportRevisionsToS3RequestDetails,+ -- | Details about the import from signed URL request.+ importAssetFromApiGatewayApi :: Prelude.Maybe ImportAssetFromApiGatewayApiRequestDetails,+ -- | Details about the import from Amazon S3 request.+ importAssetFromSignedUrl :: Prelude.Maybe ImportAssetFromSignedUrlRequestDetails,+ -- | Request details for the ImportAssetsFromLakeFormationTagPolicy job.+ importAssetsFromLakeFormationTagPolicy :: Prelude.Maybe ImportAssetsFromLakeFormationTagPolicyRequestDetails,+ -- | Details from an import from Amazon Redshift datashare request.+ importAssetsFromRedshiftDataShares :: Prelude.Maybe ImportAssetsFromRedshiftDataSharesRequestDetails,+ -- | Details about the import asset from API Gateway API request.+ importAssetsFromS3 :: Prelude.Maybe ImportAssetsFromS3RequestDetails+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RequestDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createS3DataAccessFromS3Bucket', 'requestDetails_createS3DataAccessFromS3Bucket' - Details of the request to create S3 data access from the Amazon S3+-- bucket.+--+-- 'exportAssetToSignedUrl', 'requestDetails_exportAssetToSignedUrl' - Details about the export to signed URL request.+--+-- 'exportAssetsToS3', 'requestDetails_exportAssetsToS3' - Details about the export to Amazon S3 request.+--+-- 'exportRevisionsToS3', 'requestDetails_exportRevisionsToS3' - Details about the export to Amazon S3 request.+--+-- 'importAssetFromApiGatewayApi', 'requestDetails_importAssetFromApiGatewayApi' - Details about the import from signed URL request.+--+-- 'importAssetFromSignedUrl', 'requestDetails_importAssetFromSignedUrl' - Details about the import from Amazon S3 request.+--+-- 'importAssetsFromLakeFormationTagPolicy', 'requestDetails_importAssetsFromLakeFormationTagPolicy' - Request details for the ImportAssetsFromLakeFormationTagPolicy job.+--+-- 'importAssetsFromRedshiftDataShares', 'requestDetails_importAssetsFromRedshiftDataShares' - Details from an import from Amazon Redshift datashare request.+--+-- 'importAssetsFromS3', 'requestDetails_importAssetsFromS3' - Details about the import asset from API Gateway API request.+newRequestDetails ::+ RequestDetails+newRequestDetails =+ RequestDetails'+ { createS3DataAccessFromS3Bucket =+ Prelude.Nothing,+ exportAssetToSignedUrl = Prelude.Nothing,+ exportAssetsToS3 = Prelude.Nothing,+ exportRevisionsToS3 = Prelude.Nothing,+ importAssetFromApiGatewayApi = Prelude.Nothing,+ importAssetFromSignedUrl = Prelude.Nothing,+ importAssetsFromLakeFormationTagPolicy =+ Prelude.Nothing,+ importAssetsFromRedshiftDataShares = Prelude.Nothing,+ importAssetsFromS3 = Prelude.Nothing+ }++-- | Details of the request to create S3 data access from the Amazon S3+-- bucket.+requestDetails_createS3DataAccessFromS3Bucket :: Lens.Lens' RequestDetails (Prelude.Maybe CreateS3DataAccessFromS3BucketRequestDetails)+requestDetails_createS3DataAccessFromS3Bucket = Lens.lens (\RequestDetails' {createS3DataAccessFromS3Bucket} -> createS3DataAccessFromS3Bucket) (\s@RequestDetails' {} a -> s {createS3DataAccessFromS3Bucket = a} :: RequestDetails)++-- | Details about the export to signed URL request.+requestDetails_exportAssetToSignedUrl :: Lens.Lens' RequestDetails (Prelude.Maybe ExportAssetToSignedUrlRequestDetails)+requestDetails_exportAssetToSignedUrl = Lens.lens (\RequestDetails' {exportAssetToSignedUrl} -> exportAssetToSignedUrl) (\s@RequestDetails' {} a -> s {exportAssetToSignedUrl = a} :: RequestDetails)++-- | Details about the export to Amazon S3 request.+requestDetails_exportAssetsToS3 :: Lens.Lens' RequestDetails (Prelude.Maybe ExportAssetsToS3RequestDetails)+requestDetails_exportAssetsToS3 = Lens.lens (\RequestDetails' {exportAssetsToS3} -> exportAssetsToS3) (\s@RequestDetails' {} a -> s {exportAssetsToS3 = a} :: RequestDetails)++-- | Details about the export to Amazon S3 request.+requestDetails_exportRevisionsToS3 :: Lens.Lens' RequestDetails (Prelude.Maybe ExportRevisionsToS3RequestDetails)+requestDetails_exportRevisionsToS3 = Lens.lens (\RequestDetails' {exportRevisionsToS3} -> exportRevisionsToS3) (\s@RequestDetails' {} a -> s {exportRevisionsToS3 = a} :: RequestDetails)++-- | Details about the import from signed URL request.+requestDetails_importAssetFromApiGatewayApi :: Lens.Lens' RequestDetails (Prelude.Maybe ImportAssetFromApiGatewayApiRequestDetails)+requestDetails_importAssetFromApiGatewayApi = Lens.lens (\RequestDetails' {importAssetFromApiGatewayApi} -> importAssetFromApiGatewayApi) (\s@RequestDetails' {} a -> s {importAssetFromApiGatewayApi = a} :: RequestDetails)++-- | Details about the import from Amazon S3 request.+requestDetails_importAssetFromSignedUrl :: Lens.Lens' RequestDetails (Prelude.Maybe ImportAssetFromSignedUrlRequestDetails)+requestDetails_importAssetFromSignedUrl = Lens.lens (\RequestDetails' {importAssetFromSignedUrl} -> importAssetFromSignedUrl) (\s@RequestDetails' {} a -> s {importAssetFromSignedUrl = a} :: RequestDetails)++-- | Request details for the ImportAssetsFromLakeFormationTagPolicy job.+requestDetails_importAssetsFromLakeFormationTagPolicy :: Lens.Lens' RequestDetails (Prelude.Maybe ImportAssetsFromLakeFormationTagPolicyRequestDetails)+requestDetails_importAssetsFromLakeFormationTagPolicy = Lens.lens (\RequestDetails' {importAssetsFromLakeFormationTagPolicy} -> importAssetsFromLakeFormationTagPolicy) (\s@RequestDetails' {} a -> s {importAssetsFromLakeFormationTagPolicy = a} :: RequestDetails)++-- | Details from an import from Amazon Redshift datashare request.+requestDetails_importAssetsFromRedshiftDataShares :: Lens.Lens' RequestDetails (Prelude.Maybe ImportAssetsFromRedshiftDataSharesRequestDetails)+requestDetails_importAssetsFromRedshiftDataShares = Lens.lens (\RequestDetails' {importAssetsFromRedshiftDataShares} -> importAssetsFromRedshiftDataShares) (\s@RequestDetails' {} a -> s {importAssetsFromRedshiftDataShares = a} :: RequestDetails)++-- | Details about the import asset from API Gateway API request.+requestDetails_importAssetsFromS3 :: Lens.Lens' RequestDetails (Prelude.Maybe ImportAssetsFromS3RequestDetails)+requestDetails_importAssetsFromS3 = Lens.lens (\RequestDetails' {importAssetsFromS3} -> importAssetsFromS3) (\s@RequestDetails' {} a -> s {importAssetsFromS3 = a} :: RequestDetails)++instance Prelude.Hashable RequestDetails where+ hashWithSalt _salt RequestDetails' {..} =+ _salt+ `Prelude.hashWithSalt` createS3DataAccessFromS3Bucket+ `Prelude.hashWithSalt` exportAssetToSignedUrl+ `Prelude.hashWithSalt` exportAssetsToS3+ `Prelude.hashWithSalt` exportRevisionsToS3+ `Prelude.hashWithSalt` importAssetFromApiGatewayApi+ `Prelude.hashWithSalt` importAssetFromSignedUrl+ `Prelude.hashWithSalt` importAssetsFromLakeFormationTagPolicy+ `Prelude.hashWithSalt` importAssetsFromRedshiftDataShares+ `Prelude.hashWithSalt` importAssetsFromS3++instance Prelude.NFData RequestDetails where+ rnf RequestDetails' {..} =+ Prelude.rnf createS3DataAccessFromS3Bucket+ `Prelude.seq` Prelude.rnf exportAssetToSignedUrl+ `Prelude.seq` Prelude.rnf exportAssetsToS3+ `Prelude.seq` Prelude.rnf exportRevisionsToS3+ `Prelude.seq` Prelude.rnf importAssetFromApiGatewayApi+ `Prelude.seq` Prelude.rnf importAssetFromSignedUrl+ `Prelude.seq` Prelude.rnf importAssetsFromLakeFormationTagPolicy+ `Prelude.seq` Prelude.rnf importAssetsFromRedshiftDataShares+ `Prelude.seq` Prelude.rnf importAssetsFromS3++instance Data.ToJSON RequestDetails where+ toJSON RequestDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("CreateS3DataAccessFromS3Bucket" Data..=)+ Prelude.<$> createS3DataAccessFromS3Bucket,+ ("ExportAssetToSignedUrl" Data..=)+ Prelude.<$> exportAssetToSignedUrl,+ ("ExportAssetsToS3" Data..=)+ Prelude.<$> exportAssetsToS3,+ ("ExportRevisionsToS3" Data..=)+ Prelude.<$> exportRevisionsToS3,+ ("ImportAssetFromApiGatewayApi" Data..=)+ Prelude.<$> importAssetFromApiGatewayApi,+ ("ImportAssetFromSignedUrl" Data..=)+ Prelude.<$> importAssetFromSignedUrl,+ ("ImportAssetsFromLakeFormationTagPolicy" Data..=)+ Prelude.<$> importAssetsFromLakeFormationTagPolicy,+ ("ImportAssetsFromRedshiftDataShares" Data..=)+ Prelude.<$> importAssetsFromRedshiftDataShares,+ ("ImportAssetsFromS3" Data..=)+ Prelude.<$> importAssetsFromS3+ ]+ )
+ gen/Amazonka/DataExchange/Types/ResponseDetails.hs view
@@ -0,0 +1,179 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.ResponseDetails+-- 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.DataExchange.Types.ResponseDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.CreateS3DataAccessFromS3BucketResponseDetails+import Amazonka.DataExchange.Types.ExportAssetToSignedUrlResponseDetails+import Amazonka.DataExchange.Types.ExportAssetsToS3ResponseDetails+import Amazonka.DataExchange.Types.ExportRevisionsToS3ResponseDetails+import Amazonka.DataExchange.Types.ImportAssetFromApiGatewayApiResponseDetails+import Amazonka.DataExchange.Types.ImportAssetFromSignedUrlResponseDetails+import Amazonka.DataExchange.Types.ImportAssetsFromLakeFormationTagPolicyResponseDetails+import Amazonka.DataExchange.Types.ImportAssetsFromRedshiftDataSharesResponseDetails+import Amazonka.DataExchange.Types.ImportAssetsFromS3ResponseDetails+import qualified Amazonka.Prelude as Prelude++-- | Details for the response.+--+-- /See:/ 'newResponseDetails' smart constructor.+data ResponseDetails = ResponseDetails'+ { -- | Response details from the CreateS3DataAccessFromS3Bucket job.+ createS3DataAccessFromS3Bucket :: Prelude.Maybe CreateS3DataAccessFromS3BucketResponseDetails,+ -- | Details for the export to signed URL response.+ exportAssetToSignedUrl :: Prelude.Maybe ExportAssetToSignedUrlResponseDetails,+ -- | Details for the export to Amazon S3 response.+ exportAssetsToS3 :: Prelude.Maybe ExportAssetsToS3ResponseDetails,+ -- | Details for the export revisions to Amazon S3 response.+ exportRevisionsToS3 :: Prelude.Maybe ExportRevisionsToS3ResponseDetails,+ -- | The response details.+ importAssetFromApiGatewayApi :: Prelude.Maybe ImportAssetFromApiGatewayApiResponseDetails,+ -- | Details for the import from signed URL response.+ importAssetFromSignedUrl :: Prelude.Maybe ImportAssetFromSignedUrlResponseDetails,+ -- | Response details from the ImportAssetsFromLakeFormationTagPolicy job.+ importAssetsFromLakeFormationTagPolicy :: Prelude.Maybe ImportAssetsFromLakeFormationTagPolicyResponseDetails,+ -- | Details from an import from Amazon Redshift datashare response.+ importAssetsFromRedshiftDataShares :: Prelude.Maybe ImportAssetsFromRedshiftDataSharesResponseDetails,+ -- | Details for the import from Amazon S3 response.+ importAssetsFromS3 :: Prelude.Maybe ImportAssetsFromS3ResponseDetails+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResponseDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createS3DataAccessFromS3Bucket', 'responseDetails_createS3DataAccessFromS3Bucket' - Response details from the CreateS3DataAccessFromS3Bucket job.+--+-- 'exportAssetToSignedUrl', 'responseDetails_exportAssetToSignedUrl' - Details for the export to signed URL response.+--+-- 'exportAssetsToS3', 'responseDetails_exportAssetsToS3' - Details for the export to Amazon S3 response.+--+-- 'exportRevisionsToS3', 'responseDetails_exportRevisionsToS3' - Details for the export revisions to Amazon S3 response.+--+-- 'importAssetFromApiGatewayApi', 'responseDetails_importAssetFromApiGatewayApi' - The response details.+--+-- 'importAssetFromSignedUrl', 'responseDetails_importAssetFromSignedUrl' - Details for the import from signed URL response.+--+-- 'importAssetsFromLakeFormationTagPolicy', 'responseDetails_importAssetsFromLakeFormationTagPolicy' - Response details from the ImportAssetsFromLakeFormationTagPolicy job.+--+-- 'importAssetsFromRedshiftDataShares', 'responseDetails_importAssetsFromRedshiftDataShares' - Details from an import from Amazon Redshift datashare response.+--+-- 'importAssetsFromS3', 'responseDetails_importAssetsFromS3' - Details for the import from Amazon S3 response.+newResponseDetails ::+ ResponseDetails+newResponseDetails =+ ResponseDetails'+ { createS3DataAccessFromS3Bucket =+ Prelude.Nothing,+ exportAssetToSignedUrl = Prelude.Nothing,+ exportAssetsToS3 = Prelude.Nothing,+ exportRevisionsToS3 = Prelude.Nothing,+ importAssetFromApiGatewayApi = Prelude.Nothing,+ importAssetFromSignedUrl = Prelude.Nothing,+ importAssetsFromLakeFormationTagPolicy =+ Prelude.Nothing,+ importAssetsFromRedshiftDataShares = Prelude.Nothing,+ importAssetsFromS3 = Prelude.Nothing+ }++-- | Response details from the CreateS3DataAccessFromS3Bucket job.+responseDetails_createS3DataAccessFromS3Bucket :: Lens.Lens' ResponseDetails (Prelude.Maybe CreateS3DataAccessFromS3BucketResponseDetails)+responseDetails_createS3DataAccessFromS3Bucket = Lens.lens (\ResponseDetails' {createS3DataAccessFromS3Bucket} -> createS3DataAccessFromS3Bucket) (\s@ResponseDetails' {} a -> s {createS3DataAccessFromS3Bucket = a} :: ResponseDetails)++-- | Details for the export to signed URL response.+responseDetails_exportAssetToSignedUrl :: Lens.Lens' ResponseDetails (Prelude.Maybe ExportAssetToSignedUrlResponseDetails)+responseDetails_exportAssetToSignedUrl = Lens.lens (\ResponseDetails' {exportAssetToSignedUrl} -> exportAssetToSignedUrl) (\s@ResponseDetails' {} a -> s {exportAssetToSignedUrl = a} :: ResponseDetails)++-- | Details for the export to Amazon S3 response.+responseDetails_exportAssetsToS3 :: Lens.Lens' ResponseDetails (Prelude.Maybe ExportAssetsToS3ResponseDetails)+responseDetails_exportAssetsToS3 = Lens.lens (\ResponseDetails' {exportAssetsToS3} -> exportAssetsToS3) (\s@ResponseDetails' {} a -> s {exportAssetsToS3 = a} :: ResponseDetails)++-- | Details for the export revisions to Amazon S3 response.+responseDetails_exportRevisionsToS3 :: Lens.Lens' ResponseDetails (Prelude.Maybe ExportRevisionsToS3ResponseDetails)+responseDetails_exportRevisionsToS3 = Lens.lens (\ResponseDetails' {exportRevisionsToS3} -> exportRevisionsToS3) (\s@ResponseDetails' {} a -> s {exportRevisionsToS3 = a} :: ResponseDetails)++-- | The response details.+responseDetails_importAssetFromApiGatewayApi :: Lens.Lens' ResponseDetails (Prelude.Maybe ImportAssetFromApiGatewayApiResponseDetails)+responseDetails_importAssetFromApiGatewayApi = Lens.lens (\ResponseDetails' {importAssetFromApiGatewayApi} -> importAssetFromApiGatewayApi) (\s@ResponseDetails' {} a -> s {importAssetFromApiGatewayApi = a} :: ResponseDetails)++-- | Details for the import from signed URL response.+responseDetails_importAssetFromSignedUrl :: Lens.Lens' ResponseDetails (Prelude.Maybe ImportAssetFromSignedUrlResponseDetails)+responseDetails_importAssetFromSignedUrl = Lens.lens (\ResponseDetails' {importAssetFromSignedUrl} -> importAssetFromSignedUrl) (\s@ResponseDetails' {} a -> s {importAssetFromSignedUrl = a} :: ResponseDetails)++-- | Response details from the ImportAssetsFromLakeFormationTagPolicy job.+responseDetails_importAssetsFromLakeFormationTagPolicy :: Lens.Lens' ResponseDetails (Prelude.Maybe ImportAssetsFromLakeFormationTagPolicyResponseDetails)+responseDetails_importAssetsFromLakeFormationTagPolicy = Lens.lens (\ResponseDetails' {importAssetsFromLakeFormationTagPolicy} -> importAssetsFromLakeFormationTagPolicy) (\s@ResponseDetails' {} a -> s {importAssetsFromLakeFormationTagPolicy = a} :: ResponseDetails)++-- | Details from an import from Amazon Redshift datashare response.+responseDetails_importAssetsFromRedshiftDataShares :: Lens.Lens' ResponseDetails (Prelude.Maybe ImportAssetsFromRedshiftDataSharesResponseDetails)+responseDetails_importAssetsFromRedshiftDataShares = Lens.lens (\ResponseDetails' {importAssetsFromRedshiftDataShares} -> importAssetsFromRedshiftDataShares) (\s@ResponseDetails' {} a -> s {importAssetsFromRedshiftDataShares = a} :: ResponseDetails)++-- | Details for the import from Amazon S3 response.+responseDetails_importAssetsFromS3 :: Lens.Lens' ResponseDetails (Prelude.Maybe ImportAssetsFromS3ResponseDetails)+responseDetails_importAssetsFromS3 = Lens.lens (\ResponseDetails' {importAssetsFromS3} -> importAssetsFromS3) (\s@ResponseDetails' {} a -> s {importAssetsFromS3 = a} :: ResponseDetails)++instance Data.FromJSON ResponseDetails where+ parseJSON =+ Data.withObject+ "ResponseDetails"+ ( \x ->+ ResponseDetails'+ Prelude.<$> (x Data..:? "CreateS3DataAccessFromS3Bucket")+ Prelude.<*> (x Data..:? "ExportAssetToSignedUrl")+ Prelude.<*> (x Data..:? "ExportAssetsToS3")+ Prelude.<*> (x Data..:? "ExportRevisionsToS3")+ Prelude.<*> (x Data..:? "ImportAssetFromApiGatewayApi")+ Prelude.<*> (x Data..:? "ImportAssetFromSignedUrl")+ Prelude.<*> (x Data..:? "ImportAssetsFromLakeFormationTagPolicy")+ Prelude.<*> (x Data..:? "ImportAssetsFromRedshiftDataShares")+ Prelude.<*> (x Data..:? "ImportAssetsFromS3")+ )++instance Prelude.Hashable ResponseDetails where+ hashWithSalt _salt ResponseDetails' {..} =+ _salt+ `Prelude.hashWithSalt` createS3DataAccessFromS3Bucket+ `Prelude.hashWithSalt` exportAssetToSignedUrl+ `Prelude.hashWithSalt` exportAssetsToS3+ `Prelude.hashWithSalt` exportRevisionsToS3+ `Prelude.hashWithSalt` importAssetFromApiGatewayApi+ `Prelude.hashWithSalt` importAssetFromSignedUrl+ `Prelude.hashWithSalt` importAssetsFromLakeFormationTagPolicy+ `Prelude.hashWithSalt` importAssetsFromRedshiftDataShares+ `Prelude.hashWithSalt` importAssetsFromS3++instance Prelude.NFData ResponseDetails where+ rnf ResponseDetails' {..} =+ Prelude.rnf createS3DataAccessFromS3Bucket+ `Prelude.seq` Prelude.rnf exportAssetToSignedUrl+ `Prelude.seq` Prelude.rnf exportAssetsToS3+ `Prelude.seq` Prelude.rnf exportRevisionsToS3+ `Prelude.seq` Prelude.rnf importAssetFromApiGatewayApi+ `Prelude.seq` Prelude.rnf importAssetFromSignedUrl+ `Prelude.seq` Prelude.rnf importAssetsFromLakeFormationTagPolicy+ `Prelude.seq` Prelude.rnf importAssetsFromRedshiftDataShares+ `Prelude.seq` Prelude.rnf importAssetsFromS3
+ gen/Amazonka/DataExchange/Types/RevisionDestinationEntry.hs view
@@ -0,0 +1,120 @@+{-# 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.DataExchange.Types.RevisionDestinationEntry+-- 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.DataExchange.Types.RevisionDestinationEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The destination where the assets in the revision will be exported.+--+-- /See:/ 'newRevisionDestinationEntry' smart constructor.+data RevisionDestinationEntry = RevisionDestinationEntry'+ { -- | A string representing the pattern for generated names of the individual+ -- assets in the revision. For more information about key patterns, see+ -- <https://docs.aws.amazon.com/data-exchange/latest/userguide/jobs.html#revision-export-keypatterns Key patterns when exporting revisions>.+ keyPattern :: Prelude.Maybe Prelude.Text,+ -- | The Amazon S3 bucket that is the destination for the assets in the+ -- revision.+ bucket :: Prelude.Text,+ -- | The unique identifier for the revision.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RevisionDestinationEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'keyPattern', 'revisionDestinationEntry_keyPattern' - A string representing the pattern for generated names of the individual+-- assets in the revision. For more information about key patterns, see+-- <https://docs.aws.amazon.com/data-exchange/latest/userguide/jobs.html#revision-export-keypatterns Key patterns when exporting revisions>.+--+-- 'bucket', 'revisionDestinationEntry_bucket' - The Amazon S3 bucket that is the destination for the assets in the+-- revision.+--+-- 'revisionId', 'revisionDestinationEntry_revisionId' - The unique identifier for the revision.+newRevisionDestinationEntry ::+ -- | 'bucket'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ RevisionDestinationEntry+newRevisionDestinationEntry pBucket_ pRevisionId_ =+ RevisionDestinationEntry'+ { keyPattern =+ Prelude.Nothing,+ bucket = pBucket_,+ revisionId = pRevisionId_+ }++-- | A string representing the pattern for generated names of the individual+-- assets in the revision. For more information about key patterns, see+-- <https://docs.aws.amazon.com/data-exchange/latest/userguide/jobs.html#revision-export-keypatterns Key patterns when exporting revisions>.+revisionDestinationEntry_keyPattern :: Lens.Lens' RevisionDestinationEntry (Prelude.Maybe Prelude.Text)+revisionDestinationEntry_keyPattern = Lens.lens (\RevisionDestinationEntry' {keyPattern} -> keyPattern) (\s@RevisionDestinationEntry' {} a -> s {keyPattern = a} :: RevisionDestinationEntry)++-- | The Amazon S3 bucket that is the destination for the assets in the+-- revision.+revisionDestinationEntry_bucket :: Lens.Lens' RevisionDestinationEntry Prelude.Text+revisionDestinationEntry_bucket = Lens.lens (\RevisionDestinationEntry' {bucket} -> bucket) (\s@RevisionDestinationEntry' {} a -> s {bucket = a} :: RevisionDestinationEntry)++-- | The unique identifier for the revision.+revisionDestinationEntry_revisionId :: Lens.Lens' RevisionDestinationEntry Prelude.Text+revisionDestinationEntry_revisionId = Lens.lens (\RevisionDestinationEntry' {revisionId} -> revisionId) (\s@RevisionDestinationEntry' {} a -> s {revisionId = a} :: RevisionDestinationEntry)++instance Data.FromJSON RevisionDestinationEntry where+ parseJSON =+ Data.withObject+ "RevisionDestinationEntry"+ ( \x ->+ RevisionDestinationEntry'+ Prelude.<$> (x Data..:? "KeyPattern")+ Prelude.<*> (x Data..: "Bucket")+ Prelude.<*> (x Data..: "RevisionId")+ )++instance Prelude.Hashable RevisionDestinationEntry where+ hashWithSalt _salt RevisionDestinationEntry' {..} =+ _salt+ `Prelude.hashWithSalt` keyPattern+ `Prelude.hashWithSalt` bucket+ `Prelude.hashWithSalt` revisionId++instance Prelude.NFData RevisionDestinationEntry where+ rnf RevisionDestinationEntry' {..} =+ Prelude.rnf keyPattern+ `Prelude.seq` Prelude.rnf bucket+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToJSON RevisionDestinationEntry where+ toJSON RevisionDestinationEntry' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("KeyPattern" Data..=) Prelude.<$> keyPattern,+ Prelude.Just ("Bucket" Data..= bucket),+ Prelude.Just ("RevisionId" Data..= revisionId)+ ]+ )
+ gen/Amazonka/DataExchange/Types/RevisionEntry.hs view
@@ -0,0 +1,246 @@+{-# 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.DataExchange.Types.RevisionEntry+-- 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.DataExchange.Types.RevisionEntry 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 revision is a container for one or more assets.+--+-- /See:/ 'newRevisionEntry' smart constructor.+data RevisionEntry = RevisionEntry'+ { -- | An optional comment about the revision.+ comment :: Prelude.Maybe Prelude.Text,+ -- | To publish a revision to a data set in a product, the revision must+ -- first be finalized. Finalizing a revision tells AWS Data Exchange that+ -- your changes to the assets in the revision are complete. After it\'s in+ -- this read-only state, you can publish the revision to your products.+ -- Finalized revisions can be published through the AWS Data Exchange+ -- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+ -- Marketplace Catalog API action. When using the API, revisions are+ -- uniquely identified by their ARN.+ finalized :: Prelude.Maybe Prelude.Bool,+ -- | A required comment to inform subscribers of the reason their access to+ -- the revision was revoked.+ revocationComment :: Prelude.Maybe Prelude.Text,+ -- | A status indicating that subscribers\' access to the revision was+ -- revoked.+ revoked :: Prelude.Maybe Prelude.Bool,+ -- | The date and time that the revision was revoked, in ISO 8601 format.+ revokedAt :: Prelude.Maybe Data.ISO8601,+ -- | The revision ID of the owned revision corresponding to the entitled+ -- revision being viewed. This parameter is returned when a revision owner+ -- is viewing the entitled copy of its owned revision.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The ARN for the revision.+ arn :: Prelude.Text,+ -- | The date and time that the revision was created, in ISO 8601 format.+ createdAt :: Data.ISO8601,+ -- | The unique identifier for the data set associated with the data set+ -- revision.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for the revision.+ id :: Prelude.Text,+ -- | The date and time that the revision was last updated, in ISO 8601+ -- format.+ updatedAt :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RevisionEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'comment', 'revisionEntry_comment' - An optional comment about the revision.+--+-- 'finalized', 'revisionEntry_finalized' - To publish a revision to a data set in a product, the revision must+-- first be finalized. Finalizing a revision tells AWS Data Exchange that+-- your changes to the assets in the revision are complete. After it\'s in+-- this read-only state, you can publish the revision to your products.+-- Finalized revisions can be published through the AWS Data Exchange+-- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+-- Marketplace Catalog API action. When using the API, revisions are+-- uniquely identified by their ARN.+--+-- 'revocationComment', 'revisionEntry_revocationComment' - A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+--+-- 'revoked', 'revisionEntry_revoked' - A status indicating that subscribers\' access to the revision was+-- revoked.+--+-- 'revokedAt', 'revisionEntry_revokedAt' - The date and time that the revision was revoked, in ISO 8601 format.+--+-- 'sourceId', 'revisionEntry_sourceId' - The revision ID of the owned revision corresponding to the entitled+-- revision being viewed. This parameter is returned when a revision owner+-- is viewing the entitled copy of its owned revision.+--+-- 'arn', 'revisionEntry_arn' - The ARN for the revision.+--+-- 'createdAt', 'revisionEntry_createdAt' - The date and time that the revision was created, in ISO 8601 format.+--+-- 'dataSetId', 'revisionEntry_dataSetId' - The unique identifier for the data set associated with the data set+-- revision.+--+-- 'id', 'revisionEntry_id' - The unique identifier for the revision.+--+-- 'updatedAt', 'revisionEntry_updatedAt' - The date and time that the revision was last updated, in ISO 8601+-- format.+newRevisionEntry ::+ -- | 'arn'+ Prelude.Text ->+ -- | 'createdAt'+ Prelude.UTCTime ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'updatedAt'+ Prelude.UTCTime ->+ RevisionEntry+newRevisionEntry+ pArn_+ pCreatedAt_+ pDataSetId_+ pId_+ pUpdatedAt_ =+ RevisionEntry'+ { comment = Prelude.Nothing,+ finalized = Prelude.Nothing,+ revocationComment = Prelude.Nothing,+ revoked = Prelude.Nothing,+ revokedAt = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ arn = pArn_,+ createdAt = Data._Time Lens.# pCreatedAt_,+ dataSetId = pDataSetId_,+ id = pId_,+ updatedAt = Data._Time Lens.# pUpdatedAt_+ }++-- | An optional comment about the revision.+revisionEntry_comment :: Lens.Lens' RevisionEntry (Prelude.Maybe Prelude.Text)+revisionEntry_comment = Lens.lens (\RevisionEntry' {comment} -> comment) (\s@RevisionEntry' {} a -> s {comment = a} :: RevisionEntry)++-- | To publish a revision to a data set in a product, the revision must+-- first be finalized. Finalizing a revision tells AWS Data Exchange that+-- your changes to the assets in the revision are complete. After it\'s in+-- this read-only state, you can publish the revision to your products.+-- Finalized revisions can be published through the AWS Data Exchange+-- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+-- Marketplace Catalog API action. When using the API, revisions are+-- uniquely identified by their ARN.+revisionEntry_finalized :: Lens.Lens' RevisionEntry (Prelude.Maybe Prelude.Bool)+revisionEntry_finalized = Lens.lens (\RevisionEntry' {finalized} -> finalized) (\s@RevisionEntry' {} a -> s {finalized = a} :: RevisionEntry)++-- | A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+revisionEntry_revocationComment :: Lens.Lens' RevisionEntry (Prelude.Maybe Prelude.Text)+revisionEntry_revocationComment = Lens.lens (\RevisionEntry' {revocationComment} -> revocationComment) (\s@RevisionEntry' {} a -> s {revocationComment = a} :: RevisionEntry)++-- | A status indicating that subscribers\' access to the revision was+-- revoked.+revisionEntry_revoked :: Lens.Lens' RevisionEntry (Prelude.Maybe Prelude.Bool)+revisionEntry_revoked = Lens.lens (\RevisionEntry' {revoked} -> revoked) (\s@RevisionEntry' {} a -> s {revoked = a} :: RevisionEntry)++-- | The date and time that the revision was revoked, in ISO 8601 format.+revisionEntry_revokedAt :: Lens.Lens' RevisionEntry (Prelude.Maybe Prelude.UTCTime)+revisionEntry_revokedAt = Lens.lens (\RevisionEntry' {revokedAt} -> revokedAt) (\s@RevisionEntry' {} a -> s {revokedAt = a} :: RevisionEntry) Prelude.. Lens.mapping Data._Time++-- | The revision ID of the owned revision corresponding to the entitled+-- revision being viewed. This parameter is returned when a revision owner+-- is viewing the entitled copy of its owned revision.+revisionEntry_sourceId :: Lens.Lens' RevisionEntry (Prelude.Maybe Prelude.Text)+revisionEntry_sourceId = Lens.lens (\RevisionEntry' {sourceId} -> sourceId) (\s@RevisionEntry' {} a -> s {sourceId = a} :: RevisionEntry)++-- | The ARN for the revision.+revisionEntry_arn :: Lens.Lens' RevisionEntry Prelude.Text+revisionEntry_arn = Lens.lens (\RevisionEntry' {arn} -> arn) (\s@RevisionEntry' {} a -> s {arn = a} :: RevisionEntry)++-- | The date and time that the revision was created, in ISO 8601 format.+revisionEntry_createdAt :: Lens.Lens' RevisionEntry Prelude.UTCTime+revisionEntry_createdAt = Lens.lens (\RevisionEntry' {createdAt} -> createdAt) (\s@RevisionEntry' {} a -> s {createdAt = a} :: RevisionEntry) Prelude.. Data._Time++-- | The unique identifier for the data set associated with the data set+-- revision.+revisionEntry_dataSetId :: Lens.Lens' RevisionEntry Prelude.Text+revisionEntry_dataSetId = Lens.lens (\RevisionEntry' {dataSetId} -> dataSetId) (\s@RevisionEntry' {} a -> s {dataSetId = a} :: RevisionEntry)++-- | The unique identifier for the revision.+revisionEntry_id :: Lens.Lens' RevisionEntry Prelude.Text+revisionEntry_id = Lens.lens (\RevisionEntry' {id} -> id) (\s@RevisionEntry' {} a -> s {id = a} :: RevisionEntry)++-- | The date and time that the revision was last updated, in ISO 8601+-- format.+revisionEntry_updatedAt :: Lens.Lens' RevisionEntry Prelude.UTCTime+revisionEntry_updatedAt = Lens.lens (\RevisionEntry' {updatedAt} -> updatedAt) (\s@RevisionEntry' {} a -> s {updatedAt = a} :: RevisionEntry) Prelude.. Data._Time++instance Data.FromJSON RevisionEntry where+ parseJSON =+ Data.withObject+ "RevisionEntry"+ ( \x ->+ RevisionEntry'+ Prelude.<$> (x Data..:? "Comment")+ Prelude.<*> (x Data..:? "Finalized")+ Prelude.<*> (x Data..:? "RevocationComment")+ Prelude.<*> (x Data..:? "Revoked")+ Prelude.<*> (x Data..:? "RevokedAt")+ Prelude.<*> (x Data..:? "SourceId")+ Prelude.<*> (x Data..: "Arn")+ Prelude.<*> (x Data..: "CreatedAt")+ Prelude.<*> (x Data..: "DataSetId")+ Prelude.<*> (x Data..: "Id")+ Prelude.<*> (x Data..: "UpdatedAt")+ )++instance Prelude.Hashable RevisionEntry where+ hashWithSalt _salt RevisionEntry' {..} =+ _salt+ `Prelude.hashWithSalt` comment+ `Prelude.hashWithSalt` finalized+ `Prelude.hashWithSalt` revocationComment+ `Prelude.hashWithSalt` revoked+ `Prelude.hashWithSalt` revokedAt+ `Prelude.hashWithSalt` sourceId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData RevisionEntry where+ rnf RevisionEntry' {..} =+ Prelude.rnf comment+ `Prelude.seq` Prelude.rnf finalized+ `Prelude.seq` Prelude.rnf revocationComment+ `Prelude.seq` Prelude.rnf revoked+ `Prelude.seq` Prelude.rnf revokedAt+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/DataExchange/Types/RevisionPublished.hs view
@@ -0,0 +1,77 @@+{-# 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.DataExchange.Types.RevisionPublished+-- 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.DataExchange.Types.RevisionPublished where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about the published revision.+--+-- /See:/ 'newRevisionPublished' smart constructor.+data RevisionPublished = RevisionPublished'+ { -- | The data set ID of the published revision.+ dataSetId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RevisionPublished' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSetId', 'revisionPublished_dataSetId' - The data set ID of the published revision.+newRevisionPublished ::+ -- | 'dataSetId'+ Prelude.Text ->+ RevisionPublished+newRevisionPublished pDataSetId_ =+ RevisionPublished' {dataSetId = pDataSetId_}++-- | The data set ID of the published revision.+revisionPublished_dataSetId :: Lens.Lens' RevisionPublished Prelude.Text+revisionPublished_dataSetId = Lens.lens (\RevisionPublished' {dataSetId} -> dataSetId) (\s@RevisionPublished' {} a -> s {dataSetId = a} :: RevisionPublished)++instance Data.FromJSON RevisionPublished where+ parseJSON =+ Data.withObject+ "RevisionPublished"+ ( \x ->+ RevisionPublished'+ Prelude.<$> (x Data..: "DataSetId")+ )++instance Prelude.Hashable RevisionPublished where+ hashWithSalt _salt RevisionPublished' {..} =+ _salt `Prelude.hashWithSalt` dataSetId++instance Prelude.NFData RevisionPublished where+ rnf RevisionPublished' {..} = Prelude.rnf dataSetId++instance Data.ToJSON RevisionPublished where+ toJSON RevisionPublished' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("DataSetId" Data..= dataSetId)]+ )
+ gen/Amazonka/DataExchange/Types/S3DataAccessAsset.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.DataExchange.Types.S3DataAccessAsset+-- 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.DataExchange.Types.S3DataAccessAsset where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The Amazon S3 data access that is the asset.+--+-- /See:/ 'newS3DataAccessAsset' smart constructor.+data S3DataAccessAsset = S3DataAccessAsset'+ { -- | The Amazon S3 bucket used for hosting shared data in the Amazon S3 data+ -- access.+ keyPrefixes :: Prelude.Maybe [Prelude.Text],+ -- | S3 keys made available using this asset.+ keys :: Prelude.Maybe [Prelude.Text],+ -- | The automatically-generated bucket-style alias for your Amazon S3 Access+ -- Point. Customers can access their entitled data using the S3 Access+ -- Point alias.+ s3AccessPointAlias :: Prelude.Maybe Prelude.Text,+ -- | The ARN for your Amazon S3 Access Point. Customers can also access their+ -- entitled data using the S3 Access Point ARN.+ s3AccessPointArn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon S3 bucket hosting data to be shared in the S3 data access.+ bucket :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3DataAccessAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'keyPrefixes', 's3DataAccessAsset_keyPrefixes' - The Amazon S3 bucket used for hosting shared data in the Amazon S3 data+-- access.+--+-- 'keys', 's3DataAccessAsset_keys' - S3 keys made available using this asset.+--+-- 's3AccessPointAlias', 's3DataAccessAsset_s3AccessPointAlias' - The automatically-generated bucket-style alias for your Amazon S3 Access+-- Point. Customers can access their entitled data using the S3 Access+-- Point alias.+--+-- 's3AccessPointArn', 's3DataAccessAsset_s3AccessPointArn' - The ARN for your Amazon S3 Access Point. Customers can also access their+-- entitled data using the S3 Access Point ARN.+--+-- 'bucket', 's3DataAccessAsset_bucket' - The Amazon S3 bucket hosting data to be shared in the S3 data access.+newS3DataAccessAsset ::+ -- | 'bucket'+ Prelude.Text ->+ S3DataAccessAsset+newS3DataAccessAsset pBucket_ =+ S3DataAccessAsset'+ { keyPrefixes = Prelude.Nothing,+ keys = Prelude.Nothing,+ s3AccessPointAlias = Prelude.Nothing,+ s3AccessPointArn = Prelude.Nothing,+ bucket = pBucket_+ }++-- | The Amazon S3 bucket used for hosting shared data in the Amazon S3 data+-- access.+s3DataAccessAsset_keyPrefixes :: Lens.Lens' S3DataAccessAsset (Prelude.Maybe [Prelude.Text])+s3DataAccessAsset_keyPrefixes = Lens.lens (\S3DataAccessAsset' {keyPrefixes} -> keyPrefixes) (\s@S3DataAccessAsset' {} a -> s {keyPrefixes = a} :: S3DataAccessAsset) Prelude.. Lens.mapping Lens.coerced++-- | S3 keys made available using this asset.+s3DataAccessAsset_keys :: Lens.Lens' S3DataAccessAsset (Prelude.Maybe [Prelude.Text])+s3DataAccessAsset_keys = Lens.lens (\S3DataAccessAsset' {keys} -> keys) (\s@S3DataAccessAsset' {} a -> s {keys = a} :: S3DataAccessAsset) Prelude.. Lens.mapping Lens.coerced++-- | The automatically-generated bucket-style alias for your Amazon S3 Access+-- Point. Customers can access their entitled data using the S3 Access+-- Point alias.+s3DataAccessAsset_s3AccessPointAlias :: Lens.Lens' S3DataAccessAsset (Prelude.Maybe Prelude.Text)+s3DataAccessAsset_s3AccessPointAlias = Lens.lens (\S3DataAccessAsset' {s3AccessPointAlias} -> s3AccessPointAlias) (\s@S3DataAccessAsset' {} a -> s {s3AccessPointAlias = a} :: S3DataAccessAsset)++-- | The ARN for your Amazon S3 Access Point. Customers can also access their+-- entitled data using the S3 Access Point ARN.+s3DataAccessAsset_s3AccessPointArn :: Lens.Lens' S3DataAccessAsset (Prelude.Maybe Prelude.Text)+s3DataAccessAsset_s3AccessPointArn = Lens.lens (\S3DataAccessAsset' {s3AccessPointArn} -> s3AccessPointArn) (\s@S3DataAccessAsset' {} a -> s {s3AccessPointArn = a} :: S3DataAccessAsset)++-- | The Amazon S3 bucket hosting data to be shared in the S3 data access.+s3DataAccessAsset_bucket :: Lens.Lens' S3DataAccessAsset Prelude.Text+s3DataAccessAsset_bucket = Lens.lens (\S3DataAccessAsset' {bucket} -> bucket) (\s@S3DataAccessAsset' {} a -> s {bucket = a} :: S3DataAccessAsset)++instance Data.FromJSON S3DataAccessAsset where+ parseJSON =+ Data.withObject+ "S3DataAccessAsset"+ ( \x ->+ S3DataAccessAsset'+ Prelude.<$> (x Data..:? "KeyPrefixes" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Keys" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "S3AccessPointAlias")+ Prelude.<*> (x Data..:? "S3AccessPointArn")+ Prelude.<*> (x Data..: "Bucket")+ )++instance Prelude.Hashable S3DataAccessAsset where+ hashWithSalt _salt S3DataAccessAsset' {..} =+ _salt+ `Prelude.hashWithSalt` keyPrefixes+ `Prelude.hashWithSalt` keys+ `Prelude.hashWithSalt` s3AccessPointAlias+ `Prelude.hashWithSalt` s3AccessPointArn+ `Prelude.hashWithSalt` bucket++instance Prelude.NFData S3DataAccessAsset where+ rnf S3DataAccessAsset' {..} =+ Prelude.rnf keyPrefixes+ `Prelude.seq` Prelude.rnf keys+ `Prelude.seq` Prelude.rnf s3AccessPointAlias+ `Prelude.seq` Prelude.rnf s3AccessPointArn+ `Prelude.seq` Prelude.rnf bucket
+ gen/Amazonka/DataExchange/Types/S3DataAccessAssetSourceEntry.hs view
@@ -0,0 +1,115 @@+{-# 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.DataExchange.Types.S3DataAccessAssetSourceEntry+-- 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.DataExchange.Types.S3DataAccessAssetSourceEntry 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++-- | Source details for an Amazon S3 data access asset.+--+-- /See:/ 'newS3DataAccessAssetSourceEntry' smart constructor.+data S3DataAccessAssetSourceEntry = S3DataAccessAssetSourceEntry'+ { -- | Organizes Amazon S3 asset key prefixes stored in an Amazon S3 bucket.+ keyPrefixes :: Prelude.Maybe [Prelude.Text],+ -- | The keys used to create the Amazon S3 data access.+ keys :: Prelude.Maybe [Prelude.Text],+ -- | The Amazon S3 bucket used for hosting shared data in the Amazon S3 data+ -- access.+ bucket :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3DataAccessAssetSourceEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'keyPrefixes', 's3DataAccessAssetSourceEntry_keyPrefixes' - Organizes Amazon S3 asset key prefixes stored in an Amazon S3 bucket.+--+-- 'keys', 's3DataAccessAssetSourceEntry_keys' - The keys used to create the Amazon S3 data access.+--+-- 'bucket', 's3DataAccessAssetSourceEntry_bucket' - The Amazon S3 bucket used for hosting shared data in the Amazon S3 data+-- access.+newS3DataAccessAssetSourceEntry ::+ -- | 'bucket'+ Prelude.Text ->+ S3DataAccessAssetSourceEntry+newS3DataAccessAssetSourceEntry pBucket_ =+ S3DataAccessAssetSourceEntry'+ { keyPrefixes =+ Prelude.Nothing,+ keys = Prelude.Nothing,+ bucket = pBucket_+ }++-- | Organizes Amazon S3 asset key prefixes stored in an Amazon S3 bucket.+s3DataAccessAssetSourceEntry_keyPrefixes :: Lens.Lens' S3DataAccessAssetSourceEntry (Prelude.Maybe [Prelude.Text])+s3DataAccessAssetSourceEntry_keyPrefixes = Lens.lens (\S3DataAccessAssetSourceEntry' {keyPrefixes} -> keyPrefixes) (\s@S3DataAccessAssetSourceEntry' {} a -> s {keyPrefixes = a} :: S3DataAccessAssetSourceEntry) Prelude.. Lens.mapping Lens.coerced++-- | The keys used to create the Amazon S3 data access.+s3DataAccessAssetSourceEntry_keys :: Lens.Lens' S3DataAccessAssetSourceEntry (Prelude.Maybe [Prelude.Text])+s3DataAccessAssetSourceEntry_keys = Lens.lens (\S3DataAccessAssetSourceEntry' {keys} -> keys) (\s@S3DataAccessAssetSourceEntry' {} a -> s {keys = a} :: S3DataAccessAssetSourceEntry) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon S3 bucket used for hosting shared data in the Amazon S3 data+-- access.+s3DataAccessAssetSourceEntry_bucket :: Lens.Lens' S3DataAccessAssetSourceEntry Prelude.Text+s3DataAccessAssetSourceEntry_bucket = Lens.lens (\S3DataAccessAssetSourceEntry' {bucket} -> bucket) (\s@S3DataAccessAssetSourceEntry' {} a -> s {bucket = a} :: S3DataAccessAssetSourceEntry)++instance Data.FromJSON S3DataAccessAssetSourceEntry where+ parseJSON =+ Data.withObject+ "S3DataAccessAssetSourceEntry"+ ( \x ->+ S3DataAccessAssetSourceEntry'+ Prelude.<$> (x Data..:? "KeyPrefixes" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Keys" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "Bucket")+ )++instance+ Prelude.Hashable+ S3DataAccessAssetSourceEntry+ where+ hashWithSalt _salt S3DataAccessAssetSourceEntry' {..} =+ _salt+ `Prelude.hashWithSalt` keyPrefixes+ `Prelude.hashWithSalt` keys+ `Prelude.hashWithSalt` bucket++instance Prelude.NFData S3DataAccessAssetSourceEntry where+ rnf S3DataAccessAssetSourceEntry' {..} =+ Prelude.rnf keyPrefixes+ `Prelude.seq` Prelude.rnf keys+ `Prelude.seq` Prelude.rnf bucket++instance Data.ToJSON S3DataAccessAssetSourceEntry where+ toJSON S3DataAccessAssetSourceEntry' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("KeyPrefixes" Data..=) Prelude.<$> keyPrefixes,+ ("Keys" Data..=) Prelude.<$> keys,+ Prelude.Just ("Bucket" Data..= bucket)+ ]+ )
+ gen/Amazonka/DataExchange/Types/S3SnapshotAsset.hs view
@@ -0,0 +1,69 @@+{-# 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.DataExchange.Types.S3SnapshotAsset+-- 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.DataExchange.Types.S3SnapshotAsset where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The Amazon S3 object that is the asset.+--+-- /See:/ 'newS3SnapshotAsset' smart constructor.+data S3SnapshotAsset = S3SnapshotAsset'+ { -- | The size of the Amazon S3 object that is the object.+ size :: Prelude.Double+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3SnapshotAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'size', 's3SnapshotAsset_size' - The size of the Amazon S3 object that is the object.+newS3SnapshotAsset ::+ -- | 'size'+ Prelude.Double ->+ S3SnapshotAsset+newS3SnapshotAsset pSize_ =+ S3SnapshotAsset' {size = pSize_}++-- | The size of the Amazon S3 object that is the object.+s3SnapshotAsset_size :: Lens.Lens' S3SnapshotAsset Prelude.Double+s3SnapshotAsset_size = Lens.lens (\S3SnapshotAsset' {size} -> size) (\s@S3SnapshotAsset' {} a -> s {size = a} :: S3SnapshotAsset)++instance Data.FromJSON S3SnapshotAsset where+ parseJSON =+ Data.withObject+ "S3SnapshotAsset"+ ( \x ->+ S3SnapshotAsset' Prelude.<$> (x Data..: "Size")+ )++instance Prelude.Hashable S3SnapshotAsset where+ hashWithSalt _salt S3SnapshotAsset' {..} =+ _salt `Prelude.hashWithSalt` size++instance Prelude.NFData S3SnapshotAsset where+ rnf S3SnapshotAsset' {..} = Prelude.rnf size
+ gen/Amazonka/DataExchange/Types/ServerSideEncryptionTypes.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.DataExchange.Types.ServerSideEncryptionTypes+-- 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.DataExchange.Types.ServerSideEncryptionTypes+ ( ServerSideEncryptionTypes+ ( ..,+ ServerSideEncryptionTypes_AES256,+ ServerSideEncryptionTypes_Aws_kms+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ServerSideEncryptionTypes = ServerSideEncryptionTypes'+ { fromServerSideEncryptionTypes ::+ 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 ServerSideEncryptionTypes_AES256 :: ServerSideEncryptionTypes+pattern ServerSideEncryptionTypes_AES256 = ServerSideEncryptionTypes' "AES256"++pattern ServerSideEncryptionTypes_Aws_kms :: ServerSideEncryptionTypes+pattern ServerSideEncryptionTypes_Aws_kms = ServerSideEncryptionTypes' "aws:kms"++{-# COMPLETE+ ServerSideEncryptionTypes_AES256,+ ServerSideEncryptionTypes_Aws_kms,+ ServerSideEncryptionTypes'+ #-}
+ gen/Amazonka/DataExchange/Types/State.hs view
@@ -0,0 +1,88 @@+{-# 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.DataExchange.Types.State+-- 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.DataExchange.Types.State+ ( State+ ( ..,+ State_CANCELLED,+ State_COMPLETED,+ State_ERROR,+ State_IN_PROGRESS,+ State_TIMED_OUT,+ State_WAITING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype State = State' {fromState :: 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 State_CANCELLED :: State+pattern State_CANCELLED = State' "CANCELLED"++pattern State_COMPLETED :: State+pattern State_COMPLETED = State' "COMPLETED"++pattern State_ERROR :: State+pattern State_ERROR = State' "ERROR"++pattern State_IN_PROGRESS :: State+pattern State_IN_PROGRESS = State' "IN_PROGRESS"++pattern State_TIMED_OUT :: State+pattern State_TIMED_OUT = State' "TIMED_OUT"++pattern State_WAITING :: State+pattern State_WAITING = State' "WAITING"++{-# COMPLETE+ State_CANCELLED,+ State_COMPLETED,+ State_ERROR,+ State_IN_PROGRESS,+ State_TIMED_OUT,+ State_WAITING,+ State'+ #-}
+ gen/Amazonka/DataExchange/Types/TableLFTagPolicy.hs view
@@ -0,0 +1,69 @@+{-# 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.DataExchange.Types.TableLFTagPolicy+-- 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.DataExchange.Types.TableLFTagPolicy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.LFTag+import qualified Amazonka.Prelude as Prelude++-- | The LF-tag policy for a table resource.+--+-- /See:/ 'newTableLFTagPolicy' smart constructor.+data TableLFTagPolicy = TableLFTagPolicy'+ { -- | A list of LF-tag conditions that apply to table resources.+ expression :: [LFTag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TableLFTagPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'expression', 'tableLFTagPolicy_expression' - A list of LF-tag conditions that apply to table resources.+newTableLFTagPolicy ::+ TableLFTagPolicy+newTableLFTagPolicy =+ TableLFTagPolicy' {expression = Prelude.mempty}++-- | A list of LF-tag conditions that apply to table resources.+tableLFTagPolicy_expression :: Lens.Lens' TableLFTagPolicy [LFTag]+tableLFTagPolicy_expression = Lens.lens (\TableLFTagPolicy' {expression} -> expression) (\s@TableLFTagPolicy' {} a -> s {expression = a} :: TableLFTagPolicy) Prelude.. Lens.coerced++instance Data.FromJSON TableLFTagPolicy where+ parseJSON =+ Data.withObject+ "TableLFTagPolicy"+ ( \x ->+ TableLFTagPolicy'+ Prelude.<$> (x Data..:? "Expression" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable TableLFTagPolicy where+ hashWithSalt _salt TableLFTagPolicy' {..} =+ _salt `Prelude.hashWithSalt` expression++instance Prelude.NFData TableLFTagPolicy where+ rnf TableLFTagPolicy' {..} = Prelude.rnf expression
+ gen/Amazonka/DataExchange/Types/TableLFTagPolicyAndPermissions.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.Types.TableLFTagPolicyAndPermissions+-- 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.DataExchange.Types.TableLFTagPolicyAndPermissions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types.LFTag+import Amazonka.DataExchange.Types.TableTagPolicyLFPermission+import qualified Amazonka.Prelude as Prelude++-- | The LF-tag policy and permissions that apply to table resources.+--+-- /See:/ 'newTableLFTagPolicyAndPermissions' smart constructor.+data TableLFTagPolicyAndPermissions = TableLFTagPolicyAndPermissions'+ { -- | A list of LF-tag conditions that apply to table resources.+ expression :: [LFTag],+ -- | The permissions granted to subscribers on table resources.+ permissions :: [TableTagPolicyLFPermission]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TableLFTagPolicyAndPermissions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'expression', 'tableLFTagPolicyAndPermissions_expression' - A list of LF-tag conditions that apply to table resources.+--+-- 'permissions', 'tableLFTagPolicyAndPermissions_permissions' - The permissions granted to subscribers on table resources.+newTableLFTagPolicyAndPermissions ::+ TableLFTagPolicyAndPermissions+newTableLFTagPolicyAndPermissions =+ TableLFTagPolicyAndPermissions'+ { expression =+ Prelude.mempty,+ permissions = Prelude.mempty+ }++-- | A list of LF-tag conditions that apply to table resources.+tableLFTagPolicyAndPermissions_expression :: Lens.Lens' TableLFTagPolicyAndPermissions [LFTag]+tableLFTagPolicyAndPermissions_expression = Lens.lens (\TableLFTagPolicyAndPermissions' {expression} -> expression) (\s@TableLFTagPolicyAndPermissions' {} a -> s {expression = a} :: TableLFTagPolicyAndPermissions) Prelude.. Lens.coerced++-- | The permissions granted to subscribers on table resources.+tableLFTagPolicyAndPermissions_permissions :: Lens.Lens' TableLFTagPolicyAndPermissions [TableTagPolicyLFPermission]+tableLFTagPolicyAndPermissions_permissions = Lens.lens (\TableLFTagPolicyAndPermissions' {permissions} -> permissions) (\s@TableLFTagPolicyAndPermissions' {} a -> s {permissions = a} :: TableLFTagPolicyAndPermissions) Prelude.. Lens.coerced++instance Data.FromJSON TableLFTagPolicyAndPermissions where+ parseJSON =+ Data.withObject+ "TableLFTagPolicyAndPermissions"+ ( \x ->+ TableLFTagPolicyAndPermissions'+ Prelude.<$> (x Data..:? "Expression" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Permissions" Data..!= Prelude.mempty)+ )++instance+ Prelude.Hashable+ TableLFTagPolicyAndPermissions+ where+ hashWithSalt+ _salt+ TableLFTagPolicyAndPermissions' {..} =+ _salt+ `Prelude.hashWithSalt` expression+ `Prelude.hashWithSalt` permissions++instance+ Prelude.NFData+ TableLFTagPolicyAndPermissions+ where+ rnf TableLFTagPolicyAndPermissions' {..} =+ Prelude.rnf expression+ `Prelude.seq` Prelude.rnf permissions++instance Data.ToJSON TableLFTagPolicyAndPermissions where+ toJSON TableLFTagPolicyAndPermissions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Expression" Data..= expression),+ Prelude.Just ("Permissions" Data..= permissions)+ ]+ )
+ gen/Amazonka/DataExchange/Types/TableTagPolicyLFPermission.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.DataExchange.Types.TableTagPolicyLFPermission+-- 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.DataExchange.Types.TableTagPolicyLFPermission+ ( TableTagPolicyLFPermission+ ( ..,+ TableTagPolicyLFPermission_DESCRIBE,+ TableTagPolicyLFPermission_SELECT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype TableTagPolicyLFPermission = TableTagPolicyLFPermission'+ { fromTableTagPolicyLFPermission ::+ 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 TableTagPolicyLFPermission_DESCRIBE :: TableTagPolicyLFPermission+pattern TableTagPolicyLFPermission_DESCRIBE = TableTagPolicyLFPermission' "DESCRIBE"++pattern TableTagPolicyLFPermission_SELECT :: TableTagPolicyLFPermission+pattern TableTagPolicyLFPermission_SELECT = TableTagPolicyLFPermission' "SELECT"++{-# COMPLETE+ TableTagPolicyLFPermission_DESCRIBE,+ TableTagPolicyLFPermission_SELECT,+ TableTagPolicyLFPermission'+ #-}
+ gen/Amazonka/DataExchange/Types/Type.hs view
@@ -0,0 +1,103 @@+{-# 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.DataExchange.Types.Type+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.DataExchange.Types.Type+ ( Type+ ( ..,+ Type_CREATE_S3_DATA_ACCESS_FROM_S3_BUCKET,+ Type_EXPORT_ASSETS_TO_S3,+ Type_EXPORT_ASSET_TO_SIGNED_URL,+ Type_EXPORT_REVISIONS_TO_S3,+ Type_IMPORT_ASSETS_FROM_LAKE_FORMATION_TAG_POLICY,+ Type_IMPORT_ASSETS_FROM_REDSHIFT_DATA_SHARES,+ Type_IMPORT_ASSETS_FROM_S3,+ Type_IMPORT_ASSET_FROM_API_GATEWAY_API,+ Type_IMPORT_ASSET_FROM_SIGNED_URL+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Type = Type' {fromType :: Data.Text}+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern Type_CREATE_S3_DATA_ACCESS_FROM_S3_BUCKET :: Type+pattern Type_CREATE_S3_DATA_ACCESS_FROM_S3_BUCKET = Type' "CREATE_S3_DATA_ACCESS_FROM_S3_BUCKET"++pattern Type_EXPORT_ASSETS_TO_S3 :: Type+pattern Type_EXPORT_ASSETS_TO_S3 = Type' "EXPORT_ASSETS_TO_S3"++pattern Type_EXPORT_ASSET_TO_SIGNED_URL :: Type+pattern Type_EXPORT_ASSET_TO_SIGNED_URL = Type' "EXPORT_ASSET_TO_SIGNED_URL"++pattern Type_EXPORT_REVISIONS_TO_S3 :: Type+pattern Type_EXPORT_REVISIONS_TO_S3 = Type' "EXPORT_REVISIONS_TO_S3"++pattern Type_IMPORT_ASSETS_FROM_LAKE_FORMATION_TAG_POLICY :: Type+pattern Type_IMPORT_ASSETS_FROM_LAKE_FORMATION_TAG_POLICY = Type' "IMPORT_ASSETS_FROM_LAKE_FORMATION_TAG_POLICY"++pattern Type_IMPORT_ASSETS_FROM_REDSHIFT_DATA_SHARES :: Type+pattern Type_IMPORT_ASSETS_FROM_REDSHIFT_DATA_SHARES = Type' "IMPORT_ASSETS_FROM_REDSHIFT_DATA_SHARES"++pattern Type_IMPORT_ASSETS_FROM_S3 :: Type+pattern Type_IMPORT_ASSETS_FROM_S3 = Type' "IMPORT_ASSETS_FROM_S3"++pattern Type_IMPORT_ASSET_FROM_API_GATEWAY_API :: Type+pattern Type_IMPORT_ASSET_FROM_API_GATEWAY_API = Type' "IMPORT_ASSET_FROM_API_GATEWAY_API"++pattern Type_IMPORT_ASSET_FROM_SIGNED_URL :: Type+pattern Type_IMPORT_ASSET_FROM_SIGNED_URL = Type' "IMPORT_ASSET_FROM_SIGNED_URL"++{-# COMPLETE+ Type_CREATE_S3_DATA_ACCESS_FROM_S3_BUCKET,+ Type_EXPORT_ASSETS_TO_S3,+ Type_EXPORT_ASSET_TO_SIGNED_URL,+ Type_EXPORT_REVISIONS_TO_S3,+ Type_IMPORT_ASSETS_FROM_LAKE_FORMATION_TAG_POLICY,+ Type_IMPORT_ASSETS_FROM_REDSHIFT_DATA_SHARES,+ Type_IMPORT_ASSETS_FROM_S3,+ Type_IMPORT_ASSET_FROM_API_GATEWAY_API,+ Type_IMPORT_ASSET_FROM_SIGNED_URL,+ Type'+ #-}
+ gen/Amazonka/DataExchange/UntagResource.hs view
@@ -0,0 +1,140 @@+{-# 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.DataExchange.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)+--+-- This operation removes one or more tags from a resource.+module Amazonka.DataExchange.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+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'+ { -- | An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.+ resourceArn :: Prelude.Text,+ -- | The key tags.+ 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' - An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.+--+-- 'tagKeys', 'untagResource_tagKeys' - The key tags.+newUntagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceArn_ =+ UntagResource'+ { resourceArn = pResourceArn_,+ tagKeys = Prelude.mempty+ }++-- | An Amazon Resource Name (ARN) that uniquely identifies an AWS resource.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | The key tags.+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.delete (overrides defaultService)+ response =+ Response.receiveNull UntagResourceResponse'++instance Prelude.Hashable UntagResource where+ hashWithSalt _salt UntagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagResource where+ rnf UntagResource' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath UntagResource where+ toPath UntagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery UntagResource where+ toQuery UntagResource' {..} =+ Prelude.mconcat+ ["tagKeys" Data.=: Data.toQueryList "member" tagKeys]++-- | /See:/ 'newUntagResourceResponse' smart constructor.+data UntagResourceResponse = UntagResourceResponse'+ {+ }+ 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.+newUntagResourceResponse ::+ UntagResourceResponse+newUntagResourceResponse = UntagResourceResponse'++instance Prelude.NFData UntagResourceResponse where+ rnf _ = ()
+ gen/Amazonka/DataExchange/UpdateAsset.hs view
@@ -0,0 +1,375 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.UpdateAsset+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation updates an asset.+module Amazonka.DataExchange.UpdateAsset+ ( -- * Creating a Request+ UpdateAsset (..),+ newUpdateAsset,++ -- * Request Lenses+ updateAsset_assetId,+ updateAsset_dataSetId,+ updateAsset_name,+ updateAsset_revisionId,++ -- * Destructuring the Response+ UpdateAssetResponse (..),+ newUpdateAssetResponse,++ -- * Response Lenses+ updateAssetResponse_arn,+ updateAssetResponse_assetDetails,+ updateAssetResponse_assetType,+ updateAssetResponse_createdAt,+ updateAssetResponse_dataSetId,+ updateAssetResponse_id,+ updateAssetResponse_name,+ updateAssetResponse_revisionId,+ updateAssetResponse_sourceId,+ updateAssetResponse_updatedAt,+ updateAssetResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateAsset' smart constructor.+data UpdateAsset = UpdateAsset'+ { -- | The unique identifier for an asset.+ assetId :: Prelude.Text,+ -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text,+ -- | The name of the asset. When importing from Amazon S3, the Amazon S3+ -- object key is used as the asset name. When exporting to Amazon S3, the+ -- asset name is used as default target Amazon S3 object key. When+ -- importing from Amazon API Gateway API, the API name is used as the asset+ -- name. When importing from Amazon Redshift, the datashare name is used as+ -- the asset name. When importing from AWS Lake Formation, the static+ -- values of \"Database(s) included in the LF-tag policy\" or \"Table(s)+ -- included in LF-tag policy\" are used as the name.+ name :: Prelude.Text,+ -- | The unique identifier for a revision.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assetId', 'updateAsset_assetId' - The unique identifier for an asset.+--+-- 'dataSetId', 'updateAsset_dataSetId' - The unique identifier for a data set.+--+-- 'name', 'updateAsset_name' - The name of the asset. When importing from Amazon S3, the Amazon S3+-- object key is used as the asset name. When exporting to Amazon S3, the+-- asset name is used as default target Amazon S3 object key. When+-- importing from Amazon API Gateway API, the API name is used as the asset+-- name. When importing from Amazon Redshift, the datashare name is used as+-- the asset name. When importing from AWS Lake Formation, the static+-- values of \"Database(s) included in the LF-tag policy\" or \"Table(s)+-- included in LF-tag policy\" are used as the name.+--+-- 'revisionId', 'updateAsset_revisionId' - The unique identifier for a revision.+newUpdateAsset ::+ -- | 'assetId'+ Prelude.Text ->+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ UpdateAsset+newUpdateAsset+ pAssetId_+ pDataSetId_+ pName_+ pRevisionId_ =+ UpdateAsset'+ { assetId = pAssetId_,+ dataSetId = pDataSetId_,+ name = pName_,+ revisionId = pRevisionId_+ }++-- | The unique identifier for an asset.+updateAsset_assetId :: Lens.Lens' UpdateAsset Prelude.Text+updateAsset_assetId = Lens.lens (\UpdateAsset' {assetId} -> assetId) (\s@UpdateAsset' {} a -> s {assetId = a} :: UpdateAsset)++-- | The unique identifier for a data set.+updateAsset_dataSetId :: Lens.Lens' UpdateAsset Prelude.Text+updateAsset_dataSetId = Lens.lens (\UpdateAsset' {dataSetId} -> dataSetId) (\s@UpdateAsset' {} a -> s {dataSetId = a} :: UpdateAsset)++-- | The name of the asset. When importing from Amazon S3, the Amazon S3+-- object key is used as the asset name. When exporting to Amazon S3, the+-- asset name is used as default target Amazon S3 object key. When+-- importing from Amazon API Gateway API, the API name is used as the asset+-- name. When importing from Amazon Redshift, the datashare name is used as+-- the asset name. When importing from AWS Lake Formation, the static+-- values of \"Database(s) included in the LF-tag policy\" or \"Table(s)+-- included in LF-tag policy\" are used as the name.+updateAsset_name :: Lens.Lens' UpdateAsset Prelude.Text+updateAsset_name = Lens.lens (\UpdateAsset' {name} -> name) (\s@UpdateAsset' {} a -> s {name = a} :: UpdateAsset)++-- | The unique identifier for a revision.+updateAsset_revisionId :: Lens.Lens' UpdateAsset Prelude.Text+updateAsset_revisionId = Lens.lens (\UpdateAsset' {revisionId} -> revisionId) (\s@UpdateAsset' {} a -> s {revisionId = a} :: UpdateAsset)++instance Core.AWSRequest UpdateAsset where+ type AWSResponse UpdateAsset = UpdateAssetResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateAssetResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "AssetDetails")+ Prelude.<*> (x Data..?> "AssetType")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "DataSetId")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "RevisionId")+ Prelude.<*> (x Data..?> "SourceId")+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateAsset where+ hashWithSalt _salt UpdateAsset' {..} =+ _salt+ `Prelude.hashWithSalt` assetId+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` revisionId++instance Prelude.NFData UpdateAsset where+ rnf UpdateAsset' {..} =+ Prelude.rnf assetId+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToHeaders UpdateAsset where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateAsset where+ toJSON UpdateAsset' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Name" Data..= name)]+ )++instance Data.ToPath UpdateAsset where+ toPath UpdateAsset' {..} =+ Prelude.mconcat+ [ "/v1/data-sets/",+ Data.toBS dataSetId,+ "/revisions/",+ Data.toBS revisionId,+ "/assets/",+ Data.toBS assetId+ ]++instance Data.ToQuery UpdateAsset where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateAssetResponse' smart constructor.+data UpdateAssetResponse = UpdateAssetResponse'+ { -- | The ARN for the asset.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Details about the asset.+ assetDetails :: Prelude.Maybe AssetDetails,+ -- | The type of asset that is added to a data set.+ assetType :: Prelude.Maybe AssetType,+ -- | The date and time that the asset was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | The unique identifier for the data set associated with this asset.+ dataSetId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the asset.+ id :: Prelude.Maybe Prelude.Text,+ -- | The name of the asset. When importing from Amazon S3, the Amazon S3+ -- object key is used as the asset name. When exporting to Amazon S3, the+ -- asset name is used as default target Amazon S3 object key. When+ -- importing from Amazon API Gateway API, the API name is used as the asset+ -- name. When importing from Amazon Redshift, the datashare name is used as+ -- the asset name. When importing from AWS Lake Formation, the static+ -- values of \"Database(s) included in the LF-tag policy\"- or \"Table(s)+ -- included in LF-tag policy\" are used as the asset name.+ name :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the revision associated with this asset.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The asset ID of the owned asset corresponding to the entitled asset+ -- being viewed. This parameter is returned when an asset owner is viewing+ -- the entitled copy of its owned asset.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the asset was last updated, in ISO 8601 format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateAssetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateAssetResponse_arn' - The ARN for the asset.+--+-- 'assetDetails', 'updateAssetResponse_assetDetails' - Details about the asset.+--+-- 'assetType', 'updateAssetResponse_assetType' - The type of asset that is added to a data set.+--+-- 'createdAt', 'updateAssetResponse_createdAt' - The date and time that the asset was created, in ISO 8601 format.+--+-- 'dataSetId', 'updateAssetResponse_dataSetId' - The unique identifier for the data set associated with this asset.+--+-- 'id', 'updateAssetResponse_id' - The unique identifier for the asset.+--+-- 'name', 'updateAssetResponse_name' - The name of the asset. When importing from Amazon S3, the Amazon S3+-- object key is used as the asset name. When exporting to Amazon S3, the+-- asset name is used as default target Amazon S3 object key. When+-- importing from Amazon API Gateway API, the API name is used as the asset+-- name. When importing from Amazon Redshift, the datashare name is used as+-- the asset name. When importing from AWS Lake Formation, the static+-- values of \"Database(s) included in the LF-tag policy\"- or \"Table(s)+-- included in LF-tag policy\" are used as the asset name.+--+-- 'revisionId', 'updateAssetResponse_revisionId' - The unique identifier for the revision associated with this asset.+--+-- 'sourceId', 'updateAssetResponse_sourceId' - The asset ID of the owned asset corresponding to the entitled asset+-- being viewed. This parameter is returned when an asset owner is viewing+-- the entitled copy of its owned asset.+--+-- 'updatedAt', 'updateAssetResponse_updatedAt' - The date and time that the asset was last updated, in ISO 8601 format.+--+-- 'httpStatus', 'updateAssetResponse_httpStatus' - The response's http status code.+newUpdateAssetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateAssetResponse+newUpdateAssetResponse pHttpStatus_ =+ UpdateAssetResponse'+ { arn = Prelude.Nothing,+ assetDetails = Prelude.Nothing,+ assetType = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ dataSetId = Prelude.Nothing,+ id = Prelude.Nothing,+ name = Prelude.Nothing,+ revisionId = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the asset.+updateAssetResponse_arn :: Lens.Lens' UpdateAssetResponse (Prelude.Maybe Prelude.Text)+updateAssetResponse_arn = Lens.lens (\UpdateAssetResponse' {arn} -> arn) (\s@UpdateAssetResponse' {} a -> s {arn = a} :: UpdateAssetResponse)++-- | Details about the asset.+updateAssetResponse_assetDetails :: Lens.Lens' UpdateAssetResponse (Prelude.Maybe AssetDetails)+updateAssetResponse_assetDetails = Lens.lens (\UpdateAssetResponse' {assetDetails} -> assetDetails) (\s@UpdateAssetResponse' {} a -> s {assetDetails = a} :: UpdateAssetResponse)++-- | The type of asset that is added to a data set.+updateAssetResponse_assetType :: Lens.Lens' UpdateAssetResponse (Prelude.Maybe AssetType)+updateAssetResponse_assetType = Lens.lens (\UpdateAssetResponse' {assetType} -> assetType) (\s@UpdateAssetResponse' {} a -> s {assetType = a} :: UpdateAssetResponse)++-- | The date and time that the asset was created, in ISO 8601 format.+updateAssetResponse_createdAt :: Lens.Lens' UpdateAssetResponse (Prelude.Maybe Prelude.UTCTime)+updateAssetResponse_createdAt = Lens.lens (\UpdateAssetResponse' {createdAt} -> createdAt) (\s@UpdateAssetResponse' {} a -> s {createdAt = a} :: UpdateAssetResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier for the data set associated with this asset.+updateAssetResponse_dataSetId :: Lens.Lens' UpdateAssetResponse (Prelude.Maybe Prelude.Text)+updateAssetResponse_dataSetId = Lens.lens (\UpdateAssetResponse' {dataSetId} -> dataSetId) (\s@UpdateAssetResponse' {} a -> s {dataSetId = a} :: UpdateAssetResponse)++-- | The unique identifier for the asset.+updateAssetResponse_id :: Lens.Lens' UpdateAssetResponse (Prelude.Maybe Prelude.Text)+updateAssetResponse_id = Lens.lens (\UpdateAssetResponse' {id} -> id) (\s@UpdateAssetResponse' {} a -> s {id = a} :: UpdateAssetResponse)++-- | The name of the asset. When importing from Amazon S3, the Amazon S3+-- object key is used as the asset name. When exporting to Amazon S3, the+-- asset name is used as default target Amazon S3 object key. When+-- importing from Amazon API Gateway API, the API name is used as the asset+-- name. When importing from Amazon Redshift, the datashare name is used as+-- the asset name. When importing from AWS Lake Formation, the static+-- values of \"Database(s) included in the LF-tag policy\"- or \"Table(s)+-- included in LF-tag policy\" are used as the asset name.+updateAssetResponse_name :: Lens.Lens' UpdateAssetResponse (Prelude.Maybe Prelude.Text)+updateAssetResponse_name = Lens.lens (\UpdateAssetResponse' {name} -> name) (\s@UpdateAssetResponse' {} a -> s {name = a} :: UpdateAssetResponse)++-- | The unique identifier for the revision associated with this asset.+updateAssetResponse_revisionId :: Lens.Lens' UpdateAssetResponse (Prelude.Maybe Prelude.Text)+updateAssetResponse_revisionId = Lens.lens (\UpdateAssetResponse' {revisionId} -> revisionId) (\s@UpdateAssetResponse' {} a -> s {revisionId = a} :: UpdateAssetResponse)++-- | The asset ID of the owned asset corresponding to the entitled asset+-- being viewed. This parameter is returned when an asset owner is viewing+-- the entitled copy of its owned asset.+updateAssetResponse_sourceId :: Lens.Lens' UpdateAssetResponse (Prelude.Maybe Prelude.Text)+updateAssetResponse_sourceId = Lens.lens (\UpdateAssetResponse' {sourceId} -> sourceId) (\s@UpdateAssetResponse' {} a -> s {sourceId = a} :: UpdateAssetResponse)++-- | The date and time that the asset was last updated, in ISO 8601 format.+updateAssetResponse_updatedAt :: Lens.Lens' UpdateAssetResponse (Prelude.Maybe Prelude.UTCTime)+updateAssetResponse_updatedAt = Lens.lens (\UpdateAssetResponse' {updatedAt} -> updatedAt) (\s@UpdateAssetResponse' {} a -> s {updatedAt = a} :: UpdateAssetResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+updateAssetResponse_httpStatus :: Lens.Lens' UpdateAssetResponse Prelude.Int+updateAssetResponse_httpStatus = Lens.lens (\UpdateAssetResponse' {httpStatus} -> httpStatus) (\s@UpdateAssetResponse' {} a -> s {httpStatus = a} :: UpdateAssetResponse)++instance Prelude.NFData UpdateAssetResponse where+ rnf UpdateAssetResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf assetDetails+ `Prelude.seq` Prelude.rnf assetType+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/UpdateDataSet.hs view
@@ -0,0 +1,318 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.UpdateDataSet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation updates a data set.+module Amazonka.DataExchange.UpdateDataSet+ ( -- * Creating a Request+ UpdateDataSet (..),+ newUpdateDataSet,++ -- * Request Lenses+ updateDataSet_description,+ updateDataSet_name,+ updateDataSet_dataSetId,++ -- * Destructuring the Response+ UpdateDataSetResponse (..),+ newUpdateDataSetResponse,++ -- * Response Lenses+ updateDataSetResponse_arn,+ updateDataSetResponse_assetType,+ updateDataSetResponse_createdAt,+ updateDataSetResponse_description,+ updateDataSetResponse_id,+ updateDataSetResponse_name,+ updateDataSetResponse_origin,+ updateDataSetResponse_originDetails,+ updateDataSetResponse_sourceId,+ updateDataSetResponse_updatedAt,+ updateDataSetResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateDataSet' smart constructor.+data UpdateDataSet = UpdateDataSet'+ { -- | The description for the data set.+ description :: Prelude.Maybe Prelude.Text,+ -- | The name of the data set.+ name :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateDataSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateDataSet_description' - The description for the data set.+--+-- 'name', 'updateDataSet_name' - The name of the data set.+--+-- 'dataSetId', 'updateDataSet_dataSetId' - The unique identifier for a data set.+newUpdateDataSet ::+ -- | 'dataSetId'+ Prelude.Text ->+ UpdateDataSet+newUpdateDataSet pDataSetId_ =+ UpdateDataSet'+ { description = Prelude.Nothing,+ name = Prelude.Nothing,+ dataSetId = pDataSetId_+ }++-- | The description for the data set.+updateDataSet_description :: Lens.Lens' UpdateDataSet (Prelude.Maybe Prelude.Text)+updateDataSet_description = Lens.lens (\UpdateDataSet' {description} -> description) (\s@UpdateDataSet' {} a -> s {description = a} :: UpdateDataSet)++-- | The name of the data set.+updateDataSet_name :: Lens.Lens' UpdateDataSet (Prelude.Maybe Prelude.Text)+updateDataSet_name = Lens.lens (\UpdateDataSet' {name} -> name) (\s@UpdateDataSet' {} a -> s {name = a} :: UpdateDataSet)++-- | The unique identifier for a data set.+updateDataSet_dataSetId :: Lens.Lens' UpdateDataSet Prelude.Text+updateDataSet_dataSetId = Lens.lens (\UpdateDataSet' {dataSetId} -> dataSetId) (\s@UpdateDataSet' {} a -> s {dataSetId = a} :: UpdateDataSet)++instance Core.AWSRequest UpdateDataSet where+ type+ AWSResponse UpdateDataSet =+ UpdateDataSetResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateDataSetResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "AssetType")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "Description")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "Origin")+ Prelude.<*> (x Data..?> "OriginDetails")+ Prelude.<*> (x Data..?> "SourceId")+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateDataSet where+ hashWithSalt _salt UpdateDataSet' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` dataSetId++instance Prelude.NFData UpdateDataSet where+ rnf UpdateDataSet' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf dataSetId++instance Data.ToHeaders UpdateDataSet where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateDataSet where+ toJSON UpdateDataSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Description" Data..=) Prelude.<$> description,+ ("Name" Data..=) Prelude.<$> name+ ]+ )++instance Data.ToPath UpdateDataSet where+ toPath UpdateDataSet' {..} =+ Prelude.mconcat+ ["/v1/data-sets/", Data.toBS dataSetId]++instance Data.ToQuery UpdateDataSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateDataSetResponse' smart constructor.+data UpdateDataSetResponse = UpdateDataSetResponse'+ { -- | The ARN for the data set.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The type of asset that is added to a data set.+ assetType :: Prelude.Maybe AssetType,+ -- | The date and time that the data set was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | The description for the data set.+ description :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the data set.+ id :: Prelude.Maybe Prelude.Text,+ -- | The name of the data set.+ name :: Prelude.Maybe Prelude.Text,+ -- | A property that defines the data set as OWNED by the account (for+ -- providers) or ENTITLED to the account (for subscribers).+ origin :: Prelude.Maybe Origin,+ -- | If the origin of this data set is ENTITLED, includes the details for the+ -- product on AWS Marketplace.+ originDetails :: Prelude.Maybe OriginDetails,+ -- | The data set ID of the owned data set corresponding to the entitled data+ -- set being viewed. This parameter is returned when a data set owner is+ -- viewing the entitled copy of its owned data set.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the data set was last updated, in ISO 8601+ -- format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateDataSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateDataSetResponse_arn' - The ARN for the data set.+--+-- 'assetType', 'updateDataSetResponse_assetType' - The type of asset that is added to a data set.+--+-- 'createdAt', 'updateDataSetResponse_createdAt' - The date and time that the data set was created, in ISO 8601 format.+--+-- 'description', 'updateDataSetResponse_description' - The description for the data set.+--+-- 'id', 'updateDataSetResponse_id' - The unique identifier for the data set.+--+-- 'name', 'updateDataSetResponse_name' - The name of the data set.+--+-- 'origin', 'updateDataSetResponse_origin' - A property that defines the data set as OWNED by the account (for+-- providers) or ENTITLED to the account (for subscribers).+--+-- 'originDetails', 'updateDataSetResponse_originDetails' - If the origin of this data set is ENTITLED, includes the details for the+-- product on AWS Marketplace.+--+-- 'sourceId', 'updateDataSetResponse_sourceId' - The data set ID of the owned data set corresponding to the entitled data+-- set being viewed. This parameter is returned when a data set owner is+-- viewing the entitled copy of its owned data set.+--+-- 'updatedAt', 'updateDataSetResponse_updatedAt' - The date and time that the data set was last updated, in ISO 8601+-- format.+--+-- 'httpStatus', 'updateDataSetResponse_httpStatus' - The response's http status code.+newUpdateDataSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateDataSetResponse+newUpdateDataSetResponse pHttpStatus_ =+ UpdateDataSetResponse'+ { arn = Prelude.Nothing,+ assetType = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ description = Prelude.Nothing,+ id = Prelude.Nothing,+ name = Prelude.Nothing,+ origin = Prelude.Nothing,+ originDetails = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the data set.+updateDataSetResponse_arn :: Lens.Lens' UpdateDataSetResponse (Prelude.Maybe Prelude.Text)+updateDataSetResponse_arn = Lens.lens (\UpdateDataSetResponse' {arn} -> arn) (\s@UpdateDataSetResponse' {} a -> s {arn = a} :: UpdateDataSetResponse)++-- | The type of asset that is added to a data set.+updateDataSetResponse_assetType :: Lens.Lens' UpdateDataSetResponse (Prelude.Maybe AssetType)+updateDataSetResponse_assetType = Lens.lens (\UpdateDataSetResponse' {assetType} -> assetType) (\s@UpdateDataSetResponse' {} a -> s {assetType = a} :: UpdateDataSetResponse)++-- | The date and time that the data set was created, in ISO 8601 format.+updateDataSetResponse_createdAt :: Lens.Lens' UpdateDataSetResponse (Prelude.Maybe Prelude.UTCTime)+updateDataSetResponse_createdAt = Lens.lens (\UpdateDataSetResponse' {createdAt} -> createdAt) (\s@UpdateDataSetResponse' {} a -> s {createdAt = a} :: UpdateDataSetResponse) Prelude.. Lens.mapping Data._Time++-- | The description for the data set.+updateDataSetResponse_description :: Lens.Lens' UpdateDataSetResponse (Prelude.Maybe Prelude.Text)+updateDataSetResponse_description = Lens.lens (\UpdateDataSetResponse' {description} -> description) (\s@UpdateDataSetResponse' {} a -> s {description = a} :: UpdateDataSetResponse)++-- | The unique identifier for the data set.+updateDataSetResponse_id :: Lens.Lens' UpdateDataSetResponse (Prelude.Maybe Prelude.Text)+updateDataSetResponse_id = Lens.lens (\UpdateDataSetResponse' {id} -> id) (\s@UpdateDataSetResponse' {} a -> s {id = a} :: UpdateDataSetResponse)++-- | The name of the data set.+updateDataSetResponse_name :: Lens.Lens' UpdateDataSetResponse (Prelude.Maybe Prelude.Text)+updateDataSetResponse_name = Lens.lens (\UpdateDataSetResponse' {name} -> name) (\s@UpdateDataSetResponse' {} a -> s {name = a} :: UpdateDataSetResponse)++-- | A property that defines the data set as OWNED by the account (for+-- providers) or ENTITLED to the account (for subscribers).+updateDataSetResponse_origin :: Lens.Lens' UpdateDataSetResponse (Prelude.Maybe Origin)+updateDataSetResponse_origin = Lens.lens (\UpdateDataSetResponse' {origin} -> origin) (\s@UpdateDataSetResponse' {} a -> s {origin = a} :: UpdateDataSetResponse)++-- | If the origin of this data set is ENTITLED, includes the details for the+-- product on AWS Marketplace.+updateDataSetResponse_originDetails :: Lens.Lens' UpdateDataSetResponse (Prelude.Maybe OriginDetails)+updateDataSetResponse_originDetails = Lens.lens (\UpdateDataSetResponse' {originDetails} -> originDetails) (\s@UpdateDataSetResponse' {} a -> s {originDetails = a} :: UpdateDataSetResponse)++-- | The data set ID of the owned data set corresponding to the entitled data+-- set being viewed. This parameter is returned when a data set owner is+-- viewing the entitled copy of its owned data set.+updateDataSetResponse_sourceId :: Lens.Lens' UpdateDataSetResponse (Prelude.Maybe Prelude.Text)+updateDataSetResponse_sourceId = Lens.lens (\UpdateDataSetResponse' {sourceId} -> sourceId) (\s@UpdateDataSetResponse' {} a -> s {sourceId = a} :: UpdateDataSetResponse)++-- | The date and time that the data set was last updated, in ISO 8601+-- format.+updateDataSetResponse_updatedAt :: Lens.Lens' UpdateDataSetResponse (Prelude.Maybe Prelude.UTCTime)+updateDataSetResponse_updatedAt = Lens.lens (\UpdateDataSetResponse' {updatedAt} -> updatedAt) (\s@UpdateDataSetResponse' {} a -> s {updatedAt = a} :: UpdateDataSetResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+updateDataSetResponse_httpStatus :: Lens.Lens' UpdateDataSetResponse Prelude.Int+updateDataSetResponse_httpStatus = Lens.lens (\UpdateDataSetResponse' {httpStatus} -> httpStatus) (\s@UpdateDataSetResponse' {} a -> s {httpStatus = a} :: UpdateDataSetResponse)++instance Prelude.NFData UpdateDataSetResponse where+ rnf UpdateDataSetResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf assetType+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf origin+ `Prelude.seq` Prelude.rnf originDetails+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/UpdateEventAction.hs view
@@ -0,0 +1,245 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.DataExchange.UpdateEventAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation updates the event action.+module Amazonka.DataExchange.UpdateEventAction+ ( -- * Creating a Request+ UpdateEventAction (..),+ newUpdateEventAction,++ -- * Request Lenses+ updateEventAction_action,+ updateEventAction_eventActionId,++ -- * Destructuring the Response+ UpdateEventActionResponse (..),+ newUpdateEventActionResponse,++ -- * Response Lenses+ updateEventActionResponse_action,+ updateEventActionResponse_arn,+ updateEventActionResponse_createdAt,+ updateEventActionResponse_event,+ updateEventActionResponse_id,+ updateEventActionResponse_updatedAt,+ updateEventActionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateEventAction' smart constructor.+data UpdateEventAction = UpdateEventAction'+ { -- | What occurs after a certain event.+ action :: Prelude.Maybe Action,+ -- | The unique identifier for the event action.+ eventActionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateEventAction' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'action', 'updateEventAction_action' - What occurs after a certain event.+--+-- 'eventActionId', 'updateEventAction_eventActionId' - The unique identifier for the event action.+newUpdateEventAction ::+ -- | 'eventActionId'+ Prelude.Text ->+ UpdateEventAction+newUpdateEventAction pEventActionId_ =+ UpdateEventAction'+ { action = Prelude.Nothing,+ eventActionId = pEventActionId_+ }++-- | What occurs after a certain event.+updateEventAction_action :: Lens.Lens' UpdateEventAction (Prelude.Maybe Action)+updateEventAction_action = Lens.lens (\UpdateEventAction' {action} -> action) (\s@UpdateEventAction' {} a -> s {action = a} :: UpdateEventAction)++-- | The unique identifier for the event action.+updateEventAction_eventActionId :: Lens.Lens' UpdateEventAction Prelude.Text+updateEventAction_eventActionId = Lens.lens (\UpdateEventAction' {eventActionId} -> eventActionId) (\s@UpdateEventAction' {} a -> s {eventActionId = a} :: UpdateEventAction)++instance Core.AWSRequest UpdateEventAction where+ type+ AWSResponse UpdateEventAction =+ UpdateEventActionResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateEventActionResponse'+ Prelude.<$> (x Data..?> "Action")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "Event")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateEventAction where+ hashWithSalt _salt UpdateEventAction' {..} =+ _salt+ `Prelude.hashWithSalt` action+ `Prelude.hashWithSalt` eventActionId++instance Prelude.NFData UpdateEventAction where+ rnf UpdateEventAction' {..} =+ Prelude.rnf action+ `Prelude.seq` Prelude.rnf eventActionId++instance Data.ToHeaders UpdateEventAction where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateEventAction where+ toJSON UpdateEventAction' {..} =+ Data.object+ ( Prelude.catMaybes+ [("Action" Data..=) Prelude.<$> action]+ )++instance Data.ToPath UpdateEventAction where+ toPath UpdateEventAction' {..} =+ Prelude.mconcat+ ["/v1/event-actions/", Data.toBS eventActionId]++instance Data.ToQuery UpdateEventAction where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateEventActionResponse' smart constructor.+data UpdateEventActionResponse = UpdateEventActionResponse'+ { -- | What occurs after a certain event.+ action :: Prelude.Maybe Action,+ -- | The ARN for the event action.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the event action was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | What occurs to start an action.+ event :: Prelude.Maybe Event,+ -- | The unique identifier for the event action.+ id :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the event action was last updated, in ISO 8601+ -- format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateEventActionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'action', 'updateEventActionResponse_action' - What occurs after a certain event.+--+-- 'arn', 'updateEventActionResponse_arn' - The ARN for the event action.+--+-- 'createdAt', 'updateEventActionResponse_createdAt' - The date and time that the event action was created, in ISO 8601 format.+--+-- 'event', 'updateEventActionResponse_event' - What occurs to start an action.+--+-- 'id', 'updateEventActionResponse_id' - The unique identifier for the event action.+--+-- 'updatedAt', 'updateEventActionResponse_updatedAt' - The date and time that the event action was last updated, in ISO 8601+-- format.+--+-- 'httpStatus', 'updateEventActionResponse_httpStatus' - The response's http status code.+newUpdateEventActionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateEventActionResponse+newUpdateEventActionResponse pHttpStatus_ =+ UpdateEventActionResponse'+ { action =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ event = Prelude.Nothing,+ id = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | What occurs after a certain event.+updateEventActionResponse_action :: Lens.Lens' UpdateEventActionResponse (Prelude.Maybe Action)+updateEventActionResponse_action = Lens.lens (\UpdateEventActionResponse' {action} -> action) (\s@UpdateEventActionResponse' {} a -> s {action = a} :: UpdateEventActionResponse)++-- | The ARN for the event action.+updateEventActionResponse_arn :: Lens.Lens' UpdateEventActionResponse (Prelude.Maybe Prelude.Text)+updateEventActionResponse_arn = Lens.lens (\UpdateEventActionResponse' {arn} -> arn) (\s@UpdateEventActionResponse' {} a -> s {arn = a} :: UpdateEventActionResponse)++-- | The date and time that the event action was created, in ISO 8601 format.+updateEventActionResponse_createdAt :: Lens.Lens' UpdateEventActionResponse (Prelude.Maybe Prelude.UTCTime)+updateEventActionResponse_createdAt = Lens.lens (\UpdateEventActionResponse' {createdAt} -> createdAt) (\s@UpdateEventActionResponse' {} a -> s {createdAt = a} :: UpdateEventActionResponse) Prelude.. Lens.mapping Data._Time++-- | What occurs to start an action.+updateEventActionResponse_event :: Lens.Lens' UpdateEventActionResponse (Prelude.Maybe Event)+updateEventActionResponse_event = Lens.lens (\UpdateEventActionResponse' {event} -> event) (\s@UpdateEventActionResponse' {} a -> s {event = a} :: UpdateEventActionResponse)++-- | The unique identifier for the event action.+updateEventActionResponse_id :: Lens.Lens' UpdateEventActionResponse (Prelude.Maybe Prelude.Text)+updateEventActionResponse_id = Lens.lens (\UpdateEventActionResponse' {id} -> id) (\s@UpdateEventActionResponse' {} a -> s {id = a} :: UpdateEventActionResponse)++-- | The date and time that the event action was last updated, in ISO 8601+-- format.+updateEventActionResponse_updatedAt :: Lens.Lens' UpdateEventActionResponse (Prelude.Maybe Prelude.UTCTime)+updateEventActionResponse_updatedAt = Lens.lens (\UpdateEventActionResponse' {updatedAt} -> updatedAt) (\s@UpdateEventActionResponse' {} a -> s {updatedAt = a} :: UpdateEventActionResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+updateEventActionResponse_httpStatus :: Lens.Lens' UpdateEventActionResponse Prelude.Int+updateEventActionResponse_httpStatus = Lens.lens (\UpdateEventActionResponse' {httpStatus} -> httpStatus) (\s@UpdateEventActionResponse' {} a -> s {httpStatus = a} :: UpdateEventActionResponse)++instance Prelude.NFData UpdateEventActionResponse where+ rnf UpdateEventActionResponse' {..} =+ Prelude.rnf action+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf event+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/UpdateRevision.hs view
@@ -0,0 +1,378 @@+{-# 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.DataExchange.UpdateRevision+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This operation updates a revision.+module Amazonka.DataExchange.UpdateRevision+ ( -- * Creating a Request+ UpdateRevision (..),+ newUpdateRevision,++ -- * Request Lenses+ updateRevision_comment,+ updateRevision_finalized,+ updateRevision_dataSetId,+ updateRevision_revisionId,++ -- * Destructuring the Response+ UpdateRevisionResponse (..),+ newUpdateRevisionResponse,++ -- * Response Lenses+ updateRevisionResponse_arn,+ updateRevisionResponse_comment,+ updateRevisionResponse_createdAt,+ updateRevisionResponse_dataSetId,+ updateRevisionResponse_finalized,+ updateRevisionResponse_id,+ updateRevisionResponse_revocationComment,+ updateRevisionResponse_revoked,+ updateRevisionResponse_revokedAt,+ updateRevisionResponse_sourceId,+ updateRevisionResponse_updatedAt,+ updateRevisionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateRevision' smart constructor.+data UpdateRevision = UpdateRevision'+ { -- | An optional comment about the revision.+ comment :: Prelude.Maybe Prelude.Text,+ -- | Finalizing a revision tells AWS Data Exchange that your changes to the+ -- assets in the revision are complete. After it\'s in this read-only+ -- state, you can publish the revision to your products.+ finalized :: Prelude.Maybe Prelude.Bool,+ -- | The unique identifier for a data set.+ dataSetId :: Prelude.Text,+ -- | The unique identifier for a revision.+ revisionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRevision' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'comment', 'updateRevision_comment' - An optional comment about the revision.+--+-- 'finalized', 'updateRevision_finalized' - Finalizing a revision tells AWS Data Exchange that your changes to the+-- assets in the revision are complete. After it\'s in this read-only+-- state, you can publish the revision to your products.+--+-- 'dataSetId', 'updateRevision_dataSetId' - The unique identifier for a data set.+--+-- 'revisionId', 'updateRevision_revisionId' - The unique identifier for a revision.+newUpdateRevision ::+ -- | 'dataSetId'+ Prelude.Text ->+ -- | 'revisionId'+ Prelude.Text ->+ UpdateRevision+newUpdateRevision pDataSetId_ pRevisionId_ =+ UpdateRevision'+ { comment = Prelude.Nothing,+ finalized = Prelude.Nothing,+ dataSetId = pDataSetId_,+ revisionId = pRevisionId_+ }++-- | An optional comment about the revision.+updateRevision_comment :: Lens.Lens' UpdateRevision (Prelude.Maybe Prelude.Text)+updateRevision_comment = Lens.lens (\UpdateRevision' {comment} -> comment) (\s@UpdateRevision' {} a -> s {comment = a} :: UpdateRevision)++-- | Finalizing a revision tells AWS Data Exchange that your changes to the+-- assets in the revision are complete. After it\'s in this read-only+-- state, you can publish the revision to your products.+updateRevision_finalized :: Lens.Lens' UpdateRevision (Prelude.Maybe Prelude.Bool)+updateRevision_finalized = Lens.lens (\UpdateRevision' {finalized} -> finalized) (\s@UpdateRevision' {} a -> s {finalized = a} :: UpdateRevision)++-- | The unique identifier for a data set.+updateRevision_dataSetId :: Lens.Lens' UpdateRevision Prelude.Text+updateRevision_dataSetId = Lens.lens (\UpdateRevision' {dataSetId} -> dataSetId) (\s@UpdateRevision' {} a -> s {dataSetId = a} :: UpdateRevision)++-- | The unique identifier for a revision.+updateRevision_revisionId :: Lens.Lens' UpdateRevision Prelude.Text+updateRevision_revisionId = Lens.lens (\UpdateRevision' {revisionId} -> revisionId) (\s@UpdateRevision' {} a -> s {revisionId = a} :: UpdateRevision)++instance Core.AWSRequest UpdateRevision where+ type+ AWSResponse UpdateRevision =+ UpdateRevisionResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateRevisionResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "Comment")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "DataSetId")+ Prelude.<*> (x Data..?> "Finalized")+ Prelude.<*> (x Data..?> "Id")+ Prelude.<*> (x Data..?> "RevocationComment")+ Prelude.<*> (x Data..?> "Revoked")+ Prelude.<*> (x Data..?> "RevokedAt")+ Prelude.<*> (x Data..?> "SourceId")+ Prelude.<*> (x Data..?> "UpdatedAt")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateRevision where+ hashWithSalt _salt UpdateRevision' {..} =+ _salt+ `Prelude.hashWithSalt` comment+ `Prelude.hashWithSalt` finalized+ `Prelude.hashWithSalt` dataSetId+ `Prelude.hashWithSalt` revisionId++instance Prelude.NFData UpdateRevision where+ rnf UpdateRevision' {..} =+ Prelude.rnf comment+ `Prelude.seq` Prelude.rnf finalized+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf revisionId++instance Data.ToHeaders UpdateRevision where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateRevision where+ toJSON UpdateRevision' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Comment" Data..=) Prelude.<$> comment,+ ("Finalized" Data..=) Prelude.<$> finalized+ ]+ )++instance Data.ToPath UpdateRevision where+ toPath UpdateRevision' {..} =+ Prelude.mconcat+ [ "/v1/data-sets/",+ Data.toBS dataSetId,+ "/revisions/",+ Data.toBS revisionId+ ]++instance Data.ToQuery UpdateRevision where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateRevisionResponse' smart constructor.+data UpdateRevisionResponse = UpdateRevisionResponse'+ { -- | The ARN for the revision.+ arn :: Prelude.Maybe Prelude.Text,+ -- | An optional comment about the revision.+ comment :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the revision was created, in ISO 8601 format.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | The unique identifier for the data set associated with the data set+ -- revision.+ dataSetId :: Prelude.Maybe Prelude.Text,+ -- | To publish a revision to a data set in a product, the revision must+ -- first be finalized. Finalizing a revision tells AWS Data Exchange that+ -- changes to the assets in the revision are complete. After it\'s in this+ -- read-only state, you can publish the revision to your products.+ -- Finalized revisions can be published through the AWS Data Exchange+ -- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+ -- Marketplace Catalog API action. When using the API, revisions are+ -- uniquely identified by their ARN.+ finalized :: Prelude.Maybe Prelude.Bool,+ -- | The unique identifier for the revision.+ id :: Prelude.Maybe Prelude.Text,+ -- | A required comment to inform subscribers of the reason their access to+ -- the revision was revoked.+ revocationComment :: Prelude.Maybe Prelude.Text,+ -- | A status indicating that subscribers\' access to the revision was+ -- revoked.+ revoked :: Prelude.Maybe Prelude.Bool,+ -- | The date and time that the revision was revoked, in ISO 8601 format.+ revokedAt :: Prelude.Maybe Data.ISO8601,+ -- | The revision ID of the owned revision corresponding to the entitled+ -- revision being viewed. This parameter is returned when a revision owner+ -- is viewing the entitled copy of its owned revision.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the revision was last updated, in ISO 8601+ -- format.+ updatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRevisionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateRevisionResponse_arn' - The ARN for the revision.+--+-- 'comment', 'updateRevisionResponse_comment' - An optional comment about the revision.+--+-- 'createdAt', 'updateRevisionResponse_createdAt' - The date and time that the revision was created, in ISO 8601 format.+--+-- 'dataSetId', 'updateRevisionResponse_dataSetId' - The unique identifier for the data set associated with the data set+-- revision.+--+-- 'finalized', 'updateRevisionResponse_finalized' - To publish a revision to a data set in a product, the revision must+-- first be finalized. Finalizing a revision tells AWS Data Exchange that+-- changes to the assets in the revision are complete. After it\'s in this+-- read-only state, you can publish the revision to your products.+-- Finalized revisions can be published through the AWS Data Exchange+-- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+-- Marketplace Catalog API action. When using the API, revisions are+-- uniquely identified by their ARN.+--+-- 'id', 'updateRevisionResponse_id' - The unique identifier for the revision.+--+-- 'revocationComment', 'updateRevisionResponse_revocationComment' - A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+--+-- 'revoked', 'updateRevisionResponse_revoked' - A status indicating that subscribers\' access to the revision was+-- revoked.+--+-- 'revokedAt', 'updateRevisionResponse_revokedAt' - The date and time that the revision was revoked, in ISO 8601 format.+--+-- 'sourceId', 'updateRevisionResponse_sourceId' - The revision ID of the owned revision corresponding to the entitled+-- revision being viewed. This parameter is returned when a revision owner+-- is viewing the entitled copy of its owned revision.+--+-- 'updatedAt', 'updateRevisionResponse_updatedAt' - The date and time that the revision was last updated, in ISO 8601+-- format.+--+-- 'httpStatus', 'updateRevisionResponse_httpStatus' - The response's http status code.+newUpdateRevisionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateRevisionResponse+newUpdateRevisionResponse pHttpStatus_ =+ UpdateRevisionResponse'+ { arn = Prelude.Nothing,+ comment = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ dataSetId = Prelude.Nothing,+ finalized = Prelude.Nothing,+ id = Prelude.Nothing,+ revocationComment = Prelude.Nothing,+ revoked = Prelude.Nothing,+ revokedAt = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ updatedAt = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN for the revision.+updateRevisionResponse_arn :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.Text)+updateRevisionResponse_arn = Lens.lens (\UpdateRevisionResponse' {arn} -> arn) (\s@UpdateRevisionResponse' {} a -> s {arn = a} :: UpdateRevisionResponse)++-- | An optional comment about the revision.+updateRevisionResponse_comment :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.Text)+updateRevisionResponse_comment = Lens.lens (\UpdateRevisionResponse' {comment} -> comment) (\s@UpdateRevisionResponse' {} a -> s {comment = a} :: UpdateRevisionResponse)++-- | The date and time that the revision was created, in ISO 8601 format.+updateRevisionResponse_createdAt :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.UTCTime)+updateRevisionResponse_createdAt = Lens.lens (\UpdateRevisionResponse' {createdAt} -> createdAt) (\s@UpdateRevisionResponse' {} a -> s {createdAt = a} :: UpdateRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier for the data set associated with the data set+-- revision.+updateRevisionResponse_dataSetId :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.Text)+updateRevisionResponse_dataSetId = Lens.lens (\UpdateRevisionResponse' {dataSetId} -> dataSetId) (\s@UpdateRevisionResponse' {} a -> s {dataSetId = a} :: UpdateRevisionResponse)++-- | To publish a revision to a data set in a product, the revision must+-- first be finalized. Finalizing a revision tells AWS Data Exchange that+-- changes to the assets in the revision are complete. After it\'s in this+-- read-only state, you can publish the revision to your products.+-- Finalized revisions can be published through the AWS Data Exchange+-- console or the AWS Marketplace Catalog API, using the StartChangeSet AWS+-- Marketplace Catalog API action. When using the API, revisions are+-- uniquely identified by their ARN.+updateRevisionResponse_finalized :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.Bool)+updateRevisionResponse_finalized = Lens.lens (\UpdateRevisionResponse' {finalized} -> finalized) (\s@UpdateRevisionResponse' {} a -> s {finalized = a} :: UpdateRevisionResponse)++-- | The unique identifier for the revision.+updateRevisionResponse_id :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.Text)+updateRevisionResponse_id = Lens.lens (\UpdateRevisionResponse' {id} -> id) (\s@UpdateRevisionResponse' {} a -> s {id = a} :: UpdateRevisionResponse)++-- | A required comment to inform subscribers of the reason their access to+-- the revision was revoked.+updateRevisionResponse_revocationComment :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.Text)+updateRevisionResponse_revocationComment = Lens.lens (\UpdateRevisionResponse' {revocationComment} -> revocationComment) (\s@UpdateRevisionResponse' {} a -> s {revocationComment = a} :: UpdateRevisionResponse)++-- | A status indicating that subscribers\' access to the revision was+-- revoked.+updateRevisionResponse_revoked :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.Bool)+updateRevisionResponse_revoked = Lens.lens (\UpdateRevisionResponse' {revoked} -> revoked) (\s@UpdateRevisionResponse' {} a -> s {revoked = a} :: UpdateRevisionResponse)++-- | The date and time that the revision was revoked, in ISO 8601 format.+updateRevisionResponse_revokedAt :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.UTCTime)+updateRevisionResponse_revokedAt = Lens.lens (\UpdateRevisionResponse' {revokedAt} -> revokedAt) (\s@UpdateRevisionResponse' {} a -> s {revokedAt = a} :: UpdateRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The revision ID of the owned revision corresponding to the entitled+-- revision being viewed. This parameter is returned when a revision owner+-- is viewing the entitled copy of its owned revision.+updateRevisionResponse_sourceId :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.Text)+updateRevisionResponse_sourceId = Lens.lens (\UpdateRevisionResponse' {sourceId} -> sourceId) (\s@UpdateRevisionResponse' {} a -> s {sourceId = a} :: UpdateRevisionResponse)++-- | The date and time that the revision was last updated, in ISO 8601+-- format.+updateRevisionResponse_updatedAt :: Lens.Lens' UpdateRevisionResponse (Prelude.Maybe Prelude.UTCTime)+updateRevisionResponse_updatedAt = Lens.lens (\UpdateRevisionResponse' {updatedAt} -> updatedAt) (\s@UpdateRevisionResponse' {} a -> s {updatedAt = a} :: UpdateRevisionResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+updateRevisionResponse_httpStatus :: Lens.Lens' UpdateRevisionResponse Prelude.Int+updateRevisionResponse_httpStatus = Lens.lens (\UpdateRevisionResponse' {httpStatus} -> httpStatus) (\s@UpdateRevisionResponse' {} a -> s {httpStatus = a} :: UpdateRevisionResponse)++instance Prelude.NFData UpdateRevisionResponse where+ rnf UpdateRevisionResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf comment+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf dataSetId+ `Prelude.seq` Prelude.rnf finalized+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf revocationComment+ `Prelude.seq` Prelude.rnf revoked+ `Prelude.seq` Prelude.rnf revokedAt+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf updatedAt+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/DataExchange/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.DataExchange.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.DataExchange.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.DataExchange.Lens+import Amazonka.DataExchange.Types+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.DataExchange+import Test.Amazonka.DataExchange.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "DataExchange"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/DataExchange.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.DataExchange+-- 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.DataExchange+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/DataExchange/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.DataExchange.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.DataExchange.Internal where
+ test/Test/Amazonka/Gen/DataExchange.hs view
@@ -0,0 +1,618 @@+{-# 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.DataExchange+-- 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.DataExchange where++import Amazonka.DataExchange+import qualified Data.Proxy as Proxy+import Test.Amazonka.DataExchange.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"+-- [ requestCancelJob $+-- newCancelJob+--+-- , requestCreateDataSet $+-- newCreateDataSet+--+-- , requestCreateEventAction $+-- newCreateEventAction+--+-- , requestCreateJob $+-- newCreateJob+--+-- , requestCreateRevision $+-- newCreateRevision+--+-- , requestDeleteAsset $+-- newDeleteAsset+--+-- , requestDeleteDataSet $+-- newDeleteDataSet+--+-- , requestDeleteEventAction $+-- newDeleteEventAction+--+-- , requestDeleteRevision $+-- newDeleteRevision+--+-- , requestGetAsset $+-- newGetAsset+--+-- , requestGetDataSet $+-- newGetDataSet+--+-- , requestGetEventAction $+-- newGetEventAction+--+-- , requestGetJob $+-- newGetJob+--+-- , requestGetRevision $+-- newGetRevision+--+-- , requestListDataSetRevisions $+-- newListDataSetRevisions+--+-- , requestListDataSets $+-- newListDataSets+--+-- , requestListEventActions $+-- newListEventActions+--+-- , requestListJobs $+-- newListJobs+--+-- , requestListRevisionAssets $+-- newListRevisionAssets+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestRevokeRevision $+-- newRevokeRevision+--+-- , requestSendApiAsset $+-- newSendApiAsset+--+-- , requestStartJob $+-- newStartJob+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateAsset $+-- newUpdateAsset+--+-- , requestUpdateDataSet $+-- newUpdateDataSet+--+-- , requestUpdateEventAction $+-- newUpdateEventAction+--+-- , requestUpdateRevision $+-- newUpdateRevision+--+-- ]++-- , testGroup "response"+-- [ responseCancelJob $+-- newCancelJobResponse+--+-- , responseCreateDataSet $+-- newCreateDataSetResponse+--+-- , responseCreateEventAction $+-- newCreateEventActionResponse+--+-- , responseCreateJob $+-- newCreateJobResponse+--+-- , responseCreateRevision $+-- newCreateRevisionResponse+--+-- , responseDeleteAsset $+-- newDeleteAssetResponse+--+-- , responseDeleteDataSet $+-- newDeleteDataSetResponse+--+-- , responseDeleteEventAction $+-- newDeleteEventActionResponse+--+-- , responseDeleteRevision $+-- newDeleteRevisionResponse+--+-- , responseGetAsset $+-- newGetAssetResponse+--+-- , responseGetDataSet $+-- newGetDataSetResponse+--+-- , responseGetEventAction $+-- newGetEventActionResponse+--+-- , responseGetJob $+-- newGetJobResponse+--+-- , responseGetRevision $+-- newGetRevisionResponse+--+-- , responseListDataSetRevisions $+-- newListDataSetRevisionsResponse+--+-- , responseListDataSets $+-- newListDataSetsResponse+--+-- , responseListEventActions $+-- newListEventActionsResponse+--+-- , responseListJobs $+-- newListJobsResponse+--+-- , responseListRevisionAssets $+-- newListRevisionAssetsResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responseRevokeRevision $+-- newRevokeRevisionResponse+--+-- , responseSendApiAsset $+-- newSendApiAssetResponse+--+-- , responseStartJob $+-- newStartJobResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateAsset $+-- newUpdateAssetResponse+--+-- , responseUpdateDataSet $+-- newUpdateDataSetResponse+--+-- , responseUpdateEventAction $+-- newUpdateEventActionResponse+--+-- , responseUpdateRevision $+-- newUpdateRevisionResponse+--+-- ]+-- ]++-- Requests++requestCancelJob :: CancelJob -> TestTree+requestCancelJob =+ req+ "CancelJob"+ "fixture/CancelJob.yaml"++requestCreateDataSet :: CreateDataSet -> TestTree+requestCreateDataSet =+ req+ "CreateDataSet"+ "fixture/CreateDataSet.yaml"++requestCreateEventAction :: CreateEventAction -> TestTree+requestCreateEventAction =+ req+ "CreateEventAction"+ "fixture/CreateEventAction.yaml"++requestCreateJob :: CreateJob -> TestTree+requestCreateJob =+ req+ "CreateJob"+ "fixture/CreateJob.yaml"++requestCreateRevision :: CreateRevision -> TestTree+requestCreateRevision =+ req+ "CreateRevision"+ "fixture/CreateRevision.yaml"++requestDeleteAsset :: DeleteAsset -> TestTree+requestDeleteAsset =+ req+ "DeleteAsset"+ "fixture/DeleteAsset.yaml"++requestDeleteDataSet :: DeleteDataSet -> TestTree+requestDeleteDataSet =+ req+ "DeleteDataSet"+ "fixture/DeleteDataSet.yaml"++requestDeleteEventAction :: DeleteEventAction -> TestTree+requestDeleteEventAction =+ req+ "DeleteEventAction"+ "fixture/DeleteEventAction.yaml"++requestDeleteRevision :: DeleteRevision -> TestTree+requestDeleteRevision =+ req+ "DeleteRevision"+ "fixture/DeleteRevision.yaml"++requestGetAsset :: GetAsset -> TestTree+requestGetAsset =+ req+ "GetAsset"+ "fixture/GetAsset.yaml"++requestGetDataSet :: GetDataSet -> TestTree+requestGetDataSet =+ req+ "GetDataSet"+ "fixture/GetDataSet.yaml"++requestGetEventAction :: GetEventAction -> TestTree+requestGetEventAction =+ req+ "GetEventAction"+ "fixture/GetEventAction.yaml"++requestGetJob :: GetJob -> TestTree+requestGetJob =+ req+ "GetJob"+ "fixture/GetJob.yaml"++requestGetRevision :: GetRevision -> TestTree+requestGetRevision =+ req+ "GetRevision"+ "fixture/GetRevision.yaml"++requestListDataSetRevisions :: ListDataSetRevisions -> TestTree+requestListDataSetRevisions =+ req+ "ListDataSetRevisions"+ "fixture/ListDataSetRevisions.yaml"++requestListDataSets :: ListDataSets -> TestTree+requestListDataSets =+ req+ "ListDataSets"+ "fixture/ListDataSets.yaml"++requestListEventActions :: ListEventActions -> TestTree+requestListEventActions =+ req+ "ListEventActions"+ "fixture/ListEventActions.yaml"++requestListJobs :: ListJobs -> TestTree+requestListJobs =+ req+ "ListJobs"+ "fixture/ListJobs.yaml"++requestListRevisionAssets :: ListRevisionAssets -> TestTree+requestListRevisionAssets =+ req+ "ListRevisionAssets"+ "fixture/ListRevisionAssets.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestRevokeRevision :: RevokeRevision -> TestTree+requestRevokeRevision =+ req+ "RevokeRevision"+ "fixture/RevokeRevision.yaml"++requestSendApiAsset :: SendApiAsset -> TestTree+requestSendApiAsset =+ req+ "SendApiAsset"+ "fixture/SendApiAsset.yaml"++requestStartJob :: StartJob -> TestTree+requestStartJob =+ req+ "StartJob"+ "fixture/StartJob.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateAsset :: UpdateAsset -> TestTree+requestUpdateAsset =+ req+ "UpdateAsset"+ "fixture/UpdateAsset.yaml"++requestUpdateDataSet :: UpdateDataSet -> TestTree+requestUpdateDataSet =+ req+ "UpdateDataSet"+ "fixture/UpdateDataSet.yaml"++requestUpdateEventAction :: UpdateEventAction -> TestTree+requestUpdateEventAction =+ req+ "UpdateEventAction"+ "fixture/UpdateEventAction.yaml"++requestUpdateRevision :: UpdateRevision -> TestTree+requestUpdateRevision =+ req+ "UpdateRevision"+ "fixture/UpdateRevision.yaml"++-- Responses++responseCancelJob :: CancelJobResponse -> TestTree+responseCancelJob =+ res+ "CancelJobResponse"+ "fixture/CancelJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CancelJob)++responseCreateDataSet :: CreateDataSetResponse -> TestTree+responseCreateDataSet =+ res+ "CreateDataSetResponse"+ "fixture/CreateDataSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateDataSet)++responseCreateEventAction :: CreateEventActionResponse -> TestTree+responseCreateEventAction =+ res+ "CreateEventActionResponse"+ "fixture/CreateEventActionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateEventAction)++responseCreateJob :: CreateJobResponse -> TestTree+responseCreateJob =+ res+ "CreateJobResponse"+ "fixture/CreateJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateJob)++responseCreateRevision :: CreateRevisionResponse -> TestTree+responseCreateRevision =+ res+ "CreateRevisionResponse"+ "fixture/CreateRevisionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateRevision)++responseDeleteAsset :: DeleteAssetResponse -> TestTree+responseDeleteAsset =+ res+ "DeleteAssetResponse"+ "fixture/DeleteAssetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteAsset)++responseDeleteDataSet :: DeleteDataSetResponse -> TestTree+responseDeleteDataSet =+ res+ "DeleteDataSetResponse"+ "fixture/DeleteDataSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteDataSet)++responseDeleteEventAction :: DeleteEventActionResponse -> TestTree+responseDeleteEventAction =+ res+ "DeleteEventActionResponse"+ "fixture/DeleteEventActionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteEventAction)++responseDeleteRevision :: DeleteRevisionResponse -> TestTree+responseDeleteRevision =+ res+ "DeleteRevisionResponse"+ "fixture/DeleteRevisionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteRevision)++responseGetAsset :: GetAssetResponse -> TestTree+responseGetAsset =+ res+ "GetAssetResponse"+ "fixture/GetAssetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetAsset)++responseGetDataSet :: GetDataSetResponse -> TestTree+responseGetDataSet =+ res+ "GetDataSetResponse"+ "fixture/GetDataSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetDataSet)++responseGetEventAction :: GetEventActionResponse -> TestTree+responseGetEventAction =+ res+ "GetEventActionResponse"+ "fixture/GetEventActionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetEventAction)++responseGetJob :: GetJobResponse -> TestTree+responseGetJob =+ res+ "GetJobResponse"+ "fixture/GetJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetJob)++responseGetRevision :: GetRevisionResponse -> TestTree+responseGetRevision =+ res+ "GetRevisionResponse"+ "fixture/GetRevisionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetRevision)++responseListDataSetRevisions :: ListDataSetRevisionsResponse -> TestTree+responseListDataSetRevisions =+ res+ "ListDataSetRevisionsResponse"+ "fixture/ListDataSetRevisionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListDataSetRevisions)++responseListDataSets :: ListDataSetsResponse -> TestTree+responseListDataSets =+ res+ "ListDataSetsResponse"+ "fixture/ListDataSetsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListDataSets)++responseListEventActions :: ListEventActionsResponse -> TestTree+responseListEventActions =+ res+ "ListEventActionsResponse"+ "fixture/ListEventActionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListEventActions)++responseListJobs :: ListJobsResponse -> TestTree+responseListJobs =+ res+ "ListJobsResponse"+ "fixture/ListJobsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListJobs)++responseListRevisionAssets :: ListRevisionAssetsResponse -> TestTree+responseListRevisionAssets =+ res+ "ListRevisionAssetsResponse"+ "fixture/ListRevisionAssetsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRevisionAssets)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseRevokeRevision :: RevokeRevisionResponse -> TestTree+responseRevokeRevision =+ res+ "RevokeRevisionResponse"+ "fixture/RevokeRevisionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RevokeRevision)++responseSendApiAsset :: SendApiAssetResponse -> TestTree+responseSendApiAsset =+ res+ "SendApiAssetResponse"+ "fixture/SendApiAssetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy SendApiAsset)++responseStartJob :: StartJobResponse -> TestTree+responseStartJob =+ res+ "StartJobResponse"+ "fixture/StartJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StartJob)++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)++responseUpdateAsset :: UpdateAssetResponse -> TestTree+responseUpdateAsset =+ res+ "UpdateAssetResponse"+ "fixture/UpdateAssetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateAsset)++responseUpdateDataSet :: UpdateDataSetResponse -> TestTree+responseUpdateDataSet =+ res+ "UpdateDataSetResponse"+ "fixture/UpdateDataSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateDataSet)++responseUpdateEventAction :: UpdateEventActionResponse -> TestTree+responseUpdateEventAction =+ res+ "UpdateEventActionResponse"+ "fixture/UpdateEventActionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateEventAction)++responseUpdateRevision :: UpdateRevisionResponse -> TestTree+responseUpdateRevision =+ res+ "UpdateRevisionResponse"+ "fixture/UpdateRevisionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateRevision)