amazonka-servicecatalog (empty) → 1.4.4
raw patch · 47 files changed
+4635/−0 lines, 47 filesdep +amazonka-coredep +amazonka-servicecatalogdep +amazonka-testsetup-changed
Dependencies added: amazonka-core, amazonka-servicecatalog, amazonka-test, base, bytestring, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +52/−0
- Setup.hs +2/−0
- amazonka-servicecatalog.cabal +102/−0
- fixture/DescribeProduct.yaml +0/−0
- fixture/DescribeProductResponse.proto +0/−0
- fixture/DescribeProductView.yaml +0/−0
- fixture/DescribeProductViewResponse.proto +0/−0
- fixture/DescribeProvisioningParameters.yaml +0/−0
- fixture/DescribeProvisioningParametersResponse.proto +0/−0
- fixture/DescribeRecord.yaml +0/−0
- fixture/DescribeRecordResponse.proto +0/−0
- fixture/ListLaunchPaths.yaml +0/−0
- fixture/ListLaunchPathsResponse.proto +0/−0
- fixture/ListRecordHistory.yaml +0/−0
- fixture/ListRecordHistoryResponse.proto +0/−0
- fixture/ProvisionProduct.yaml +0/−0
- fixture/ProvisionProductResponse.proto +0/−0
- fixture/ScanProvisionedProducts.yaml +0/−0
- fixture/ScanProvisionedProductsResponse.proto +0/−0
- fixture/SearchProducts.yaml +0/−0
- fixture/SearchProductsResponse.proto +0/−0
- fixture/TerminateProvisionedProduct.yaml +0/−0
- fixture/TerminateProvisionedProductResponse.proto +0/−0
- fixture/UpdateProvisionedProduct.yaml +0/−0
- fixture/UpdateProvisionedProductResponse.proto +0/−0
- gen/Network/AWS/ServiceCatalog.hs +277/−0
- gen/Network/AWS/ServiceCatalog/DescribeProduct.hs +163/−0
- gen/Network/AWS/ServiceCatalog/DescribeProductView.hs +164/−0
- gen/Network/AWS/ServiceCatalog/DescribeProvisioningParameters.hs +198/−0
- gen/Network/AWS/ServiceCatalog/DescribeRecord.hs +190/−0
- gen/Network/AWS/ServiceCatalog/ListLaunchPaths.hs +181/−0
- gen/Network/AWS/ServiceCatalog/ListRecordHistory.hs +180/−0
- gen/Network/AWS/ServiceCatalog/ProvisionProduct.hs +230/−0
- gen/Network/AWS/ServiceCatalog/ScanProvisionedProducts.hs +171/−0
- gen/Network/AWS/ServiceCatalog/SearchProducts.hs +212/−0
- gen/Network/AWS/ServiceCatalog/TerminateProvisionedProduct.hs +187/−0
- gen/Network/AWS/ServiceCatalog/Types.hs +227/−0
- gen/Network/AWS/ServiceCatalog/Types/Product.hs +1063/−0
- gen/Network/AWS/ServiceCatalog/Types/Sum.hs +133/−0
- gen/Network/AWS/ServiceCatalog/UpdateProvisionedProduct.hs +217/−0
- gen/Network/AWS/ServiceCatalog/Waiters.hs +21/−0
- src/.gitkeep +0/−0
- test/Main.hs +21/−0
- test/Test/AWS/Gen/ServiceCatalog.hs +237/−0
- test/Test/AWS/ServiceCatalog.hs +23/−0
- test/Test/AWS/ServiceCatalog/Internal.hs +17/−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,52 @@+# Amazon Service Catalog SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version++`1.4.4`+++## Description++AWS Service Catalog++__Overview__++<https://aws.amazon.com/servicecatalog/ AWS Service Catalog> allows organizations to create and manage catalogs of IT services that are approved for use on AWS. This documentation provides reference material for the AWS Service Catalog end user API. To get the most out of this documentation, you need to be familiar with the terminology discussed in <http://docs.aws.amazon.com/servicecatalog/latest/userguide/what-is_concepts.html AWS Service Catalog Concepts>.++/Additional Resources/++- <http://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html AWS Service Catalog Administrator Guide>++- <http://docs.aws.amazon.com/servicecatalog/latest/userguide/introduction.html AWS Service Catalog User Guide>++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-servicecatalog)+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 and sending requests.++Use of lenses is required for constructing and manipulating types.+This is due to the amount 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).++## 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-servicecatalog` 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.
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ amazonka-servicecatalog.cabal view
@@ -0,0 +1,102 @@+name: amazonka-servicecatalog+version: 1.4.4+synopsis: Amazon Service Catalog SDK.+homepage: https://github.com/brendanhay/amazonka+bug-reports: https://github.com/brendanhay/amazonka/issues+license: OtherLicense+license-file: LICENSE+author: Brendan Hay+maintainer: Brendan Hay <brendan.g.hay@gmail.com>+copyright: Copyright (c) 2013-2016 Brendan Hay+category: Network, AWS, Cloud, Distributed Computing+build-type: Simple+cabal-version: >= 1.10+extra-source-files: README.md fixture/*.yaml fixture/*.proto src/.gitkeep+description:+ AWS Service Catalog++ __Overview__++ <https://aws.amazon.com/servicecatalog/ AWS Service Catalog> allows organizations to create and manage catalogs of IT services that are approved for use on AWS. This documentation provides reference material for the AWS Service Catalog end user API. To get the most out of this documentation, you need to be familiar with the terminology discussed in <http://docs.aws.amazon.com/servicecatalog/latest/userguide/what-is_concepts.html AWS Service Catalog Concepts>.++ /Additional Resources/++ - <http://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html AWS Service Catalog Administrator Guide>++ - <http://docs.aws.amazon.com/servicecatalog/latest/userguide/introduction.html AWS Service Catalog User Guide>+ .+ 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 and sending requests.+ .+ Use of lenses is required for constructing and manipulating types.+ This is due to the amount 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+ such as <http://hackage.haskell.org/package/lens lens> or+ <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Network.AWS.ServiceCatalog" or <https://aws.amazon.com/documentation/ the AWS Documentation>+ to get started.++source-repository head+ type: git+ location: git://github.com/brendanhay/amazonka.git++library+ default-language: Haskell2010+ hs-source-dirs: src gen++ ghc-options: -Wall++ exposed-modules:+ Network.AWS.ServiceCatalog+ , Network.AWS.ServiceCatalog.DescribeProduct+ , Network.AWS.ServiceCatalog.DescribeProductView+ , Network.AWS.ServiceCatalog.DescribeProvisioningParameters+ , Network.AWS.ServiceCatalog.DescribeRecord+ , Network.AWS.ServiceCatalog.ListLaunchPaths+ , Network.AWS.ServiceCatalog.ListRecordHistory+ , Network.AWS.ServiceCatalog.ProvisionProduct+ , Network.AWS.ServiceCatalog.ScanProvisionedProducts+ , Network.AWS.ServiceCatalog.SearchProducts+ , Network.AWS.ServiceCatalog.TerminateProvisionedProduct+ , Network.AWS.ServiceCatalog.Types+ , Network.AWS.ServiceCatalog.UpdateProvisionedProduct+ , Network.AWS.ServiceCatalog.Waiters++ other-modules:+ Network.AWS.ServiceCatalog.Types.Product+ , Network.AWS.ServiceCatalog.Types.Sum++ build-depends:+ amazonka-core == 1.4.4.*+ , base >= 4.7 && < 5++test-suite amazonka-servicecatalog-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.AWS.ServiceCatalog+ , Test.AWS.Gen.ServiceCatalog+ , Test.AWS.ServiceCatalog.Internal++ build-depends:+ amazonka-core == 1.4.4.*+ , amazonka-test == 1.4.4.*+ , amazonka-servicecatalog == 1.4.4.*+ , base+ , bytestring+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/DescribeProduct.yaml view
+ fixture/DescribeProductResponse.proto view
+ fixture/DescribeProductView.yaml view
+ fixture/DescribeProductViewResponse.proto view
+ fixture/DescribeProvisioningParameters.yaml view
+ fixture/DescribeProvisioningParametersResponse.proto view
+ fixture/DescribeRecord.yaml view
+ fixture/DescribeRecordResponse.proto view
+ fixture/ListLaunchPaths.yaml view
+ fixture/ListLaunchPathsResponse.proto view
+ fixture/ListRecordHistory.yaml view
+ fixture/ListRecordHistoryResponse.proto view
+ fixture/ProvisionProduct.yaml view
+ fixture/ProvisionProductResponse.proto view
+ fixture/ScanProvisionedProducts.yaml view
+ fixture/ScanProvisionedProductsResponse.proto view
+ fixture/SearchProducts.yaml view
+ fixture/SearchProductsResponse.proto view
+ fixture/TerminateProvisionedProduct.yaml view
+ fixture/TerminateProvisionedProductResponse.proto view
+ fixture/UpdateProvisionedProduct.yaml view
+ fixture/UpdateProvisionedProductResponse.proto view
+ gen/Network/AWS/ServiceCatalog.hs view
@@ -0,0 +1,277 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- AWS Service Catalog+--+-- __Overview__+--+-- <https://aws.amazon.com/servicecatalog/ AWS Service Catalog> allows organizations to create and manage catalogs of IT services that are approved for use on AWS. This documentation provides reference material for the AWS Service Catalog end user API. To get the most out of this documentation, you need to be familiar with the terminology discussed in <http://docs.aws.amazon.com/servicecatalog/latest/userguide/what-is_concepts.html AWS Service Catalog Concepts>.+--+-- /Additional Resources/+--+-- - <http://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html AWS Service Catalog Administrator Guide>+--+-- - <http://docs.aws.amazon.com/servicecatalog/latest/userguide/introduction.html AWS Service Catalog User Guide>+--+module Network.AWS.ServiceCatalog+ (+ -- * Service Configuration+ serviceCatalog++ -- * Errors+ -- $errors++ -- ** InvalidParametersException+ , _InvalidParametersException++ -- ** DuplicateResourceException+ , _DuplicateResourceException++ -- ** ResourceNotFoundException+ , _ResourceNotFoundException++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** TerminateProvisionedProduct+ , module Network.AWS.ServiceCatalog.TerminateProvisionedProduct++ -- ** UpdateProvisionedProduct+ , module Network.AWS.ServiceCatalog.UpdateProvisionedProduct++ -- ** ListRecordHistory+ , module Network.AWS.ServiceCatalog.ListRecordHistory++ -- ** DescribeRecord+ , module Network.AWS.ServiceCatalog.DescribeRecord++ -- ** DescribeProductView+ , module Network.AWS.ServiceCatalog.DescribeProductView++ -- ** SearchProducts+ , module Network.AWS.ServiceCatalog.SearchProducts++ -- ** DescribeProduct+ , module Network.AWS.ServiceCatalog.DescribeProduct++ -- ** ScanProvisionedProducts+ , module Network.AWS.ServiceCatalog.ScanProvisionedProducts++ -- ** ProvisionProduct+ , module Network.AWS.ServiceCatalog.ProvisionProduct++ -- ** DescribeProvisioningParameters+ , module Network.AWS.ServiceCatalog.DescribeProvisioningParameters++ -- ** ListLaunchPaths+ , module Network.AWS.ServiceCatalog.ListLaunchPaths++ -- * Types++ -- ** ProductViewFilterBy+ , ProductViewFilterBy (..)++ -- ** ProductViewSortBy+ , ProductViewSortBy (..)++ -- ** RecordStatus+ , RecordStatus (..)++ -- ** SortOrder+ , SortOrder (..)++ -- ** ConstraintSummary+ , ConstraintSummary+ , constraintSummary+ , csType+ , csDescription++ -- ** LaunchPathSummary+ , LaunchPathSummary+ , launchPathSummary+ , lpsConstraintSummaries+ , lpsName+ , lpsId+ , lpsTags++ -- ** ListRecordHistorySearchFilter+ , ListRecordHistorySearchFilter+ , listRecordHistorySearchFilter+ , lrhsfValue+ , lrhsfKey++ -- ** ParameterConstraints+ , ParameterConstraints+ , parameterConstraints+ , pcAllowedValues++ -- ** ProductViewAggregationValue+ , ProductViewAggregationValue+ , productViewAggregationValue+ , pvavValue+ , pvavApproximateCount++ -- ** ProductViewSummary+ , ProductViewSummary+ , productViewSummary+ , pvsOwner+ , pvsSupportURL+ , pvsShortDescription+ , pvsHasDefaultPath+ , pvsDistributor+ , pvsName+ , pvsId+ , pvsType+ , pvsSupportEmail+ , pvsProductId+ , pvsSupportDescription++ -- ** ProvisionedProductDetail+ , ProvisionedProductDetail+ , provisionedProductDetail+ , ppdIdempotencyToken+ , ppdStatus+ , ppdARN+ , ppdCreatedTime+ , ppdStatusMessage+ , ppdName+ , ppdLastRecordId+ , ppdId+ , ppdType++ -- ** ProvisioningArtifact+ , ProvisioningArtifact+ , provisioningArtifact+ , paCreatedTime+ , paName+ , paId+ , paDescription++ -- ** ProvisioningArtifactParameter+ , ProvisioningArtifactParameter+ , provisioningArtifactParameter+ , papIsNoEcho+ , papParameterKey+ , papParameterType+ , papParameterConstraints+ , papDefaultValue+ , papDescription++ -- ** ProvisioningParameter+ , ProvisioningParameter+ , provisioningParameter+ , ppValue+ , ppKey++ -- ** RecordDetail+ , RecordDetail+ , recordDetail+ , rdStatus+ , rdRecordTags+ , rdProvisionedProductName+ , rdProvisioningArtifactId+ , rdCreatedTime+ , rdRecordType+ , rdRecordId+ , rdProvisionedProductType+ , rdUpdatedTime+ , rdPathId+ , rdProvisionedProductId+ , rdRecordErrors+ , rdProductId++ -- ** RecordError+ , RecordError+ , recordError+ , reCode+ , reDescription++ -- ** RecordOutput+ , RecordOutput+ , recordOutput+ , roOutputValue+ , roOutputKey+ , roDescription++ -- ** RecordTag+ , RecordTag+ , recordTag+ , rtValue+ , rtKey++ -- ** Tag+ , Tag+ , tag+ , tagValue+ , tagKey++ -- ** UpdateProvisioningParameter+ , UpdateProvisioningParameter+ , updateProvisioningParameter+ , uppValue+ , uppKey+ , uppUsePreviousValue++ -- ** UsageInstruction+ , UsageInstruction+ , usageInstruction+ , uiValue+ , uiType+ ) where++import Network.AWS.ServiceCatalog.DescribeProduct+import Network.AWS.ServiceCatalog.DescribeProductView+import Network.AWS.ServiceCatalog.DescribeProvisioningParameters+import Network.AWS.ServiceCatalog.DescribeRecord+import Network.AWS.ServiceCatalog.ListLaunchPaths+import Network.AWS.ServiceCatalog.ListRecordHistory+import Network.AWS.ServiceCatalog.ProvisionProduct+import Network.AWS.ServiceCatalog.ScanProvisionedProducts+import Network.AWS.ServiceCatalog.SearchProducts+import Network.AWS.ServiceCatalog.TerminateProvisionedProduct+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.UpdateProvisionedProduct+import Network.AWS.ServiceCatalog.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 'ServiceCatalog'.+-}++{- $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/Network/AWS/ServiceCatalog/DescribeProduct.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.DescribeProduct+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about a specified product.+--+-- This operation is functionally identical to < DescribeProductView> except that it takes as input 'ProductId' instead of 'ProductViewId'.+module Network.AWS.ServiceCatalog.DescribeProduct+ (+ -- * Creating a Request+ describeProduct+ , DescribeProduct+ -- * Request Lenses+ , dpAcceptLanguage+ , dpId++ -- * Destructuring the Response+ , describeProductResponse+ , DescribeProductResponse+ -- * Response Lenses+ , dprsProductViewSummary+ , dprsProvisioningArtifacts+ , dprsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'describeProduct' smart constructor.+data DescribeProduct = DescribeProduct'+ { _dpAcceptLanguage :: !(Maybe Text)+ , _dpId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeProduct' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dpAcceptLanguage'+--+-- * 'dpId'+describeProduct+ :: Text -- ^ 'dpId'+ -> DescribeProduct+describeProduct pId_ =+ DescribeProduct'+ { _dpAcceptLanguage = Nothing+ , _dpId = pId_+ }++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+dpAcceptLanguage :: Lens' DescribeProduct (Maybe Text)+dpAcceptLanguage = lens _dpAcceptLanguage (\ s a -> s{_dpAcceptLanguage = a});++-- | The 'ProductId' of the product to describe.+dpId :: Lens' DescribeProduct Text+dpId = lens _dpId (\ s a -> s{_dpId = a});++instance AWSRequest DescribeProduct where+ type Rs DescribeProduct = DescribeProductResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ DescribeProductResponse' <$>+ (x .?> "ProductViewSummary") <*>+ (x .?> "ProvisioningArtifacts" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable DescribeProduct++instance NFData DescribeProduct++instance ToHeaders DescribeProduct where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.DescribeProduct" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON DescribeProduct where+ toJSON DescribeProduct'{..}+ = object+ (catMaybes+ [("AcceptLanguage" .=) <$> _dpAcceptLanguage,+ Just ("Id" .= _dpId)])++instance ToPath DescribeProduct where+ toPath = const "/"++instance ToQuery DescribeProduct where+ toQuery = const mempty++-- | /See:/ 'describeProductResponse' smart constructor.+data DescribeProductResponse = DescribeProductResponse'+ { _dprsProductViewSummary :: !(Maybe ProductViewSummary)+ , _dprsProvisioningArtifacts :: !(Maybe [ProvisioningArtifact])+ , _dprsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeProductResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dprsProductViewSummary'+--+-- * 'dprsProvisioningArtifacts'+--+-- * 'dprsResponseStatus'+describeProductResponse+ :: Int -- ^ 'dprsResponseStatus'+ -> DescribeProductResponse+describeProductResponse pResponseStatus_ =+ DescribeProductResponse'+ { _dprsProductViewSummary = Nothing+ , _dprsProvisioningArtifacts = Nothing+ , _dprsResponseStatus = pResponseStatus_+ }++-- | The summary metadata about the specified product.+dprsProductViewSummary :: Lens' DescribeProductResponse (Maybe ProductViewSummary)+dprsProductViewSummary = lens _dprsProductViewSummary (\ s a -> s{_dprsProductViewSummary = a});++-- | A list of provisioning artifact objects for the specified product. The 'ProvisioningArtifacts' parameter represent the ways the specified product can be provisioned.+dprsProvisioningArtifacts :: Lens' DescribeProductResponse [ProvisioningArtifact]+dprsProvisioningArtifacts = lens _dprsProvisioningArtifacts (\ s a -> s{_dprsProvisioningArtifacts = a}) . _Default . _Coerce;++-- | The response status code.+dprsResponseStatus :: Lens' DescribeProductResponse Int+dprsResponseStatus = lens _dprsResponseStatus (\ s a -> s{_dprsResponseStatus = a});++instance NFData DescribeProductResponse
+ gen/Network/AWS/ServiceCatalog/DescribeProductView.hs view
@@ -0,0 +1,164 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.DescribeProductView+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about a specified product.+--+-- This operation is functionally identical to < DescribeProduct> except that it takes as input 'ProductViewId' instead of 'ProductId'.+module Network.AWS.ServiceCatalog.DescribeProductView+ (+ -- * Creating a Request+ describeProductView+ , DescribeProductView+ -- * Request Lenses+ , dpvAcceptLanguage+ , dpvId++ -- * Destructuring the Response+ , describeProductViewResponse+ , DescribeProductViewResponse+ -- * Response Lenses+ , dpvrsProductViewSummary+ , dpvrsProvisioningArtifacts+ , dpvrsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'describeProductView' smart constructor.+data DescribeProductView = DescribeProductView'+ { _dpvAcceptLanguage :: !(Maybe Text)+ , _dpvId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeProductView' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dpvAcceptLanguage'+--+-- * 'dpvId'+describeProductView+ :: Text -- ^ 'dpvId'+ -> DescribeProductView+describeProductView pId_ =+ DescribeProductView'+ { _dpvAcceptLanguage = Nothing+ , _dpvId = pId_+ }++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+dpvAcceptLanguage :: Lens' DescribeProductView (Maybe Text)+dpvAcceptLanguage = lens _dpvAcceptLanguage (\ s a -> s{_dpvAcceptLanguage = a});++-- | The 'ProductViewId' of the product to describe.+dpvId :: Lens' DescribeProductView Text+dpvId = lens _dpvId (\ s a -> s{_dpvId = a});++instance AWSRequest DescribeProductView where+ type Rs DescribeProductView =+ DescribeProductViewResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ DescribeProductViewResponse' <$>+ (x .?> "ProductViewSummary") <*>+ (x .?> "ProvisioningArtifacts" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable DescribeProductView++instance NFData DescribeProductView++instance ToHeaders DescribeProductView where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.DescribeProductView" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON DescribeProductView where+ toJSON DescribeProductView'{..}+ = object+ (catMaybes+ [("AcceptLanguage" .=) <$> _dpvAcceptLanguage,+ Just ("Id" .= _dpvId)])++instance ToPath DescribeProductView where+ toPath = const "/"++instance ToQuery DescribeProductView where+ toQuery = const mempty++-- | /See:/ 'describeProductViewResponse' smart constructor.+data DescribeProductViewResponse = DescribeProductViewResponse'+ { _dpvrsProductViewSummary :: !(Maybe ProductViewSummary)+ , _dpvrsProvisioningArtifacts :: !(Maybe [ProvisioningArtifact])+ , _dpvrsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeProductViewResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dpvrsProductViewSummary'+--+-- * 'dpvrsProvisioningArtifacts'+--+-- * 'dpvrsResponseStatus'+describeProductViewResponse+ :: Int -- ^ 'dpvrsResponseStatus'+ -> DescribeProductViewResponse+describeProductViewResponse pResponseStatus_ =+ DescribeProductViewResponse'+ { _dpvrsProductViewSummary = Nothing+ , _dpvrsProvisioningArtifacts = Nothing+ , _dpvrsResponseStatus = pResponseStatus_+ }++-- | The summary metadata about the specified product.+dpvrsProductViewSummary :: Lens' DescribeProductViewResponse (Maybe ProductViewSummary)+dpvrsProductViewSummary = lens _dpvrsProductViewSummary (\ s a -> s{_dpvrsProductViewSummary = a});++-- | A list of provisioning artifact objects for the specified product. The 'ProvisioningArtifacts' represent the ways in which the specified product can be provisioned.+dpvrsProvisioningArtifacts :: Lens' DescribeProductViewResponse [ProvisioningArtifact]+dpvrsProvisioningArtifacts = lens _dpvrsProvisioningArtifacts (\ s a -> s{_dpvrsProvisioningArtifacts = a}) . _Default . _Coerce;++-- | The response status code.+dpvrsResponseStatus :: Lens' DescribeProductViewResponse Int+dpvrsResponseStatus = lens _dpvrsResponseStatus (\ s a -> s{_dpvrsResponseStatus = a});++instance NFData DescribeProductViewResponse
+ gen/Network/AWS/ServiceCatalog/DescribeProvisioningParameters.hs view
@@ -0,0 +1,198 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.DescribeProvisioningParameters+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Provides information about parameters required to provision a specified product in a specified manner. Use this operation to obtain the list of 'ProvisioningArtifactParameters' parameters available to call the < ProvisionProduct> operation for the specified product.+module Network.AWS.ServiceCatalog.DescribeProvisioningParameters+ (+ -- * Creating a Request+ describeProvisioningParameters+ , DescribeProvisioningParameters+ -- * Request Lenses+ , dppAcceptLanguage+ , dppPathId+ , dppProductId+ , dppProvisioningArtifactId++ -- * Destructuring the Response+ , describeProvisioningParametersResponse+ , DescribeProvisioningParametersResponse+ -- * Response Lenses+ , dpprsProvisioningArtifactParameters+ , dpprsUsageInstructions+ , dpprsConstraintSummaries+ , dpprsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'describeProvisioningParameters' smart constructor.+data DescribeProvisioningParameters = DescribeProvisioningParameters'+ { _dppAcceptLanguage :: !(Maybe Text)+ , _dppPathId :: !(Maybe Text)+ , _dppProductId :: !Text+ , _dppProvisioningArtifactId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeProvisioningParameters' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dppAcceptLanguage'+--+-- * 'dppPathId'+--+-- * 'dppProductId'+--+-- * 'dppProvisioningArtifactId'+describeProvisioningParameters+ :: Text -- ^ 'dppProductId'+ -> Text -- ^ 'dppProvisioningArtifactId'+ -> DescribeProvisioningParameters+describeProvisioningParameters pProductId_ pProvisioningArtifactId_ =+ DescribeProvisioningParameters'+ { _dppAcceptLanguage = Nothing+ , _dppPathId = Nothing+ , _dppProductId = pProductId_+ , _dppProvisioningArtifactId = pProvisioningArtifactId_+ }++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+dppAcceptLanguage :: Lens' DescribeProvisioningParameters (Maybe Text)+dppAcceptLanguage = lens _dppAcceptLanguage (\ s a -> s{_dppAcceptLanguage = a});++-- | The identifier of the path for this product\'s provisioning. This value is optional if the product has a default path, and is required if there is more than one path for the specified product.+dppPathId :: Lens' DescribeProvisioningParameters (Maybe Text)+dppPathId = lens _dppPathId (\ s a -> s{_dppPathId = a});++-- | The identifier of the product.+dppProductId :: Lens' DescribeProvisioningParameters Text+dppProductId = lens _dppProductId (\ s a -> s{_dppProductId = a});++-- | The provisioning artifact identifier for this product.+dppProvisioningArtifactId :: Lens' DescribeProvisioningParameters Text+dppProvisioningArtifactId = lens _dppProvisioningArtifactId (\ s a -> s{_dppProvisioningArtifactId = a});++instance AWSRequest DescribeProvisioningParameters+ where+ type Rs DescribeProvisioningParameters =+ DescribeProvisioningParametersResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ DescribeProvisioningParametersResponse' <$>+ (x .?> "ProvisioningArtifactParameters" .!@ mempty)+ <*> (x .?> "UsageInstructions" .!@ mempty)+ <*> (x .?> "ConstraintSummaries" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable DescribeProvisioningParameters++instance NFData DescribeProvisioningParameters++instance ToHeaders DescribeProvisioningParameters+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.DescribeProvisioningParameters"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON DescribeProvisioningParameters where+ toJSON DescribeProvisioningParameters'{..}+ = object+ (catMaybes+ [("AcceptLanguage" .=) <$> _dppAcceptLanguage,+ ("PathId" .=) <$> _dppPathId,+ Just ("ProductId" .= _dppProductId),+ Just+ ("ProvisioningArtifactId" .=+ _dppProvisioningArtifactId)])++instance ToPath DescribeProvisioningParameters where+ toPath = const "/"++instance ToQuery DescribeProvisioningParameters where+ toQuery = const mempty++-- | /See:/ 'describeProvisioningParametersResponse' smart constructor.+data DescribeProvisioningParametersResponse = DescribeProvisioningParametersResponse'+ { _dpprsProvisioningArtifactParameters :: !(Maybe [ProvisioningArtifactParameter])+ , _dpprsUsageInstructions :: !(Maybe [UsageInstruction])+ , _dpprsConstraintSummaries :: !(Maybe [ConstraintSummary])+ , _dpprsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeProvisioningParametersResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dpprsProvisioningArtifactParameters'+--+-- * 'dpprsUsageInstructions'+--+-- * 'dpprsConstraintSummaries'+--+-- * 'dpprsResponseStatus'+describeProvisioningParametersResponse+ :: Int -- ^ 'dpprsResponseStatus'+ -> DescribeProvisioningParametersResponse+describeProvisioningParametersResponse pResponseStatus_ =+ DescribeProvisioningParametersResponse'+ { _dpprsProvisioningArtifactParameters = Nothing+ , _dpprsUsageInstructions = Nothing+ , _dpprsConstraintSummaries = Nothing+ , _dpprsResponseStatus = pResponseStatus_+ }++-- | The list of parameters used to successfully provision the product. Each parameter includes a list of allowable values and additional metadata about each parameter.+dpprsProvisioningArtifactParameters :: Lens' DescribeProvisioningParametersResponse [ProvisioningArtifactParameter]+dpprsProvisioningArtifactParameters = lens _dpprsProvisioningArtifactParameters (\ s a -> s{_dpprsProvisioningArtifactParameters = a}) . _Default . _Coerce;++-- | Any additional metadata specifically related to the provisioning of the product. For example, see the 'Version' field of the CloudFormation template.+dpprsUsageInstructions :: Lens' DescribeProvisioningParametersResponse [UsageInstruction]+dpprsUsageInstructions = lens _dpprsUsageInstructions (\ s a -> s{_dpprsUsageInstructions = a}) . _Default . _Coerce;++-- | The list of constraint summaries that apply to provisioning this product.+dpprsConstraintSummaries :: Lens' DescribeProvisioningParametersResponse [ConstraintSummary]+dpprsConstraintSummaries = lens _dpprsConstraintSummaries (\ s a -> s{_dpprsConstraintSummaries = a}) . _Default . _Coerce;++-- | The response status code.+dpprsResponseStatus :: Lens' DescribeProvisioningParametersResponse Int+dpprsResponseStatus = lens _dpprsResponseStatus (\ s a -> s{_dpprsResponseStatus = a});++instance NFData+ DescribeProvisioningParametersResponse
+ gen/Network/AWS/ServiceCatalog/DescribeRecord.hs view
@@ -0,0 +1,190 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.DescribeRecord+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a paginated list of the full details of a specific request. Use this operation after calling a request operation (< ProvisionProduct>, < TerminateProvisionedProduct>, or < UpdateProvisionedProduct>).+module Network.AWS.ServiceCatalog.DescribeRecord+ (+ -- * Creating a Request+ describeRecord+ , DescribeRecord+ -- * Request Lenses+ , drAcceptLanguage+ , drPageToken+ , drPageSize+ , drId++ -- * Destructuring the Response+ , describeRecordResponse+ , DescribeRecordResponse+ -- * Response Lenses+ , drrsRecordDetail+ , drrsNextPageToken+ , drrsRecordOutputs+ , drrsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'describeRecord' smart constructor.+data DescribeRecord = DescribeRecord'+ { _drAcceptLanguage :: !(Maybe Text)+ , _drPageToken :: !(Maybe Text)+ , _drPageSize :: !(Maybe Nat)+ , _drId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeRecord' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'drAcceptLanguage'+--+-- * 'drPageToken'+--+-- * 'drPageSize'+--+-- * 'drId'+describeRecord+ :: Text -- ^ 'drId'+ -> DescribeRecord+describeRecord pId_ =+ DescribeRecord'+ { _drAcceptLanguage = Nothing+ , _drPageToken = Nothing+ , _drPageSize = Nothing+ , _drId = pId_+ }++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+drAcceptLanguage :: Lens' DescribeRecord (Maybe Text)+drAcceptLanguage = lens _drAcceptLanguage (\ s a -> s{_drAcceptLanguage = a});++-- | The page token of the first page retrieve. If null, this retrieves the first page of size 'PageSize'.+drPageToken :: Lens' DescribeRecord (Maybe Text)+drPageToken = lens _drPageToken (\ s a -> s{_drPageToken = a});++-- | The maximum number of items to return in the results. If more results exist than fit in the specified 'PageSize', the value of 'NextPageToken' in the response is non-null.+drPageSize :: Lens' DescribeRecord (Maybe Natural)+drPageSize = lens _drPageSize (\ s a -> s{_drPageSize = a}) . mapping _Nat;++-- | The record identifier of the ProvisionedProduct object for which to retrieve output information. This is the 'RecordDetail.RecordId' obtained from the request operation\'s response.+drId :: Lens' DescribeRecord Text+drId = lens _drId (\ s a -> s{_drId = a});++instance AWSRequest DescribeRecord where+ type Rs DescribeRecord = DescribeRecordResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ DescribeRecordResponse' <$>+ (x .?> "RecordDetail") <*> (x .?> "NextPageToken")+ <*> (x .?> "RecordOutputs" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable DescribeRecord++instance NFData DescribeRecord++instance ToHeaders DescribeRecord where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.DescribeRecord" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON DescribeRecord where+ toJSON DescribeRecord'{..}+ = object+ (catMaybes+ [("AcceptLanguage" .=) <$> _drAcceptLanguage,+ ("PageToken" .=) <$> _drPageToken,+ ("PageSize" .=) <$> _drPageSize,+ Just ("Id" .= _drId)])++instance ToPath DescribeRecord where+ toPath = const "/"++instance ToQuery DescribeRecord where+ toQuery = const mempty++-- | /See:/ 'describeRecordResponse' smart constructor.+data DescribeRecordResponse = DescribeRecordResponse'+ { _drrsRecordDetail :: !(Maybe RecordDetail)+ , _drrsNextPageToken :: !(Maybe Text)+ , _drrsRecordOutputs :: !(Maybe [RecordOutput])+ , _drrsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeRecordResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'drrsRecordDetail'+--+-- * 'drrsNextPageToken'+--+-- * 'drrsRecordOutputs'+--+-- * 'drrsResponseStatus'+describeRecordResponse+ :: Int -- ^ 'drrsResponseStatus'+ -> DescribeRecordResponse+describeRecordResponse pResponseStatus_ =+ DescribeRecordResponse'+ { _drrsRecordDetail = Nothing+ , _drrsNextPageToken = Nothing+ , _drrsRecordOutputs = Nothing+ , _drrsResponseStatus = pResponseStatus_+ }++-- | Detailed record information for the specified product.+drrsRecordDetail :: Lens' DescribeRecordResponse (Maybe RecordDetail)+drrsRecordDetail = lens _drrsRecordDetail (\ s a -> s{_drrsRecordDetail = a});++-- | The page token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.+drrsNextPageToken :: Lens' DescribeRecordResponse (Maybe Text)+drrsNextPageToken = lens _drrsNextPageToken (\ s a -> s{_drrsNextPageToken = a});++-- | A list of outputs for the specified Product object created as the result of a request. For example, a CloudFormation-backed product that creates an S3 bucket would have an output for the S3 bucket URL.+drrsRecordOutputs :: Lens' DescribeRecordResponse [RecordOutput]+drrsRecordOutputs = lens _drrsRecordOutputs (\ s a -> s{_drrsRecordOutputs = a}) . _Default . _Coerce;++-- | The response status code.+drrsResponseStatus :: Lens' DescribeRecordResponse Int+drrsResponseStatus = lens _drrsResponseStatus (\ s a -> s{_drrsResponseStatus = a});++instance NFData DescribeRecordResponse
+ gen/Network/AWS/ServiceCatalog/ListLaunchPaths.hs view
@@ -0,0 +1,181 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.ListLaunchPaths+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a paginated list of all paths to a specified product. A path is how the user has access to a specified product, and is necessary when provisioning a product. A path also determines the constraints put on the product.+module Network.AWS.ServiceCatalog.ListLaunchPaths+ (+ -- * Creating a Request+ listLaunchPaths+ , ListLaunchPaths+ -- * Request Lenses+ , llpAcceptLanguage+ , llpPageToken+ , llpPageSize+ , llpProductId++ -- * Destructuring the Response+ , listLaunchPathsResponse+ , ListLaunchPathsResponse+ -- * Response Lenses+ , llprsNextPageToken+ , llprsLaunchPathSummaries+ , llprsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'listLaunchPaths' smart constructor.+data ListLaunchPaths = ListLaunchPaths'+ { _llpAcceptLanguage :: !(Maybe Text)+ , _llpPageToken :: !(Maybe Text)+ , _llpPageSize :: !(Maybe Nat)+ , _llpProductId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListLaunchPaths' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'llpAcceptLanguage'+--+-- * 'llpPageToken'+--+-- * 'llpPageSize'+--+-- * 'llpProductId'+listLaunchPaths+ :: Text -- ^ 'llpProductId'+ -> ListLaunchPaths+listLaunchPaths pProductId_ =+ ListLaunchPaths'+ { _llpAcceptLanguage = Nothing+ , _llpPageToken = Nothing+ , _llpPageSize = Nothing+ , _llpProductId = pProductId_+ }++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+llpAcceptLanguage :: Lens' ListLaunchPaths (Maybe Text)+llpAcceptLanguage = lens _llpAcceptLanguage (\ s a -> s{_llpAcceptLanguage = a});++-- | The page token of the first page retrieve. If null, this retrieves the first page of size 'PageSize'.+llpPageToken :: Lens' ListLaunchPaths (Maybe Text)+llpPageToken = lens _llpPageToken (\ s a -> s{_llpPageToken = a});++-- | The maximum number of items to return in the results. If more results exist than fit in the specified 'PageSize', the value of 'NextPageToken' in the response is non-null.+llpPageSize :: Lens' ListLaunchPaths (Maybe Natural)+llpPageSize = lens _llpPageSize (\ s a -> s{_llpPageSize = a}) . mapping _Nat;++-- | Identifies the product for which to retrieve 'LaunchPathSummaries' information.+llpProductId :: Lens' ListLaunchPaths Text+llpProductId = lens _llpProductId (\ s a -> s{_llpProductId = a});++instance AWSRequest ListLaunchPaths where+ type Rs ListLaunchPaths = ListLaunchPathsResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ ListLaunchPathsResponse' <$>+ (x .?> "NextPageToken") <*>+ (x .?> "LaunchPathSummaries" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable ListLaunchPaths++instance NFData ListLaunchPaths++instance ToHeaders ListLaunchPaths where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.ListLaunchPaths" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListLaunchPaths where+ toJSON ListLaunchPaths'{..}+ = object+ (catMaybes+ [("AcceptLanguage" .=) <$> _llpAcceptLanguage,+ ("PageToken" .=) <$> _llpPageToken,+ ("PageSize" .=) <$> _llpPageSize,+ Just ("ProductId" .= _llpProductId)])++instance ToPath ListLaunchPaths where+ toPath = const "/"++instance ToQuery ListLaunchPaths where+ toQuery = const mempty++-- | /See:/ 'listLaunchPathsResponse' smart constructor.+data ListLaunchPathsResponse = ListLaunchPathsResponse'+ { _llprsNextPageToken :: !(Maybe Text)+ , _llprsLaunchPathSummaries :: !(Maybe [LaunchPathSummary])+ , _llprsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListLaunchPathsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'llprsNextPageToken'+--+-- * 'llprsLaunchPathSummaries'+--+-- * 'llprsResponseStatus'+listLaunchPathsResponse+ :: Int -- ^ 'llprsResponseStatus'+ -> ListLaunchPathsResponse+listLaunchPathsResponse pResponseStatus_ =+ ListLaunchPathsResponse'+ { _llprsNextPageToken = Nothing+ , _llprsLaunchPathSummaries = Nothing+ , _llprsResponseStatus = pResponseStatus_+ }++-- | The page token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.+llprsNextPageToken :: Lens' ListLaunchPathsResponse (Maybe Text)+llprsNextPageToken = lens _llprsNextPageToken (\ s a -> s{_llprsNextPageToken = a});++-- | List of launch path information summaries for the specified 'PageToken'.+llprsLaunchPathSummaries :: Lens' ListLaunchPathsResponse [LaunchPathSummary]+llprsLaunchPathSummaries = lens _llprsLaunchPathSummaries (\ s a -> s{_llprsLaunchPathSummaries = a}) . _Default . _Coerce;++-- | The response status code.+llprsResponseStatus :: Lens' ListLaunchPathsResponse Int+llprsResponseStatus = lens _llprsResponseStatus (\ s a -> s{_llprsResponseStatus = a});++instance NFData ListLaunchPathsResponse
+ gen/Network/AWS/ServiceCatalog/ListRecordHistory.hs view
@@ -0,0 +1,180 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.ListRecordHistory+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a paginated list of all performed requests, in the form of RecordDetails objects that are filtered as specified.+module Network.AWS.ServiceCatalog.ListRecordHistory+ (+ -- * Creating a Request+ listRecordHistory+ , ListRecordHistory+ -- * Request Lenses+ , lrhSearchFilter+ , lrhAcceptLanguage+ , lrhPageToken+ , lrhPageSize++ -- * Destructuring the Response+ , listRecordHistoryResponse+ , ListRecordHistoryResponse+ -- * Response Lenses+ , lrhrsNextPageToken+ , lrhrsRecordDetails+ , lrhrsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'listRecordHistory' smart constructor.+data ListRecordHistory = ListRecordHistory'+ { _lrhSearchFilter :: !(Maybe ListRecordHistorySearchFilter)+ , _lrhAcceptLanguage :: !(Maybe Text)+ , _lrhPageToken :: !(Maybe Text)+ , _lrhPageSize :: !(Maybe Nat)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListRecordHistory' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lrhSearchFilter'+--+-- * 'lrhAcceptLanguage'+--+-- * 'lrhPageToken'+--+-- * 'lrhPageSize'+listRecordHistory+ :: ListRecordHistory+listRecordHistory =+ ListRecordHistory'+ { _lrhSearchFilter = Nothing+ , _lrhAcceptLanguage = Nothing+ , _lrhPageToken = Nothing+ , _lrhPageSize = Nothing+ }++-- | (Optional) The filter to limit search results.+lrhSearchFilter :: Lens' ListRecordHistory (Maybe ListRecordHistorySearchFilter)+lrhSearchFilter = lens _lrhSearchFilter (\ s a -> s{_lrhSearchFilter = a});++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+lrhAcceptLanguage :: Lens' ListRecordHistory (Maybe Text)+lrhAcceptLanguage = lens _lrhAcceptLanguage (\ s a -> s{_lrhAcceptLanguage = a});++-- | The page token of the first page retrieve. If null, this retrieves the first page of size 'PageSize'.+lrhPageToken :: Lens' ListRecordHistory (Maybe Text)+lrhPageToken = lens _lrhPageToken (\ s a -> s{_lrhPageToken = a});++-- | The maximum number of items to return in the results. If more results exist than fit in the specified 'PageSize', the value of 'NextPageToken' in the response is non-null.+lrhPageSize :: Lens' ListRecordHistory (Maybe Natural)+lrhPageSize = lens _lrhPageSize (\ s a -> s{_lrhPageSize = a}) . mapping _Nat;++instance AWSRequest ListRecordHistory where+ type Rs ListRecordHistory = ListRecordHistoryResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ ListRecordHistoryResponse' <$>+ (x .?> "NextPageToken") <*>+ (x .?> "RecordDetails" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable ListRecordHistory++instance NFData ListRecordHistory++instance ToHeaders ListRecordHistory where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.ListRecordHistory" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListRecordHistory where+ toJSON ListRecordHistory'{..}+ = object+ (catMaybes+ [("SearchFilter" .=) <$> _lrhSearchFilter,+ ("AcceptLanguage" .=) <$> _lrhAcceptLanguage,+ ("PageToken" .=) <$> _lrhPageToken,+ ("PageSize" .=) <$> _lrhPageSize])++instance ToPath ListRecordHistory where+ toPath = const "/"++instance ToQuery ListRecordHistory where+ toQuery = const mempty++-- | /See:/ 'listRecordHistoryResponse' smart constructor.+data ListRecordHistoryResponse = ListRecordHistoryResponse'+ { _lrhrsNextPageToken :: !(Maybe Text)+ , _lrhrsRecordDetails :: !(Maybe [RecordDetail])+ , _lrhrsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListRecordHistoryResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lrhrsNextPageToken'+--+-- * 'lrhrsRecordDetails'+--+-- * 'lrhrsResponseStatus'+listRecordHistoryResponse+ :: Int -- ^ 'lrhrsResponseStatus'+ -> ListRecordHistoryResponse+listRecordHistoryResponse pResponseStatus_ =+ ListRecordHistoryResponse'+ { _lrhrsNextPageToken = Nothing+ , _lrhrsRecordDetails = Nothing+ , _lrhrsResponseStatus = pResponseStatus_+ }++-- | The page token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.+lrhrsNextPageToken :: Lens' ListRecordHistoryResponse (Maybe Text)+lrhrsNextPageToken = lens _lrhrsNextPageToken (\ s a -> s{_lrhrsNextPageToken = a});++-- | A list of record detail objects, listed in reverse chronological order.+lrhrsRecordDetails :: Lens' ListRecordHistoryResponse [RecordDetail]+lrhrsRecordDetails = lens _lrhrsRecordDetails (\ s a -> s{_lrhrsRecordDetails = a}) . _Default . _Coerce;++-- | The response status code.+lrhrsResponseStatus :: Lens' ListRecordHistoryResponse Int+lrhrsResponseStatus = lens _lrhrsResponseStatus (\ s a -> s{_lrhrsResponseStatus = a});++instance NFData ListRecordHistoryResponse
+ gen/Network/AWS/ServiceCatalog/ProvisionProduct.hs view
@@ -0,0 +1,230 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.ProvisionProduct+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Requests a /Provision/ of a specified product. A /ProvisionedProduct/ is a resourced instance for a product. For example, provisioning a CloudFormation-template-backed product results in launching a CloudFormation stack and all the underlying resources that come with it.+--+-- You can check the status of this request using the < DescribeRecord> operation.+module Network.AWS.ServiceCatalog.ProvisionProduct+ (+ -- * Creating a Request+ provisionProduct+ , ProvisionProduct+ -- * Request Lenses+ , ppNotificationARNs+ , ppAcceptLanguage+ , ppPathId+ , ppProvisioningParameters+ , ppTags+ , ppProductId+ , ppProvisioningArtifactId+ , ppProvisionedProductName+ , ppProvisionToken++ -- * Destructuring the Response+ , provisionProductResponse+ , ProvisionProductResponse+ -- * Response Lenses+ , pprsRecordDetail+ , pprsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'provisionProduct' smart constructor.+data ProvisionProduct = ProvisionProduct'+ { _ppNotificationARNs :: !(Maybe [Text])+ , _ppAcceptLanguage :: !(Maybe Text)+ , _ppPathId :: !(Maybe Text)+ , _ppProvisioningParameters :: !(Maybe [ProvisioningParameter])+ , _ppTags :: !(Maybe [Tag])+ , _ppProductId :: !Text+ , _ppProvisioningArtifactId :: !Text+ , _ppProvisionedProductName :: !Text+ , _ppProvisionToken :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProvisionProduct' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ppNotificationARNs'+--+-- * 'ppAcceptLanguage'+--+-- * 'ppPathId'+--+-- * 'ppProvisioningParameters'+--+-- * 'ppTags'+--+-- * 'ppProductId'+--+-- * 'ppProvisioningArtifactId'+--+-- * 'ppProvisionedProductName'+--+-- * 'ppProvisionToken'+provisionProduct+ :: Text -- ^ 'ppProductId'+ -> Text -- ^ 'ppProvisioningArtifactId'+ -> Text -- ^ 'ppProvisionedProductName'+ -> Text -- ^ 'ppProvisionToken'+ -> ProvisionProduct+provisionProduct pProductId_ pProvisioningArtifactId_ pProvisionedProductName_ pProvisionToken_ =+ ProvisionProduct'+ { _ppNotificationARNs = Nothing+ , _ppAcceptLanguage = Nothing+ , _ppPathId = Nothing+ , _ppProvisioningParameters = Nothing+ , _ppTags = Nothing+ , _ppProductId = pProductId_+ , _ppProvisioningArtifactId = pProvisioningArtifactId_+ , _ppProvisionedProductName = pProvisionedProductName_+ , _ppProvisionToken = pProvisionToken_+ }++-- | Passed to CloudFormation. The SNS topic ARNs to which to publish stack-related events.+ppNotificationARNs :: Lens' ProvisionProduct [Text]+ppNotificationARNs = lens _ppNotificationARNs (\ s a -> s{_ppNotificationARNs = a}) . _Default . _Coerce;++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+ppAcceptLanguage :: Lens' ProvisionProduct (Maybe Text)+ppAcceptLanguage = lens _ppAcceptLanguage (\ s a -> s{_ppAcceptLanguage = a});++-- | The identifier of the path for this product\'s provisioning. This value is optional if the product has a default path, and is required if there is more than one path for the specified product.+ppPathId :: Lens' ProvisionProduct (Maybe Text)+ppPathId = lens _ppPathId (\ s a -> s{_ppPathId = a});++-- | Parameters specified by the administrator that are required for provisioning the product.+ppProvisioningParameters :: Lens' ProvisionProduct [ProvisioningParameter]+ppProvisioningParameters = lens _ppProvisioningParameters (\ s a -> s{_ppProvisioningParameters = a}) . _Default . _Coerce;++-- | (Optional) A list of tags to use as provisioning options.+ppTags :: Lens' ProvisionProduct [Tag]+ppTags = lens _ppTags (\ s a -> s{_ppTags = a}) . _Default . _Coerce;++-- | The identifier of the product.+ppProductId :: Lens' ProvisionProduct Text+ppProductId = lens _ppProductId (\ s a -> s{_ppProductId = a});++-- | The provisioning artifact identifier for this product.+ppProvisioningArtifactId :: Lens' ProvisionProduct Text+ppProvisioningArtifactId = lens _ppProvisioningArtifactId (\ s a -> s{_ppProvisioningArtifactId = a});++-- | A user-friendly name to identify the ProvisionedProduct object. This value must be unique for the AWS account and cannot be updated after the product is provisioned.+ppProvisionedProductName :: Lens' ProvisionProduct Text+ppProvisionedProductName = lens _ppProvisionedProductName (\ s a -> s{_ppProvisionedProductName = a});++-- | An idempotency token that uniquely identifies the provisioning request.+ppProvisionToken :: Lens' ProvisionProduct Text+ppProvisionToken = lens _ppProvisionToken (\ s a -> s{_ppProvisionToken = a});++instance AWSRequest ProvisionProduct where+ type Rs ProvisionProduct = ProvisionProductResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ ProvisionProductResponse' <$>+ (x .?> "RecordDetail") <*> (pure (fromEnum s)))++instance Hashable ProvisionProduct++instance NFData ProvisionProduct++instance ToHeaders ProvisionProduct where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.ProvisionProduct" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ProvisionProduct where+ toJSON ProvisionProduct'{..}+ = object+ (catMaybes+ [("NotificationArns" .=) <$> _ppNotificationARNs,+ ("AcceptLanguage" .=) <$> _ppAcceptLanguage,+ ("PathId" .=) <$> _ppPathId,+ ("ProvisioningParameters" .=) <$>+ _ppProvisioningParameters,+ ("Tags" .=) <$> _ppTags,+ Just ("ProductId" .= _ppProductId),+ Just+ ("ProvisioningArtifactId" .=+ _ppProvisioningArtifactId),+ Just+ ("ProvisionedProductName" .=+ _ppProvisionedProductName),+ Just ("ProvisionToken" .= _ppProvisionToken)])++instance ToPath ProvisionProduct where+ toPath = const "/"++instance ToQuery ProvisionProduct where+ toQuery = const mempty++-- | /See:/ 'provisionProductResponse' smart constructor.+data ProvisionProductResponse = ProvisionProductResponse'+ { _pprsRecordDetail :: !(Maybe RecordDetail)+ , _pprsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProvisionProductResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pprsRecordDetail'+--+-- * 'pprsResponseStatus'+provisionProductResponse+ :: Int -- ^ 'pprsResponseStatus'+ -> ProvisionProductResponse+provisionProductResponse pResponseStatus_ =+ ProvisionProductResponse'+ { _pprsRecordDetail = Nothing+ , _pprsResponseStatus = pResponseStatus_+ }++-- | The detailed result of the < ProvisionProduct> request, containing the inputs made to that request, the current state of the request, a pointer to the ProvisionedProduct object of the request, and a list of any errors that the request encountered.+pprsRecordDetail :: Lens' ProvisionProductResponse (Maybe RecordDetail)+pprsRecordDetail = lens _pprsRecordDetail (\ s a -> s{_pprsRecordDetail = a});++-- | The response status code.+pprsResponseStatus :: Lens' ProvisionProductResponse Int+pprsResponseStatus = lens _pprsResponseStatus (\ s a -> s{_pprsResponseStatus = a});++instance NFData ProvisionProductResponse
+ gen/Network/AWS/ServiceCatalog/ScanProvisionedProducts.hs view
@@ -0,0 +1,171 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.ScanProvisionedProducts+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a paginated list of all the ProvisionedProduct objects that are currently available (not terminated).+module Network.AWS.ServiceCatalog.ScanProvisionedProducts+ (+ -- * Creating a Request+ scanProvisionedProducts+ , ScanProvisionedProducts+ -- * Request Lenses+ , sppAcceptLanguage+ , sppPageToken+ , sppPageSize++ -- * Destructuring the Response+ , scanProvisionedProductsResponse+ , ScanProvisionedProductsResponse+ -- * Response Lenses+ , spprsNextPageToken+ , spprsProvisionedProducts+ , spprsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'scanProvisionedProducts' smart constructor.+data ScanProvisionedProducts = ScanProvisionedProducts'+ { _sppAcceptLanguage :: !(Maybe Text)+ , _sppPageToken :: !(Maybe Text)+ , _sppPageSize :: !(Maybe Nat)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ScanProvisionedProducts' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sppAcceptLanguage'+--+-- * 'sppPageToken'+--+-- * 'sppPageSize'+scanProvisionedProducts+ :: ScanProvisionedProducts+scanProvisionedProducts =+ ScanProvisionedProducts'+ { _sppAcceptLanguage = Nothing+ , _sppPageToken = Nothing+ , _sppPageSize = Nothing+ }++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+sppAcceptLanguage :: Lens' ScanProvisionedProducts (Maybe Text)+sppAcceptLanguage = lens _sppAcceptLanguage (\ s a -> s{_sppAcceptLanguage = a});++-- | The page token of the first page retrieve. If null, this retrieves the first page of size 'PageSize'.+sppPageToken :: Lens' ScanProvisionedProducts (Maybe Text)+sppPageToken = lens _sppPageToken (\ s a -> s{_sppPageToken = a});++-- | The maximum number of items to return in the results. If more results exist than fit in the specified 'PageSize', the value of 'NextPageToken' in the response is non-null.+sppPageSize :: Lens' ScanProvisionedProducts (Maybe Natural)+sppPageSize = lens _sppPageSize (\ s a -> s{_sppPageSize = a}) . mapping _Nat;++instance AWSRequest ScanProvisionedProducts where+ type Rs ScanProvisionedProducts =+ ScanProvisionedProductsResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ ScanProvisionedProductsResponse' <$>+ (x .?> "NextPageToken") <*>+ (x .?> "ProvisionedProducts" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable ScanProvisionedProducts++instance NFData ScanProvisionedProducts++instance ToHeaders ScanProvisionedProducts where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.ScanProvisionedProducts"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ScanProvisionedProducts where+ toJSON ScanProvisionedProducts'{..}+ = object+ (catMaybes+ [("AcceptLanguage" .=) <$> _sppAcceptLanguage,+ ("PageToken" .=) <$> _sppPageToken,+ ("PageSize" .=) <$> _sppPageSize])++instance ToPath ScanProvisionedProducts where+ toPath = const "/"++instance ToQuery ScanProvisionedProducts where+ toQuery = const mempty++-- | /See:/ 'scanProvisionedProductsResponse' smart constructor.+data ScanProvisionedProductsResponse = ScanProvisionedProductsResponse'+ { _spprsNextPageToken :: !(Maybe Text)+ , _spprsProvisionedProducts :: !(Maybe [ProvisionedProductDetail])+ , _spprsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ScanProvisionedProductsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'spprsNextPageToken'+--+-- * 'spprsProvisionedProducts'+--+-- * 'spprsResponseStatus'+scanProvisionedProductsResponse+ :: Int -- ^ 'spprsResponseStatus'+ -> ScanProvisionedProductsResponse+scanProvisionedProductsResponse pResponseStatus_ =+ ScanProvisionedProductsResponse'+ { _spprsNextPageToken = Nothing+ , _spprsProvisionedProducts = Nothing+ , _spprsResponseStatus = pResponseStatus_+ }++-- | The page token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.+spprsNextPageToken :: Lens' ScanProvisionedProductsResponse (Maybe Text)+spprsNextPageToken = lens _spprsNextPageToken (\ s a -> s{_spprsNextPageToken = a});++-- | A list of ProvisionedProduct detail objects.+spprsProvisionedProducts :: Lens' ScanProvisionedProductsResponse [ProvisionedProductDetail]+spprsProvisionedProducts = lens _spprsProvisionedProducts (\ s a -> s{_spprsProvisionedProducts = a}) . _Default . _Coerce;++-- | The response status code.+spprsResponseStatus :: Lens' ScanProvisionedProductsResponse Int+spprsResponseStatus = lens _spprsResponseStatus (\ s a -> s{_spprsResponseStatus = a});++instance NFData ScanProvisionedProductsResponse
+ gen/Network/AWS/ServiceCatalog/SearchProducts.hs view
@@ -0,0 +1,212 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.SearchProducts+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a paginated list all of the 'Products' objects to which the caller has access.+--+-- The output of this operation can be used as input for other operations, such as < DescribeProductView>.+module Network.AWS.ServiceCatalog.SearchProducts+ (+ -- * Creating a Request+ searchProducts+ , SearchProducts+ -- * Request Lenses+ , spFilters+ , spSortOrder+ , spAcceptLanguage+ , spPageToken+ , spPageSize+ , spSortBy++ -- * Destructuring the Response+ , searchProductsResponse+ , SearchProductsResponse+ -- * Response Lenses+ , sprsNextPageToken+ , sprsProductViewAggregations+ , sprsProductViewSummaries+ , sprsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'searchProducts' smart constructor.+data SearchProducts = SearchProducts'+ { _spFilters :: !(Maybe (Map ProductViewFilterBy [Text]))+ , _spSortOrder :: !(Maybe SortOrder)+ , _spAcceptLanguage :: !(Maybe Text)+ , _spPageToken :: !(Maybe Text)+ , _spPageSize :: !(Maybe Nat)+ , _spSortBy :: !(Maybe ProductViewSortBy)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SearchProducts' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'spFilters'+--+-- * 'spSortOrder'+--+-- * 'spAcceptLanguage'+--+-- * 'spPageToken'+--+-- * 'spPageSize'+--+-- * 'spSortBy'+searchProducts+ :: SearchProducts+searchProducts =+ SearchProducts'+ { _spFilters = Nothing+ , _spSortOrder = Nothing+ , _spAcceptLanguage = Nothing+ , _spPageToken = Nothing+ , _spPageSize = Nothing+ , _spSortBy = Nothing+ }++-- | (Optional) The list of filters with which to limit search results. If no search filters are specified, the output is all the products to which the calling user has access.+spFilters :: Lens' SearchProducts (HashMap ProductViewFilterBy [Text])+spFilters = lens _spFilters (\ s a -> s{_spFilters = a}) . _Default . _Map;++-- | (Optional) The sort order specifier. If no value is specified, results are not sorted.+spSortOrder :: Lens' SearchProducts (Maybe SortOrder)+spSortOrder = lens _spSortOrder (\ s a -> s{_spSortOrder = a});++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+spAcceptLanguage :: Lens' SearchProducts (Maybe Text)+spAcceptLanguage = lens _spAcceptLanguage (\ s a -> s{_spAcceptLanguage = a});++-- | The page token of the first page retrieve. If null, this retrieves the first page of size 'PageSize'.+spPageToken :: Lens' SearchProducts (Maybe Text)+spPageToken = lens _spPageToken (\ s a -> s{_spPageToken = a});++-- | The maximum number of items to return in the results. If more results exist than fit in the specified 'PageSize', the value of 'NextPageToken' in the response is non-null.+spPageSize :: Lens' SearchProducts (Maybe Natural)+spPageSize = lens _spPageSize (\ s a -> s{_spPageSize = a}) . mapping _Nat;++-- | (Optional) The sort field specifier. If no value is specified, results are not sorted.+spSortBy :: Lens' SearchProducts (Maybe ProductViewSortBy)+spSortBy = lens _spSortBy (\ s a -> s{_spSortBy = a});++instance AWSRequest SearchProducts where+ type Rs SearchProducts = SearchProductsResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ SearchProductsResponse' <$>+ (x .?> "NextPageToken") <*>+ (x .?> "ProductViewAggregations" .!@ mempty)+ <*> (x .?> "ProductViewSummaries" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable SearchProducts++instance NFData SearchProducts++instance ToHeaders SearchProducts where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.SearchProducts" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON SearchProducts where+ toJSON SearchProducts'{..}+ = object+ (catMaybes+ [("Filters" .=) <$> _spFilters,+ ("SortOrder" .=) <$> _spSortOrder,+ ("AcceptLanguage" .=) <$> _spAcceptLanguage,+ ("PageToken" .=) <$> _spPageToken,+ ("PageSize" .=) <$> _spPageSize,+ ("SortBy" .=) <$> _spSortBy])++instance ToPath SearchProducts where+ toPath = const "/"++instance ToQuery SearchProducts where+ toQuery = const mempty++-- | /See:/ 'searchProductsResponse' smart constructor.+data SearchProductsResponse = SearchProductsResponse'+ { _sprsNextPageToken :: !(Maybe Text)+ , _sprsProductViewAggregations :: !(Maybe (Map Text [ProductViewAggregationValue]))+ , _sprsProductViewSummaries :: !(Maybe [ProductViewSummary])+ , _sprsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SearchProductsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sprsNextPageToken'+--+-- * 'sprsProductViewAggregations'+--+-- * 'sprsProductViewSummaries'+--+-- * 'sprsResponseStatus'+searchProductsResponse+ :: Int -- ^ 'sprsResponseStatus'+ -> SearchProductsResponse+searchProductsResponse pResponseStatus_ =+ SearchProductsResponse'+ { _sprsNextPageToken = Nothing+ , _sprsProductViewAggregations = Nothing+ , _sprsProductViewSummaries = Nothing+ , _sprsResponseStatus = pResponseStatus_+ }++-- | The page token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.+sprsNextPageToken :: Lens' SearchProductsResponse (Maybe Text)+sprsNextPageToken = lens _sprsNextPageToken (\ s a -> s{_sprsNextPageToken = a});++-- | A list of the product view aggregation value objects.+sprsProductViewAggregations :: Lens' SearchProductsResponse (HashMap Text [ProductViewAggregationValue])+sprsProductViewAggregations = lens _sprsProductViewAggregations (\ s a -> s{_sprsProductViewAggregations = a}) . _Default . _Map;++-- | A list of the product view summary objects.+sprsProductViewSummaries :: Lens' SearchProductsResponse [ProductViewSummary]+sprsProductViewSummaries = lens _sprsProductViewSummaries (\ s a -> s{_sprsProductViewSummaries = a}) . _Default . _Coerce;++-- | The response status code.+sprsResponseStatus :: Lens' SearchProductsResponse Int+sprsResponseStatus = lens _sprsResponseStatus (\ s a -> s{_sprsResponseStatus = a});++instance NFData SearchProductsResponse
+ gen/Network/AWS/ServiceCatalog/TerminateProvisionedProduct.hs view
@@ -0,0 +1,187 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.TerminateProvisionedProduct+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Requests termination of an existing ProvisionedProduct object. If there are 'Tags' associated with the object, they are terminated when the ProvisionedProduct object is terminated.+--+-- This operation does not delete any records associated with the ProvisionedProduct object.+--+-- You can check the status of this request using the < DescribeRecord> operation.+module Network.AWS.ServiceCatalog.TerminateProvisionedProduct+ (+ -- * Creating a Request+ terminateProvisionedProduct+ , TerminateProvisionedProduct+ -- * Request Lenses+ , tppProvisionedProductName+ , tppAcceptLanguage+ , tppIgnoreErrors+ , tppProvisionedProductId+ , tppTerminateToken++ -- * Destructuring the Response+ , terminateProvisionedProductResponse+ , TerminateProvisionedProductResponse+ -- * Response Lenses+ , tpprsRecordDetail+ , tpprsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'terminateProvisionedProduct' smart constructor.+data TerminateProvisionedProduct = TerminateProvisionedProduct'+ { _tppProvisionedProductName :: !(Maybe Text)+ , _tppAcceptLanguage :: !(Maybe Text)+ , _tppIgnoreErrors :: !(Maybe Bool)+ , _tppProvisionedProductId :: !(Maybe Text)+ , _tppTerminateToken :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TerminateProvisionedProduct' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tppProvisionedProductName'+--+-- * 'tppAcceptLanguage'+--+-- * 'tppIgnoreErrors'+--+-- * 'tppProvisionedProductId'+--+-- * 'tppTerminateToken'+terminateProvisionedProduct+ :: Text -- ^ 'tppTerminateToken'+ -> TerminateProvisionedProduct+terminateProvisionedProduct pTerminateToken_ =+ TerminateProvisionedProduct'+ { _tppProvisionedProductName = Nothing+ , _tppAcceptLanguage = Nothing+ , _tppIgnoreErrors = Nothing+ , _tppProvisionedProductId = Nothing+ , _tppTerminateToken = pTerminateToken_+ }++-- | The name of the ProvisionedProduct object to terminate. You must specify either 'ProvisionedProductName' or 'ProvisionedProductId', but not both.+tppProvisionedProductName :: Lens' TerminateProvisionedProduct (Maybe Text)+tppProvisionedProductName = lens _tppProvisionedProductName (\ s a -> s{_tppProvisionedProductName = a});++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+tppAcceptLanguage :: Lens' TerminateProvisionedProduct (Maybe Text)+tppAcceptLanguage = lens _tppAcceptLanguage (\ s a -> s{_tppAcceptLanguage = a});++-- | Optional Boolean parameter. If set to true, AWS Service Catalog stops managing the specified ProvisionedProduct object even if it cannot delete the underlying resources.+tppIgnoreErrors :: Lens' TerminateProvisionedProduct (Maybe Bool)+tppIgnoreErrors = lens _tppIgnoreErrors (\ s a -> s{_tppIgnoreErrors = a});++-- | The identifier of the ProvisionedProduct object to terminate. You must specify either 'ProvisionedProductName' or 'ProvisionedProductId', but not both.+tppProvisionedProductId :: Lens' TerminateProvisionedProduct (Maybe Text)+tppProvisionedProductId = lens _tppProvisionedProductId (\ s a -> s{_tppProvisionedProductId = a});++-- | An idempotency token that uniquely identifies the termination request. This token is only valid during the termination process. After the ProvisionedProduct object is terminated, further requests to terminate the same ProvisionedProduct object always return __ResourceNotFound__ regardless of the value of 'TerminateToken'.+tppTerminateToken :: Lens' TerminateProvisionedProduct Text+tppTerminateToken = lens _tppTerminateToken (\ s a -> s{_tppTerminateToken = a});++instance AWSRequest TerminateProvisionedProduct where+ type Rs TerminateProvisionedProduct =+ TerminateProvisionedProductResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ TerminateProvisionedProductResponse' <$>+ (x .?> "RecordDetail") <*> (pure (fromEnum s)))++instance Hashable TerminateProvisionedProduct++instance NFData TerminateProvisionedProduct++instance ToHeaders TerminateProvisionedProduct where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.TerminateProvisionedProduct"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON TerminateProvisionedProduct where+ toJSON TerminateProvisionedProduct'{..}+ = object+ (catMaybes+ [("ProvisionedProductName" .=) <$>+ _tppProvisionedProductName,+ ("AcceptLanguage" .=) <$> _tppAcceptLanguage,+ ("IgnoreErrors" .=) <$> _tppIgnoreErrors,+ ("ProvisionedProductId" .=) <$>+ _tppProvisionedProductId,+ Just ("TerminateToken" .= _tppTerminateToken)])++instance ToPath TerminateProvisionedProduct where+ toPath = const "/"++instance ToQuery TerminateProvisionedProduct where+ toQuery = const mempty++-- | /See:/ 'terminateProvisionedProductResponse' smart constructor.+data TerminateProvisionedProductResponse = TerminateProvisionedProductResponse'+ { _tpprsRecordDetail :: !(Maybe RecordDetail)+ , _tpprsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TerminateProvisionedProductResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tpprsRecordDetail'+--+-- * 'tpprsResponseStatus'+terminateProvisionedProductResponse+ :: Int -- ^ 'tpprsResponseStatus'+ -> TerminateProvisionedProductResponse+terminateProvisionedProductResponse pResponseStatus_ =+ TerminateProvisionedProductResponse'+ { _tpprsRecordDetail = Nothing+ , _tpprsResponseStatus = pResponseStatus_+ }++-- | The detailed result of the < TerminateProvisionedProduct> request, containing the inputs made to that request, the current state of the request, a pointer to the ProvisionedProduct object that the request is modifying, and a list of any errors that the request encountered.+tpprsRecordDetail :: Lens' TerminateProvisionedProductResponse (Maybe RecordDetail)+tpprsRecordDetail = lens _tpprsRecordDetail (\ s a -> s{_tpprsRecordDetail = a});++-- | The response status code.+tpprsResponseStatus :: Lens' TerminateProvisionedProductResponse Int+tpprsResponseStatus = lens _tpprsResponseStatus (\ s a -> s{_tpprsResponseStatus = a});++instance NFData TerminateProvisionedProductResponse
+ gen/Network/AWS/ServiceCatalog/Types.hs view
@@ -0,0 +1,227 @@+{-# LANGUAGE OverloadedStrings #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.Types+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.ServiceCatalog.Types+ (+ -- * Service Configuration+ serviceCatalog++ -- * Errors+ , _InvalidParametersException+ , _DuplicateResourceException+ , _ResourceNotFoundException++ -- * ProductViewFilterBy+ , ProductViewFilterBy (..)++ -- * ProductViewSortBy+ , ProductViewSortBy (..)++ -- * RecordStatus+ , RecordStatus (..)++ -- * SortOrder+ , SortOrder (..)++ -- * ConstraintSummary+ , ConstraintSummary+ , constraintSummary+ , csType+ , csDescription++ -- * LaunchPathSummary+ , LaunchPathSummary+ , launchPathSummary+ , lpsConstraintSummaries+ , lpsName+ , lpsId+ , lpsTags++ -- * ListRecordHistorySearchFilter+ , ListRecordHistorySearchFilter+ , listRecordHistorySearchFilter+ , lrhsfValue+ , lrhsfKey++ -- * ParameterConstraints+ , ParameterConstraints+ , parameterConstraints+ , pcAllowedValues++ -- * ProductViewAggregationValue+ , ProductViewAggregationValue+ , productViewAggregationValue+ , pvavValue+ , pvavApproximateCount++ -- * ProductViewSummary+ , ProductViewSummary+ , productViewSummary+ , pvsOwner+ , pvsSupportURL+ , pvsShortDescription+ , pvsHasDefaultPath+ , pvsDistributor+ , pvsName+ , pvsId+ , pvsType+ , pvsSupportEmail+ , pvsProductId+ , pvsSupportDescription++ -- * ProvisionedProductDetail+ , ProvisionedProductDetail+ , provisionedProductDetail+ , ppdIdempotencyToken+ , ppdStatus+ , ppdARN+ , ppdCreatedTime+ , ppdStatusMessage+ , ppdName+ , ppdLastRecordId+ , ppdId+ , ppdType++ -- * ProvisioningArtifact+ , ProvisioningArtifact+ , provisioningArtifact+ , paCreatedTime+ , paName+ , paId+ , paDescription++ -- * ProvisioningArtifactParameter+ , ProvisioningArtifactParameter+ , provisioningArtifactParameter+ , papIsNoEcho+ , papParameterKey+ , papParameterType+ , papParameterConstraints+ , papDefaultValue+ , papDescription++ -- * ProvisioningParameter+ , ProvisioningParameter+ , provisioningParameter+ , ppValue+ , ppKey++ -- * RecordDetail+ , RecordDetail+ , recordDetail+ , rdStatus+ , rdRecordTags+ , rdProvisionedProductName+ , rdProvisioningArtifactId+ , rdCreatedTime+ , rdRecordType+ , rdRecordId+ , rdProvisionedProductType+ , rdUpdatedTime+ , rdPathId+ , rdProvisionedProductId+ , rdRecordErrors+ , rdProductId++ -- * RecordError+ , RecordError+ , recordError+ , reCode+ , reDescription++ -- * RecordOutput+ , RecordOutput+ , recordOutput+ , roOutputValue+ , roOutputKey+ , roDescription++ -- * RecordTag+ , RecordTag+ , recordTag+ , rtValue+ , rtKey++ -- * Tag+ , Tag+ , tag+ , tagValue+ , tagKey++ -- * UpdateProvisioningParameter+ , UpdateProvisioningParameter+ , updateProvisioningParameter+ , uppValue+ , uppKey+ , uppUsePreviousValue++ -- * UsageInstruction+ , UsageInstruction+ , usageInstruction+ , uiValue+ , uiType+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.ServiceCatalog.Types.Product+import Network.AWS.ServiceCatalog.Types.Sum+import Network.AWS.Sign.V4++-- | API version '2015-12-10' of the Amazon Service Catalog SDK configuration.+serviceCatalog :: Service+serviceCatalog =+ Service+ { _svcAbbrev = "ServiceCatalog"+ , _svcSigner = v4+ , _svcPrefix = "servicecatalog"+ , _svcVersion = "2015-12-10"+ , _svcEndpoint = defaultEndpoint serviceCatalog+ , _svcTimeout = Just 70+ , _svcCheck = statusSuccess+ , _svcError = parseJSONError "ServiceCatalog"+ , _svcRetry = retry+ }+ where+ retry =+ Exponential+ { _retryBase = 5.0e-2+ , _retryGrowth = 2+ , _retryAttempts = 5+ , _retryCheck = check+ }+ check e+ | has (hasStatus 429) e = Just "too_many_requests"+ | has (hasCode "ThrottlingException" . hasStatus 400) e =+ Just "throttling_exception"+ | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"+ | has (hasStatus 504) e = Just "gateway_timeout"+ | has (hasStatus 502) e = Just "bad_gateway"+ | has (hasStatus 503) e = Just "service_unavailable"+ | has (hasStatus 500) e = Just "general_server_error"+ | has (hasStatus 509) e = Just "limit_exceeded"+ | otherwise = Nothing++-- | One or more parameters provided to the operation are invalid.+_InvalidParametersException :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidParametersException =+ _ServiceError . hasCode "InvalidParametersException"++-- | The specified resource is a duplicate.+_DuplicateResourceException :: AsError a => Getting (First ServiceError) a ServiceError+_DuplicateResourceException =+ _ServiceError . hasCode "DuplicateResourceException"++-- | The specified resource was not found.+_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError+_ResourceNotFoundException =+ _ServiceError . hasCode "ResourceNotFoundException"
+ gen/Network/AWS/ServiceCatalog/Types/Product.hs view
@@ -0,0 +1,1063 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.Types.Product+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.ServiceCatalog.Types.Product where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.ServiceCatalog.Types.Sum++-- | An administrator-specified constraint to apply when provisioning a product.+--+-- /See:/ 'constraintSummary' smart constructor.+data ConstraintSummary = ConstraintSummary'+ { _csType :: !(Maybe Text)+ , _csDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ConstraintSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csType'+--+-- * 'csDescription'+constraintSummary+ :: ConstraintSummary+constraintSummary =+ ConstraintSummary'+ { _csType = Nothing+ , _csDescription = Nothing+ }++-- | The type of the constraint.+csType :: Lens' ConstraintSummary (Maybe Text)+csType = lens _csType (\ s a -> s{_csType = a});++-- | The text description of the constraint.+csDescription :: Lens' ConstraintSummary (Maybe Text)+csDescription = lens _csDescription (\ s a -> s{_csDescription = a});++instance FromJSON ConstraintSummary where+ parseJSON+ = withObject "ConstraintSummary"+ (\ x ->+ ConstraintSummary' <$>+ (x .:? "Type") <*> (x .:? "Description"))++instance Hashable ConstraintSummary++instance NFData ConstraintSummary++-- | Summary information about a path for a user to have access to a specified product.+--+-- /See:/ 'launchPathSummary' smart constructor.+data LaunchPathSummary = LaunchPathSummary'+ { _lpsConstraintSummaries :: !(Maybe [ConstraintSummary])+ , _lpsName :: !(Maybe Text)+ , _lpsId :: !(Maybe Text)+ , _lpsTags :: !(Maybe [Tag])+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'LaunchPathSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lpsConstraintSummaries'+--+-- * 'lpsName'+--+-- * 'lpsId'+--+-- * 'lpsTags'+launchPathSummary+ :: LaunchPathSummary+launchPathSummary =+ LaunchPathSummary'+ { _lpsConstraintSummaries = Nothing+ , _lpsName = Nothing+ , _lpsId = Nothing+ , _lpsTags = Nothing+ }++-- | List of constraints on the portfolio-product relationship.+lpsConstraintSummaries :: Lens' LaunchPathSummary [ConstraintSummary]+lpsConstraintSummaries = lens _lpsConstraintSummaries (\ s a -> s{_lpsConstraintSummaries = a}) . _Default . _Coerce;++-- | Corresponds to the name of the portfolio to which the user was assigned.+lpsName :: Lens' LaunchPathSummary (Maybe Text)+lpsName = lens _lpsName (\ s a -> s{_lpsName = a});++-- | The unique identifier of the product path.+lpsId :: Lens' LaunchPathSummary (Maybe Text)+lpsId = lens _lpsId (\ s a -> s{_lpsId = a});++-- | List of tags used by this launch path.+lpsTags :: Lens' LaunchPathSummary [Tag]+lpsTags = lens _lpsTags (\ s a -> s{_lpsTags = a}) . _Default . _Coerce;++instance FromJSON LaunchPathSummary where+ parseJSON+ = withObject "LaunchPathSummary"+ (\ x ->+ LaunchPathSummary' <$>+ (x .:? "ConstraintSummaries" .!= mempty) <*>+ (x .:? "Name")+ <*> (x .:? "Id")+ <*> (x .:? "Tags" .!= mempty))++instance Hashable LaunchPathSummary++instance NFData LaunchPathSummary++-- | The search filter to limit results when listing request history records.+--+-- /See:/ 'listRecordHistorySearchFilter' smart constructor.+data ListRecordHistorySearchFilter = ListRecordHistorySearchFilter'+ { _lrhsfValue :: !(Maybe Text)+ , _lrhsfKey :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListRecordHistorySearchFilter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lrhsfValue'+--+-- * 'lrhsfKey'+listRecordHistorySearchFilter+ :: ListRecordHistorySearchFilter+listRecordHistorySearchFilter =+ ListRecordHistorySearchFilter'+ { _lrhsfValue = Nothing+ , _lrhsfKey = Nothing+ }++-- | The filter value for 'Key'.+lrhsfValue :: Lens' ListRecordHistorySearchFilter (Maybe Text)+lrhsfValue = lens _lrhsfValue (\ s a -> s{_lrhsfValue = a});++-- | The filter key.+lrhsfKey :: Lens' ListRecordHistorySearchFilter (Maybe Text)+lrhsfKey = lens _lrhsfKey (\ s a -> s{_lrhsfKey = a});++instance Hashable ListRecordHistorySearchFilter++instance NFData ListRecordHistorySearchFilter++instance ToJSON ListRecordHistorySearchFilter where+ toJSON ListRecordHistorySearchFilter'{..}+ = object+ (catMaybes+ [("Value" .=) <$> _lrhsfValue,+ ("Key" .=) <$> _lrhsfKey])++-- | The constraints that the administrator has put on the parameter.+--+-- /See:/ 'parameterConstraints' smart constructor.+newtype ParameterConstraints = ParameterConstraints'+ { _pcAllowedValues :: Maybe [Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ParameterConstraints' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pcAllowedValues'+parameterConstraints+ :: ParameterConstraints+parameterConstraints =+ ParameterConstraints'+ { _pcAllowedValues = Nothing+ }++-- | The values that the administrator has allowed for the parameter.+pcAllowedValues :: Lens' ParameterConstraints [Text]+pcAllowedValues = lens _pcAllowedValues (\ s a -> s{_pcAllowedValues = a}) . _Default . _Coerce;++instance FromJSON ParameterConstraints where+ parseJSON+ = withObject "ParameterConstraints"+ (\ x ->+ ParameterConstraints' <$>+ (x .:? "AllowedValues" .!= mempty))++instance Hashable ParameterConstraints++instance NFData ParameterConstraints++-- | A single product view aggregation value\/count pair, containing metadata about each product to which the calling user has access.+--+-- /See:/ 'productViewAggregationValue' smart constructor.+data ProductViewAggregationValue = ProductViewAggregationValue'+ { _pvavValue :: !(Maybe Text)+ , _pvavApproximateCount :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProductViewAggregationValue' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pvavValue'+--+-- * 'pvavApproximateCount'+productViewAggregationValue+ :: ProductViewAggregationValue+productViewAggregationValue =+ ProductViewAggregationValue'+ { _pvavValue = Nothing+ , _pvavApproximateCount = Nothing+ }++-- | The value of the product view aggregation.+pvavValue :: Lens' ProductViewAggregationValue (Maybe Text)+pvavValue = lens _pvavValue (\ s a -> s{_pvavValue = a});++-- | An approximate count of the products that match the value.+pvavApproximateCount :: Lens' ProductViewAggregationValue (Maybe Int)+pvavApproximateCount = lens _pvavApproximateCount (\ s a -> s{_pvavApproximateCount = a});++instance FromJSON ProductViewAggregationValue where+ parseJSON+ = withObject "ProductViewAggregationValue"+ (\ x ->+ ProductViewAggregationValue' <$>+ (x .:? "Value") <*> (x .:? "ApproximateCount"))++instance Hashable ProductViewAggregationValue++instance NFData ProductViewAggregationValue++-- | The summary metadata about the specified product.+--+-- /See:/ 'productViewSummary' smart constructor.+data ProductViewSummary = ProductViewSummary'+ { _pvsOwner :: !(Maybe Text)+ , _pvsSupportURL :: !(Maybe Text)+ , _pvsShortDescription :: !(Maybe Text)+ , _pvsHasDefaultPath :: !(Maybe Bool)+ , _pvsDistributor :: !(Maybe Text)+ , _pvsName :: !(Maybe Text)+ , _pvsId :: !(Maybe Text)+ , _pvsType :: !(Maybe Text)+ , _pvsSupportEmail :: !(Maybe Text)+ , _pvsProductId :: !(Maybe Text)+ , _pvsSupportDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProductViewSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pvsOwner'+--+-- * 'pvsSupportURL'+--+-- * 'pvsShortDescription'+--+-- * 'pvsHasDefaultPath'+--+-- * 'pvsDistributor'+--+-- * 'pvsName'+--+-- * 'pvsId'+--+-- * 'pvsType'+--+-- * 'pvsSupportEmail'+--+-- * 'pvsProductId'+--+-- * 'pvsSupportDescription'+productViewSummary+ :: ProductViewSummary+productViewSummary =+ ProductViewSummary'+ { _pvsOwner = Nothing+ , _pvsSupportURL = Nothing+ , _pvsShortDescription = Nothing+ , _pvsHasDefaultPath = Nothing+ , _pvsDistributor = Nothing+ , _pvsName = Nothing+ , _pvsId = Nothing+ , _pvsType = Nothing+ , _pvsSupportEmail = Nothing+ , _pvsProductId = Nothing+ , _pvsSupportDescription = Nothing+ }++-- | The owner of the product. Contact the product administrator for the significance of this value.+pvsOwner :: Lens' ProductViewSummary (Maybe Text)+pvsOwner = lens _pvsOwner (\ s a -> s{_pvsOwner = a});++-- | The URL information to obtain support for this Product.+pvsSupportURL :: Lens' ProductViewSummary (Maybe Text)+pvsSupportURL = lens _pvsSupportURL (\ s a -> s{_pvsSupportURL = a});++-- | Short description of the product.+pvsShortDescription :: Lens' ProductViewSummary (Maybe Text)+pvsShortDescription = lens _pvsShortDescription (\ s a -> s{_pvsShortDescription = a});++-- | A value of 'false' indicates that the product does not have a default path, while a value of 'true' indicates that it does. If it\'s false, call < ListLaunchPaths> to disambiguate between paths. If true, < ListLaunchPaths> is not required, and the output of the < ProductViewSummary> operation can be used directly with < DescribeProvisioningParameters>.+pvsHasDefaultPath :: Lens' ProductViewSummary (Maybe Bool)+pvsHasDefaultPath = lens _pvsHasDefaultPath (\ s a -> s{_pvsHasDefaultPath = a});++-- | The distributor of the product. Contact the product administrator for the significance of this value.+pvsDistributor :: Lens' ProductViewSummary (Maybe Text)+pvsDistributor = lens _pvsDistributor (\ s a -> s{_pvsDistributor = a});++-- | The name of the product.+pvsName :: Lens' ProductViewSummary (Maybe Text)+pvsName = lens _pvsName (\ s a -> s{_pvsName = a});++-- | The product view identifier.+pvsId :: Lens' ProductViewSummary (Maybe Text)+pvsId = lens _pvsId (\ s a -> s{_pvsId = a});++-- | The product type. Contact the product administrator for the significance of this value.+pvsType :: Lens' ProductViewSummary (Maybe Text)+pvsType = lens _pvsType (\ s a -> s{_pvsType = a});++-- | The email contact information to obtain support for this Product.+pvsSupportEmail :: Lens' ProductViewSummary (Maybe Text)+pvsSupportEmail = lens _pvsSupportEmail (\ s a -> s{_pvsSupportEmail = a});++-- | The product identifier.+pvsProductId :: Lens' ProductViewSummary (Maybe Text)+pvsProductId = lens _pvsProductId (\ s a -> s{_pvsProductId = a});++-- | The description of the support for this Product.+pvsSupportDescription :: Lens' ProductViewSummary (Maybe Text)+pvsSupportDescription = lens _pvsSupportDescription (\ s a -> s{_pvsSupportDescription = a});++instance FromJSON ProductViewSummary where+ parseJSON+ = withObject "ProductViewSummary"+ (\ x ->+ ProductViewSummary' <$>+ (x .:? "Owner") <*> (x .:? "SupportUrl") <*>+ (x .:? "ShortDescription")+ <*> (x .:? "HasDefaultPath")+ <*> (x .:? "Distributor")+ <*> (x .:? "Name")+ <*> (x .:? "Id")+ <*> (x .:? "Type")+ <*> (x .:? "SupportEmail")+ <*> (x .:? "ProductId")+ <*> (x .:? "SupportDescription"))++instance Hashable ProductViewSummary++instance NFData ProductViewSummary++-- | Detailed information about a ProvisionedProduct object.+--+-- /See:/ 'provisionedProductDetail' smart constructor.+data ProvisionedProductDetail = ProvisionedProductDetail'+ { _ppdIdempotencyToken :: !(Maybe Text)+ , _ppdStatus :: !(Maybe RecordStatus)+ , _ppdARN :: !(Maybe Text)+ , _ppdCreatedTime :: !(Maybe POSIX)+ , _ppdStatusMessage :: !(Maybe Text)+ , _ppdName :: !(Maybe Text)+ , _ppdLastRecordId :: !(Maybe Text)+ , _ppdId :: !(Maybe Text)+ , _ppdType :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProvisionedProductDetail' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ppdIdempotencyToken'+--+-- * 'ppdStatus'+--+-- * 'ppdARN'+--+-- * 'ppdCreatedTime'+--+-- * 'ppdStatusMessage'+--+-- * 'ppdName'+--+-- * 'ppdLastRecordId'+--+-- * 'ppdId'+--+-- * 'ppdType'+provisionedProductDetail+ :: ProvisionedProductDetail+provisionedProductDetail =+ ProvisionedProductDetail'+ { _ppdIdempotencyToken = Nothing+ , _ppdStatus = Nothing+ , _ppdARN = Nothing+ , _ppdCreatedTime = Nothing+ , _ppdStatusMessage = Nothing+ , _ppdName = Nothing+ , _ppdLastRecordId = Nothing+ , _ppdId = Nothing+ , _ppdType = Nothing+ }++-- | An idempotency token that uniquely identifies this ProvisionedProduct.+ppdIdempotencyToken :: Lens' ProvisionedProductDetail (Maybe Text)+ppdIdempotencyToken = lens _ppdIdempotencyToken (\ s a -> s{_ppdIdempotencyToken = a});++-- | The current status of the ProvisionedProduct.+ppdStatus :: Lens' ProvisionedProductDetail (Maybe RecordStatus)+ppdStatus = lens _ppdStatus (\ s a -> s{_ppdStatus = a});++-- | The ARN associated with the ProvisionedProduct object.+ppdARN :: Lens' ProvisionedProductDetail (Maybe Text)+ppdARN = lens _ppdARN (\ s a -> s{_ppdARN = a});++-- | The time the ProvisionedProduct was created.+ppdCreatedTime :: Lens' ProvisionedProductDetail (Maybe UTCTime)+ppdCreatedTime = lens _ppdCreatedTime (\ s a -> s{_ppdCreatedTime = a}) . mapping _Time;++-- | The current status message of the ProvisionedProduct.+ppdStatusMessage :: Lens' ProvisionedProductDetail (Maybe Text)+ppdStatusMessage = lens _ppdStatusMessage (\ s a -> s{_ppdStatusMessage = a});++-- | The user-friendly name of the ProvisionedProduct object.+ppdName :: Lens' ProvisionedProductDetail (Maybe Text)+ppdName = lens _ppdName (\ s a -> s{_ppdName = a});++-- | The record identifier of the last request performed on this ProvisionedProduct object.+ppdLastRecordId :: Lens' ProvisionedProductDetail (Maybe Text)+ppdLastRecordId = lens _ppdLastRecordId (\ s a -> s{_ppdLastRecordId = a});++-- | The identifier of the ProvisionedProduct object.+ppdId :: Lens' ProvisionedProductDetail (Maybe Text)+ppdId = lens _ppdId (\ s a -> s{_ppdId = a});++-- | The type of the ProvisionedProduct object.+ppdType :: Lens' ProvisionedProductDetail (Maybe Text)+ppdType = lens _ppdType (\ s a -> s{_ppdType = a});++instance FromJSON ProvisionedProductDetail where+ parseJSON+ = withObject "ProvisionedProductDetail"+ (\ x ->+ ProvisionedProductDetail' <$>+ (x .:? "IdempotencyToken") <*> (x .:? "Status") <*>+ (x .:? "Arn")+ <*> (x .:? "CreatedTime")+ <*> (x .:? "StatusMessage")+ <*> (x .:? "Name")+ <*> (x .:? "LastRecordId")+ <*> (x .:? "Id")+ <*> (x .:? "Type"))++instance Hashable ProvisionedProductDetail++instance NFData ProvisionedProductDetail++-- | Contains information indicating the ways in which a product can be provisioned.+--+-- /See:/ 'provisioningArtifact' smart constructor.+data ProvisioningArtifact = ProvisioningArtifact'+ { _paCreatedTime :: !(Maybe POSIX)+ , _paName :: !(Maybe Text)+ , _paId :: !(Maybe Text)+ , _paDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProvisioningArtifact' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'paCreatedTime'+--+-- * 'paName'+--+-- * 'paId'+--+-- * 'paDescription'+provisioningArtifact+ :: ProvisioningArtifact+provisioningArtifact =+ ProvisioningArtifact'+ { _paCreatedTime = Nothing+ , _paName = Nothing+ , _paId = Nothing+ , _paDescription = Nothing+ }++-- | The time that the artifact was created by the Administrator.+paCreatedTime :: Lens' ProvisioningArtifact (Maybe UTCTime)+paCreatedTime = lens _paCreatedTime (\ s a -> s{_paCreatedTime = a}) . mapping _Time;++-- | The name of the artifact.+paName :: Lens' ProvisioningArtifact (Maybe Text)+paName = lens _paName (\ s a -> s{_paName = a});++-- | The identifier for the artifact.+paId :: Lens' ProvisioningArtifact (Maybe Text)+paId = lens _paId (\ s a -> s{_paId = a});++-- | The text description of the artifact.+paDescription :: Lens' ProvisioningArtifact (Maybe Text)+paDescription = lens _paDescription (\ s a -> s{_paDescription = a});++instance FromJSON ProvisioningArtifact where+ parseJSON+ = withObject "ProvisioningArtifact"+ (\ x ->+ ProvisioningArtifact' <$>+ (x .:? "CreatedTime") <*> (x .:? "Name") <*>+ (x .:? "Id")+ <*> (x .:? "Description"))++instance Hashable ProvisioningArtifact++instance NFData ProvisioningArtifact++-- | A parameter used to successfully provision the product. This value includes a list of allowable values and additional metadata.+--+-- /See:/ 'provisioningArtifactParameter' smart constructor.+data ProvisioningArtifactParameter = ProvisioningArtifactParameter'+ { _papIsNoEcho :: !(Maybe Bool)+ , _papParameterKey :: !(Maybe Text)+ , _papParameterType :: !(Maybe Text)+ , _papParameterConstraints :: !(Maybe ParameterConstraints)+ , _papDefaultValue :: !(Maybe Text)+ , _papDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProvisioningArtifactParameter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'papIsNoEcho'+--+-- * 'papParameterKey'+--+-- * 'papParameterType'+--+-- * 'papParameterConstraints'+--+-- * 'papDefaultValue'+--+-- * 'papDescription'+provisioningArtifactParameter+ :: ProvisioningArtifactParameter+provisioningArtifactParameter =+ ProvisioningArtifactParameter'+ { _papIsNoEcho = Nothing+ , _papParameterKey = Nothing+ , _papParameterType = Nothing+ , _papParameterConstraints = Nothing+ , _papDefaultValue = Nothing+ , _papDescription = Nothing+ }++-- | If this value is true, the value for this parameter is obfuscated from view when the parameter is retrieved. This parameter is used to hide sensitive information.+papIsNoEcho :: Lens' ProvisioningArtifactParameter (Maybe Bool)+papIsNoEcho = lens _papIsNoEcho (\ s a -> s{_papIsNoEcho = a});++-- | The parameter key.+papParameterKey :: Lens' ProvisioningArtifactParameter (Maybe Text)+papParameterKey = lens _papParameterKey (\ s a -> s{_papParameterKey = a});++-- | The parameter type.+papParameterType :: Lens' ProvisioningArtifactParameter (Maybe Text)+papParameterType = lens _papParameterType (\ s a -> s{_papParameterType = a});++-- | The list of constraints that the administrator has put on the parameter.+papParameterConstraints :: Lens' ProvisioningArtifactParameter (Maybe ParameterConstraints)+papParameterConstraints = lens _papParameterConstraints (\ s a -> s{_papParameterConstraints = a});++-- | The default value for this parameter.+papDefaultValue :: Lens' ProvisioningArtifactParameter (Maybe Text)+papDefaultValue = lens _papDefaultValue (\ s a -> s{_papDefaultValue = a});++-- | The text description of the parameter.+papDescription :: Lens' ProvisioningArtifactParameter (Maybe Text)+papDescription = lens _papDescription (\ s a -> s{_papDescription = a});++instance FromJSON ProvisioningArtifactParameter where+ parseJSON+ = withObject "ProvisioningArtifactParameter"+ (\ x ->+ ProvisioningArtifactParameter' <$>+ (x .:? "IsNoEcho") <*> (x .:? "ParameterKey") <*>+ (x .:? "ParameterType")+ <*> (x .:? "ParameterConstraints")+ <*> (x .:? "DefaultValue")+ <*> (x .:? "Description"))++instance Hashable ProvisioningArtifactParameter++instance NFData ProvisioningArtifactParameter++-- | The arameter key\/value pairs used to provision a product.+--+-- /See:/ 'provisioningParameter' smart constructor.+data ProvisioningParameter = ProvisioningParameter'+ { _ppValue :: !(Maybe Text)+ , _ppKey :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProvisioningParameter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ppValue'+--+-- * 'ppKey'+provisioningParameter+ :: ProvisioningParameter+provisioningParameter =+ ProvisioningParameter'+ { _ppValue = Nothing+ , _ppKey = Nothing+ }++-- | The value to use for provisioning. Any constraints on this value can be found in 'ProvisioningArtifactParameter' for 'Key'.+ppValue :: Lens' ProvisioningParameter (Maybe Text)+ppValue = lens _ppValue (\ s a -> s{_ppValue = a});++-- | The 'ProvisioningArtifactParameter.ParameterKey' parameter from < DescribeProvisioningParameters>.+ppKey :: Lens' ProvisioningParameter (Maybe Text)+ppKey = lens _ppKey (\ s a -> s{_ppKey = a});++instance Hashable ProvisioningParameter++instance NFData ProvisioningParameter++instance ToJSON ProvisioningParameter where+ toJSON ProvisioningParameter'{..}+ = object+ (catMaybes+ [("Value" .=) <$> _ppValue, ("Key" .=) <$> _ppKey])++-- | The full details of a specific ProvisionedProduct object.+--+-- /See:/ 'recordDetail' smart constructor.+data RecordDetail = RecordDetail'+ { _rdStatus :: !(Maybe RecordStatus)+ , _rdRecordTags :: !(Maybe [RecordTag])+ , _rdProvisionedProductName :: !(Maybe Text)+ , _rdProvisioningArtifactId :: !(Maybe Text)+ , _rdCreatedTime :: !(Maybe POSIX)+ , _rdRecordType :: !(Maybe Text)+ , _rdRecordId :: !(Maybe Text)+ , _rdProvisionedProductType :: !(Maybe Text)+ , _rdUpdatedTime :: !(Maybe POSIX)+ , _rdPathId :: !(Maybe Text)+ , _rdProvisionedProductId :: !(Maybe Text)+ , _rdRecordErrors :: !(Maybe [RecordError])+ , _rdProductId :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'RecordDetail' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rdStatus'+--+-- * 'rdRecordTags'+--+-- * 'rdProvisionedProductName'+--+-- * 'rdProvisioningArtifactId'+--+-- * 'rdCreatedTime'+--+-- * 'rdRecordType'+--+-- * 'rdRecordId'+--+-- * 'rdProvisionedProductType'+--+-- * 'rdUpdatedTime'+--+-- * 'rdPathId'+--+-- * 'rdProvisionedProductId'+--+-- * 'rdRecordErrors'+--+-- * 'rdProductId'+recordDetail+ :: RecordDetail+recordDetail =+ RecordDetail'+ { _rdStatus = Nothing+ , _rdRecordTags = Nothing+ , _rdProvisionedProductName = Nothing+ , _rdProvisioningArtifactId = Nothing+ , _rdCreatedTime = Nothing+ , _rdRecordType = Nothing+ , _rdRecordId = Nothing+ , _rdProvisionedProductType = Nothing+ , _rdUpdatedTime = Nothing+ , _rdPathId = Nothing+ , _rdProvisionedProductId = Nothing+ , _rdRecordErrors = Nothing+ , _rdProductId = Nothing+ }++-- | The status of the ProvisionedProduct object.+rdStatus :: Lens' RecordDetail (Maybe RecordStatus)+rdStatus = lens _rdStatus (\ s a -> s{_rdStatus = a});++-- | List of tags associated with this record.+rdRecordTags :: Lens' RecordDetail [RecordTag]+rdRecordTags = lens _rdRecordTags (\ s a -> s{_rdRecordTags = a}) . _Default . _Coerce;++-- | The user-friendly name of the ProvisionedProduct object.+rdProvisionedProductName :: Lens' RecordDetail (Maybe Text)+rdProvisionedProductName = lens _rdProvisionedProductName (\ s a -> s{_rdProvisionedProductName = a});++-- | The provisioning artifact identifier for this product.+rdProvisioningArtifactId :: Lens' RecordDetail (Maybe Text)+rdProvisioningArtifactId = lens _rdProvisioningArtifactId (\ s a -> s{_rdProvisioningArtifactId = a});++-- | The time when the record for the ProvisionedProduct object was created.+rdCreatedTime :: Lens' RecordDetail (Maybe UTCTime)+rdCreatedTime = lens _rdCreatedTime (\ s a -> s{_rdCreatedTime = a}) . mapping _Time;++-- | The record type for this record.+rdRecordType :: Lens' RecordDetail (Maybe Text)+rdRecordType = lens _rdRecordType (\ s a -> s{_rdRecordType = a});++-- | The identifier of the ProvisionedProduct object record.+rdRecordId :: Lens' RecordDetail (Maybe Text)+rdRecordId = lens _rdRecordId (\ s a -> s{_rdRecordId = a});++-- | The type of the ProvisionedProduct object.+rdProvisionedProductType :: Lens' RecordDetail (Maybe Text)+rdProvisionedProductType = lens _rdProvisionedProductType (\ s a -> s{_rdProvisionedProductType = a});++-- | The time when the record for the ProvisionedProduct object was last updated.+rdUpdatedTime :: Lens' RecordDetail (Maybe UTCTime)+rdUpdatedTime = lens _rdUpdatedTime (\ s a -> s{_rdUpdatedTime = a}) . mapping _Time;++-- | The identifier of the path for this product\'s provisioning.+rdPathId :: Lens' RecordDetail (Maybe Text)+rdPathId = lens _rdPathId (\ s a -> s{_rdPathId = a});++-- | The identifier of the ProvisionedProduct object.+rdProvisionedProductId :: Lens' RecordDetail (Maybe Text)+rdProvisionedProductId = lens _rdProvisionedProductId (\ s a -> s{_rdProvisionedProductId = a});++-- | A list of errors that occurred while processing the request.+rdRecordErrors :: Lens' RecordDetail [RecordError]+rdRecordErrors = lens _rdRecordErrors (\ s a -> s{_rdRecordErrors = a}) . _Default . _Coerce;++-- | The identifier of the product.+rdProductId :: Lens' RecordDetail (Maybe Text)+rdProductId = lens _rdProductId (\ s a -> s{_rdProductId = a});++instance FromJSON RecordDetail where+ parseJSON+ = withObject "RecordDetail"+ (\ x ->+ RecordDetail' <$>+ (x .:? "Status") <*> (x .:? "RecordTags" .!= mempty)+ <*> (x .:? "ProvisionedProductName")+ <*> (x .:? "ProvisioningArtifactId")+ <*> (x .:? "CreatedTime")+ <*> (x .:? "RecordType")+ <*> (x .:? "RecordId")+ <*> (x .:? "ProvisionedProductType")+ <*> (x .:? "UpdatedTime")+ <*> (x .:? "PathId")+ <*> (x .:? "ProvisionedProductId")+ <*> (x .:? "RecordErrors" .!= mempty)+ <*> (x .:? "ProductId"))++instance Hashable RecordDetail++instance NFData RecordDetail++-- | The error code and description resulting from an operation.+--+-- /See:/ 'recordError' smart constructor.+data RecordError = RecordError'+ { _reCode :: !(Maybe Text)+ , _reDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'RecordError' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'reCode'+--+-- * 'reDescription'+recordError+ :: RecordError+recordError =+ RecordError'+ { _reCode = Nothing+ , _reDescription = Nothing+ }++-- | The numeric value of the error.+reCode :: Lens' RecordError (Maybe Text)+reCode = lens _reCode (\ s a -> s{_reCode = a});++-- | The text description of the error.+reDescription :: Lens' RecordError (Maybe Text)+reDescription = lens _reDescription (\ s a -> s{_reDescription = a});++instance FromJSON RecordError where+ parseJSON+ = withObject "RecordError"+ (\ x ->+ RecordError' <$>+ (x .:? "Code") <*> (x .:? "Description"))++instance Hashable RecordError++instance NFData RecordError++-- | An output for the specified Product object created as the result of a request. For example, a CloudFormation-backed product that creates an S3 bucket would have an output for the S3 bucket URL.+--+-- /See:/ 'recordOutput' smart constructor.+data RecordOutput = RecordOutput'+ { _roOutputValue :: !(Maybe Text)+ , _roOutputKey :: !(Maybe Text)+ , _roDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'RecordOutput' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'roOutputValue'+--+-- * 'roOutputKey'+--+-- * 'roDescription'+recordOutput+ :: RecordOutput+recordOutput =+ RecordOutput'+ { _roOutputValue = Nothing+ , _roOutputKey = Nothing+ , _roDescription = Nothing+ }++-- | The output value.+roOutputValue :: Lens' RecordOutput (Maybe Text)+roOutputValue = lens _roOutputValue (\ s a -> s{_roOutputValue = a});++-- | The output key.+roOutputKey :: Lens' RecordOutput (Maybe Text)+roOutputKey = lens _roOutputKey (\ s a -> s{_roOutputKey = a});++-- | The text description of the output.+roDescription :: Lens' RecordOutput (Maybe Text)+roDescription = lens _roDescription (\ s a -> s{_roDescription = a});++instance FromJSON RecordOutput where+ parseJSON+ = withObject "RecordOutput"+ (\ x ->+ RecordOutput' <$>+ (x .:? "OutputValue") <*> (x .:? "OutputKey") <*>+ (x .:? "Description"))++instance Hashable RecordOutput++instance NFData RecordOutput++-- | A tag associated with the record, stored as a key-value pair.+--+-- /See:/ 'recordTag' smart constructor.+data RecordTag = RecordTag'+ { _rtValue :: !(Maybe Text)+ , _rtKey :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'RecordTag' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rtValue'+--+-- * 'rtKey'+recordTag+ :: RecordTag+recordTag =+ RecordTag'+ { _rtValue = Nothing+ , _rtKey = Nothing+ }++-- | The value for this tag.+rtValue :: Lens' RecordTag (Maybe Text)+rtValue = lens _rtValue (\ s a -> s{_rtValue = a});++-- | The key for this tag.+rtKey :: Lens' RecordTag (Maybe Text)+rtKey = lens _rtKey (\ s a -> s{_rtKey = a});++instance FromJSON RecordTag where+ parseJSON+ = withObject "RecordTag"+ (\ x ->+ RecordTag' <$> (x .:? "Value") <*> (x .:? "Key"))++instance Hashable RecordTag++instance NFData RecordTag++-- | Optional key\/value pairs to associate with this provisioning. These tags are propagated to the resources created in the provisioning.+--+-- /See:/ 'tag' smart constructor.+data Tag = Tag'+ { _tagValue :: !(Maybe Text)+ , _tagKey :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Tag' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tagValue'+--+-- * 'tagKey'+tag+ :: Tag+tag =+ Tag'+ { _tagValue = Nothing+ , _tagKey = Nothing+ }++-- | The esired value for this key.+tagValue :: Lens' Tag (Maybe Text)+tagValue = lens _tagValue (\ s a -> s{_tagValue = a});++-- | The 'ProvisioningArtifactParameter.TagKey' parameter from < DescribeProvisioningParameters>.+tagKey :: Lens' Tag (Maybe Text)+tagKey = lens _tagKey (\ s a -> s{_tagKey = a});++instance FromJSON Tag where+ parseJSON+ = withObject "Tag"+ (\ x -> Tag' <$> (x .:? "Value") <*> (x .:? "Key"))++instance Hashable Tag++instance NFData Tag++instance ToJSON Tag where+ toJSON Tag'{..}+ = object+ (catMaybes+ [("Value" .=) <$> _tagValue, ("Key" .=) <$> _tagKey])++-- | The parameter key\/value pair used to update a ProvisionedProduct object. If 'UsePreviousValue' is set to true, 'Value' is ignored and the value for 'Key' is kept as previously set (current value).+--+-- /See:/ 'updateProvisioningParameter' smart constructor.+data UpdateProvisioningParameter = UpdateProvisioningParameter'+ { _uppValue :: !(Maybe Text)+ , _uppKey :: !(Maybe Text)+ , _uppUsePreviousValue :: !(Maybe Bool)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'UpdateProvisioningParameter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uppValue'+--+-- * 'uppKey'+--+-- * 'uppUsePreviousValue'+updateProvisioningParameter+ :: UpdateProvisioningParameter+updateProvisioningParameter =+ UpdateProvisioningParameter'+ { _uppValue = Nothing+ , _uppKey = Nothing+ , _uppUsePreviousValue = Nothing+ }++-- | The value to use for updating the product provisioning. Any constraints on this value can be found in the 'ProvisioningArtifactParameter' parameter for 'Key'.+uppValue :: Lens' UpdateProvisioningParameter (Maybe Text)+uppValue = lens _uppValue (\ s a -> s{_uppValue = a});++-- | The 'ProvisioningArtifactParameter.ParameterKey' parameter from < DescribeProvisioningParameters>.+uppKey :: Lens' UpdateProvisioningParameter (Maybe Text)+uppKey = lens _uppKey (\ s a -> s{_uppKey = a});++-- | If true, uses the currently set value for 'Key', ignoring 'UpdateProvisioningParameter.Value'.+uppUsePreviousValue :: Lens' UpdateProvisioningParameter (Maybe Bool)+uppUsePreviousValue = lens _uppUsePreviousValue (\ s a -> s{_uppUsePreviousValue = a});++instance Hashable UpdateProvisioningParameter++instance NFData UpdateProvisioningParameter++instance ToJSON UpdateProvisioningParameter where+ toJSON UpdateProvisioningParameter'{..}+ = object+ (catMaybes+ [("Value" .=) <$> _uppValue, ("Key" .=) <$> _uppKey,+ ("UsePreviousValue" .=) <$> _uppUsePreviousValue])++-- | Additional information provided by the administrator.+--+-- /See:/ 'usageInstruction' smart constructor.+data UsageInstruction = UsageInstruction'+ { _uiValue :: !(Maybe Text)+ , _uiType :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsageInstruction' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uiValue'+--+-- * 'uiType'+usageInstruction+ :: UsageInstruction+usageInstruction =+ UsageInstruction'+ { _uiValue = Nothing+ , _uiType = Nothing+ }++-- | The usage instruction value for this type.+uiValue :: Lens' UsageInstruction (Maybe Text)+uiValue = lens _uiValue (\ s a -> s{_uiValue = a});++-- | The usage instruction type for the value.+uiType :: Lens' UsageInstruction (Maybe Text)+uiType = lens _uiType (\ s a -> s{_uiType = a});++instance FromJSON UsageInstruction where+ parseJSON+ = withObject "UsageInstruction"+ (\ x ->+ UsageInstruction' <$>+ (x .:? "Value") <*> (x .:? "Type"))++instance Hashable UsageInstruction++instance NFData UsageInstruction
+ gen/Network/AWS/ServiceCatalog/Types/Sum.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.Types.Sum+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.ServiceCatalog.Types.Sum where++import Network.AWS.Prelude++data ProductViewFilterBy+ = FullTextSearch+ | Owner+ | ProductType+ deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)++instance FromText ProductViewFilterBy where+ parser = takeLowerText >>= \case+ "fulltextsearch" -> pure FullTextSearch+ "owner" -> pure Owner+ "producttype" -> pure ProductType+ e -> fromTextError $ "Failure parsing ProductViewFilterBy from value: '" <> e+ <> "'. Accepted values: fulltextsearch, owner, producttype"++instance ToText ProductViewFilterBy where+ toText = \case+ FullTextSearch -> "FullTextSearch"+ Owner -> "Owner"+ ProductType -> "ProductType"++instance Hashable ProductViewFilterBy+instance NFData ProductViewFilterBy+instance ToByteString ProductViewFilterBy+instance ToQuery ProductViewFilterBy+instance ToHeader ProductViewFilterBy++instance ToJSON ProductViewFilterBy where+ toJSON = toJSONText++data ProductViewSortBy+ = CreationDate+ | Title+ | VersionCount+ deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)++instance FromText ProductViewSortBy where+ parser = takeLowerText >>= \case+ "creationdate" -> pure CreationDate+ "title" -> pure Title+ "versioncount" -> pure VersionCount+ e -> fromTextError $ "Failure parsing ProductViewSortBy from value: '" <> e+ <> "'. Accepted values: creationdate, title, versioncount"++instance ToText ProductViewSortBy where+ toText = \case+ CreationDate -> "CreationDate"+ Title -> "Title"+ VersionCount -> "VersionCount"++instance Hashable ProductViewSortBy+instance NFData ProductViewSortBy+instance ToByteString ProductViewSortBy+instance ToQuery ProductViewSortBy+instance ToHeader ProductViewSortBy++instance ToJSON ProductViewSortBy where+ toJSON = toJSONText++data RecordStatus+ = Error'+ | InProgress+ | Succeeded+ deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)++instance FromText RecordStatus where+ parser = takeLowerText >>= \case+ "error" -> pure Error'+ "in_progress" -> pure InProgress+ "succeeded" -> pure Succeeded+ e -> fromTextError $ "Failure parsing RecordStatus from value: '" <> e+ <> "'. Accepted values: error, in_progress, succeeded"++instance ToText RecordStatus where+ toText = \case+ Error' -> "ERROR"+ InProgress -> "IN_PROGRESS"+ Succeeded -> "SUCCEEDED"++instance Hashable RecordStatus+instance NFData RecordStatus+instance ToByteString RecordStatus+instance ToQuery RecordStatus+instance ToHeader RecordStatus++instance FromJSON RecordStatus where+ parseJSON = parseJSONText "RecordStatus"++data SortOrder+ = Ascending+ | Descending+ deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)++instance FromText SortOrder where+ parser = takeLowerText >>= \case+ "ascending" -> pure Ascending+ "descending" -> pure Descending+ e -> fromTextError $ "Failure parsing SortOrder from value: '" <> e+ <> "'. Accepted values: ascending, descending"++instance ToText SortOrder where+ toText = \case+ Ascending -> "ASCENDING"+ Descending -> "DESCENDING"++instance Hashable SortOrder+instance NFData SortOrder+instance ToByteString SortOrder+instance ToQuery SortOrder+instance ToHeader SortOrder++instance ToJSON SortOrder where+ toJSON = toJSONText
+ gen/Network/AWS/ServiceCatalog/UpdateProvisionedProduct.hs view
@@ -0,0 +1,217 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.UpdateProvisionedProduct+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Requests updates to the configuration of an existing ProvisionedProduct object. If there are tags associated with the object, they cannot be updated or added with this operation. Depending on the specific updates requested, this operation may update with no interruption, with some interruption, or replace the ProvisionedProduct object entirely.+--+-- You can check the status of this request using the < DescribeRecord> operation.+module Network.AWS.ServiceCatalog.UpdateProvisionedProduct+ (+ -- * Creating a Request+ updateProvisionedProduct+ , UpdateProvisionedProduct+ -- * Request Lenses+ , uppProvisionedProductName+ , uppProvisioningArtifactId+ , uppAcceptLanguage+ , uppPathId+ , uppProvisioningParameters+ , uppProvisionedProductId+ , uppProductId+ , uppUpdateToken++ -- * Destructuring the Response+ , updateProvisionedProductResponse+ , UpdateProvisionedProductResponse+ -- * Response Lenses+ , upprsRecordDetail+ , upprsResponseStatus+ ) where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.ServiceCatalog.Types+import Network.AWS.ServiceCatalog.Types.Product++-- | /See:/ 'updateProvisionedProduct' smart constructor.+data UpdateProvisionedProduct = UpdateProvisionedProduct'+ { _uppProvisionedProductName :: !(Maybe Text)+ , _uppProvisioningArtifactId :: !(Maybe Text)+ , _uppAcceptLanguage :: !(Maybe Text)+ , _uppPathId :: !(Maybe Text)+ , _uppProvisioningParameters :: !(Maybe [UpdateProvisioningParameter])+ , _uppProvisionedProductId :: !(Maybe Text)+ , _uppProductId :: !(Maybe Text)+ , _uppUpdateToken :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'UpdateProvisionedProduct' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uppProvisionedProductName'+--+-- * 'uppProvisioningArtifactId'+--+-- * 'uppAcceptLanguage'+--+-- * 'uppPathId'+--+-- * 'uppProvisioningParameters'+--+-- * 'uppProvisionedProductId'+--+-- * 'uppProductId'+--+-- * 'uppUpdateToken'+updateProvisionedProduct+ :: Text -- ^ 'uppUpdateToken'+ -> UpdateProvisionedProduct+updateProvisionedProduct pUpdateToken_ =+ UpdateProvisionedProduct'+ { _uppProvisionedProductName = Nothing+ , _uppProvisioningArtifactId = Nothing+ , _uppAcceptLanguage = Nothing+ , _uppPathId = Nothing+ , _uppProvisioningParameters = Nothing+ , _uppProvisionedProductId = Nothing+ , _uppProductId = Nothing+ , _uppUpdateToken = pUpdateToken_+ }++-- | The updated name of the ProvisionedProduct object . You must specify either 'ProvisionedProductName' or 'ProvisionedProductId', but not both.+uppProvisionedProductName :: Lens' UpdateProvisionedProduct (Maybe Text)+uppProvisionedProductName = lens _uppProvisionedProductName (\ s a -> s{_uppProvisionedProductName = a});++-- | The provisioning artifact identifier for this product.+uppProvisioningArtifactId :: Lens' UpdateProvisionedProduct (Maybe Text)+uppProvisioningArtifactId = lens _uppProvisioningArtifactId (\ s a -> s{_uppProvisioningArtifactId = a});++-- | Optional language code. Supported language codes are as follows:+--+-- \"en\" (English)+--+-- \"jp\" (Japanese)+--+-- \"zh\" (Chinese)+--+-- If no code is specified, \"en\" is used as the default.+uppAcceptLanguage :: Lens' UpdateProvisionedProduct (Maybe Text)+uppAcceptLanguage = lens _uppAcceptLanguage (\ s a -> s{_uppAcceptLanguage = a});++-- | The identifier of the path to use in the updated ProvisionedProduct object. This value is optional if the product has a default path, and is required if there is more than one path for the specified product.+uppPathId :: Lens' UpdateProvisionedProduct (Maybe Text)+uppPathId = lens _uppPathId (\ s a -> s{_uppPathId = a});++-- | A list of 'ProvisioningParameter' objects used to update the ProvisionedProduct object.+uppProvisioningParameters :: Lens' UpdateProvisionedProduct [UpdateProvisioningParameter]+uppProvisioningParameters = lens _uppProvisioningParameters (\ s a -> s{_uppProvisioningParameters = a}) . _Default . _Coerce;++-- | The identifier of the ProvisionedProduct object to update. You must specify either 'ProvisionedProductName' or 'ProvisionedProductId', but not both.+uppProvisionedProductId :: Lens' UpdateProvisionedProduct (Maybe Text)+uppProvisionedProductId = lens _uppProvisionedProductId (\ s a -> s{_uppProvisionedProductId = a});++-- | The identifier of the ProvisionedProduct object.+uppProductId :: Lens' UpdateProvisionedProduct (Maybe Text)+uppProductId = lens _uppProductId (\ s a -> s{_uppProductId = a});++-- | The idempotency token that uniquely identifies the provisioning update request.+uppUpdateToken :: Lens' UpdateProvisionedProduct Text+uppUpdateToken = lens _uppUpdateToken (\ s a -> s{_uppUpdateToken = a});++instance AWSRequest UpdateProvisionedProduct where+ type Rs UpdateProvisionedProduct =+ UpdateProvisionedProductResponse+ request = postJSON serviceCatalog+ response+ = receiveJSON+ (\ s h x ->+ UpdateProvisionedProductResponse' <$>+ (x .?> "RecordDetail") <*> (pure (fromEnum s)))++instance Hashable UpdateProvisionedProduct++instance NFData UpdateProvisionedProduct++instance ToHeaders UpdateProvisionedProduct where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("AWS242ServiceCatalogService.UpdateProvisionedProduct"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON UpdateProvisionedProduct where+ toJSON UpdateProvisionedProduct'{..}+ = object+ (catMaybes+ [("ProvisionedProductName" .=) <$>+ _uppProvisionedProductName,+ ("ProvisioningArtifactId" .=) <$>+ _uppProvisioningArtifactId,+ ("AcceptLanguage" .=) <$> _uppAcceptLanguage,+ ("PathId" .=) <$> _uppPathId,+ ("ProvisioningParameters" .=) <$>+ _uppProvisioningParameters,+ ("ProvisionedProductId" .=) <$>+ _uppProvisionedProductId,+ ("ProductId" .=) <$> _uppProductId,+ Just ("UpdateToken" .= _uppUpdateToken)])++instance ToPath UpdateProvisionedProduct where+ toPath = const "/"++instance ToQuery UpdateProvisionedProduct where+ toQuery = const mempty++-- | /See:/ 'updateProvisionedProductResponse' smart constructor.+data UpdateProvisionedProductResponse = UpdateProvisionedProductResponse'+ { _upprsRecordDetail :: !(Maybe RecordDetail)+ , _upprsResponseStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'UpdateProvisionedProductResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'upprsRecordDetail'+--+-- * 'upprsResponseStatus'+updateProvisionedProductResponse+ :: Int -- ^ 'upprsResponseStatus'+ -> UpdateProvisionedProductResponse+updateProvisionedProductResponse pResponseStatus_ =+ UpdateProvisionedProductResponse'+ { _upprsRecordDetail = Nothing+ , _upprsResponseStatus = pResponseStatus_+ }++-- | The detailed result of the < UpdateProvisionedProduct> request, containing the inputs made to that request, the current state of the request, a pointer to the ProvisionedProduct object that the request is modifying, and a list of any errors that the request encountered.+upprsRecordDetail :: Lens' UpdateProvisionedProductResponse (Maybe RecordDetail)+upprsRecordDetail = lens _upprsRecordDetail (\ s a -> s{_upprsRecordDetail = a});++-- | The response status code.+upprsResponseStatus :: Lens' UpdateProvisionedProductResponse Int+upprsResponseStatus = lens _upprsResponseStatus (\ s a -> s{_upprsResponseStatus = a});++instance NFData UpdateProvisionedProductResponse
+ gen/Network/AWS/ServiceCatalog/Waiters.hs view
@@ -0,0 +1,21 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ServiceCatalog.Waiters+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.ServiceCatalog.Waiters where++import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.ServiceCatalog.Types+import Network.AWS.Waiter
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,21 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Main (main) where++import Test.Tasty+import Test.AWS.ServiceCatalog+import Test.AWS.ServiceCatalog.Internal++main :: IO ()+main = defaultMain $ testGroup "ServiceCatalog"+ [ testGroup "tests" tests+ , testGroup "fixtures" fixtures+ ]
+ test/Test/AWS/Gen/ServiceCatalog.hs view
@@ -0,0 +1,237 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.AWS.Gen.ServiceCatalog+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Test.AWS.Gen.ServiceCatalog where++import Data.Proxy+import Test.AWS.Fixture+import Test.AWS.Prelude+import Test.Tasty+import Network.AWS.ServiceCatalog+import Test.AWS.ServiceCatalog.Internal++-- 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"+-- [ requestTerminateProvisionedProduct $+-- terminateProvisionedProduct+--+-- , requestUpdateProvisionedProduct $+-- updateProvisionedProduct+--+-- , requestListRecordHistory $+-- listRecordHistory+--+-- , requestDescribeRecord $+-- describeRecord+--+-- , requestDescribeProductView $+-- describeProductView+--+-- , requestSearchProducts $+-- searchProducts+--+-- , requestDescribeProduct $+-- describeProduct+--+-- , requestScanProvisionedProducts $+-- scanProvisionedProducts+--+-- , requestProvisionProduct $+-- provisionProduct+--+-- , requestDescribeProvisioningParameters $+-- describeProvisioningParameters+--+-- , requestListLaunchPaths $+-- listLaunchPaths+--+-- ]++-- , testGroup "response"+-- [ responseTerminateProvisionedProduct $+-- terminateProvisionedProductResponse+--+-- , responseUpdateProvisionedProduct $+-- updateProvisionedProductResponse+--+-- , responseListRecordHistory $+-- listRecordHistoryResponse+--+-- , responseDescribeRecord $+-- describeRecordResponse+--+-- , responseDescribeProductView $+-- describeProductViewResponse+--+-- , responseSearchProducts $+-- searchProductsResponse+--+-- , responseDescribeProduct $+-- describeProductResponse+--+-- , responseScanProvisionedProducts $+-- scanProvisionedProductsResponse+--+-- , responseProvisionProduct $+-- provisionProductResponse+--+-- , responseDescribeProvisioningParameters $+-- describeProvisioningParametersResponse+--+-- , responseListLaunchPaths $+-- listLaunchPathsResponse+--+-- ]+-- ]++-- Requests++requestTerminateProvisionedProduct :: TerminateProvisionedProduct -> TestTree+requestTerminateProvisionedProduct = req+ "TerminateProvisionedProduct"+ "fixture/TerminateProvisionedProduct.yaml"++requestUpdateProvisionedProduct :: UpdateProvisionedProduct -> TestTree+requestUpdateProvisionedProduct = req+ "UpdateProvisionedProduct"+ "fixture/UpdateProvisionedProduct.yaml"++requestListRecordHistory :: ListRecordHistory -> TestTree+requestListRecordHistory = req+ "ListRecordHistory"+ "fixture/ListRecordHistory.yaml"++requestDescribeRecord :: DescribeRecord -> TestTree+requestDescribeRecord = req+ "DescribeRecord"+ "fixture/DescribeRecord.yaml"++requestDescribeProductView :: DescribeProductView -> TestTree+requestDescribeProductView = req+ "DescribeProductView"+ "fixture/DescribeProductView.yaml"++requestSearchProducts :: SearchProducts -> TestTree+requestSearchProducts = req+ "SearchProducts"+ "fixture/SearchProducts.yaml"++requestDescribeProduct :: DescribeProduct -> TestTree+requestDescribeProduct = req+ "DescribeProduct"+ "fixture/DescribeProduct.yaml"++requestScanProvisionedProducts :: ScanProvisionedProducts -> TestTree+requestScanProvisionedProducts = req+ "ScanProvisionedProducts"+ "fixture/ScanProvisionedProducts.yaml"++requestProvisionProduct :: ProvisionProduct -> TestTree+requestProvisionProduct = req+ "ProvisionProduct"+ "fixture/ProvisionProduct.yaml"++requestDescribeProvisioningParameters :: DescribeProvisioningParameters -> TestTree+requestDescribeProvisioningParameters = req+ "DescribeProvisioningParameters"+ "fixture/DescribeProvisioningParameters.yaml"++requestListLaunchPaths :: ListLaunchPaths -> TestTree+requestListLaunchPaths = req+ "ListLaunchPaths"+ "fixture/ListLaunchPaths.yaml"++-- Responses++responseTerminateProvisionedProduct :: TerminateProvisionedProductResponse -> TestTree+responseTerminateProvisionedProduct = res+ "TerminateProvisionedProductResponse"+ "fixture/TerminateProvisionedProductResponse.proto"+ serviceCatalog+ (Proxy :: Proxy TerminateProvisionedProduct)++responseUpdateProvisionedProduct :: UpdateProvisionedProductResponse -> TestTree+responseUpdateProvisionedProduct = res+ "UpdateProvisionedProductResponse"+ "fixture/UpdateProvisionedProductResponse.proto"+ serviceCatalog+ (Proxy :: Proxy UpdateProvisionedProduct)++responseListRecordHistory :: ListRecordHistoryResponse -> TestTree+responseListRecordHistory = res+ "ListRecordHistoryResponse"+ "fixture/ListRecordHistoryResponse.proto"+ serviceCatalog+ (Proxy :: Proxy ListRecordHistory)++responseDescribeRecord :: DescribeRecordResponse -> TestTree+responseDescribeRecord = res+ "DescribeRecordResponse"+ "fixture/DescribeRecordResponse.proto"+ serviceCatalog+ (Proxy :: Proxy DescribeRecord)++responseDescribeProductView :: DescribeProductViewResponse -> TestTree+responseDescribeProductView = res+ "DescribeProductViewResponse"+ "fixture/DescribeProductViewResponse.proto"+ serviceCatalog+ (Proxy :: Proxy DescribeProductView)++responseSearchProducts :: SearchProductsResponse -> TestTree+responseSearchProducts = res+ "SearchProductsResponse"+ "fixture/SearchProductsResponse.proto"+ serviceCatalog+ (Proxy :: Proxy SearchProducts)++responseDescribeProduct :: DescribeProductResponse -> TestTree+responseDescribeProduct = res+ "DescribeProductResponse"+ "fixture/DescribeProductResponse.proto"+ serviceCatalog+ (Proxy :: Proxy DescribeProduct)++responseScanProvisionedProducts :: ScanProvisionedProductsResponse -> TestTree+responseScanProvisionedProducts = res+ "ScanProvisionedProductsResponse"+ "fixture/ScanProvisionedProductsResponse.proto"+ serviceCatalog+ (Proxy :: Proxy ScanProvisionedProducts)++responseProvisionProduct :: ProvisionProductResponse -> TestTree+responseProvisionProduct = res+ "ProvisionProductResponse"+ "fixture/ProvisionProductResponse.proto"+ serviceCatalog+ (Proxy :: Proxy ProvisionProduct)++responseDescribeProvisioningParameters :: DescribeProvisioningParametersResponse -> TestTree+responseDescribeProvisioningParameters = res+ "DescribeProvisioningParametersResponse"+ "fixture/DescribeProvisioningParametersResponse.proto"+ serviceCatalog+ (Proxy :: Proxy DescribeProvisioningParameters)++responseListLaunchPaths :: ListLaunchPathsResponse -> TestTree+responseListLaunchPaths = res+ "ListLaunchPathsResponse"+ "fixture/ListLaunchPathsResponse.proto"+ serviceCatalog+ (Proxy :: Proxy ListLaunchPaths)
+ test/Test/AWS/ServiceCatalog.hs view
@@ -0,0 +1,23 @@+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module : Test.AWS.ServiceCatalog+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : This Source Code Form is subject to the terms of+-- the Mozilla Public License, v. 2.0.+-- A copy of the MPL can be found in the LICENSE file or+-- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.ServiceCatalog where++import Test.AWS.Prelude++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/AWS/ServiceCatalog/Internal.hs view
@@ -0,0 +1,17 @@+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module : Test.AWS.ServiceCatalog.Internal+-- Copyright : (c) 2013-2016 Brendan Hay+-- License : This Source Code Form is subject to the terms of+-- the Mozilla Public License, v. 2.0.+-- A copy of the MPL can be found in the LICENSE file or+-- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.ServiceCatalog.Internal where++import Test.AWS.Prelude