amazonka-mediapackage-vod (empty) → 2.0
raw patch · 93 files changed
+9273/−0 lines, 93 filesdep +amazonka-coredep +amazonka-mediapackage-voddep +amazonka-test
Dependencies added: amazonka-core, amazonka-mediapackage-vod, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-mediapackage-vod.cabal +130/−0
- fixture/ConfigureLogs.yaml +10/−0
- fixture/ConfigureLogsResponse.proto +0/−0
- fixture/CreateAsset.yaml +10/−0
- fixture/CreateAssetResponse.proto +0/−0
- fixture/CreatePackagingConfiguration.yaml +10/−0
- fixture/CreatePackagingConfigurationResponse.proto +0/−0
- fixture/CreatePackagingGroup.yaml +10/−0
- fixture/CreatePackagingGroupResponse.proto +0/−0
- fixture/DeleteAsset.yaml +10/−0
- fixture/DeleteAssetResponse.proto +0/−0
- fixture/DeletePackagingConfiguration.yaml +10/−0
- fixture/DeletePackagingConfigurationResponse.proto +0/−0
- fixture/DeletePackagingGroup.yaml +10/−0
- fixture/DeletePackagingGroupResponse.proto +0/−0
- fixture/DescribeAsset.yaml +10/−0
- fixture/DescribeAssetResponse.proto +0/−0
- fixture/DescribePackagingConfiguration.yaml +10/−0
- fixture/DescribePackagingConfigurationResponse.proto +0/−0
- fixture/DescribePackagingGroup.yaml +10/−0
- fixture/DescribePackagingGroupResponse.proto +0/−0
- fixture/ListAssets.yaml +10/−0
- fixture/ListAssetsResponse.proto +0/−0
- fixture/ListPackagingConfigurations.yaml +10/−0
- fixture/ListPackagingConfigurationsResponse.proto +0/−0
- fixture/ListPackagingGroups.yaml +10/−0
- fixture/ListPackagingGroupsResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdatePackagingGroup.yaml +10/−0
- fixture/UpdatePackagingGroupResponse.proto +0/−0
- gen/Amazonka/MediaPackageVOD.hs +308/−0
- gen/Amazonka/MediaPackageVOD/ConfigureLogs.hs +244/−0
- gen/Amazonka/MediaPackageVOD/CreateAsset.hs +342/−0
- gen/Amazonka/MediaPackageVOD/CreatePackagingConfiguration.hs +335/−0
- gen/Amazonka/MediaPackageVOD/CreatePackagingGroup.hs +266/−0
- gen/Amazonka/MediaPackageVOD/DeleteAsset.hs +139/−0
- gen/Amazonka/MediaPackageVOD/DeletePackagingConfiguration.hs +157/−0
- gen/Amazonka/MediaPackageVOD/DeletePackagingGroup.hs +147/−0
- gen/Amazonka/MediaPackageVOD/DescribeAsset.hs +254/−0
- gen/Amazonka/MediaPackageVOD/DescribePackagingConfiguration.hs +258/−0
- gen/Amazonka/MediaPackageVOD/DescribePackagingGroup.hs +231/−0
- gen/Amazonka/MediaPackageVOD/Lens.hs +331/−0
- gen/Amazonka/MediaPackageVOD/ListAssets.hs +224/−0
- gen/Amazonka/MediaPackageVOD/ListPackagingConfigurations.hs +239/−0
- gen/Amazonka/MediaPackageVOD/ListPackagingGroups.hs +217/−0
- gen/Amazonka/MediaPackageVOD/ListTagsForResource.hs +162/−0
- gen/Amazonka/MediaPackageVOD/TagResource.hs +146/−0
- gen/Amazonka/MediaPackageVOD/Types.hs +369/−0
- gen/Amazonka/MediaPackageVOD/Types/AdMarkers.hs +76/−0
- gen/Amazonka/MediaPackageVOD/Types/AssetShallow.hs +155/−0
- gen/Amazonka/MediaPackageVOD/Types/Authorization.hs +107/−0
- gen/Amazonka/MediaPackageVOD/Types/CmafEncryption.hs +107/−0
- gen/Amazonka/MediaPackageVOD/Types/CmafPackage.hs +138/−0
- gen/Amazonka/MediaPackageVOD/Types/DashEncryption.hs +83/−0
- gen/Amazonka/MediaPackageVOD/Types/DashManifest.hs +188/−0
- gen/Amazonka/MediaPackageVOD/Types/DashPackage.hs +213/−0
- gen/Amazonka/MediaPackageVOD/Types/EgressAccessLogs.hs +75/−0
- gen/Amazonka/MediaPackageVOD/Types/EgressEndpoint.hs +107/−0
- gen/Amazonka/MediaPackageVOD/Types/EncryptionContractConfiguration.hs +124/−0
- gen/Amazonka/MediaPackageVOD/Types/EncryptionMethod.hs +71/−0
- gen/Amazonka/MediaPackageVOD/Types/HlsEncryption.hs +116/−0
- gen/Amazonka/MediaPackageVOD/Types/HlsManifest.hs +188/−0
- gen/Amazonka/MediaPackageVOD/Types/HlsPackage.hs +145/−0
- gen/Amazonka/MediaPackageVOD/Types/ManifestLayout.hs +71/−0
- gen/Amazonka/MediaPackageVOD/Types/MssEncryption.hs +82/−0
- gen/Amazonka/MediaPackageVOD/Types/MssManifest.hs +94/−0
- gen/Amazonka/MediaPackageVOD/Types/MssPackage.hs +108/−0
- gen/Amazonka/MediaPackageVOD/Types/PackagingConfiguration.hs +155/−0
- gen/Amazonka/MediaPackageVOD/Types/PackagingGroup.hs +144/−0
- gen/Amazonka/MediaPackageVOD/Types/PeriodTriggersElement.hs +66/−0
- gen/Amazonka/MediaPackageVOD/Types/PresetSpeke20Audio.hs +86/−0
- gen/Amazonka/MediaPackageVOD/Types/PresetSpeke20Video.hs +111/−0
- gen/Amazonka/MediaPackageVOD/Types/Profile.hs +68/−0
- gen/Amazonka/MediaPackageVOD/Types/ScteMarkersSource.hs +71/−0
- gen/Amazonka/MediaPackageVOD/Types/SegmentTemplateFormat.hs +76/−0
- gen/Amazonka/MediaPackageVOD/Types/SpekeKeyProvider.hs +129/−0
- gen/Amazonka/MediaPackageVOD/Types/StreamOrder.hs +76/−0
- gen/Amazonka/MediaPackageVOD/Types/StreamSelection.hs +110/−0
- gen/Amazonka/MediaPackageVOD/UntagResource.hs +144/−0
- gen/Amazonka/MediaPackageVOD/UpdatePackagingGroup.hs +256/−0
- gen/Amazonka/MediaPackageVOD/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/MediaPackageVOD.hs +378/−0
- test/Test/Amazonka/MediaPackageVOD.hs +20/−0
- test/Test/Amazonka/MediaPackageVOD/Internal.hs +8/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon Elemental MediaPackage VOD SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2018-11-07@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-mediapackage-vod)+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.MediaPackageVOD](http://hackage.haskell.org/package/amazonka-mediapackage-vod/docs/Amazonka-MediaPackageVOD.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-mediapackage-vod` 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-mediapackage-vod.cabal view
@@ -0,0 +1,130 @@+cabal-version: 2.2+name: amazonka-mediapackage-vod+version: 2.0+synopsis: Amazon Elemental MediaPackage VOD SDK.+homepage: https://github.com/brendanhay/amazonka+bug-reports: https://github.com/brendanhay/amazonka/issues+license: MPL-2.0+license-file: LICENSE+author: Brendan Hay+maintainer:+ Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright: Copyright (c) 2013-2023 Brendan Hay+category: AWS+build-type: Simple+extra-source-files:+ fixture/*.proto+ fixture/*.yaml+ README.md+ src/.gitkeep++description:+ Derived from API version @2018-11-07@ 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.MediaPackageVOD.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.MediaPackageVOD" 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-mediapackage-vod++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.MediaPackageVOD+ Amazonka.MediaPackageVOD.ConfigureLogs+ Amazonka.MediaPackageVOD.CreateAsset+ Amazonka.MediaPackageVOD.CreatePackagingConfiguration+ Amazonka.MediaPackageVOD.CreatePackagingGroup+ Amazonka.MediaPackageVOD.DeleteAsset+ Amazonka.MediaPackageVOD.DeletePackagingConfiguration+ Amazonka.MediaPackageVOD.DeletePackagingGroup+ Amazonka.MediaPackageVOD.DescribeAsset+ Amazonka.MediaPackageVOD.DescribePackagingConfiguration+ Amazonka.MediaPackageVOD.DescribePackagingGroup+ Amazonka.MediaPackageVOD.Lens+ Amazonka.MediaPackageVOD.ListAssets+ Amazonka.MediaPackageVOD.ListPackagingConfigurations+ Amazonka.MediaPackageVOD.ListPackagingGroups+ Amazonka.MediaPackageVOD.ListTagsForResource+ Amazonka.MediaPackageVOD.TagResource+ Amazonka.MediaPackageVOD.Types+ Amazonka.MediaPackageVOD.Types.AdMarkers+ Amazonka.MediaPackageVOD.Types.AssetShallow+ Amazonka.MediaPackageVOD.Types.Authorization+ Amazonka.MediaPackageVOD.Types.CmafEncryption+ Amazonka.MediaPackageVOD.Types.CmafPackage+ Amazonka.MediaPackageVOD.Types.DashEncryption+ Amazonka.MediaPackageVOD.Types.DashManifest+ Amazonka.MediaPackageVOD.Types.DashPackage+ Amazonka.MediaPackageVOD.Types.EgressAccessLogs+ Amazonka.MediaPackageVOD.Types.EgressEndpoint+ Amazonka.MediaPackageVOD.Types.EncryptionContractConfiguration+ Amazonka.MediaPackageVOD.Types.EncryptionMethod+ Amazonka.MediaPackageVOD.Types.HlsEncryption+ Amazonka.MediaPackageVOD.Types.HlsManifest+ Amazonka.MediaPackageVOD.Types.HlsPackage+ Amazonka.MediaPackageVOD.Types.ManifestLayout+ Amazonka.MediaPackageVOD.Types.MssEncryption+ Amazonka.MediaPackageVOD.Types.MssManifest+ Amazonka.MediaPackageVOD.Types.MssPackage+ Amazonka.MediaPackageVOD.Types.PackagingConfiguration+ Amazonka.MediaPackageVOD.Types.PackagingGroup+ Amazonka.MediaPackageVOD.Types.PeriodTriggersElement+ Amazonka.MediaPackageVOD.Types.PresetSpeke20Audio+ Amazonka.MediaPackageVOD.Types.PresetSpeke20Video+ Amazonka.MediaPackageVOD.Types.Profile+ Amazonka.MediaPackageVOD.Types.ScteMarkersSource+ Amazonka.MediaPackageVOD.Types.SegmentTemplateFormat+ Amazonka.MediaPackageVOD.Types.SpekeKeyProvider+ Amazonka.MediaPackageVOD.Types.StreamOrder+ Amazonka.MediaPackageVOD.Types.StreamSelection+ Amazonka.MediaPackageVOD.UntagResource+ Amazonka.MediaPackageVOD.UpdatePackagingGroup+ Amazonka.MediaPackageVOD.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-mediapackage-vod-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs+ ghc-options: -Wall -threaded++ -- This section is encoded by the template and any modules added by+ -- hand outside these namespaces will not correctly be added to the+ -- distribution package.+ other-modules:+ Test.Amazonka.Gen.MediaPackageVOD+ Test.Amazonka.MediaPackageVOD+ Test.Amazonka.MediaPackageVOD.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-mediapackage-vod+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/ConfigureLogs.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/ConfigureLogsResponse.proto view
+ fixture/CreateAsset.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/CreateAssetResponse.proto view
+ fixture/CreatePackagingConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/CreatePackagingConfigurationResponse.proto view
+ fixture/CreatePackagingGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/CreatePackagingGroupResponse.proto view
+ fixture/DeleteAsset.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/DeletePackagingConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/DeletePackagingConfigurationResponse.proto view
+ fixture/DeletePackagingGroup.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/DeletePackagingGroupResponse.proto view
+ fixture/DescribeAsset.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/DescribeAssetResponse.proto view
+ fixture/DescribePackagingConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/DescribePackagingConfigurationResponse.proto view
+ fixture/DescribePackagingGroup.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/DescribePackagingGroupResponse.proto view
+ fixture/ListAssets.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/ListAssetsResponse.proto view
+ fixture/ListPackagingConfigurations.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/ListPackagingConfigurationsResponse.proto view
+ fixture/ListPackagingGroups.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/ListPackagingGroupsResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/UpdatePackagingGroup.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mediapackage-vod/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mediapackage-vod.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/UpdatePackagingGroupResponse.proto view
+ gen/Amazonka/MediaPackageVOD.hs view
@@ -0,0 +1,308 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.MediaPackageVOD+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2018-11-07@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- AWS Elemental MediaPackage VOD+module Amazonka.MediaPackageVOD+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** ForbiddenException+ _ForbiddenException,++ -- ** InternalServerErrorException+ _InternalServerErrorException,++ -- ** NotFoundException+ _NotFoundException,++ -- ** ServiceUnavailableException+ _ServiceUnavailableException,++ -- ** TooManyRequestsException+ _TooManyRequestsException,++ -- ** UnprocessableEntityException+ _UnprocessableEntityException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** ConfigureLogs+ ConfigureLogs (ConfigureLogs'),+ newConfigureLogs,+ ConfigureLogsResponse (ConfigureLogsResponse'),+ newConfigureLogsResponse,++ -- ** CreateAsset+ CreateAsset (CreateAsset'),+ newCreateAsset,+ CreateAssetResponse (CreateAssetResponse'),+ newCreateAssetResponse,++ -- ** CreatePackagingConfiguration+ CreatePackagingConfiguration (CreatePackagingConfiguration'),+ newCreatePackagingConfiguration,+ CreatePackagingConfigurationResponse (CreatePackagingConfigurationResponse'),+ newCreatePackagingConfigurationResponse,++ -- ** CreatePackagingGroup+ CreatePackagingGroup (CreatePackagingGroup'),+ newCreatePackagingGroup,+ CreatePackagingGroupResponse (CreatePackagingGroupResponse'),+ newCreatePackagingGroupResponse,++ -- ** DeleteAsset+ DeleteAsset (DeleteAsset'),+ newDeleteAsset,+ DeleteAssetResponse (DeleteAssetResponse'),+ newDeleteAssetResponse,++ -- ** DeletePackagingConfiguration+ DeletePackagingConfiguration (DeletePackagingConfiguration'),+ newDeletePackagingConfiguration,+ DeletePackagingConfigurationResponse (DeletePackagingConfigurationResponse'),+ newDeletePackagingConfigurationResponse,++ -- ** DeletePackagingGroup+ DeletePackagingGroup (DeletePackagingGroup'),+ newDeletePackagingGroup,+ DeletePackagingGroupResponse (DeletePackagingGroupResponse'),+ newDeletePackagingGroupResponse,++ -- ** DescribeAsset+ DescribeAsset (DescribeAsset'),+ newDescribeAsset,+ DescribeAssetResponse (DescribeAssetResponse'),+ newDescribeAssetResponse,++ -- ** DescribePackagingConfiguration+ DescribePackagingConfiguration (DescribePackagingConfiguration'),+ newDescribePackagingConfiguration,+ DescribePackagingConfigurationResponse (DescribePackagingConfigurationResponse'),+ newDescribePackagingConfigurationResponse,++ -- ** DescribePackagingGroup+ DescribePackagingGroup (DescribePackagingGroup'),+ newDescribePackagingGroup,+ DescribePackagingGroupResponse (DescribePackagingGroupResponse'),+ newDescribePackagingGroupResponse,++ -- ** ListAssets (Paginated)+ ListAssets (ListAssets'),+ newListAssets,+ ListAssetsResponse (ListAssetsResponse'),+ newListAssetsResponse,++ -- ** ListPackagingConfigurations (Paginated)+ ListPackagingConfigurations (ListPackagingConfigurations'),+ newListPackagingConfigurations,+ ListPackagingConfigurationsResponse (ListPackagingConfigurationsResponse'),+ newListPackagingConfigurationsResponse,++ -- ** ListPackagingGroups (Paginated)+ ListPackagingGroups (ListPackagingGroups'),+ newListPackagingGroups,+ ListPackagingGroupsResponse (ListPackagingGroupsResponse'),+ newListPackagingGroupsResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdatePackagingGroup+ UpdatePackagingGroup (UpdatePackagingGroup'),+ newUpdatePackagingGroup,+ UpdatePackagingGroupResponse (UpdatePackagingGroupResponse'),+ newUpdatePackagingGroupResponse,++ -- * Types++ -- ** AdMarkers+ AdMarkers (..),++ -- ** EncryptionMethod+ EncryptionMethod (..),++ -- ** ManifestLayout+ ManifestLayout (..),++ -- ** PeriodTriggersElement+ PeriodTriggersElement (..),++ -- ** PresetSpeke20Audio+ PresetSpeke20Audio (..),++ -- ** PresetSpeke20Video+ PresetSpeke20Video (..),++ -- ** Profile+ Profile (..),++ -- ** ScteMarkersSource+ ScteMarkersSource (..),++ -- ** SegmentTemplateFormat+ SegmentTemplateFormat (..),++ -- ** StreamOrder+ StreamOrder (..),++ -- ** AssetShallow+ AssetShallow (AssetShallow'),+ newAssetShallow,++ -- ** Authorization+ Authorization (Authorization'),+ newAuthorization,++ -- ** CmafEncryption+ CmafEncryption (CmafEncryption'),+ newCmafEncryption,++ -- ** CmafPackage+ CmafPackage (CmafPackage'),+ newCmafPackage,++ -- ** DashEncryption+ DashEncryption (DashEncryption'),+ newDashEncryption,++ -- ** DashManifest+ DashManifest (DashManifest'),+ newDashManifest,++ -- ** DashPackage+ DashPackage (DashPackage'),+ newDashPackage,++ -- ** EgressAccessLogs+ EgressAccessLogs (EgressAccessLogs'),+ newEgressAccessLogs,++ -- ** EgressEndpoint+ EgressEndpoint (EgressEndpoint'),+ newEgressEndpoint,++ -- ** EncryptionContractConfiguration+ EncryptionContractConfiguration (EncryptionContractConfiguration'),+ newEncryptionContractConfiguration,++ -- ** HlsEncryption+ HlsEncryption (HlsEncryption'),+ newHlsEncryption,++ -- ** HlsManifest+ HlsManifest (HlsManifest'),+ newHlsManifest,++ -- ** HlsPackage+ HlsPackage (HlsPackage'),+ newHlsPackage,++ -- ** MssEncryption+ MssEncryption (MssEncryption'),+ newMssEncryption,++ -- ** MssManifest+ MssManifest (MssManifest'),+ newMssManifest,++ -- ** MssPackage+ MssPackage (MssPackage'),+ newMssPackage,++ -- ** PackagingConfiguration+ PackagingConfiguration (PackagingConfiguration'),+ newPackagingConfiguration,++ -- ** PackagingGroup+ PackagingGroup (PackagingGroup'),+ newPackagingGroup,++ -- ** SpekeKeyProvider+ SpekeKeyProvider (SpekeKeyProvider'),+ newSpekeKeyProvider,++ -- ** StreamSelection+ StreamSelection (StreamSelection'),+ newStreamSelection,+ )+where++import Amazonka.MediaPackageVOD.ConfigureLogs+import Amazonka.MediaPackageVOD.CreateAsset+import Amazonka.MediaPackageVOD.CreatePackagingConfiguration+import Amazonka.MediaPackageVOD.CreatePackagingGroup+import Amazonka.MediaPackageVOD.DeleteAsset+import Amazonka.MediaPackageVOD.DeletePackagingConfiguration+import Amazonka.MediaPackageVOD.DeletePackagingGroup+import Amazonka.MediaPackageVOD.DescribeAsset+import Amazonka.MediaPackageVOD.DescribePackagingConfiguration+import Amazonka.MediaPackageVOD.DescribePackagingGroup+import Amazonka.MediaPackageVOD.Lens+import Amazonka.MediaPackageVOD.ListAssets+import Amazonka.MediaPackageVOD.ListPackagingConfigurations+import Amazonka.MediaPackageVOD.ListPackagingGroups+import Amazonka.MediaPackageVOD.ListTagsForResource+import Amazonka.MediaPackageVOD.TagResource+import Amazonka.MediaPackageVOD.Types+import Amazonka.MediaPackageVOD.UntagResource+import Amazonka.MediaPackageVOD.UpdatePackagingGroup+import Amazonka.MediaPackageVOD.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 'MediaPackageVOD'.++-- $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/MediaPackageVOD/ConfigureLogs.hs view
@@ -0,0 +1,244 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.ConfigureLogs+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Changes the packaging group\'s properities to configure log subscription+module Amazonka.MediaPackageVOD.ConfigureLogs+ ( -- * Creating a Request+ ConfigureLogs (..),+ newConfigureLogs,++ -- * Request Lenses+ configureLogs_egressAccessLogs,+ configureLogs_id,++ -- * Destructuring the Response+ ConfigureLogsResponse (..),+ newConfigureLogsResponse,++ -- * Response Lenses+ configureLogsResponse_arn,+ configureLogsResponse_authorization,+ configureLogsResponse_domainName,+ configureLogsResponse_egressAccessLogs,+ configureLogsResponse_id,+ configureLogsResponse_tags,+ configureLogsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | The option to configure log subscription.+--+-- /See:/ 'newConfigureLogs' smart constructor.+data ConfigureLogs = ConfigureLogs'+ { egressAccessLogs :: Prelude.Maybe EgressAccessLogs,+ -- | The ID of a MediaPackage VOD PackagingGroup resource.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ConfigureLogs' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'egressAccessLogs', 'configureLogs_egressAccessLogs' - Undocumented member.+--+-- 'id', 'configureLogs_id' - The ID of a MediaPackage VOD PackagingGroup resource.+newConfigureLogs ::+ -- | 'id'+ Prelude.Text ->+ ConfigureLogs+newConfigureLogs pId_ =+ ConfigureLogs'+ { egressAccessLogs = Prelude.Nothing,+ id = pId_+ }++-- | Undocumented member.+configureLogs_egressAccessLogs :: Lens.Lens' ConfigureLogs (Prelude.Maybe EgressAccessLogs)+configureLogs_egressAccessLogs = Lens.lens (\ConfigureLogs' {egressAccessLogs} -> egressAccessLogs) (\s@ConfigureLogs' {} a -> s {egressAccessLogs = a} :: ConfigureLogs)++-- | The ID of a MediaPackage VOD PackagingGroup resource.+configureLogs_id :: Lens.Lens' ConfigureLogs Prelude.Text+configureLogs_id = Lens.lens (\ConfigureLogs' {id} -> id) (\s@ConfigureLogs' {} a -> s {id = a} :: ConfigureLogs)++instance Core.AWSRequest ConfigureLogs where+ type+ AWSResponse ConfigureLogs =+ ConfigureLogsResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ConfigureLogsResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "authorization")+ Prelude.<*> (x Data..?> "domainName")+ Prelude.<*> (x Data..?> "egressAccessLogs")+ Prelude.<*> (x Data..?> "id")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ConfigureLogs where+ hashWithSalt _salt ConfigureLogs' {..} =+ _salt+ `Prelude.hashWithSalt` egressAccessLogs+ `Prelude.hashWithSalt` id++instance Prelude.NFData ConfigureLogs where+ rnf ConfigureLogs' {..} =+ Prelude.rnf egressAccessLogs+ `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders ConfigureLogs where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ConfigureLogs where+ toJSON ConfigureLogs' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("egressAccessLogs" Data..=)+ Prelude.<$> egressAccessLogs+ ]+ )++instance Data.ToPath ConfigureLogs where+ toPath ConfigureLogs' {..} =+ Prelude.mconcat+ [ "/packaging_groups/",+ Data.toBS id,+ "/configure_logs"+ ]++instance Data.ToQuery ConfigureLogs where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newConfigureLogsResponse' smart constructor.+data ConfigureLogsResponse = ConfigureLogsResponse'+ { -- | The ARN of the PackagingGroup.+ arn :: Prelude.Maybe Prelude.Text,+ authorization :: Prelude.Maybe Authorization,+ -- | The fully qualified domain name for Assets in the PackagingGroup.+ domainName :: Prelude.Maybe Prelude.Text,+ egressAccessLogs :: Prelude.Maybe EgressAccessLogs,+ -- | The ID of the PackagingGroup.+ id :: Prelude.Maybe Prelude.Text,+ 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 'ConfigureLogsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'configureLogsResponse_arn' - The ARN of the PackagingGroup.+--+-- 'authorization', 'configureLogsResponse_authorization' - Undocumented member.+--+-- 'domainName', 'configureLogsResponse_domainName' - The fully qualified domain name for Assets in the PackagingGroup.+--+-- 'egressAccessLogs', 'configureLogsResponse_egressAccessLogs' - Undocumented member.+--+-- 'id', 'configureLogsResponse_id' - The ID of the PackagingGroup.+--+-- 'tags', 'configureLogsResponse_tags' - Undocumented member.+--+-- 'httpStatus', 'configureLogsResponse_httpStatus' - The response's http status code.+newConfigureLogsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ConfigureLogsResponse+newConfigureLogsResponse pHttpStatus_ =+ ConfigureLogsResponse'+ { arn = Prelude.Nothing,+ authorization = Prelude.Nothing,+ domainName = Prelude.Nothing,+ egressAccessLogs = Prelude.Nothing,+ id = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN of the PackagingGroup.+configureLogsResponse_arn :: Lens.Lens' ConfigureLogsResponse (Prelude.Maybe Prelude.Text)+configureLogsResponse_arn = Lens.lens (\ConfigureLogsResponse' {arn} -> arn) (\s@ConfigureLogsResponse' {} a -> s {arn = a} :: ConfigureLogsResponse)++-- | Undocumented member.+configureLogsResponse_authorization :: Lens.Lens' ConfigureLogsResponse (Prelude.Maybe Authorization)+configureLogsResponse_authorization = Lens.lens (\ConfigureLogsResponse' {authorization} -> authorization) (\s@ConfigureLogsResponse' {} a -> s {authorization = a} :: ConfigureLogsResponse)++-- | The fully qualified domain name for Assets in the PackagingGroup.+configureLogsResponse_domainName :: Lens.Lens' ConfigureLogsResponse (Prelude.Maybe Prelude.Text)+configureLogsResponse_domainName = Lens.lens (\ConfigureLogsResponse' {domainName} -> domainName) (\s@ConfigureLogsResponse' {} a -> s {domainName = a} :: ConfigureLogsResponse)++-- | Undocumented member.+configureLogsResponse_egressAccessLogs :: Lens.Lens' ConfigureLogsResponse (Prelude.Maybe EgressAccessLogs)+configureLogsResponse_egressAccessLogs = Lens.lens (\ConfigureLogsResponse' {egressAccessLogs} -> egressAccessLogs) (\s@ConfigureLogsResponse' {} a -> s {egressAccessLogs = a} :: ConfigureLogsResponse)++-- | The ID of the PackagingGroup.+configureLogsResponse_id :: Lens.Lens' ConfigureLogsResponse (Prelude.Maybe Prelude.Text)+configureLogsResponse_id = Lens.lens (\ConfigureLogsResponse' {id} -> id) (\s@ConfigureLogsResponse' {} a -> s {id = a} :: ConfigureLogsResponse)++-- | Undocumented member.+configureLogsResponse_tags :: Lens.Lens' ConfigureLogsResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+configureLogsResponse_tags = Lens.lens (\ConfigureLogsResponse' {tags} -> tags) (\s@ConfigureLogsResponse' {} a -> s {tags = a} :: ConfigureLogsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+configureLogsResponse_httpStatus :: Lens.Lens' ConfigureLogsResponse Prelude.Int+configureLogsResponse_httpStatus = Lens.lens (\ConfigureLogsResponse' {httpStatus} -> httpStatus) (\s@ConfigureLogsResponse' {} a -> s {httpStatus = a} :: ConfigureLogsResponse)++instance Prelude.NFData ConfigureLogsResponse where+ rnf ConfigureLogsResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf authorization+ `Prelude.seq` Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf egressAccessLogs+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/CreateAsset.hs view
@@ -0,0 +1,342 @@+{-# 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.MediaPackageVOD.CreateAsset+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new MediaPackage VOD Asset resource.+module Amazonka.MediaPackageVOD.CreateAsset+ ( -- * Creating a Request+ CreateAsset (..),+ newCreateAsset,++ -- * Request Lenses+ createAsset_resourceId,+ createAsset_tags,+ createAsset_sourceArn,+ createAsset_id,+ createAsset_packagingGroupId,+ createAsset_sourceRoleArn,++ -- * Destructuring the Response+ CreateAssetResponse (..),+ newCreateAssetResponse,++ -- * Response Lenses+ createAssetResponse_arn,+ createAssetResponse_createdAt,+ createAssetResponse_egressEndpoints,+ createAssetResponse_id,+ createAssetResponse_packagingGroupId,+ createAssetResponse_resourceId,+ createAssetResponse_sourceArn,+ createAssetResponse_sourceRoleArn,+ createAssetResponse_tags,+ createAssetResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | A new MediaPackage VOD Asset configuration.+--+-- /See:/ 'newCreateAsset' smart constructor.+data CreateAsset = CreateAsset'+ { -- | The resource ID to include in SPEKE key requests.+ resourceId :: Prelude.Maybe Prelude.Text,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | ARN of the source object in S3.+ sourceArn :: Prelude.Text,+ -- | The unique identifier for the Asset.+ id :: Prelude.Text,+ -- | The ID of the PackagingGroup for the Asset.+ packagingGroupId :: Prelude.Text,+ -- | The IAM role ARN used to access the source S3 bucket.+ sourceRoleArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceId', 'createAsset_resourceId' - The resource ID to include in SPEKE key requests.+--+-- 'tags', 'createAsset_tags' - Undocumented member.+--+-- 'sourceArn', 'createAsset_sourceArn' - ARN of the source object in S3.+--+-- 'id', 'createAsset_id' - The unique identifier for the Asset.+--+-- 'packagingGroupId', 'createAsset_packagingGroupId' - The ID of the PackagingGroup for the Asset.+--+-- 'sourceRoleArn', 'createAsset_sourceRoleArn' - The IAM role ARN used to access the source S3 bucket.+newCreateAsset ::+ -- | 'sourceArn'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'packagingGroupId'+ Prelude.Text ->+ -- | 'sourceRoleArn'+ Prelude.Text ->+ CreateAsset+newCreateAsset+ pSourceArn_+ pId_+ pPackagingGroupId_+ pSourceRoleArn_ =+ CreateAsset'+ { resourceId = Prelude.Nothing,+ tags = Prelude.Nothing,+ sourceArn = pSourceArn_,+ id = pId_,+ packagingGroupId = pPackagingGroupId_,+ sourceRoleArn = pSourceRoleArn_+ }++-- | The resource ID to include in SPEKE key requests.+createAsset_resourceId :: Lens.Lens' CreateAsset (Prelude.Maybe Prelude.Text)+createAsset_resourceId = Lens.lens (\CreateAsset' {resourceId} -> resourceId) (\s@CreateAsset' {} a -> s {resourceId = a} :: CreateAsset)++-- | Undocumented member.+createAsset_tags :: Lens.Lens' CreateAsset (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createAsset_tags = Lens.lens (\CreateAsset' {tags} -> tags) (\s@CreateAsset' {} a -> s {tags = a} :: CreateAsset) Prelude.. Lens.mapping Lens.coerced++-- | ARN of the source object in S3.+createAsset_sourceArn :: Lens.Lens' CreateAsset Prelude.Text+createAsset_sourceArn = Lens.lens (\CreateAsset' {sourceArn} -> sourceArn) (\s@CreateAsset' {} a -> s {sourceArn = a} :: CreateAsset)++-- | The unique identifier for the Asset.+createAsset_id :: Lens.Lens' CreateAsset Prelude.Text+createAsset_id = Lens.lens (\CreateAsset' {id} -> id) (\s@CreateAsset' {} a -> s {id = a} :: CreateAsset)++-- | The ID of the PackagingGroup for the Asset.+createAsset_packagingGroupId :: Lens.Lens' CreateAsset Prelude.Text+createAsset_packagingGroupId = Lens.lens (\CreateAsset' {packagingGroupId} -> packagingGroupId) (\s@CreateAsset' {} a -> s {packagingGroupId = a} :: CreateAsset)++-- | The IAM role ARN used to access the source S3 bucket.+createAsset_sourceRoleArn :: Lens.Lens' CreateAsset Prelude.Text+createAsset_sourceRoleArn = Lens.lens (\CreateAsset' {sourceRoleArn} -> sourceRoleArn) (\s@CreateAsset' {} a -> s {sourceRoleArn = a} :: CreateAsset)++instance Core.AWSRequest CreateAsset where+ type AWSResponse CreateAsset = CreateAssetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateAssetResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> ( x+ Data..?> "egressEndpoints"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "id")+ Prelude.<*> (x Data..?> "packagingGroupId")+ Prelude.<*> (x Data..?> "resourceId")+ Prelude.<*> (x Data..?> "sourceArn")+ Prelude.<*> (x Data..?> "sourceRoleArn")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateAsset where+ hashWithSalt _salt CreateAsset' {..} =+ _salt+ `Prelude.hashWithSalt` resourceId+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` sourceArn+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` packagingGroupId+ `Prelude.hashWithSalt` sourceRoleArn++instance Prelude.NFData CreateAsset where+ rnf CreateAsset' {..} =+ Prelude.rnf resourceId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf sourceArn+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf packagingGroupId+ `Prelude.seq` Prelude.rnf sourceRoleArn++instance Data.ToHeaders CreateAsset where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateAsset where+ toJSON CreateAsset' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("resourceId" Data..=) Prelude.<$> resourceId,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("sourceArn" Data..= sourceArn),+ Prelude.Just ("id" Data..= id),+ Prelude.Just+ ("packagingGroupId" Data..= packagingGroupId),+ Prelude.Just+ ("sourceRoleArn" Data..= sourceRoleArn)+ ]+ )++instance Data.ToPath CreateAsset where+ toPath = Prelude.const "/assets"++instance Data.ToQuery CreateAsset where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateAssetResponse' smart constructor.+data CreateAssetResponse = CreateAssetResponse'+ { -- | The ARN of the Asset.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time the Asset was initially submitted for Ingest.+ createdAt :: Prelude.Maybe Prelude.Text,+ -- | The list of egress endpoints available for the Asset.+ egressEndpoints :: Prelude.Maybe [EgressEndpoint],+ -- | The unique identifier for the Asset.+ id :: Prelude.Maybe Prelude.Text,+ -- | The ID of the PackagingGroup for the Asset.+ packagingGroupId :: Prelude.Maybe Prelude.Text,+ -- | The resource ID to include in SPEKE key requests.+ resourceId :: Prelude.Maybe Prelude.Text,+ -- | ARN of the source object in S3.+ sourceArn :: Prelude.Maybe Prelude.Text,+ -- | The IAM role_arn used to access the source S3 bucket.+ sourceRoleArn :: Prelude.Maybe Prelude.Text,+ 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 'CreateAssetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createAssetResponse_arn' - The ARN of the Asset.+--+-- 'createdAt', 'createAssetResponse_createdAt' - The time the Asset was initially submitted for Ingest.+--+-- 'egressEndpoints', 'createAssetResponse_egressEndpoints' - The list of egress endpoints available for the Asset.+--+-- 'id', 'createAssetResponse_id' - The unique identifier for the Asset.+--+-- 'packagingGroupId', 'createAssetResponse_packagingGroupId' - The ID of the PackagingGroup for the Asset.+--+-- 'resourceId', 'createAssetResponse_resourceId' - The resource ID to include in SPEKE key requests.+--+-- 'sourceArn', 'createAssetResponse_sourceArn' - ARN of the source object in S3.+--+-- 'sourceRoleArn', 'createAssetResponse_sourceRoleArn' - The IAM role_arn used to access the source S3 bucket.+--+-- 'tags', 'createAssetResponse_tags' - Undocumented member.+--+-- 'httpStatus', 'createAssetResponse_httpStatus' - The response's http status code.+newCreateAssetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateAssetResponse+newCreateAssetResponse pHttpStatus_ =+ CreateAssetResponse'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ egressEndpoints = Prelude.Nothing,+ id = Prelude.Nothing,+ packagingGroupId = Prelude.Nothing,+ resourceId = Prelude.Nothing,+ sourceArn = Prelude.Nothing,+ sourceRoleArn = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN of the Asset.+createAssetResponse_arn :: Lens.Lens' CreateAssetResponse (Prelude.Maybe Prelude.Text)+createAssetResponse_arn = Lens.lens (\CreateAssetResponse' {arn} -> arn) (\s@CreateAssetResponse' {} a -> s {arn = a} :: CreateAssetResponse)++-- | The time the Asset was initially submitted for Ingest.+createAssetResponse_createdAt :: Lens.Lens' CreateAssetResponse (Prelude.Maybe Prelude.Text)+createAssetResponse_createdAt = Lens.lens (\CreateAssetResponse' {createdAt} -> createdAt) (\s@CreateAssetResponse' {} a -> s {createdAt = a} :: CreateAssetResponse)++-- | The list of egress endpoints available for the Asset.+createAssetResponse_egressEndpoints :: Lens.Lens' CreateAssetResponse (Prelude.Maybe [EgressEndpoint])+createAssetResponse_egressEndpoints = Lens.lens (\CreateAssetResponse' {egressEndpoints} -> egressEndpoints) (\s@CreateAssetResponse' {} a -> s {egressEndpoints = a} :: CreateAssetResponse) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier for the Asset.+createAssetResponse_id :: Lens.Lens' CreateAssetResponse (Prelude.Maybe Prelude.Text)+createAssetResponse_id = Lens.lens (\CreateAssetResponse' {id} -> id) (\s@CreateAssetResponse' {} a -> s {id = a} :: CreateAssetResponse)++-- | The ID of the PackagingGroup for the Asset.+createAssetResponse_packagingGroupId :: Lens.Lens' CreateAssetResponse (Prelude.Maybe Prelude.Text)+createAssetResponse_packagingGroupId = Lens.lens (\CreateAssetResponse' {packagingGroupId} -> packagingGroupId) (\s@CreateAssetResponse' {} a -> s {packagingGroupId = a} :: CreateAssetResponse)++-- | The resource ID to include in SPEKE key requests.+createAssetResponse_resourceId :: Lens.Lens' CreateAssetResponse (Prelude.Maybe Prelude.Text)+createAssetResponse_resourceId = Lens.lens (\CreateAssetResponse' {resourceId} -> resourceId) (\s@CreateAssetResponse' {} a -> s {resourceId = a} :: CreateAssetResponse)++-- | ARN of the source object in S3.+createAssetResponse_sourceArn :: Lens.Lens' CreateAssetResponse (Prelude.Maybe Prelude.Text)+createAssetResponse_sourceArn = Lens.lens (\CreateAssetResponse' {sourceArn} -> sourceArn) (\s@CreateAssetResponse' {} a -> s {sourceArn = a} :: CreateAssetResponse)++-- | The IAM role_arn used to access the source S3 bucket.+createAssetResponse_sourceRoleArn :: Lens.Lens' CreateAssetResponse (Prelude.Maybe Prelude.Text)+createAssetResponse_sourceRoleArn = Lens.lens (\CreateAssetResponse' {sourceRoleArn} -> sourceRoleArn) (\s@CreateAssetResponse' {} a -> s {sourceRoleArn = a} :: CreateAssetResponse)++-- | Undocumented member.+createAssetResponse_tags :: Lens.Lens' CreateAssetResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createAssetResponse_tags = Lens.lens (\CreateAssetResponse' {tags} -> tags) (\s@CreateAssetResponse' {} a -> s {tags = a} :: CreateAssetResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createAssetResponse_httpStatus :: Lens.Lens' CreateAssetResponse Prelude.Int+createAssetResponse_httpStatus = Lens.lens (\CreateAssetResponse' {httpStatus} -> httpStatus) (\s@CreateAssetResponse' {} a -> s {httpStatus = a} :: CreateAssetResponse)++instance Prelude.NFData CreateAssetResponse where+ rnf CreateAssetResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf egressEndpoints+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf packagingGroupId+ `Prelude.seq` Prelude.rnf resourceId+ `Prelude.seq` Prelude.rnf sourceArn+ `Prelude.seq` Prelude.rnf sourceRoleArn+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/CreatePackagingConfiguration.hs view
@@ -0,0 +1,335 @@+{-# 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.MediaPackageVOD.CreatePackagingConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new MediaPackage VOD PackagingConfiguration resource.+module Amazonka.MediaPackageVOD.CreatePackagingConfiguration+ ( -- * Creating a Request+ CreatePackagingConfiguration (..),+ newCreatePackagingConfiguration,++ -- * Request Lenses+ createPackagingConfiguration_cmafPackage,+ createPackagingConfiguration_dashPackage,+ createPackagingConfiguration_hlsPackage,+ createPackagingConfiguration_mssPackage,+ createPackagingConfiguration_tags,+ createPackagingConfiguration_id,+ createPackagingConfiguration_packagingGroupId,++ -- * Destructuring the Response+ CreatePackagingConfigurationResponse (..),+ newCreatePackagingConfigurationResponse,++ -- * Response Lenses+ createPackagingConfigurationResponse_arn,+ createPackagingConfigurationResponse_cmafPackage,+ createPackagingConfigurationResponse_dashPackage,+ createPackagingConfigurationResponse_hlsPackage,+ createPackagingConfigurationResponse_id,+ createPackagingConfigurationResponse_mssPackage,+ createPackagingConfigurationResponse_packagingGroupId,+ createPackagingConfigurationResponse_tags,+ createPackagingConfigurationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | A new MediaPackage VOD PackagingConfiguration resource configuration.+--+-- /See:/ 'newCreatePackagingConfiguration' smart constructor.+data CreatePackagingConfiguration = CreatePackagingConfiguration'+ { cmafPackage :: Prelude.Maybe CmafPackage,+ dashPackage :: Prelude.Maybe DashPackage,+ hlsPackage :: Prelude.Maybe HlsPackage,+ mssPackage :: Prelude.Maybe MssPackage,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The ID of the PackagingConfiguration.+ id :: Prelude.Text,+ -- | The ID of a PackagingGroup.+ packagingGroupId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreatePackagingConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cmafPackage', 'createPackagingConfiguration_cmafPackage' - Undocumented member.+--+-- 'dashPackage', 'createPackagingConfiguration_dashPackage' - Undocumented member.+--+-- 'hlsPackage', 'createPackagingConfiguration_hlsPackage' - Undocumented member.+--+-- 'mssPackage', 'createPackagingConfiguration_mssPackage' - Undocumented member.+--+-- 'tags', 'createPackagingConfiguration_tags' - Undocumented member.+--+-- 'id', 'createPackagingConfiguration_id' - The ID of the PackagingConfiguration.+--+-- 'packagingGroupId', 'createPackagingConfiguration_packagingGroupId' - The ID of a PackagingGroup.+newCreatePackagingConfiguration ::+ -- | 'id'+ Prelude.Text ->+ -- | 'packagingGroupId'+ Prelude.Text ->+ CreatePackagingConfiguration+newCreatePackagingConfiguration+ pId_+ pPackagingGroupId_ =+ CreatePackagingConfiguration'+ { cmafPackage =+ Prelude.Nothing,+ dashPackage = Prelude.Nothing,+ hlsPackage = Prelude.Nothing,+ mssPackage = Prelude.Nothing,+ tags = Prelude.Nothing,+ id = pId_,+ packagingGroupId = pPackagingGroupId_+ }++-- | Undocumented member.+createPackagingConfiguration_cmafPackage :: Lens.Lens' CreatePackagingConfiguration (Prelude.Maybe CmafPackage)+createPackagingConfiguration_cmafPackage = Lens.lens (\CreatePackagingConfiguration' {cmafPackage} -> cmafPackage) (\s@CreatePackagingConfiguration' {} a -> s {cmafPackage = a} :: CreatePackagingConfiguration)++-- | Undocumented member.+createPackagingConfiguration_dashPackage :: Lens.Lens' CreatePackagingConfiguration (Prelude.Maybe DashPackage)+createPackagingConfiguration_dashPackage = Lens.lens (\CreatePackagingConfiguration' {dashPackage} -> dashPackage) (\s@CreatePackagingConfiguration' {} a -> s {dashPackage = a} :: CreatePackagingConfiguration)++-- | Undocumented member.+createPackagingConfiguration_hlsPackage :: Lens.Lens' CreatePackagingConfiguration (Prelude.Maybe HlsPackage)+createPackagingConfiguration_hlsPackage = Lens.lens (\CreatePackagingConfiguration' {hlsPackage} -> hlsPackage) (\s@CreatePackagingConfiguration' {} a -> s {hlsPackage = a} :: CreatePackagingConfiguration)++-- | Undocumented member.+createPackagingConfiguration_mssPackage :: Lens.Lens' CreatePackagingConfiguration (Prelude.Maybe MssPackage)+createPackagingConfiguration_mssPackage = Lens.lens (\CreatePackagingConfiguration' {mssPackage} -> mssPackage) (\s@CreatePackagingConfiguration' {} a -> s {mssPackage = a} :: CreatePackagingConfiguration)++-- | Undocumented member.+createPackagingConfiguration_tags :: Lens.Lens' CreatePackagingConfiguration (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createPackagingConfiguration_tags = Lens.lens (\CreatePackagingConfiguration' {tags} -> tags) (\s@CreatePackagingConfiguration' {} a -> s {tags = a} :: CreatePackagingConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | The ID of the PackagingConfiguration.+createPackagingConfiguration_id :: Lens.Lens' CreatePackagingConfiguration Prelude.Text+createPackagingConfiguration_id = Lens.lens (\CreatePackagingConfiguration' {id} -> id) (\s@CreatePackagingConfiguration' {} a -> s {id = a} :: CreatePackagingConfiguration)++-- | The ID of a PackagingGroup.+createPackagingConfiguration_packagingGroupId :: Lens.Lens' CreatePackagingConfiguration Prelude.Text+createPackagingConfiguration_packagingGroupId = Lens.lens (\CreatePackagingConfiguration' {packagingGroupId} -> packagingGroupId) (\s@CreatePackagingConfiguration' {} a -> s {packagingGroupId = a} :: CreatePackagingConfiguration)++instance Core.AWSRequest CreatePackagingConfiguration where+ type+ AWSResponse CreatePackagingConfiguration =+ CreatePackagingConfigurationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreatePackagingConfigurationResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "cmafPackage")+ Prelude.<*> (x Data..?> "dashPackage")+ Prelude.<*> (x Data..?> "hlsPackage")+ Prelude.<*> (x Data..?> "id")+ Prelude.<*> (x Data..?> "mssPackage")+ Prelude.<*> (x Data..?> "packagingGroupId")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ CreatePackagingConfiguration+ where+ hashWithSalt _salt CreatePackagingConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` cmafPackage+ `Prelude.hashWithSalt` dashPackage+ `Prelude.hashWithSalt` hlsPackage+ `Prelude.hashWithSalt` mssPackage+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` packagingGroupId++instance Prelude.NFData CreatePackagingConfiguration where+ rnf CreatePackagingConfiguration' {..} =+ Prelude.rnf cmafPackage+ `Prelude.seq` Prelude.rnf dashPackage+ `Prelude.seq` Prelude.rnf hlsPackage+ `Prelude.seq` Prelude.rnf mssPackage+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf packagingGroupId++instance Data.ToHeaders CreatePackagingConfiguration where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreatePackagingConfiguration where+ toJSON CreatePackagingConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("cmafPackage" Data..=) Prelude.<$> cmafPackage,+ ("dashPackage" Data..=) Prelude.<$> dashPackage,+ ("hlsPackage" Data..=) Prelude.<$> hlsPackage,+ ("mssPackage" Data..=) Prelude.<$> mssPackage,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("id" Data..= id),+ Prelude.Just+ ("packagingGroupId" Data..= packagingGroupId)+ ]+ )++instance Data.ToPath CreatePackagingConfiguration where+ toPath = Prelude.const "/packaging_configurations"++instance Data.ToQuery CreatePackagingConfiguration where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreatePackagingConfigurationResponse' smart constructor.+data CreatePackagingConfigurationResponse = CreatePackagingConfigurationResponse'+ { -- | The ARN of the PackagingConfiguration.+ arn :: Prelude.Maybe Prelude.Text,+ cmafPackage :: Prelude.Maybe CmafPackage,+ dashPackage :: Prelude.Maybe DashPackage,+ hlsPackage :: Prelude.Maybe HlsPackage,+ -- | The ID of the PackagingConfiguration.+ id :: Prelude.Maybe Prelude.Text,+ mssPackage :: Prelude.Maybe MssPackage,+ -- | The ID of a PackagingGroup.+ packagingGroupId :: Prelude.Maybe Prelude.Text,+ 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 'CreatePackagingConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createPackagingConfigurationResponse_arn' - The ARN of the PackagingConfiguration.+--+-- 'cmafPackage', 'createPackagingConfigurationResponse_cmafPackage' - Undocumented member.+--+-- 'dashPackage', 'createPackagingConfigurationResponse_dashPackage' - Undocumented member.+--+-- 'hlsPackage', 'createPackagingConfigurationResponse_hlsPackage' - Undocumented member.+--+-- 'id', 'createPackagingConfigurationResponse_id' - The ID of the PackagingConfiguration.+--+-- 'mssPackage', 'createPackagingConfigurationResponse_mssPackage' - Undocumented member.+--+-- 'packagingGroupId', 'createPackagingConfigurationResponse_packagingGroupId' - The ID of a PackagingGroup.+--+-- 'tags', 'createPackagingConfigurationResponse_tags' - Undocumented member.+--+-- 'httpStatus', 'createPackagingConfigurationResponse_httpStatus' - The response's http status code.+newCreatePackagingConfigurationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreatePackagingConfigurationResponse+newCreatePackagingConfigurationResponse pHttpStatus_ =+ CreatePackagingConfigurationResponse'+ { arn =+ Prelude.Nothing,+ cmafPackage = Prelude.Nothing,+ dashPackage = Prelude.Nothing,+ hlsPackage = Prelude.Nothing,+ id = Prelude.Nothing,+ mssPackage = Prelude.Nothing,+ packagingGroupId = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN of the PackagingConfiguration.+createPackagingConfigurationResponse_arn :: Lens.Lens' CreatePackagingConfigurationResponse (Prelude.Maybe Prelude.Text)+createPackagingConfigurationResponse_arn = Lens.lens (\CreatePackagingConfigurationResponse' {arn} -> arn) (\s@CreatePackagingConfigurationResponse' {} a -> s {arn = a} :: CreatePackagingConfigurationResponse)++-- | Undocumented member.+createPackagingConfigurationResponse_cmafPackage :: Lens.Lens' CreatePackagingConfigurationResponse (Prelude.Maybe CmafPackage)+createPackagingConfigurationResponse_cmafPackage = Lens.lens (\CreatePackagingConfigurationResponse' {cmafPackage} -> cmafPackage) (\s@CreatePackagingConfigurationResponse' {} a -> s {cmafPackage = a} :: CreatePackagingConfigurationResponse)++-- | Undocumented member.+createPackagingConfigurationResponse_dashPackage :: Lens.Lens' CreatePackagingConfigurationResponse (Prelude.Maybe DashPackage)+createPackagingConfigurationResponse_dashPackage = Lens.lens (\CreatePackagingConfigurationResponse' {dashPackage} -> dashPackage) (\s@CreatePackagingConfigurationResponse' {} a -> s {dashPackage = a} :: CreatePackagingConfigurationResponse)++-- | Undocumented member.+createPackagingConfigurationResponse_hlsPackage :: Lens.Lens' CreatePackagingConfigurationResponse (Prelude.Maybe HlsPackage)+createPackagingConfigurationResponse_hlsPackage = Lens.lens (\CreatePackagingConfigurationResponse' {hlsPackage} -> hlsPackage) (\s@CreatePackagingConfigurationResponse' {} a -> s {hlsPackage = a} :: CreatePackagingConfigurationResponse)++-- | The ID of the PackagingConfiguration.+createPackagingConfigurationResponse_id :: Lens.Lens' CreatePackagingConfigurationResponse (Prelude.Maybe Prelude.Text)+createPackagingConfigurationResponse_id = Lens.lens (\CreatePackagingConfigurationResponse' {id} -> id) (\s@CreatePackagingConfigurationResponse' {} a -> s {id = a} :: CreatePackagingConfigurationResponse)++-- | Undocumented member.+createPackagingConfigurationResponse_mssPackage :: Lens.Lens' CreatePackagingConfigurationResponse (Prelude.Maybe MssPackage)+createPackagingConfigurationResponse_mssPackage = Lens.lens (\CreatePackagingConfigurationResponse' {mssPackage} -> mssPackage) (\s@CreatePackagingConfigurationResponse' {} a -> s {mssPackage = a} :: CreatePackagingConfigurationResponse)++-- | The ID of a PackagingGroup.+createPackagingConfigurationResponse_packagingGroupId :: Lens.Lens' CreatePackagingConfigurationResponse (Prelude.Maybe Prelude.Text)+createPackagingConfigurationResponse_packagingGroupId = Lens.lens (\CreatePackagingConfigurationResponse' {packagingGroupId} -> packagingGroupId) (\s@CreatePackagingConfigurationResponse' {} a -> s {packagingGroupId = a} :: CreatePackagingConfigurationResponse)++-- | Undocumented member.+createPackagingConfigurationResponse_tags :: Lens.Lens' CreatePackagingConfigurationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createPackagingConfigurationResponse_tags = Lens.lens (\CreatePackagingConfigurationResponse' {tags} -> tags) (\s@CreatePackagingConfigurationResponse' {} a -> s {tags = a} :: CreatePackagingConfigurationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createPackagingConfigurationResponse_httpStatus :: Lens.Lens' CreatePackagingConfigurationResponse Prelude.Int+createPackagingConfigurationResponse_httpStatus = Lens.lens (\CreatePackagingConfigurationResponse' {httpStatus} -> httpStatus) (\s@CreatePackagingConfigurationResponse' {} a -> s {httpStatus = a} :: CreatePackagingConfigurationResponse)++instance+ Prelude.NFData+ CreatePackagingConfigurationResponse+ where+ rnf CreatePackagingConfigurationResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf cmafPackage+ `Prelude.seq` Prelude.rnf dashPackage+ `Prelude.seq` Prelude.rnf hlsPackage+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf mssPackage+ `Prelude.seq` Prelude.rnf packagingGroupId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/CreatePackagingGroup.hs view
@@ -0,0 +1,266 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.CreatePackagingGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new MediaPackage VOD PackagingGroup resource.+module Amazonka.MediaPackageVOD.CreatePackagingGroup+ ( -- * Creating a Request+ CreatePackagingGroup (..),+ newCreatePackagingGroup,++ -- * Request Lenses+ createPackagingGroup_authorization,+ createPackagingGroup_egressAccessLogs,+ createPackagingGroup_tags,+ createPackagingGroup_id,++ -- * Destructuring the Response+ CreatePackagingGroupResponse (..),+ newCreatePackagingGroupResponse,++ -- * Response Lenses+ createPackagingGroupResponse_arn,+ createPackagingGroupResponse_authorization,+ createPackagingGroupResponse_domainName,+ createPackagingGroupResponse_egressAccessLogs,+ createPackagingGroupResponse_id,+ createPackagingGroupResponse_tags,+ createPackagingGroupResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | A new MediaPackage VOD PackagingGroup resource configuration.+--+-- /See:/ 'newCreatePackagingGroup' smart constructor.+data CreatePackagingGroup = CreatePackagingGroup'+ { authorization :: Prelude.Maybe Authorization,+ egressAccessLogs :: Prelude.Maybe EgressAccessLogs,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The ID of the PackagingGroup.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreatePackagingGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'authorization', 'createPackagingGroup_authorization' - Undocumented member.+--+-- 'egressAccessLogs', 'createPackagingGroup_egressAccessLogs' - Undocumented member.+--+-- 'tags', 'createPackagingGroup_tags' - Undocumented member.+--+-- 'id', 'createPackagingGroup_id' - The ID of the PackagingGroup.+newCreatePackagingGroup ::+ -- | 'id'+ Prelude.Text ->+ CreatePackagingGroup+newCreatePackagingGroup pId_ =+ CreatePackagingGroup'+ { authorization =+ Prelude.Nothing,+ egressAccessLogs = Prelude.Nothing,+ tags = Prelude.Nothing,+ id = pId_+ }++-- | Undocumented member.+createPackagingGroup_authorization :: Lens.Lens' CreatePackagingGroup (Prelude.Maybe Authorization)+createPackagingGroup_authorization = Lens.lens (\CreatePackagingGroup' {authorization} -> authorization) (\s@CreatePackagingGroup' {} a -> s {authorization = a} :: CreatePackagingGroup)++-- | Undocumented member.+createPackagingGroup_egressAccessLogs :: Lens.Lens' CreatePackagingGroup (Prelude.Maybe EgressAccessLogs)+createPackagingGroup_egressAccessLogs = Lens.lens (\CreatePackagingGroup' {egressAccessLogs} -> egressAccessLogs) (\s@CreatePackagingGroup' {} a -> s {egressAccessLogs = a} :: CreatePackagingGroup)++-- | Undocumented member.+createPackagingGroup_tags :: Lens.Lens' CreatePackagingGroup (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createPackagingGroup_tags = Lens.lens (\CreatePackagingGroup' {tags} -> tags) (\s@CreatePackagingGroup' {} a -> s {tags = a} :: CreatePackagingGroup) Prelude.. Lens.mapping Lens.coerced++-- | The ID of the PackagingGroup.+createPackagingGroup_id :: Lens.Lens' CreatePackagingGroup Prelude.Text+createPackagingGroup_id = Lens.lens (\CreatePackagingGroup' {id} -> id) (\s@CreatePackagingGroup' {} a -> s {id = a} :: CreatePackagingGroup)++instance Core.AWSRequest CreatePackagingGroup where+ type+ AWSResponse CreatePackagingGroup =+ CreatePackagingGroupResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreatePackagingGroupResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "authorization")+ Prelude.<*> (x Data..?> "domainName")+ Prelude.<*> (x Data..?> "egressAccessLogs")+ Prelude.<*> (x Data..?> "id")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreatePackagingGroup where+ hashWithSalt _salt CreatePackagingGroup' {..} =+ _salt+ `Prelude.hashWithSalt` authorization+ `Prelude.hashWithSalt` egressAccessLogs+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` id++instance Prelude.NFData CreatePackagingGroup where+ rnf CreatePackagingGroup' {..} =+ Prelude.rnf authorization+ `Prelude.seq` Prelude.rnf egressAccessLogs+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders CreatePackagingGroup where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreatePackagingGroup where+ toJSON CreatePackagingGroup' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("authorization" Data..=) Prelude.<$> authorization,+ ("egressAccessLogs" Data..=)+ Prelude.<$> egressAccessLogs,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("id" Data..= id)+ ]+ )++instance Data.ToPath CreatePackagingGroup where+ toPath = Prelude.const "/packaging_groups"++instance Data.ToQuery CreatePackagingGroup where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreatePackagingGroupResponse' smart constructor.+data CreatePackagingGroupResponse = CreatePackagingGroupResponse'+ { -- | The ARN of the PackagingGroup.+ arn :: Prelude.Maybe Prelude.Text,+ authorization :: Prelude.Maybe Authorization,+ -- | The fully qualified domain name for Assets in the PackagingGroup.+ domainName :: Prelude.Maybe Prelude.Text,+ egressAccessLogs :: Prelude.Maybe EgressAccessLogs,+ -- | The ID of the PackagingGroup.+ id :: Prelude.Maybe Prelude.Text,+ 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 'CreatePackagingGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createPackagingGroupResponse_arn' - The ARN of the PackagingGroup.+--+-- 'authorization', 'createPackagingGroupResponse_authorization' - Undocumented member.+--+-- 'domainName', 'createPackagingGroupResponse_domainName' - The fully qualified domain name for Assets in the PackagingGroup.+--+-- 'egressAccessLogs', 'createPackagingGroupResponse_egressAccessLogs' - Undocumented member.+--+-- 'id', 'createPackagingGroupResponse_id' - The ID of the PackagingGroup.+--+-- 'tags', 'createPackagingGroupResponse_tags' - Undocumented member.+--+-- 'httpStatus', 'createPackagingGroupResponse_httpStatus' - The response's http status code.+newCreatePackagingGroupResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreatePackagingGroupResponse+newCreatePackagingGroupResponse pHttpStatus_ =+ CreatePackagingGroupResponse'+ { arn =+ Prelude.Nothing,+ authorization = Prelude.Nothing,+ domainName = Prelude.Nothing,+ egressAccessLogs = Prelude.Nothing,+ id = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN of the PackagingGroup.+createPackagingGroupResponse_arn :: Lens.Lens' CreatePackagingGroupResponse (Prelude.Maybe Prelude.Text)+createPackagingGroupResponse_arn = Lens.lens (\CreatePackagingGroupResponse' {arn} -> arn) (\s@CreatePackagingGroupResponse' {} a -> s {arn = a} :: CreatePackagingGroupResponse)++-- | Undocumented member.+createPackagingGroupResponse_authorization :: Lens.Lens' CreatePackagingGroupResponse (Prelude.Maybe Authorization)+createPackagingGroupResponse_authorization = Lens.lens (\CreatePackagingGroupResponse' {authorization} -> authorization) (\s@CreatePackagingGroupResponse' {} a -> s {authorization = a} :: CreatePackagingGroupResponse)++-- | The fully qualified domain name for Assets in the PackagingGroup.+createPackagingGroupResponse_domainName :: Lens.Lens' CreatePackagingGroupResponse (Prelude.Maybe Prelude.Text)+createPackagingGroupResponse_domainName = Lens.lens (\CreatePackagingGroupResponse' {domainName} -> domainName) (\s@CreatePackagingGroupResponse' {} a -> s {domainName = a} :: CreatePackagingGroupResponse)++-- | Undocumented member.+createPackagingGroupResponse_egressAccessLogs :: Lens.Lens' CreatePackagingGroupResponse (Prelude.Maybe EgressAccessLogs)+createPackagingGroupResponse_egressAccessLogs = Lens.lens (\CreatePackagingGroupResponse' {egressAccessLogs} -> egressAccessLogs) (\s@CreatePackagingGroupResponse' {} a -> s {egressAccessLogs = a} :: CreatePackagingGroupResponse)++-- | The ID of the PackagingGroup.+createPackagingGroupResponse_id :: Lens.Lens' CreatePackagingGroupResponse (Prelude.Maybe Prelude.Text)+createPackagingGroupResponse_id = Lens.lens (\CreatePackagingGroupResponse' {id} -> id) (\s@CreatePackagingGroupResponse' {} a -> s {id = a} :: CreatePackagingGroupResponse)++-- | Undocumented member.+createPackagingGroupResponse_tags :: Lens.Lens' CreatePackagingGroupResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createPackagingGroupResponse_tags = Lens.lens (\CreatePackagingGroupResponse' {tags} -> tags) (\s@CreatePackagingGroupResponse' {} a -> s {tags = a} :: CreatePackagingGroupResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createPackagingGroupResponse_httpStatus :: Lens.Lens' CreatePackagingGroupResponse Prelude.Int+createPackagingGroupResponse_httpStatus = Lens.lens (\CreatePackagingGroupResponse' {httpStatus} -> httpStatus) (\s@CreatePackagingGroupResponse' {} a -> s {httpStatus = a} :: CreatePackagingGroupResponse)++instance Prelude.NFData CreatePackagingGroupResponse where+ rnf CreatePackagingGroupResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf authorization+ `Prelude.seq` Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf egressAccessLogs+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/DeleteAsset.hs view
@@ -0,0 +1,139 @@+{-# 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.MediaPackageVOD.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)+--+-- Deletes an existing MediaPackage VOD Asset resource.+module Amazonka.MediaPackageVOD.DeleteAsset+ ( -- * Creating a Request+ DeleteAsset (..),+ newDeleteAsset,++ -- * Request Lenses+ deleteAsset_id,++ -- * Destructuring the Response+ DeleteAssetResponse (..),+ newDeleteAssetResponse,++ -- * Response Lenses+ deleteAssetResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.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 ID of the MediaPackage VOD Asset resource to delete.+ id :: 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:+--+-- 'id', 'deleteAsset_id' - The ID of the MediaPackage VOD Asset resource to delete.+newDeleteAsset ::+ -- | 'id'+ Prelude.Text ->+ DeleteAsset+newDeleteAsset pId_ = DeleteAsset' {id = pId_}++-- | The ID of the MediaPackage VOD Asset resource to delete.+deleteAsset_id :: Lens.Lens' DeleteAsset Prelude.Text+deleteAsset_id = Lens.lens (\DeleteAsset' {id} -> id) (\s@DeleteAsset' {} a -> s {id = a} :: DeleteAsset)++instance Core.AWSRequest DeleteAsset where+ type AWSResponse DeleteAsset = DeleteAssetResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteAssetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteAsset where+ hashWithSalt _salt DeleteAsset' {..} =+ _salt `Prelude.hashWithSalt` id++instance Prelude.NFData DeleteAsset where+ rnf DeleteAsset' {..} = Prelude.rnf id++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 ["/assets/", Data.toBS id]++instance Data.ToQuery DeleteAsset where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteAssetResponse' smart constructor.+data DeleteAssetResponse = DeleteAssetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ 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.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteAssetResponse_httpStatus' - The response's http status code.+newDeleteAssetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteAssetResponse+newDeleteAssetResponse pHttpStatus_ =+ DeleteAssetResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+deleteAssetResponse_httpStatus :: Lens.Lens' DeleteAssetResponse Prelude.Int+deleteAssetResponse_httpStatus = Lens.lens (\DeleteAssetResponse' {httpStatus} -> httpStatus) (\s@DeleteAssetResponse' {} a -> s {httpStatus = a} :: DeleteAssetResponse)++instance Prelude.NFData DeleteAssetResponse where+ rnf DeleteAssetResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/DeletePackagingConfiguration.hs view
@@ -0,0 +1,157 @@+{-# 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.MediaPackageVOD.DeletePackagingConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a MediaPackage VOD PackagingConfiguration resource.+module Amazonka.MediaPackageVOD.DeletePackagingConfiguration+ ( -- * Creating a Request+ DeletePackagingConfiguration (..),+ newDeletePackagingConfiguration,++ -- * Request Lenses+ deletePackagingConfiguration_id,++ -- * Destructuring the Response+ DeletePackagingConfigurationResponse (..),+ newDeletePackagingConfigurationResponse,++ -- * Response Lenses+ deletePackagingConfigurationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeletePackagingConfiguration' smart constructor.+data DeletePackagingConfiguration = DeletePackagingConfiguration'+ { -- | The ID of the MediaPackage VOD PackagingConfiguration resource to+ -- delete.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePackagingConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'deletePackagingConfiguration_id' - The ID of the MediaPackage VOD PackagingConfiguration resource to+-- delete.+newDeletePackagingConfiguration ::+ -- | 'id'+ Prelude.Text ->+ DeletePackagingConfiguration+newDeletePackagingConfiguration pId_ =+ DeletePackagingConfiguration' {id = pId_}++-- | The ID of the MediaPackage VOD PackagingConfiguration resource to+-- delete.+deletePackagingConfiguration_id :: Lens.Lens' DeletePackagingConfiguration Prelude.Text+deletePackagingConfiguration_id = Lens.lens (\DeletePackagingConfiguration' {id} -> id) (\s@DeletePackagingConfiguration' {} a -> s {id = a} :: DeletePackagingConfiguration)++instance Core.AWSRequest DeletePackagingConfiguration where+ type+ AWSResponse DeletePackagingConfiguration =+ DeletePackagingConfigurationResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeletePackagingConfigurationResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DeletePackagingConfiguration+ where+ hashWithSalt _salt DeletePackagingConfiguration' {..} =+ _salt `Prelude.hashWithSalt` id++instance Prelude.NFData DeletePackagingConfiguration where+ rnf DeletePackagingConfiguration' {..} =+ Prelude.rnf id++instance Data.ToHeaders DeletePackagingConfiguration where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeletePackagingConfiguration where+ toPath DeletePackagingConfiguration' {..} =+ Prelude.mconcat+ ["/packaging_configurations/", Data.toBS id]++instance Data.ToQuery DeletePackagingConfiguration where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeletePackagingConfigurationResponse' smart constructor.+data DeletePackagingConfigurationResponse = DeletePackagingConfigurationResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePackagingConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deletePackagingConfigurationResponse_httpStatus' - The response's http status code.+newDeletePackagingConfigurationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeletePackagingConfigurationResponse+newDeletePackagingConfigurationResponse pHttpStatus_ =+ DeletePackagingConfigurationResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deletePackagingConfigurationResponse_httpStatus :: Lens.Lens' DeletePackagingConfigurationResponse Prelude.Int+deletePackagingConfigurationResponse_httpStatus = Lens.lens (\DeletePackagingConfigurationResponse' {httpStatus} -> httpStatus) (\s@DeletePackagingConfigurationResponse' {} a -> s {httpStatus = a} :: DeletePackagingConfigurationResponse)++instance+ Prelude.NFData+ DeletePackagingConfigurationResponse+ where+ rnf DeletePackagingConfigurationResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/DeletePackagingGroup.hs view
@@ -0,0 +1,147 @@+{-# 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.MediaPackageVOD.DeletePackagingGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a MediaPackage VOD PackagingGroup resource.+module Amazonka.MediaPackageVOD.DeletePackagingGroup+ ( -- * Creating a Request+ DeletePackagingGroup (..),+ newDeletePackagingGroup,++ -- * Request Lenses+ deletePackagingGroup_id,++ -- * Destructuring the Response+ DeletePackagingGroupResponse (..),+ newDeletePackagingGroupResponse,++ -- * Response Lenses+ deletePackagingGroupResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeletePackagingGroup' smart constructor.+data DeletePackagingGroup = DeletePackagingGroup'+ { -- | The ID of the MediaPackage VOD PackagingGroup resource to delete.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePackagingGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'deletePackagingGroup_id' - The ID of the MediaPackage VOD PackagingGroup resource to delete.+newDeletePackagingGroup ::+ -- | 'id'+ Prelude.Text ->+ DeletePackagingGroup+newDeletePackagingGroup pId_ =+ DeletePackagingGroup' {id = pId_}++-- | The ID of the MediaPackage VOD PackagingGroup resource to delete.+deletePackagingGroup_id :: Lens.Lens' DeletePackagingGroup Prelude.Text+deletePackagingGroup_id = Lens.lens (\DeletePackagingGroup' {id} -> id) (\s@DeletePackagingGroup' {} a -> s {id = a} :: DeletePackagingGroup)++instance Core.AWSRequest DeletePackagingGroup where+ type+ AWSResponse DeletePackagingGroup =+ DeletePackagingGroupResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeletePackagingGroupResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeletePackagingGroup where+ hashWithSalt _salt DeletePackagingGroup' {..} =+ _salt `Prelude.hashWithSalt` id++instance Prelude.NFData DeletePackagingGroup where+ rnf DeletePackagingGroup' {..} = Prelude.rnf id++instance Data.ToHeaders DeletePackagingGroup where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeletePackagingGroup where+ toPath DeletePackagingGroup' {..} =+ Prelude.mconcat+ ["/packaging_groups/", Data.toBS id]++instance Data.ToQuery DeletePackagingGroup where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeletePackagingGroupResponse' smart constructor.+data DeletePackagingGroupResponse = DeletePackagingGroupResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePackagingGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deletePackagingGroupResponse_httpStatus' - The response's http status code.+newDeletePackagingGroupResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeletePackagingGroupResponse+newDeletePackagingGroupResponse pHttpStatus_ =+ DeletePackagingGroupResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deletePackagingGroupResponse_httpStatus :: Lens.Lens' DeletePackagingGroupResponse Prelude.Int+deletePackagingGroupResponse_httpStatus = Lens.lens (\DeletePackagingGroupResponse' {httpStatus} -> httpStatus) (\s@DeletePackagingGroupResponse' {} a -> s {httpStatus = a} :: DeletePackagingGroupResponse)++instance Prelude.NFData DeletePackagingGroupResponse where+ rnf DeletePackagingGroupResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/DescribeAsset.hs view
@@ -0,0 +1,254 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.DescribeAsset+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a description of a MediaPackage VOD Asset resource.+module Amazonka.MediaPackageVOD.DescribeAsset+ ( -- * Creating a Request+ DescribeAsset (..),+ newDescribeAsset,++ -- * Request Lenses+ describeAsset_id,++ -- * Destructuring the Response+ DescribeAssetResponse (..),+ newDescribeAssetResponse,++ -- * Response Lenses+ describeAssetResponse_arn,+ describeAssetResponse_createdAt,+ describeAssetResponse_egressEndpoints,+ describeAssetResponse_id,+ describeAssetResponse_packagingGroupId,+ describeAssetResponse_resourceId,+ describeAssetResponse_sourceArn,+ describeAssetResponse_sourceRoleArn,+ describeAssetResponse_tags,+ describeAssetResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeAsset' smart constructor.+data DescribeAsset = DescribeAsset'+ { -- | The ID of an MediaPackage VOD Asset resource.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeAsset' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'describeAsset_id' - The ID of an MediaPackage VOD Asset resource.+newDescribeAsset ::+ -- | 'id'+ Prelude.Text ->+ DescribeAsset+newDescribeAsset pId_ = DescribeAsset' {id = pId_}++-- | The ID of an MediaPackage VOD Asset resource.+describeAsset_id :: Lens.Lens' DescribeAsset Prelude.Text+describeAsset_id = Lens.lens (\DescribeAsset' {id} -> id) (\s@DescribeAsset' {} a -> s {id = a} :: DescribeAsset)++instance Core.AWSRequest DescribeAsset where+ type+ AWSResponse DescribeAsset =+ DescribeAssetResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeAssetResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> ( x+ Data..?> "egressEndpoints"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "id")+ Prelude.<*> (x Data..?> "packagingGroupId")+ Prelude.<*> (x Data..?> "resourceId")+ Prelude.<*> (x Data..?> "sourceArn")+ Prelude.<*> (x Data..?> "sourceRoleArn")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeAsset where+ hashWithSalt _salt DescribeAsset' {..} =+ _salt `Prelude.hashWithSalt` id++instance Prelude.NFData DescribeAsset where+ rnf DescribeAsset' {..} = Prelude.rnf id++instance Data.ToHeaders DescribeAsset where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeAsset where+ toPath DescribeAsset' {..} =+ Prelude.mconcat ["/assets/", Data.toBS id]++instance Data.ToQuery DescribeAsset where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeAssetResponse' smart constructor.+data DescribeAssetResponse = DescribeAssetResponse'+ { -- | The ARN of the Asset.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time the Asset was initially submitted for Ingest.+ createdAt :: Prelude.Maybe Prelude.Text,+ -- | The list of egress endpoints available for the Asset.+ egressEndpoints :: Prelude.Maybe [EgressEndpoint],+ -- | The unique identifier for the Asset.+ id :: Prelude.Maybe Prelude.Text,+ -- | The ID of the PackagingGroup for the Asset.+ packagingGroupId :: Prelude.Maybe Prelude.Text,+ -- | The resource ID to include in SPEKE key requests.+ resourceId :: Prelude.Maybe Prelude.Text,+ -- | ARN of the source object in S3.+ sourceArn :: Prelude.Maybe Prelude.Text,+ -- | The IAM role_arn used to access the source S3 bucket.+ sourceRoleArn :: Prelude.Maybe Prelude.Text,+ 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 'DescribeAssetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeAssetResponse_arn' - The ARN of the Asset.+--+-- 'createdAt', 'describeAssetResponse_createdAt' - The time the Asset was initially submitted for Ingest.+--+-- 'egressEndpoints', 'describeAssetResponse_egressEndpoints' - The list of egress endpoints available for the Asset.+--+-- 'id', 'describeAssetResponse_id' - The unique identifier for the Asset.+--+-- 'packagingGroupId', 'describeAssetResponse_packagingGroupId' - The ID of the PackagingGroup for the Asset.+--+-- 'resourceId', 'describeAssetResponse_resourceId' - The resource ID to include in SPEKE key requests.+--+-- 'sourceArn', 'describeAssetResponse_sourceArn' - ARN of the source object in S3.+--+-- 'sourceRoleArn', 'describeAssetResponse_sourceRoleArn' - The IAM role_arn used to access the source S3 bucket.+--+-- 'tags', 'describeAssetResponse_tags' - Undocumented member.+--+-- 'httpStatus', 'describeAssetResponse_httpStatus' - The response's http status code.+newDescribeAssetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeAssetResponse+newDescribeAssetResponse pHttpStatus_ =+ DescribeAssetResponse'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ egressEndpoints = Prelude.Nothing,+ id = Prelude.Nothing,+ packagingGroupId = Prelude.Nothing,+ resourceId = Prelude.Nothing,+ sourceArn = Prelude.Nothing,+ sourceRoleArn = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN of the Asset.+describeAssetResponse_arn :: Lens.Lens' DescribeAssetResponse (Prelude.Maybe Prelude.Text)+describeAssetResponse_arn = Lens.lens (\DescribeAssetResponse' {arn} -> arn) (\s@DescribeAssetResponse' {} a -> s {arn = a} :: DescribeAssetResponse)++-- | The time the Asset was initially submitted for Ingest.+describeAssetResponse_createdAt :: Lens.Lens' DescribeAssetResponse (Prelude.Maybe Prelude.Text)+describeAssetResponse_createdAt = Lens.lens (\DescribeAssetResponse' {createdAt} -> createdAt) (\s@DescribeAssetResponse' {} a -> s {createdAt = a} :: DescribeAssetResponse)++-- | The list of egress endpoints available for the Asset.+describeAssetResponse_egressEndpoints :: Lens.Lens' DescribeAssetResponse (Prelude.Maybe [EgressEndpoint])+describeAssetResponse_egressEndpoints = Lens.lens (\DescribeAssetResponse' {egressEndpoints} -> egressEndpoints) (\s@DescribeAssetResponse' {} a -> s {egressEndpoints = a} :: DescribeAssetResponse) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier for the Asset.+describeAssetResponse_id :: Lens.Lens' DescribeAssetResponse (Prelude.Maybe Prelude.Text)+describeAssetResponse_id = Lens.lens (\DescribeAssetResponse' {id} -> id) (\s@DescribeAssetResponse' {} a -> s {id = a} :: DescribeAssetResponse)++-- | The ID of the PackagingGroup for the Asset.+describeAssetResponse_packagingGroupId :: Lens.Lens' DescribeAssetResponse (Prelude.Maybe Prelude.Text)+describeAssetResponse_packagingGroupId = Lens.lens (\DescribeAssetResponse' {packagingGroupId} -> packagingGroupId) (\s@DescribeAssetResponse' {} a -> s {packagingGroupId = a} :: DescribeAssetResponse)++-- | The resource ID to include in SPEKE key requests.+describeAssetResponse_resourceId :: Lens.Lens' DescribeAssetResponse (Prelude.Maybe Prelude.Text)+describeAssetResponse_resourceId = Lens.lens (\DescribeAssetResponse' {resourceId} -> resourceId) (\s@DescribeAssetResponse' {} a -> s {resourceId = a} :: DescribeAssetResponse)++-- | ARN of the source object in S3.+describeAssetResponse_sourceArn :: Lens.Lens' DescribeAssetResponse (Prelude.Maybe Prelude.Text)+describeAssetResponse_sourceArn = Lens.lens (\DescribeAssetResponse' {sourceArn} -> sourceArn) (\s@DescribeAssetResponse' {} a -> s {sourceArn = a} :: DescribeAssetResponse)++-- | The IAM role_arn used to access the source S3 bucket.+describeAssetResponse_sourceRoleArn :: Lens.Lens' DescribeAssetResponse (Prelude.Maybe Prelude.Text)+describeAssetResponse_sourceRoleArn = Lens.lens (\DescribeAssetResponse' {sourceRoleArn} -> sourceRoleArn) (\s@DescribeAssetResponse' {} a -> s {sourceRoleArn = a} :: DescribeAssetResponse)++-- | Undocumented member.+describeAssetResponse_tags :: Lens.Lens' DescribeAssetResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeAssetResponse_tags = Lens.lens (\DescribeAssetResponse' {tags} -> tags) (\s@DescribeAssetResponse' {} a -> s {tags = a} :: DescribeAssetResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeAssetResponse_httpStatus :: Lens.Lens' DescribeAssetResponse Prelude.Int+describeAssetResponse_httpStatus = Lens.lens (\DescribeAssetResponse' {httpStatus} -> httpStatus) (\s@DescribeAssetResponse' {} a -> s {httpStatus = a} :: DescribeAssetResponse)++instance Prelude.NFData DescribeAssetResponse where+ rnf DescribeAssetResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf egressEndpoints+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf packagingGroupId+ `Prelude.seq` Prelude.rnf resourceId+ `Prelude.seq` Prelude.rnf sourceArn+ `Prelude.seq` Prelude.rnf sourceRoleArn+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/DescribePackagingConfiguration.hs view
@@ -0,0 +1,258 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.DescribePackagingConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a description of a MediaPackage VOD PackagingConfiguration+-- resource.+module Amazonka.MediaPackageVOD.DescribePackagingConfiguration+ ( -- * Creating a Request+ DescribePackagingConfiguration (..),+ newDescribePackagingConfiguration,++ -- * Request Lenses+ describePackagingConfiguration_id,++ -- * Destructuring the Response+ DescribePackagingConfigurationResponse (..),+ newDescribePackagingConfigurationResponse,++ -- * Response Lenses+ describePackagingConfigurationResponse_arn,+ describePackagingConfigurationResponse_cmafPackage,+ describePackagingConfigurationResponse_dashPackage,+ describePackagingConfigurationResponse_hlsPackage,+ describePackagingConfigurationResponse_id,+ describePackagingConfigurationResponse_mssPackage,+ describePackagingConfigurationResponse_packagingGroupId,+ describePackagingConfigurationResponse_tags,+ describePackagingConfigurationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribePackagingConfiguration' smart constructor.+data DescribePackagingConfiguration = DescribePackagingConfiguration'+ { -- | The ID of a MediaPackage VOD PackagingConfiguration resource.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePackagingConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'describePackagingConfiguration_id' - The ID of a MediaPackage VOD PackagingConfiguration resource.+newDescribePackagingConfiguration ::+ -- | 'id'+ Prelude.Text ->+ DescribePackagingConfiguration+newDescribePackagingConfiguration pId_ =+ DescribePackagingConfiguration' {id = pId_}++-- | The ID of a MediaPackage VOD PackagingConfiguration resource.+describePackagingConfiguration_id :: Lens.Lens' DescribePackagingConfiguration Prelude.Text+describePackagingConfiguration_id = Lens.lens (\DescribePackagingConfiguration' {id} -> id) (\s@DescribePackagingConfiguration' {} a -> s {id = a} :: DescribePackagingConfiguration)++instance+ Core.AWSRequest+ DescribePackagingConfiguration+ where+ type+ AWSResponse DescribePackagingConfiguration =+ DescribePackagingConfigurationResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribePackagingConfigurationResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "cmafPackage")+ Prelude.<*> (x Data..?> "dashPackage")+ Prelude.<*> (x Data..?> "hlsPackage")+ Prelude.<*> (x Data..?> "id")+ Prelude.<*> (x Data..?> "mssPackage")+ Prelude.<*> (x Data..?> "packagingGroupId")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribePackagingConfiguration+ where+ hashWithSalt+ _salt+ DescribePackagingConfiguration' {..} =+ _salt `Prelude.hashWithSalt` id++instance+ Prelude.NFData+ DescribePackagingConfiguration+ where+ rnf DescribePackagingConfiguration' {..} =+ Prelude.rnf id++instance+ Data.ToHeaders+ DescribePackagingConfiguration+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribePackagingConfiguration where+ toPath DescribePackagingConfiguration' {..} =+ Prelude.mconcat+ ["/packaging_configurations/", Data.toBS id]++instance Data.ToQuery DescribePackagingConfiguration where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribePackagingConfigurationResponse' smart constructor.+data DescribePackagingConfigurationResponse = DescribePackagingConfigurationResponse'+ { -- | The ARN of the PackagingConfiguration.+ arn :: Prelude.Maybe Prelude.Text,+ cmafPackage :: Prelude.Maybe CmafPackage,+ dashPackage :: Prelude.Maybe DashPackage,+ hlsPackage :: Prelude.Maybe HlsPackage,+ -- | The ID of the PackagingConfiguration.+ id :: Prelude.Maybe Prelude.Text,+ mssPackage :: Prelude.Maybe MssPackage,+ -- | The ID of a PackagingGroup.+ packagingGroupId :: Prelude.Maybe Prelude.Text,+ 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 'DescribePackagingConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describePackagingConfigurationResponse_arn' - The ARN of the PackagingConfiguration.+--+-- 'cmafPackage', 'describePackagingConfigurationResponse_cmafPackage' - Undocumented member.+--+-- 'dashPackage', 'describePackagingConfigurationResponse_dashPackage' - Undocumented member.+--+-- 'hlsPackage', 'describePackagingConfigurationResponse_hlsPackage' - Undocumented member.+--+-- 'id', 'describePackagingConfigurationResponse_id' - The ID of the PackagingConfiguration.+--+-- 'mssPackage', 'describePackagingConfigurationResponse_mssPackage' - Undocumented member.+--+-- 'packagingGroupId', 'describePackagingConfigurationResponse_packagingGroupId' - The ID of a PackagingGroup.+--+-- 'tags', 'describePackagingConfigurationResponse_tags' - Undocumented member.+--+-- 'httpStatus', 'describePackagingConfigurationResponse_httpStatus' - The response's http status code.+newDescribePackagingConfigurationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribePackagingConfigurationResponse+newDescribePackagingConfigurationResponse+ pHttpStatus_ =+ DescribePackagingConfigurationResponse'+ { arn =+ Prelude.Nothing,+ cmafPackage = Prelude.Nothing,+ dashPackage = Prelude.Nothing,+ hlsPackage = Prelude.Nothing,+ id = Prelude.Nothing,+ mssPackage = Prelude.Nothing,+ packagingGroupId = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN of the PackagingConfiguration.+describePackagingConfigurationResponse_arn :: Lens.Lens' DescribePackagingConfigurationResponse (Prelude.Maybe Prelude.Text)+describePackagingConfigurationResponse_arn = Lens.lens (\DescribePackagingConfigurationResponse' {arn} -> arn) (\s@DescribePackagingConfigurationResponse' {} a -> s {arn = a} :: DescribePackagingConfigurationResponse)++-- | Undocumented member.+describePackagingConfigurationResponse_cmafPackage :: Lens.Lens' DescribePackagingConfigurationResponse (Prelude.Maybe CmafPackage)+describePackagingConfigurationResponse_cmafPackage = Lens.lens (\DescribePackagingConfigurationResponse' {cmafPackage} -> cmafPackage) (\s@DescribePackagingConfigurationResponse' {} a -> s {cmafPackage = a} :: DescribePackagingConfigurationResponse)++-- | Undocumented member.+describePackagingConfigurationResponse_dashPackage :: Lens.Lens' DescribePackagingConfigurationResponse (Prelude.Maybe DashPackage)+describePackagingConfigurationResponse_dashPackage = Lens.lens (\DescribePackagingConfigurationResponse' {dashPackage} -> dashPackage) (\s@DescribePackagingConfigurationResponse' {} a -> s {dashPackage = a} :: DescribePackagingConfigurationResponse)++-- | Undocumented member.+describePackagingConfigurationResponse_hlsPackage :: Lens.Lens' DescribePackagingConfigurationResponse (Prelude.Maybe HlsPackage)+describePackagingConfigurationResponse_hlsPackage = Lens.lens (\DescribePackagingConfigurationResponse' {hlsPackage} -> hlsPackage) (\s@DescribePackagingConfigurationResponse' {} a -> s {hlsPackage = a} :: DescribePackagingConfigurationResponse)++-- | The ID of the PackagingConfiguration.+describePackagingConfigurationResponse_id :: Lens.Lens' DescribePackagingConfigurationResponse (Prelude.Maybe Prelude.Text)+describePackagingConfigurationResponse_id = Lens.lens (\DescribePackagingConfigurationResponse' {id} -> id) (\s@DescribePackagingConfigurationResponse' {} a -> s {id = a} :: DescribePackagingConfigurationResponse)++-- | Undocumented member.+describePackagingConfigurationResponse_mssPackage :: Lens.Lens' DescribePackagingConfigurationResponse (Prelude.Maybe MssPackage)+describePackagingConfigurationResponse_mssPackage = Lens.lens (\DescribePackagingConfigurationResponse' {mssPackage} -> mssPackage) (\s@DescribePackagingConfigurationResponse' {} a -> s {mssPackage = a} :: DescribePackagingConfigurationResponse)++-- | The ID of a PackagingGroup.+describePackagingConfigurationResponse_packagingGroupId :: Lens.Lens' DescribePackagingConfigurationResponse (Prelude.Maybe Prelude.Text)+describePackagingConfigurationResponse_packagingGroupId = Lens.lens (\DescribePackagingConfigurationResponse' {packagingGroupId} -> packagingGroupId) (\s@DescribePackagingConfigurationResponse' {} a -> s {packagingGroupId = a} :: DescribePackagingConfigurationResponse)++-- | Undocumented member.+describePackagingConfigurationResponse_tags :: Lens.Lens' DescribePackagingConfigurationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describePackagingConfigurationResponse_tags = Lens.lens (\DescribePackagingConfigurationResponse' {tags} -> tags) (\s@DescribePackagingConfigurationResponse' {} a -> s {tags = a} :: DescribePackagingConfigurationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describePackagingConfigurationResponse_httpStatus :: Lens.Lens' DescribePackagingConfigurationResponse Prelude.Int+describePackagingConfigurationResponse_httpStatus = Lens.lens (\DescribePackagingConfigurationResponse' {httpStatus} -> httpStatus) (\s@DescribePackagingConfigurationResponse' {} a -> s {httpStatus = a} :: DescribePackagingConfigurationResponse)++instance+ Prelude.NFData+ DescribePackagingConfigurationResponse+ where+ rnf DescribePackagingConfigurationResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf cmafPackage+ `Prelude.seq` Prelude.rnf dashPackage+ `Prelude.seq` Prelude.rnf hlsPackage+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf mssPackage+ `Prelude.seq` Prelude.rnf packagingGroupId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/DescribePackagingGroup.hs view
@@ -0,0 +1,231 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.DescribePackagingGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a description of a MediaPackage VOD PackagingGroup resource.+module Amazonka.MediaPackageVOD.DescribePackagingGroup+ ( -- * Creating a Request+ DescribePackagingGroup (..),+ newDescribePackagingGroup,++ -- * Request Lenses+ describePackagingGroup_id,++ -- * Destructuring the Response+ DescribePackagingGroupResponse (..),+ newDescribePackagingGroupResponse,++ -- * Response Lenses+ describePackagingGroupResponse_approximateAssetCount,+ describePackagingGroupResponse_arn,+ describePackagingGroupResponse_authorization,+ describePackagingGroupResponse_domainName,+ describePackagingGroupResponse_egressAccessLogs,+ describePackagingGroupResponse_id,+ describePackagingGroupResponse_tags,+ describePackagingGroupResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribePackagingGroup' smart constructor.+data DescribePackagingGroup = DescribePackagingGroup'+ { -- | The ID of a MediaPackage VOD PackagingGroup resource.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePackagingGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'describePackagingGroup_id' - The ID of a MediaPackage VOD PackagingGroup resource.+newDescribePackagingGroup ::+ -- | 'id'+ Prelude.Text ->+ DescribePackagingGroup+newDescribePackagingGroup pId_ =+ DescribePackagingGroup' {id = pId_}++-- | The ID of a MediaPackage VOD PackagingGroup resource.+describePackagingGroup_id :: Lens.Lens' DescribePackagingGroup Prelude.Text+describePackagingGroup_id = Lens.lens (\DescribePackagingGroup' {id} -> id) (\s@DescribePackagingGroup' {} a -> s {id = a} :: DescribePackagingGroup)++instance Core.AWSRequest DescribePackagingGroup where+ type+ AWSResponse DescribePackagingGroup =+ DescribePackagingGroupResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribePackagingGroupResponse'+ Prelude.<$> (x Data..?> "approximateAssetCount")+ Prelude.<*> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "authorization")+ Prelude.<*> (x Data..?> "domainName")+ Prelude.<*> (x Data..?> "egressAccessLogs")+ Prelude.<*> (x Data..?> "id")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribePackagingGroup where+ hashWithSalt _salt DescribePackagingGroup' {..} =+ _salt `Prelude.hashWithSalt` id++instance Prelude.NFData DescribePackagingGroup where+ rnf DescribePackagingGroup' {..} = Prelude.rnf id++instance Data.ToHeaders DescribePackagingGroup where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribePackagingGroup where+ toPath DescribePackagingGroup' {..} =+ Prelude.mconcat+ ["/packaging_groups/", Data.toBS id]++instance Data.ToQuery DescribePackagingGroup where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribePackagingGroupResponse' smart constructor.+data DescribePackagingGroupResponse = DescribePackagingGroupResponse'+ { -- | The approximate asset count of the PackagingGroup.+ approximateAssetCount :: Prelude.Maybe Prelude.Int,+ -- | The ARN of the PackagingGroup.+ arn :: Prelude.Maybe Prelude.Text,+ authorization :: Prelude.Maybe Authorization,+ -- | The fully qualified domain name for Assets in the PackagingGroup.+ domainName :: Prelude.Maybe Prelude.Text,+ egressAccessLogs :: Prelude.Maybe EgressAccessLogs,+ -- | The ID of the PackagingGroup.+ id :: Prelude.Maybe Prelude.Text,+ 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 'DescribePackagingGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'approximateAssetCount', 'describePackagingGroupResponse_approximateAssetCount' - The approximate asset count of the PackagingGroup.+--+-- 'arn', 'describePackagingGroupResponse_arn' - The ARN of the PackagingGroup.+--+-- 'authorization', 'describePackagingGroupResponse_authorization' - Undocumented member.+--+-- 'domainName', 'describePackagingGroupResponse_domainName' - The fully qualified domain name for Assets in the PackagingGroup.+--+-- 'egressAccessLogs', 'describePackagingGroupResponse_egressAccessLogs' - Undocumented member.+--+-- 'id', 'describePackagingGroupResponse_id' - The ID of the PackagingGroup.+--+-- 'tags', 'describePackagingGroupResponse_tags' - Undocumented member.+--+-- 'httpStatus', 'describePackagingGroupResponse_httpStatus' - The response's http status code.+newDescribePackagingGroupResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribePackagingGroupResponse+newDescribePackagingGroupResponse pHttpStatus_ =+ DescribePackagingGroupResponse'+ { approximateAssetCount =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ authorization = Prelude.Nothing,+ domainName = Prelude.Nothing,+ egressAccessLogs = Prelude.Nothing,+ id = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The approximate asset count of the PackagingGroup.+describePackagingGroupResponse_approximateAssetCount :: Lens.Lens' DescribePackagingGroupResponse (Prelude.Maybe Prelude.Int)+describePackagingGroupResponse_approximateAssetCount = Lens.lens (\DescribePackagingGroupResponse' {approximateAssetCount} -> approximateAssetCount) (\s@DescribePackagingGroupResponse' {} a -> s {approximateAssetCount = a} :: DescribePackagingGroupResponse)++-- | The ARN of the PackagingGroup.+describePackagingGroupResponse_arn :: Lens.Lens' DescribePackagingGroupResponse (Prelude.Maybe Prelude.Text)+describePackagingGroupResponse_arn = Lens.lens (\DescribePackagingGroupResponse' {arn} -> arn) (\s@DescribePackagingGroupResponse' {} a -> s {arn = a} :: DescribePackagingGroupResponse)++-- | Undocumented member.+describePackagingGroupResponse_authorization :: Lens.Lens' DescribePackagingGroupResponse (Prelude.Maybe Authorization)+describePackagingGroupResponse_authorization = Lens.lens (\DescribePackagingGroupResponse' {authorization} -> authorization) (\s@DescribePackagingGroupResponse' {} a -> s {authorization = a} :: DescribePackagingGroupResponse)++-- | The fully qualified domain name for Assets in the PackagingGroup.+describePackagingGroupResponse_domainName :: Lens.Lens' DescribePackagingGroupResponse (Prelude.Maybe Prelude.Text)+describePackagingGroupResponse_domainName = Lens.lens (\DescribePackagingGroupResponse' {domainName} -> domainName) (\s@DescribePackagingGroupResponse' {} a -> s {domainName = a} :: DescribePackagingGroupResponse)++-- | Undocumented member.+describePackagingGroupResponse_egressAccessLogs :: Lens.Lens' DescribePackagingGroupResponse (Prelude.Maybe EgressAccessLogs)+describePackagingGroupResponse_egressAccessLogs = Lens.lens (\DescribePackagingGroupResponse' {egressAccessLogs} -> egressAccessLogs) (\s@DescribePackagingGroupResponse' {} a -> s {egressAccessLogs = a} :: DescribePackagingGroupResponse)++-- | The ID of the PackagingGroup.+describePackagingGroupResponse_id :: Lens.Lens' DescribePackagingGroupResponse (Prelude.Maybe Prelude.Text)+describePackagingGroupResponse_id = Lens.lens (\DescribePackagingGroupResponse' {id} -> id) (\s@DescribePackagingGroupResponse' {} a -> s {id = a} :: DescribePackagingGroupResponse)++-- | Undocumented member.+describePackagingGroupResponse_tags :: Lens.Lens' DescribePackagingGroupResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describePackagingGroupResponse_tags = Lens.lens (\DescribePackagingGroupResponse' {tags} -> tags) (\s@DescribePackagingGroupResponse' {} a -> s {tags = a} :: DescribePackagingGroupResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describePackagingGroupResponse_httpStatus :: Lens.Lens' DescribePackagingGroupResponse Prelude.Int+describePackagingGroupResponse_httpStatus = Lens.lens (\DescribePackagingGroupResponse' {httpStatus} -> httpStatus) (\s@DescribePackagingGroupResponse' {} a -> s {httpStatus = a} :: DescribePackagingGroupResponse)++instance+ Prelude.NFData+ DescribePackagingGroupResponse+ where+ rnf DescribePackagingGroupResponse' {..} =+ Prelude.rnf approximateAssetCount+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf authorization+ `Prelude.seq` Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf egressAccessLogs+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/Lens.hs view
@@ -0,0 +1,331 @@+{-# 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.MediaPackageVOD.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.MediaPackageVOD.Lens+ ( -- * Operations++ -- ** ConfigureLogs+ configureLogs_egressAccessLogs,+ configureLogs_id,+ configureLogsResponse_arn,+ configureLogsResponse_authorization,+ configureLogsResponse_domainName,+ configureLogsResponse_egressAccessLogs,+ configureLogsResponse_id,+ configureLogsResponse_tags,+ configureLogsResponse_httpStatus,++ -- ** CreateAsset+ createAsset_resourceId,+ createAsset_tags,+ createAsset_sourceArn,+ createAsset_id,+ createAsset_packagingGroupId,+ createAsset_sourceRoleArn,+ createAssetResponse_arn,+ createAssetResponse_createdAt,+ createAssetResponse_egressEndpoints,+ createAssetResponse_id,+ createAssetResponse_packagingGroupId,+ createAssetResponse_resourceId,+ createAssetResponse_sourceArn,+ createAssetResponse_sourceRoleArn,+ createAssetResponse_tags,+ createAssetResponse_httpStatus,++ -- ** CreatePackagingConfiguration+ createPackagingConfiguration_cmafPackage,+ createPackagingConfiguration_dashPackage,+ createPackagingConfiguration_hlsPackage,+ createPackagingConfiguration_mssPackage,+ createPackagingConfiguration_tags,+ createPackagingConfiguration_id,+ createPackagingConfiguration_packagingGroupId,+ createPackagingConfigurationResponse_arn,+ createPackagingConfigurationResponse_cmafPackage,+ createPackagingConfigurationResponse_dashPackage,+ createPackagingConfigurationResponse_hlsPackage,+ createPackagingConfigurationResponse_id,+ createPackagingConfigurationResponse_mssPackage,+ createPackagingConfigurationResponse_packagingGroupId,+ createPackagingConfigurationResponse_tags,+ createPackagingConfigurationResponse_httpStatus,++ -- ** CreatePackagingGroup+ createPackagingGroup_authorization,+ createPackagingGroup_egressAccessLogs,+ createPackagingGroup_tags,+ createPackagingGroup_id,+ createPackagingGroupResponse_arn,+ createPackagingGroupResponse_authorization,+ createPackagingGroupResponse_domainName,+ createPackagingGroupResponse_egressAccessLogs,+ createPackagingGroupResponse_id,+ createPackagingGroupResponse_tags,+ createPackagingGroupResponse_httpStatus,++ -- ** DeleteAsset+ deleteAsset_id,+ deleteAssetResponse_httpStatus,++ -- ** DeletePackagingConfiguration+ deletePackagingConfiguration_id,+ deletePackagingConfigurationResponse_httpStatus,++ -- ** DeletePackagingGroup+ deletePackagingGroup_id,+ deletePackagingGroupResponse_httpStatus,++ -- ** DescribeAsset+ describeAsset_id,+ describeAssetResponse_arn,+ describeAssetResponse_createdAt,+ describeAssetResponse_egressEndpoints,+ describeAssetResponse_id,+ describeAssetResponse_packagingGroupId,+ describeAssetResponse_resourceId,+ describeAssetResponse_sourceArn,+ describeAssetResponse_sourceRoleArn,+ describeAssetResponse_tags,+ describeAssetResponse_httpStatus,++ -- ** DescribePackagingConfiguration+ describePackagingConfiguration_id,+ describePackagingConfigurationResponse_arn,+ describePackagingConfigurationResponse_cmafPackage,+ describePackagingConfigurationResponse_dashPackage,+ describePackagingConfigurationResponse_hlsPackage,+ describePackagingConfigurationResponse_id,+ describePackagingConfigurationResponse_mssPackage,+ describePackagingConfigurationResponse_packagingGroupId,+ describePackagingConfigurationResponse_tags,+ describePackagingConfigurationResponse_httpStatus,++ -- ** DescribePackagingGroup+ describePackagingGroup_id,+ describePackagingGroupResponse_approximateAssetCount,+ describePackagingGroupResponse_arn,+ describePackagingGroupResponse_authorization,+ describePackagingGroupResponse_domainName,+ describePackagingGroupResponse_egressAccessLogs,+ describePackagingGroupResponse_id,+ describePackagingGroupResponse_tags,+ describePackagingGroupResponse_httpStatus,++ -- ** ListAssets+ listAssets_maxResults,+ listAssets_nextToken,+ listAssets_packagingGroupId,+ listAssetsResponse_assets,+ listAssetsResponse_nextToken,+ listAssetsResponse_httpStatus,++ -- ** ListPackagingConfigurations+ listPackagingConfigurations_maxResults,+ listPackagingConfigurations_nextToken,+ listPackagingConfigurations_packagingGroupId,+ listPackagingConfigurationsResponse_nextToken,+ listPackagingConfigurationsResponse_packagingConfigurations,+ listPackagingConfigurationsResponse_httpStatus,++ -- ** ListPackagingGroups+ listPackagingGroups_maxResults,+ listPackagingGroups_nextToken,+ listPackagingGroupsResponse_nextToken,+ listPackagingGroupsResponse_packagingGroups,+ listPackagingGroupsResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceArn,+ tagResource_tags,++ -- ** UntagResource+ untagResource_tagKeys,+ untagResource_resourceArn,++ -- ** UpdatePackagingGroup+ updatePackagingGroup_authorization,+ updatePackagingGroup_id,+ updatePackagingGroupResponse_approximateAssetCount,+ updatePackagingGroupResponse_arn,+ updatePackagingGroupResponse_authorization,+ updatePackagingGroupResponse_domainName,+ updatePackagingGroupResponse_egressAccessLogs,+ updatePackagingGroupResponse_id,+ updatePackagingGroupResponse_tags,+ updatePackagingGroupResponse_httpStatus,++ -- * Types++ -- ** AssetShallow+ assetShallow_arn,+ assetShallow_createdAt,+ assetShallow_id,+ assetShallow_packagingGroupId,+ assetShallow_resourceId,+ assetShallow_sourceArn,+ assetShallow_sourceRoleArn,+ assetShallow_tags,++ -- ** Authorization+ authorization_secretsRoleArn,+ authorization_cdnIdentifierSecret,++ -- ** CmafEncryption+ cmafEncryption_constantInitializationVector,+ cmafEncryption_spekeKeyProvider,++ -- ** CmafPackage+ cmafPackage_encryption,+ cmafPackage_includeEncoderConfigurationInSegments,+ cmafPackage_segmentDurationSeconds,+ cmafPackage_hlsManifests,++ -- ** DashEncryption+ dashEncryption_spekeKeyProvider,++ -- ** DashManifest+ dashManifest_manifestLayout,+ dashManifest_manifestName,+ dashManifest_minBufferTimeSeconds,+ dashManifest_profile,+ dashManifest_scteMarkersSource,+ dashManifest_streamSelection,++ -- ** DashPackage+ dashPackage_encryption,+ dashPackage_includeEncoderConfigurationInSegments,+ dashPackage_includeIframeOnlyStream,+ dashPackage_periodTriggers,+ dashPackage_segmentDurationSeconds,+ dashPackage_segmentTemplateFormat,+ dashPackage_dashManifests,++ -- ** EgressAccessLogs+ egressAccessLogs_logGroupName,++ -- ** EgressEndpoint+ egressEndpoint_packagingConfigurationId,+ egressEndpoint_status,+ egressEndpoint_url,++ -- ** EncryptionContractConfiguration+ encryptionContractConfiguration_presetSpeke20Audio,+ encryptionContractConfiguration_presetSpeke20Video,++ -- ** HlsEncryption+ hlsEncryption_constantInitializationVector,+ hlsEncryption_encryptionMethod,+ hlsEncryption_spekeKeyProvider,++ -- ** HlsManifest+ hlsManifest_adMarkers,+ hlsManifest_includeIframeOnlyStream,+ hlsManifest_manifestName,+ hlsManifest_programDateTimeIntervalSeconds,+ hlsManifest_repeatExtXKey,+ hlsManifest_streamSelection,++ -- ** HlsPackage+ hlsPackage_encryption,+ hlsPackage_includeDvbSubtitles,+ hlsPackage_segmentDurationSeconds,+ hlsPackage_useAudioRenditionGroup,+ hlsPackage_hlsManifests,++ -- ** MssEncryption+ mssEncryption_spekeKeyProvider,++ -- ** MssManifest+ mssManifest_manifestName,+ mssManifest_streamSelection,++ -- ** MssPackage+ mssPackage_encryption,+ mssPackage_segmentDurationSeconds,+ mssPackage_mssManifests,++ -- ** PackagingConfiguration+ packagingConfiguration_arn,+ packagingConfiguration_cmafPackage,+ packagingConfiguration_dashPackage,+ packagingConfiguration_hlsPackage,+ packagingConfiguration_id,+ packagingConfiguration_mssPackage,+ packagingConfiguration_packagingGroupId,+ packagingConfiguration_tags,++ -- ** PackagingGroup+ packagingGroup_approximateAssetCount,+ packagingGroup_arn,+ packagingGroup_authorization,+ packagingGroup_domainName,+ packagingGroup_egressAccessLogs,+ packagingGroup_id,+ packagingGroup_tags,++ -- ** SpekeKeyProvider+ spekeKeyProvider_encryptionContractConfiguration,+ spekeKeyProvider_systemIds,+ spekeKeyProvider_url,+ spekeKeyProvider_roleArn,++ -- ** StreamSelection+ streamSelection_maxVideoBitsPerSecond,+ streamSelection_minVideoBitsPerSecond,+ streamSelection_streamOrder,+ )+where++import Amazonka.MediaPackageVOD.ConfigureLogs+import Amazonka.MediaPackageVOD.CreateAsset+import Amazonka.MediaPackageVOD.CreatePackagingConfiguration+import Amazonka.MediaPackageVOD.CreatePackagingGroup+import Amazonka.MediaPackageVOD.DeleteAsset+import Amazonka.MediaPackageVOD.DeletePackagingConfiguration+import Amazonka.MediaPackageVOD.DeletePackagingGroup+import Amazonka.MediaPackageVOD.DescribeAsset+import Amazonka.MediaPackageVOD.DescribePackagingConfiguration+import Amazonka.MediaPackageVOD.DescribePackagingGroup+import Amazonka.MediaPackageVOD.ListAssets+import Amazonka.MediaPackageVOD.ListPackagingConfigurations+import Amazonka.MediaPackageVOD.ListPackagingGroups+import Amazonka.MediaPackageVOD.ListTagsForResource+import Amazonka.MediaPackageVOD.TagResource+import Amazonka.MediaPackageVOD.Types.AssetShallow+import Amazonka.MediaPackageVOD.Types.Authorization+import Amazonka.MediaPackageVOD.Types.CmafEncryption+import Amazonka.MediaPackageVOD.Types.CmafPackage+import Amazonka.MediaPackageVOD.Types.DashEncryption+import Amazonka.MediaPackageVOD.Types.DashManifest+import Amazonka.MediaPackageVOD.Types.DashPackage+import Amazonka.MediaPackageVOD.Types.EgressAccessLogs+import Amazonka.MediaPackageVOD.Types.EgressEndpoint+import Amazonka.MediaPackageVOD.Types.EncryptionContractConfiguration+import Amazonka.MediaPackageVOD.Types.HlsEncryption+import Amazonka.MediaPackageVOD.Types.HlsManifest+import Amazonka.MediaPackageVOD.Types.HlsPackage+import Amazonka.MediaPackageVOD.Types.MssEncryption+import Amazonka.MediaPackageVOD.Types.MssManifest+import Amazonka.MediaPackageVOD.Types.MssPackage+import Amazonka.MediaPackageVOD.Types.PackagingConfiguration+import Amazonka.MediaPackageVOD.Types.PackagingGroup+import Amazonka.MediaPackageVOD.Types.SpekeKeyProvider+import Amazonka.MediaPackageVOD.Types.StreamSelection+import Amazonka.MediaPackageVOD.UntagResource+import Amazonka.MediaPackageVOD.UpdatePackagingGroup
+ gen/Amazonka/MediaPackageVOD/ListAssets.hs view
@@ -0,0 +1,224 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.ListAssets+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a collection of MediaPackage VOD Asset resources.+--+-- This operation returns paginated results.+module Amazonka.MediaPackageVOD.ListAssets+ ( -- * Creating a Request+ ListAssets (..),+ newListAssets,++ -- * Request Lenses+ listAssets_maxResults,+ listAssets_nextToken,+ listAssets_packagingGroupId,++ -- * Destructuring the Response+ ListAssetsResponse (..),+ newListAssetsResponse,++ -- * Response Lenses+ listAssetsResponse_assets,+ listAssetsResponse_nextToken,+ listAssetsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListAssets' smart constructor.+data ListAssets = ListAssets'+ { -- | Upper bound on number of records to return.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | A token used to resume pagination from the end of a previous request.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Returns Assets associated with the specified PackagingGroup.+ packagingGroupId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAssets' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listAssets_maxResults' - Upper bound on number of records to return.+--+-- 'nextToken', 'listAssets_nextToken' - A token used to resume pagination from the end of a previous request.+--+-- 'packagingGroupId', 'listAssets_packagingGroupId' - Returns Assets associated with the specified PackagingGroup.+newListAssets ::+ ListAssets+newListAssets =+ ListAssets'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ packagingGroupId = Prelude.Nothing+ }++-- | Upper bound on number of records to return.+listAssets_maxResults :: Lens.Lens' ListAssets (Prelude.Maybe Prelude.Natural)+listAssets_maxResults = Lens.lens (\ListAssets' {maxResults} -> maxResults) (\s@ListAssets' {} a -> s {maxResults = a} :: ListAssets)++-- | A token used to resume pagination from the end of a previous request.+listAssets_nextToken :: Lens.Lens' ListAssets (Prelude.Maybe Prelude.Text)+listAssets_nextToken = Lens.lens (\ListAssets' {nextToken} -> nextToken) (\s@ListAssets' {} a -> s {nextToken = a} :: ListAssets)++-- | Returns Assets associated with the specified PackagingGroup.+listAssets_packagingGroupId :: Lens.Lens' ListAssets (Prelude.Maybe Prelude.Text)+listAssets_packagingGroupId = Lens.lens (\ListAssets' {packagingGroupId} -> packagingGroupId) (\s@ListAssets' {} a -> s {packagingGroupId = a} :: ListAssets)++instance Core.AWSPager ListAssets where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listAssetsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listAssetsResponse_assets+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listAssets_nextToken+ Lens..~ rs+ Lens.^? listAssetsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListAssets where+ type AWSResponse ListAssets = ListAssetsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListAssetsResponse'+ Prelude.<$> (x Data..?> "assets" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListAssets where+ hashWithSalt _salt ListAssets' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` packagingGroupId++instance Prelude.NFData ListAssets where+ rnf ListAssets' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf packagingGroupId++instance Data.ToHeaders ListAssets where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListAssets where+ toPath = Prelude.const "/assets"++instance Data.ToQuery ListAssets where+ toQuery ListAssets' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken,+ "packagingGroupId" Data.=: packagingGroupId+ ]++-- | /See:/ 'newListAssetsResponse' smart constructor.+data ListAssetsResponse = ListAssetsResponse'+ { -- | A list of MediaPackage VOD Asset resources.+ assets :: Prelude.Maybe [AssetShallow],+ -- | A token that can be used to resume pagination from the end of the+ -- collection.+ 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 'ListAssetsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listAssetsResponse_assets' - A list of MediaPackage VOD Asset resources.+--+-- 'nextToken', 'listAssetsResponse_nextToken' - A token that can be used to resume pagination from the end of the+-- collection.+--+-- 'httpStatus', 'listAssetsResponse_httpStatus' - The response's http status code.+newListAssetsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAssetsResponse+newListAssetsResponse pHttpStatus_ =+ ListAssetsResponse'+ { assets = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of MediaPackage VOD Asset resources.+listAssetsResponse_assets :: Lens.Lens' ListAssetsResponse (Prelude.Maybe [AssetShallow])+listAssetsResponse_assets = Lens.lens (\ListAssetsResponse' {assets} -> assets) (\s@ListAssetsResponse' {} a -> s {assets = a} :: ListAssetsResponse) Prelude.. Lens.mapping Lens.coerced++-- | A token that can be used to resume pagination from the end of the+-- collection.+listAssetsResponse_nextToken :: Lens.Lens' ListAssetsResponse (Prelude.Maybe Prelude.Text)+listAssetsResponse_nextToken = Lens.lens (\ListAssetsResponse' {nextToken} -> nextToken) (\s@ListAssetsResponse' {} a -> s {nextToken = a} :: ListAssetsResponse)++-- | The response's http status code.+listAssetsResponse_httpStatus :: Lens.Lens' ListAssetsResponse Prelude.Int+listAssetsResponse_httpStatus = Lens.lens (\ListAssetsResponse' {httpStatus} -> httpStatus) (\s@ListAssetsResponse' {} a -> s {httpStatus = a} :: ListAssetsResponse)++instance Prelude.NFData ListAssetsResponse where+ rnf ListAssetsResponse' {..} =+ Prelude.rnf assets+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/ListPackagingConfigurations.hs view
@@ -0,0 +1,239 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.ListPackagingConfigurations+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a collection of MediaPackage VOD PackagingConfiguration+-- resources.+--+-- This operation returns paginated results.+module Amazonka.MediaPackageVOD.ListPackagingConfigurations+ ( -- * Creating a Request+ ListPackagingConfigurations (..),+ newListPackagingConfigurations,++ -- * Request Lenses+ listPackagingConfigurations_maxResults,+ listPackagingConfigurations_nextToken,+ listPackagingConfigurations_packagingGroupId,++ -- * Destructuring the Response+ ListPackagingConfigurationsResponse (..),+ newListPackagingConfigurationsResponse,++ -- * Response Lenses+ listPackagingConfigurationsResponse_nextToken,+ listPackagingConfigurationsResponse_packagingConfigurations,+ listPackagingConfigurationsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListPackagingConfigurations' smart constructor.+data ListPackagingConfigurations = ListPackagingConfigurations'+ { -- | Upper bound on number of records to return.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | A token used to resume pagination from the end of a previous request.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Returns MediaPackage VOD PackagingConfigurations associated with the+ -- specified PackagingGroup.+ packagingGroupId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackagingConfigurations' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listPackagingConfigurations_maxResults' - Upper bound on number of records to return.+--+-- 'nextToken', 'listPackagingConfigurations_nextToken' - A token used to resume pagination from the end of a previous request.+--+-- 'packagingGroupId', 'listPackagingConfigurations_packagingGroupId' - Returns MediaPackage VOD PackagingConfigurations associated with the+-- specified PackagingGroup.+newListPackagingConfigurations ::+ ListPackagingConfigurations+newListPackagingConfigurations =+ ListPackagingConfigurations'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ packagingGroupId = Prelude.Nothing+ }++-- | Upper bound on number of records to return.+listPackagingConfigurations_maxResults :: Lens.Lens' ListPackagingConfigurations (Prelude.Maybe Prelude.Natural)+listPackagingConfigurations_maxResults = Lens.lens (\ListPackagingConfigurations' {maxResults} -> maxResults) (\s@ListPackagingConfigurations' {} a -> s {maxResults = a} :: ListPackagingConfigurations)++-- | A token used to resume pagination from the end of a previous request.+listPackagingConfigurations_nextToken :: Lens.Lens' ListPackagingConfigurations (Prelude.Maybe Prelude.Text)+listPackagingConfigurations_nextToken = Lens.lens (\ListPackagingConfigurations' {nextToken} -> nextToken) (\s@ListPackagingConfigurations' {} a -> s {nextToken = a} :: ListPackagingConfigurations)++-- | Returns MediaPackage VOD PackagingConfigurations associated with the+-- specified PackagingGroup.+listPackagingConfigurations_packagingGroupId :: Lens.Lens' ListPackagingConfigurations (Prelude.Maybe Prelude.Text)+listPackagingConfigurations_packagingGroupId = Lens.lens (\ListPackagingConfigurations' {packagingGroupId} -> packagingGroupId) (\s@ListPackagingConfigurations' {} a -> s {packagingGroupId = a} :: ListPackagingConfigurations)++instance Core.AWSPager ListPackagingConfigurations where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listPackagingConfigurationsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listPackagingConfigurationsResponse_packagingConfigurations+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listPackagingConfigurations_nextToken+ Lens..~ rs+ Lens.^? listPackagingConfigurationsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListPackagingConfigurations where+ type+ AWSResponse ListPackagingConfigurations =+ ListPackagingConfigurationsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListPackagingConfigurationsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> ( x+ Data..?> "packagingConfigurations"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListPackagingConfigurations where+ hashWithSalt _salt ListPackagingConfigurations' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` packagingGroupId++instance Prelude.NFData ListPackagingConfigurations where+ rnf ListPackagingConfigurations' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf packagingGroupId++instance Data.ToHeaders ListPackagingConfigurations where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListPackagingConfigurations where+ toPath = Prelude.const "/packaging_configurations"++instance Data.ToQuery ListPackagingConfigurations where+ toQuery ListPackagingConfigurations' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken,+ "packagingGroupId" Data.=: packagingGroupId+ ]++-- | /See:/ 'newListPackagingConfigurationsResponse' smart constructor.+data ListPackagingConfigurationsResponse = ListPackagingConfigurationsResponse'+ { -- | A token that can be used to resume pagination from the end of the+ -- collection.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A list of MediaPackage VOD PackagingConfiguration resources.+ packagingConfigurations :: Prelude.Maybe [PackagingConfiguration],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackagingConfigurationsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listPackagingConfigurationsResponse_nextToken' - A token that can be used to resume pagination from the end of the+-- collection.+--+-- 'packagingConfigurations', 'listPackagingConfigurationsResponse_packagingConfigurations' - A list of MediaPackage VOD PackagingConfiguration resources.+--+-- 'httpStatus', 'listPackagingConfigurationsResponse_httpStatus' - The response's http status code.+newListPackagingConfigurationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPackagingConfigurationsResponse+newListPackagingConfigurationsResponse pHttpStatus_ =+ ListPackagingConfigurationsResponse'+ { nextToken =+ Prelude.Nothing,+ packagingConfigurations =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A token that can be used to resume pagination from the end of the+-- collection.+listPackagingConfigurationsResponse_nextToken :: Lens.Lens' ListPackagingConfigurationsResponse (Prelude.Maybe Prelude.Text)+listPackagingConfigurationsResponse_nextToken = Lens.lens (\ListPackagingConfigurationsResponse' {nextToken} -> nextToken) (\s@ListPackagingConfigurationsResponse' {} a -> s {nextToken = a} :: ListPackagingConfigurationsResponse)++-- | A list of MediaPackage VOD PackagingConfiguration resources.+listPackagingConfigurationsResponse_packagingConfigurations :: Lens.Lens' ListPackagingConfigurationsResponse (Prelude.Maybe [PackagingConfiguration])+listPackagingConfigurationsResponse_packagingConfigurations = Lens.lens (\ListPackagingConfigurationsResponse' {packagingConfigurations} -> packagingConfigurations) (\s@ListPackagingConfigurationsResponse' {} a -> s {packagingConfigurations = a} :: ListPackagingConfigurationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listPackagingConfigurationsResponse_httpStatus :: Lens.Lens' ListPackagingConfigurationsResponse Prelude.Int+listPackagingConfigurationsResponse_httpStatus = Lens.lens (\ListPackagingConfigurationsResponse' {httpStatus} -> httpStatus) (\s@ListPackagingConfigurationsResponse' {} a -> s {httpStatus = a} :: ListPackagingConfigurationsResponse)++instance+ Prelude.NFData+ ListPackagingConfigurationsResponse+ where+ rnf ListPackagingConfigurationsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf packagingConfigurations+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/ListPackagingGroups.hs view
@@ -0,0 +1,217 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.ListPackagingGroups+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a collection of MediaPackage VOD PackagingGroup resources.+--+-- This operation returns paginated results.+module Amazonka.MediaPackageVOD.ListPackagingGroups+ ( -- * Creating a Request+ ListPackagingGroups (..),+ newListPackagingGroups,++ -- * Request Lenses+ listPackagingGroups_maxResults,+ listPackagingGroups_nextToken,++ -- * Destructuring the Response+ ListPackagingGroupsResponse (..),+ newListPackagingGroupsResponse,++ -- * Response Lenses+ listPackagingGroupsResponse_nextToken,+ listPackagingGroupsResponse_packagingGroups,+ listPackagingGroupsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListPackagingGroups' smart constructor.+data ListPackagingGroups = ListPackagingGroups'+ { -- | Upper bound on number of records to return.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | A token used to resume pagination from the end of a previous request.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackagingGroups' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listPackagingGroups_maxResults' - Upper bound on number of records to return.+--+-- 'nextToken', 'listPackagingGroups_nextToken' - A token used to resume pagination from the end of a previous request.+newListPackagingGroups ::+ ListPackagingGroups+newListPackagingGroups =+ ListPackagingGroups'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Upper bound on number of records to return.+listPackagingGroups_maxResults :: Lens.Lens' ListPackagingGroups (Prelude.Maybe Prelude.Natural)+listPackagingGroups_maxResults = Lens.lens (\ListPackagingGroups' {maxResults} -> maxResults) (\s@ListPackagingGroups' {} a -> s {maxResults = a} :: ListPackagingGroups)++-- | A token used to resume pagination from the end of a previous request.+listPackagingGroups_nextToken :: Lens.Lens' ListPackagingGroups (Prelude.Maybe Prelude.Text)+listPackagingGroups_nextToken = Lens.lens (\ListPackagingGroups' {nextToken} -> nextToken) (\s@ListPackagingGroups' {} a -> s {nextToken = a} :: ListPackagingGroups)++instance Core.AWSPager ListPackagingGroups where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listPackagingGroupsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listPackagingGroupsResponse_packagingGroups+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listPackagingGroups_nextToken+ Lens..~ rs+ Lens.^? listPackagingGroupsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListPackagingGroups where+ type+ AWSResponse ListPackagingGroups =+ ListPackagingGroupsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListPackagingGroupsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> ( x+ Data..?> "packagingGroups"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListPackagingGroups where+ hashWithSalt _salt ListPackagingGroups' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListPackagingGroups where+ rnf ListPackagingGroups' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListPackagingGroups where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListPackagingGroups where+ toPath = Prelude.const "/packaging_groups"++instance Data.ToQuery ListPackagingGroups where+ toQuery ListPackagingGroups' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListPackagingGroupsResponse' smart constructor.+data ListPackagingGroupsResponse = ListPackagingGroupsResponse'+ { -- | A token that can be used to resume pagination from the end of the+ -- collection.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A list of MediaPackage VOD PackagingGroup resources.+ packagingGroups :: Prelude.Maybe [PackagingGroup],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackagingGroupsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listPackagingGroupsResponse_nextToken' - A token that can be used to resume pagination from the end of the+-- collection.+--+-- 'packagingGroups', 'listPackagingGroupsResponse_packagingGroups' - A list of MediaPackage VOD PackagingGroup resources.+--+-- 'httpStatus', 'listPackagingGroupsResponse_httpStatus' - The response's http status code.+newListPackagingGroupsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPackagingGroupsResponse+newListPackagingGroupsResponse pHttpStatus_ =+ ListPackagingGroupsResponse'+ { nextToken =+ Prelude.Nothing,+ packagingGroups = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A token that can be used to resume pagination from the end of the+-- collection.+listPackagingGroupsResponse_nextToken :: Lens.Lens' ListPackagingGroupsResponse (Prelude.Maybe Prelude.Text)+listPackagingGroupsResponse_nextToken = Lens.lens (\ListPackagingGroupsResponse' {nextToken} -> nextToken) (\s@ListPackagingGroupsResponse' {} a -> s {nextToken = a} :: ListPackagingGroupsResponse)++-- | A list of MediaPackage VOD PackagingGroup resources.+listPackagingGroupsResponse_packagingGroups :: Lens.Lens' ListPackagingGroupsResponse (Prelude.Maybe [PackagingGroup])+listPackagingGroupsResponse_packagingGroups = Lens.lens (\ListPackagingGroupsResponse' {packagingGroups} -> packagingGroups) (\s@ListPackagingGroupsResponse' {} a -> s {packagingGroups = a} :: ListPackagingGroupsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listPackagingGroupsResponse_httpStatus :: Lens.Lens' ListPackagingGroupsResponse Prelude.Int+listPackagingGroupsResponse_httpStatus = Lens.lens (\ListPackagingGroupsResponse' {httpStatus} -> httpStatus) (\s@ListPackagingGroupsResponse' {} a -> s {httpStatus = a} :: ListPackagingGroupsResponse)++instance Prelude.NFData ListPackagingGroupsResponse where+ rnf ListPackagingGroupsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf packagingGroups+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/ListTagsForResource.hs view
@@ -0,0 +1,162 @@+{-# 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.MediaPackageVOD.ListTagsForResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of the tags assigned to the specified resource.+module Amazonka.MediaPackageVOD.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.MediaPackageVOD.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'+ { -- | The Amazon Resource Name (ARN) for the resource. You can get this from+ -- the response to any request to the 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' - The Amazon Resource Name (ARN) for the resource. You can get this from+-- the response to any request to the resource.+newListTagsForResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceArn_ =+ ListTagsForResource' {resourceArn = pResourceArn_}++-- | The Amazon Resource Name (ARN) for the resource. You can get this from+-- the response to any request to the 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 collection of tags associated with a resource+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'listTagsForResourceResponse_tags' - A collection of tags associated with a resource+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A collection of tags associated with a resource+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+ rnf ListTagsForResourceResponse' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/TagResource.hs view
@@ -0,0 +1,146 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.TagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds tags to the specified resource. You can specify one or more tags to+-- add.+module Amazonka.MediaPackageVOD.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.MediaPackageVOD.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'+ { -- | The Amazon Resource Name (ARN) for the resource. You can get this from+ -- the response to any request to the resource.+ resourceArn :: Prelude.Text,+ -- | A collection of tags associated with a resource+ tags :: Prelude.HashMap Prelude.Text Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'tagResource_resourceArn' - The Amazon Resource Name (ARN) for the resource. You can get this from+-- the response to any request to the resource.+--+-- 'tags', 'tagResource_tags' - A collection of tags associated with a resource+newTagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pResourceArn_ =+ TagResource'+ { resourceArn = pResourceArn_,+ tags = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) for the resource. You can get this from+-- the response to any request to the resource.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++-- | A collection of tags associated with a resource+tagResource_tags :: Lens.Lens' TagResource (Prelude.HashMap Prelude.Text Prelude.Text)+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response = Response.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/MediaPackageVOD/Types.hs view
@@ -0,0 +1,369 @@+{-# 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.MediaPackageVOD.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.MediaPackageVOD.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _ForbiddenException,+ _InternalServerErrorException,+ _NotFoundException,+ _ServiceUnavailableException,+ _TooManyRequestsException,+ _UnprocessableEntityException,++ -- * AdMarkers+ AdMarkers (..),++ -- * EncryptionMethod+ EncryptionMethod (..),++ -- * ManifestLayout+ ManifestLayout (..),++ -- * PeriodTriggersElement+ PeriodTriggersElement (..),++ -- * PresetSpeke20Audio+ PresetSpeke20Audio (..),++ -- * PresetSpeke20Video+ PresetSpeke20Video (..),++ -- * Profile+ Profile (..),++ -- * ScteMarkersSource+ ScteMarkersSource (..),++ -- * SegmentTemplateFormat+ SegmentTemplateFormat (..),++ -- * StreamOrder+ StreamOrder (..),++ -- * AssetShallow+ AssetShallow (..),+ newAssetShallow,+ assetShallow_arn,+ assetShallow_createdAt,+ assetShallow_id,+ assetShallow_packagingGroupId,+ assetShallow_resourceId,+ assetShallow_sourceArn,+ assetShallow_sourceRoleArn,+ assetShallow_tags,++ -- * Authorization+ Authorization (..),+ newAuthorization,+ authorization_secretsRoleArn,+ authorization_cdnIdentifierSecret,++ -- * CmafEncryption+ CmafEncryption (..),+ newCmafEncryption,+ cmafEncryption_constantInitializationVector,+ cmafEncryption_spekeKeyProvider,++ -- * CmafPackage+ CmafPackage (..),+ newCmafPackage,+ cmafPackage_encryption,+ cmafPackage_includeEncoderConfigurationInSegments,+ cmafPackage_segmentDurationSeconds,+ cmafPackage_hlsManifests,++ -- * DashEncryption+ DashEncryption (..),+ newDashEncryption,+ dashEncryption_spekeKeyProvider,++ -- * DashManifest+ DashManifest (..),+ newDashManifest,+ dashManifest_manifestLayout,+ dashManifest_manifestName,+ dashManifest_minBufferTimeSeconds,+ dashManifest_profile,+ dashManifest_scteMarkersSource,+ dashManifest_streamSelection,++ -- * DashPackage+ DashPackage (..),+ newDashPackage,+ dashPackage_encryption,+ dashPackage_includeEncoderConfigurationInSegments,+ dashPackage_includeIframeOnlyStream,+ dashPackage_periodTriggers,+ dashPackage_segmentDurationSeconds,+ dashPackage_segmentTemplateFormat,+ dashPackage_dashManifests,++ -- * EgressAccessLogs+ EgressAccessLogs (..),+ newEgressAccessLogs,+ egressAccessLogs_logGroupName,++ -- * EgressEndpoint+ EgressEndpoint (..),+ newEgressEndpoint,+ egressEndpoint_packagingConfigurationId,+ egressEndpoint_status,+ egressEndpoint_url,++ -- * EncryptionContractConfiguration+ EncryptionContractConfiguration (..),+ newEncryptionContractConfiguration,+ encryptionContractConfiguration_presetSpeke20Audio,+ encryptionContractConfiguration_presetSpeke20Video,++ -- * HlsEncryption+ HlsEncryption (..),+ newHlsEncryption,+ hlsEncryption_constantInitializationVector,+ hlsEncryption_encryptionMethod,+ hlsEncryption_spekeKeyProvider,++ -- * HlsManifest+ HlsManifest (..),+ newHlsManifest,+ hlsManifest_adMarkers,+ hlsManifest_includeIframeOnlyStream,+ hlsManifest_manifestName,+ hlsManifest_programDateTimeIntervalSeconds,+ hlsManifest_repeatExtXKey,+ hlsManifest_streamSelection,++ -- * HlsPackage+ HlsPackage (..),+ newHlsPackage,+ hlsPackage_encryption,+ hlsPackage_includeDvbSubtitles,+ hlsPackage_segmentDurationSeconds,+ hlsPackage_useAudioRenditionGroup,+ hlsPackage_hlsManifests,++ -- * MssEncryption+ MssEncryption (..),+ newMssEncryption,+ mssEncryption_spekeKeyProvider,++ -- * MssManifest+ MssManifest (..),+ newMssManifest,+ mssManifest_manifestName,+ mssManifest_streamSelection,++ -- * MssPackage+ MssPackage (..),+ newMssPackage,+ mssPackage_encryption,+ mssPackage_segmentDurationSeconds,+ mssPackage_mssManifests,++ -- * PackagingConfiguration+ PackagingConfiguration (..),+ newPackagingConfiguration,+ packagingConfiguration_arn,+ packagingConfiguration_cmafPackage,+ packagingConfiguration_dashPackage,+ packagingConfiguration_hlsPackage,+ packagingConfiguration_id,+ packagingConfiguration_mssPackage,+ packagingConfiguration_packagingGroupId,+ packagingConfiguration_tags,++ -- * PackagingGroup+ PackagingGroup (..),+ newPackagingGroup,+ packagingGroup_approximateAssetCount,+ packagingGroup_arn,+ packagingGroup_authorization,+ packagingGroup_domainName,+ packagingGroup_egressAccessLogs,+ packagingGroup_id,+ packagingGroup_tags,++ -- * SpekeKeyProvider+ SpekeKeyProvider (..),+ newSpekeKeyProvider,+ spekeKeyProvider_encryptionContractConfiguration,+ spekeKeyProvider_systemIds,+ spekeKeyProvider_url,+ spekeKeyProvider_roleArn,++ -- * StreamSelection+ StreamSelection (..),+ newStreamSelection,+ streamSelection_maxVideoBitsPerSecond,+ streamSelection_minVideoBitsPerSecond,+ streamSelection_streamOrder,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.MediaPackageVOD.Types.AdMarkers+import Amazonka.MediaPackageVOD.Types.AssetShallow+import Amazonka.MediaPackageVOD.Types.Authorization+import Amazonka.MediaPackageVOD.Types.CmafEncryption+import Amazonka.MediaPackageVOD.Types.CmafPackage+import Amazonka.MediaPackageVOD.Types.DashEncryption+import Amazonka.MediaPackageVOD.Types.DashManifest+import Amazonka.MediaPackageVOD.Types.DashPackage+import Amazonka.MediaPackageVOD.Types.EgressAccessLogs+import Amazonka.MediaPackageVOD.Types.EgressEndpoint+import Amazonka.MediaPackageVOD.Types.EncryptionContractConfiguration+import Amazonka.MediaPackageVOD.Types.EncryptionMethod+import Amazonka.MediaPackageVOD.Types.HlsEncryption+import Amazonka.MediaPackageVOD.Types.HlsManifest+import Amazonka.MediaPackageVOD.Types.HlsPackage+import Amazonka.MediaPackageVOD.Types.ManifestLayout+import Amazonka.MediaPackageVOD.Types.MssEncryption+import Amazonka.MediaPackageVOD.Types.MssManifest+import Amazonka.MediaPackageVOD.Types.MssPackage+import Amazonka.MediaPackageVOD.Types.PackagingConfiguration+import Amazonka.MediaPackageVOD.Types.PackagingGroup+import Amazonka.MediaPackageVOD.Types.PeriodTriggersElement+import Amazonka.MediaPackageVOD.Types.PresetSpeke20Audio+import Amazonka.MediaPackageVOD.Types.PresetSpeke20Video+import Amazonka.MediaPackageVOD.Types.Profile+import Amazonka.MediaPackageVOD.Types.ScteMarkersSource+import Amazonka.MediaPackageVOD.Types.SegmentTemplateFormat+import Amazonka.MediaPackageVOD.Types.SpekeKeyProvider+import Amazonka.MediaPackageVOD.Types.StreamOrder+import Amazonka.MediaPackageVOD.Types.StreamSelection+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2018-11-07@ of the Amazon Elemental MediaPackage VOD SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "MediaPackageVOD",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "mediapackage-vod",+ Core.signingName = "mediapackage-vod",+ Core.version = "2018-11-07",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "MediaPackageVOD",+ Core.retry = retry+ }+ where+ retry =+ Core.Exponential+ { Core.base = 5.0e-2,+ Core.growth = 2,+ Core.attempts = 5,+ Core.check = check+ }+ check e+ | Lens.has (Core.hasStatus 502) e =+ Prelude.Just "bad_gateway"+ | Lens.has (Core.hasStatus 504) e =+ Prelude.Just "gateway_timeout"+ | Lens.has (Core.hasStatus 500) e =+ Prelude.Just "general_server_error"+ | Lens.has (Core.hasStatus 509) e =+ Prelude.Just "limit_exceeded"+ | Lens.has+ ( Core.hasCode "RequestThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "request_throttled_exception"+ | Lens.has (Core.hasStatus 503) e =+ Prelude.Just "service_unavailable"+ | Lens.has+ ( Core.hasCode "ThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttled_exception"+ | Lens.has+ ( Core.hasCode "Throttling"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling"+ | Lens.has+ ( Core.hasCode "ThrottlingException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling_exception"+ | Lens.has+ ( Core.hasCode+ "ProvisionedThroughputExceededException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throughput_exceeded"+ | Lens.has (Core.hasStatus 429) e =+ Prelude.Just "too_many_requests"+ | Prelude.otherwise = Prelude.Nothing++-- | The client is not authorized to access the requested resource.+_ForbiddenException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ForbiddenException =+ Core._MatchServiceError+ defaultService+ "ForbiddenException"+ Prelude.. Core.hasStatus 403++-- | An unexpected error occurred.+_InternalServerErrorException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerErrorException =+ Core._MatchServiceError+ defaultService+ "InternalServerErrorException"+ Prelude.. Core.hasStatus 500++-- | The requested resource does not exist.+_NotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_NotFoundException =+ Core._MatchServiceError+ defaultService+ "NotFoundException"+ Prelude.. Core.hasStatus 404++-- | An unexpected error occurred.+_ServiceUnavailableException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceUnavailableException =+ Core._MatchServiceError+ defaultService+ "ServiceUnavailableException"+ Prelude.. Core.hasStatus 503++-- | The client has exceeded their resource or throttling limits.+_TooManyRequestsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_TooManyRequestsException =+ Core._MatchServiceError+ defaultService+ "TooManyRequestsException"+ Prelude.. Core.hasStatus 429++-- | The parameters sent in the request are not valid.+_UnprocessableEntityException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_UnprocessableEntityException =+ Core._MatchServiceError+ defaultService+ "UnprocessableEntityException"+ Prelude.. Core.hasStatus 422
+ gen/Amazonka/MediaPackageVOD/Types/AdMarkers.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.MediaPackageVOD.Types.AdMarkers+-- Copyright : (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.MediaPackageVOD.Types.AdMarkers+ ( AdMarkers+ ( ..,+ AdMarkers_NONE,+ AdMarkers_PASSTHROUGH,+ AdMarkers_SCTE35_ENHANCED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AdMarkers = AdMarkers'+ { fromAdMarkers ::+ 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 AdMarkers_NONE :: AdMarkers+pattern AdMarkers_NONE = AdMarkers' "NONE"++pattern AdMarkers_PASSTHROUGH :: AdMarkers+pattern AdMarkers_PASSTHROUGH = AdMarkers' "PASSTHROUGH"++pattern AdMarkers_SCTE35_ENHANCED :: AdMarkers+pattern AdMarkers_SCTE35_ENHANCED = AdMarkers' "SCTE35_ENHANCED"++{-# COMPLETE+ AdMarkers_NONE,+ AdMarkers_PASSTHROUGH,+ AdMarkers_SCTE35_ENHANCED,+ AdMarkers'+ #-}
+ gen/Amazonka/MediaPackageVOD/Types/AssetShallow.hs view
@@ -0,0 +1,155 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.Types.AssetShallow+-- Copyright : (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.MediaPackageVOD.Types.AssetShallow 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 MediaPackage VOD Asset resource.+--+-- /See:/ 'newAssetShallow' smart constructor.+data AssetShallow = AssetShallow'+ { -- | The ARN of the Asset.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time the Asset was initially submitted for Ingest.+ createdAt :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the Asset.+ id :: Prelude.Maybe Prelude.Text,+ -- | The ID of the PackagingGroup for the Asset.+ packagingGroupId :: Prelude.Maybe Prelude.Text,+ -- | The resource ID to include in SPEKE key requests.+ resourceId :: Prelude.Maybe Prelude.Text,+ -- | ARN of the source object in S3.+ sourceArn :: Prelude.Maybe Prelude.Text,+ -- | The IAM role ARN used to access the source S3 bucket.+ sourceRoleArn :: Prelude.Maybe Prelude.Text,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssetShallow' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'assetShallow_arn' - The ARN of the Asset.+--+-- 'createdAt', 'assetShallow_createdAt' - The time the Asset was initially submitted for Ingest.+--+-- 'id', 'assetShallow_id' - The unique identifier for the Asset.+--+-- 'packagingGroupId', 'assetShallow_packagingGroupId' - The ID of the PackagingGroup for the Asset.+--+-- 'resourceId', 'assetShallow_resourceId' - The resource ID to include in SPEKE key requests.+--+-- 'sourceArn', 'assetShallow_sourceArn' - ARN of the source object in S3.+--+-- 'sourceRoleArn', 'assetShallow_sourceRoleArn' - The IAM role ARN used to access the source S3 bucket.+--+-- 'tags', 'assetShallow_tags' - Undocumented member.+newAssetShallow ::+ AssetShallow+newAssetShallow =+ AssetShallow'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ id = Prelude.Nothing,+ packagingGroupId = Prelude.Nothing,+ resourceId = Prelude.Nothing,+ sourceArn = Prelude.Nothing,+ sourceRoleArn = Prelude.Nothing,+ tags = Prelude.Nothing+ }++-- | The ARN of the Asset.+assetShallow_arn :: Lens.Lens' AssetShallow (Prelude.Maybe Prelude.Text)+assetShallow_arn = Lens.lens (\AssetShallow' {arn} -> arn) (\s@AssetShallow' {} a -> s {arn = a} :: AssetShallow)++-- | The time the Asset was initially submitted for Ingest.+assetShallow_createdAt :: Lens.Lens' AssetShallow (Prelude.Maybe Prelude.Text)+assetShallow_createdAt = Lens.lens (\AssetShallow' {createdAt} -> createdAt) (\s@AssetShallow' {} a -> s {createdAt = a} :: AssetShallow)++-- | The unique identifier for the Asset.+assetShallow_id :: Lens.Lens' AssetShallow (Prelude.Maybe Prelude.Text)+assetShallow_id = Lens.lens (\AssetShallow' {id} -> id) (\s@AssetShallow' {} a -> s {id = a} :: AssetShallow)++-- | The ID of the PackagingGroup for the Asset.+assetShallow_packagingGroupId :: Lens.Lens' AssetShallow (Prelude.Maybe Prelude.Text)+assetShallow_packagingGroupId = Lens.lens (\AssetShallow' {packagingGroupId} -> packagingGroupId) (\s@AssetShallow' {} a -> s {packagingGroupId = a} :: AssetShallow)++-- | The resource ID to include in SPEKE key requests.+assetShallow_resourceId :: Lens.Lens' AssetShallow (Prelude.Maybe Prelude.Text)+assetShallow_resourceId = Lens.lens (\AssetShallow' {resourceId} -> resourceId) (\s@AssetShallow' {} a -> s {resourceId = a} :: AssetShallow)++-- | ARN of the source object in S3.+assetShallow_sourceArn :: Lens.Lens' AssetShallow (Prelude.Maybe Prelude.Text)+assetShallow_sourceArn = Lens.lens (\AssetShallow' {sourceArn} -> sourceArn) (\s@AssetShallow' {} a -> s {sourceArn = a} :: AssetShallow)++-- | The IAM role ARN used to access the source S3 bucket.+assetShallow_sourceRoleArn :: Lens.Lens' AssetShallow (Prelude.Maybe Prelude.Text)+assetShallow_sourceRoleArn = Lens.lens (\AssetShallow' {sourceRoleArn} -> sourceRoleArn) (\s@AssetShallow' {} a -> s {sourceRoleArn = a} :: AssetShallow)++-- | Undocumented member.+assetShallow_tags :: Lens.Lens' AssetShallow (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+assetShallow_tags = Lens.lens (\AssetShallow' {tags} -> tags) (\s@AssetShallow' {} a -> s {tags = a} :: AssetShallow) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON AssetShallow where+ parseJSON =+ Data.withObject+ "AssetShallow"+ ( \x ->+ AssetShallow'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "createdAt")+ Prelude.<*> (x Data..:? "id")+ Prelude.<*> (x Data..:? "packagingGroupId")+ Prelude.<*> (x Data..:? "resourceId")+ Prelude.<*> (x Data..:? "sourceArn")+ Prelude.<*> (x Data..:? "sourceRoleArn")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable AssetShallow where+ hashWithSalt _salt AssetShallow' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` packagingGroupId+ `Prelude.hashWithSalt` resourceId+ `Prelude.hashWithSalt` sourceArn+ `Prelude.hashWithSalt` sourceRoleArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData AssetShallow where+ rnf AssetShallow' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf packagingGroupId+ `Prelude.seq` Prelude.rnf resourceId+ `Prelude.seq` Prelude.rnf sourceArn+ `Prelude.seq` Prelude.rnf sourceRoleArn+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/MediaPackageVOD/Types/Authorization.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.MediaPackageVOD.Types.Authorization+-- Copyright : (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.MediaPackageVOD.Types.Authorization 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++-- | CDN Authorization credentials+--+-- /See:/ 'newAuthorization' smart constructor.+data Authorization = Authorization'+ { -- | The Amazon Resource Name (ARN) for the IAM role that allows MediaPackage+ -- to communicate with AWS Secrets Manager.+ secretsRoleArn :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) for the secret in AWS Secrets Manager+ -- that is used for CDN authorization.+ cdnIdentifierSecret :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Authorization' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'secretsRoleArn', 'authorization_secretsRoleArn' - The Amazon Resource Name (ARN) for the IAM role that allows MediaPackage+-- to communicate with AWS Secrets Manager.+--+-- 'cdnIdentifierSecret', 'authorization_cdnIdentifierSecret' - The Amazon Resource Name (ARN) for the secret in AWS Secrets Manager+-- that is used for CDN authorization.+newAuthorization ::+ -- | 'secretsRoleArn'+ Prelude.Text ->+ -- | 'cdnIdentifierSecret'+ Prelude.Text ->+ Authorization+newAuthorization+ pSecretsRoleArn_+ pCdnIdentifierSecret_ =+ Authorization'+ { secretsRoleArn = pSecretsRoleArn_,+ cdnIdentifierSecret = pCdnIdentifierSecret_+ }++-- | The Amazon Resource Name (ARN) for the IAM role that allows MediaPackage+-- to communicate with AWS Secrets Manager.+authorization_secretsRoleArn :: Lens.Lens' Authorization Prelude.Text+authorization_secretsRoleArn = Lens.lens (\Authorization' {secretsRoleArn} -> secretsRoleArn) (\s@Authorization' {} a -> s {secretsRoleArn = a} :: Authorization)++-- | The Amazon Resource Name (ARN) for the secret in AWS Secrets Manager+-- that is used for CDN authorization.+authorization_cdnIdentifierSecret :: Lens.Lens' Authorization Prelude.Text+authorization_cdnIdentifierSecret = Lens.lens (\Authorization' {cdnIdentifierSecret} -> cdnIdentifierSecret) (\s@Authorization' {} a -> s {cdnIdentifierSecret = a} :: Authorization)++instance Data.FromJSON Authorization where+ parseJSON =+ Data.withObject+ "Authorization"+ ( \x ->+ Authorization'+ Prelude.<$> (x Data..: "secretsRoleArn")+ Prelude.<*> (x Data..: "cdnIdentifierSecret")+ )++instance Prelude.Hashable Authorization where+ hashWithSalt _salt Authorization' {..} =+ _salt+ `Prelude.hashWithSalt` secretsRoleArn+ `Prelude.hashWithSalt` cdnIdentifierSecret++instance Prelude.NFData Authorization where+ rnf Authorization' {..} =+ Prelude.rnf secretsRoleArn+ `Prelude.seq` Prelude.rnf cdnIdentifierSecret++instance Data.ToJSON Authorization where+ toJSON Authorization' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("secretsRoleArn" Data..= secretsRoleArn),+ Prelude.Just+ ("cdnIdentifierSecret" Data..= cdnIdentifierSecret)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/CmafEncryption.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.MediaPackageVOD.Types.CmafEncryption+-- Copyright : (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.MediaPackageVOD.Types.CmafEncryption where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.SpekeKeyProvider+import qualified Amazonka.Prelude as Prelude++-- | A CMAF encryption configuration.+--+-- /See:/ 'newCmafEncryption' smart constructor.+data CmafEncryption = CmafEncryption'+ { -- | An optional 128-bit, 16-byte hex value represented by a 32-character+ -- string, used in conjunction with the key for encrypting blocks. If you+ -- don\'t specify a value, then MediaPackage creates the constant+ -- initialization vector (IV).+ constantInitializationVector :: Prelude.Maybe Prelude.Text,+ spekeKeyProvider :: SpekeKeyProvider+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CmafEncryption' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'constantInitializationVector', 'cmafEncryption_constantInitializationVector' - An optional 128-bit, 16-byte hex value represented by a 32-character+-- string, used in conjunction with the key for encrypting blocks. If you+-- don\'t specify a value, then MediaPackage creates the constant+-- initialization vector (IV).+--+-- 'spekeKeyProvider', 'cmafEncryption_spekeKeyProvider' - Undocumented member.+newCmafEncryption ::+ -- | 'spekeKeyProvider'+ SpekeKeyProvider ->+ CmafEncryption+newCmafEncryption pSpekeKeyProvider_ =+ CmafEncryption'+ { constantInitializationVector =+ Prelude.Nothing,+ spekeKeyProvider = pSpekeKeyProvider_+ }++-- | An optional 128-bit, 16-byte hex value represented by a 32-character+-- string, used in conjunction with the key for encrypting blocks. If you+-- don\'t specify a value, then MediaPackage creates the constant+-- initialization vector (IV).+cmafEncryption_constantInitializationVector :: Lens.Lens' CmafEncryption (Prelude.Maybe Prelude.Text)+cmafEncryption_constantInitializationVector = Lens.lens (\CmafEncryption' {constantInitializationVector} -> constantInitializationVector) (\s@CmafEncryption' {} a -> s {constantInitializationVector = a} :: CmafEncryption)++-- | Undocumented member.+cmafEncryption_spekeKeyProvider :: Lens.Lens' CmafEncryption SpekeKeyProvider+cmafEncryption_spekeKeyProvider = Lens.lens (\CmafEncryption' {spekeKeyProvider} -> spekeKeyProvider) (\s@CmafEncryption' {} a -> s {spekeKeyProvider = a} :: CmafEncryption)++instance Data.FromJSON CmafEncryption where+ parseJSON =+ Data.withObject+ "CmafEncryption"+ ( \x ->+ CmafEncryption'+ Prelude.<$> (x Data..:? "constantInitializationVector")+ Prelude.<*> (x Data..: "spekeKeyProvider")+ )++instance Prelude.Hashable CmafEncryption where+ hashWithSalt _salt CmafEncryption' {..} =+ _salt+ `Prelude.hashWithSalt` constantInitializationVector+ `Prelude.hashWithSalt` spekeKeyProvider++instance Prelude.NFData CmafEncryption where+ rnf CmafEncryption' {..} =+ Prelude.rnf constantInitializationVector+ `Prelude.seq` Prelude.rnf spekeKeyProvider++instance Data.ToJSON CmafEncryption where+ toJSON CmafEncryption' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("constantInitializationVector" Data..=)+ Prelude.<$> constantInitializationVector,+ Prelude.Just+ ("spekeKeyProvider" Data..= spekeKeyProvider)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/CmafPackage.hs view
@@ -0,0 +1,138 @@+{-# 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.MediaPackageVOD.Types.CmafPackage+-- Copyright : (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.MediaPackageVOD.Types.CmafPackage where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.CmafEncryption+import Amazonka.MediaPackageVOD.Types.HlsManifest+import qualified Amazonka.Prelude as Prelude++-- | A CMAF packaging configuration.+--+-- /See:/ 'newCmafPackage' smart constructor.+data CmafPackage = CmafPackage'+ { encryption :: Prelude.Maybe CmafEncryption,+ -- | When includeEncoderConfigurationInSegments is set to true, MediaPackage+ -- places your encoder\'s Sequence Parameter Set (SPS), Picture Parameter+ -- Set (PPS), and Video Parameter Set (VPS) metadata in every video segment+ -- instead of in the init fragment. This lets you use different+ -- SPS\/PPS\/VPS settings for your assets during content playback.+ includeEncoderConfigurationInSegments :: Prelude.Maybe Prelude.Bool,+ -- | Duration (in seconds) of each fragment. Actual fragments will be rounded+ -- to the nearest multiple of the source fragment duration.+ segmentDurationSeconds :: Prelude.Maybe Prelude.Int,+ -- | A list of HLS manifest configurations.+ hlsManifests :: [HlsManifest]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CmafPackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'cmafPackage_encryption' - Undocumented member.+--+-- 'includeEncoderConfigurationInSegments', 'cmafPackage_includeEncoderConfigurationInSegments' - When includeEncoderConfigurationInSegments is set to true, MediaPackage+-- places your encoder\'s Sequence Parameter Set (SPS), Picture Parameter+-- Set (PPS), and Video Parameter Set (VPS) metadata in every video segment+-- instead of in the init fragment. This lets you use different+-- SPS\/PPS\/VPS settings for your assets during content playback.+--+-- 'segmentDurationSeconds', 'cmafPackage_segmentDurationSeconds' - Duration (in seconds) of each fragment. Actual fragments will be rounded+-- to the nearest multiple of the source fragment duration.+--+-- 'hlsManifests', 'cmafPackage_hlsManifests' - A list of HLS manifest configurations.+newCmafPackage ::+ CmafPackage+newCmafPackage =+ CmafPackage'+ { encryption = Prelude.Nothing,+ includeEncoderConfigurationInSegments =+ Prelude.Nothing,+ segmentDurationSeconds = Prelude.Nothing,+ hlsManifests = Prelude.mempty+ }++-- | Undocumented member.+cmafPackage_encryption :: Lens.Lens' CmafPackage (Prelude.Maybe CmafEncryption)+cmafPackage_encryption = Lens.lens (\CmafPackage' {encryption} -> encryption) (\s@CmafPackage' {} a -> s {encryption = a} :: CmafPackage)++-- | When includeEncoderConfigurationInSegments is set to true, MediaPackage+-- places your encoder\'s Sequence Parameter Set (SPS), Picture Parameter+-- Set (PPS), and Video Parameter Set (VPS) metadata in every video segment+-- instead of in the init fragment. This lets you use different+-- SPS\/PPS\/VPS settings for your assets during content playback.+cmafPackage_includeEncoderConfigurationInSegments :: Lens.Lens' CmafPackage (Prelude.Maybe Prelude.Bool)+cmafPackage_includeEncoderConfigurationInSegments = Lens.lens (\CmafPackage' {includeEncoderConfigurationInSegments} -> includeEncoderConfigurationInSegments) (\s@CmafPackage' {} a -> s {includeEncoderConfigurationInSegments = a} :: CmafPackage)++-- | Duration (in seconds) of each fragment. Actual fragments will be rounded+-- to the nearest multiple of the source fragment duration.+cmafPackage_segmentDurationSeconds :: Lens.Lens' CmafPackage (Prelude.Maybe Prelude.Int)+cmafPackage_segmentDurationSeconds = Lens.lens (\CmafPackage' {segmentDurationSeconds} -> segmentDurationSeconds) (\s@CmafPackage' {} a -> s {segmentDurationSeconds = a} :: CmafPackage)++-- | A list of HLS manifest configurations.+cmafPackage_hlsManifests :: Lens.Lens' CmafPackage [HlsManifest]+cmafPackage_hlsManifests = Lens.lens (\CmafPackage' {hlsManifests} -> hlsManifests) (\s@CmafPackage' {} a -> s {hlsManifests = a} :: CmafPackage) Prelude.. Lens.coerced++instance Data.FromJSON CmafPackage where+ parseJSON =+ Data.withObject+ "CmafPackage"+ ( \x ->+ CmafPackage'+ Prelude.<$> (x Data..:? "encryption")+ Prelude.<*> (x Data..:? "includeEncoderConfigurationInSegments")+ Prelude.<*> (x Data..:? "segmentDurationSeconds")+ Prelude.<*> (x Data..:? "hlsManifests" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable CmafPackage where+ hashWithSalt _salt CmafPackage' {..} =+ _salt+ `Prelude.hashWithSalt` encryption+ `Prelude.hashWithSalt` includeEncoderConfigurationInSegments+ `Prelude.hashWithSalt` segmentDurationSeconds+ `Prelude.hashWithSalt` hlsManifests++instance Prelude.NFData CmafPackage where+ rnf CmafPackage' {..} =+ Prelude.rnf encryption+ `Prelude.seq` Prelude.rnf includeEncoderConfigurationInSegments+ `Prelude.seq` Prelude.rnf segmentDurationSeconds+ `Prelude.seq` Prelude.rnf hlsManifests++instance Data.ToJSON CmafPackage where+ toJSON CmafPackage' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("encryption" Data..=) Prelude.<$> encryption,+ ("includeEncoderConfigurationInSegments" Data..=)+ Prelude.<$> includeEncoderConfigurationInSegments,+ ("segmentDurationSeconds" Data..=)+ Prelude.<$> segmentDurationSeconds,+ Prelude.Just ("hlsManifests" Data..= hlsManifests)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/DashEncryption.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.Types.DashEncryption+-- Copyright : (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.MediaPackageVOD.Types.DashEncryption where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.SpekeKeyProvider+import qualified Amazonka.Prelude as Prelude++-- | A Dynamic Adaptive Streaming over HTTP (DASH) encryption configuration.+--+-- /See:/ 'newDashEncryption' smart constructor.+data DashEncryption = DashEncryption'+ { spekeKeyProvider :: SpekeKeyProvider+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DashEncryption' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'spekeKeyProvider', 'dashEncryption_spekeKeyProvider' - Undocumented member.+newDashEncryption ::+ -- | 'spekeKeyProvider'+ SpekeKeyProvider ->+ DashEncryption+newDashEncryption pSpekeKeyProvider_ =+ DashEncryption'+ { spekeKeyProvider =+ pSpekeKeyProvider_+ }++-- | Undocumented member.+dashEncryption_spekeKeyProvider :: Lens.Lens' DashEncryption SpekeKeyProvider+dashEncryption_spekeKeyProvider = Lens.lens (\DashEncryption' {spekeKeyProvider} -> spekeKeyProvider) (\s@DashEncryption' {} a -> s {spekeKeyProvider = a} :: DashEncryption)++instance Data.FromJSON DashEncryption where+ parseJSON =+ Data.withObject+ "DashEncryption"+ ( \x ->+ DashEncryption'+ Prelude.<$> (x Data..: "spekeKeyProvider")+ )++instance Prelude.Hashable DashEncryption where+ hashWithSalt _salt DashEncryption' {..} =+ _salt `Prelude.hashWithSalt` spekeKeyProvider++instance Prelude.NFData DashEncryption where+ rnf DashEncryption' {..} =+ Prelude.rnf spekeKeyProvider++instance Data.ToJSON DashEncryption where+ toJSON DashEncryption' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("spekeKeyProvider" Data..= spekeKeyProvider)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/DashManifest.hs view
@@ -0,0 +1,188 @@+{-# 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.MediaPackageVOD.Types.DashManifest+-- Copyright : (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.MediaPackageVOD.Types.DashManifest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.ManifestLayout+import Amazonka.MediaPackageVOD.Types.Profile+import Amazonka.MediaPackageVOD.Types.ScteMarkersSource+import Amazonka.MediaPackageVOD.Types.StreamSelection+import qualified Amazonka.Prelude as Prelude++-- | A DASH manifest configuration.+--+-- /See:/ 'newDashManifest' smart constructor.+data DashManifest = DashManifest'+ { -- | Determines the position of some tags in the Media Presentation+ -- Description (MPD). When set to FULL, elements like SegmentTemplate and+ -- ContentProtection are included in each Representation. When set to+ -- COMPACT, duplicate elements are combined and presented at the+ -- AdaptationSet level.+ manifestLayout :: Prelude.Maybe ManifestLayout,+ -- | An optional string to include in the name of the manifest.+ manifestName :: Prelude.Maybe Prelude.Text,+ -- | Minimum duration (in seconds) that a player will buffer media before+ -- starting the presentation.+ minBufferTimeSeconds :: Prelude.Maybe Prelude.Int,+ -- | The Dynamic Adaptive Streaming over HTTP (DASH) profile type. When set+ -- to \"HBBTV_1_5\", HbbTV 1.5 compliant output is enabled.+ profile :: Prelude.Maybe Profile,+ -- | The source of scte markers used. When set to SEGMENTS, the scte markers+ -- are sourced from the segments of the ingested content. When set to+ -- MANIFEST, the scte markers are sourced from the manifest of the ingested+ -- content. The MANIFEST value is compatible with source HLS playlists+ -- using the SCTE-35 Enhanced syntax (#EXT-OATCLS-SCTE35 tags). SCTE-35+ -- Elemental and SCTE-35 Daterange syntaxes are not supported with this+ -- option.+ scteMarkersSource :: Prelude.Maybe ScteMarkersSource,+ streamSelection :: Prelude.Maybe StreamSelection+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DashManifest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'manifestLayout', 'dashManifest_manifestLayout' - Determines the position of some tags in the Media Presentation+-- Description (MPD). When set to FULL, elements like SegmentTemplate and+-- ContentProtection are included in each Representation. When set to+-- COMPACT, duplicate elements are combined and presented at the+-- AdaptationSet level.+--+-- 'manifestName', 'dashManifest_manifestName' - An optional string to include in the name of the manifest.+--+-- 'minBufferTimeSeconds', 'dashManifest_minBufferTimeSeconds' - Minimum duration (in seconds) that a player will buffer media before+-- starting the presentation.+--+-- 'profile', 'dashManifest_profile' - The Dynamic Adaptive Streaming over HTTP (DASH) profile type. When set+-- to \"HBBTV_1_5\", HbbTV 1.5 compliant output is enabled.+--+-- 'scteMarkersSource', 'dashManifest_scteMarkersSource' - The source of scte markers used. When set to SEGMENTS, the scte markers+-- are sourced from the segments of the ingested content. When set to+-- MANIFEST, the scte markers are sourced from the manifest of the ingested+-- content. The MANIFEST value is compatible with source HLS playlists+-- using the SCTE-35 Enhanced syntax (#EXT-OATCLS-SCTE35 tags). SCTE-35+-- Elemental and SCTE-35 Daterange syntaxes are not supported with this+-- option.+--+-- 'streamSelection', 'dashManifest_streamSelection' - Undocumented member.+newDashManifest ::+ DashManifest+newDashManifest =+ DashManifest'+ { manifestLayout = Prelude.Nothing,+ manifestName = Prelude.Nothing,+ minBufferTimeSeconds = Prelude.Nothing,+ profile = Prelude.Nothing,+ scteMarkersSource = Prelude.Nothing,+ streamSelection = Prelude.Nothing+ }++-- | Determines the position of some tags in the Media Presentation+-- Description (MPD). When set to FULL, elements like SegmentTemplate and+-- ContentProtection are included in each Representation. When set to+-- COMPACT, duplicate elements are combined and presented at the+-- AdaptationSet level.+dashManifest_manifestLayout :: Lens.Lens' DashManifest (Prelude.Maybe ManifestLayout)+dashManifest_manifestLayout = Lens.lens (\DashManifest' {manifestLayout} -> manifestLayout) (\s@DashManifest' {} a -> s {manifestLayout = a} :: DashManifest)++-- | An optional string to include in the name of the manifest.+dashManifest_manifestName :: Lens.Lens' DashManifest (Prelude.Maybe Prelude.Text)+dashManifest_manifestName = Lens.lens (\DashManifest' {manifestName} -> manifestName) (\s@DashManifest' {} a -> s {manifestName = a} :: DashManifest)++-- | Minimum duration (in seconds) that a player will buffer media before+-- starting the presentation.+dashManifest_minBufferTimeSeconds :: Lens.Lens' DashManifest (Prelude.Maybe Prelude.Int)+dashManifest_minBufferTimeSeconds = Lens.lens (\DashManifest' {minBufferTimeSeconds} -> minBufferTimeSeconds) (\s@DashManifest' {} a -> s {minBufferTimeSeconds = a} :: DashManifest)++-- | The Dynamic Adaptive Streaming over HTTP (DASH) profile type. When set+-- to \"HBBTV_1_5\", HbbTV 1.5 compliant output is enabled.+dashManifest_profile :: Lens.Lens' DashManifest (Prelude.Maybe Profile)+dashManifest_profile = Lens.lens (\DashManifest' {profile} -> profile) (\s@DashManifest' {} a -> s {profile = a} :: DashManifest)++-- | The source of scte markers used. When set to SEGMENTS, the scte markers+-- are sourced from the segments of the ingested content. When set to+-- MANIFEST, the scte markers are sourced from the manifest of the ingested+-- content. The MANIFEST value is compatible with source HLS playlists+-- using the SCTE-35 Enhanced syntax (#EXT-OATCLS-SCTE35 tags). SCTE-35+-- Elemental and SCTE-35 Daterange syntaxes are not supported with this+-- option.+dashManifest_scteMarkersSource :: Lens.Lens' DashManifest (Prelude.Maybe ScteMarkersSource)+dashManifest_scteMarkersSource = Lens.lens (\DashManifest' {scteMarkersSource} -> scteMarkersSource) (\s@DashManifest' {} a -> s {scteMarkersSource = a} :: DashManifest)++-- | Undocumented member.+dashManifest_streamSelection :: Lens.Lens' DashManifest (Prelude.Maybe StreamSelection)+dashManifest_streamSelection = Lens.lens (\DashManifest' {streamSelection} -> streamSelection) (\s@DashManifest' {} a -> s {streamSelection = a} :: DashManifest)++instance Data.FromJSON DashManifest where+ parseJSON =+ Data.withObject+ "DashManifest"+ ( \x ->+ DashManifest'+ Prelude.<$> (x Data..:? "manifestLayout")+ Prelude.<*> (x Data..:? "manifestName")+ Prelude.<*> (x Data..:? "minBufferTimeSeconds")+ Prelude.<*> (x Data..:? "profile")+ Prelude.<*> (x Data..:? "scteMarkersSource")+ Prelude.<*> (x Data..:? "streamSelection")+ )++instance Prelude.Hashable DashManifest where+ hashWithSalt _salt DashManifest' {..} =+ _salt+ `Prelude.hashWithSalt` manifestLayout+ `Prelude.hashWithSalt` manifestName+ `Prelude.hashWithSalt` minBufferTimeSeconds+ `Prelude.hashWithSalt` profile+ `Prelude.hashWithSalt` scteMarkersSource+ `Prelude.hashWithSalt` streamSelection++instance Prelude.NFData DashManifest where+ rnf DashManifest' {..} =+ Prelude.rnf manifestLayout+ `Prelude.seq` Prelude.rnf manifestName+ `Prelude.seq` Prelude.rnf minBufferTimeSeconds+ `Prelude.seq` Prelude.rnf profile+ `Prelude.seq` Prelude.rnf scteMarkersSource+ `Prelude.seq` Prelude.rnf streamSelection++instance Data.ToJSON DashManifest where+ toJSON DashManifest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("manifestLayout" Data..=)+ Prelude.<$> manifestLayout,+ ("manifestName" Data..=) Prelude.<$> manifestName,+ ("minBufferTimeSeconds" Data..=)+ Prelude.<$> minBufferTimeSeconds,+ ("profile" Data..=) Prelude.<$> profile,+ ("scteMarkersSource" Data..=)+ Prelude.<$> scteMarkersSource,+ ("streamSelection" Data..=)+ Prelude.<$> streamSelection+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/DashPackage.hs view
@@ -0,0 +1,213 @@+{-# 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.MediaPackageVOD.Types.DashPackage+-- Copyright : (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.MediaPackageVOD.Types.DashPackage where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.DashEncryption+import Amazonka.MediaPackageVOD.Types.DashManifest+import Amazonka.MediaPackageVOD.Types.PeriodTriggersElement+import Amazonka.MediaPackageVOD.Types.SegmentTemplateFormat+import qualified Amazonka.Prelude as Prelude++-- | A Dynamic Adaptive Streaming over HTTP (DASH) packaging configuration.+--+-- /See:/ 'newDashPackage' smart constructor.+data DashPackage = DashPackage'+ { encryption :: Prelude.Maybe DashEncryption,+ -- | When includeEncoderConfigurationInSegments is set to true, MediaPackage+ -- places your encoder\'s Sequence Parameter Set (SPS), Picture Parameter+ -- Set (PPS), and Video Parameter Set (VPS) metadata in every video segment+ -- instead of in the init fragment. This lets you use different+ -- SPS\/PPS\/VPS settings for your assets during content playback.+ includeEncoderConfigurationInSegments :: Prelude.Maybe Prelude.Bool,+ -- | When enabled, an I-Frame only stream will be included in the output.+ includeIframeOnlyStream :: Prelude.Maybe Prelude.Bool,+ -- | A list of triggers that controls when the outgoing Dynamic Adaptive+ -- Streaming over HTTP (DASH) Media Presentation Description (MPD) will be+ -- partitioned into multiple periods. If empty, the content will not be+ -- partitioned into more than one period. If the list contains \"ADS\", new+ -- periods will be created where the Asset contains SCTE-35 ad markers.+ periodTriggers :: Prelude.Maybe [PeriodTriggersElement],+ -- | Duration (in seconds) of each segment. Actual segments will be rounded+ -- to the nearest multiple of the source segment duration.+ segmentDurationSeconds :: Prelude.Maybe Prelude.Int,+ -- | Determines the type of SegmentTemplate included in the Media+ -- Presentation Description (MPD). When set to NUMBER_WITH_TIMELINE, a full+ -- timeline is presented in each SegmentTemplate, with $Number$ media URLs.+ -- When set to TIME_WITH_TIMELINE, a full timeline is presented in each+ -- SegmentTemplate, with $Time$ media URLs. When set to+ -- NUMBER_WITH_DURATION, only a duration is included in each+ -- SegmentTemplate, with $Number$ media URLs.+ segmentTemplateFormat :: Prelude.Maybe SegmentTemplateFormat,+ -- | A list of DASH manifest configurations.+ dashManifests :: [DashManifest]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DashPackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'dashPackage_encryption' - Undocumented member.+--+-- 'includeEncoderConfigurationInSegments', 'dashPackage_includeEncoderConfigurationInSegments' - When includeEncoderConfigurationInSegments is set to true, MediaPackage+-- places your encoder\'s Sequence Parameter Set (SPS), Picture Parameter+-- Set (PPS), and Video Parameter Set (VPS) metadata in every video segment+-- instead of in the init fragment. This lets you use different+-- SPS\/PPS\/VPS settings for your assets during content playback.+--+-- 'includeIframeOnlyStream', 'dashPackage_includeIframeOnlyStream' - When enabled, an I-Frame only stream will be included in the output.+--+-- 'periodTriggers', 'dashPackage_periodTriggers' - A list of triggers that controls when the outgoing Dynamic Adaptive+-- Streaming over HTTP (DASH) Media Presentation Description (MPD) will be+-- partitioned into multiple periods. If empty, the content will not be+-- partitioned into more than one period. If the list contains \"ADS\", new+-- periods will be created where the Asset contains SCTE-35 ad markers.+--+-- 'segmentDurationSeconds', 'dashPackage_segmentDurationSeconds' - Duration (in seconds) of each segment. Actual segments will be rounded+-- to the nearest multiple of the source segment duration.+--+-- 'segmentTemplateFormat', 'dashPackage_segmentTemplateFormat' - Determines the type of SegmentTemplate included in the Media+-- Presentation Description (MPD). When set to NUMBER_WITH_TIMELINE, a full+-- timeline is presented in each SegmentTemplate, with $Number$ media URLs.+-- When set to TIME_WITH_TIMELINE, a full timeline is presented in each+-- SegmentTemplate, with $Time$ media URLs. When set to+-- NUMBER_WITH_DURATION, only a duration is included in each+-- SegmentTemplate, with $Number$ media URLs.+--+-- 'dashManifests', 'dashPackage_dashManifests' - A list of DASH manifest configurations.+newDashPackage ::+ DashPackage+newDashPackage =+ DashPackage'+ { encryption = Prelude.Nothing,+ includeEncoderConfigurationInSegments =+ Prelude.Nothing,+ includeIframeOnlyStream = Prelude.Nothing,+ periodTriggers = Prelude.Nothing,+ segmentDurationSeconds = Prelude.Nothing,+ segmentTemplateFormat = Prelude.Nothing,+ dashManifests = Prelude.mempty+ }++-- | Undocumented member.+dashPackage_encryption :: Lens.Lens' DashPackage (Prelude.Maybe DashEncryption)+dashPackage_encryption = Lens.lens (\DashPackage' {encryption} -> encryption) (\s@DashPackage' {} a -> s {encryption = a} :: DashPackage)++-- | When includeEncoderConfigurationInSegments is set to true, MediaPackage+-- places your encoder\'s Sequence Parameter Set (SPS), Picture Parameter+-- Set (PPS), and Video Parameter Set (VPS) metadata in every video segment+-- instead of in the init fragment. This lets you use different+-- SPS\/PPS\/VPS settings for your assets during content playback.+dashPackage_includeEncoderConfigurationInSegments :: Lens.Lens' DashPackage (Prelude.Maybe Prelude.Bool)+dashPackage_includeEncoderConfigurationInSegments = Lens.lens (\DashPackage' {includeEncoderConfigurationInSegments} -> includeEncoderConfigurationInSegments) (\s@DashPackage' {} a -> s {includeEncoderConfigurationInSegments = a} :: DashPackage)++-- | When enabled, an I-Frame only stream will be included in the output.+dashPackage_includeIframeOnlyStream :: Lens.Lens' DashPackage (Prelude.Maybe Prelude.Bool)+dashPackage_includeIframeOnlyStream = Lens.lens (\DashPackage' {includeIframeOnlyStream} -> includeIframeOnlyStream) (\s@DashPackage' {} a -> s {includeIframeOnlyStream = a} :: DashPackage)++-- | A list of triggers that controls when the outgoing Dynamic Adaptive+-- Streaming over HTTP (DASH) Media Presentation Description (MPD) will be+-- partitioned into multiple periods. If empty, the content will not be+-- partitioned into more than one period. If the list contains \"ADS\", new+-- periods will be created where the Asset contains SCTE-35 ad markers.+dashPackage_periodTriggers :: Lens.Lens' DashPackage (Prelude.Maybe [PeriodTriggersElement])+dashPackage_periodTriggers = Lens.lens (\DashPackage' {periodTriggers} -> periodTriggers) (\s@DashPackage' {} a -> s {periodTriggers = a} :: DashPackage) Prelude.. Lens.mapping Lens.coerced++-- | Duration (in seconds) of each segment. Actual segments will be rounded+-- to the nearest multiple of the source segment duration.+dashPackage_segmentDurationSeconds :: Lens.Lens' DashPackage (Prelude.Maybe Prelude.Int)+dashPackage_segmentDurationSeconds = Lens.lens (\DashPackage' {segmentDurationSeconds} -> segmentDurationSeconds) (\s@DashPackage' {} a -> s {segmentDurationSeconds = a} :: DashPackage)++-- | Determines the type of SegmentTemplate included in the Media+-- Presentation Description (MPD). When set to NUMBER_WITH_TIMELINE, a full+-- timeline is presented in each SegmentTemplate, with $Number$ media URLs.+-- When set to TIME_WITH_TIMELINE, a full timeline is presented in each+-- SegmentTemplate, with $Time$ media URLs. When set to+-- NUMBER_WITH_DURATION, only a duration is included in each+-- SegmentTemplate, with $Number$ media URLs.+dashPackage_segmentTemplateFormat :: Lens.Lens' DashPackage (Prelude.Maybe SegmentTemplateFormat)+dashPackage_segmentTemplateFormat = Lens.lens (\DashPackage' {segmentTemplateFormat} -> segmentTemplateFormat) (\s@DashPackage' {} a -> s {segmentTemplateFormat = a} :: DashPackage)++-- | A list of DASH manifest configurations.+dashPackage_dashManifests :: Lens.Lens' DashPackage [DashManifest]+dashPackage_dashManifests = Lens.lens (\DashPackage' {dashManifests} -> dashManifests) (\s@DashPackage' {} a -> s {dashManifests = a} :: DashPackage) Prelude.. Lens.coerced++instance Data.FromJSON DashPackage where+ parseJSON =+ Data.withObject+ "DashPackage"+ ( \x ->+ DashPackage'+ Prelude.<$> (x Data..:? "encryption")+ Prelude.<*> (x Data..:? "includeEncoderConfigurationInSegments")+ Prelude.<*> (x Data..:? "includeIframeOnlyStream")+ Prelude.<*> (x Data..:? "periodTriggers" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "segmentDurationSeconds")+ Prelude.<*> (x Data..:? "segmentTemplateFormat")+ Prelude.<*> (x Data..:? "dashManifests" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable DashPackage where+ hashWithSalt _salt DashPackage' {..} =+ _salt+ `Prelude.hashWithSalt` encryption+ `Prelude.hashWithSalt` includeEncoderConfigurationInSegments+ `Prelude.hashWithSalt` includeIframeOnlyStream+ `Prelude.hashWithSalt` periodTriggers+ `Prelude.hashWithSalt` segmentDurationSeconds+ `Prelude.hashWithSalt` segmentTemplateFormat+ `Prelude.hashWithSalt` dashManifests++instance Prelude.NFData DashPackage where+ rnf DashPackage' {..} =+ Prelude.rnf encryption+ `Prelude.seq` Prelude.rnf includeEncoderConfigurationInSegments+ `Prelude.seq` Prelude.rnf includeIframeOnlyStream+ `Prelude.seq` Prelude.rnf periodTriggers+ `Prelude.seq` Prelude.rnf segmentDurationSeconds+ `Prelude.seq` Prelude.rnf segmentTemplateFormat+ `Prelude.seq` Prelude.rnf dashManifests++instance Data.ToJSON DashPackage where+ toJSON DashPackage' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("encryption" Data..=) Prelude.<$> encryption,+ ("includeEncoderConfigurationInSegments" Data..=)+ Prelude.<$> includeEncoderConfigurationInSegments,+ ("includeIframeOnlyStream" Data..=)+ Prelude.<$> includeIframeOnlyStream,+ ("periodTriggers" Data..=)+ Prelude.<$> periodTriggers,+ ("segmentDurationSeconds" Data..=)+ Prelude.<$> segmentDurationSeconds,+ ("segmentTemplateFormat" Data..=)+ Prelude.<$> segmentTemplateFormat,+ Prelude.Just+ ("dashManifests" Data..= dashManifests)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/EgressAccessLogs.hs view
@@ -0,0 +1,75 @@+{-# 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.MediaPackageVOD.Types.EgressAccessLogs+-- Copyright : (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.MediaPackageVOD.Types.EgressAccessLogs 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++-- | Configure egress access logging.+--+-- /See:/ 'newEgressAccessLogs' smart constructor.+data EgressAccessLogs = EgressAccessLogs'+ { -- | Customize the log group name.+ logGroupName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EgressAccessLogs' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'logGroupName', 'egressAccessLogs_logGroupName' - Customize the log group name.+newEgressAccessLogs ::+ EgressAccessLogs+newEgressAccessLogs =+ EgressAccessLogs' {logGroupName = Prelude.Nothing}++-- | Customize the log group name.+egressAccessLogs_logGroupName :: Lens.Lens' EgressAccessLogs (Prelude.Maybe Prelude.Text)+egressAccessLogs_logGroupName = Lens.lens (\EgressAccessLogs' {logGroupName} -> logGroupName) (\s@EgressAccessLogs' {} a -> s {logGroupName = a} :: EgressAccessLogs)++instance Data.FromJSON EgressAccessLogs where+ parseJSON =+ Data.withObject+ "EgressAccessLogs"+ ( \x ->+ EgressAccessLogs'+ Prelude.<$> (x Data..:? "logGroupName")+ )++instance Prelude.Hashable EgressAccessLogs where+ hashWithSalt _salt EgressAccessLogs' {..} =+ _salt `Prelude.hashWithSalt` logGroupName++instance Prelude.NFData EgressAccessLogs where+ rnf EgressAccessLogs' {..} = Prelude.rnf logGroupName++instance Data.ToJSON EgressAccessLogs where+ toJSON EgressAccessLogs' {..} =+ Data.object+ ( Prelude.catMaybes+ [("logGroupName" Data..=) Prelude.<$> logGroupName]+ )
+ gen/Amazonka/MediaPackageVOD/Types/EgressEndpoint.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.MediaPackageVOD.Types.EgressEndpoint+-- Copyright : (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.MediaPackageVOD.Types.EgressEndpoint 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 endpoint URL used to access an Asset using one+-- PackagingConfiguration.+--+-- /See:/ 'newEgressEndpoint' smart constructor.+data EgressEndpoint = EgressEndpoint'+ { -- | The ID of the PackagingConfiguration being applied to the Asset.+ packagingConfigurationId :: Prelude.Maybe Prelude.Text,+ -- | The current processing status of the asset used for the packaging+ -- configuration. The status can be either QUEUED, PROCESSING, PLAYABLE, or+ -- FAILED. Status information won\'t be available for most assets ingested+ -- before 2021-09-30.+ status :: Prelude.Maybe Prelude.Text,+ -- | The URL of the parent manifest for the repackaged Asset.+ url :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EgressEndpoint' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'packagingConfigurationId', 'egressEndpoint_packagingConfigurationId' - The ID of the PackagingConfiguration being applied to the Asset.+--+-- 'status', 'egressEndpoint_status' - The current processing status of the asset used for the packaging+-- configuration. The status can be either QUEUED, PROCESSING, PLAYABLE, or+-- FAILED. Status information won\'t be available for most assets ingested+-- before 2021-09-30.+--+-- 'url', 'egressEndpoint_url' - The URL of the parent manifest for the repackaged Asset.+newEgressEndpoint ::+ EgressEndpoint+newEgressEndpoint =+ EgressEndpoint'+ { packagingConfigurationId =+ Prelude.Nothing,+ status = Prelude.Nothing,+ url = Prelude.Nothing+ }++-- | The ID of the PackagingConfiguration being applied to the Asset.+egressEndpoint_packagingConfigurationId :: Lens.Lens' EgressEndpoint (Prelude.Maybe Prelude.Text)+egressEndpoint_packagingConfigurationId = Lens.lens (\EgressEndpoint' {packagingConfigurationId} -> packagingConfigurationId) (\s@EgressEndpoint' {} a -> s {packagingConfigurationId = a} :: EgressEndpoint)++-- | The current processing status of the asset used for the packaging+-- configuration. The status can be either QUEUED, PROCESSING, PLAYABLE, or+-- FAILED. Status information won\'t be available for most assets ingested+-- before 2021-09-30.+egressEndpoint_status :: Lens.Lens' EgressEndpoint (Prelude.Maybe Prelude.Text)+egressEndpoint_status = Lens.lens (\EgressEndpoint' {status} -> status) (\s@EgressEndpoint' {} a -> s {status = a} :: EgressEndpoint)++-- | The URL of the parent manifest for the repackaged Asset.+egressEndpoint_url :: Lens.Lens' EgressEndpoint (Prelude.Maybe Prelude.Text)+egressEndpoint_url = Lens.lens (\EgressEndpoint' {url} -> url) (\s@EgressEndpoint' {} a -> s {url = a} :: EgressEndpoint)++instance Data.FromJSON EgressEndpoint where+ parseJSON =+ Data.withObject+ "EgressEndpoint"+ ( \x ->+ EgressEndpoint'+ Prelude.<$> (x Data..:? "packagingConfigurationId")+ Prelude.<*> (x Data..:? "status")+ Prelude.<*> (x Data..:? "url")+ )++instance Prelude.Hashable EgressEndpoint where+ hashWithSalt _salt EgressEndpoint' {..} =+ _salt+ `Prelude.hashWithSalt` packagingConfigurationId+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` url++instance Prelude.NFData EgressEndpoint where+ rnf EgressEndpoint' {..} =+ Prelude.rnf packagingConfigurationId+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf url
+ gen/Amazonka/MediaPackageVOD/Types/EncryptionContractConfiguration.hs view
@@ -0,0 +1,124 @@+{-# 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.MediaPackageVOD.Types.EncryptionContractConfiguration+-- Copyright : (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.MediaPackageVOD.Types.EncryptionContractConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.PresetSpeke20Audio+import Amazonka.MediaPackageVOD.Types.PresetSpeke20Video+import qualified Amazonka.Prelude as Prelude++-- | Use encryptionContractConfiguration to configure one or more content+-- encryption keys for your endpoints that use SPEKE 2.0. The encryption+-- contract defines which content keys are used to encrypt the audio and+-- video tracks in your stream. To configure the encryption contract,+-- specify which audio and video encryption presets to use. Note the+-- following considerations when using encryptionContractConfiguration:+-- encryptionContractConfiguration can be used for DASH endpoints that use+-- SPEKE 2.0. SPEKE 2.0 relies on the CPIX 2.3 specification. You must+-- disable key rotation for this endpoint by setting+-- keyRotationIntervalSeconds to 0.+--+-- /See:/ 'newEncryptionContractConfiguration' smart constructor.+data EncryptionContractConfiguration = EncryptionContractConfiguration'+ { -- | A collection of audio encryption presets.+ presetSpeke20Audio :: PresetSpeke20Audio,+ -- | A collection of video encryption presets.+ presetSpeke20Video :: PresetSpeke20Video+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EncryptionContractConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'presetSpeke20Audio', 'encryptionContractConfiguration_presetSpeke20Audio' - A collection of audio encryption presets.+--+-- 'presetSpeke20Video', 'encryptionContractConfiguration_presetSpeke20Video' - A collection of video encryption presets.+newEncryptionContractConfiguration ::+ -- | 'presetSpeke20Audio'+ PresetSpeke20Audio ->+ -- | 'presetSpeke20Video'+ PresetSpeke20Video ->+ EncryptionContractConfiguration+newEncryptionContractConfiguration+ pPresetSpeke20Audio_+ pPresetSpeke20Video_ =+ EncryptionContractConfiguration'+ { presetSpeke20Audio =+ pPresetSpeke20Audio_,+ presetSpeke20Video = pPresetSpeke20Video_+ }++-- | A collection of audio encryption presets.+encryptionContractConfiguration_presetSpeke20Audio :: Lens.Lens' EncryptionContractConfiguration PresetSpeke20Audio+encryptionContractConfiguration_presetSpeke20Audio = Lens.lens (\EncryptionContractConfiguration' {presetSpeke20Audio} -> presetSpeke20Audio) (\s@EncryptionContractConfiguration' {} a -> s {presetSpeke20Audio = a} :: EncryptionContractConfiguration)++-- | A collection of video encryption presets.+encryptionContractConfiguration_presetSpeke20Video :: Lens.Lens' EncryptionContractConfiguration PresetSpeke20Video+encryptionContractConfiguration_presetSpeke20Video = Lens.lens (\EncryptionContractConfiguration' {presetSpeke20Video} -> presetSpeke20Video) (\s@EncryptionContractConfiguration' {} a -> s {presetSpeke20Video = a} :: EncryptionContractConfiguration)++instance+ Data.FromJSON+ EncryptionContractConfiguration+ where+ parseJSON =+ Data.withObject+ "EncryptionContractConfiguration"+ ( \x ->+ EncryptionContractConfiguration'+ Prelude.<$> (x Data..: "presetSpeke20Audio")+ Prelude.<*> (x Data..: "presetSpeke20Video")+ )++instance+ Prelude.Hashable+ EncryptionContractConfiguration+ where+ hashWithSalt+ _salt+ EncryptionContractConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` presetSpeke20Audio+ `Prelude.hashWithSalt` presetSpeke20Video++instance+ Prelude.NFData+ EncryptionContractConfiguration+ where+ rnf EncryptionContractConfiguration' {..} =+ Prelude.rnf presetSpeke20Audio+ `Prelude.seq` Prelude.rnf presetSpeke20Video++instance Data.ToJSON EncryptionContractConfiguration where+ toJSON EncryptionContractConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("presetSpeke20Audio" Data..= presetSpeke20Audio),+ Prelude.Just+ ("presetSpeke20Video" Data..= presetSpeke20Video)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/EncryptionMethod.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.MediaPackageVOD.Types.EncryptionMethod+-- Copyright : (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.MediaPackageVOD.Types.EncryptionMethod+ ( EncryptionMethod+ ( ..,+ EncryptionMethod_AES_128,+ EncryptionMethod_SAMPLE_AES+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype EncryptionMethod = EncryptionMethod'+ { fromEncryptionMethod ::+ 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 EncryptionMethod_AES_128 :: EncryptionMethod+pattern EncryptionMethod_AES_128 = EncryptionMethod' "AES_128"++pattern EncryptionMethod_SAMPLE_AES :: EncryptionMethod+pattern EncryptionMethod_SAMPLE_AES = EncryptionMethod' "SAMPLE_AES"++{-# COMPLETE+ EncryptionMethod_AES_128,+ EncryptionMethod_SAMPLE_AES,+ EncryptionMethod'+ #-}
+ gen/Amazonka/MediaPackageVOD/Types/HlsEncryption.hs view
@@ -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.MediaPackageVOD.Types.HlsEncryption+-- Copyright : (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.MediaPackageVOD.Types.HlsEncryption where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.EncryptionMethod+import Amazonka.MediaPackageVOD.Types.SpekeKeyProvider+import qualified Amazonka.Prelude as Prelude++-- | An HTTP Live Streaming (HLS) encryption configuration.+--+-- /See:/ 'newHlsEncryption' smart constructor.+data HlsEncryption = HlsEncryption'+ { -- | A constant initialization vector for encryption (optional). When not+ -- specified the initialization vector will be periodically rotated.+ constantInitializationVector :: Prelude.Maybe Prelude.Text,+ -- | The encryption method to use.+ encryptionMethod :: Prelude.Maybe EncryptionMethod,+ spekeKeyProvider :: SpekeKeyProvider+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'HlsEncryption' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'constantInitializationVector', 'hlsEncryption_constantInitializationVector' - A constant initialization vector for encryption (optional). When not+-- specified the initialization vector will be periodically rotated.+--+-- 'encryptionMethod', 'hlsEncryption_encryptionMethod' - The encryption method to use.+--+-- 'spekeKeyProvider', 'hlsEncryption_spekeKeyProvider' - Undocumented member.+newHlsEncryption ::+ -- | 'spekeKeyProvider'+ SpekeKeyProvider ->+ HlsEncryption+newHlsEncryption pSpekeKeyProvider_ =+ HlsEncryption'+ { constantInitializationVector =+ Prelude.Nothing,+ encryptionMethod = Prelude.Nothing,+ spekeKeyProvider = pSpekeKeyProvider_+ }++-- | A constant initialization vector for encryption (optional). When not+-- specified the initialization vector will be periodically rotated.+hlsEncryption_constantInitializationVector :: Lens.Lens' HlsEncryption (Prelude.Maybe Prelude.Text)+hlsEncryption_constantInitializationVector = Lens.lens (\HlsEncryption' {constantInitializationVector} -> constantInitializationVector) (\s@HlsEncryption' {} a -> s {constantInitializationVector = a} :: HlsEncryption)++-- | The encryption method to use.+hlsEncryption_encryptionMethod :: Lens.Lens' HlsEncryption (Prelude.Maybe EncryptionMethod)+hlsEncryption_encryptionMethod = Lens.lens (\HlsEncryption' {encryptionMethod} -> encryptionMethod) (\s@HlsEncryption' {} a -> s {encryptionMethod = a} :: HlsEncryption)++-- | Undocumented member.+hlsEncryption_spekeKeyProvider :: Lens.Lens' HlsEncryption SpekeKeyProvider+hlsEncryption_spekeKeyProvider = Lens.lens (\HlsEncryption' {spekeKeyProvider} -> spekeKeyProvider) (\s@HlsEncryption' {} a -> s {spekeKeyProvider = a} :: HlsEncryption)++instance Data.FromJSON HlsEncryption where+ parseJSON =+ Data.withObject+ "HlsEncryption"+ ( \x ->+ HlsEncryption'+ Prelude.<$> (x Data..:? "constantInitializationVector")+ Prelude.<*> (x Data..:? "encryptionMethod")+ Prelude.<*> (x Data..: "spekeKeyProvider")+ )++instance Prelude.Hashable HlsEncryption where+ hashWithSalt _salt HlsEncryption' {..} =+ _salt+ `Prelude.hashWithSalt` constantInitializationVector+ `Prelude.hashWithSalt` encryptionMethod+ `Prelude.hashWithSalt` spekeKeyProvider++instance Prelude.NFData HlsEncryption where+ rnf HlsEncryption' {..} =+ Prelude.rnf constantInitializationVector+ `Prelude.seq` Prelude.rnf encryptionMethod+ `Prelude.seq` Prelude.rnf spekeKeyProvider++instance Data.ToJSON HlsEncryption where+ toJSON HlsEncryption' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("constantInitializationVector" Data..=)+ Prelude.<$> constantInitializationVector,+ ("encryptionMethod" Data..=)+ Prelude.<$> encryptionMethod,+ Prelude.Just+ ("spekeKeyProvider" Data..= spekeKeyProvider)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/HlsManifest.hs view
@@ -0,0 +1,188 @@+{-# 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.MediaPackageVOD.Types.HlsManifest+-- Copyright : (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.MediaPackageVOD.Types.HlsManifest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.AdMarkers+import Amazonka.MediaPackageVOD.Types.StreamSelection+import qualified Amazonka.Prelude as Prelude++-- | An HTTP Live Streaming (HLS) manifest configuration.+--+-- /See:/ 'newHlsManifest' smart constructor.+data HlsManifest = HlsManifest'+ { -- | This setting controls how ad markers are included in the packaged+ -- OriginEndpoint. \"NONE\" will omit all SCTE-35 ad markers from the+ -- output. \"PASSTHROUGH\" causes the manifest to contain a copy of the+ -- SCTE-35 ad markers (comments) taken directly from the input HTTP Live+ -- Streaming (HLS) manifest. \"SCTE35_ENHANCED\" generates ad markers and+ -- blackout tags based on SCTE-35 messages in the input source.+ adMarkers :: Prelude.Maybe AdMarkers,+ -- | When enabled, an I-Frame only stream will be included in the output.+ includeIframeOnlyStream :: Prelude.Maybe Prelude.Bool,+ -- | An optional string to include in the name of the manifest.+ manifestName :: Prelude.Maybe Prelude.Text,+ -- | The interval (in seconds) between each EXT-X-PROGRAM-DATE-TIME tag+ -- inserted into manifests. Additionally, when an interval is specified+ -- ID3Timed Metadata messages will be generated every 5 seconds using the+ -- ingest time of the content. If the interval is not specified, or set to+ -- 0, then no EXT-X-PROGRAM-DATE-TIME tags will be inserted into manifests+ -- and no ID3Timed Metadata messages will be generated. Note that+ -- irrespective of this parameter, if any ID3 Timed Metadata is found in+ -- HTTP Live Streaming (HLS) input, it will be passed through to HLS+ -- output.+ programDateTimeIntervalSeconds :: Prelude.Maybe Prelude.Int,+ -- | When enabled, the EXT-X-KEY tag will be repeated in output manifests.+ repeatExtXKey :: Prelude.Maybe Prelude.Bool,+ streamSelection :: Prelude.Maybe StreamSelection+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'HlsManifest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'adMarkers', 'hlsManifest_adMarkers' - This setting controls how ad markers are included in the packaged+-- OriginEndpoint. \"NONE\" will omit all SCTE-35 ad markers from the+-- output. \"PASSTHROUGH\" causes the manifest to contain a copy of the+-- SCTE-35 ad markers (comments) taken directly from the input HTTP Live+-- Streaming (HLS) manifest. \"SCTE35_ENHANCED\" generates ad markers and+-- blackout tags based on SCTE-35 messages in the input source.+--+-- 'includeIframeOnlyStream', 'hlsManifest_includeIframeOnlyStream' - When enabled, an I-Frame only stream will be included in the output.+--+-- 'manifestName', 'hlsManifest_manifestName' - An optional string to include in the name of the manifest.+--+-- 'programDateTimeIntervalSeconds', 'hlsManifest_programDateTimeIntervalSeconds' - The interval (in seconds) between each EXT-X-PROGRAM-DATE-TIME tag+-- inserted into manifests. Additionally, when an interval is specified+-- ID3Timed Metadata messages will be generated every 5 seconds using the+-- ingest time of the content. If the interval is not specified, or set to+-- 0, then no EXT-X-PROGRAM-DATE-TIME tags will be inserted into manifests+-- and no ID3Timed Metadata messages will be generated. Note that+-- irrespective of this parameter, if any ID3 Timed Metadata is found in+-- HTTP Live Streaming (HLS) input, it will be passed through to HLS+-- output.+--+-- 'repeatExtXKey', 'hlsManifest_repeatExtXKey' - When enabled, the EXT-X-KEY tag will be repeated in output manifests.+--+-- 'streamSelection', 'hlsManifest_streamSelection' - Undocumented member.+newHlsManifest ::+ HlsManifest+newHlsManifest =+ HlsManifest'+ { adMarkers = Prelude.Nothing,+ includeIframeOnlyStream = Prelude.Nothing,+ manifestName = Prelude.Nothing,+ programDateTimeIntervalSeconds = Prelude.Nothing,+ repeatExtXKey = Prelude.Nothing,+ streamSelection = Prelude.Nothing+ }++-- | This setting controls how ad markers are included in the packaged+-- OriginEndpoint. \"NONE\" will omit all SCTE-35 ad markers from the+-- output. \"PASSTHROUGH\" causes the manifest to contain a copy of the+-- SCTE-35 ad markers (comments) taken directly from the input HTTP Live+-- Streaming (HLS) manifest. \"SCTE35_ENHANCED\" generates ad markers and+-- blackout tags based on SCTE-35 messages in the input source.+hlsManifest_adMarkers :: Lens.Lens' HlsManifest (Prelude.Maybe AdMarkers)+hlsManifest_adMarkers = Lens.lens (\HlsManifest' {adMarkers} -> adMarkers) (\s@HlsManifest' {} a -> s {adMarkers = a} :: HlsManifest)++-- | When enabled, an I-Frame only stream will be included in the output.+hlsManifest_includeIframeOnlyStream :: Lens.Lens' HlsManifest (Prelude.Maybe Prelude.Bool)+hlsManifest_includeIframeOnlyStream = Lens.lens (\HlsManifest' {includeIframeOnlyStream} -> includeIframeOnlyStream) (\s@HlsManifest' {} a -> s {includeIframeOnlyStream = a} :: HlsManifest)++-- | An optional string to include in the name of the manifest.+hlsManifest_manifestName :: Lens.Lens' HlsManifest (Prelude.Maybe Prelude.Text)+hlsManifest_manifestName = Lens.lens (\HlsManifest' {manifestName} -> manifestName) (\s@HlsManifest' {} a -> s {manifestName = a} :: HlsManifest)++-- | The interval (in seconds) between each EXT-X-PROGRAM-DATE-TIME tag+-- inserted into manifests. Additionally, when an interval is specified+-- ID3Timed Metadata messages will be generated every 5 seconds using the+-- ingest time of the content. If the interval is not specified, or set to+-- 0, then no EXT-X-PROGRAM-DATE-TIME tags will be inserted into manifests+-- and no ID3Timed Metadata messages will be generated. Note that+-- irrespective of this parameter, if any ID3 Timed Metadata is found in+-- HTTP Live Streaming (HLS) input, it will be passed through to HLS+-- output.+hlsManifest_programDateTimeIntervalSeconds :: Lens.Lens' HlsManifest (Prelude.Maybe Prelude.Int)+hlsManifest_programDateTimeIntervalSeconds = Lens.lens (\HlsManifest' {programDateTimeIntervalSeconds} -> programDateTimeIntervalSeconds) (\s@HlsManifest' {} a -> s {programDateTimeIntervalSeconds = a} :: HlsManifest)++-- | When enabled, the EXT-X-KEY tag will be repeated in output manifests.+hlsManifest_repeatExtXKey :: Lens.Lens' HlsManifest (Prelude.Maybe Prelude.Bool)+hlsManifest_repeatExtXKey = Lens.lens (\HlsManifest' {repeatExtXKey} -> repeatExtXKey) (\s@HlsManifest' {} a -> s {repeatExtXKey = a} :: HlsManifest)++-- | Undocumented member.+hlsManifest_streamSelection :: Lens.Lens' HlsManifest (Prelude.Maybe StreamSelection)+hlsManifest_streamSelection = Lens.lens (\HlsManifest' {streamSelection} -> streamSelection) (\s@HlsManifest' {} a -> s {streamSelection = a} :: HlsManifest)++instance Data.FromJSON HlsManifest where+ parseJSON =+ Data.withObject+ "HlsManifest"+ ( \x ->+ HlsManifest'+ Prelude.<$> (x Data..:? "adMarkers")+ Prelude.<*> (x Data..:? "includeIframeOnlyStream")+ Prelude.<*> (x Data..:? "manifestName")+ Prelude.<*> (x Data..:? "programDateTimeIntervalSeconds")+ Prelude.<*> (x Data..:? "repeatExtXKey")+ Prelude.<*> (x Data..:? "streamSelection")+ )++instance Prelude.Hashable HlsManifest where+ hashWithSalt _salt HlsManifest' {..} =+ _salt+ `Prelude.hashWithSalt` adMarkers+ `Prelude.hashWithSalt` includeIframeOnlyStream+ `Prelude.hashWithSalt` manifestName+ `Prelude.hashWithSalt` programDateTimeIntervalSeconds+ `Prelude.hashWithSalt` repeatExtXKey+ `Prelude.hashWithSalt` streamSelection++instance Prelude.NFData HlsManifest where+ rnf HlsManifest' {..} =+ Prelude.rnf adMarkers+ `Prelude.seq` Prelude.rnf includeIframeOnlyStream+ `Prelude.seq` Prelude.rnf manifestName+ `Prelude.seq` Prelude.rnf programDateTimeIntervalSeconds+ `Prelude.seq` Prelude.rnf repeatExtXKey+ `Prelude.seq` Prelude.rnf streamSelection++instance Data.ToJSON HlsManifest where+ toJSON HlsManifest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("adMarkers" Data..=) Prelude.<$> adMarkers,+ ("includeIframeOnlyStream" Data..=)+ Prelude.<$> includeIframeOnlyStream,+ ("manifestName" Data..=) Prelude.<$> manifestName,+ ("programDateTimeIntervalSeconds" Data..=)+ Prelude.<$> programDateTimeIntervalSeconds,+ ("repeatExtXKey" Data..=) Prelude.<$> repeatExtXKey,+ ("streamSelection" Data..=)+ Prelude.<$> streamSelection+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/HlsPackage.hs view
@@ -0,0 +1,145 @@+{-# 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.MediaPackageVOD.Types.HlsPackage+-- Copyright : (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.MediaPackageVOD.Types.HlsPackage where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.HlsEncryption+import Amazonka.MediaPackageVOD.Types.HlsManifest+import qualified Amazonka.Prelude as Prelude++-- | An HTTP Live Streaming (HLS) packaging configuration.+--+-- /See:/ 'newHlsPackage' smart constructor.+data HlsPackage = HlsPackage'+ { encryption :: Prelude.Maybe HlsEncryption,+ -- | When enabled, MediaPackage passes through digital video broadcasting+ -- (DVB) subtitles into the output.+ includeDvbSubtitles :: Prelude.Maybe Prelude.Bool,+ -- | Duration (in seconds) of each fragment. Actual fragments will be rounded+ -- to the nearest multiple of the source fragment duration.+ segmentDurationSeconds :: Prelude.Maybe Prelude.Int,+ -- | When enabled, audio streams will be placed in rendition groups in the+ -- output.+ useAudioRenditionGroup :: Prelude.Maybe Prelude.Bool,+ -- | A list of HLS manifest configurations.+ hlsManifests :: [HlsManifest]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'HlsPackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'hlsPackage_encryption' - Undocumented member.+--+-- 'includeDvbSubtitles', 'hlsPackage_includeDvbSubtitles' - When enabled, MediaPackage passes through digital video broadcasting+-- (DVB) subtitles into the output.+--+-- 'segmentDurationSeconds', 'hlsPackage_segmentDurationSeconds' - Duration (in seconds) of each fragment. Actual fragments will be rounded+-- to the nearest multiple of the source fragment duration.+--+-- 'useAudioRenditionGroup', 'hlsPackage_useAudioRenditionGroup' - When enabled, audio streams will be placed in rendition groups in the+-- output.+--+-- 'hlsManifests', 'hlsPackage_hlsManifests' - A list of HLS manifest configurations.+newHlsPackage ::+ HlsPackage+newHlsPackage =+ HlsPackage'+ { encryption = Prelude.Nothing,+ includeDvbSubtitles = Prelude.Nothing,+ segmentDurationSeconds = Prelude.Nothing,+ useAudioRenditionGroup = Prelude.Nothing,+ hlsManifests = Prelude.mempty+ }++-- | Undocumented member.+hlsPackage_encryption :: Lens.Lens' HlsPackage (Prelude.Maybe HlsEncryption)+hlsPackage_encryption = Lens.lens (\HlsPackage' {encryption} -> encryption) (\s@HlsPackage' {} a -> s {encryption = a} :: HlsPackage)++-- | When enabled, MediaPackage passes through digital video broadcasting+-- (DVB) subtitles into the output.+hlsPackage_includeDvbSubtitles :: Lens.Lens' HlsPackage (Prelude.Maybe Prelude.Bool)+hlsPackage_includeDvbSubtitles = Lens.lens (\HlsPackage' {includeDvbSubtitles} -> includeDvbSubtitles) (\s@HlsPackage' {} a -> s {includeDvbSubtitles = a} :: HlsPackage)++-- | Duration (in seconds) of each fragment. Actual fragments will be rounded+-- to the nearest multiple of the source fragment duration.+hlsPackage_segmentDurationSeconds :: Lens.Lens' HlsPackage (Prelude.Maybe Prelude.Int)+hlsPackage_segmentDurationSeconds = Lens.lens (\HlsPackage' {segmentDurationSeconds} -> segmentDurationSeconds) (\s@HlsPackage' {} a -> s {segmentDurationSeconds = a} :: HlsPackage)++-- | When enabled, audio streams will be placed in rendition groups in the+-- output.+hlsPackage_useAudioRenditionGroup :: Lens.Lens' HlsPackage (Prelude.Maybe Prelude.Bool)+hlsPackage_useAudioRenditionGroup = Lens.lens (\HlsPackage' {useAudioRenditionGroup} -> useAudioRenditionGroup) (\s@HlsPackage' {} a -> s {useAudioRenditionGroup = a} :: HlsPackage)++-- | A list of HLS manifest configurations.+hlsPackage_hlsManifests :: Lens.Lens' HlsPackage [HlsManifest]+hlsPackage_hlsManifests = Lens.lens (\HlsPackage' {hlsManifests} -> hlsManifests) (\s@HlsPackage' {} a -> s {hlsManifests = a} :: HlsPackage) Prelude.. Lens.coerced++instance Data.FromJSON HlsPackage where+ parseJSON =+ Data.withObject+ "HlsPackage"+ ( \x ->+ HlsPackage'+ Prelude.<$> (x Data..:? "encryption")+ Prelude.<*> (x Data..:? "includeDvbSubtitles")+ Prelude.<*> (x Data..:? "segmentDurationSeconds")+ Prelude.<*> (x Data..:? "useAudioRenditionGroup")+ Prelude.<*> (x Data..:? "hlsManifests" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable HlsPackage where+ hashWithSalt _salt HlsPackage' {..} =+ _salt+ `Prelude.hashWithSalt` encryption+ `Prelude.hashWithSalt` includeDvbSubtitles+ `Prelude.hashWithSalt` segmentDurationSeconds+ `Prelude.hashWithSalt` useAudioRenditionGroup+ `Prelude.hashWithSalt` hlsManifests++instance Prelude.NFData HlsPackage where+ rnf HlsPackage' {..} =+ Prelude.rnf encryption+ `Prelude.seq` Prelude.rnf includeDvbSubtitles+ `Prelude.seq` Prelude.rnf segmentDurationSeconds+ `Prelude.seq` Prelude.rnf useAudioRenditionGroup+ `Prelude.seq` Prelude.rnf hlsManifests++instance Data.ToJSON HlsPackage where+ toJSON HlsPackage' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("encryption" Data..=) Prelude.<$> encryption,+ ("includeDvbSubtitles" Data..=)+ Prelude.<$> includeDvbSubtitles,+ ("segmentDurationSeconds" Data..=)+ Prelude.<$> segmentDurationSeconds,+ ("useAudioRenditionGroup" Data..=)+ Prelude.<$> useAudioRenditionGroup,+ Prelude.Just ("hlsManifests" Data..= hlsManifests)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/ManifestLayout.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.MediaPackageVOD.Types.ManifestLayout+-- Copyright : (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.MediaPackageVOD.Types.ManifestLayout+ ( ManifestLayout+ ( ..,+ ManifestLayout_COMPACT,+ ManifestLayout_FULL+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ManifestLayout = ManifestLayout'+ { fromManifestLayout ::+ 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 ManifestLayout_COMPACT :: ManifestLayout+pattern ManifestLayout_COMPACT = ManifestLayout' "COMPACT"++pattern ManifestLayout_FULL :: ManifestLayout+pattern ManifestLayout_FULL = ManifestLayout' "FULL"++{-# COMPLETE+ ManifestLayout_COMPACT,+ ManifestLayout_FULL,+ ManifestLayout'+ #-}
+ gen/Amazonka/MediaPackageVOD/Types/MssEncryption.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.Types.MssEncryption+-- Copyright : (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.MediaPackageVOD.Types.MssEncryption where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.SpekeKeyProvider+import qualified Amazonka.Prelude as Prelude++-- | A Microsoft Smooth Streaming (MSS) encryption configuration.+--+-- /See:/ 'newMssEncryption' smart constructor.+data MssEncryption = MssEncryption'+ { spekeKeyProvider :: SpekeKeyProvider+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MssEncryption' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'spekeKeyProvider', 'mssEncryption_spekeKeyProvider' - Undocumented member.+newMssEncryption ::+ -- | 'spekeKeyProvider'+ SpekeKeyProvider ->+ MssEncryption+newMssEncryption pSpekeKeyProvider_ =+ MssEncryption'+ { spekeKeyProvider =+ pSpekeKeyProvider_+ }++-- | Undocumented member.+mssEncryption_spekeKeyProvider :: Lens.Lens' MssEncryption SpekeKeyProvider+mssEncryption_spekeKeyProvider = Lens.lens (\MssEncryption' {spekeKeyProvider} -> spekeKeyProvider) (\s@MssEncryption' {} a -> s {spekeKeyProvider = a} :: MssEncryption)++instance Data.FromJSON MssEncryption where+ parseJSON =+ Data.withObject+ "MssEncryption"+ ( \x ->+ MssEncryption'+ Prelude.<$> (x Data..: "spekeKeyProvider")+ )++instance Prelude.Hashable MssEncryption where+ hashWithSalt _salt MssEncryption' {..} =+ _salt `Prelude.hashWithSalt` spekeKeyProvider++instance Prelude.NFData MssEncryption where+ rnf MssEncryption' {..} = Prelude.rnf spekeKeyProvider++instance Data.ToJSON MssEncryption where+ toJSON MssEncryption' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("spekeKeyProvider" Data..= spekeKeyProvider)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/MssManifest.hs view
@@ -0,0 +1,94 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.Types.MssManifest+-- Copyright : (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.MediaPackageVOD.Types.MssManifest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.StreamSelection+import qualified Amazonka.Prelude as Prelude++-- | A Microsoft Smooth Streaming (MSS) manifest configuration.+--+-- /See:/ 'newMssManifest' smart constructor.+data MssManifest = MssManifest'+ { -- | An optional string to include in the name of the manifest.+ manifestName :: Prelude.Maybe Prelude.Text,+ streamSelection :: Prelude.Maybe StreamSelection+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MssManifest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'manifestName', 'mssManifest_manifestName' - An optional string to include in the name of the manifest.+--+-- 'streamSelection', 'mssManifest_streamSelection' - Undocumented member.+newMssManifest ::+ MssManifest+newMssManifest =+ MssManifest'+ { manifestName = Prelude.Nothing,+ streamSelection = Prelude.Nothing+ }++-- | An optional string to include in the name of the manifest.+mssManifest_manifestName :: Lens.Lens' MssManifest (Prelude.Maybe Prelude.Text)+mssManifest_manifestName = Lens.lens (\MssManifest' {manifestName} -> manifestName) (\s@MssManifest' {} a -> s {manifestName = a} :: MssManifest)++-- | Undocumented member.+mssManifest_streamSelection :: Lens.Lens' MssManifest (Prelude.Maybe StreamSelection)+mssManifest_streamSelection = Lens.lens (\MssManifest' {streamSelection} -> streamSelection) (\s@MssManifest' {} a -> s {streamSelection = a} :: MssManifest)++instance Data.FromJSON MssManifest where+ parseJSON =+ Data.withObject+ "MssManifest"+ ( \x ->+ MssManifest'+ Prelude.<$> (x Data..:? "manifestName")+ Prelude.<*> (x Data..:? "streamSelection")+ )++instance Prelude.Hashable MssManifest where+ hashWithSalt _salt MssManifest' {..} =+ _salt+ `Prelude.hashWithSalt` manifestName+ `Prelude.hashWithSalt` streamSelection++instance Prelude.NFData MssManifest where+ rnf MssManifest' {..} =+ Prelude.rnf manifestName+ `Prelude.seq` Prelude.rnf streamSelection++instance Data.ToJSON MssManifest where+ toJSON MssManifest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("manifestName" Data..=) Prelude.<$> manifestName,+ ("streamSelection" Data..=)+ Prelude.<$> streamSelection+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/MssPackage.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.MediaPackageVOD.Types.MssPackage+-- Copyright : (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.MediaPackageVOD.Types.MssPackage where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.MssEncryption+import Amazonka.MediaPackageVOD.Types.MssManifest+import qualified Amazonka.Prelude as Prelude++-- | A Microsoft Smooth Streaming (MSS) PackagingConfiguration.+--+-- /See:/ 'newMssPackage' smart constructor.+data MssPackage = MssPackage'+ { encryption :: Prelude.Maybe MssEncryption,+ -- | The duration (in seconds) of each segment.+ segmentDurationSeconds :: Prelude.Maybe Prelude.Int,+ -- | A list of MSS manifest configurations.+ mssManifests :: [MssManifest]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MssPackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'mssPackage_encryption' - Undocumented member.+--+-- 'segmentDurationSeconds', 'mssPackage_segmentDurationSeconds' - The duration (in seconds) of each segment.+--+-- 'mssManifests', 'mssPackage_mssManifests' - A list of MSS manifest configurations.+newMssPackage ::+ MssPackage+newMssPackage =+ MssPackage'+ { encryption = Prelude.Nothing,+ segmentDurationSeconds = Prelude.Nothing,+ mssManifests = Prelude.mempty+ }++-- | Undocumented member.+mssPackage_encryption :: Lens.Lens' MssPackage (Prelude.Maybe MssEncryption)+mssPackage_encryption = Lens.lens (\MssPackage' {encryption} -> encryption) (\s@MssPackage' {} a -> s {encryption = a} :: MssPackage)++-- | The duration (in seconds) of each segment.+mssPackage_segmentDurationSeconds :: Lens.Lens' MssPackage (Prelude.Maybe Prelude.Int)+mssPackage_segmentDurationSeconds = Lens.lens (\MssPackage' {segmentDurationSeconds} -> segmentDurationSeconds) (\s@MssPackage' {} a -> s {segmentDurationSeconds = a} :: MssPackage)++-- | A list of MSS manifest configurations.+mssPackage_mssManifests :: Lens.Lens' MssPackage [MssManifest]+mssPackage_mssManifests = Lens.lens (\MssPackage' {mssManifests} -> mssManifests) (\s@MssPackage' {} a -> s {mssManifests = a} :: MssPackage) Prelude.. Lens.coerced++instance Data.FromJSON MssPackage where+ parseJSON =+ Data.withObject+ "MssPackage"+ ( \x ->+ MssPackage'+ Prelude.<$> (x Data..:? "encryption")+ Prelude.<*> (x Data..:? "segmentDurationSeconds")+ Prelude.<*> (x Data..:? "mssManifests" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable MssPackage where+ hashWithSalt _salt MssPackage' {..} =+ _salt+ `Prelude.hashWithSalt` encryption+ `Prelude.hashWithSalt` segmentDurationSeconds+ `Prelude.hashWithSalt` mssManifests++instance Prelude.NFData MssPackage where+ rnf MssPackage' {..} =+ Prelude.rnf encryption+ `Prelude.seq` Prelude.rnf segmentDurationSeconds+ `Prelude.seq` Prelude.rnf mssManifests++instance Data.ToJSON MssPackage where+ toJSON MssPackage' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("encryption" Data..=) Prelude.<$> encryption,+ ("segmentDurationSeconds" Data..=)+ Prelude.<$> segmentDurationSeconds,+ Prelude.Just ("mssManifests" Data..= mssManifests)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/PackagingConfiguration.hs view
@@ -0,0 +1,155 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.Types.PackagingConfiguration+-- Copyright : (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.MediaPackageVOD.Types.PackagingConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.CmafPackage+import Amazonka.MediaPackageVOD.Types.DashPackage+import Amazonka.MediaPackageVOD.Types.HlsPackage+import Amazonka.MediaPackageVOD.Types.MssPackage+import qualified Amazonka.Prelude as Prelude++-- | A MediaPackage VOD PackagingConfiguration resource.+--+-- /See:/ 'newPackagingConfiguration' smart constructor.+data PackagingConfiguration = PackagingConfiguration'+ { -- | The ARN of the PackagingConfiguration.+ arn :: Prelude.Maybe Prelude.Text,+ cmafPackage :: Prelude.Maybe CmafPackage,+ dashPackage :: Prelude.Maybe DashPackage,+ hlsPackage :: Prelude.Maybe HlsPackage,+ -- | The ID of the PackagingConfiguration.+ id :: Prelude.Maybe Prelude.Text,+ mssPackage :: Prelude.Maybe MssPackage,+ -- | The ID of a PackagingGroup.+ packagingGroupId :: Prelude.Maybe Prelude.Text,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackagingConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'packagingConfiguration_arn' - The ARN of the PackagingConfiguration.+--+-- 'cmafPackage', 'packagingConfiguration_cmafPackage' - Undocumented member.+--+-- 'dashPackage', 'packagingConfiguration_dashPackage' - Undocumented member.+--+-- 'hlsPackage', 'packagingConfiguration_hlsPackage' - Undocumented member.+--+-- 'id', 'packagingConfiguration_id' - The ID of the PackagingConfiguration.+--+-- 'mssPackage', 'packagingConfiguration_mssPackage' - Undocumented member.+--+-- 'packagingGroupId', 'packagingConfiguration_packagingGroupId' - The ID of a PackagingGroup.+--+-- 'tags', 'packagingConfiguration_tags' - Undocumented member.+newPackagingConfiguration ::+ PackagingConfiguration+newPackagingConfiguration =+ PackagingConfiguration'+ { arn = Prelude.Nothing,+ cmafPackage = Prelude.Nothing,+ dashPackage = Prelude.Nothing,+ hlsPackage = Prelude.Nothing,+ id = Prelude.Nothing,+ mssPackage = Prelude.Nothing,+ packagingGroupId = Prelude.Nothing,+ tags = Prelude.Nothing+ }++-- | The ARN of the PackagingConfiguration.+packagingConfiguration_arn :: Lens.Lens' PackagingConfiguration (Prelude.Maybe Prelude.Text)+packagingConfiguration_arn = Lens.lens (\PackagingConfiguration' {arn} -> arn) (\s@PackagingConfiguration' {} a -> s {arn = a} :: PackagingConfiguration)++-- | Undocumented member.+packagingConfiguration_cmafPackage :: Lens.Lens' PackagingConfiguration (Prelude.Maybe CmafPackage)+packagingConfiguration_cmafPackage = Lens.lens (\PackagingConfiguration' {cmafPackage} -> cmafPackage) (\s@PackagingConfiguration' {} a -> s {cmafPackage = a} :: PackagingConfiguration)++-- | Undocumented member.+packagingConfiguration_dashPackage :: Lens.Lens' PackagingConfiguration (Prelude.Maybe DashPackage)+packagingConfiguration_dashPackage = Lens.lens (\PackagingConfiguration' {dashPackage} -> dashPackage) (\s@PackagingConfiguration' {} a -> s {dashPackage = a} :: PackagingConfiguration)++-- | Undocumented member.+packagingConfiguration_hlsPackage :: Lens.Lens' PackagingConfiguration (Prelude.Maybe HlsPackage)+packagingConfiguration_hlsPackage = Lens.lens (\PackagingConfiguration' {hlsPackage} -> hlsPackage) (\s@PackagingConfiguration' {} a -> s {hlsPackage = a} :: PackagingConfiguration)++-- | The ID of the PackagingConfiguration.+packagingConfiguration_id :: Lens.Lens' PackagingConfiguration (Prelude.Maybe Prelude.Text)+packagingConfiguration_id = Lens.lens (\PackagingConfiguration' {id} -> id) (\s@PackagingConfiguration' {} a -> s {id = a} :: PackagingConfiguration)++-- | Undocumented member.+packagingConfiguration_mssPackage :: Lens.Lens' PackagingConfiguration (Prelude.Maybe MssPackage)+packagingConfiguration_mssPackage = Lens.lens (\PackagingConfiguration' {mssPackage} -> mssPackage) (\s@PackagingConfiguration' {} a -> s {mssPackage = a} :: PackagingConfiguration)++-- | The ID of a PackagingGroup.+packagingConfiguration_packagingGroupId :: Lens.Lens' PackagingConfiguration (Prelude.Maybe Prelude.Text)+packagingConfiguration_packagingGroupId = Lens.lens (\PackagingConfiguration' {packagingGroupId} -> packagingGroupId) (\s@PackagingConfiguration' {} a -> s {packagingGroupId = a} :: PackagingConfiguration)++-- | Undocumented member.+packagingConfiguration_tags :: Lens.Lens' PackagingConfiguration (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+packagingConfiguration_tags = Lens.lens (\PackagingConfiguration' {tags} -> tags) (\s@PackagingConfiguration' {} a -> s {tags = a} :: PackagingConfiguration) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON PackagingConfiguration where+ parseJSON =+ Data.withObject+ "PackagingConfiguration"+ ( \x ->+ PackagingConfiguration'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "cmafPackage")+ Prelude.<*> (x Data..:? "dashPackage")+ Prelude.<*> (x Data..:? "hlsPackage")+ Prelude.<*> (x Data..:? "id")+ Prelude.<*> (x Data..:? "mssPackage")+ Prelude.<*> (x Data..:? "packagingGroupId")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable PackagingConfiguration where+ hashWithSalt _salt PackagingConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` cmafPackage+ `Prelude.hashWithSalt` dashPackage+ `Prelude.hashWithSalt` hlsPackage+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` mssPackage+ `Prelude.hashWithSalt` packagingGroupId+ `Prelude.hashWithSalt` tags++instance Prelude.NFData PackagingConfiguration where+ rnf PackagingConfiguration' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf cmafPackage+ `Prelude.seq` Prelude.rnf dashPackage+ `Prelude.seq` Prelude.rnf hlsPackage+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf mssPackage+ `Prelude.seq` Prelude.rnf packagingGroupId+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/MediaPackageVOD/Types/PackagingGroup.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.MediaPackageVOD.Types.PackagingGroup+-- Copyright : (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.MediaPackageVOD.Types.PackagingGroup where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.Authorization+import Amazonka.MediaPackageVOD.Types.EgressAccessLogs+import qualified Amazonka.Prelude as Prelude++-- | A MediaPackage VOD PackagingGroup resource.+--+-- /See:/ 'newPackagingGroup' smart constructor.+data PackagingGroup = PackagingGroup'+ { -- | The approximate asset count of the PackagingGroup.+ approximateAssetCount :: Prelude.Maybe Prelude.Int,+ -- | The ARN of the PackagingGroup.+ arn :: Prelude.Maybe Prelude.Text,+ authorization :: Prelude.Maybe Authorization,+ -- | The fully qualified domain name for Assets in the PackagingGroup.+ domainName :: Prelude.Maybe Prelude.Text,+ egressAccessLogs :: Prelude.Maybe EgressAccessLogs,+ -- | The ID of the PackagingGroup.+ id :: Prelude.Maybe Prelude.Text,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackagingGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'approximateAssetCount', 'packagingGroup_approximateAssetCount' - The approximate asset count of the PackagingGroup.+--+-- 'arn', 'packagingGroup_arn' - The ARN of the PackagingGroup.+--+-- 'authorization', 'packagingGroup_authorization' - Undocumented member.+--+-- 'domainName', 'packagingGroup_domainName' - The fully qualified domain name for Assets in the PackagingGroup.+--+-- 'egressAccessLogs', 'packagingGroup_egressAccessLogs' - Undocumented member.+--+-- 'id', 'packagingGroup_id' - The ID of the PackagingGroup.+--+-- 'tags', 'packagingGroup_tags' - Undocumented member.+newPackagingGroup ::+ PackagingGroup+newPackagingGroup =+ PackagingGroup'+ { approximateAssetCount =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ authorization = Prelude.Nothing,+ domainName = Prelude.Nothing,+ egressAccessLogs = Prelude.Nothing,+ id = Prelude.Nothing,+ tags = Prelude.Nothing+ }++-- | The approximate asset count of the PackagingGroup.+packagingGroup_approximateAssetCount :: Lens.Lens' PackagingGroup (Prelude.Maybe Prelude.Int)+packagingGroup_approximateAssetCount = Lens.lens (\PackagingGroup' {approximateAssetCount} -> approximateAssetCount) (\s@PackagingGroup' {} a -> s {approximateAssetCount = a} :: PackagingGroup)++-- | The ARN of the PackagingGroup.+packagingGroup_arn :: Lens.Lens' PackagingGroup (Prelude.Maybe Prelude.Text)+packagingGroup_arn = Lens.lens (\PackagingGroup' {arn} -> arn) (\s@PackagingGroup' {} a -> s {arn = a} :: PackagingGroup)++-- | Undocumented member.+packagingGroup_authorization :: Lens.Lens' PackagingGroup (Prelude.Maybe Authorization)+packagingGroup_authorization = Lens.lens (\PackagingGroup' {authorization} -> authorization) (\s@PackagingGroup' {} a -> s {authorization = a} :: PackagingGroup)++-- | The fully qualified domain name for Assets in the PackagingGroup.+packagingGroup_domainName :: Lens.Lens' PackagingGroup (Prelude.Maybe Prelude.Text)+packagingGroup_domainName = Lens.lens (\PackagingGroup' {domainName} -> domainName) (\s@PackagingGroup' {} a -> s {domainName = a} :: PackagingGroup)++-- | Undocumented member.+packagingGroup_egressAccessLogs :: Lens.Lens' PackagingGroup (Prelude.Maybe EgressAccessLogs)+packagingGroup_egressAccessLogs = Lens.lens (\PackagingGroup' {egressAccessLogs} -> egressAccessLogs) (\s@PackagingGroup' {} a -> s {egressAccessLogs = a} :: PackagingGroup)++-- | The ID of the PackagingGroup.+packagingGroup_id :: Lens.Lens' PackagingGroup (Prelude.Maybe Prelude.Text)+packagingGroup_id = Lens.lens (\PackagingGroup' {id} -> id) (\s@PackagingGroup' {} a -> s {id = a} :: PackagingGroup)++-- | Undocumented member.+packagingGroup_tags :: Lens.Lens' PackagingGroup (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+packagingGroup_tags = Lens.lens (\PackagingGroup' {tags} -> tags) (\s@PackagingGroup' {} a -> s {tags = a} :: PackagingGroup) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON PackagingGroup where+ parseJSON =+ Data.withObject+ "PackagingGroup"+ ( \x ->+ PackagingGroup'+ Prelude.<$> (x Data..:? "approximateAssetCount")+ Prelude.<*> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "authorization")+ Prelude.<*> (x Data..:? "domainName")+ Prelude.<*> (x Data..:? "egressAccessLogs")+ Prelude.<*> (x Data..:? "id")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable PackagingGroup where+ hashWithSalt _salt PackagingGroup' {..} =+ _salt+ `Prelude.hashWithSalt` approximateAssetCount+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` authorization+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` egressAccessLogs+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` tags++instance Prelude.NFData PackagingGroup where+ rnf PackagingGroup' {..} =+ Prelude.rnf approximateAssetCount+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf authorization+ `Prelude.seq` Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf egressAccessLogs+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/MediaPackageVOD/Types/PeriodTriggersElement.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.MediaPackageVOD.Types.PeriodTriggersElement+-- Copyright : (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.MediaPackageVOD.Types.PeriodTriggersElement+ ( PeriodTriggersElement+ ( ..,+ PeriodTriggersElement_ADS+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PeriodTriggersElement = PeriodTriggersElement'+ { fromPeriodTriggersElement ::+ 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 PeriodTriggersElement_ADS :: PeriodTriggersElement+pattern PeriodTriggersElement_ADS = PeriodTriggersElement' "ADS"++{-# COMPLETE+ PeriodTriggersElement_ADS,+ PeriodTriggersElement'+ #-}
+ gen/Amazonka/MediaPackageVOD/Types/PresetSpeke20Audio.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.MediaPackageVOD.Types.PresetSpeke20Audio+-- Copyright : (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.MediaPackageVOD.Types.PresetSpeke20Audio+ ( PresetSpeke20Audio+ ( ..,+ PresetSpeke20Audio_PRESET_AUDIO_1,+ PresetSpeke20Audio_PRESET_AUDIO_2,+ PresetSpeke20Audio_PRESET_AUDIO_3,+ PresetSpeke20Audio_SHARED,+ PresetSpeke20Audio_UNENCRYPTED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PresetSpeke20Audio = PresetSpeke20Audio'+ { fromPresetSpeke20Audio ::+ 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 PresetSpeke20Audio_PRESET_AUDIO_1 :: PresetSpeke20Audio+pattern PresetSpeke20Audio_PRESET_AUDIO_1 = PresetSpeke20Audio' "PRESET-AUDIO-1"++pattern PresetSpeke20Audio_PRESET_AUDIO_2 :: PresetSpeke20Audio+pattern PresetSpeke20Audio_PRESET_AUDIO_2 = PresetSpeke20Audio' "PRESET-AUDIO-2"++pattern PresetSpeke20Audio_PRESET_AUDIO_3 :: PresetSpeke20Audio+pattern PresetSpeke20Audio_PRESET_AUDIO_3 = PresetSpeke20Audio' "PRESET-AUDIO-3"++pattern PresetSpeke20Audio_SHARED :: PresetSpeke20Audio+pattern PresetSpeke20Audio_SHARED = PresetSpeke20Audio' "SHARED"++pattern PresetSpeke20Audio_UNENCRYPTED :: PresetSpeke20Audio+pattern PresetSpeke20Audio_UNENCRYPTED = PresetSpeke20Audio' "UNENCRYPTED"++{-# COMPLETE+ PresetSpeke20Audio_PRESET_AUDIO_1,+ PresetSpeke20Audio_PRESET_AUDIO_2,+ PresetSpeke20Audio_PRESET_AUDIO_3,+ PresetSpeke20Audio_SHARED,+ PresetSpeke20Audio_UNENCRYPTED,+ PresetSpeke20Audio'+ #-}
+ gen/Amazonka/MediaPackageVOD/Types/PresetSpeke20Video.hs view
@@ -0,0 +1,111 @@+{-# 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.MediaPackageVOD.Types.PresetSpeke20Video+-- Copyright : (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.MediaPackageVOD.Types.PresetSpeke20Video+ ( PresetSpeke20Video+ ( ..,+ PresetSpeke20Video_PRESET_VIDEO_1,+ PresetSpeke20Video_PRESET_VIDEO_2,+ PresetSpeke20Video_PRESET_VIDEO_3,+ PresetSpeke20Video_PRESET_VIDEO_4,+ PresetSpeke20Video_PRESET_VIDEO_5,+ PresetSpeke20Video_PRESET_VIDEO_6,+ PresetSpeke20Video_PRESET_VIDEO_7,+ PresetSpeke20Video_PRESET_VIDEO_8,+ PresetSpeke20Video_SHARED,+ PresetSpeke20Video_UNENCRYPTED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PresetSpeke20Video = PresetSpeke20Video'+ { fromPresetSpeke20Video ::+ 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 PresetSpeke20Video_PRESET_VIDEO_1 :: PresetSpeke20Video+pattern PresetSpeke20Video_PRESET_VIDEO_1 = PresetSpeke20Video' "PRESET-VIDEO-1"++pattern PresetSpeke20Video_PRESET_VIDEO_2 :: PresetSpeke20Video+pattern PresetSpeke20Video_PRESET_VIDEO_2 = PresetSpeke20Video' "PRESET-VIDEO-2"++pattern PresetSpeke20Video_PRESET_VIDEO_3 :: PresetSpeke20Video+pattern PresetSpeke20Video_PRESET_VIDEO_3 = PresetSpeke20Video' "PRESET-VIDEO-3"++pattern PresetSpeke20Video_PRESET_VIDEO_4 :: PresetSpeke20Video+pattern PresetSpeke20Video_PRESET_VIDEO_4 = PresetSpeke20Video' "PRESET-VIDEO-4"++pattern PresetSpeke20Video_PRESET_VIDEO_5 :: PresetSpeke20Video+pattern PresetSpeke20Video_PRESET_VIDEO_5 = PresetSpeke20Video' "PRESET-VIDEO-5"++pattern PresetSpeke20Video_PRESET_VIDEO_6 :: PresetSpeke20Video+pattern PresetSpeke20Video_PRESET_VIDEO_6 = PresetSpeke20Video' "PRESET-VIDEO-6"++pattern PresetSpeke20Video_PRESET_VIDEO_7 :: PresetSpeke20Video+pattern PresetSpeke20Video_PRESET_VIDEO_7 = PresetSpeke20Video' "PRESET-VIDEO-7"++pattern PresetSpeke20Video_PRESET_VIDEO_8 :: PresetSpeke20Video+pattern PresetSpeke20Video_PRESET_VIDEO_8 = PresetSpeke20Video' "PRESET-VIDEO-8"++pattern PresetSpeke20Video_SHARED :: PresetSpeke20Video+pattern PresetSpeke20Video_SHARED = PresetSpeke20Video' "SHARED"++pattern PresetSpeke20Video_UNENCRYPTED :: PresetSpeke20Video+pattern PresetSpeke20Video_UNENCRYPTED = PresetSpeke20Video' "UNENCRYPTED"++{-# COMPLETE+ PresetSpeke20Video_PRESET_VIDEO_1,+ PresetSpeke20Video_PRESET_VIDEO_2,+ PresetSpeke20Video_PRESET_VIDEO_3,+ PresetSpeke20Video_PRESET_VIDEO_4,+ PresetSpeke20Video_PRESET_VIDEO_5,+ PresetSpeke20Video_PRESET_VIDEO_6,+ PresetSpeke20Video_PRESET_VIDEO_7,+ PresetSpeke20Video_PRESET_VIDEO_8,+ PresetSpeke20Video_SHARED,+ PresetSpeke20Video_UNENCRYPTED,+ PresetSpeke20Video'+ #-}
+ gen/Amazonka/MediaPackageVOD/Types/Profile.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.MediaPackageVOD.Types.Profile+-- Copyright : (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.MediaPackageVOD.Types.Profile+ ( Profile+ ( ..,+ Profile_HBBTV_1_5,+ Profile_NONE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Profile = Profile' {fromProfile :: 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 Profile_HBBTV_1_5 :: Profile+pattern Profile_HBBTV_1_5 = Profile' "HBBTV_1_5"++pattern Profile_NONE :: Profile+pattern Profile_NONE = Profile' "NONE"++{-# COMPLETE+ Profile_HBBTV_1_5,+ Profile_NONE,+ Profile'+ #-}
+ gen/Amazonka/MediaPackageVOD/Types/ScteMarkersSource.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.MediaPackageVOD.Types.ScteMarkersSource+-- Copyright : (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.MediaPackageVOD.Types.ScteMarkersSource+ ( ScteMarkersSource+ ( ..,+ ScteMarkersSource_MANIFEST,+ ScteMarkersSource_SEGMENTS+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ScteMarkersSource = ScteMarkersSource'+ { fromScteMarkersSource ::+ 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 ScteMarkersSource_MANIFEST :: ScteMarkersSource+pattern ScteMarkersSource_MANIFEST = ScteMarkersSource' "MANIFEST"++pattern ScteMarkersSource_SEGMENTS :: ScteMarkersSource+pattern ScteMarkersSource_SEGMENTS = ScteMarkersSource' "SEGMENTS"++{-# COMPLETE+ ScteMarkersSource_MANIFEST,+ ScteMarkersSource_SEGMENTS,+ ScteMarkersSource'+ #-}
+ gen/Amazonka/MediaPackageVOD/Types/SegmentTemplateFormat.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.MediaPackageVOD.Types.SegmentTemplateFormat+-- Copyright : (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.MediaPackageVOD.Types.SegmentTemplateFormat+ ( SegmentTemplateFormat+ ( ..,+ SegmentTemplateFormat_NUMBER_WITH_DURATION,+ SegmentTemplateFormat_NUMBER_WITH_TIMELINE,+ SegmentTemplateFormat_TIME_WITH_TIMELINE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SegmentTemplateFormat = SegmentTemplateFormat'+ { fromSegmentTemplateFormat ::+ 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 SegmentTemplateFormat_NUMBER_WITH_DURATION :: SegmentTemplateFormat+pattern SegmentTemplateFormat_NUMBER_WITH_DURATION = SegmentTemplateFormat' "NUMBER_WITH_DURATION"++pattern SegmentTemplateFormat_NUMBER_WITH_TIMELINE :: SegmentTemplateFormat+pattern SegmentTemplateFormat_NUMBER_WITH_TIMELINE = SegmentTemplateFormat' "NUMBER_WITH_TIMELINE"++pattern SegmentTemplateFormat_TIME_WITH_TIMELINE :: SegmentTemplateFormat+pattern SegmentTemplateFormat_TIME_WITH_TIMELINE = SegmentTemplateFormat' "TIME_WITH_TIMELINE"++{-# COMPLETE+ SegmentTemplateFormat_NUMBER_WITH_DURATION,+ SegmentTemplateFormat_NUMBER_WITH_TIMELINE,+ SegmentTemplateFormat_TIME_WITH_TIMELINE,+ SegmentTemplateFormat'+ #-}
+ gen/Amazonka/MediaPackageVOD/Types/SpekeKeyProvider.hs view
@@ -0,0 +1,129 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MediaPackageVOD.Types.SpekeKeyProvider+-- Copyright : (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.MediaPackageVOD.Types.SpekeKeyProvider where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.EncryptionContractConfiguration+import qualified Amazonka.Prelude as Prelude++-- | A configuration for accessing an external Secure Packager and Encoder+-- Key Exchange (SPEKE) service that will provide encryption keys.+--+-- /See:/ 'newSpekeKeyProvider' smart constructor.+data SpekeKeyProvider = SpekeKeyProvider'+ { encryptionContractConfiguration :: Prelude.Maybe EncryptionContractConfiguration,+ -- | The system IDs to include in key requests.+ systemIds :: [Prelude.Text],+ -- | The URL of the external key provider service.+ url :: Prelude.Text,+ -- | An Amazon Resource Name (ARN) of an IAM role that AWS Elemental+ -- MediaPackage will assume when accessing the key provider service.+ roleArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SpekeKeyProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'encryptionContractConfiguration', 'spekeKeyProvider_encryptionContractConfiguration' - Undocumented member.+--+-- 'systemIds', 'spekeKeyProvider_systemIds' - The system IDs to include in key requests.+--+-- 'url', 'spekeKeyProvider_url' - The URL of the external key provider service.+--+-- 'roleArn', 'spekeKeyProvider_roleArn' - An Amazon Resource Name (ARN) of an IAM role that AWS Elemental+-- MediaPackage will assume when accessing the key provider service.+newSpekeKeyProvider ::+ -- | 'url'+ Prelude.Text ->+ -- | 'roleArn'+ Prelude.Text ->+ SpekeKeyProvider+newSpekeKeyProvider pUrl_ pRoleArn_ =+ SpekeKeyProvider'+ { encryptionContractConfiguration =+ Prelude.Nothing,+ systemIds = Prelude.mempty,+ url = pUrl_,+ roleArn = pRoleArn_+ }++-- | Undocumented member.+spekeKeyProvider_encryptionContractConfiguration :: Lens.Lens' SpekeKeyProvider (Prelude.Maybe EncryptionContractConfiguration)+spekeKeyProvider_encryptionContractConfiguration = Lens.lens (\SpekeKeyProvider' {encryptionContractConfiguration} -> encryptionContractConfiguration) (\s@SpekeKeyProvider' {} a -> s {encryptionContractConfiguration = a} :: SpekeKeyProvider)++-- | The system IDs to include in key requests.+spekeKeyProvider_systemIds :: Lens.Lens' SpekeKeyProvider [Prelude.Text]+spekeKeyProvider_systemIds = Lens.lens (\SpekeKeyProvider' {systemIds} -> systemIds) (\s@SpekeKeyProvider' {} a -> s {systemIds = a} :: SpekeKeyProvider) Prelude.. Lens.coerced++-- | The URL of the external key provider service.+spekeKeyProvider_url :: Lens.Lens' SpekeKeyProvider Prelude.Text+spekeKeyProvider_url = Lens.lens (\SpekeKeyProvider' {url} -> url) (\s@SpekeKeyProvider' {} a -> s {url = a} :: SpekeKeyProvider)++-- | An Amazon Resource Name (ARN) of an IAM role that AWS Elemental+-- MediaPackage will assume when accessing the key provider service.+spekeKeyProvider_roleArn :: Lens.Lens' SpekeKeyProvider Prelude.Text+spekeKeyProvider_roleArn = Lens.lens (\SpekeKeyProvider' {roleArn} -> roleArn) (\s@SpekeKeyProvider' {} a -> s {roleArn = a} :: SpekeKeyProvider)++instance Data.FromJSON SpekeKeyProvider where+ parseJSON =+ Data.withObject+ "SpekeKeyProvider"+ ( \x ->+ SpekeKeyProvider'+ Prelude.<$> (x Data..:? "encryptionContractConfiguration")+ Prelude.<*> (x Data..:? "systemIds" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "url")+ Prelude.<*> (x Data..: "roleArn")+ )++instance Prelude.Hashable SpekeKeyProvider where+ hashWithSalt _salt SpekeKeyProvider' {..} =+ _salt+ `Prelude.hashWithSalt` encryptionContractConfiguration+ `Prelude.hashWithSalt` systemIds+ `Prelude.hashWithSalt` url+ `Prelude.hashWithSalt` roleArn++instance Prelude.NFData SpekeKeyProvider where+ rnf SpekeKeyProvider' {..} =+ Prelude.rnf encryptionContractConfiguration+ `Prelude.seq` Prelude.rnf systemIds+ `Prelude.seq` Prelude.rnf url+ `Prelude.seq` Prelude.rnf roleArn++instance Data.ToJSON SpekeKeyProvider where+ toJSON SpekeKeyProvider' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("encryptionContractConfiguration" Data..=)+ Prelude.<$> encryptionContractConfiguration,+ Prelude.Just ("systemIds" Data..= systemIds),+ Prelude.Just ("url" Data..= url),+ Prelude.Just ("roleArn" Data..= roleArn)+ ]+ )
+ gen/Amazonka/MediaPackageVOD/Types/StreamOrder.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.MediaPackageVOD.Types.StreamOrder+-- Copyright : (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.MediaPackageVOD.Types.StreamOrder+ ( StreamOrder+ ( ..,+ StreamOrder_ORIGINAL,+ StreamOrder_VIDEO_BITRATE_ASCENDING,+ StreamOrder_VIDEO_BITRATE_DESCENDING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype StreamOrder = StreamOrder'+ { fromStreamOrder ::+ 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 StreamOrder_ORIGINAL :: StreamOrder+pattern StreamOrder_ORIGINAL = StreamOrder' "ORIGINAL"++pattern StreamOrder_VIDEO_BITRATE_ASCENDING :: StreamOrder+pattern StreamOrder_VIDEO_BITRATE_ASCENDING = StreamOrder' "VIDEO_BITRATE_ASCENDING"++pattern StreamOrder_VIDEO_BITRATE_DESCENDING :: StreamOrder+pattern StreamOrder_VIDEO_BITRATE_DESCENDING = StreamOrder' "VIDEO_BITRATE_DESCENDING"++{-# COMPLETE+ StreamOrder_ORIGINAL,+ StreamOrder_VIDEO_BITRATE_ASCENDING,+ StreamOrder_VIDEO_BITRATE_DESCENDING,+ StreamOrder'+ #-}
+ gen/Amazonka/MediaPackageVOD/Types/StreamSelection.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.MediaPackageVOD.Types.StreamSelection+-- Copyright : (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.MediaPackageVOD.Types.StreamSelection where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types.StreamOrder+import qualified Amazonka.Prelude as Prelude++-- | A StreamSelection configuration.+--+-- /See:/ 'newStreamSelection' smart constructor.+data StreamSelection = StreamSelection'+ { -- | The maximum video bitrate (bps) to include in output.+ maxVideoBitsPerSecond :: Prelude.Maybe Prelude.Int,+ -- | The minimum video bitrate (bps) to include in output.+ minVideoBitsPerSecond :: Prelude.Maybe Prelude.Int,+ -- | A directive that determines the order of streams in the output.+ streamOrder :: Prelude.Maybe StreamOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StreamSelection' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxVideoBitsPerSecond', 'streamSelection_maxVideoBitsPerSecond' - The maximum video bitrate (bps) to include in output.+--+-- 'minVideoBitsPerSecond', 'streamSelection_minVideoBitsPerSecond' - The minimum video bitrate (bps) to include in output.+--+-- 'streamOrder', 'streamSelection_streamOrder' - A directive that determines the order of streams in the output.+newStreamSelection ::+ StreamSelection+newStreamSelection =+ StreamSelection'+ { maxVideoBitsPerSecond =+ Prelude.Nothing,+ minVideoBitsPerSecond = Prelude.Nothing,+ streamOrder = Prelude.Nothing+ }++-- | The maximum video bitrate (bps) to include in output.+streamSelection_maxVideoBitsPerSecond :: Lens.Lens' StreamSelection (Prelude.Maybe Prelude.Int)+streamSelection_maxVideoBitsPerSecond = Lens.lens (\StreamSelection' {maxVideoBitsPerSecond} -> maxVideoBitsPerSecond) (\s@StreamSelection' {} a -> s {maxVideoBitsPerSecond = a} :: StreamSelection)++-- | The minimum video bitrate (bps) to include in output.+streamSelection_minVideoBitsPerSecond :: Lens.Lens' StreamSelection (Prelude.Maybe Prelude.Int)+streamSelection_minVideoBitsPerSecond = Lens.lens (\StreamSelection' {minVideoBitsPerSecond} -> minVideoBitsPerSecond) (\s@StreamSelection' {} a -> s {minVideoBitsPerSecond = a} :: StreamSelection)++-- | A directive that determines the order of streams in the output.+streamSelection_streamOrder :: Lens.Lens' StreamSelection (Prelude.Maybe StreamOrder)+streamSelection_streamOrder = Lens.lens (\StreamSelection' {streamOrder} -> streamOrder) (\s@StreamSelection' {} a -> s {streamOrder = a} :: StreamSelection)++instance Data.FromJSON StreamSelection where+ parseJSON =+ Data.withObject+ "StreamSelection"+ ( \x ->+ StreamSelection'+ Prelude.<$> (x Data..:? "maxVideoBitsPerSecond")+ Prelude.<*> (x Data..:? "minVideoBitsPerSecond")+ Prelude.<*> (x Data..:? "streamOrder")+ )++instance Prelude.Hashable StreamSelection where+ hashWithSalt _salt StreamSelection' {..} =+ _salt+ `Prelude.hashWithSalt` maxVideoBitsPerSecond+ `Prelude.hashWithSalt` minVideoBitsPerSecond+ `Prelude.hashWithSalt` streamOrder++instance Prelude.NFData StreamSelection where+ rnf StreamSelection' {..} =+ Prelude.rnf maxVideoBitsPerSecond+ `Prelude.seq` Prelude.rnf minVideoBitsPerSecond+ `Prelude.seq` Prelude.rnf streamOrder++instance Data.ToJSON StreamSelection where+ toJSON StreamSelection' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxVideoBitsPerSecond" Data..=)+ Prelude.<$> maxVideoBitsPerSecond,+ ("minVideoBitsPerSecond" Data..=)+ Prelude.<$> minVideoBitsPerSecond,+ ("streamOrder" Data..=) Prelude.<$> streamOrder+ ]+ )
+ gen/Amazonka/MediaPackageVOD/UntagResource.hs view
@@ -0,0 +1,144 @@+{-# 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.MediaPackageVOD.UntagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes tags from the specified resource. You can specify one or more+-- tags to remove.+module Amazonka.MediaPackageVOD.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_tagKeys,+ untagResource_resourceArn,++ -- * 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.MediaPackageVOD.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'+ { -- | A comma-separated list of the tag keys to remove from the resource.+ tagKeys :: [Prelude.Text],+ -- | The Amazon Resource Name (ARN) for the resource. You can get this from+ -- the response to any request to the resource.+ resourceArn :: 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:+--+-- 'tagKeys', 'untagResource_tagKeys' - A comma-separated list of the tag keys to remove from the resource.+--+-- 'resourceArn', 'untagResource_resourceArn' - The Amazon Resource Name (ARN) for the resource. You can get this from+-- the response to any request to the resource.+newUntagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceArn_ =+ UntagResource'+ { tagKeys = Prelude.mempty,+ resourceArn = pResourceArn_+ }++-- | A comma-separated list of the tag keys to remove from the resource.+untagResource_tagKeys :: Lens.Lens' UntagResource [Prelude.Text]+untagResource_tagKeys = Lens.lens (\UntagResource' {tagKeys} -> tagKeys) (\s@UntagResource' {} a -> s {tagKeys = a} :: UntagResource) Prelude.. Lens.coerced++-- | The Amazon Resource Name (ARN) for the resource. You can get this from+-- the response to any request to the resource.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++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` tagKeys+ `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData UntagResource where+ rnf UntagResource' {..} =+ Prelude.rnf tagKeys+ `Prelude.seq` Prelude.rnf resourceArn++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/MediaPackageVOD/UpdatePackagingGroup.hs view
@@ -0,0 +1,256 @@+{-# 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.MediaPackageVOD.UpdatePackagingGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates a specific packaging group. You can\'t change the id attribute+-- or any other system-generated attributes.+module Amazonka.MediaPackageVOD.UpdatePackagingGroup+ ( -- * Creating a Request+ UpdatePackagingGroup (..),+ newUpdatePackagingGroup,++ -- * Request Lenses+ updatePackagingGroup_authorization,+ updatePackagingGroup_id,++ -- * Destructuring the Response+ UpdatePackagingGroupResponse (..),+ newUpdatePackagingGroupResponse,++ -- * Response Lenses+ updatePackagingGroupResponse_approximateAssetCount,+ updatePackagingGroupResponse_arn,+ updatePackagingGroupResponse_authorization,+ updatePackagingGroupResponse_domainName,+ updatePackagingGroupResponse_egressAccessLogs,+ updatePackagingGroupResponse_id,+ updatePackagingGroupResponse_tags,+ updatePackagingGroupResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | A MediaPackage VOD PackagingGroup resource configuration.+--+-- /See:/ 'newUpdatePackagingGroup' smart constructor.+data UpdatePackagingGroup = UpdatePackagingGroup'+ { authorization :: Prelude.Maybe Authorization,+ -- | The ID of a MediaPackage VOD PackagingGroup resource.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdatePackagingGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'authorization', 'updatePackagingGroup_authorization' - Undocumented member.+--+-- 'id', 'updatePackagingGroup_id' - The ID of a MediaPackage VOD PackagingGroup resource.+newUpdatePackagingGroup ::+ -- | 'id'+ Prelude.Text ->+ UpdatePackagingGroup+newUpdatePackagingGroup pId_ =+ UpdatePackagingGroup'+ { authorization =+ Prelude.Nothing,+ id = pId_+ }++-- | Undocumented member.+updatePackagingGroup_authorization :: Lens.Lens' UpdatePackagingGroup (Prelude.Maybe Authorization)+updatePackagingGroup_authorization = Lens.lens (\UpdatePackagingGroup' {authorization} -> authorization) (\s@UpdatePackagingGroup' {} a -> s {authorization = a} :: UpdatePackagingGroup)++-- | The ID of a MediaPackage VOD PackagingGroup resource.+updatePackagingGroup_id :: Lens.Lens' UpdatePackagingGroup Prelude.Text+updatePackagingGroup_id = Lens.lens (\UpdatePackagingGroup' {id} -> id) (\s@UpdatePackagingGroup' {} a -> s {id = a} :: UpdatePackagingGroup)++instance Core.AWSRequest UpdatePackagingGroup where+ type+ AWSResponse UpdatePackagingGroup =+ UpdatePackagingGroupResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdatePackagingGroupResponse'+ Prelude.<$> (x Data..?> "approximateAssetCount")+ Prelude.<*> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "authorization")+ Prelude.<*> (x Data..?> "domainName")+ Prelude.<*> (x Data..?> "egressAccessLogs")+ Prelude.<*> (x Data..?> "id")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdatePackagingGroup where+ hashWithSalt _salt UpdatePackagingGroup' {..} =+ _salt+ `Prelude.hashWithSalt` authorization+ `Prelude.hashWithSalt` id++instance Prelude.NFData UpdatePackagingGroup where+ rnf UpdatePackagingGroup' {..} =+ Prelude.rnf authorization+ `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders UpdatePackagingGroup where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdatePackagingGroup where+ toJSON UpdatePackagingGroup' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("authorization" Data..=)+ Prelude.<$> authorization+ ]+ )++instance Data.ToPath UpdatePackagingGroup where+ toPath UpdatePackagingGroup' {..} =+ Prelude.mconcat+ ["/packaging_groups/", Data.toBS id]++instance Data.ToQuery UpdatePackagingGroup where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdatePackagingGroupResponse' smart constructor.+data UpdatePackagingGroupResponse = UpdatePackagingGroupResponse'+ { -- | The approximate asset count of the PackagingGroup.+ approximateAssetCount :: Prelude.Maybe Prelude.Int,+ -- | The ARN of the PackagingGroup.+ arn :: Prelude.Maybe Prelude.Text,+ authorization :: Prelude.Maybe Authorization,+ -- | The fully qualified domain name for Assets in the PackagingGroup.+ domainName :: Prelude.Maybe Prelude.Text,+ egressAccessLogs :: Prelude.Maybe EgressAccessLogs,+ -- | The ID of the PackagingGroup.+ id :: Prelude.Maybe Prelude.Text,+ 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 'UpdatePackagingGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'approximateAssetCount', 'updatePackagingGroupResponse_approximateAssetCount' - The approximate asset count of the PackagingGroup.+--+-- 'arn', 'updatePackagingGroupResponse_arn' - The ARN of the PackagingGroup.+--+-- 'authorization', 'updatePackagingGroupResponse_authorization' - Undocumented member.+--+-- 'domainName', 'updatePackagingGroupResponse_domainName' - The fully qualified domain name for Assets in the PackagingGroup.+--+-- 'egressAccessLogs', 'updatePackagingGroupResponse_egressAccessLogs' - Undocumented member.+--+-- 'id', 'updatePackagingGroupResponse_id' - The ID of the PackagingGroup.+--+-- 'tags', 'updatePackagingGroupResponse_tags' - Undocumented member.+--+-- 'httpStatus', 'updatePackagingGroupResponse_httpStatus' - The response's http status code.+newUpdatePackagingGroupResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdatePackagingGroupResponse+newUpdatePackagingGroupResponse pHttpStatus_ =+ UpdatePackagingGroupResponse'+ { approximateAssetCount =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ authorization = Prelude.Nothing,+ domainName = Prelude.Nothing,+ egressAccessLogs = Prelude.Nothing,+ id = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The approximate asset count of the PackagingGroup.+updatePackagingGroupResponse_approximateAssetCount :: Lens.Lens' UpdatePackagingGroupResponse (Prelude.Maybe Prelude.Int)+updatePackagingGroupResponse_approximateAssetCount = Lens.lens (\UpdatePackagingGroupResponse' {approximateAssetCount} -> approximateAssetCount) (\s@UpdatePackagingGroupResponse' {} a -> s {approximateAssetCount = a} :: UpdatePackagingGroupResponse)++-- | The ARN of the PackagingGroup.+updatePackagingGroupResponse_arn :: Lens.Lens' UpdatePackagingGroupResponse (Prelude.Maybe Prelude.Text)+updatePackagingGroupResponse_arn = Lens.lens (\UpdatePackagingGroupResponse' {arn} -> arn) (\s@UpdatePackagingGroupResponse' {} a -> s {arn = a} :: UpdatePackagingGroupResponse)++-- | Undocumented member.+updatePackagingGroupResponse_authorization :: Lens.Lens' UpdatePackagingGroupResponse (Prelude.Maybe Authorization)+updatePackagingGroupResponse_authorization = Lens.lens (\UpdatePackagingGroupResponse' {authorization} -> authorization) (\s@UpdatePackagingGroupResponse' {} a -> s {authorization = a} :: UpdatePackagingGroupResponse)++-- | The fully qualified domain name for Assets in the PackagingGroup.+updatePackagingGroupResponse_domainName :: Lens.Lens' UpdatePackagingGroupResponse (Prelude.Maybe Prelude.Text)+updatePackagingGroupResponse_domainName = Lens.lens (\UpdatePackagingGroupResponse' {domainName} -> domainName) (\s@UpdatePackagingGroupResponse' {} a -> s {domainName = a} :: UpdatePackagingGroupResponse)++-- | Undocumented member.+updatePackagingGroupResponse_egressAccessLogs :: Lens.Lens' UpdatePackagingGroupResponse (Prelude.Maybe EgressAccessLogs)+updatePackagingGroupResponse_egressAccessLogs = Lens.lens (\UpdatePackagingGroupResponse' {egressAccessLogs} -> egressAccessLogs) (\s@UpdatePackagingGroupResponse' {} a -> s {egressAccessLogs = a} :: UpdatePackagingGroupResponse)++-- | The ID of the PackagingGroup.+updatePackagingGroupResponse_id :: Lens.Lens' UpdatePackagingGroupResponse (Prelude.Maybe Prelude.Text)+updatePackagingGroupResponse_id = Lens.lens (\UpdatePackagingGroupResponse' {id} -> id) (\s@UpdatePackagingGroupResponse' {} a -> s {id = a} :: UpdatePackagingGroupResponse)++-- | Undocumented member.+updatePackagingGroupResponse_tags :: Lens.Lens' UpdatePackagingGroupResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+updatePackagingGroupResponse_tags = Lens.lens (\UpdatePackagingGroupResponse' {tags} -> tags) (\s@UpdatePackagingGroupResponse' {} a -> s {tags = a} :: UpdatePackagingGroupResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+updatePackagingGroupResponse_httpStatus :: Lens.Lens' UpdatePackagingGroupResponse Prelude.Int+updatePackagingGroupResponse_httpStatus = Lens.lens (\UpdatePackagingGroupResponse' {httpStatus} -> httpStatus) (\s@UpdatePackagingGroupResponse' {} a -> s {httpStatus = a} :: UpdatePackagingGroupResponse)++instance Prelude.NFData UpdatePackagingGroupResponse where+ rnf UpdatePackagingGroupResponse' {..} =+ Prelude.rnf approximateAssetCount+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf authorization+ `Prelude.seq` Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf egressAccessLogs+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MediaPackageVOD/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.MediaPackageVOD.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.MediaPackageVOD.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MediaPackageVOD.Lens+import Amazonka.MediaPackageVOD.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.MediaPackageVOD+import Test.Amazonka.MediaPackageVOD.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "MediaPackageVOD"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/MediaPackageVOD.hs view
@@ -0,0 +1,378 @@+{-# 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.MediaPackageVOD+-- Copyright : (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.MediaPackageVOD where++import Amazonka.MediaPackageVOD+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.MediaPackageVOD.Internal+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"+-- [ requestConfigureLogs $+-- newConfigureLogs+--+-- , requestCreateAsset $+-- newCreateAsset+--+-- , requestCreatePackagingConfiguration $+-- newCreatePackagingConfiguration+--+-- , requestCreatePackagingGroup $+-- newCreatePackagingGroup+--+-- , requestDeleteAsset $+-- newDeleteAsset+--+-- , requestDeletePackagingConfiguration $+-- newDeletePackagingConfiguration+--+-- , requestDeletePackagingGroup $+-- newDeletePackagingGroup+--+-- , requestDescribeAsset $+-- newDescribeAsset+--+-- , requestDescribePackagingConfiguration $+-- newDescribePackagingConfiguration+--+-- , requestDescribePackagingGroup $+-- newDescribePackagingGroup+--+-- , requestListAssets $+-- newListAssets+--+-- , requestListPackagingConfigurations $+-- newListPackagingConfigurations+--+-- , requestListPackagingGroups $+-- newListPackagingGroups+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdatePackagingGroup $+-- newUpdatePackagingGroup+--+-- ]++-- , testGroup "response"+-- [ responseConfigureLogs $+-- newConfigureLogsResponse+--+-- , responseCreateAsset $+-- newCreateAssetResponse+--+-- , responseCreatePackagingConfiguration $+-- newCreatePackagingConfigurationResponse+--+-- , responseCreatePackagingGroup $+-- newCreatePackagingGroupResponse+--+-- , responseDeleteAsset $+-- newDeleteAssetResponse+--+-- , responseDeletePackagingConfiguration $+-- newDeletePackagingConfigurationResponse+--+-- , responseDeletePackagingGroup $+-- newDeletePackagingGroupResponse+--+-- , responseDescribeAsset $+-- newDescribeAssetResponse+--+-- , responseDescribePackagingConfiguration $+-- newDescribePackagingConfigurationResponse+--+-- , responseDescribePackagingGroup $+-- newDescribePackagingGroupResponse+--+-- , responseListAssets $+-- newListAssetsResponse+--+-- , responseListPackagingConfigurations $+-- newListPackagingConfigurationsResponse+--+-- , responseListPackagingGroups $+-- newListPackagingGroupsResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdatePackagingGroup $+-- newUpdatePackagingGroupResponse+--+-- ]+-- ]++-- Requests++requestConfigureLogs :: ConfigureLogs -> TestTree+requestConfigureLogs =+ req+ "ConfigureLogs"+ "fixture/ConfigureLogs.yaml"++requestCreateAsset :: CreateAsset -> TestTree+requestCreateAsset =+ req+ "CreateAsset"+ "fixture/CreateAsset.yaml"++requestCreatePackagingConfiguration :: CreatePackagingConfiguration -> TestTree+requestCreatePackagingConfiguration =+ req+ "CreatePackagingConfiguration"+ "fixture/CreatePackagingConfiguration.yaml"++requestCreatePackagingGroup :: CreatePackagingGroup -> TestTree+requestCreatePackagingGroup =+ req+ "CreatePackagingGroup"+ "fixture/CreatePackagingGroup.yaml"++requestDeleteAsset :: DeleteAsset -> TestTree+requestDeleteAsset =+ req+ "DeleteAsset"+ "fixture/DeleteAsset.yaml"++requestDeletePackagingConfiguration :: DeletePackagingConfiguration -> TestTree+requestDeletePackagingConfiguration =+ req+ "DeletePackagingConfiguration"+ "fixture/DeletePackagingConfiguration.yaml"++requestDeletePackagingGroup :: DeletePackagingGroup -> TestTree+requestDeletePackagingGroup =+ req+ "DeletePackagingGroup"+ "fixture/DeletePackagingGroup.yaml"++requestDescribeAsset :: DescribeAsset -> TestTree+requestDescribeAsset =+ req+ "DescribeAsset"+ "fixture/DescribeAsset.yaml"++requestDescribePackagingConfiguration :: DescribePackagingConfiguration -> TestTree+requestDescribePackagingConfiguration =+ req+ "DescribePackagingConfiguration"+ "fixture/DescribePackagingConfiguration.yaml"++requestDescribePackagingGroup :: DescribePackagingGroup -> TestTree+requestDescribePackagingGroup =+ req+ "DescribePackagingGroup"+ "fixture/DescribePackagingGroup.yaml"++requestListAssets :: ListAssets -> TestTree+requestListAssets =+ req+ "ListAssets"+ "fixture/ListAssets.yaml"++requestListPackagingConfigurations :: ListPackagingConfigurations -> TestTree+requestListPackagingConfigurations =+ req+ "ListPackagingConfigurations"+ "fixture/ListPackagingConfigurations.yaml"++requestListPackagingGroups :: ListPackagingGroups -> TestTree+requestListPackagingGroups =+ req+ "ListPackagingGroups"+ "fixture/ListPackagingGroups.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdatePackagingGroup :: UpdatePackagingGroup -> TestTree+requestUpdatePackagingGroup =+ req+ "UpdatePackagingGroup"+ "fixture/UpdatePackagingGroup.yaml"++-- Responses++responseConfigureLogs :: ConfigureLogsResponse -> TestTree+responseConfigureLogs =+ res+ "ConfigureLogsResponse"+ "fixture/ConfigureLogsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ConfigureLogs)++responseCreateAsset :: CreateAssetResponse -> TestTree+responseCreateAsset =+ res+ "CreateAssetResponse"+ "fixture/CreateAssetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateAsset)++responseCreatePackagingConfiguration :: CreatePackagingConfigurationResponse -> TestTree+responseCreatePackagingConfiguration =+ res+ "CreatePackagingConfigurationResponse"+ "fixture/CreatePackagingConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreatePackagingConfiguration)++responseCreatePackagingGroup :: CreatePackagingGroupResponse -> TestTree+responseCreatePackagingGroup =+ res+ "CreatePackagingGroupResponse"+ "fixture/CreatePackagingGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreatePackagingGroup)++responseDeleteAsset :: DeleteAssetResponse -> TestTree+responseDeleteAsset =+ res+ "DeleteAssetResponse"+ "fixture/DeleteAssetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteAsset)++responseDeletePackagingConfiguration :: DeletePackagingConfigurationResponse -> TestTree+responseDeletePackagingConfiguration =+ res+ "DeletePackagingConfigurationResponse"+ "fixture/DeletePackagingConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeletePackagingConfiguration)++responseDeletePackagingGroup :: DeletePackagingGroupResponse -> TestTree+responseDeletePackagingGroup =+ res+ "DeletePackagingGroupResponse"+ "fixture/DeletePackagingGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeletePackagingGroup)++responseDescribeAsset :: DescribeAssetResponse -> TestTree+responseDescribeAsset =+ res+ "DescribeAssetResponse"+ "fixture/DescribeAssetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeAsset)++responseDescribePackagingConfiguration :: DescribePackagingConfigurationResponse -> TestTree+responseDescribePackagingConfiguration =+ res+ "DescribePackagingConfigurationResponse"+ "fixture/DescribePackagingConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribePackagingConfiguration)++responseDescribePackagingGroup :: DescribePackagingGroupResponse -> TestTree+responseDescribePackagingGroup =+ res+ "DescribePackagingGroupResponse"+ "fixture/DescribePackagingGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribePackagingGroup)++responseListAssets :: ListAssetsResponse -> TestTree+responseListAssets =+ res+ "ListAssetsResponse"+ "fixture/ListAssetsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAssets)++responseListPackagingConfigurations :: ListPackagingConfigurationsResponse -> TestTree+responseListPackagingConfigurations =+ res+ "ListPackagingConfigurationsResponse"+ "fixture/ListPackagingConfigurationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPackagingConfigurations)++responseListPackagingGroups :: ListPackagingGroupsResponse -> TestTree+responseListPackagingGroups =+ res+ "ListPackagingGroupsResponse"+ "fixture/ListPackagingGroupsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPackagingGroups)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++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)++responseUpdatePackagingGroup :: UpdatePackagingGroupResponse -> TestTree+responseUpdatePackagingGroup =+ res+ "UpdatePackagingGroupResponse"+ "fixture/UpdatePackagingGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdatePackagingGroup)
+ test/Test/Amazonka/MediaPackageVOD.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.MediaPackageVOD+-- Copyright : (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.MediaPackageVOD+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/MediaPackageVOD/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.MediaPackageVOD.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.MediaPackageVOD.Internal where