packages feed

amazonka-elasticbeanstalk (empty) → 0.0.0

raw patch · 35 files changed

+7466/−0 lines, 35 filesdep +amazonka-coredep +basesetup-changed

Dependencies added: amazonka-core, base

Files

+ LICENSE view
@@ -0,0 +1,373 @@+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.++Exhibit B - "Incompatible With Secondary Licenses" Notice+---------------------------------------------------------++  This Source Code Form is "Incompatible With Secondary Licenses", as+  defined by the Mozilla Public License, v. 2.0.
+ README.md view
@@ -0,0 +1,26 @@+# Amazon Elastic Beanstalk SDK++> _Warning:_ This is an experimental preview release which is still under heavy development and not intended for public consumption, _caveat emptor_!++* [description](#description)+* [Contribute](#contribute)+* [Licence](#licence)++## Description++AWS Elastic Beanstalk is an easy-to-use service for deploying and scaling web applications and services developed with Java, .NET, PHP, Node.js, Python, Ruby, and Docker on familiar servers such as Apache HTTP Server, Apache Tomcat, Nginx, Passenger, and IIS 7.5/8. You can simply upload your code and Elastic Beanstalk automatically handles the deployment, from capacity provisioning, load balancing, auto-scaling to application health monitoring. At the same time, you retain full control over the AWS resources powering your application and can access the underlying resources at any time. There is no additional charge for Elastic Beanstalk - you pay only for the AWS resources needed to store and run your applications.++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-elasticbeanstalk)+and [AWS API Reference](http://docs.aws.amazon.com/elasticbeanstalk/latest/api/Welcome.html).+++## 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-elasticbeanstalk` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ amazonka-elasticbeanstalk.cabal view
@@ -0,0 +1,80 @@+name:                  amazonka-elasticbeanstalk+version:               0.0.0+synopsis:              Amazon Elastic Beanstalk SDK.+homepage:              https://github.com/brendanhay/amazonka+license:               OtherLicense+license-file:          LICENSE+author:                Brendan Hay+maintainer:            Brendan Hay <brendan.g.hay@gmail.com>+copyright:             Copyright (c) 2013-2014 Brendan Hay+category:              Network, AWS, Cloud+build-type:            Simple+extra-source-files:    README.md+cabal-version:         >= 1.10++description:+    AWS Elastic Beanstalk is an easy-to-use service for deploying and+    scaling web applications and services developed with Java, .NET, PHP,+    Node.js, Python, Ruby, and Docker on familiar servers such as Apache+    HTTP Server, Apache Tomcat, Nginx, Passenger, and IIS 7.5/8. You can+    simply upload your code and Elastic Beanstalk automatically handles the+    deployment, from capacity provisioning, load balancing, auto-scaling to+    application health monitoring. At the same time, you retain full+    control over the AWS resources powering your application and can access+    the underlying resources at any time. There is no additional charge for+    Elastic Beanstalk - you pay only for the AWS resources needed to store+    and run your applications.+    .+    /See:/ <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/Welcome.html AWS API Reference>+    .+    /Warning:/ This is an experimental preview release which is still under+    heavy development and not intended for public consumption, caveat emptor!++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.ElasticBeanstalk+        , Network.AWS.ElasticBeanstalk.CheckDNSAvailability+        , Network.AWS.ElasticBeanstalk.CreateApplication+        , Network.AWS.ElasticBeanstalk.CreateApplicationVersion+        , Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate+        , Network.AWS.ElasticBeanstalk.CreateEnvironment+        , Network.AWS.ElasticBeanstalk.CreateStorageLocation+        , Network.AWS.ElasticBeanstalk.DeleteApplication+        , Network.AWS.ElasticBeanstalk.DeleteApplicationVersion+        , Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate+        , Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration+        , Network.AWS.ElasticBeanstalk.DescribeApplicationVersions+        , Network.AWS.ElasticBeanstalk.DescribeApplications+        , Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions+        , Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings+        , Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources+        , Network.AWS.ElasticBeanstalk.DescribeEnvironments+        , Network.AWS.ElasticBeanstalk.DescribeEvents+        , Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks+        , Network.AWS.ElasticBeanstalk.RebuildEnvironment+        , Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo+        , Network.AWS.ElasticBeanstalk.RestartAppServer+        , Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo+        , Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs+        , Network.AWS.ElasticBeanstalk.TerminateEnvironment+        , Network.AWS.ElasticBeanstalk.Types+        , Network.AWS.ElasticBeanstalk.UpdateApplication+        , Network.AWS.ElasticBeanstalk.UpdateApplicationVersion+        , Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate+        , Network.AWS.ElasticBeanstalk.UpdateEnvironment+        , Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings++    other-modules:++    build-depends:+          amazonka-core+        , base          >= 4.7 && < 5
+ gen/Network/AWS/ElasticBeanstalk.hs view
@@ -0,0 +1,83 @@+-- Module      : Network.AWS.ElasticBeanstalk+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | AWS Elastic Beanstalk is an easy-to-use service for deploying and scaling+-- web applications and services developed with Java, .NET, PHP, Node.js,+-- Python, Ruby, and Docker on familiar servers such as Apache HTTP Server,+-- Apache Tomcat, Nginx, Passenger, and IIS 7.5/8. You can simply upload your+-- code and Elastic Beanstalk automatically handles the deployment, from+-- capacity provisioning, load balancing, auto-scaling to application health+-- monitoring. At the same time, you retain full control over the AWS+-- resources powering your application and can access the underlying resources+-- at any time. There is no additional charge for Elastic Beanstalk - you pay+-- only for the AWS resources needed to store and run your applications.+module Network.AWS.ElasticBeanstalk+    ( module Network.AWS.ElasticBeanstalk.CheckDNSAvailability+    , module Network.AWS.ElasticBeanstalk.CreateApplication+    , module Network.AWS.ElasticBeanstalk.CreateApplicationVersion+    , module Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate+    , module Network.AWS.ElasticBeanstalk.CreateEnvironment+    , module Network.AWS.ElasticBeanstalk.CreateStorageLocation+    , module Network.AWS.ElasticBeanstalk.DeleteApplication+    , module Network.AWS.ElasticBeanstalk.DeleteApplicationVersion+    , module Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate+    , module Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration+    , module Network.AWS.ElasticBeanstalk.DescribeApplicationVersions+    , module Network.AWS.ElasticBeanstalk.DescribeApplications+    , module Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions+    , module Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings+    , module Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources+    , module Network.AWS.ElasticBeanstalk.DescribeEnvironments+    , module Network.AWS.ElasticBeanstalk.DescribeEvents+    , module Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks+    , module Network.AWS.ElasticBeanstalk.RebuildEnvironment+    , module Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo+    , module Network.AWS.ElasticBeanstalk.RestartAppServer+    , module Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo+    , module Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs+    , module Network.AWS.ElasticBeanstalk.TerminateEnvironment+    , module Network.AWS.ElasticBeanstalk.Types+    , module Network.AWS.ElasticBeanstalk.UpdateApplication+    , module Network.AWS.ElasticBeanstalk.UpdateApplicationVersion+    , module Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate+    , module Network.AWS.ElasticBeanstalk.UpdateEnvironment+    , module Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings+    ) where++import Network.AWS.ElasticBeanstalk.CheckDNSAvailability+import Network.AWS.ElasticBeanstalk.CreateApplication+import Network.AWS.ElasticBeanstalk.CreateApplicationVersion+import Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate+import Network.AWS.ElasticBeanstalk.CreateEnvironment+import Network.AWS.ElasticBeanstalk.CreateStorageLocation+import Network.AWS.ElasticBeanstalk.DeleteApplication+import Network.AWS.ElasticBeanstalk.DeleteApplicationVersion+import Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate+import Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration+import Network.AWS.ElasticBeanstalk.DescribeApplicationVersions+import Network.AWS.ElasticBeanstalk.DescribeApplications+import Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions+import Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings+import Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources+import Network.AWS.ElasticBeanstalk.DescribeEnvironments+import Network.AWS.ElasticBeanstalk.DescribeEvents+import Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks+import Network.AWS.ElasticBeanstalk.RebuildEnvironment+import Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo+import Network.AWS.ElasticBeanstalk.RestartAppServer+import Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo+import Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs+import Network.AWS.ElasticBeanstalk.TerminateEnvironment+import Network.AWS.ElasticBeanstalk.Types+import Network.AWS.ElasticBeanstalk.UpdateApplication+import Network.AWS.ElasticBeanstalk.UpdateApplicationVersion+import Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate+import Network.AWS.ElasticBeanstalk.UpdateEnvironment+import Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings
+ gen/Network/AWS/ElasticBeanstalk/CheckDNSAvailability.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.CheckDNSAvailability+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Checks if the specified CNAME is available.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_CheckDNSAvailability.html>+module Network.AWS.ElasticBeanstalk.CheckDNSAvailability+    (+    -- * Request+      CheckDNSAvailability+    -- ** Request constructor+    , checkDNSAvailability+    -- ** Request lenses+    , cdnsaCNAMEPrefix++    -- * Response+    , CheckDNSAvailabilityResponse+    -- ** Response constructor+    , checkDNSAvailabilityResponse+    -- ** Response lenses+    , cdnsarAvailable+    , cdnsarFullyQualifiedCNAME+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++newtype CheckDNSAvailability = CheckDNSAvailability+    { _cdnsaCNAMEPrefix :: Text+    } deriving (Eq, Ord, Show, Monoid, IsString)++-- | 'CheckDNSAvailability' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'cdnsaCNAMEPrefix' @::@ 'Text'+--+checkDNSAvailability :: Text -- ^ 'cdnsaCNAMEPrefix'+                     -> CheckDNSAvailability+checkDNSAvailability p1 = CheckDNSAvailability+    { _cdnsaCNAMEPrefix = p1+    }++-- | The prefix used when this CNAME is reserved.+cdnsaCNAMEPrefix :: Lens' CheckDNSAvailability Text+cdnsaCNAMEPrefix = lens _cdnsaCNAMEPrefix (\s a -> s { _cdnsaCNAMEPrefix = a })++data CheckDNSAvailabilityResponse = CheckDNSAvailabilityResponse+    { _cdnsarAvailable           :: Maybe Bool+    , _cdnsarFullyQualifiedCNAME :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'CheckDNSAvailabilityResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'cdnsarAvailable' @::@ 'Maybe' 'Bool'+--+-- * 'cdnsarFullyQualifiedCNAME' @::@ 'Maybe' 'Text'+--+checkDNSAvailabilityResponse :: CheckDNSAvailabilityResponse+checkDNSAvailabilityResponse = CheckDNSAvailabilityResponse+    { _cdnsarAvailable           = Nothing+    , _cdnsarFullyQualifiedCNAME = Nothing+    }++-- | Indicates if the specified CNAME is available: true : The CNAME is+-- available. true : The CNAME is not available. true : The CNAME is+-- available. false : The CNAME is not available.+cdnsarAvailable :: Lens' CheckDNSAvailabilityResponse (Maybe Bool)+cdnsarAvailable = lens _cdnsarAvailable (\s a -> s { _cdnsarAvailable = a })++-- | The fully qualified CNAME to reserve when CreateEnvironment is called+-- with the provided prefix.+cdnsarFullyQualifiedCNAME :: Lens' CheckDNSAvailabilityResponse (Maybe Text)+cdnsarFullyQualifiedCNAME =+    lens _cdnsarFullyQualifiedCNAME+        (\s a -> s { _cdnsarFullyQualifiedCNAME = a })++instance ToPath CheckDNSAvailability where+    toPath = const "/"++instance ToQuery CheckDNSAvailability where+    toQuery CheckDNSAvailability{..} = mconcat+        [ "CNAMEPrefix" =? _cdnsaCNAMEPrefix+        ]++instance ToHeaders CheckDNSAvailability++instance AWSRequest CheckDNSAvailability where+    type Sv CheckDNSAvailability = ElasticBeanstalk+    type Rs CheckDNSAvailability = CheckDNSAvailabilityResponse++    request  = post "CheckDNSAvailability"+    response = xmlResponse++instance FromXML CheckDNSAvailabilityResponse where+    parseXML = withElement "CheckDNSAvailabilityResult" $ \x -> CheckDNSAvailabilityResponse+        <$> x .@? "Available"+        <*> x .@? "FullyQualifiedCNAME"
+ gen/Network/AWS/ElasticBeanstalk/CreateApplication.hs view
@@ -0,0 +1,120 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.CreateApplication+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Creates an application that has one configuration template named default+-- and no application versions.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_CreateApplication.html>+module Network.AWS.ElasticBeanstalk.CreateApplication+    (+    -- * Request+      CreateApplication+    -- ** Request constructor+    , createApplication+    -- ** Request lenses+    , caApplicationName+    , caDescription++    -- * Response+    , CreateApplicationResponse+    -- ** Response constructor+    , createApplicationResponse+    -- ** Response lenses+    , carApplication+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data CreateApplication = CreateApplication+    { _caApplicationName :: Text+    , _caDescription     :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'CreateApplication' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'caApplicationName' @::@ 'Text'+--+-- * 'caDescription' @::@ 'Maybe' 'Text'+--+createApplication :: Text -- ^ 'caApplicationName'+                  -> CreateApplication+createApplication p1 = CreateApplication+    { _caApplicationName = p1+    , _caDescription     = Nothing+    }++-- | The name of the application. Constraint: This name must be unique within+-- your account. If the specified name already exists, the action returns an+-- InvalidParameterValue error.+caApplicationName :: Lens' CreateApplication Text+caApplicationName =+    lens _caApplicationName (\s a -> s { _caApplicationName = a })++-- | Describes the application.+caDescription :: Lens' CreateApplication (Maybe Text)+caDescription = lens _caDescription (\s a -> s { _caDescription = a })++newtype CreateApplicationResponse = CreateApplicationResponse+    { _carApplication :: Maybe ApplicationDescription+    } deriving (Eq, Show)++-- | 'CreateApplicationResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'carApplication' @::@ 'Maybe' 'ApplicationDescription'+--+createApplicationResponse :: CreateApplicationResponse+createApplicationResponse = CreateApplicationResponse+    { _carApplication = Nothing+    }++-- | The ApplicationDescription of the application.+carApplication :: Lens' CreateApplicationResponse (Maybe ApplicationDescription)+carApplication = lens _carApplication (\s a -> s { _carApplication = a })++instance ToPath CreateApplication where+    toPath = const "/"++instance ToQuery CreateApplication where+    toQuery CreateApplication{..} = mconcat+        [ "ApplicationName" =? _caApplicationName+        , "Description"     =? _caDescription+        ]++instance ToHeaders CreateApplication++instance AWSRequest CreateApplication where+    type Sv CreateApplication = ElasticBeanstalk+    type Rs CreateApplication = CreateApplicationResponse++    request  = post "CreateApplication"+    response = xmlResponse++instance FromXML CreateApplicationResponse where+    parseXML = withElement "CreateApplicationResult" $ \x -> CreateApplicationResponse+        <$> x .@? "Application"
+ gen/Network/AWS/ElasticBeanstalk/CreateApplicationVersion.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.CreateApplicationVersion+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Creates an application version for the specified application.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_CreateApplicationVersion.html>+module Network.AWS.ElasticBeanstalk.CreateApplicationVersion+    (+    -- * Request+      CreateApplicationVersion+    -- ** Request constructor+    , createApplicationVersion+    -- ** Request lenses+    , cavApplicationName+    , cavAutoCreateApplication+    , cavDescription+    , cavSourceBundle+    , cavVersionLabel++    -- * Response+    , CreateApplicationVersionResponse+    -- ** Response constructor+    , createApplicationVersionResponse+    -- ** Response lenses+    , cavrApplicationVersion+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data CreateApplicationVersion = CreateApplicationVersion+    { _cavApplicationName       :: Text+    , _cavAutoCreateApplication :: Maybe Bool+    , _cavDescription           :: Maybe Text+    , _cavSourceBundle          :: Maybe S3Location+    , _cavVersionLabel          :: Text+    } deriving (Eq, Show)++-- | 'CreateApplicationVersion' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'cavApplicationName' @::@ 'Text'+--+-- * 'cavAutoCreateApplication' @::@ 'Maybe' 'Bool'+--+-- * 'cavDescription' @::@ 'Maybe' 'Text'+--+-- * 'cavSourceBundle' @::@ 'Maybe' 'S3Location'+--+-- * 'cavVersionLabel' @::@ 'Text'+--+createApplicationVersion :: Text -- ^ 'cavApplicationName'+                         -> Text -- ^ 'cavVersionLabel'+                         -> CreateApplicationVersion+createApplicationVersion p1 p2 = CreateApplicationVersion+    { _cavApplicationName       = p1+    , _cavVersionLabel          = p2+    , _cavDescription           = Nothing+    , _cavSourceBundle          = Nothing+    , _cavAutoCreateApplication = Nothing+    }++-- | The name of the application. If no application is found with this name,+-- and AutoCreateApplication is false, returns an InvalidParameterValue+-- error.+cavApplicationName :: Lens' CreateApplicationVersion Text+cavApplicationName =+    lens _cavApplicationName (\s a -> s { _cavApplicationName = a })++-- | Determines how the system behaves if the specified application for this+-- version does not already exist: true: Automatically creates the specified+-- application for this version if it does not already exist. false: Returns+-- an InvalidParameterValue if the specified application for this version+-- does not already exist. true : Automatically creates the specified+-- application for this release if it does not already exist. false : Throws+-- an InvalidParameterValue if the specified application for this release+-- does not already exist. Default: false Valid Values: true | false.+cavAutoCreateApplication :: Lens' CreateApplicationVersion (Maybe Bool)+cavAutoCreateApplication =+    lens _cavAutoCreateApplication+        (\s a -> s { _cavAutoCreateApplication = a })++-- | Describes this version.+cavDescription :: Lens' CreateApplicationVersion (Maybe Text)+cavDescription = lens _cavDescription (\s a -> s { _cavDescription = a })++-- | The Amazon S3 bucket and key that identify the location of the source+-- bundle for this version. If data found at the Amazon S3 location exceeds+-- the maximum allowed source bundle size, AWS Elastic Beanstalk returns an+-- InvalidParameterValue error. The maximum size allowed is 512 MB. Default:+-- If not specified, AWS Elastic Beanstalk uses a sample application. If+-- only partially specified (for example, a bucket is provided but not the+-- key) or if no data is found at the Amazon S3 location, AWS Elastic+-- Beanstalk returns an InvalidParameterCombination error.+cavSourceBundle :: Lens' CreateApplicationVersion (Maybe S3Location)+cavSourceBundle = lens _cavSourceBundle (\s a -> s { _cavSourceBundle = a })++-- | A label identifying this version. Constraint: Must be unique per+-- application. If an application version already exists with this label for+-- the specified application, AWS Elastic Beanstalk returns an+-- InvalidParameterValue error.+cavVersionLabel :: Lens' CreateApplicationVersion Text+cavVersionLabel = lens _cavVersionLabel (\s a -> s { _cavVersionLabel = a })++newtype CreateApplicationVersionResponse = CreateApplicationVersionResponse+    { _cavrApplicationVersion :: Maybe ApplicationVersionDescription+    } deriving (Eq, Show)++-- | 'CreateApplicationVersionResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'cavrApplicationVersion' @::@ 'Maybe' 'ApplicationVersionDescription'+--+createApplicationVersionResponse :: CreateApplicationVersionResponse+createApplicationVersionResponse = CreateApplicationVersionResponse+    { _cavrApplicationVersion = Nothing+    }++-- | The ApplicationVersionDescription of the application version.+cavrApplicationVersion :: Lens' CreateApplicationVersionResponse (Maybe ApplicationVersionDescription)+cavrApplicationVersion =+    lens _cavrApplicationVersion (\s a -> s { _cavrApplicationVersion = a })++instance ToPath CreateApplicationVersion where+    toPath = const "/"++instance ToQuery CreateApplicationVersion where+    toQuery CreateApplicationVersion{..} = mconcat+        [ "ApplicationName"       =? _cavApplicationName+        , "AutoCreateApplication" =? _cavAutoCreateApplication+        , "Description"           =? _cavDescription+        , "SourceBundle"          =? _cavSourceBundle+        , "VersionLabel"          =? _cavVersionLabel+        ]++instance ToHeaders CreateApplicationVersion++instance AWSRequest CreateApplicationVersion where+    type Sv CreateApplicationVersion = ElasticBeanstalk+    type Rs CreateApplicationVersion = CreateApplicationVersionResponse++    request  = post "CreateApplicationVersion"+    response = xmlResponse++instance FromXML CreateApplicationVersionResponse where+    parseXML = withElement "CreateApplicationVersionResult" $ \x -> CreateApplicationVersionResponse+        <$> x .@? "ApplicationVersion"
+ gen/Network/AWS/ElasticBeanstalk/CreateConfigurationTemplate.hs view
@@ -0,0 +1,302 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Creates a configuration template. Templates are associated with a specific+-- application and are used to deploy different versions of the application+-- with the same configuration settings. Related Topics+-- DescribeConfigurationOptions DescribeConfigurationSettings+-- ListAvailableSolutionStacks.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_CreateConfigurationTemplate.html>+module Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate+    (+    -- * Request+      CreateConfigurationTemplate+    -- ** Request constructor+    , createConfigurationTemplate+    -- ** Request lenses+    , cctApplicationName+    , cctDescription+    , cctEnvironmentId+    , cctOptionSettings+    , cctSolutionStackName+    , cctSourceConfiguration+    , cctTemplateName++    -- * Response+    , CreateConfigurationTemplateResponse+    -- ** Response constructor+    , createConfigurationTemplateResponse+    -- ** Response lenses+    , cctrApplicationName+    , cctrDateCreated+    , cctrDateUpdated+    , cctrDeploymentStatus+    , cctrDescription+    , cctrEnvironmentName+    , cctrOptionSettings+    , cctrSolutionStackName+    , cctrTemplateName+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data CreateConfigurationTemplate = CreateConfigurationTemplate+    { _cctApplicationName     :: Text+    , _cctDescription         :: Maybe Text+    , _cctEnvironmentId       :: Maybe Text+    , _cctOptionSettings      :: List "OptionSettings" ConfigurationOptionSetting+    , _cctSolutionStackName   :: Maybe Text+    , _cctSourceConfiguration :: Maybe SourceConfiguration+    , _cctTemplateName        :: Text+    } deriving (Eq, Show)++-- | 'CreateConfigurationTemplate' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'cctApplicationName' @::@ 'Text'+--+-- * 'cctDescription' @::@ 'Maybe' 'Text'+--+-- * 'cctEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'cctOptionSettings' @::@ ['ConfigurationOptionSetting']+--+-- * 'cctSolutionStackName' @::@ 'Maybe' 'Text'+--+-- * 'cctSourceConfiguration' @::@ 'Maybe' 'SourceConfiguration'+--+-- * 'cctTemplateName' @::@ 'Text'+--+createConfigurationTemplate :: Text -- ^ 'cctApplicationName'+                            -> Text -- ^ 'cctTemplateName'+                            -> CreateConfigurationTemplate+createConfigurationTemplate p1 p2 = CreateConfigurationTemplate+    { _cctApplicationName     = p1+    , _cctTemplateName        = p2+    , _cctSolutionStackName   = Nothing+    , _cctSourceConfiguration = Nothing+    , _cctEnvironmentId       = Nothing+    , _cctDescription         = Nothing+    , _cctOptionSettings      = mempty+    }++-- | The name of the application to associate with this configuration+-- template. If no application is found with this name, AWS Elastic+-- Beanstalk returns an InvalidParameterValue error.+cctApplicationName :: Lens' CreateConfigurationTemplate Text+cctApplicationName =+    lens _cctApplicationName (\s a -> s { _cctApplicationName = a })++-- | Describes this configuration.+cctDescription :: Lens' CreateConfigurationTemplate (Maybe Text)+cctDescription = lens _cctDescription (\s a -> s { _cctDescription = a })++-- | The ID of the environment used with this configuration template.+cctEnvironmentId :: Lens' CreateConfigurationTemplate (Maybe Text)+cctEnvironmentId = lens _cctEnvironmentId (\s a -> s { _cctEnvironmentId = a })++-- | If specified, AWS Elastic Beanstalk sets the specified configuration+-- option to the requested value. The new value overrides the value obtained+-- from the solution stack or the source configuration template.+cctOptionSettings :: Lens' CreateConfigurationTemplate [ConfigurationOptionSetting]+cctOptionSettings =+    lens _cctOptionSettings (\s a -> s { _cctOptionSettings = a })+        . _List++-- | The name of the solution stack used by this configuration. The solution+-- stack specifies the operating system, architecture, and application+-- server for a configuration template. It determines the set of+-- configuration options as well as the possible and default values. Use+-- ListAvailableSolutionStacks to obtain a list of available solution+-- stacks. A solution stack name or a source configuration parameter must be+-- specified, otherwise AWS Elastic Beanstalk returns an+-- InvalidParameterValue error. If a solution stack name is not specified+-- and the source configuration parameter is specified, AWS Elastic+-- Beanstalk uses the same solution stack as the source configuration+-- template.+cctSolutionStackName :: Lens' CreateConfigurationTemplate (Maybe Text)+cctSolutionStackName =+    lens _cctSolutionStackName (\s a -> s { _cctSolutionStackName = a })++-- | If specified, AWS Elastic Beanstalk uses the configuration values from+-- the specified configuration template to create a new configuration.+-- Values specified in the OptionSettings parameter of this call overrides+-- any values obtained from the SourceConfiguration. If no configuration+-- template is found, returns an InvalidParameterValue error. Constraint: If+-- both the solution stack name parameter and the source configuration+-- parameters are specified, the solution stack of the source configuration+-- template must match the specified solution stack name or else AWS Elastic+-- Beanstalk returns an InvalidParameterCombination error.+cctSourceConfiguration :: Lens' CreateConfigurationTemplate (Maybe SourceConfiguration)+cctSourceConfiguration =+    lens _cctSourceConfiguration (\s a -> s { _cctSourceConfiguration = a })++-- | The name of the configuration template. Constraint: This name must be+-- unique per application. Default: If a configuration template already+-- exists with this name, AWS Elastic Beanstalk returns an+-- InvalidParameterValue error.+cctTemplateName :: Lens' CreateConfigurationTemplate Text+cctTemplateName = lens _cctTemplateName (\s a -> s { _cctTemplateName = a })++data CreateConfigurationTemplateResponse = CreateConfigurationTemplateResponse+    { _cctrApplicationName   :: Maybe Text+    , _cctrDateCreated       :: Maybe RFC822+    , _cctrDateUpdated       :: Maybe RFC822+    , _cctrDeploymentStatus  :: Maybe Text+    , _cctrDescription       :: Maybe Text+    , _cctrEnvironmentName   :: Maybe Text+    , _cctrOptionSettings    :: List "OptionSettings" ConfigurationOptionSetting+    , _cctrSolutionStackName :: Maybe Text+    , _cctrTemplateName      :: Maybe Text+    } deriving (Eq, Show)++-- | 'CreateConfigurationTemplateResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'cctrApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'cctrDateCreated' @::@ 'Maybe' 'UTCTime'+--+-- * 'cctrDateUpdated' @::@ 'Maybe' 'UTCTime'+--+-- * 'cctrDeploymentStatus' @::@ 'Maybe' 'Text'+--+-- * 'cctrDescription' @::@ 'Maybe' 'Text'+--+-- * 'cctrEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'cctrOptionSettings' @::@ ['ConfigurationOptionSetting']+--+-- * 'cctrSolutionStackName' @::@ 'Maybe' 'Text'+--+-- * 'cctrTemplateName' @::@ 'Maybe' 'Text'+--+createConfigurationTemplateResponse :: CreateConfigurationTemplateResponse+createConfigurationTemplateResponse = CreateConfigurationTemplateResponse+    { _cctrSolutionStackName = Nothing+    , _cctrApplicationName   = Nothing+    , _cctrTemplateName      = Nothing+    , _cctrDescription       = Nothing+    , _cctrEnvironmentName   = Nothing+    , _cctrDeploymentStatus  = Nothing+    , _cctrDateCreated       = Nothing+    , _cctrDateUpdated       = Nothing+    , _cctrOptionSettings    = mempty+    }++-- | The name of the application associated with this configuration set.+cctrApplicationName :: Lens' CreateConfigurationTemplateResponse (Maybe Text)+cctrApplicationName =+    lens _cctrApplicationName (\s a -> s { _cctrApplicationName = a })++-- | The date (in UTC time) when this configuration set was created.+cctrDateCreated :: Lens' CreateConfigurationTemplateResponse (Maybe UTCTime)+cctrDateCreated = lens _cctrDateCreated (\s a -> s { _cctrDateCreated = a }) . mapping _Time++-- | The date (in UTC time) when this configuration set was last modified.+cctrDateUpdated :: Lens' CreateConfigurationTemplateResponse (Maybe UTCTime)+cctrDateUpdated = lens _cctrDateUpdated (\s a -> s { _cctrDateUpdated = a }) . mapping _Time++-- | If this configuration set is associated with an environment, the+-- DeploymentStatus parameter indicates the deployment status of this+-- configuration set: null: This configuration is not associated with a+-- running environment. pending: This is a draft configuration that is not+-- deployed to the associated environment but is in the process of+-- deploying. deployed: This is the configuration that is currently deployed+-- to the associated running environment. failed: This is a draft+-- configuration, that failed to successfully deploy. null: This+-- configuration is not associated with a running environment. pending: This+-- is a draft configuration that is not deployed to the associated+-- environment but is in the process of deploying. deployed: This is the+-- configuration that is currently deployed to the associated running+-- environment. failed: This is a draft configuration that failed to+-- successfully deploy.+cctrDeploymentStatus :: Lens' CreateConfigurationTemplateResponse (Maybe Text)+cctrDeploymentStatus =+    lens _cctrDeploymentStatus (\s a -> s { _cctrDeploymentStatus = a })++-- | Describes this configuration set.+cctrDescription :: Lens' CreateConfigurationTemplateResponse (Maybe Text)+cctrDescription = lens _cctrDescription (\s a -> s { _cctrDescription = a })++-- | If not null, the name of the environment for this configuration set.+cctrEnvironmentName :: Lens' CreateConfigurationTemplateResponse (Maybe Text)+cctrEnvironmentName =+    lens _cctrEnvironmentName (\s a -> s { _cctrEnvironmentName = a })++-- | A list of the configuration options and their values in this+-- configuration set.+cctrOptionSettings :: Lens' CreateConfigurationTemplateResponse [ConfigurationOptionSetting]+cctrOptionSettings =+    lens _cctrOptionSettings (\s a -> s { _cctrOptionSettings = a })+        . _List++-- | The name of the solution stack this configuration set uses.+cctrSolutionStackName :: Lens' CreateConfigurationTemplateResponse (Maybe Text)+cctrSolutionStackName =+    lens _cctrSolutionStackName (\s a -> s { _cctrSolutionStackName = a })++-- | If not null, the name of the configuration template for this+-- configuration set.+cctrTemplateName :: Lens' CreateConfigurationTemplateResponse (Maybe Text)+cctrTemplateName = lens _cctrTemplateName (\s a -> s { _cctrTemplateName = a })++instance ToPath CreateConfigurationTemplate where+    toPath = const "/"++instance ToQuery CreateConfigurationTemplate where+    toQuery CreateConfigurationTemplate{..} = mconcat+        [ "ApplicationName"     =? _cctApplicationName+        , "Description"         =? _cctDescription+        , "EnvironmentId"       =? _cctEnvironmentId+        , "OptionSettings"      =? _cctOptionSettings+        , "SolutionStackName"   =? _cctSolutionStackName+        , "SourceConfiguration" =? _cctSourceConfiguration+        , "TemplateName"        =? _cctTemplateName+        ]++instance ToHeaders CreateConfigurationTemplate++instance AWSRequest CreateConfigurationTemplate where+    type Sv CreateConfigurationTemplate = ElasticBeanstalk+    type Rs CreateConfigurationTemplate = CreateConfigurationTemplateResponse++    request  = post "CreateConfigurationTemplate"+    response = xmlResponse++instance FromXML CreateConfigurationTemplateResponse where+    parseXML = withElement "CreateConfigurationTemplateResult" $ \x -> CreateConfigurationTemplateResponse+        <$> x .@? "ApplicationName"+        <*> x .@? "DateCreated"+        <*> x .@? "DateUpdated"+        <*> x .@? "DeploymentStatus"+        <*> x .@? "Description"+        <*> x .@? "EnvironmentName"+        <*> x .@  "OptionSettings"+        <*> x .@? "SolutionStackName"+        <*> x .@? "TemplateName"
+ gen/Network/AWS/ElasticBeanstalk/CreateEnvironment.hs view
@@ -0,0 +1,406 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.CreateEnvironment+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Launches an environment for the specified application using the specified+-- configuration.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_CreateEnvironment.html>+module Network.AWS.ElasticBeanstalk.CreateEnvironment+    (+    -- * Request+      CreateEnvironment+    -- ** Request constructor+    , createEnvironment+    -- ** Request lenses+    , ceApplicationName+    , ceCNAMEPrefix+    , ceDescription+    , ceEnvironmentName+    , ceOptionSettings+    , ceOptionsToRemove+    , ceSolutionStackName+    , ceTags+    , ceTemplateName+    , ceTier+    , ceVersionLabel++    -- * Response+    , CreateEnvironmentResponse+    -- ** Response constructor+    , createEnvironmentResponse+    -- ** Response lenses+    , cerApplicationName+    , cerCNAME+    , cerDateCreated+    , cerDateUpdated+    , cerDescription+    , cerEndpointURL+    , cerEnvironmentId+    , cerEnvironmentName+    , cerHealth+    , cerResources+    , cerSolutionStackName+    , cerStatus+    , cerTemplateName+    , cerTier+    , cerVersionLabel+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data CreateEnvironment = CreateEnvironment+    { _ceApplicationName   :: Text+    , _ceCNAMEPrefix       :: Maybe Text+    , _ceDescription       :: Maybe Text+    , _ceEnvironmentName   :: Text+    , _ceOptionSettings    :: List "OptionSettings" ConfigurationOptionSetting+    , _ceOptionsToRemove   :: List "OptionsToRemove" OptionSpecification+    , _ceSolutionStackName :: Maybe Text+    , _ceTags              :: List "Tags" Tag+    , _ceTemplateName      :: Maybe Text+    , _ceTier              :: Maybe EnvironmentTier+    , _ceVersionLabel      :: Maybe Text+    } deriving (Eq, Show)++-- | 'CreateEnvironment' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'ceApplicationName' @::@ 'Text'+--+-- * 'ceCNAMEPrefix' @::@ 'Maybe' 'Text'+--+-- * 'ceDescription' @::@ 'Maybe' 'Text'+--+-- * 'ceEnvironmentName' @::@ 'Text'+--+-- * 'ceOptionSettings' @::@ ['ConfigurationOptionSetting']+--+-- * 'ceOptionsToRemove' @::@ ['OptionSpecification']+--+-- * 'ceSolutionStackName' @::@ 'Maybe' 'Text'+--+-- * 'ceTags' @::@ ['Tag']+--+-- * 'ceTemplateName' @::@ 'Maybe' 'Text'+--+-- * 'ceTier' @::@ 'Maybe' 'EnvironmentTier'+--+-- * 'ceVersionLabel' @::@ 'Maybe' 'Text'+--+createEnvironment :: Text -- ^ 'ceApplicationName'+                  -> Text -- ^ 'ceEnvironmentName'+                  -> CreateEnvironment+createEnvironment p1 p2 = CreateEnvironment+    { _ceApplicationName   = p1+    , _ceEnvironmentName   = p2+    , _ceDescription       = Nothing+    , _ceCNAMEPrefix       = Nothing+    , _ceTier              = Nothing+    , _ceTags              = mempty+    , _ceVersionLabel      = Nothing+    , _ceTemplateName      = Nothing+    , _ceSolutionStackName = Nothing+    , _ceOptionSettings    = mempty+    , _ceOptionsToRemove   = mempty+    }++-- | The name of the application that contains the version to be deployed. If+-- no application is found with this name, CreateEnvironment returns an+-- InvalidParameterValue error.+ceApplicationName :: Lens' CreateEnvironment Text+ceApplicationName =+    lens _ceApplicationName (\s a -> s { _ceApplicationName = a })++-- | If specified, the environment attempts to use this value as the prefix+-- for the CNAME. If not specified, the CNAME is generated automatically by+-- appending a random alphanumeric string to the environment name.+ceCNAMEPrefix :: Lens' CreateEnvironment (Maybe Text)+ceCNAMEPrefix = lens _ceCNAMEPrefix (\s a -> s { _ceCNAMEPrefix = a })++-- | Describes this environment.+ceDescription :: Lens' CreateEnvironment (Maybe Text)+ceDescription = lens _ceDescription (\s a -> s { _ceDescription = a })++-- | A unique name for the deployment environment. Used in the application+-- URL. Constraint: Must be from 4 to 23 characters in length. The name can+-- contain only letters, numbers, and hyphens. It cannot start or end with a+-- hyphen. This name must be unique in your account. If the specified name+-- already exists, AWS Elastic Beanstalk returns an InvalidParameterValue+-- error. Default: If the CNAME parameter is not specified, the environment+-- name becomes part of the CNAME, and therefore part of the visible URL for+-- your application.+ceEnvironmentName :: Lens' CreateEnvironment Text+ceEnvironmentName =+    lens _ceEnvironmentName (\s a -> s { _ceEnvironmentName = a })++-- | If specified, AWS Elastic Beanstalk sets the specified configuration+-- options to the requested value in the configuration set for the new+-- environment. These override the values obtained from the solution stack+-- or the configuration template.+ceOptionSettings :: Lens' CreateEnvironment [ConfigurationOptionSetting]+ceOptionSettings = lens _ceOptionSettings (\s a -> s { _ceOptionSettings = a }) . _List++-- | A list of custom user-defined configuration options to remove from the+-- configuration set for this new environment.+ceOptionsToRemove :: Lens' CreateEnvironment [OptionSpecification]+ceOptionsToRemove =+    lens _ceOptionsToRemove (\s a -> s { _ceOptionsToRemove = a })+        . _List++-- | This is an alternative to specifying a configuration name. If specified,+-- AWS Elastic Beanstalk sets the configuration values to the default values+-- associated with the specified solution stack. Condition: You must specify+-- either this or a TemplateName, but not both. If you specify both, AWS+-- Elastic Beanstalk returns an InvalidParameterCombination error. If you do+-- not specify either, AWS Elastic Beanstalk returns a+-- MissingRequiredParameter error.+ceSolutionStackName :: Lens' CreateEnvironment (Maybe Text)+ceSolutionStackName =+    lens _ceSolutionStackName (\s a -> s { _ceSolutionStackName = a })++-- | This specifies the tags applied to resources in the environment.+ceTags :: Lens' CreateEnvironment [Tag]+ceTags = lens _ceTags (\s a -> s { _ceTags = a }) . _List++-- | The name of the configuration template to use in deployment. If no+-- configuration template is found with this name, AWS Elastic Beanstalk+-- returns an InvalidParameterValue error. Condition: You must specify+-- either this parameter or a SolutionStackName, but not both. If you+-- specify both, AWS Elastic Beanstalk returns an+-- InvalidParameterCombination error. If you do not specify either, AWS+-- Elastic Beanstalk returns a MissingRequiredParameter error.+ceTemplateName :: Lens' CreateEnvironment (Maybe Text)+ceTemplateName = lens _ceTemplateName (\s a -> s { _ceTemplateName = a })++-- | This specifies the tier to use for creating this environment.+ceTier :: Lens' CreateEnvironment (Maybe EnvironmentTier)+ceTier = lens _ceTier (\s a -> s { _ceTier = a })++-- | The name of the application version to deploy. If the specified+-- application has no associated application versions, AWS Elastic Beanstalk+-- UpdateEnvironment returns an InvalidParameterValue error. Default: If not+-- specified, AWS Elastic Beanstalk attempts to launch the sample+-- application in the container.+ceVersionLabel :: Lens' CreateEnvironment (Maybe Text)+ceVersionLabel = lens _ceVersionLabel (\s a -> s { _ceVersionLabel = a })++data CreateEnvironmentResponse = CreateEnvironmentResponse+    { _cerApplicationName   :: Maybe Text+    , _cerCNAME             :: Maybe Text+    , _cerDateCreated       :: Maybe RFC822+    , _cerDateUpdated       :: Maybe RFC822+    , _cerDescription       :: Maybe Text+    , _cerEndpointURL       :: Maybe Text+    , _cerEnvironmentId     :: Maybe Text+    , _cerEnvironmentName   :: Maybe Text+    , _cerHealth            :: Maybe Text+    , _cerResources         :: Maybe EnvironmentResourcesDescription+    , _cerSolutionStackName :: Maybe Text+    , _cerStatus            :: Maybe Text+    , _cerTemplateName      :: Maybe Text+    , _cerTier              :: Maybe EnvironmentTier+    , _cerVersionLabel      :: Maybe Text+    } deriving (Eq, Show)++-- | 'CreateEnvironmentResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'cerApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'cerCNAME' @::@ 'Maybe' 'Text'+--+-- * 'cerDateCreated' @::@ 'Maybe' 'UTCTime'+--+-- * 'cerDateUpdated' @::@ 'Maybe' 'UTCTime'+--+-- * 'cerDescription' @::@ 'Maybe' 'Text'+--+-- * 'cerEndpointURL' @::@ 'Maybe' 'Text'+--+-- * 'cerEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'cerEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'cerHealth' @::@ 'Maybe' 'Text'+--+-- * 'cerResources' @::@ 'Maybe' 'EnvironmentResourcesDescription'+--+-- * 'cerSolutionStackName' @::@ 'Maybe' 'Text'+--+-- * 'cerStatus' @::@ 'Maybe' 'Text'+--+-- * 'cerTemplateName' @::@ 'Maybe' 'Text'+--+-- * 'cerTier' @::@ 'Maybe' 'EnvironmentTier'+--+-- * 'cerVersionLabel' @::@ 'Maybe' 'Text'+--+createEnvironmentResponse :: CreateEnvironmentResponse+createEnvironmentResponse = CreateEnvironmentResponse+    { _cerEnvironmentName   = Nothing+    , _cerEnvironmentId     = Nothing+    , _cerApplicationName   = Nothing+    , _cerVersionLabel      = Nothing+    , _cerSolutionStackName = Nothing+    , _cerTemplateName      = Nothing+    , _cerDescription       = Nothing+    , _cerEndpointURL       = Nothing+    , _cerCNAME             = Nothing+    , _cerDateCreated       = Nothing+    , _cerDateUpdated       = Nothing+    , _cerStatus            = Nothing+    , _cerHealth            = Nothing+    , _cerResources         = Nothing+    , _cerTier              = Nothing+    }++-- | The name of the application associated with this environment.+cerApplicationName :: Lens' CreateEnvironmentResponse (Maybe Text)+cerApplicationName =+    lens _cerApplicationName (\s a -> s { _cerApplicationName = a })++-- | The URL to the CNAME for this environment.+cerCNAME :: Lens' CreateEnvironmentResponse (Maybe Text)+cerCNAME = lens _cerCNAME (\s a -> s { _cerCNAME = a })++-- | The creation date for this environment.+cerDateCreated :: Lens' CreateEnvironmentResponse (Maybe UTCTime)+cerDateCreated = lens _cerDateCreated (\s a -> s { _cerDateCreated = a }) . mapping _Time++-- | The last modified date for this environment.+cerDateUpdated :: Lens' CreateEnvironmentResponse (Maybe UTCTime)+cerDateUpdated = lens _cerDateUpdated (\s a -> s { _cerDateUpdated = a }) . mapping _Time++-- | Describes this environment.+cerDescription :: Lens' CreateEnvironmentResponse (Maybe Text)+cerDescription = lens _cerDescription (\s a -> s { _cerDescription = a })++-- | For load-balanced, autoscaling environments, the URL to the LoadBalancer.+-- For single-instance environments, the IP address of the instance.+cerEndpointURL :: Lens' CreateEnvironmentResponse (Maybe Text)+cerEndpointURL = lens _cerEndpointURL (\s a -> s { _cerEndpointURL = a })++-- | The ID of this environment.+cerEnvironmentId :: Lens' CreateEnvironmentResponse (Maybe Text)+cerEnvironmentId = lens _cerEnvironmentId (\s a -> s { _cerEnvironmentId = a })++-- | The name of this environment.+cerEnvironmentName :: Lens' CreateEnvironmentResponse (Maybe Text)+cerEnvironmentName =+    lens _cerEnvironmentName (\s a -> s { _cerEnvironmentName = a })++-- | Describes the health status of the environment. AWS Elastic Beanstalk+-- indicates the failure levels for a running environment: Red : Indicates+-- the environment is not working. Yellow: Indicates that something is+-- wrong, the application might not be available, but the instances appear+-- running. Green: Indicates the environment is healthy and fully+-- functional. Red: Indicates the environment is not responsive. Occurs when+-- three or more consecutive failures occur for an environment. Yellow:+-- Indicates that something is wrong. Occurs when two consecutive failures+-- occur for an environment. Green: Indicates the environment is healthy and+-- fully functional. Grey: Default health for a new environment. The+-- environment is not fully launched and health checks have not started or+-- health checks are suspended during an UpdateEnvironment or+-- RestartEnvironement request. Default: Grey.+cerHealth :: Lens' CreateEnvironmentResponse (Maybe Text)+cerHealth = lens _cerHealth (\s a -> s { _cerHealth = a })++-- | The description of the AWS resources used by this environment.+cerResources :: Lens' CreateEnvironmentResponse (Maybe EnvironmentResourcesDescription)+cerResources = lens _cerResources (\s a -> s { _cerResources = a })++-- | The name of the SolutionStack deployed with this environment.+cerSolutionStackName :: Lens' CreateEnvironmentResponse (Maybe Text)+cerSolutionStackName =+    lens _cerSolutionStackName (\s a -> s { _cerSolutionStackName = a })++-- | The current operational status of the environment: Launching: Environment+-- is in the process of initial deployment. Updating: Environment is in the+-- process of updating its configuration settings or application version.+-- Ready: Environment is available to have an action performed on it, such+-- as update or terminate. Terminating: Environment is in the shut-down+-- process. Terminated: Environment is not running.+cerStatus :: Lens' CreateEnvironmentResponse (Maybe Text)+cerStatus = lens _cerStatus (\s a -> s { _cerStatus = a })++-- | The name of the configuration template used to originally launch this+-- environment.+cerTemplateName :: Lens' CreateEnvironmentResponse (Maybe Text)+cerTemplateName = lens _cerTemplateName (\s a -> s { _cerTemplateName = a })++-- | Describes the current tier of this environment.+cerTier :: Lens' CreateEnvironmentResponse (Maybe EnvironmentTier)+cerTier = lens _cerTier (\s a -> s { _cerTier = a })++-- | The application version deployed in this environment.+cerVersionLabel :: Lens' CreateEnvironmentResponse (Maybe Text)+cerVersionLabel = lens _cerVersionLabel (\s a -> s { _cerVersionLabel = a })++instance ToPath CreateEnvironment where+    toPath = const "/"++instance ToQuery CreateEnvironment where+    toQuery CreateEnvironment{..} = mconcat+        [ "ApplicationName"   =? _ceApplicationName+        , "CNAMEPrefix"       =? _ceCNAMEPrefix+        , "Description"       =? _ceDescription+        , "EnvironmentName"   =? _ceEnvironmentName+        , "OptionSettings"    =? _ceOptionSettings+        , "OptionsToRemove"   =? _ceOptionsToRemove+        , "SolutionStackName" =? _ceSolutionStackName+        , "Tags"              =? _ceTags+        , "TemplateName"      =? _ceTemplateName+        , "Tier"              =? _ceTier+        , "VersionLabel"      =? _ceVersionLabel+        ]++instance ToHeaders CreateEnvironment++instance AWSRequest CreateEnvironment where+    type Sv CreateEnvironment = ElasticBeanstalk+    type Rs CreateEnvironment = CreateEnvironmentResponse++    request  = post "CreateEnvironment"+    response = xmlResponse++instance FromXML CreateEnvironmentResponse where+    parseXML = withElement "CreateEnvironmentResult" $ \x -> CreateEnvironmentResponse+        <$> x .@? "ApplicationName"+        <*> x .@? "CNAME"+        <*> x .@? "DateCreated"+        <*> x .@? "DateUpdated"+        <*> x .@? "Description"+        <*> x .@? "EndpointURL"+        <*> x .@? "EnvironmentId"+        <*> x .@? "EnvironmentName"+        <*> x .@? "Health"+        <*> x .@? "Resources"+        <*> x .@? "SolutionStackName"+        <*> x .@? "Status"+        <*> x .@? "TemplateName"+        <*> x .@? "Tier"+        <*> x .@? "VersionLabel"
+ gen/Network/AWS/ElasticBeanstalk/CreateStorageLocation.hs view
@@ -0,0 +1,90 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.CreateStorageLocation+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Creates the Amazon S3 storage location for the account. This location is+-- used to store user log files.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_CreateStorageLocation.html>+module Network.AWS.ElasticBeanstalk.CreateStorageLocation+    (+    -- * Request+      CreateStorageLocation+    -- ** Request constructor+    , createStorageLocation++    -- * Response+    , CreateStorageLocationResponse+    -- ** Response constructor+    , createStorageLocationResponse+    -- ** Response lenses+    , cslrS3Bucket+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data CreateStorageLocation = CreateStorageLocation+    deriving (Eq, Ord, Show, Generic)++-- | 'CreateStorageLocation' constructor.+createStorageLocation :: CreateStorageLocation+createStorageLocation = CreateStorageLocation++newtype CreateStorageLocationResponse = CreateStorageLocationResponse+    { _cslrS3Bucket :: Maybe Text+    } deriving (Eq, Ord, Show, Monoid)++-- | 'CreateStorageLocationResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'cslrS3Bucket' @::@ 'Maybe' 'Text'+--+createStorageLocationResponse :: CreateStorageLocationResponse+createStorageLocationResponse = CreateStorageLocationResponse+    { _cslrS3Bucket = Nothing+    }++-- | The name of the Amazon S3 bucket created.+cslrS3Bucket :: Lens' CreateStorageLocationResponse (Maybe Text)+cslrS3Bucket = lens _cslrS3Bucket (\s a -> s { _cslrS3Bucket = a })++instance ToPath CreateStorageLocation where+    toPath = const "/"++instance ToQuery CreateStorageLocation where+    toQuery = const mempty++instance ToHeaders CreateStorageLocation++instance AWSRequest CreateStorageLocation where+    type Sv CreateStorageLocation = ElasticBeanstalk+    type Rs CreateStorageLocation = CreateStorageLocationResponse++    request  = post "CreateStorageLocation"+    response = xmlResponse++instance FromXML CreateStorageLocationResponse where+    parseXML = withElement "CreateStorageLocationResult" $ \x -> CreateStorageLocationResponse+        <$> x .@? "S3Bucket"
+ gen/Network/AWS/ElasticBeanstalk/DeleteApplication.hs view
@@ -0,0 +1,103 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DeleteApplication+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Deletes the specified application along with all associated versions and+-- configurations. The application versions will not be deleted from your+-- Amazon S3 bucket.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DeleteApplication.html>+module Network.AWS.ElasticBeanstalk.DeleteApplication+    (+    -- * Request+      DeleteApplication+    -- ** Request constructor+    , deleteApplication+    -- ** Request lenses+    , daApplicationName+    , daTerminateEnvByForce++    -- * Response+    , DeleteApplicationResponse+    -- ** Response constructor+    , deleteApplicationResponse+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data DeleteApplication = DeleteApplication+    { _daApplicationName     :: Text+    , _daTerminateEnvByForce :: Maybe Bool+    } deriving (Eq, Ord, Show)++-- | 'DeleteApplication' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'daApplicationName' @::@ 'Text'+--+-- * 'daTerminateEnvByForce' @::@ 'Maybe' 'Bool'+--+deleteApplication :: Text -- ^ 'daApplicationName'+                  -> DeleteApplication+deleteApplication p1 = DeleteApplication+    { _daApplicationName     = p1+    , _daTerminateEnvByForce = Nothing+    }++-- | The name of the application to delete.+daApplicationName :: Lens' DeleteApplication Text+daApplicationName =+    lens _daApplicationName (\s a -> s { _daApplicationName = a })++-- | When set to true, running environments will be terminated before deleting+-- the application.+daTerminateEnvByForce :: Lens' DeleteApplication (Maybe Bool)+daTerminateEnvByForce =+    lens _daTerminateEnvByForce (\s a -> s { _daTerminateEnvByForce = a })++data DeleteApplicationResponse = DeleteApplicationResponse+    deriving (Eq, Ord, Show, Generic)++-- | 'DeleteApplicationResponse' constructor.+deleteApplicationResponse :: DeleteApplicationResponse+deleteApplicationResponse = DeleteApplicationResponse++instance ToPath DeleteApplication where+    toPath = const "/"++instance ToQuery DeleteApplication where+    toQuery DeleteApplication{..} = mconcat+        [ "ApplicationName"     =? _daApplicationName+        , "TerminateEnvByForce" =? _daTerminateEnvByForce+        ]++instance ToHeaders DeleteApplication++instance AWSRequest DeleteApplication where+    type Sv DeleteApplication = ElasticBeanstalk+    type Rs DeleteApplication = DeleteApplicationResponse++    request  = post "DeleteApplication"+    response = nullResponse DeleteApplicationResponse
+ gen/Network/AWS/ElasticBeanstalk/DeleteApplicationVersion.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DeleteApplicationVersion+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Deletes the specified version from the specified application.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DeleteApplicationVersion.html>+module Network.AWS.ElasticBeanstalk.DeleteApplicationVersion+    (+    -- * Request+      DeleteApplicationVersion+    -- ** Request constructor+    , deleteApplicationVersion+    -- ** Request lenses+    , davApplicationName+    , davDeleteSourceBundle+    , davVersionLabel++    -- * Response+    , DeleteApplicationVersionResponse+    -- ** Response constructor+    , deleteApplicationVersionResponse+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data DeleteApplicationVersion = DeleteApplicationVersion+    { _davApplicationName    :: Text+    , _davDeleteSourceBundle :: Maybe Bool+    , _davVersionLabel       :: Text+    } deriving (Eq, Ord, Show)++-- | 'DeleteApplicationVersion' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'davApplicationName' @::@ 'Text'+--+-- * 'davDeleteSourceBundle' @::@ 'Maybe' 'Bool'+--+-- * 'davVersionLabel' @::@ 'Text'+--+deleteApplicationVersion :: Text -- ^ 'davApplicationName'+                         -> Text -- ^ 'davVersionLabel'+                         -> DeleteApplicationVersion+deleteApplicationVersion p1 p2 = DeleteApplicationVersion+    { _davApplicationName    = p1+    , _davVersionLabel       = p2+    , _davDeleteSourceBundle = Nothing+    }++-- | The name of the application to delete releases from.+davApplicationName :: Lens' DeleteApplicationVersion Text+davApplicationName =+    lens _davApplicationName (\s a -> s { _davApplicationName = a })++-- | Indicates whether to delete the associated source bundle from Amazon S3:+-- true: An attempt is made to delete the associated Amazon S3 source bundle+-- specified at time of creation. false: No action is taken on the Amazon S3+-- source bundle specified at time of creation. Valid Values: true | false.+davDeleteSourceBundle :: Lens' DeleteApplicationVersion (Maybe Bool)+davDeleteSourceBundle =+    lens _davDeleteSourceBundle (\s a -> s { _davDeleteSourceBundle = a })++-- | The label of the version to delete.+davVersionLabel :: Lens' DeleteApplicationVersion Text+davVersionLabel = lens _davVersionLabel (\s a -> s { _davVersionLabel = a })++data DeleteApplicationVersionResponse = DeleteApplicationVersionResponse+    deriving (Eq, Ord, Show, Generic)++-- | 'DeleteApplicationVersionResponse' constructor.+deleteApplicationVersionResponse :: DeleteApplicationVersionResponse+deleteApplicationVersionResponse = DeleteApplicationVersionResponse++instance ToPath DeleteApplicationVersion where+    toPath = const "/"++instance ToQuery DeleteApplicationVersion where+    toQuery DeleteApplicationVersion{..} = mconcat+        [ "ApplicationName"    =? _davApplicationName+        , "DeleteSourceBundle" =? _davDeleteSourceBundle+        , "VersionLabel"       =? _davVersionLabel+        ]++instance ToHeaders DeleteApplicationVersion++instance AWSRequest DeleteApplicationVersion where+    type Sv DeleteApplicationVersion = ElasticBeanstalk+    type Rs DeleteApplicationVersion = DeleteApplicationVersionResponse++    request  = post "DeleteApplicationVersion"+    response = nullResponse DeleteApplicationVersionResponse
+ gen/Network/AWS/ElasticBeanstalk/DeleteConfigurationTemplate.hs view
@@ -0,0 +1,100 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Deletes the specified configuration template.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DeleteConfigurationTemplate.html>+module Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate+    (+    -- * Request+      DeleteConfigurationTemplate+    -- ** Request constructor+    , deleteConfigurationTemplate+    -- ** Request lenses+    , dctApplicationName+    , dctTemplateName++    -- * Response+    , DeleteConfigurationTemplateResponse+    -- ** Response constructor+    , deleteConfigurationTemplateResponse+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data DeleteConfigurationTemplate = DeleteConfigurationTemplate+    { _dctApplicationName :: Text+    , _dctTemplateName    :: Text+    } deriving (Eq, Ord, Show)++-- | 'DeleteConfigurationTemplate' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'dctApplicationName' @::@ 'Text'+--+-- * 'dctTemplateName' @::@ 'Text'+--+deleteConfigurationTemplate :: Text -- ^ 'dctApplicationName'+                            -> Text -- ^ 'dctTemplateName'+                            -> DeleteConfigurationTemplate+deleteConfigurationTemplate p1 p2 = DeleteConfigurationTemplate+    { _dctApplicationName = p1+    , _dctTemplateName    = p2+    }++-- | The name of the application to delete the configuration template from.+dctApplicationName :: Lens' DeleteConfigurationTemplate Text+dctApplicationName =+    lens _dctApplicationName (\s a -> s { _dctApplicationName = a })++-- | The name of the configuration template to delete.+dctTemplateName :: Lens' DeleteConfigurationTemplate Text+dctTemplateName = lens _dctTemplateName (\s a -> s { _dctTemplateName = a })++data DeleteConfigurationTemplateResponse = DeleteConfigurationTemplateResponse+    deriving (Eq, Ord, Show, Generic)++-- | 'DeleteConfigurationTemplateResponse' constructor.+deleteConfigurationTemplateResponse :: DeleteConfigurationTemplateResponse+deleteConfigurationTemplateResponse = DeleteConfigurationTemplateResponse++instance ToPath DeleteConfigurationTemplate where+    toPath = const "/"++instance ToQuery DeleteConfigurationTemplate where+    toQuery DeleteConfigurationTemplate{..} = mconcat+        [ "ApplicationName" =? _dctApplicationName+        , "TemplateName"    =? _dctTemplateName+        ]++instance ToHeaders DeleteConfigurationTemplate++instance AWSRequest DeleteConfigurationTemplate where+    type Sv DeleteConfigurationTemplate = ElasticBeanstalk+    type Rs DeleteConfigurationTemplate = DeleteConfigurationTemplateResponse++    request  = post "DeleteConfigurationTemplate"+    response = nullResponse DeleteConfigurationTemplateResponse
+ gen/Network/AWS/ElasticBeanstalk/DeleteEnvironmentConfiguration.hs view
@@ -0,0 +1,107 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Deletes the draft configuration associated with the running environment.+-- Updating a running environment with any configuration changes creates a+-- draft configuration set. You can get the draft configuration using+-- DescribeConfigurationSettings while the update is in progress or if the+-- update fails. The DeploymentStatus for the draft configuration indicates+-- whether the deployment is in process or has failed. The draft configuration+-- remains in existence until it is deleted with this action.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DeleteEnvironmentConfiguration.html>+module Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration+    (+    -- * Request+      DeleteEnvironmentConfiguration+    -- ** Request constructor+    , deleteEnvironmentConfiguration+    -- ** Request lenses+    , decApplicationName+    , decEnvironmentName++    -- * Response+    , DeleteEnvironmentConfigurationResponse+    -- ** Response constructor+    , deleteEnvironmentConfigurationResponse+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data DeleteEnvironmentConfiguration = DeleteEnvironmentConfiguration+    { _decApplicationName :: Text+    , _decEnvironmentName :: Text+    } deriving (Eq, Ord, Show)++-- | 'DeleteEnvironmentConfiguration' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'decApplicationName' @::@ 'Text'+--+-- * 'decEnvironmentName' @::@ 'Text'+--+deleteEnvironmentConfiguration :: Text -- ^ 'decApplicationName'+                               -> Text -- ^ 'decEnvironmentName'+                               -> DeleteEnvironmentConfiguration+deleteEnvironmentConfiguration p1 p2 = DeleteEnvironmentConfiguration+    { _decApplicationName = p1+    , _decEnvironmentName = p2+    }++-- | The name of the application the environment is associated with.+decApplicationName :: Lens' DeleteEnvironmentConfiguration Text+decApplicationName =+    lens _decApplicationName (\s a -> s { _decApplicationName = a })++-- | The name of the environment to delete the draft configuration from.+decEnvironmentName :: Lens' DeleteEnvironmentConfiguration Text+decEnvironmentName =+    lens _decEnvironmentName (\s a -> s { _decEnvironmentName = a })++data DeleteEnvironmentConfigurationResponse = DeleteEnvironmentConfigurationResponse+    deriving (Eq, Ord, Show, Generic)++-- | 'DeleteEnvironmentConfigurationResponse' constructor.+deleteEnvironmentConfigurationResponse :: DeleteEnvironmentConfigurationResponse+deleteEnvironmentConfigurationResponse = DeleteEnvironmentConfigurationResponse++instance ToPath DeleteEnvironmentConfiguration where+    toPath = const "/"++instance ToQuery DeleteEnvironmentConfiguration where+    toQuery DeleteEnvironmentConfiguration{..} = mconcat+        [ "ApplicationName" =? _decApplicationName+        , "EnvironmentName" =? _decEnvironmentName+        ]++instance ToHeaders DeleteEnvironmentConfiguration++instance AWSRequest DeleteEnvironmentConfiguration where+    type Sv DeleteEnvironmentConfiguration = ElasticBeanstalk+    type Rs DeleteEnvironmentConfiguration = DeleteEnvironmentConfigurationResponse++    request  = post "DeleteEnvironmentConfiguration"+    response = nullResponse DeleteEnvironmentConfigurationResponse
+ gen/Network/AWS/ElasticBeanstalk/DescribeApplicationVersions.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DescribeApplicationVersions+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Returns descriptions for existing application versions.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DescribeApplicationVersions.html>+module Network.AWS.ElasticBeanstalk.DescribeApplicationVersions+    (+    -- * Request+      DescribeApplicationVersions+    -- ** Request constructor+    , describeApplicationVersions+    -- ** Request lenses+    , dav1ApplicationName+    , dav1VersionLabels++    -- * Response+    , DescribeApplicationVersionsResponse+    -- ** Response constructor+    , describeApplicationVersionsResponse+    -- ** Response lenses+    , davrApplicationVersions+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data DescribeApplicationVersions = DescribeApplicationVersions+    { _dav1ApplicationName :: Maybe Text+    , _dav1VersionLabels   :: List "Versions" Text+    } deriving (Eq, Ord, Show)++-- | 'DescribeApplicationVersions' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'dav1ApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'dav1VersionLabels' @::@ ['Text']+--+describeApplicationVersions :: DescribeApplicationVersions+describeApplicationVersions = DescribeApplicationVersions+    { _dav1ApplicationName = Nothing+    , _dav1VersionLabels   = mempty+    }++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to only include ones that are associated with the specified application.+dav1ApplicationName :: Lens' DescribeApplicationVersions (Maybe Text)+dav1ApplicationName =+    lens _dav1ApplicationName (\s a -> s { _dav1ApplicationName = a })++-- | If specified, restricts the returned descriptions to only include ones+-- that have the specified version labels.+dav1VersionLabels :: Lens' DescribeApplicationVersions [Text]+dav1VersionLabels =+    lens _dav1VersionLabels (\s a -> s { _dav1VersionLabels = a })+        . _List++newtype DescribeApplicationVersionsResponse = DescribeApplicationVersionsResponse+    { _davrApplicationVersions :: List "ApplicationVersions" ApplicationVersionDescription+    } deriving (Eq, Show, Monoid, Semigroup)++instance GHC.Exts.IsList DescribeApplicationVersionsResponse where+    type Item DescribeApplicationVersionsResponse = ApplicationVersionDescription++    fromList = DescribeApplicationVersionsResponse . GHC.Exts.fromList+    toList   = GHC.Exts.toList . _davrApplicationVersions++-- | 'DescribeApplicationVersionsResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'davrApplicationVersions' @::@ ['ApplicationVersionDescription']+--+describeApplicationVersionsResponse :: DescribeApplicationVersionsResponse+describeApplicationVersionsResponse = DescribeApplicationVersionsResponse+    { _davrApplicationVersions = mempty+    }++-- | A list of ApplicationVersionDescription .+davrApplicationVersions :: Lens' DescribeApplicationVersionsResponse [ApplicationVersionDescription]+davrApplicationVersions =+    lens _davrApplicationVersions (\s a -> s { _davrApplicationVersions = a })+        . _List++instance ToPath DescribeApplicationVersions where+    toPath = const "/"++instance ToQuery DescribeApplicationVersions where+    toQuery DescribeApplicationVersions{..} = mconcat+        [ "ApplicationName" =? _dav1ApplicationName+        , "VersionLabels"   =? _dav1VersionLabels+        ]++instance ToHeaders DescribeApplicationVersions++instance AWSRequest DescribeApplicationVersions where+    type Sv DescribeApplicationVersions = ElasticBeanstalk+    type Rs DescribeApplicationVersions = DescribeApplicationVersionsResponse++    request  = post "DescribeApplicationVersions"+    response = xmlResponse++instance FromXML DescribeApplicationVersionsResponse where+    parseXML = withElement "DescribeApplicationVersionsResult" $ \x -> DescribeApplicationVersionsResponse+        <$> x .@  "ApplicationVersions"
+ gen/Network/AWS/ElasticBeanstalk/DescribeApplications.hs view
@@ -0,0 +1,120 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DescribeApplications+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Returns the descriptions of existing applications.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DescribeApplications.html>+module Network.AWS.ElasticBeanstalk.DescribeApplications+    (+    -- * Request+      DescribeApplications+    -- ** Request constructor+    , describeApplications+    -- ** Request lenses+    , daApplicationNames++    -- * Response+    , DescribeApplicationsResponse+    -- ** Response constructor+    , describeApplicationsResponse+    -- ** Response lenses+    , darApplications+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++newtype DescribeApplications = DescribeApplications+    { _daApplicationNames :: List "ApplicationNames" Text+    } deriving (Eq, Ord, Show, Monoid, Semigroup)++instance GHC.Exts.IsList DescribeApplications where+    type Item DescribeApplications = Text++    fromList = DescribeApplications . GHC.Exts.fromList+    toList   = GHC.Exts.toList . _daApplicationNames++-- | 'DescribeApplications' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'daApplicationNames' @::@ ['Text']+--+describeApplications :: DescribeApplications+describeApplications = DescribeApplications+    { _daApplicationNames = mempty+    }++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to only include those with the specified names.+daApplicationNames :: Lens' DescribeApplications [Text]+daApplicationNames =+    lens _daApplicationNames (\s a -> s { _daApplicationNames = a })+        . _List++newtype DescribeApplicationsResponse = DescribeApplicationsResponse+    { _darApplications :: List "Applications" ApplicationDescription+    } deriving (Eq, Show, Monoid, Semigroup)++instance GHC.Exts.IsList DescribeApplicationsResponse where+    type Item DescribeApplicationsResponse = ApplicationDescription++    fromList = DescribeApplicationsResponse . GHC.Exts.fromList+    toList   = GHC.Exts.toList . _darApplications++-- | 'DescribeApplicationsResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'darApplications' @::@ ['ApplicationDescription']+--+describeApplicationsResponse :: DescribeApplicationsResponse+describeApplicationsResponse = DescribeApplicationsResponse+    { _darApplications = mempty+    }++-- | This parameter contains a list of ApplicationDescription.+darApplications :: Lens' DescribeApplicationsResponse [ApplicationDescription]+darApplications = lens _darApplications (\s a -> s { _darApplications = a }) . _List++instance ToPath DescribeApplications where+    toPath = const "/"++instance ToQuery DescribeApplications where+    toQuery DescribeApplications{..} = mconcat+        [ "ApplicationNames" =? _daApplicationNames+        ]++instance ToHeaders DescribeApplications++instance AWSRequest DescribeApplications where+    type Sv DescribeApplications = ElasticBeanstalk+    type Rs DescribeApplications = DescribeApplicationsResponse++    request  = post "DescribeApplications"+    response = xmlResponse++instance FromXML DescribeApplicationsResponse where+    parseXML = withElement "DescribeApplicationsResult" $ \x -> DescribeApplicationsResponse+        <$> x .@  "Applications"
+ gen/Network/AWS/ElasticBeanstalk/DescribeConfigurationOptions.hs view
@@ -0,0 +1,168 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Describes the configuration options that are used in a particular+-- configuration template or environment, or that a specified solution stack+-- defines. The description includes the values the options, their default+-- values, and an indication of the required action on a running environment+-- if an option value is changed.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DescribeConfigurationOptions.html>+module Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions+    (+    -- * Request+      DescribeConfigurationOptions+    -- ** Request constructor+    , describeConfigurationOptions+    -- ** Request lenses+    , dcoApplicationName+    , dcoEnvironmentName+    , dcoOptions+    , dcoSolutionStackName+    , dcoTemplateName++    -- * Response+    , DescribeConfigurationOptionsResponse+    -- ** Response constructor+    , describeConfigurationOptionsResponse+    -- ** Response lenses+    , dcorOptions+    , dcorSolutionStackName+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data DescribeConfigurationOptions = DescribeConfigurationOptions+    { _dcoApplicationName   :: Maybe Text+    , _dcoEnvironmentName   :: Maybe Text+    , _dcoOptions           :: List "OptionsToRemove" OptionSpecification+    , _dcoSolutionStackName :: Maybe Text+    , _dcoTemplateName      :: Maybe Text+    } deriving (Eq, Show)++-- | 'DescribeConfigurationOptions' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'dcoApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'dcoEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'dcoOptions' @::@ ['OptionSpecification']+--+-- * 'dcoSolutionStackName' @::@ 'Maybe' 'Text'+--+-- * 'dcoTemplateName' @::@ 'Maybe' 'Text'+--+describeConfigurationOptions :: DescribeConfigurationOptions+describeConfigurationOptions = DescribeConfigurationOptions+    { _dcoApplicationName   = Nothing+    , _dcoTemplateName      = Nothing+    , _dcoEnvironmentName   = Nothing+    , _dcoSolutionStackName = Nothing+    , _dcoOptions           = mempty+    }++-- | The name of the application associated with the configuration template or+-- environment. Only needed if you want to describe the configuration+-- options associated with either the configuration template or environment.+dcoApplicationName :: Lens' DescribeConfigurationOptions (Maybe Text)+dcoApplicationName =+    lens _dcoApplicationName (\s a -> s { _dcoApplicationName = a })++-- | The name of the environment whose configuration options you want to+-- describe.+dcoEnvironmentName :: Lens' DescribeConfigurationOptions (Maybe Text)+dcoEnvironmentName =+    lens _dcoEnvironmentName (\s a -> s { _dcoEnvironmentName = a })++-- | If specified, restricts the descriptions to only the specified options.+dcoOptions :: Lens' DescribeConfigurationOptions [OptionSpecification]+dcoOptions = lens _dcoOptions (\s a -> s { _dcoOptions = a }) . _List++-- | The name of the solution stack whose configuration options you want to+-- describe.+dcoSolutionStackName :: Lens' DescribeConfigurationOptions (Maybe Text)+dcoSolutionStackName =+    lens _dcoSolutionStackName (\s a -> s { _dcoSolutionStackName = a })++-- | The name of the configuration template whose configuration options you+-- want to describe.+dcoTemplateName :: Lens' DescribeConfigurationOptions (Maybe Text)+dcoTemplateName = lens _dcoTemplateName (\s a -> s { _dcoTemplateName = a })++data DescribeConfigurationOptionsResponse = DescribeConfigurationOptionsResponse+    { _dcorOptions           :: List "Options" ConfigurationOptionDescription+    , _dcorSolutionStackName :: Maybe Text+    } deriving (Eq, Show)++-- | 'DescribeConfigurationOptionsResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'dcorOptions' @::@ ['ConfigurationOptionDescription']+--+-- * 'dcorSolutionStackName' @::@ 'Maybe' 'Text'+--+describeConfigurationOptionsResponse :: DescribeConfigurationOptionsResponse+describeConfigurationOptionsResponse = DescribeConfigurationOptionsResponse+    { _dcorSolutionStackName = Nothing+    , _dcorOptions           = mempty+    }++-- | A list of ConfigurationOptionDescription.+dcorOptions :: Lens' DescribeConfigurationOptionsResponse [ConfigurationOptionDescription]+dcorOptions = lens _dcorOptions (\s a -> s { _dcorOptions = a }) . _List++-- | The name of the solution stack these configuration options belong to.+dcorSolutionStackName :: Lens' DescribeConfigurationOptionsResponse (Maybe Text)+dcorSolutionStackName =+    lens _dcorSolutionStackName (\s a -> s { _dcorSolutionStackName = a })++instance ToPath DescribeConfigurationOptions where+    toPath = const "/"++instance ToQuery DescribeConfigurationOptions where+    toQuery DescribeConfigurationOptions{..} = mconcat+        [ "ApplicationName"   =? _dcoApplicationName+        , "EnvironmentName"   =? _dcoEnvironmentName+        , "Options"           =? _dcoOptions+        , "SolutionStackName" =? _dcoSolutionStackName+        , "TemplateName"      =? _dcoTemplateName+        ]++instance ToHeaders DescribeConfigurationOptions++instance AWSRequest DescribeConfigurationOptions where+    type Sv DescribeConfigurationOptions = ElasticBeanstalk+    type Rs DescribeConfigurationOptions = DescribeConfigurationOptionsResponse++    request  = post "DescribeConfigurationOptions"+    response = xmlResponse++instance FromXML DescribeConfigurationOptionsResponse where+    parseXML = withElement "DescribeConfigurationOptionsResult" $ \x -> DescribeConfigurationOptionsResponse+        <$> x .@  "Options"+        <*> x .@? "SolutionStackName"
+ gen/Network/AWS/ElasticBeanstalk/DescribeConfigurationSettings.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Returns a description of the settings for the specified configuration set,+-- that is, either a configuration template or the configuration set+-- associated with a running environment. When describing the settings for the+-- configuration set associated with a running environment, it is possible to+-- receive two sets of setting descriptions. One is the deployed configuration+-- set, and the other is a draft configuration of an environment that is+-- either in the process of deployment or that failed to deploy. Related+-- Topics DeleteEnvironmentConfiguration.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DescribeConfigurationSettings.html>+module Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings+    (+    -- * Request+      DescribeConfigurationSettings+    -- ** Request constructor+    , describeConfigurationSettings+    -- ** Request lenses+    , dcsApplicationName+    , dcsEnvironmentName+    , dcsTemplateName++    -- * Response+    , DescribeConfigurationSettingsResponse+    -- ** Response constructor+    , describeConfigurationSettingsResponse+    -- ** Response lenses+    , dcsrConfigurationSettings+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data DescribeConfigurationSettings = DescribeConfigurationSettings+    { _dcsApplicationName :: Text+    , _dcsEnvironmentName :: Maybe Text+    , _dcsTemplateName    :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'DescribeConfigurationSettings' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'dcsApplicationName' @::@ 'Text'+--+-- * 'dcsEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'dcsTemplateName' @::@ 'Maybe' 'Text'+--+describeConfigurationSettings :: Text -- ^ 'dcsApplicationName'+                              -> DescribeConfigurationSettings+describeConfigurationSettings p1 = DescribeConfigurationSettings+    { _dcsApplicationName = p1+    , _dcsTemplateName    = Nothing+    , _dcsEnvironmentName = Nothing+    }++-- | The application for the environment or configuration template.+dcsApplicationName :: Lens' DescribeConfigurationSettings Text+dcsApplicationName =+    lens _dcsApplicationName (\s a -> s { _dcsApplicationName = a })++-- | The name of the environment to describe. Condition: You must specify+-- either this or a TemplateName, but not both. If you specify both, AWS+-- Elastic Beanstalk returns an InvalidParameterCombination error. If you do+-- not specify either, AWS Elastic Beanstalk returns+-- MissingRequiredParameter error.+dcsEnvironmentName :: Lens' DescribeConfigurationSettings (Maybe Text)+dcsEnvironmentName =+    lens _dcsEnvironmentName (\s a -> s { _dcsEnvironmentName = a })++-- | The name of the configuration template to describe. Conditional: You must+-- specify either this parameter or an EnvironmentName, but not both. If you+-- specify both, AWS Elastic Beanstalk returns an+-- InvalidParameterCombination error. If you do not specify either, AWS+-- Elastic Beanstalk returns a MissingRequiredParameter error.+dcsTemplateName :: Lens' DescribeConfigurationSettings (Maybe Text)+dcsTemplateName = lens _dcsTemplateName (\s a -> s { _dcsTemplateName = a })++newtype DescribeConfigurationSettingsResponse = DescribeConfigurationSettingsResponse+    { _dcsrConfigurationSettings :: List "ConfigurationSettings" ConfigurationSettingsDescription+    } deriving (Eq, Show, Monoid, Semigroup)++instance GHC.Exts.IsList DescribeConfigurationSettingsResponse where+    type Item DescribeConfigurationSettingsResponse = ConfigurationSettingsDescription++    fromList = DescribeConfigurationSettingsResponse . GHC.Exts.fromList+    toList   = GHC.Exts.toList . _dcsrConfigurationSettings++-- | 'DescribeConfigurationSettingsResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'dcsrConfigurationSettings' @::@ ['ConfigurationSettingsDescription']+--+describeConfigurationSettingsResponse :: DescribeConfigurationSettingsResponse+describeConfigurationSettingsResponse = DescribeConfigurationSettingsResponse+    { _dcsrConfigurationSettings = mempty+    }++-- | A list of ConfigurationSettingsDescription.+dcsrConfigurationSettings :: Lens' DescribeConfigurationSettingsResponse [ConfigurationSettingsDescription]+dcsrConfigurationSettings =+    lens _dcsrConfigurationSettings+        (\s a -> s { _dcsrConfigurationSettings = a })+            . _List++instance ToPath DescribeConfigurationSettings where+    toPath = const "/"++instance ToQuery DescribeConfigurationSettings where+    toQuery DescribeConfigurationSettings{..} = mconcat+        [ "ApplicationName" =? _dcsApplicationName+        , "EnvironmentName" =? _dcsEnvironmentName+        , "TemplateName"    =? _dcsTemplateName+        ]++instance ToHeaders DescribeConfigurationSettings++instance AWSRequest DescribeConfigurationSettings where+    type Sv DescribeConfigurationSettings = ElasticBeanstalk+    type Rs DescribeConfigurationSettings = DescribeConfigurationSettingsResponse++    request  = post "DescribeConfigurationSettings"+    response = xmlResponse++instance FromXML DescribeConfigurationSettingsResponse where+    parseXML = withElement "DescribeConfigurationSettingsResult" $ \x -> DescribeConfigurationSettingsResponse+        <$> x .@  "ConfigurationSettings"
+ gen/Network/AWS/ElasticBeanstalk/DescribeEnvironmentResources.hs view
@@ -0,0 +1,124 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Returns AWS resources for this environment.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DescribeEnvironmentResources.html>+module Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources+    (+    -- * Request+      DescribeEnvironmentResources+    -- ** Request constructor+    , describeEnvironmentResources+    -- ** Request lenses+    , derEnvironmentId+    , derEnvironmentName++    -- * Response+    , DescribeEnvironmentResourcesResponse+    -- ** Response constructor+    , describeEnvironmentResourcesResponse+    -- ** Response lenses+    , derrEnvironmentResources+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data DescribeEnvironmentResources = DescribeEnvironmentResources+    { _derEnvironmentId   :: Maybe Text+    , _derEnvironmentName :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'DescribeEnvironmentResources' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'derEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'derEnvironmentName' @::@ 'Maybe' 'Text'+--+describeEnvironmentResources :: DescribeEnvironmentResources+describeEnvironmentResources = DescribeEnvironmentResources+    { _derEnvironmentId   = Nothing+    , _derEnvironmentName = Nothing+    }++-- | The ID of the environment to retrieve AWS resource usage data. Condition:+-- You must specify either this or an EnvironmentName, or both. If you do+-- not specify either, AWS Elastic Beanstalk returns+-- MissingRequiredParameter error.+derEnvironmentId :: Lens' DescribeEnvironmentResources (Maybe Text)+derEnvironmentId = lens _derEnvironmentId (\s a -> s { _derEnvironmentId = a })++-- | The name of the environment to retrieve AWS resource usage data.+-- Condition: You must specify either this or an EnvironmentId, or both. If+-- you do not specify either, AWS Elastic Beanstalk returns+-- MissingRequiredParameter error.+derEnvironmentName :: Lens' DescribeEnvironmentResources (Maybe Text)+derEnvironmentName =+    lens _derEnvironmentName (\s a -> s { _derEnvironmentName = a })++newtype DescribeEnvironmentResourcesResponse = DescribeEnvironmentResourcesResponse+    { _derrEnvironmentResources :: Maybe EnvironmentResourceDescription+    } deriving (Eq, Show)++-- | 'DescribeEnvironmentResourcesResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'derrEnvironmentResources' @::@ 'Maybe' 'EnvironmentResourceDescription'+--+describeEnvironmentResourcesResponse :: DescribeEnvironmentResourcesResponse+describeEnvironmentResourcesResponse = DescribeEnvironmentResourcesResponse+    { _derrEnvironmentResources = Nothing+    }++-- | A list of EnvironmentResourceDescription.+derrEnvironmentResources :: Lens' DescribeEnvironmentResourcesResponse (Maybe EnvironmentResourceDescription)+derrEnvironmentResources =+    lens _derrEnvironmentResources+        (\s a -> s { _derrEnvironmentResources = a })++instance ToPath DescribeEnvironmentResources where+    toPath = const "/"++instance ToQuery DescribeEnvironmentResources where+    toQuery DescribeEnvironmentResources{..} = mconcat+        [ "EnvironmentId"   =? _derEnvironmentId+        , "EnvironmentName" =? _derEnvironmentName+        ]++instance ToHeaders DescribeEnvironmentResources++instance AWSRequest DescribeEnvironmentResources where+    type Sv DescribeEnvironmentResources = ElasticBeanstalk+    type Rs DescribeEnvironmentResources = DescribeEnvironmentResourcesResponse++    request  = post "DescribeEnvironmentResources"+    response = xmlResponse++instance FromXML DescribeEnvironmentResourcesResponse where+    parseXML = withElement "DescribeEnvironmentResourcesResult" $ \x -> DescribeEnvironmentResourcesResponse+        <$> x .@? "EnvironmentResources"
+ gen/Network/AWS/ElasticBeanstalk/DescribeEnvironments.hs view
@@ -0,0 +1,177 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DescribeEnvironments+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Returns descriptions for existing environments.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DescribeEnvironments.html>+module Network.AWS.ElasticBeanstalk.DescribeEnvironments+    (+    -- * Request+      DescribeEnvironments+    -- ** Request constructor+    , describeEnvironments+    -- ** Request lenses+    , de1ApplicationName+    , de1EnvironmentIds+    , de1EnvironmentNames+    , de1IncludeDeleted+    , de1IncludedDeletedBackTo+    , de1VersionLabel++    -- * Response+    , DescribeEnvironmentsResponse+    -- ** Response constructor+    , describeEnvironmentsResponse+    -- ** Response lenses+    , derEnvironments+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data DescribeEnvironments = DescribeEnvironments+    { _de1ApplicationName       :: Maybe Text+    , _de1EnvironmentIds        :: List "EnvironmentIds" Text+    , _de1EnvironmentNames      :: List "EnvironmentNames" Text+    , _de1IncludeDeleted        :: Maybe Bool+    , _de1IncludedDeletedBackTo :: Maybe RFC822+    , _de1VersionLabel          :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'DescribeEnvironments' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'de1ApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'de1EnvironmentIds' @::@ ['Text']+--+-- * 'de1EnvironmentNames' @::@ ['Text']+--+-- * 'de1IncludeDeleted' @::@ 'Maybe' 'Bool'+--+-- * 'de1IncludedDeletedBackTo' @::@ 'Maybe' 'UTCTime'+--+-- * 'de1VersionLabel' @::@ 'Maybe' 'Text'+--+describeEnvironments :: DescribeEnvironments+describeEnvironments = DescribeEnvironments+    { _de1ApplicationName       = Nothing+    , _de1VersionLabel          = Nothing+    , _de1EnvironmentIds        = mempty+    , _de1EnvironmentNames      = mempty+    , _de1IncludeDeleted        = Nothing+    , _de1IncludedDeletedBackTo = Nothing+    }++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to include only those that are associated with this application.+de1ApplicationName :: Lens' DescribeEnvironments (Maybe Text)+de1ApplicationName =+    lens _de1ApplicationName (\s a -> s { _de1ApplicationName = a })++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to include only those that have the specified IDs.+de1EnvironmentIds :: Lens' DescribeEnvironments [Text]+de1EnvironmentIds =+    lens _de1EnvironmentIds (\s a -> s { _de1EnvironmentIds = a })+        . _List++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to include only those that have the specified names.+de1EnvironmentNames :: Lens' DescribeEnvironments [Text]+de1EnvironmentNames =+    lens _de1EnvironmentNames (\s a -> s { _de1EnvironmentNames = a })+        . _List++-- | Indicates whether to include deleted environments: true: Environments+-- that have been deleted after IncludedDeletedBackTo are displayed. false:+-- Do not include deleted environments.+de1IncludeDeleted :: Lens' DescribeEnvironments (Maybe Bool)+de1IncludeDeleted =+    lens _de1IncludeDeleted (\s a -> s { _de1IncludeDeleted = a })++-- | If specified when IncludeDeleted is set to true, then environments+-- deleted after this date are displayed.+de1IncludedDeletedBackTo :: Lens' DescribeEnvironments (Maybe UTCTime)+de1IncludedDeletedBackTo =+    lens _de1IncludedDeletedBackTo+        (\s a -> s { _de1IncludedDeletedBackTo = a })+            . mapping _Time++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to include only those that are associated with this application version.+de1VersionLabel :: Lens' DescribeEnvironments (Maybe Text)+de1VersionLabel = lens _de1VersionLabel (\s a -> s { _de1VersionLabel = a })++newtype DescribeEnvironmentsResponse = DescribeEnvironmentsResponse+    { _derEnvironments :: List "Environments" EnvironmentDescription+    } deriving (Eq, Show, Monoid, Semigroup)++instance GHC.Exts.IsList DescribeEnvironmentsResponse where+    type Item DescribeEnvironmentsResponse = EnvironmentDescription++    fromList = DescribeEnvironmentsResponse . GHC.Exts.fromList+    toList   = GHC.Exts.toList . _derEnvironments++-- | 'DescribeEnvironmentsResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'derEnvironments' @::@ ['EnvironmentDescription']+--+describeEnvironmentsResponse :: DescribeEnvironmentsResponse+describeEnvironmentsResponse = DescribeEnvironmentsResponse+    { _derEnvironments = mempty+    }++-- | Returns an EnvironmentDescription list.+derEnvironments :: Lens' DescribeEnvironmentsResponse [EnvironmentDescription]+derEnvironments = lens _derEnvironments (\s a -> s { _derEnvironments = a }) . _List++instance ToPath DescribeEnvironments where+    toPath = const "/"++instance ToQuery DescribeEnvironments where+    toQuery DescribeEnvironments{..} = mconcat+        [ "ApplicationName"       =? _de1ApplicationName+        , "EnvironmentIds"        =? _de1EnvironmentIds+        , "EnvironmentNames"      =? _de1EnvironmentNames+        , "IncludeDeleted"        =? _de1IncludeDeleted+        , "IncludedDeletedBackTo" =? _de1IncludedDeletedBackTo+        , "VersionLabel"          =? _de1VersionLabel+        ]++instance ToHeaders DescribeEnvironments++instance AWSRequest DescribeEnvironments where+    type Sv DescribeEnvironments = ElasticBeanstalk+    type Rs DescribeEnvironments = DescribeEnvironmentsResponse++    request  = post "DescribeEnvironments"+    response = xmlResponse++instance FromXML DescribeEnvironmentsResponse where+    parseXML = withElement "DescribeEnvironmentsResult" $ \x -> DescribeEnvironmentsResponse+        <$> x .@  "Environments"
+ gen/Network/AWS/ElasticBeanstalk/DescribeEvents.hs view
@@ -0,0 +1,237 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.DescribeEvents+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Returns list of event descriptions matching criteria up to the last 6+-- weeks.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_DescribeEvents.html>+module Network.AWS.ElasticBeanstalk.DescribeEvents+    (+    -- * Request+      DescribeEvents+    -- ** Request constructor+    , describeEvents+    -- ** Request lenses+    , deApplicationName+    , deEndTime+    , deEnvironmentId+    , deEnvironmentName+    , deMaxRecords+    , deNextToken+    , deRequestId+    , deSeverity+    , deStartTime+    , deTemplateName+    , deVersionLabel++    -- * Response+    , DescribeEventsResponse+    -- ** Response constructor+    , describeEventsResponse+    -- ** Response lenses+    , derEvents+    , derNextToken+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data DescribeEvents = DescribeEvents+    { _deApplicationName :: Maybe Text+    , _deEndTime         :: Maybe RFC822+    , _deEnvironmentId   :: Maybe Text+    , _deEnvironmentName :: Maybe Text+    , _deMaxRecords      :: Maybe Nat+    , _deNextToken       :: Maybe Text+    , _deRequestId       :: Maybe Text+    , _deSeverity        :: Maybe Text+    , _deStartTime       :: Maybe RFC822+    , _deTemplateName    :: Maybe Text+    , _deVersionLabel    :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'DescribeEvents' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'deApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'deEndTime' @::@ 'Maybe' 'UTCTime'+--+-- * 'deEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'deEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'deMaxRecords' @::@ 'Maybe' 'Natural'+--+-- * 'deNextToken' @::@ 'Maybe' 'Text'+--+-- * 'deRequestId' @::@ 'Maybe' 'Text'+--+-- * 'deSeverity' @::@ 'Maybe' 'Text'+--+-- * 'deStartTime' @::@ 'Maybe' 'UTCTime'+--+-- * 'deTemplateName' @::@ 'Maybe' 'Text'+--+-- * 'deVersionLabel' @::@ 'Maybe' 'Text'+--+describeEvents :: DescribeEvents+describeEvents = DescribeEvents+    { _deApplicationName = Nothing+    , _deVersionLabel    = Nothing+    , _deTemplateName    = Nothing+    , _deEnvironmentId   = Nothing+    , _deEnvironmentName = Nothing+    , _deRequestId       = Nothing+    , _deSeverity        = Nothing+    , _deStartTime       = Nothing+    , _deEndTime         = Nothing+    , _deMaxRecords      = Nothing+    , _deNextToken       = Nothing+    }++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to include only those associated with this application.+deApplicationName :: Lens' DescribeEvents (Maybe Text)+deApplicationName =+    lens _deApplicationName (\s a -> s { _deApplicationName = a })++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to those that occur up to, but not including, the EndTime.+deEndTime :: Lens' DescribeEvents (Maybe UTCTime)+deEndTime = lens _deEndTime (\s a -> s { _deEndTime = a }) . mapping _Time++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to those associated with this environment.+deEnvironmentId :: Lens' DescribeEvents (Maybe Text)+deEnvironmentId = lens _deEnvironmentId (\s a -> s { _deEnvironmentId = a })++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to those associated with this environment.+deEnvironmentName :: Lens' DescribeEvents (Maybe Text)+deEnvironmentName =+    lens _deEnvironmentName (\s a -> s { _deEnvironmentName = a })++-- | Specifies the maximum number of events that can be returned, beginning+-- with the most recent event.+deMaxRecords :: Lens' DescribeEvents (Maybe Natural)+deMaxRecords = lens _deMaxRecords (\s a -> s { _deMaxRecords = a }) . mapping _Nat++-- | Pagination token. If specified, the events return the next batch of+-- results.+deNextToken :: Lens' DescribeEvents (Maybe Text)+deNextToken = lens _deNextToken (\s a -> s { _deNextToken = a })++-- | If specified, AWS Elastic Beanstalk restricts the described events to+-- include only those associated with this request ID.+deRequestId :: Lens' DescribeEvents (Maybe Text)+deRequestId = lens _deRequestId (\s a -> s { _deRequestId = a })++-- | If specified, limits the events returned from this call to include only+-- those with the specified severity or higher.+deSeverity :: Lens' DescribeEvents (Maybe Text)+deSeverity = lens _deSeverity (\s a -> s { _deSeverity = a })++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to those that occur on or after this time.+deStartTime :: Lens' DescribeEvents (Maybe UTCTime)+deStartTime = lens _deStartTime (\s a -> s { _deStartTime = a }) . mapping _Time++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to those that are associated with this environment configuration.+deTemplateName :: Lens' DescribeEvents (Maybe Text)+deTemplateName = lens _deTemplateName (\s a -> s { _deTemplateName = a })++-- | If specified, AWS Elastic Beanstalk restricts the returned descriptions+-- to those associated with this application version.+deVersionLabel :: Lens' DescribeEvents (Maybe Text)+deVersionLabel = lens _deVersionLabel (\s a -> s { _deVersionLabel = a })++data DescribeEventsResponse = DescribeEventsResponse+    { _derEvents    :: List "Events" EventDescription+    , _derNextToken :: Maybe Text+    } deriving (Eq, Show)++-- | 'DescribeEventsResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'derEvents' @::@ ['EventDescription']+--+-- * 'derNextToken' @::@ 'Maybe' 'Text'+--+describeEventsResponse :: DescribeEventsResponse+describeEventsResponse = DescribeEventsResponse+    { _derEvents    = mempty+    , _derNextToken = Nothing+    }++-- | A list of EventDescription.+derEvents :: Lens' DescribeEventsResponse [EventDescription]+derEvents = lens _derEvents (\s a -> s { _derEvents = a }) . _List++-- | If returned, this indicates that there are more results to obtain. Use+-- this token in the next DescribeEvents call to get the next batch of+-- events.+derNextToken :: Lens' DescribeEventsResponse (Maybe Text)+derNextToken = lens _derNextToken (\s a -> s { _derNextToken = a })++instance ToPath DescribeEvents where+    toPath = const "/"++instance ToQuery DescribeEvents where+    toQuery DescribeEvents{..} = mconcat+        [ "ApplicationName" =? _deApplicationName+        , "EndTime"         =? _deEndTime+        , "EnvironmentId"   =? _deEnvironmentId+        , "EnvironmentName" =? _deEnvironmentName+        , "MaxRecords"      =? _deMaxRecords+        , "NextToken"       =? _deNextToken+        , "RequestId"       =? _deRequestId+        , "Severity"        =? _deSeverity+        , "StartTime"       =? _deStartTime+        , "TemplateName"    =? _deTemplateName+        , "VersionLabel"    =? _deVersionLabel+        ]++instance ToHeaders DescribeEvents++instance AWSRequest DescribeEvents where+    type Sv DescribeEvents = ElasticBeanstalk+    type Rs DescribeEvents = DescribeEventsResponse++    request  = post "DescribeEvents"+    response = xmlResponse++instance FromXML DescribeEventsResponse where+    parseXML = withElement "DescribeEventsResult" $ \x -> DescribeEventsResponse+        <$> x .@  "Events"+        <*> x .@? "NextToken"++instance AWSPager DescribeEvents where+    page rq rs+        | stop (rq ^. deNextToken) = Nothing+        | otherwise = (\x -> rq & deNextToken ?~ x)+            <$> (rs ^. derNextToken)
+ gen/Network/AWS/ElasticBeanstalk/ListAvailableSolutionStacks.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Returns a list of the available solution stack names.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_ListAvailableSolutionStacks.html>+module Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks+    (+    -- * Request+      ListAvailableSolutionStacks+    -- ** Request constructor+    , listAvailableSolutionStacks++    -- * Response+    , ListAvailableSolutionStacksResponse+    -- ** Response constructor+    , listAvailableSolutionStacksResponse+    -- ** Response lenses+    , lassrSolutionStackDetails+    , lassrSolutionStacks+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data ListAvailableSolutionStacks = ListAvailableSolutionStacks+    deriving (Eq, Ord, Show, Generic)++-- | 'ListAvailableSolutionStacks' constructor.+listAvailableSolutionStacks :: ListAvailableSolutionStacks+listAvailableSolutionStacks = ListAvailableSolutionStacks++data ListAvailableSolutionStacksResponse = ListAvailableSolutionStacksResponse+    { _lassrSolutionStackDetails :: List "SolutionStackDetails" SolutionStackDescription+    , _lassrSolutionStacks       :: List "SolutionStacks" Text+    } deriving (Eq, Show)++-- | 'ListAvailableSolutionStacksResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'lassrSolutionStackDetails' @::@ ['SolutionStackDescription']+--+-- * 'lassrSolutionStacks' @::@ ['Text']+--+listAvailableSolutionStacksResponse :: ListAvailableSolutionStacksResponse+listAvailableSolutionStacksResponse = ListAvailableSolutionStacksResponse+    { _lassrSolutionStacks       = mempty+    , _lassrSolutionStackDetails = mempty+    }++-- | A list of available solution stacks and their SolutionStackDescription.+lassrSolutionStackDetails :: Lens' ListAvailableSolutionStacksResponse [SolutionStackDescription]+lassrSolutionStackDetails =+    lens _lassrSolutionStackDetails+        (\s a -> s { _lassrSolutionStackDetails = a })+            . _List++-- | A list of available solution stacks.+lassrSolutionStacks :: Lens' ListAvailableSolutionStacksResponse [Text]+lassrSolutionStacks =+    lens _lassrSolutionStacks (\s a -> s { _lassrSolutionStacks = a })+        . _List++instance ToPath ListAvailableSolutionStacks where+    toPath = const "/"++instance ToQuery ListAvailableSolutionStacks where+    toQuery = const mempty++instance ToHeaders ListAvailableSolutionStacks++instance AWSRequest ListAvailableSolutionStacks where+    type Sv ListAvailableSolutionStacks = ElasticBeanstalk+    type Rs ListAvailableSolutionStacks = ListAvailableSolutionStacksResponse++    request  = post "ListAvailableSolutionStacks"+    response = xmlResponse++instance FromXML ListAvailableSolutionStacksResponse where+    parseXML = withElement "ListAvailableSolutionStacksResult" $ \x -> ListAvailableSolutionStacksResponse+        <$> x .@  "SolutionStackDetails"+        <*> x .@  "SolutionStacks"
+ gen/Network/AWS/ElasticBeanstalk/RebuildEnvironment.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.RebuildEnvironment+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Deletes and recreates all of the AWS resources (for example: the Auto+-- Scaling group, load balancer, etc.) for a specified environment and forces+-- a restart.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_RebuildEnvironment.html>+module Network.AWS.ElasticBeanstalk.RebuildEnvironment+    (+    -- * Request+      RebuildEnvironment+    -- ** Request constructor+    , rebuildEnvironment+    -- ** Request lenses+    , reEnvironmentId+    , reEnvironmentName++    -- * Response+    , RebuildEnvironmentResponse+    -- ** Response constructor+    , rebuildEnvironmentResponse+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data RebuildEnvironment = RebuildEnvironment+    { _reEnvironmentId   :: Maybe Text+    , _reEnvironmentName :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'RebuildEnvironment' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'reEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'reEnvironmentName' @::@ 'Maybe' 'Text'+--+rebuildEnvironment :: RebuildEnvironment+rebuildEnvironment = RebuildEnvironment+    { _reEnvironmentId   = Nothing+    , _reEnvironmentName = Nothing+    }++-- | The ID of the environment to rebuild. Condition: You must specify either+-- this or an EnvironmentName, or both. If you do not specify either, AWS+-- Elastic Beanstalk returns MissingRequiredParameter error.+reEnvironmentId :: Lens' RebuildEnvironment (Maybe Text)+reEnvironmentId = lens _reEnvironmentId (\s a -> s { _reEnvironmentId = a })++-- | The name of the environment to rebuild. Condition: You must specify+-- either this or an EnvironmentId, or both. If you do not specify either,+-- AWS Elastic Beanstalk returns MissingRequiredParameter error.+reEnvironmentName :: Lens' RebuildEnvironment (Maybe Text)+reEnvironmentName =+    lens _reEnvironmentName (\s a -> s { _reEnvironmentName = a })++data RebuildEnvironmentResponse = RebuildEnvironmentResponse+    deriving (Eq, Ord, Show, Generic)++-- | 'RebuildEnvironmentResponse' constructor.+rebuildEnvironmentResponse :: RebuildEnvironmentResponse+rebuildEnvironmentResponse = RebuildEnvironmentResponse++instance ToPath RebuildEnvironment where+    toPath = const "/"++instance ToQuery RebuildEnvironment where+    toQuery RebuildEnvironment{..} = mconcat+        [ "EnvironmentId"   =? _reEnvironmentId+        , "EnvironmentName" =? _reEnvironmentName+        ]++instance ToHeaders RebuildEnvironment++instance AWSRequest RebuildEnvironment where+    type Sv RebuildEnvironment = ElasticBeanstalk+    type Rs RebuildEnvironment = RebuildEnvironmentResponse++    request  = post "RebuildEnvironment"+    response = nullResponse RebuildEnvironmentResponse
+ gen/Network/AWS/ElasticBeanstalk/RequestEnvironmentInfo.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Initiates a request to compile the specified type of information of the+-- deployed environment. Setting the InfoType to tail compiles the last lines+-- from the application server log files of every Amazon EC2 instance in your+-- environment. Use RetrieveEnvironmentInfo to access the compiled+-- information. Related Topics RetrieveEnvironmentInfo.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_RequestEnvironmentInfo.html>+module Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo+    (+    -- * Request+      RequestEnvironmentInfo+    -- ** Request constructor+    , requestEnvironmentInfo+    -- ** Request lenses+    , reiEnvironmentId+    , reiEnvironmentName+    , reiInfoType++    -- * Response+    , RequestEnvironmentInfoResponse+    -- ** Response constructor+    , requestEnvironmentInfoResponse+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data RequestEnvironmentInfo = RequestEnvironmentInfo+    { _reiEnvironmentId   :: Maybe Text+    , _reiEnvironmentName :: Maybe Text+    , _reiInfoType        :: Text+    } deriving (Eq, Ord, Show)++-- | 'RequestEnvironmentInfo' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'reiEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'reiEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'reiInfoType' @::@ 'Text'+--+requestEnvironmentInfo :: Text -- ^ 'reiInfoType'+                       -> RequestEnvironmentInfo+requestEnvironmentInfo p1 = RequestEnvironmentInfo+    { _reiInfoType        = p1+    , _reiEnvironmentId   = Nothing+    , _reiEnvironmentName = Nothing+    }++-- | The ID of the environment of the requested data. If no such environment+-- is found, RequestEnvironmentInfo returns an InvalidParameterValue error.+-- Condition: You must specify either this or an EnvironmentName, or both.+-- If you do not specify either, AWS Elastic Beanstalk returns+-- MissingRequiredParameter error.+reiEnvironmentId :: Lens' RequestEnvironmentInfo (Maybe Text)+reiEnvironmentId = lens _reiEnvironmentId (\s a -> s { _reiEnvironmentId = a })++-- | The name of the environment of the requested data. If no such environment+-- is found, RequestEnvironmentInfo returns an InvalidParameterValue error.+-- Condition: You must specify either this or an EnvironmentId, or both. If+-- you do not specify either, AWS Elastic Beanstalk returns+-- MissingRequiredParameter error.+reiEnvironmentName :: Lens' RequestEnvironmentInfo (Maybe Text)+reiEnvironmentName =+    lens _reiEnvironmentName (\s a -> s { _reiEnvironmentName = a })++-- | The type of information to request.+reiInfoType :: Lens' RequestEnvironmentInfo Text+reiInfoType = lens _reiInfoType (\s a -> s { _reiInfoType = a })++data RequestEnvironmentInfoResponse = RequestEnvironmentInfoResponse+    deriving (Eq, Ord, Show, Generic)++-- | 'RequestEnvironmentInfoResponse' constructor.+requestEnvironmentInfoResponse :: RequestEnvironmentInfoResponse+requestEnvironmentInfoResponse = RequestEnvironmentInfoResponse++instance ToPath RequestEnvironmentInfo where+    toPath = const "/"++instance ToQuery RequestEnvironmentInfo where+    toQuery RequestEnvironmentInfo{..} = mconcat+        [ "EnvironmentId"   =? _reiEnvironmentId+        , "EnvironmentName" =? _reiEnvironmentName+        , "InfoType"        =? _reiInfoType+        ]++instance ToHeaders RequestEnvironmentInfo++instance AWSRequest RequestEnvironmentInfo where+    type Sv RequestEnvironmentInfo = ElasticBeanstalk+    type Rs RequestEnvironmentInfo = RequestEnvironmentInfoResponse++    request  = post "RequestEnvironmentInfo"+    response = nullResponse RequestEnvironmentInfoResponse
+ gen/Network/AWS/ElasticBeanstalk/RestartAppServer.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.RestartAppServer+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Causes the environment to restart the application container server running+-- on each Amazon EC2 instance.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_RestartAppServer.html>+module Network.AWS.ElasticBeanstalk.RestartAppServer+    (+    -- * Request+      RestartAppServer+    -- ** Request constructor+    , restartAppServer+    -- ** Request lenses+    , rasEnvironmentId+    , rasEnvironmentName++    -- * Response+    , RestartAppServerResponse+    -- ** Response constructor+    , restartAppServerResponse+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data RestartAppServer = RestartAppServer+    { _rasEnvironmentId   :: Maybe Text+    , _rasEnvironmentName :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'RestartAppServer' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'rasEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'rasEnvironmentName' @::@ 'Maybe' 'Text'+--+restartAppServer :: RestartAppServer+restartAppServer = RestartAppServer+    { _rasEnvironmentId   = Nothing+    , _rasEnvironmentName = Nothing+    }++-- | The ID of the environment to restart the server for. Condition: You must+-- specify either this or an EnvironmentName, or both. If you do not specify+-- either, AWS Elastic Beanstalk returns MissingRequiredParameter error.+rasEnvironmentId :: Lens' RestartAppServer (Maybe Text)+rasEnvironmentId = lens _rasEnvironmentId (\s a -> s { _rasEnvironmentId = a })++-- | The name of the environment to restart the server for. Condition: You+-- must specify either this or an EnvironmentId, or both. If you do not+-- specify either, AWS Elastic Beanstalk returns MissingRequiredParameter+-- error.+rasEnvironmentName :: Lens' RestartAppServer (Maybe Text)+rasEnvironmentName =+    lens _rasEnvironmentName (\s a -> s { _rasEnvironmentName = a })++data RestartAppServerResponse = RestartAppServerResponse+    deriving (Eq, Ord, Show, Generic)++-- | 'RestartAppServerResponse' constructor.+restartAppServerResponse :: RestartAppServerResponse+restartAppServerResponse = RestartAppServerResponse++instance ToPath RestartAppServer where+    toPath = const "/"++instance ToQuery RestartAppServer where+    toQuery RestartAppServer{..} = mconcat+        [ "EnvironmentId"   =? _rasEnvironmentId+        , "EnvironmentName" =? _rasEnvironmentName+        ]++instance ToHeaders RestartAppServer++instance AWSRequest RestartAppServer where+    type Sv RestartAppServer = ElasticBeanstalk+    type Rs RestartAppServer = RestartAppServerResponse++    request  = post "RestartAppServer"+    response = nullResponse RestartAppServerResponse
+ gen/Network/AWS/ElasticBeanstalk/RetrieveEnvironmentInfo.hs view
@@ -0,0 +1,143 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Retrieves the compiled information from a RequestEnvironmentInfo request.+-- Related Topics RequestEnvironmentInfo.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_RetrieveEnvironmentInfo.html>+module Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo+    (+    -- * Request+      RetrieveEnvironmentInfo+    -- ** Request constructor+    , retrieveEnvironmentInfo+    -- ** Request lenses+    , rei1EnvironmentId+    , rei1EnvironmentName+    , rei1InfoType++    -- * Response+    , RetrieveEnvironmentInfoResponse+    -- ** Response constructor+    , retrieveEnvironmentInfoResponse+    -- ** Response lenses+    , reirEnvironmentInfo+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data RetrieveEnvironmentInfo = RetrieveEnvironmentInfo+    { _rei1EnvironmentId   :: Maybe Text+    , _rei1EnvironmentName :: Maybe Text+    , _rei1InfoType        :: Text+    } deriving (Eq, Ord, Show)++-- | 'RetrieveEnvironmentInfo' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'rei1EnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'rei1EnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'rei1InfoType' @::@ 'Text'+--+retrieveEnvironmentInfo :: Text -- ^ 'rei1InfoType'+                        -> RetrieveEnvironmentInfo+retrieveEnvironmentInfo p1 = RetrieveEnvironmentInfo+    { _rei1InfoType        = p1+    , _rei1EnvironmentId   = Nothing+    , _rei1EnvironmentName = Nothing+    }++-- | The ID of the data's environment. If no such environment is found,+-- returns an InvalidParameterValue error. Condition: You must specify+-- either this or an EnvironmentName, or both. If you do not specify either,+-- AWS Elastic Beanstalk returns MissingRequiredParameter error.+rei1EnvironmentId :: Lens' RetrieveEnvironmentInfo (Maybe Text)+rei1EnvironmentId =+    lens _rei1EnvironmentId (\s a -> s { _rei1EnvironmentId = a })++-- | The name of the data's environment. If no such environment is found,+-- returns an InvalidParameterValue error. Condition: You must specify+-- either this or an EnvironmentId, or both. If you do not specify either,+-- AWS Elastic Beanstalk returns MissingRequiredParameter error.+rei1EnvironmentName :: Lens' RetrieveEnvironmentInfo (Maybe Text)+rei1EnvironmentName =+    lens _rei1EnvironmentName (\s a -> s { _rei1EnvironmentName = a })++-- | The type of information to retrieve.+rei1InfoType :: Lens' RetrieveEnvironmentInfo Text+rei1InfoType = lens _rei1InfoType (\s a -> s { _rei1InfoType = a })++newtype RetrieveEnvironmentInfoResponse = RetrieveEnvironmentInfoResponse+    { _reirEnvironmentInfo :: List "EnvironmentInfo" EnvironmentInfoDescription+    } deriving (Eq, Show, Monoid, Semigroup)++instance GHC.Exts.IsList RetrieveEnvironmentInfoResponse where+    type Item RetrieveEnvironmentInfoResponse = EnvironmentInfoDescription++    fromList = RetrieveEnvironmentInfoResponse . GHC.Exts.fromList+    toList   = GHC.Exts.toList . _reirEnvironmentInfo++-- | 'RetrieveEnvironmentInfoResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'reirEnvironmentInfo' @::@ ['EnvironmentInfoDescription']+--+retrieveEnvironmentInfoResponse :: RetrieveEnvironmentInfoResponse+retrieveEnvironmentInfoResponse = RetrieveEnvironmentInfoResponse+    { _reirEnvironmentInfo = mempty+    }++-- | The EnvironmentInfoDescription of the environment.+reirEnvironmentInfo :: Lens' RetrieveEnvironmentInfoResponse [EnvironmentInfoDescription]+reirEnvironmentInfo =+    lens _reirEnvironmentInfo (\s a -> s { _reirEnvironmentInfo = a })+        . _List++instance ToPath RetrieveEnvironmentInfo where+    toPath = const "/"++instance ToQuery RetrieveEnvironmentInfo where+    toQuery RetrieveEnvironmentInfo{..} = mconcat+        [ "EnvironmentId"   =? _rei1EnvironmentId+        , "EnvironmentName" =? _rei1EnvironmentName+        , "InfoType"        =? _rei1InfoType+        ]++instance ToHeaders RetrieveEnvironmentInfo++instance AWSRequest RetrieveEnvironmentInfo where+    type Sv RetrieveEnvironmentInfo = ElasticBeanstalk+    type Rs RetrieveEnvironmentInfo = RetrieveEnvironmentInfoResponse++    request  = post "RetrieveEnvironmentInfo"+    response = xmlResponse++instance FromXML RetrieveEnvironmentInfoResponse where+    parseXML = withElement "RetrieveEnvironmentInfoResult" $ \x -> RetrieveEnvironmentInfoResponse+        <$> x .@  "EnvironmentInfo"
+ gen/Network/AWS/ElasticBeanstalk/SwapEnvironmentCNAMEs.hs view
@@ -0,0 +1,137 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Swaps the CNAMEs of two environments.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_SwapEnvironmentCNAMEs.html>+module Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs+    (+    -- * Request+      SwapEnvironmentCNAMEs+    -- ** Request constructor+    , swapEnvironmentCNAMEs+    -- ** Request lenses+    , secnameDestinationEnvironmentId+    , secnameDestinationEnvironmentName+    , secnameSourceEnvironmentId+    , secnameSourceEnvironmentName++    -- * Response+    , SwapEnvironmentCNAMEsResponse+    -- ** Response constructor+    , swapEnvironmentCNAMEsResponse+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data SwapEnvironmentCNAMEs = SwapEnvironmentCNAMEs+    { _secnameDestinationEnvironmentId   :: Maybe Text+    , _secnameDestinationEnvironmentName :: Maybe Text+    , _secnameSourceEnvironmentId        :: Maybe Text+    , _secnameSourceEnvironmentName      :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'SwapEnvironmentCNAMEs' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'secnameDestinationEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'secnameDestinationEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'secnameSourceEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'secnameSourceEnvironmentName' @::@ 'Maybe' 'Text'+--+swapEnvironmentCNAMEs :: SwapEnvironmentCNAMEs+swapEnvironmentCNAMEs = SwapEnvironmentCNAMEs+    { _secnameSourceEnvironmentId        = Nothing+    , _secnameSourceEnvironmentName      = Nothing+    , _secnameDestinationEnvironmentId   = Nothing+    , _secnameDestinationEnvironmentName = Nothing+    }++-- | The ID of the destination environment. Condition: You must specify at+-- least the DestinationEnvironmentID or the DestinationEnvironmentName. You+-- may also specify both. You must specify the SourceEnvironmentId with the+-- DestinationEnvironmentId.+secnameDestinationEnvironmentId :: Lens' SwapEnvironmentCNAMEs (Maybe Text)+secnameDestinationEnvironmentId =+    lens _secnameDestinationEnvironmentId+        (\s a -> s { _secnameDestinationEnvironmentId = a })++-- | The name of the destination environment. Condition: You must specify at+-- least the DestinationEnvironmentID or the DestinationEnvironmentName. You+-- may also specify both. You must specify the SourceEnvironmentName with+-- the DestinationEnvironmentName.+secnameDestinationEnvironmentName :: Lens' SwapEnvironmentCNAMEs (Maybe Text)+secnameDestinationEnvironmentName =+    lens _secnameDestinationEnvironmentName+        (\s a -> s { _secnameDestinationEnvironmentName = a })++-- | The ID of the source environment. Condition: You must specify at least+-- the SourceEnvironmentID or the SourceEnvironmentName. You may also+-- specify both. If you specify the SourceEnvironmentId, you must specify+-- the DestinationEnvironmentId.+secnameSourceEnvironmentId :: Lens' SwapEnvironmentCNAMEs (Maybe Text)+secnameSourceEnvironmentId =+    lens _secnameSourceEnvironmentId+        (\s a -> s { _secnameSourceEnvironmentId = a })++-- | The name of the source environment. Condition: You must specify at least+-- the SourceEnvironmentID or the SourceEnvironmentName. You may also+-- specify both. If you specify the SourceEnvironmentName, you must specify+-- the DestinationEnvironmentName.+secnameSourceEnvironmentName :: Lens' SwapEnvironmentCNAMEs (Maybe Text)+secnameSourceEnvironmentName =+    lens _secnameSourceEnvironmentName+        (\s a -> s { _secnameSourceEnvironmentName = a })++data SwapEnvironmentCNAMEsResponse = SwapEnvironmentCNAMEsResponse+    deriving (Eq, Ord, Show, Generic)++-- | 'SwapEnvironmentCNAMEsResponse' constructor.+swapEnvironmentCNAMEsResponse :: SwapEnvironmentCNAMEsResponse+swapEnvironmentCNAMEsResponse = SwapEnvironmentCNAMEsResponse++instance ToPath SwapEnvironmentCNAMEs where+    toPath = const "/"++instance ToQuery SwapEnvironmentCNAMEs where+    toQuery SwapEnvironmentCNAMEs{..} = mconcat+        [ "DestinationEnvironmentId"   =? _secnameDestinationEnvironmentId+        , "DestinationEnvironmentName" =? _secnameDestinationEnvironmentName+        , "SourceEnvironmentId"        =? _secnameSourceEnvironmentId+        , "SourceEnvironmentName"      =? _secnameSourceEnvironmentName+        ]++instance ToHeaders SwapEnvironmentCNAMEs++instance AWSRequest SwapEnvironmentCNAMEs where+    type Sv SwapEnvironmentCNAMEs = ElasticBeanstalk+    type Rs SwapEnvironmentCNAMEs = SwapEnvironmentCNAMEsResponse++    request  = post "SwapEnvironmentCNAMEs"+    response = nullResponse SwapEnvironmentCNAMEsResponse
+ gen/Network/AWS/ElasticBeanstalk/TerminateEnvironment.hs view
@@ -0,0 +1,302 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.TerminateEnvironment+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Terminates the specified environment.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_TerminateEnvironment.html>+module Network.AWS.ElasticBeanstalk.TerminateEnvironment+    (+    -- * Request+      TerminateEnvironment+    -- ** Request constructor+    , terminateEnvironment+    -- ** Request lenses+    , teEnvironmentId+    , teEnvironmentName+    , teTerminateResources++    -- * Response+    , TerminateEnvironmentResponse+    -- ** Response constructor+    , terminateEnvironmentResponse+    -- ** Response lenses+    , terApplicationName+    , terCNAME+    , terDateCreated+    , terDateUpdated+    , terDescription+    , terEndpointURL+    , terEnvironmentId+    , terEnvironmentName+    , terHealth+    , terResources+    , terSolutionStackName+    , terStatus+    , terTemplateName+    , terTier+    , terVersionLabel+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data TerminateEnvironment = TerminateEnvironment+    { _teEnvironmentId      :: Maybe Text+    , _teEnvironmentName    :: Maybe Text+    , _teTerminateResources :: Maybe Bool+    } deriving (Eq, Ord, Show)++-- | 'TerminateEnvironment' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'teEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'teEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'teTerminateResources' @::@ 'Maybe' 'Bool'+--+terminateEnvironment :: TerminateEnvironment+terminateEnvironment = TerminateEnvironment+    { _teEnvironmentId      = Nothing+    , _teEnvironmentName    = Nothing+    , _teTerminateResources = Nothing+    }++-- | The ID of the environment to terminate. Condition: You must specify+-- either this or an EnvironmentName, or both. If you do not specify either,+-- AWS Elastic Beanstalk returns MissingRequiredParameter error.+teEnvironmentId :: Lens' TerminateEnvironment (Maybe Text)+teEnvironmentId = lens _teEnvironmentId (\s a -> s { _teEnvironmentId = a })++-- | The name of the environment to terminate. Condition: You must specify+-- either this or an EnvironmentId, or both. If you do not specify either,+-- AWS Elastic Beanstalk returns MissingRequiredParameter error.+teEnvironmentName :: Lens' TerminateEnvironment (Maybe Text)+teEnvironmentName =+    lens _teEnvironmentName (\s a -> s { _teEnvironmentName = a })++-- | Indicates whether the associated AWS resources should shut down when the+-- environment is terminated: true: (default) The user AWS resources (for+-- example, the Auto Scaling group, LoadBalancer, etc.) are terminated along+-- with the environment. false: The environment is removed from the AWS+-- Elastic Beanstalk but the AWS resources continue to operate. true: The+-- specified environment as well as the associated AWS resources, such as+-- Auto Scaling group and LoadBalancer, are terminated. false: AWS Elastic+-- Beanstalk resource management is removed from the environment, but the+-- AWS resources continue to operate. For more information, see the AWS+-- Elastic Beanstalk User Guide. Default: true Valid Values: true | false.+teTerminateResources :: Lens' TerminateEnvironment (Maybe Bool)+teTerminateResources =+    lens _teTerminateResources (\s a -> s { _teTerminateResources = a })++data TerminateEnvironmentResponse = TerminateEnvironmentResponse+    { _terApplicationName   :: Maybe Text+    , _terCNAME             :: Maybe Text+    , _terDateCreated       :: Maybe RFC822+    , _terDateUpdated       :: Maybe RFC822+    , _terDescription       :: Maybe Text+    , _terEndpointURL       :: Maybe Text+    , _terEnvironmentId     :: Maybe Text+    , _terEnvironmentName   :: Maybe Text+    , _terHealth            :: Maybe Text+    , _terResources         :: Maybe EnvironmentResourcesDescription+    , _terSolutionStackName :: Maybe Text+    , _terStatus            :: Maybe Text+    , _terTemplateName      :: Maybe Text+    , _terTier              :: Maybe EnvironmentTier+    , _terVersionLabel      :: Maybe Text+    } deriving (Eq, Show)++-- | 'TerminateEnvironmentResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'terApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'terCNAME' @::@ 'Maybe' 'Text'+--+-- * 'terDateCreated' @::@ 'Maybe' 'UTCTime'+--+-- * 'terDateUpdated' @::@ 'Maybe' 'UTCTime'+--+-- * 'terDescription' @::@ 'Maybe' 'Text'+--+-- * 'terEndpointURL' @::@ 'Maybe' 'Text'+--+-- * 'terEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'terEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'terHealth' @::@ 'Maybe' 'Text'+--+-- * 'terResources' @::@ 'Maybe' 'EnvironmentResourcesDescription'+--+-- * 'terSolutionStackName' @::@ 'Maybe' 'Text'+--+-- * 'terStatus' @::@ 'Maybe' 'Text'+--+-- * 'terTemplateName' @::@ 'Maybe' 'Text'+--+-- * 'terTier' @::@ 'Maybe' 'EnvironmentTier'+--+-- * 'terVersionLabel' @::@ 'Maybe' 'Text'+--+terminateEnvironmentResponse :: TerminateEnvironmentResponse+terminateEnvironmentResponse = TerminateEnvironmentResponse+    { _terEnvironmentName   = Nothing+    , _terEnvironmentId     = Nothing+    , _terApplicationName   = Nothing+    , _terVersionLabel      = Nothing+    , _terSolutionStackName = Nothing+    , _terTemplateName      = Nothing+    , _terDescription       = Nothing+    , _terEndpointURL       = Nothing+    , _terCNAME             = Nothing+    , _terDateCreated       = Nothing+    , _terDateUpdated       = Nothing+    , _terStatus            = Nothing+    , _terHealth            = Nothing+    , _terResources         = Nothing+    , _terTier              = Nothing+    }++-- | The name of the application associated with this environment.+terApplicationName :: Lens' TerminateEnvironmentResponse (Maybe Text)+terApplicationName =+    lens _terApplicationName (\s a -> s { _terApplicationName = a })++-- | The URL to the CNAME for this environment.+terCNAME :: Lens' TerminateEnvironmentResponse (Maybe Text)+terCNAME = lens _terCNAME (\s a -> s { _terCNAME = a })++-- | The creation date for this environment.+terDateCreated :: Lens' TerminateEnvironmentResponse (Maybe UTCTime)+terDateCreated = lens _terDateCreated (\s a -> s { _terDateCreated = a }) . mapping _Time++-- | The last modified date for this environment.+terDateUpdated :: Lens' TerminateEnvironmentResponse (Maybe UTCTime)+terDateUpdated = lens _terDateUpdated (\s a -> s { _terDateUpdated = a }) . mapping _Time++-- | Describes this environment.+terDescription :: Lens' TerminateEnvironmentResponse (Maybe Text)+terDescription = lens _terDescription (\s a -> s { _terDescription = a })++-- | For load-balanced, autoscaling environments, the URL to the LoadBalancer.+-- For single-instance environments, the IP address of the instance.+terEndpointURL :: Lens' TerminateEnvironmentResponse (Maybe Text)+terEndpointURL = lens _terEndpointURL (\s a -> s { _terEndpointURL = a })++-- | The ID of this environment.+terEnvironmentId :: Lens' TerminateEnvironmentResponse (Maybe Text)+terEnvironmentId = lens _terEnvironmentId (\s a -> s { _terEnvironmentId = a })++-- | The name of this environment.+terEnvironmentName :: Lens' TerminateEnvironmentResponse (Maybe Text)+terEnvironmentName =+    lens _terEnvironmentName (\s a -> s { _terEnvironmentName = a })++-- | Describes the health status of the environment. AWS Elastic Beanstalk+-- indicates the failure levels for a running environment: Red : Indicates+-- the environment is not working. Yellow: Indicates that something is+-- wrong, the application might not be available, but the instances appear+-- running. Green: Indicates the environment is healthy and fully+-- functional. Red: Indicates the environment is not responsive. Occurs when+-- three or more consecutive failures occur for an environment. Yellow:+-- Indicates that something is wrong. Occurs when two consecutive failures+-- occur for an environment. Green: Indicates the environment is healthy and+-- fully functional. Grey: Default health for a new environment. The+-- environment is not fully launched and health checks have not started or+-- health checks are suspended during an UpdateEnvironment or+-- RestartEnvironement request. Default: Grey.+terHealth :: Lens' TerminateEnvironmentResponse (Maybe Text)+terHealth = lens _terHealth (\s a -> s { _terHealth = a })++-- | The description of the AWS resources used by this environment.+terResources :: Lens' TerminateEnvironmentResponse (Maybe EnvironmentResourcesDescription)+terResources = lens _terResources (\s a -> s { _terResources = a })++-- | The name of the SolutionStack deployed with this environment.+terSolutionStackName :: Lens' TerminateEnvironmentResponse (Maybe Text)+terSolutionStackName =+    lens _terSolutionStackName (\s a -> s { _terSolutionStackName = a })++-- | The current operational status of the environment: Launching: Environment+-- is in the process of initial deployment. Updating: Environment is in the+-- process of updating its configuration settings or application version.+-- Ready: Environment is available to have an action performed on it, such+-- as update or terminate. Terminating: Environment is in the shut-down+-- process. Terminated: Environment is not running.+terStatus :: Lens' TerminateEnvironmentResponse (Maybe Text)+terStatus = lens _terStatus (\s a -> s { _terStatus = a })++-- | The name of the configuration template used to originally launch this+-- environment.+terTemplateName :: Lens' TerminateEnvironmentResponse (Maybe Text)+terTemplateName = lens _terTemplateName (\s a -> s { _terTemplateName = a })++-- | Describes the current tier of this environment.+terTier :: Lens' TerminateEnvironmentResponse (Maybe EnvironmentTier)+terTier = lens _terTier (\s a -> s { _terTier = a })++-- | The application version deployed in this environment.+terVersionLabel :: Lens' TerminateEnvironmentResponse (Maybe Text)+terVersionLabel = lens _terVersionLabel (\s a -> s { _terVersionLabel = a })++instance ToPath TerminateEnvironment where+    toPath = const "/"++instance ToQuery TerminateEnvironment where+    toQuery TerminateEnvironment{..} = mconcat+        [ "EnvironmentId"      =? _teEnvironmentId+        , "EnvironmentName"    =? _teEnvironmentName+        , "TerminateResources" =? _teTerminateResources+        ]++instance ToHeaders TerminateEnvironment++instance AWSRequest TerminateEnvironment where+    type Sv TerminateEnvironment = ElasticBeanstalk+    type Rs TerminateEnvironment = TerminateEnvironmentResponse++    request  = post "TerminateEnvironment"+    response = xmlResponse++instance FromXML TerminateEnvironmentResponse where+    parseXML = withElement "TerminateEnvironmentResult" $ \x -> TerminateEnvironmentResponse+        <$> x .@? "ApplicationName"+        <*> x .@? "CNAME"+        <*> x .@? "DateCreated"+        <*> x .@? "DateUpdated"+        <*> x .@? "Description"+        <*> x .@? "EndpointURL"+        <*> x .@? "EnvironmentId"+        <*> x .@? "EnvironmentName"+        <*> x .@? "Health"+        <*> x .@? "Resources"+        <*> x .@? "SolutionStackName"+        <*> x .@? "Status"+        <*> x .@? "TemplateName"+        <*> x .@? "Tier"+        <*> x .@? "VersionLabel"
+ gen/Network/AWS/ElasticBeanstalk/Types.hs view
@@ -0,0 +1,2115 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.Types+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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 Network.AWS.ElasticBeanstalk.Types+    (+    -- * Service+      ElasticBeanstalk+    -- ** Error+    , RESTError+    -- ** XML+    , ns++    -- * ApplicationDescription+    , ApplicationDescription+    , applicationDescription+    , adApplicationName+    , adConfigurationTemplates+    , adDateCreated+    , adDateUpdated+    , adDescription+    , adVersions++    -- * EventSeverity+    , EventSeverity (..)++    -- * Tag+    , Tag+    , tag+    , tagKey+    , tagValue++    -- * EventDescription+    , EventDescription+    , eventDescription+    , edApplicationName+    , edEnvironmentName+    , edEventDate+    , edMessage+    , edRequestId+    , edSeverity+    , edTemplateName+    , edVersionLabel++    -- * LaunchConfiguration+    , LaunchConfiguration+    , launchConfiguration+    , lcName++    -- * ApplicationVersionDescriptionMessage+    , ApplicationVersionDescriptionMessage+    , applicationVersionDescriptionMessage+    , avdmApplicationVersion++    -- * AutoScalingGroup+    , AutoScalingGroup+    , autoScalingGroup+    , asgName++    -- * ConfigurationDeploymentStatus+    , ConfigurationDeploymentStatus (..)++    -- * ConfigurationOptionSetting+    , ConfigurationOptionSetting+    , configurationOptionSetting+    , cosNamespace+    , cosOptionName+    , cosValue++    -- * ConfigurationOptionValueType+    , ConfigurationOptionValueType (..)++    -- * ConfigurationSettingsDescription+    , ConfigurationSettingsDescription+    , configurationSettingsDescription+    , csdApplicationName+    , csdDateCreated+    , csdDateUpdated+    , csdDeploymentStatus+    , csdDescription+    , csdEnvironmentName+    , csdOptionSettings+    , csdSolutionStackName+    , csdTemplateName++    -- * ApplicationVersionDescription+    , ApplicationVersionDescription+    , applicationVersionDescription+    , avdApplicationName+    , avdDateCreated+    , avdDateUpdated+    , avdDescription+    , avdSourceBundle+    , avdVersionLabel++    -- * OptionSpecification+    , OptionSpecification+    , optionSpecification+    , osNamespace+    , osOptionName++    -- * EnvironmentResourceDescription+    , EnvironmentResourceDescription+    , environmentResourceDescription+    , erdAutoScalingGroups+    , erdEnvironmentName+    , erdInstances+    , erdLaunchConfigurations+    , erdLoadBalancers+    , erdQueues+    , erdTriggers++    -- * Queue+    , Queue+    , queue+    , qName+    , qURL++    -- * EnvironmentStatus+    , EnvironmentStatus (..)++    -- * LoadBalancerDescription+    , LoadBalancerDescription+    , loadBalancerDescription+    , lbdDomain+    , lbdListeners+    , lbdLoadBalancerName++    -- * ApplicationDescriptionMessage+    , ApplicationDescriptionMessage+    , applicationDescriptionMessage+    , admApplication++    -- * EnvironmentTier+    , EnvironmentTier+    , environmentTier+    , etName+    , etType+    , etVersion++    -- * LoadBalancer+    , LoadBalancer+    , loadBalancer+    , lbName++    -- * EnvironmentResourcesDescription+    , EnvironmentResourcesDescription+    , environmentResourcesDescription+    , erdLoadBalancer++    -- * OptionRestrictionRegex+    , OptionRestrictionRegex+    , optionRestrictionRegex+    , orrLabel+    , orrPattern++    -- * ConfigurationOptionDescription+    , ConfigurationOptionDescription+    , configurationOptionDescription+    , codChangeSeverity+    , codDefaultValue+    , codMaxLength+    , codMaxValue+    , codMinValue+    , codName+    , codNamespace+    , codRegex+    , codUserDefined+    , codValueOptions+    , codValueType++    -- * SourceConfiguration+    , SourceConfiguration+    , sourceConfiguration+    , scApplicationName+    , scTemplateName++    -- * EnvironmentInfoDescription+    , EnvironmentInfoDescription+    , environmentInfoDescription+    , eidEc2InstanceId+    , eidInfoType+    , eidMessage+    , eidSampleTimestamp++    -- * S3Location+    , S3Location+    , s3Location+    , slS3Bucket+    , slS3Key++    -- * ValidationMessage+    , ValidationMessage+    , validationMessage+    , vmMessage+    , vmNamespace+    , vmOptionName+    , vmSeverity++    -- * ValidationSeverity+    , ValidationSeverity (..)++    -- * Trigger+    , Trigger+    , trigger+    , tName++    -- * EnvironmentInfoType+    , EnvironmentInfoType (..)++    -- * EnvironmentDescription+    , EnvironmentDescription+    , environmentDescription+    , ed1ApplicationName+    , ed1CNAME+    , ed1DateCreated+    , ed1DateUpdated+    , ed1Description+    , ed1EndpointURL+    , ed1EnvironmentId+    , ed1EnvironmentName+    , ed1Health+    , ed1Resources+    , ed1SolutionStackName+    , ed1Status+    , ed1TemplateName+    , ed1Tier+    , ed1VersionLabel++    -- * Listener+    , Listener+    , listener+    , lPort+    , lProtocol++    -- * EnvironmentHealth+    , EnvironmentHealth (..)++    -- * Instance+    , Instance+    , instance'+    , iId++    -- * SolutionStackDescription+    , SolutionStackDescription+    , solutionStackDescription+    , ssdPermittedFileTypes+    , ssdSolutionStackName+    ) where++import Network.AWS.Error+import Network.AWS.Prelude+import Network.AWS.Signing.V4+import qualified GHC.Exts++-- | Version @2010-12-01@ of the Amazon Elastic Beanstalk service.+data ElasticBeanstalk++instance AWSService ElasticBeanstalk where+    type Sg ElasticBeanstalk = V4+    type Er ElasticBeanstalk = RESTError++    service = Service+        { _svcEndpoint     = regional+        , _svcAbbrev       = "ElasticBeanstalk"+        , _svcPrefix       = "elasticbeanstalk"+        , _svcVersion      = "2010-12-01"+        , _svcTargetPrefix = Nothing+        , _svcJSONVersion  = Nothing+        }++    handle = restError statusSuccess++ns :: Text+ns = "http://elasticbeanstalk.amazonaws.com/docs/2010-12-01/"++data ApplicationDescription = ApplicationDescription+    { _adApplicationName        :: Maybe Text+    , _adConfigurationTemplates :: List "ConfigurationTemplates" Text+    , _adDateCreated            :: Maybe RFC822+    , _adDateUpdated            :: Maybe RFC822+    , _adDescription            :: Maybe Text+    , _adVersions               :: List "Versions" Text+    } deriving (Eq, Ord, Show)++-- | 'ApplicationDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'adApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'adConfigurationTemplates' @::@ ['Text']+--+-- * 'adDateCreated' @::@ 'Maybe' 'UTCTime'+--+-- * 'adDateUpdated' @::@ 'Maybe' 'UTCTime'+--+-- * 'adDescription' @::@ 'Maybe' 'Text'+--+-- * 'adVersions' @::@ ['Text']+--+applicationDescription :: ApplicationDescription+applicationDescription = ApplicationDescription+    { _adApplicationName        = Nothing+    , _adDescription            = Nothing+    , _adDateCreated            = Nothing+    , _adDateUpdated            = Nothing+    , _adVersions               = mempty+    , _adConfigurationTemplates = mempty+    }++-- | The name of the application.+adApplicationName :: Lens' ApplicationDescription (Maybe Text)+adApplicationName =+    lens _adApplicationName (\s a -> s { _adApplicationName = a })++-- | The names of the configuration templates associated with this+-- application.+adConfigurationTemplates :: Lens' ApplicationDescription [Text]+adConfigurationTemplates =+    lens _adConfigurationTemplates+        (\s a -> s { _adConfigurationTemplates = a })+            . _List++-- | The date when the application was created.+adDateCreated :: Lens' ApplicationDescription (Maybe UTCTime)+adDateCreated = lens _adDateCreated (\s a -> s { _adDateCreated = a }) . mapping _Time++-- | The date when the application was last modified.+adDateUpdated :: Lens' ApplicationDescription (Maybe UTCTime)+adDateUpdated = lens _adDateUpdated (\s a -> s { _adDateUpdated = a }) . mapping _Time++-- | User-defined description of the application.+adDescription :: Lens' ApplicationDescription (Maybe Text)+adDescription = lens _adDescription (\s a -> s { _adDescription = a })++-- | The names of the versions for this application.+adVersions :: Lens' ApplicationDescription [Text]+adVersions = lens _adVersions (\s a -> s { _adVersions = a }) . _List++instance FromXML ApplicationDescription where+    parseXML x = ApplicationDescription+        <$> x .@? "ApplicationName"+        <*> x .@  "ConfigurationTemplates"+        <*> x .@? "DateCreated"+        <*> x .@? "DateUpdated"+        <*> x .@? "Description"+        <*> x .@  "Versions"++instance ToQuery ApplicationDescription where+    toQuery ApplicationDescription{..} = mconcat+        [ "ApplicationName"        =? _adApplicationName+        , "ConfigurationTemplates" =? _adConfigurationTemplates+        , "DateCreated"            =? _adDateCreated+        , "DateUpdated"            =? _adDateUpdated+        , "Description"            =? _adDescription+        , "Versions"               =? _adVersions+        ]++data EventSeverity+    = Debug -- ^ DEBUG+    | Error -- ^ ERROR+    | Fatal -- ^ FATAL+    | Info  -- ^ INFO+    | Trace -- ^ TRACE+    | Warn  -- ^ WARN+      deriving (Eq, Ord, Show, Generic, Enum)++instance Hashable EventSeverity++instance FromText EventSeverity where+    parser = match "DEBUG" Debug+         <|> match "ERROR" Error+         <|> match "FATAL" Fatal+         <|> match "INFO"  Info+         <|> match "TRACE" Trace+         <|> match "WARN"  Warn++instance ToText EventSeverity where+    toText = \case+        Debug -> "DEBUG"+        Error -> "ERROR"+        Fatal -> "FATAL"+        Info  -> "INFO"+        Trace -> "TRACE"+        Warn  -> "WARN"++instance FromXML EventSeverity where+    parseXML = parseXMLText "EventSeverity"++instance ToQuery EventSeverity where+    toQuery = toQuery . toText++data Tag = Tag+    { _tagKey   :: Maybe Text+    , _tagValue :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'Tag' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'tagKey' @::@ 'Maybe' 'Text'+--+-- * 'tagValue' @::@ 'Maybe' 'Text'+--+tag :: Tag+tag = Tag+    { _tagKey   = Nothing+    , _tagValue = Nothing+    }++-- | The key of the tag.+tagKey :: Lens' Tag (Maybe Text)+tagKey = lens _tagKey (\s a -> s { _tagKey = a })++-- | The value of the tag.+tagValue :: Lens' Tag (Maybe Text)+tagValue = lens _tagValue (\s a -> s { _tagValue = a })++instance FromXML Tag where+    parseXML x = Tag+        <$> x .@? "Key"+        <*> x .@? "Value"++instance ToQuery Tag where+    toQuery Tag{..} = mconcat+        [ "Key"   =? _tagKey+        , "Value" =? _tagValue+        ]++data EventDescription = EventDescription+    { _edApplicationName :: Maybe Text+    , _edEnvironmentName :: Maybe Text+    , _edEventDate       :: Maybe RFC822+    , _edMessage         :: Maybe Text+    , _edRequestId       :: Maybe Text+    , _edSeverity        :: Maybe Text+    , _edTemplateName    :: Maybe Text+    , _edVersionLabel    :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'EventDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'edApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'edEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'edEventDate' @::@ 'Maybe' 'UTCTime'+--+-- * 'edMessage' @::@ 'Maybe' 'Text'+--+-- * 'edRequestId' @::@ 'Maybe' 'Text'+--+-- * 'edSeverity' @::@ 'Maybe' 'Text'+--+-- * 'edTemplateName' @::@ 'Maybe' 'Text'+--+-- * 'edVersionLabel' @::@ 'Maybe' 'Text'+--+eventDescription :: EventDescription+eventDescription = EventDescription+    { _edEventDate       = Nothing+    , _edMessage         = Nothing+    , _edApplicationName = Nothing+    , _edVersionLabel    = Nothing+    , _edTemplateName    = Nothing+    , _edEnvironmentName = Nothing+    , _edRequestId       = Nothing+    , _edSeverity        = Nothing+    }++-- | The application associated with the event.+edApplicationName :: Lens' EventDescription (Maybe Text)+edApplicationName =+    lens _edApplicationName (\s a -> s { _edApplicationName = a })++-- | The name of the environment associated with this event.+edEnvironmentName :: Lens' EventDescription (Maybe Text)+edEnvironmentName =+    lens _edEnvironmentName (\s a -> s { _edEnvironmentName = a })++-- | The date when the event occurred.+edEventDate :: Lens' EventDescription (Maybe UTCTime)+edEventDate = lens _edEventDate (\s a -> s { _edEventDate = a }) . mapping _Time++-- | The event message.+edMessage :: Lens' EventDescription (Maybe Text)+edMessage = lens _edMessage (\s a -> s { _edMessage = a })++-- | The web service request ID for the activity of this event.+edRequestId :: Lens' EventDescription (Maybe Text)+edRequestId = lens _edRequestId (\s a -> s { _edRequestId = a })++-- | The severity level of this event.+edSeverity :: Lens' EventDescription (Maybe Text)+edSeverity = lens _edSeverity (\s a -> s { _edSeverity = a })++-- | The name of the configuration associated with this event.+edTemplateName :: Lens' EventDescription (Maybe Text)+edTemplateName = lens _edTemplateName (\s a -> s { _edTemplateName = a })++-- | The release label for the application version associated with this event.+edVersionLabel :: Lens' EventDescription (Maybe Text)+edVersionLabel = lens _edVersionLabel (\s a -> s { _edVersionLabel = a })++instance FromXML EventDescription where+    parseXML x = EventDescription+        <$> x .@? "ApplicationName"+        <*> x .@? "EnvironmentName"+        <*> x .@? "EventDate"+        <*> x .@? "Message"+        <*> x .@? "RequestId"+        <*> x .@? "Severity"+        <*> x .@? "TemplateName"+        <*> x .@? "VersionLabel"++instance ToQuery EventDescription where+    toQuery EventDescription{..} = mconcat+        [ "ApplicationName" =? _edApplicationName+        , "EnvironmentName" =? _edEnvironmentName+        , "EventDate"       =? _edEventDate+        , "Message"         =? _edMessage+        , "RequestId"       =? _edRequestId+        , "Severity"        =? _edSeverity+        , "TemplateName"    =? _edTemplateName+        , "VersionLabel"    =? _edVersionLabel+        ]++newtype LaunchConfiguration = LaunchConfiguration+    { _lcName :: Maybe Text+    } deriving (Eq, Ord, Show, Monoid)++-- | 'LaunchConfiguration' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'lcName' @::@ 'Maybe' 'Text'+--+launchConfiguration :: LaunchConfiguration+launchConfiguration = LaunchConfiguration+    { _lcName = Nothing+    }++-- | The name of the launch configuration.+lcName :: Lens' LaunchConfiguration (Maybe Text)+lcName = lens _lcName (\s a -> s { _lcName = a })++instance FromXML LaunchConfiguration where+    parseXML x = LaunchConfiguration+        <$> x .@? "Name"++instance ToQuery LaunchConfiguration where+    toQuery LaunchConfiguration{..} = mconcat+        [ "Name" =? _lcName+        ]++newtype ApplicationVersionDescriptionMessage = ApplicationVersionDescriptionMessage+    { _avdmApplicationVersion :: Maybe ApplicationVersionDescription+    } deriving (Eq, Show)++-- | 'ApplicationVersionDescriptionMessage' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'avdmApplicationVersion' @::@ 'Maybe' 'ApplicationVersionDescription'+--+applicationVersionDescriptionMessage :: ApplicationVersionDescriptionMessage+applicationVersionDescriptionMessage = ApplicationVersionDescriptionMessage+    { _avdmApplicationVersion = Nothing+    }++-- | The ApplicationVersionDescription of the application version.+avdmApplicationVersion :: Lens' ApplicationVersionDescriptionMessage (Maybe ApplicationVersionDescription)+avdmApplicationVersion =+    lens _avdmApplicationVersion (\s a -> s { _avdmApplicationVersion = a })++instance FromXML ApplicationVersionDescriptionMessage where+    parseXML x = ApplicationVersionDescriptionMessage+        <$> x .@? "ApplicationVersion"++instance ToQuery ApplicationVersionDescriptionMessage where+    toQuery ApplicationVersionDescriptionMessage{..} = mconcat+        [ "ApplicationVersion" =? _avdmApplicationVersion+        ]++newtype AutoScalingGroup = AutoScalingGroup+    { _asgName :: Maybe Text+    } deriving (Eq, Ord, Show, Monoid)++-- | 'AutoScalingGroup' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'asgName' @::@ 'Maybe' 'Text'+--+autoScalingGroup :: AutoScalingGroup+autoScalingGroup = AutoScalingGroup+    { _asgName = Nothing+    }++-- | The name of the AutoScalingGroup .+asgName :: Lens' AutoScalingGroup (Maybe Text)+asgName = lens _asgName (\s a -> s { _asgName = a })++instance FromXML AutoScalingGroup where+    parseXML x = AutoScalingGroup+        <$> x .@? "Name"++instance ToQuery AutoScalingGroup where+    toQuery AutoScalingGroup{..} = mconcat+        [ "Name" =? _asgName+        ]++data ConfigurationDeploymentStatus+    = Deployed -- ^ deployed+    | Failed   -- ^ failed+    | Pending  -- ^ pending+      deriving (Eq, Ord, Show, Generic, Enum)++instance Hashable ConfigurationDeploymentStatus++instance FromText ConfigurationDeploymentStatus where+    parser = match "deployed" Deployed+         <|> match "failed"   Failed+         <|> match "pending"  Pending++instance ToText ConfigurationDeploymentStatus where+    toText = \case+        Deployed -> "deployed"+        Failed   -> "failed"+        Pending  -> "pending"++instance FromXML ConfigurationDeploymentStatus where+    parseXML = parseXMLText "ConfigurationDeploymentStatus"++instance ToQuery ConfigurationDeploymentStatus where+    toQuery = toQuery . toText++data ConfigurationOptionSetting = ConfigurationOptionSetting+    { _cosNamespace  :: Maybe Text+    , _cosOptionName :: Maybe Text+    , _cosValue      :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'ConfigurationOptionSetting' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'cosNamespace' @::@ 'Maybe' 'Text'+--+-- * 'cosOptionName' @::@ 'Maybe' 'Text'+--+-- * 'cosValue' @::@ 'Maybe' 'Text'+--+configurationOptionSetting :: ConfigurationOptionSetting+configurationOptionSetting = ConfigurationOptionSetting+    { _cosNamespace  = Nothing+    , _cosOptionName = Nothing+    , _cosValue      = Nothing+    }++-- | A unique namespace identifying the option's associated AWS resource.+cosNamespace :: Lens' ConfigurationOptionSetting (Maybe Text)+cosNamespace = lens _cosNamespace (\s a -> s { _cosNamespace = a })++-- | The name of the configuration option.+cosOptionName :: Lens' ConfigurationOptionSetting (Maybe Text)+cosOptionName = lens _cosOptionName (\s a -> s { _cosOptionName = a })++-- | The current value for the configuration option.+cosValue :: Lens' ConfigurationOptionSetting (Maybe Text)+cosValue = lens _cosValue (\s a -> s { _cosValue = a })++instance FromXML ConfigurationOptionSetting where+    parseXML x = ConfigurationOptionSetting+        <$> x .@? "Namespace"+        <*> x .@? "OptionName"+        <*> x .@? "Value"++instance ToQuery ConfigurationOptionSetting where+    toQuery ConfigurationOptionSetting{..} = mconcat+        [ "Namespace"  =? _cosNamespace+        , "OptionName" =? _cosOptionName+        , "Value"      =? _cosValue+        ]++data ConfigurationOptionValueType+    = List'  -- ^ List+    | Scalar -- ^ Scalar+      deriving (Eq, Ord, Show, Generic, Enum)++instance Hashable ConfigurationOptionValueType++instance FromText ConfigurationOptionValueType where+    parser = match "List"   List'+         <|> match "Scalar" Scalar++instance ToText ConfigurationOptionValueType where+    toText = \case+        List'  -> "List"+        Scalar -> "Scalar"++instance FromXML ConfigurationOptionValueType where+    parseXML = parseXMLText "ConfigurationOptionValueType"++instance ToQuery ConfigurationOptionValueType where+    toQuery = toQuery . toText++data ConfigurationSettingsDescription = ConfigurationSettingsDescription+    { _csdApplicationName   :: Maybe Text+    , _csdDateCreated       :: Maybe RFC822+    , _csdDateUpdated       :: Maybe RFC822+    , _csdDeploymentStatus  :: Maybe Text+    , _csdDescription       :: Maybe Text+    , _csdEnvironmentName   :: Maybe Text+    , _csdOptionSettings    :: List "OptionSettings" ConfigurationOptionSetting+    , _csdSolutionStackName :: Maybe Text+    , _csdTemplateName      :: Maybe Text+    } deriving (Eq, Show)++-- | 'ConfigurationSettingsDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'csdApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'csdDateCreated' @::@ 'Maybe' 'UTCTime'+--+-- * 'csdDateUpdated' @::@ 'Maybe' 'UTCTime'+--+-- * 'csdDeploymentStatus' @::@ 'Maybe' 'Text'+--+-- * 'csdDescription' @::@ 'Maybe' 'Text'+--+-- * 'csdEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'csdOptionSettings' @::@ ['ConfigurationOptionSetting']+--+-- * 'csdSolutionStackName' @::@ 'Maybe' 'Text'+--+-- * 'csdTemplateName' @::@ 'Maybe' 'Text'+--+configurationSettingsDescription :: ConfigurationSettingsDescription+configurationSettingsDescription = ConfigurationSettingsDescription+    { _csdSolutionStackName = Nothing+    , _csdApplicationName   = Nothing+    , _csdTemplateName      = Nothing+    , _csdDescription       = Nothing+    , _csdEnvironmentName   = Nothing+    , _csdDeploymentStatus  = Nothing+    , _csdDateCreated       = Nothing+    , _csdDateUpdated       = Nothing+    , _csdOptionSettings    = mempty+    }++-- | The name of the application associated with this configuration set.+csdApplicationName :: Lens' ConfigurationSettingsDescription (Maybe Text)+csdApplicationName =+    lens _csdApplicationName (\s a -> s { _csdApplicationName = a })++-- | The date (in UTC time) when this configuration set was created.+csdDateCreated :: Lens' ConfigurationSettingsDescription (Maybe UTCTime)+csdDateCreated = lens _csdDateCreated (\s a -> s { _csdDateCreated = a }) . mapping _Time++-- | The date (in UTC time) when this configuration set was last modified.+csdDateUpdated :: Lens' ConfigurationSettingsDescription (Maybe UTCTime)+csdDateUpdated = lens _csdDateUpdated (\s a -> s { _csdDateUpdated = a }) . mapping _Time++-- | If this configuration set is associated with an environment, the+-- DeploymentStatus parameter indicates the deployment status of this+-- configuration set: null: This configuration is not associated with a+-- running environment. pending: This is a draft configuration that is not+-- deployed to the associated environment but is in the process of+-- deploying. deployed: This is the configuration that is currently deployed+-- to the associated running environment. failed: This is a draft+-- configuration, that failed to successfully deploy. null: This+-- configuration is not associated with a running environment. pending: This+-- is a draft configuration that is not deployed to the associated+-- environment but is in the process of deploying. deployed: This is the+-- configuration that is currently deployed to the associated running+-- environment. failed: This is a draft configuration that failed to+-- successfully deploy.+csdDeploymentStatus :: Lens' ConfigurationSettingsDescription (Maybe Text)+csdDeploymentStatus =+    lens _csdDeploymentStatus (\s a -> s { _csdDeploymentStatus = a })++-- | Describes this configuration set.+csdDescription :: Lens' ConfigurationSettingsDescription (Maybe Text)+csdDescription = lens _csdDescription (\s a -> s { _csdDescription = a })++-- | If not null, the name of the environment for this configuration set.+csdEnvironmentName :: Lens' ConfigurationSettingsDescription (Maybe Text)+csdEnvironmentName =+    lens _csdEnvironmentName (\s a -> s { _csdEnvironmentName = a })++-- | A list of the configuration options and their values in this+-- configuration set.+csdOptionSettings :: Lens' ConfigurationSettingsDescription [ConfigurationOptionSetting]+csdOptionSettings =+    lens _csdOptionSettings (\s a -> s { _csdOptionSettings = a })+        . _List++-- | The name of the solution stack this configuration set uses.+csdSolutionStackName :: Lens' ConfigurationSettingsDescription (Maybe Text)+csdSolutionStackName =+    lens _csdSolutionStackName (\s a -> s { _csdSolutionStackName = a })++-- | If not null, the name of the configuration template for this+-- configuration set.+csdTemplateName :: Lens' ConfigurationSettingsDescription (Maybe Text)+csdTemplateName = lens _csdTemplateName (\s a -> s { _csdTemplateName = a })++instance FromXML ConfigurationSettingsDescription where+    parseXML x = ConfigurationSettingsDescription+        <$> x .@? "ApplicationName"+        <*> x .@? "DateCreated"+        <*> x .@? "DateUpdated"+        <*> x .@? "DeploymentStatus"+        <*> x .@? "Description"+        <*> x .@? "EnvironmentName"+        <*> x .@  "OptionSettings"+        <*> x .@? "SolutionStackName"+        <*> x .@? "TemplateName"++instance ToQuery ConfigurationSettingsDescription where+    toQuery ConfigurationSettingsDescription{..} = mconcat+        [ "ApplicationName"   =? _csdApplicationName+        , "DateCreated"       =? _csdDateCreated+        , "DateUpdated"       =? _csdDateUpdated+        , "DeploymentStatus"  =? _csdDeploymentStatus+        , "Description"       =? _csdDescription+        , "EnvironmentName"   =? _csdEnvironmentName+        , "OptionSettings"    =? _csdOptionSettings+        , "SolutionStackName" =? _csdSolutionStackName+        , "TemplateName"      =? _csdTemplateName+        ]++data ApplicationVersionDescription = ApplicationVersionDescription+    { _avdApplicationName :: Maybe Text+    , _avdDateCreated     :: Maybe RFC822+    , _avdDateUpdated     :: Maybe RFC822+    , _avdDescription     :: Maybe Text+    , _avdSourceBundle    :: Maybe S3Location+    , _avdVersionLabel    :: Maybe Text+    } deriving (Eq, Show)++-- | 'ApplicationVersionDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'avdApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'avdDateCreated' @::@ 'Maybe' 'UTCTime'+--+-- * 'avdDateUpdated' @::@ 'Maybe' 'UTCTime'+--+-- * 'avdDescription' @::@ 'Maybe' 'Text'+--+-- * 'avdSourceBundle' @::@ 'Maybe' 'S3Location'+--+-- * 'avdVersionLabel' @::@ 'Maybe' 'Text'+--+applicationVersionDescription :: ApplicationVersionDescription+applicationVersionDescription = ApplicationVersionDescription+    { _avdApplicationName = Nothing+    , _avdDescription     = Nothing+    , _avdVersionLabel    = Nothing+    , _avdSourceBundle    = Nothing+    , _avdDateCreated     = Nothing+    , _avdDateUpdated     = Nothing+    }++-- | The name of the application associated with this release.+avdApplicationName :: Lens' ApplicationVersionDescription (Maybe Text)+avdApplicationName =+    lens _avdApplicationName (\s a -> s { _avdApplicationName = a })++-- | The creation date of the application version.+avdDateCreated :: Lens' ApplicationVersionDescription (Maybe UTCTime)+avdDateCreated = lens _avdDateCreated (\s a -> s { _avdDateCreated = a }) . mapping _Time++-- | The last modified date of the application version.+avdDateUpdated :: Lens' ApplicationVersionDescription (Maybe UTCTime)+avdDateUpdated = lens _avdDateUpdated (\s a -> s { _avdDateUpdated = a }) . mapping _Time++-- | The description of this application version.+avdDescription :: Lens' ApplicationVersionDescription (Maybe Text)+avdDescription = lens _avdDescription (\s a -> s { _avdDescription = a })++-- | The location where the source bundle is located for this version.+avdSourceBundle :: Lens' ApplicationVersionDescription (Maybe S3Location)+avdSourceBundle = lens _avdSourceBundle (\s a -> s { _avdSourceBundle = a })++-- | A label uniquely identifying the version for the associated application.+avdVersionLabel :: Lens' ApplicationVersionDescription (Maybe Text)+avdVersionLabel = lens _avdVersionLabel (\s a -> s { _avdVersionLabel = a })++instance FromXML ApplicationVersionDescription where+    parseXML x = ApplicationVersionDescription+        <$> x .@? "ApplicationName"+        <*> x .@? "DateCreated"+        <*> x .@? "DateUpdated"+        <*> x .@? "Description"+        <*> x .@? "SourceBundle"+        <*> x .@? "VersionLabel"++instance ToQuery ApplicationVersionDescription where+    toQuery ApplicationVersionDescription{..} = mconcat+        [ "ApplicationName" =? _avdApplicationName+        , "DateCreated"     =? _avdDateCreated+        , "DateUpdated"     =? _avdDateUpdated+        , "Description"     =? _avdDescription+        , "SourceBundle"    =? _avdSourceBundle+        , "VersionLabel"    =? _avdVersionLabel+        ]++data OptionSpecification = OptionSpecification+    { _osNamespace  :: Maybe Text+    , _osOptionName :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'OptionSpecification' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'osNamespace' @::@ 'Maybe' 'Text'+--+-- * 'osOptionName' @::@ 'Maybe' 'Text'+--+optionSpecification :: OptionSpecification+optionSpecification = OptionSpecification+    { _osNamespace  = Nothing+    , _osOptionName = Nothing+    }++-- | A unique namespace identifying the option's associated AWS resource.+osNamespace :: Lens' OptionSpecification (Maybe Text)+osNamespace = lens _osNamespace (\s a -> s { _osNamespace = a })++-- | The name of the configuration option.+osOptionName :: Lens' OptionSpecification (Maybe Text)+osOptionName = lens _osOptionName (\s a -> s { _osOptionName = a })++instance FromXML OptionSpecification where+    parseXML x = OptionSpecification+        <$> x .@? "Namespace"+        <*> x .@? "OptionName"++instance ToQuery OptionSpecification where+    toQuery OptionSpecification{..} = mconcat+        [ "Namespace"  =? _osNamespace+        , "OptionName" =? _osOptionName+        ]++data EnvironmentResourceDescription = EnvironmentResourceDescription+    { _erdAutoScalingGroups    :: List "AutoScalingGroups" AutoScalingGroup+    , _erdEnvironmentName      :: Maybe Text+    , _erdInstances            :: List "Instances" Instance+    , _erdLaunchConfigurations :: List "LaunchConfigurations" LaunchConfiguration+    , _erdLoadBalancers        :: List "LoadBalancers" LoadBalancer+    , _erdQueues               :: List "Queues" Queue+    , _erdTriggers             :: List "Triggers" Trigger+    } deriving (Eq, Show)++-- | 'EnvironmentResourceDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'erdAutoScalingGroups' @::@ ['AutoScalingGroup']+--+-- * 'erdEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'erdInstances' @::@ ['Instance']+--+-- * 'erdLaunchConfigurations' @::@ ['LaunchConfiguration']+--+-- * 'erdLoadBalancers' @::@ ['LoadBalancer']+--+-- * 'erdQueues' @::@ ['Queue']+--+-- * 'erdTriggers' @::@ ['Trigger']+--+environmentResourceDescription :: EnvironmentResourceDescription+environmentResourceDescription = EnvironmentResourceDescription+    { _erdEnvironmentName      = Nothing+    , _erdAutoScalingGroups    = mempty+    , _erdInstances            = mempty+    , _erdLaunchConfigurations = mempty+    , _erdLoadBalancers        = mempty+    , _erdTriggers             = mempty+    , _erdQueues               = mempty+    }++-- | The AutoScalingGroups used by this environment.+erdAutoScalingGroups :: Lens' EnvironmentResourceDescription [AutoScalingGroup]+erdAutoScalingGroups =+    lens _erdAutoScalingGroups (\s a -> s { _erdAutoScalingGroups = a })+        . _List++-- | The name of the environment.+erdEnvironmentName :: Lens' EnvironmentResourceDescription (Maybe Text)+erdEnvironmentName =+    lens _erdEnvironmentName (\s a -> s { _erdEnvironmentName = a })++-- | The Amazon EC2 instances used by this environment.+erdInstances :: Lens' EnvironmentResourceDescription [Instance]+erdInstances = lens _erdInstances (\s a -> s { _erdInstances = a }) . _List++-- | The Auto Scaling launch configurations in use by this environment.+erdLaunchConfigurations :: Lens' EnvironmentResourceDescription [LaunchConfiguration]+erdLaunchConfigurations =+    lens _erdLaunchConfigurations (\s a -> s { _erdLaunchConfigurations = a })+        . _List++-- | The LoadBalancers in use by this environment.+erdLoadBalancers :: Lens' EnvironmentResourceDescription [LoadBalancer]+erdLoadBalancers = lens _erdLoadBalancers (\s a -> s { _erdLoadBalancers = a }) . _List++-- | The queues used by this environment.+erdQueues :: Lens' EnvironmentResourceDescription [Queue]+erdQueues = lens _erdQueues (\s a -> s { _erdQueues = a }) . _List++-- | The AutoScaling triggers in use by this environment.+erdTriggers :: Lens' EnvironmentResourceDescription [Trigger]+erdTriggers = lens _erdTriggers (\s a -> s { _erdTriggers = a }) . _List++instance FromXML EnvironmentResourceDescription where+    parseXML x = EnvironmentResourceDescription+        <$> x .@  "AutoScalingGroups"+        <*> x .@? "EnvironmentName"+        <*> x .@  "Instances"+        <*> x .@  "LaunchConfigurations"+        <*> x .@  "LoadBalancers"+        <*> x .@  "Queues"+        <*> x .@  "Triggers"++instance ToQuery EnvironmentResourceDescription where+    toQuery EnvironmentResourceDescription{..} = mconcat+        [ "AutoScalingGroups"    =? _erdAutoScalingGroups+        , "EnvironmentName"      =? _erdEnvironmentName+        , "Instances"            =? _erdInstances+        , "LaunchConfigurations" =? _erdLaunchConfigurations+        , "LoadBalancers"        =? _erdLoadBalancers+        , "Queues"               =? _erdQueues+        , "Triggers"             =? _erdTriggers+        ]++data Queue = Queue+    { _qName :: Maybe Text+    , _qURL  :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'Queue' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'qName' @::@ 'Maybe' 'Text'+--+-- * 'qURL' @::@ 'Maybe' 'Text'+--+queue :: Queue+queue = Queue+    { _qName = Nothing+    , _qURL  = Nothing+    }++-- | The name of the queue.+qName :: Lens' Queue (Maybe Text)+qName = lens _qName (\s a -> s { _qName = a })++-- | The URL of the queue.+qURL :: Lens' Queue (Maybe Text)+qURL = lens _qURL (\s a -> s { _qURL = a })++instance FromXML Queue where+    parseXML x = Queue+        <$> x .@? "Name"+        <*> x .@? "URL"++instance ToQuery Queue where+    toQuery Queue{..} = mconcat+        [ "Name" =? _qName+        , "URL"  =? _qURL+        ]++data EnvironmentStatus+    = Launching   -- ^ Launching+    | Ready       -- ^ Ready+    | Terminated  -- ^ Terminated+    | Terminating -- ^ Terminating+    | Updating    -- ^ Updating+      deriving (Eq, Ord, Show, Generic, Enum)++instance Hashable EnvironmentStatus++instance FromText EnvironmentStatus where+    parser = match "Launching"   Launching+         <|> match "Ready"       Ready+         <|> match "Terminated"  Terminated+         <|> match "Terminating" Terminating+         <|> match "Updating"    Updating++instance ToText EnvironmentStatus where+    toText = \case+        Launching   -> "Launching"+        Ready       -> "Ready"+        Terminated  -> "Terminated"+        Terminating -> "Terminating"+        Updating    -> "Updating"++instance FromXML EnvironmentStatus where+    parseXML = parseXMLText "EnvironmentStatus"++instance ToQuery EnvironmentStatus where+    toQuery = toQuery . toText++data LoadBalancerDescription = LoadBalancerDescription+    { _lbdDomain           :: Maybe Text+    , _lbdListeners        :: List "Listeners" Listener+    , _lbdLoadBalancerName :: Maybe Text+    } deriving (Eq, Show)++-- | 'LoadBalancerDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'lbdDomain' @::@ 'Maybe' 'Text'+--+-- * 'lbdListeners' @::@ ['Listener']+--+-- * 'lbdLoadBalancerName' @::@ 'Maybe' 'Text'+--+loadBalancerDescription :: LoadBalancerDescription+loadBalancerDescription = LoadBalancerDescription+    { _lbdLoadBalancerName = Nothing+    , _lbdDomain           = Nothing+    , _lbdListeners        = mempty+    }++-- | The domain name of the LoadBalancer.+lbdDomain :: Lens' LoadBalancerDescription (Maybe Text)+lbdDomain = lens _lbdDomain (\s a -> s { _lbdDomain = a })++-- | A list of Listeners used by the LoadBalancer.+lbdListeners :: Lens' LoadBalancerDescription [Listener]+lbdListeners = lens _lbdListeners (\s a -> s { _lbdListeners = a }) . _List++-- | The name of the LoadBalancer.+lbdLoadBalancerName :: Lens' LoadBalancerDescription (Maybe Text)+lbdLoadBalancerName =+    lens _lbdLoadBalancerName (\s a -> s { _lbdLoadBalancerName = a })++instance FromXML LoadBalancerDescription where+    parseXML x = LoadBalancerDescription+        <$> x .@? "Domain"+        <*> x .@  "Listeners"+        <*> x .@? "LoadBalancerName"++instance ToQuery LoadBalancerDescription where+    toQuery LoadBalancerDescription{..} = mconcat+        [ "Domain"           =? _lbdDomain+        , "Listeners"        =? _lbdListeners+        , "LoadBalancerName" =? _lbdLoadBalancerName+        ]++newtype ApplicationDescriptionMessage = ApplicationDescriptionMessage+    { _admApplication :: Maybe ApplicationDescription+    } deriving (Eq, Show)++-- | 'ApplicationDescriptionMessage' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'admApplication' @::@ 'Maybe' 'ApplicationDescription'+--+applicationDescriptionMessage :: ApplicationDescriptionMessage+applicationDescriptionMessage = ApplicationDescriptionMessage+    { _admApplication = Nothing+    }++-- | The ApplicationDescription of the application.+admApplication :: Lens' ApplicationDescriptionMessage (Maybe ApplicationDescription)+admApplication = lens _admApplication (\s a -> s { _admApplication = a })++instance FromXML ApplicationDescriptionMessage where+    parseXML x = ApplicationDescriptionMessage+        <$> x .@? "Application"++instance ToQuery ApplicationDescriptionMessage where+    toQuery ApplicationDescriptionMessage{..} = mconcat+        [ "Application" =? _admApplication+        ]++data EnvironmentTier = EnvironmentTier+    { _etName    :: Maybe Text+    , _etType    :: Maybe Text+    , _etVersion :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'EnvironmentTier' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'etName' @::@ 'Maybe' 'Text'+--+-- * 'etType' @::@ 'Maybe' 'Text'+--+-- * 'etVersion' @::@ 'Maybe' 'Text'+--+environmentTier :: EnvironmentTier+environmentTier = EnvironmentTier+    { _etName    = Nothing+    , _etType    = Nothing+    , _etVersion = Nothing+    }++-- | The name of this environment tier.+etName :: Lens' EnvironmentTier (Maybe Text)+etName = lens _etName (\s a -> s { _etName = a })++-- | The type of this environment tier.+etType :: Lens' EnvironmentTier (Maybe Text)+etType = lens _etType (\s a -> s { _etType = a })++-- | The version of this environment tier.+etVersion :: Lens' EnvironmentTier (Maybe Text)+etVersion = lens _etVersion (\s a -> s { _etVersion = a })++instance FromXML EnvironmentTier where+    parseXML x = EnvironmentTier+        <$> x .@? "Name"+        <*> x .@? "Type"+        <*> x .@? "Version"++instance ToQuery EnvironmentTier where+    toQuery EnvironmentTier{..} = mconcat+        [ "Name"    =? _etName+        , "Type"    =? _etType+        , "Version" =? _etVersion+        ]++newtype LoadBalancer = LoadBalancer+    { _lbName :: Maybe Text+    } deriving (Eq, Ord, Show, Monoid)++-- | 'LoadBalancer' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'lbName' @::@ 'Maybe' 'Text'+--+loadBalancer :: LoadBalancer+loadBalancer = LoadBalancer+    { _lbName = Nothing+    }++-- | The name of the LoadBalancer.+lbName :: Lens' LoadBalancer (Maybe Text)+lbName = lens _lbName (\s a -> s { _lbName = a })++instance FromXML LoadBalancer where+    parseXML x = LoadBalancer+        <$> x .@? "Name"++instance ToQuery LoadBalancer where+    toQuery LoadBalancer{..} = mconcat+        [ "Name" =? _lbName+        ]++newtype EnvironmentResourcesDescription = EnvironmentResourcesDescription+    { _erdLoadBalancer :: Maybe LoadBalancerDescription+    } deriving (Eq, Show)++-- | 'EnvironmentResourcesDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'erdLoadBalancer' @::@ 'Maybe' 'LoadBalancerDescription'+--+environmentResourcesDescription :: EnvironmentResourcesDescription+environmentResourcesDescription = EnvironmentResourcesDescription+    { _erdLoadBalancer = Nothing+    }++-- | Describes the LoadBalancer.+erdLoadBalancer :: Lens' EnvironmentResourcesDescription (Maybe LoadBalancerDescription)+erdLoadBalancer = lens _erdLoadBalancer (\s a -> s { _erdLoadBalancer = a })++instance FromXML EnvironmentResourcesDescription where+    parseXML x = EnvironmentResourcesDescription+        <$> x .@? "LoadBalancer"++instance ToQuery EnvironmentResourcesDescription where+    toQuery EnvironmentResourcesDescription{..} = mconcat+        [ "LoadBalancer" =? _erdLoadBalancer+        ]++data OptionRestrictionRegex = OptionRestrictionRegex+    { _orrLabel   :: Maybe Text+    , _orrPattern :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'OptionRestrictionRegex' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'orrLabel' @::@ 'Maybe' 'Text'+--+-- * 'orrPattern' @::@ 'Maybe' 'Text'+--+optionRestrictionRegex :: OptionRestrictionRegex+optionRestrictionRegex = OptionRestrictionRegex+    { _orrPattern = Nothing+    , _orrLabel   = Nothing+    }++-- | A unique name representing this regular expression.+orrLabel :: Lens' OptionRestrictionRegex (Maybe Text)+orrLabel = lens _orrLabel (\s a -> s { _orrLabel = a })++-- | The regular expression pattern that a string configuration option value+-- with this restriction must match.+orrPattern :: Lens' OptionRestrictionRegex (Maybe Text)+orrPattern = lens _orrPattern (\s a -> s { _orrPattern = a })++instance FromXML OptionRestrictionRegex where+    parseXML x = OptionRestrictionRegex+        <$> x .@? "Label"+        <*> x .@? "Pattern"++instance ToQuery OptionRestrictionRegex where+    toQuery OptionRestrictionRegex{..} = mconcat+        [ "Label"   =? _orrLabel+        , "Pattern" =? _orrPattern+        ]++data ConfigurationOptionDescription = ConfigurationOptionDescription+    { _codChangeSeverity :: Maybe Text+    , _codDefaultValue   :: Maybe Text+    , _codMaxLength      :: Maybe Int+    , _codMaxValue       :: Maybe Int+    , _codMinValue       :: Maybe Int+    , _codName           :: Maybe Text+    , _codNamespace      :: Maybe Text+    , _codRegex          :: Maybe OptionRestrictionRegex+    , _codUserDefined    :: Maybe Bool+    , _codValueOptions   :: List "ValueOptions" Text+    , _codValueType      :: Maybe Text+    } deriving (Eq, Show)++-- | 'ConfigurationOptionDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'codChangeSeverity' @::@ 'Maybe' 'Text'+--+-- * 'codDefaultValue' @::@ 'Maybe' 'Text'+--+-- * 'codMaxLength' @::@ 'Maybe' 'Int'+--+-- * 'codMaxValue' @::@ 'Maybe' 'Int'+--+-- * 'codMinValue' @::@ 'Maybe' 'Int'+--+-- * 'codName' @::@ 'Maybe' 'Text'+--+-- * 'codNamespace' @::@ 'Maybe' 'Text'+--+-- * 'codRegex' @::@ 'Maybe' 'OptionRestrictionRegex'+--+-- * 'codUserDefined' @::@ 'Maybe' 'Bool'+--+-- * 'codValueOptions' @::@ ['Text']+--+-- * 'codValueType' @::@ 'Maybe' 'Text'+--+configurationOptionDescription :: ConfigurationOptionDescription+configurationOptionDescription = ConfigurationOptionDescription+    { _codNamespace      = Nothing+    , _codName           = Nothing+    , _codDefaultValue   = Nothing+    , _codChangeSeverity = Nothing+    , _codUserDefined    = Nothing+    , _codValueType      = Nothing+    , _codValueOptions   = mempty+    , _codMinValue       = Nothing+    , _codMaxValue       = Nothing+    , _codMaxLength      = Nothing+    , _codRegex          = Nothing+    }++-- | An indication of which action is required if the value for this+-- configuration option changes: NoInterruption - There is no interruption+-- to the environment or application availability. RestartEnvironment - The+-- environment is restarted, all AWS resources are deleted and recreated,+-- and the environment is unavailable during the process.+-- RestartApplicationServer - The environment is available the entire time.+-- However, a short application outage occurs when the application servers+-- on the running Amazon EC2 instances are restarted. NoInterruption : There+-- is no interruption to the environment or application availability.+-- RestartEnvironment : The environment is entirely restarted, all AWS+-- resources are deleted and recreated, and the environment is unavailable+-- during the process. RestartApplicationServer : The environment is+-- available the entire time. However, a short application outage occurs+-- when the application servers on the running Amazon EC2 instances are+-- restarted.+codChangeSeverity :: Lens' ConfigurationOptionDescription (Maybe Text)+codChangeSeverity =+    lens _codChangeSeverity (\s a -> s { _codChangeSeverity = a })++-- | The default value for this configuration option.+codDefaultValue :: Lens' ConfigurationOptionDescription (Maybe Text)+codDefaultValue = lens _codDefaultValue (\s a -> s { _codDefaultValue = a })++-- | If specified, the configuration option must be a string value no longer+-- than this value.+codMaxLength :: Lens' ConfigurationOptionDescription (Maybe Int)+codMaxLength = lens _codMaxLength (\s a -> s { _codMaxLength = a })++-- | If specified, the configuration option must be a numeric value less than+-- this value.+codMaxValue :: Lens' ConfigurationOptionDescription (Maybe Int)+codMaxValue = lens _codMaxValue (\s a -> s { _codMaxValue = a })++-- | If specified, the configuration option must be a numeric value greater+-- than this value.+codMinValue :: Lens' ConfigurationOptionDescription (Maybe Int)+codMinValue = lens _codMinValue (\s a -> s { _codMinValue = a })++-- | The name of the configuration option.+codName :: Lens' ConfigurationOptionDescription (Maybe Text)+codName = lens _codName (\s a -> s { _codName = a })++-- | A unique namespace identifying the option's associated AWS resource.+codNamespace :: Lens' ConfigurationOptionDescription (Maybe Text)+codNamespace = lens _codNamespace (\s a -> s { _codNamespace = a })++-- | If specified, the configuration option must be a string value that+-- satisfies this regular expression.+codRegex :: Lens' ConfigurationOptionDescription (Maybe OptionRestrictionRegex)+codRegex = lens _codRegex (\s a -> s { _codRegex = a })++-- | An indication of whether the user defined this configuration option: true+-- : This configuration option was defined by the user. It is a valid choice+-- for specifying this as an Option to Remove when updating configuration+-- settings. false : This configuration was not defined by the user. true :+-- This configuration option was defined by the user. It is a valid choice+-- for specifying if this as an Option to Remove when updating configuration+-- settings. false : This configuration was not defined by the user.+-- Constraint: You can remove only UserDefined options from a configuration.+-- Valid Values: true | false.+codUserDefined :: Lens' ConfigurationOptionDescription (Maybe Bool)+codUserDefined = lens _codUserDefined (\s a -> s { _codUserDefined = a })++-- | If specified, values for the configuration option are selected from this+-- list.+codValueOptions :: Lens' ConfigurationOptionDescription [Text]+codValueOptions = lens _codValueOptions (\s a -> s { _codValueOptions = a }) . _List++-- | An indication of which type of values this option has and whether it is+-- allowable to select one or more than one of the possible values: Scalar :+-- Values for this option are a single selection from the possible values,+-- or a unformatted string or numeric value governed by the MIN/MAX/Regex+-- constraints: List : Values for this option are multiple selections of the+-- possible values. Boolean : Values for this option are either true or+-- false . Scalar : Values for this option are a single selection from the+-- possible values, or an unformatted string, or numeric value governed by+-- the MIN/MAX/Regex constraints. List : Values for this option are multiple+-- selections from the possible values. Boolean : Values for this option are+-- either true or false .+codValueType :: Lens' ConfigurationOptionDescription (Maybe Text)+codValueType = lens _codValueType (\s a -> s { _codValueType = a })++instance FromXML ConfigurationOptionDescription where+    parseXML x = ConfigurationOptionDescription+        <$> x .@? "ChangeSeverity"+        <*> x .@? "DefaultValue"+        <*> x .@? "MaxLength"+        <*> x .@? "MaxValue"+        <*> x .@? "MinValue"+        <*> x .@? "Name"+        <*> x .@? "Namespace"+        <*> x .@? "Regex"+        <*> x .@? "UserDefined"+        <*> x .@  "ValueOptions"+        <*> x .@? "ValueType"++instance ToQuery ConfigurationOptionDescription where+    toQuery ConfigurationOptionDescription{..} = mconcat+        [ "ChangeSeverity" =? _codChangeSeverity+        , "DefaultValue"   =? _codDefaultValue+        , "MaxLength"      =? _codMaxLength+        , "MaxValue"       =? _codMaxValue+        , "MinValue"       =? _codMinValue+        , "Name"           =? _codName+        , "Namespace"      =? _codNamespace+        , "Regex"          =? _codRegex+        , "UserDefined"    =? _codUserDefined+        , "ValueOptions"   =? _codValueOptions+        , "ValueType"      =? _codValueType+        ]++data SourceConfiguration = SourceConfiguration+    { _scApplicationName :: Maybe Text+    , _scTemplateName    :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'SourceConfiguration' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'scApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'scTemplateName' @::@ 'Maybe' 'Text'+--+sourceConfiguration :: SourceConfiguration+sourceConfiguration = SourceConfiguration+    { _scApplicationName = Nothing+    , _scTemplateName    = Nothing+    }++-- | The name of the application associated with the configuration.+scApplicationName :: Lens' SourceConfiguration (Maybe Text)+scApplicationName =+    lens _scApplicationName (\s a -> s { _scApplicationName = a })++-- | The name of the configuration template.+scTemplateName :: Lens' SourceConfiguration (Maybe Text)+scTemplateName = lens _scTemplateName (\s a -> s { _scTemplateName = a })++instance FromXML SourceConfiguration where+    parseXML x = SourceConfiguration+        <$> x .@? "ApplicationName"+        <*> x .@? "TemplateName"++instance ToQuery SourceConfiguration where+    toQuery SourceConfiguration{..} = mconcat+        [ "ApplicationName" =? _scApplicationName+        , "TemplateName"    =? _scTemplateName+        ]++data EnvironmentInfoDescription = EnvironmentInfoDescription+    { _eidEc2InstanceId   :: Maybe Text+    , _eidInfoType        :: Maybe Text+    , _eidMessage         :: Maybe Text+    , _eidSampleTimestamp :: Maybe RFC822+    } deriving (Eq, Ord, Show)++-- | 'EnvironmentInfoDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'eidEc2InstanceId' @::@ 'Maybe' 'Text'+--+-- * 'eidInfoType' @::@ 'Maybe' 'Text'+--+-- * 'eidMessage' @::@ 'Maybe' 'Text'+--+-- * 'eidSampleTimestamp' @::@ 'Maybe' 'UTCTime'+--+environmentInfoDescription :: EnvironmentInfoDescription+environmentInfoDescription = EnvironmentInfoDescription+    { _eidInfoType        = Nothing+    , _eidEc2InstanceId   = Nothing+    , _eidSampleTimestamp = Nothing+    , _eidMessage         = Nothing+    }++-- | The Amazon EC2 Instance ID for this information.+eidEc2InstanceId :: Lens' EnvironmentInfoDescription (Maybe Text)+eidEc2InstanceId = lens _eidEc2InstanceId (\s a -> s { _eidEc2InstanceId = a })++-- | The type of information retrieved.+eidInfoType :: Lens' EnvironmentInfoDescription (Maybe Text)+eidInfoType = lens _eidInfoType (\s a -> s { _eidInfoType = a })++-- | The retrieved information.+eidMessage :: Lens' EnvironmentInfoDescription (Maybe Text)+eidMessage = lens _eidMessage (\s a -> s { _eidMessage = a })++-- | The time stamp when this information was retrieved.+eidSampleTimestamp :: Lens' EnvironmentInfoDescription (Maybe UTCTime)+eidSampleTimestamp =+    lens _eidSampleTimestamp (\s a -> s { _eidSampleTimestamp = a })+        . mapping _Time++instance FromXML EnvironmentInfoDescription where+    parseXML x = EnvironmentInfoDescription+        <$> x .@? "Ec2InstanceId"+        <*> x .@? "InfoType"+        <*> x .@? "Message"+        <*> x .@? "SampleTimestamp"++instance ToQuery EnvironmentInfoDescription where+    toQuery EnvironmentInfoDescription{..} = mconcat+        [ "Ec2InstanceId"   =? _eidEc2InstanceId+        , "InfoType"        =? _eidInfoType+        , "Message"         =? _eidMessage+        , "SampleTimestamp" =? _eidSampleTimestamp+        ]++data S3Location = S3Location+    { _slS3Bucket :: Maybe Text+    , _slS3Key    :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'S3Location' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'slS3Bucket' @::@ 'Maybe' 'Text'+--+-- * 'slS3Key' @::@ 'Maybe' 'Text'+--+s3Location :: S3Location+s3Location = S3Location+    { _slS3Bucket = Nothing+    , _slS3Key    = Nothing+    }++-- | The Amazon S3 bucket where the data is located.+slS3Bucket :: Lens' S3Location (Maybe Text)+slS3Bucket = lens _slS3Bucket (\s a -> s { _slS3Bucket = a })++-- | The Amazon S3 key where the data is located.+slS3Key :: Lens' S3Location (Maybe Text)+slS3Key = lens _slS3Key (\s a -> s { _slS3Key = a })++instance FromXML S3Location where+    parseXML x = S3Location+        <$> x .@? "S3Bucket"+        <*> x .@? "S3Key"++instance ToQuery S3Location where+    toQuery S3Location{..} = mconcat+        [ "S3Bucket" =? _slS3Bucket+        , "S3Key"    =? _slS3Key+        ]++data ValidationMessage = ValidationMessage+    { _vmMessage    :: Maybe Text+    , _vmNamespace  :: Maybe Text+    , _vmOptionName :: Maybe Text+    , _vmSeverity   :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'ValidationMessage' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'vmMessage' @::@ 'Maybe' 'Text'+--+-- * 'vmNamespace' @::@ 'Maybe' 'Text'+--+-- * 'vmOptionName' @::@ 'Maybe' 'Text'+--+-- * 'vmSeverity' @::@ 'Maybe' 'Text'+--+validationMessage :: ValidationMessage+validationMessage = ValidationMessage+    { _vmMessage    = Nothing+    , _vmSeverity   = Nothing+    , _vmNamespace  = Nothing+    , _vmOptionName = Nothing+    }++-- | A message describing the error or warning.+vmMessage :: Lens' ValidationMessage (Maybe Text)+vmMessage = lens _vmMessage (\s a -> s { _vmMessage = a })++-- | +vmNamespace :: Lens' ValidationMessage (Maybe Text)+vmNamespace = lens _vmNamespace (\s a -> s { _vmNamespace = a })++-- | +vmOptionName :: Lens' ValidationMessage (Maybe Text)+vmOptionName = lens _vmOptionName (\s a -> s { _vmOptionName = a })++-- | An indication of the severity of this message: error: This message+-- indicates that this is not a valid setting for an option. warning: This+-- message is providing information you should take into account. error:+-- This message indicates that this is not a valid setting for an option.+-- warning: This message is providing information you should take into+-- account.+vmSeverity :: Lens' ValidationMessage (Maybe Text)+vmSeverity = lens _vmSeverity (\s a -> s { _vmSeverity = a })++instance FromXML ValidationMessage where+    parseXML x = ValidationMessage+        <$> x .@? "Message"+        <*> x .@? "Namespace"+        <*> x .@? "OptionName"+        <*> x .@? "Severity"++instance ToQuery ValidationMessage where+    toQuery ValidationMessage{..} = mconcat+        [ "Message"    =? _vmMessage+        , "Namespace"  =? _vmNamespace+        , "OptionName" =? _vmOptionName+        , "Severity"   =? _vmSeverity+        ]++data ValidationSeverity+    = VSError   -- ^ error+    | VSWarning -- ^ warning+      deriving (Eq, Ord, Show, Generic, Enum)++instance Hashable ValidationSeverity++instance FromText ValidationSeverity where+    parser = match "error"   VSError+         <|> match "warning" VSWarning++instance ToText ValidationSeverity where+    toText = \case+        VSError   -> "error"+        VSWarning -> "warning"++instance FromXML ValidationSeverity where+    parseXML = parseXMLText "ValidationSeverity"++instance ToQuery ValidationSeverity where+    toQuery = toQuery . toText++newtype Trigger = Trigger+    { _tName :: Maybe Text+    } deriving (Eq, Ord, Show, Monoid)++-- | 'Trigger' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'tName' @::@ 'Maybe' 'Text'+--+trigger :: Trigger+trigger = Trigger+    { _tName = Nothing+    }++-- | The name of the trigger.+tName :: Lens' Trigger (Maybe Text)+tName = lens _tName (\s a -> s { _tName = a })++instance FromXML Trigger where+    parseXML x = Trigger+        <$> x .@? "Name"++instance ToQuery Trigger where+    toQuery Trigger{..} = mconcat+        [ "Name" =? _tName+        ]++data EnvironmentInfoType+    = Tail' -- ^ tail+      deriving (Eq, Ord, Show, Generic, Enum)++instance Hashable EnvironmentInfoType++instance FromText EnvironmentInfoType where+    parser = match "tail" Tail'++instance ToText EnvironmentInfoType where+    toText Tail' = "tail"++instance FromXML EnvironmentInfoType where+    parseXML = parseXMLText "EnvironmentInfoType"++instance ToQuery EnvironmentInfoType where+    toQuery = toQuery . toText++data EnvironmentDescription = EnvironmentDescription+    { _ed1ApplicationName   :: Maybe Text+    , _ed1CNAME             :: Maybe Text+    , _ed1DateCreated       :: Maybe RFC822+    , _ed1DateUpdated       :: Maybe RFC822+    , _ed1Description       :: Maybe Text+    , _ed1EndpointURL       :: Maybe Text+    , _ed1EnvironmentId     :: Maybe Text+    , _ed1EnvironmentName   :: Maybe Text+    , _ed1Health            :: Maybe Text+    , _ed1Resources         :: Maybe EnvironmentResourcesDescription+    , _ed1SolutionStackName :: Maybe Text+    , _ed1Status            :: Maybe Text+    , _ed1TemplateName      :: Maybe Text+    , _ed1Tier              :: Maybe EnvironmentTier+    , _ed1VersionLabel      :: Maybe Text+    } deriving (Eq, Show)++-- | 'EnvironmentDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'ed1ApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'ed1CNAME' @::@ 'Maybe' 'Text'+--+-- * 'ed1DateCreated' @::@ 'Maybe' 'UTCTime'+--+-- * 'ed1DateUpdated' @::@ 'Maybe' 'UTCTime'+--+-- * 'ed1Description' @::@ 'Maybe' 'Text'+--+-- * 'ed1EndpointURL' @::@ 'Maybe' 'Text'+--+-- * 'ed1EnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'ed1EnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'ed1Health' @::@ 'Maybe' 'Text'+--+-- * 'ed1Resources' @::@ 'Maybe' 'EnvironmentResourcesDescription'+--+-- * 'ed1SolutionStackName' @::@ 'Maybe' 'Text'+--+-- * 'ed1Status' @::@ 'Maybe' 'Text'+--+-- * 'ed1TemplateName' @::@ 'Maybe' 'Text'+--+-- * 'ed1Tier' @::@ 'Maybe' 'EnvironmentTier'+--+-- * 'ed1VersionLabel' @::@ 'Maybe' 'Text'+--+environmentDescription :: EnvironmentDescription+environmentDescription = EnvironmentDescription+    { _ed1EnvironmentName   = Nothing+    , _ed1EnvironmentId     = Nothing+    , _ed1ApplicationName   = Nothing+    , _ed1VersionLabel      = Nothing+    , _ed1SolutionStackName = Nothing+    , _ed1TemplateName      = Nothing+    , _ed1Description       = Nothing+    , _ed1EndpointURL       = Nothing+    , _ed1CNAME             = Nothing+    , _ed1DateCreated       = Nothing+    , _ed1DateUpdated       = Nothing+    , _ed1Status            = Nothing+    , _ed1Health            = Nothing+    , _ed1Resources         = Nothing+    , _ed1Tier              = Nothing+    }++-- | The name of the application associated with this environment.+ed1ApplicationName :: Lens' EnvironmentDescription (Maybe Text)+ed1ApplicationName =+    lens _ed1ApplicationName (\s a -> s { _ed1ApplicationName = a })++-- | The URL to the CNAME for this environment.+ed1CNAME :: Lens' EnvironmentDescription (Maybe Text)+ed1CNAME = lens _ed1CNAME (\s a -> s { _ed1CNAME = a })++-- | The creation date for this environment.+ed1DateCreated :: Lens' EnvironmentDescription (Maybe UTCTime)+ed1DateCreated = lens _ed1DateCreated (\s a -> s { _ed1DateCreated = a }) . mapping _Time++-- | The last modified date for this environment.+ed1DateUpdated :: Lens' EnvironmentDescription (Maybe UTCTime)+ed1DateUpdated = lens _ed1DateUpdated (\s a -> s { _ed1DateUpdated = a }) . mapping _Time++-- | Describes this environment.+ed1Description :: Lens' EnvironmentDescription (Maybe Text)+ed1Description = lens _ed1Description (\s a -> s { _ed1Description = a })++-- | For load-balanced, autoscaling environments, the URL to the LoadBalancer.+-- For single-instance environments, the IP address of the instance.+ed1EndpointURL :: Lens' EnvironmentDescription (Maybe Text)+ed1EndpointURL = lens _ed1EndpointURL (\s a -> s { _ed1EndpointURL = a })++-- | The ID of this environment.+ed1EnvironmentId :: Lens' EnvironmentDescription (Maybe Text)+ed1EnvironmentId = lens _ed1EnvironmentId (\s a -> s { _ed1EnvironmentId = a })++-- | The name of this environment.+ed1EnvironmentName :: Lens' EnvironmentDescription (Maybe Text)+ed1EnvironmentName =+    lens _ed1EnvironmentName (\s a -> s { _ed1EnvironmentName = a })++-- | Describes the health status of the environment. AWS Elastic Beanstalk+-- indicates the failure levels for a running environment: Red : Indicates+-- the environment is not working. Yellow: Indicates that something is+-- wrong, the application might not be available, but the instances appear+-- running. Green: Indicates the environment is healthy and fully+-- functional. Red: Indicates the environment is not responsive. Occurs when+-- three or more consecutive failures occur for an environment. Yellow:+-- Indicates that something is wrong. Occurs when two consecutive failures+-- occur for an environment. Green: Indicates the environment is healthy and+-- fully functional. Grey: Default health for a new environment. The+-- environment is not fully launched and health checks have not started or+-- health checks are suspended during an UpdateEnvironment or+-- RestartEnvironement request. Default: Grey.+ed1Health :: Lens' EnvironmentDescription (Maybe Text)+ed1Health = lens _ed1Health (\s a -> s { _ed1Health = a })++-- | The description of the AWS resources used by this environment.+ed1Resources :: Lens' EnvironmentDescription (Maybe EnvironmentResourcesDescription)+ed1Resources = lens _ed1Resources (\s a -> s { _ed1Resources = a })++-- | The name of the SolutionStack deployed with this environment.+ed1SolutionStackName :: Lens' EnvironmentDescription (Maybe Text)+ed1SolutionStackName =+    lens _ed1SolutionStackName (\s a -> s { _ed1SolutionStackName = a })++-- | The current operational status of the environment: Launching: Environment+-- is in the process of initial deployment. Updating: Environment is in the+-- process of updating its configuration settings or application version.+-- Ready: Environment is available to have an action performed on it, such+-- as update or terminate. Terminating: Environment is in the shut-down+-- process. Terminated: Environment is not running.+ed1Status :: Lens' EnvironmentDescription (Maybe Text)+ed1Status = lens _ed1Status (\s a -> s { _ed1Status = a })++-- | The name of the configuration template used to originally launch this+-- environment.+ed1TemplateName :: Lens' EnvironmentDescription (Maybe Text)+ed1TemplateName = lens _ed1TemplateName (\s a -> s { _ed1TemplateName = a })++-- | Describes the current tier of this environment.+ed1Tier :: Lens' EnvironmentDescription (Maybe EnvironmentTier)+ed1Tier = lens _ed1Tier (\s a -> s { _ed1Tier = a })++-- | The application version deployed in this environment.+ed1VersionLabel :: Lens' EnvironmentDescription (Maybe Text)+ed1VersionLabel = lens _ed1VersionLabel (\s a -> s { _ed1VersionLabel = a })++instance FromXML EnvironmentDescription where+    parseXML x = EnvironmentDescription+        <$> x .@? "ApplicationName"+        <*> x .@? "CNAME"+        <*> x .@? "DateCreated"+        <*> x .@? "DateUpdated"+        <*> x .@? "Description"+        <*> x .@? "EndpointURL"+        <*> x .@? "EnvironmentId"+        <*> x .@? "EnvironmentName"+        <*> x .@? "Health"+        <*> x .@? "Resources"+        <*> x .@? "SolutionStackName"+        <*> x .@? "Status"+        <*> x .@? "TemplateName"+        <*> x .@? "Tier"+        <*> x .@? "VersionLabel"++instance ToQuery EnvironmentDescription where+    toQuery EnvironmentDescription{..} = mconcat+        [ "ApplicationName"   =? _ed1ApplicationName+        , "CNAME"             =? _ed1CNAME+        , "DateCreated"       =? _ed1DateCreated+        , "DateUpdated"       =? _ed1DateUpdated+        , "Description"       =? _ed1Description+        , "EndpointURL"       =? _ed1EndpointURL+        , "EnvironmentId"     =? _ed1EnvironmentId+        , "EnvironmentName"   =? _ed1EnvironmentName+        , "Health"            =? _ed1Health+        , "Resources"         =? _ed1Resources+        , "SolutionStackName" =? _ed1SolutionStackName+        , "Status"            =? _ed1Status+        , "TemplateName"      =? _ed1TemplateName+        , "Tier"              =? _ed1Tier+        , "VersionLabel"      =? _ed1VersionLabel+        ]++data Listener = Listener+    { _lPort     :: Maybe Int+    , _lProtocol :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'Listener' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'lPort' @::@ 'Maybe' 'Int'+--+-- * 'lProtocol' @::@ 'Maybe' 'Text'+--+listener :: Listener+listener = Listener+    { _lProtocol = Nothing+    , _lPort     = Nothing+    }++-- | The port that is used by the Listener.+lPort :: Lens' Listener (Maybe Int)+lPort = lens _lPort (\s a -> s { _lPort = a })++-- | The protocol that is used by the Listener.+lProtocol :: Lens' Listener (Maybe Text)+lProtocol = lens _lProtocol (\s a -> s { _lProtocol = a })++instance FromXML Listener where+    parseXML x = Listener+        <$> x .@? "Port"+        <*> x .@? "Protocol"++instance ToQuery Listener where+    toQuery Listener{..} = mconcat+        [ "Port"     =? _lPort+        , "Protocol" =? _lProtocol+        ]++data EnvironmentHealth+    = Green  -- ^ Green+    | Grey   -- ^ Grey+    | Red    -- ^ Red+    | Yellow -- ^ Yellow+      deriving (Eq, Ord, Show, Generic, Enum)++instance Hashable EnvironmentHealth++instance FromText EnvironmentHealth where+    parser = match "Green"  Green+         <|> match "Grey"   Grey+         <|> match "Red"    Red+         <|> match "Yellow" Yellow++instance ToText EnvironmentHealth where+    toText = \case+        Green  -> "Green"+        Grey   -> "Grey"+        Red    -> "Red"+        Yellow -> "Yellow"++instance FromXML EnvironmentHealth where+    parseXML = parseXMLText "EnvironmentHealth"++instance ToQuery EnvironmentHealth where+    toQuery = toQuery . toText++newtype Instance = Instance+    { _iId :: Maybe Text+    } deriving (Eq, Ord, Show, Monoid)++-- | 'Instance' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'iId' @::@ 'Maybe' 'Text'+--+instance' :: Instance+instance' = Instance+    { _iId = Nothing+    }++-- | The ID of the Amazon EC2 instance.+iId :: Lens' Instance (Maybe Text)+iId = lens _iId (\s a -> s { _iId = a })++instance FromXML Instance where+    parseXML x = Instance+        <$> x .@? "Id"++instance ToQuery Instance where+    toQuery Instance{..} = mconcat+        [ "Id" =? _iId+        ]++data SolutionStackDescription = SolutionStackDescription+    { _ssdPermittedFileTypes :: List "PermittedFileTypes" Text+    , _ssdSolutionStackName  :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'SolutionStackDescription' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'ssdPermittedFileTypes' @::@ ['Text']+--+-- * 'ssdSolutionStackName' @::@ 'Maybe' 'Text'+--+solutionStackDescription :: SolutionStackDescription+solutionStackDescription = SolutionStackDescription+    { _ssdSolutionStackName  = Nothing+    , _ssdPermittedFileTypes = mempty+    }++-- | The permitted file types allowed for a solution stack.+ssdPermittedFileTypes :: Lens' SolutionStackDescription [Text]+ssdPermittedFileTypes =+    lens _ssdPermittedFileTypes (\s a -> s { _ssdPermittedFileTypes = a })+        . _List++-- | The name of the solution stack.+ssdSolutionStackName :: Lens' SolutionStackDescription (Maybe Text)+ssdSolutionStackName =+    lens _ssdSolutionStackName (\s a -> s { _ssdSolutionStackName = a })++instance FromXML SolutionStackDescription where+    parseXML x = SolutionStackDescription+        <$> x .@  "PermittedFileTypes"+        <*> x .@? "SolutionStackName"++instance ToQuery SolutionStackDescription where+    toQuery SolutionStackDescription{..} = mconcat+        [ "PermittedFileTypes" =? _ssdPermittedFileTypes+        , "SolutionStackName"  =? _ssdSolutionStackName+        ]
+ gen/Network/AWS/ElasticBeanstalk/UpdateApplication.hs view
@@ -0,0 +1,119 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.UpdateApplication+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Updates the specified application to have the specified properties.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_UpdateApplication.html>+module Network.AWS.ElasticBeanstalk.UpdateApplication+    (+    -- * Request+      UpdateApplication+    -- ** Request constructor+    , updateApplication+    -- ** Request lenses+    , uaApplicationName+    , uaDescription++    -- * Response+    , UpdateApplicationResponse+    -- ** Response constructor+    , updateApplicationResponse+    -- ** Response lenses+    , uarApplication+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data UpdateApplication = UpdateApplication+    { _uaApplicationName :: Text+    , _uaDescription     :: Maybe Text+    } deriving (Eq, Ord, Show)++-- | 'UpdateApplication' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'uaApplicationName' @::@ 'Text'+--+-- * 'uaDescription' @::@ 'Maybe' 'Text'+--+updateApplication :: Text -- ^ 'uaApplicationName'+                  -> UpdateApplication+updateApplication p1 = UpdateApplication+    { _uaApplicationName = p1+    , _uaDescription     = Nothing+    }++-- | The name of the application to update. If no such application is found,+-- UpdateApplication returns an InvalidParameterValue error.+uaApplicationName :: Lens' UpdateApplication Text+uaApplicationName =+    lens _uaApplicationName (\s a -> s { _uaApplicationName = a })++-- | A new description for the application. Default: If not specified, AWS+-- Elastic Beanstalk does not update the description.+uaDescription :: Lens' UpdateApplication (Maybe Text)+uaDescription = lens _uaDescription (\s a -> s { _uaDescription = a })++newtype UpdateApplicationResponse = UpdateApplicationResponse+    { _uarApplication :: Maybe ApplicationDescription+    } deriving (Eq, Show)++-- | 'UpdateApplicationResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'uarApplication' @::@ 'Maybe' 'ApplicationDescription'+--+updateApplicationResponse :: UpdateApplicationResponse+updateApplicationResponse = UpdateApplicationResponse+    { _uarApplication = Nothing+    }++-- | The ApplicationDescription of the application.+uarApplication :: Lens' UpdateApplicationResponse (Maybe ApplicationDescription)+uarApplication = lens _uarApplication (\s a -> s { _uarApplication = a })++instance ToPath UpdateApplication where+    toPath = const "/"++instance ToQuery UpdateApplication where+    toQuery UpdateApplication{..} = mconcat+        [ "ApplicationName" =? _uaApplicationName+        , "Description"     =? _uaDescription+        ]++instance ToHeaders UpdateApplication++instance AWSRequest UpdateApplication where+    type Sv UpdateApplication = ElasticBeanstalk+    type Rs UpdateApplication = UpdateApplicationResponse++    request  = post "UpdateApplication"+    response = xmlResponse++instance FromXML UpdateApplicationResponse where+    parseXML = withElement "UpdateApplicationResult" $ \x -> UpdateApplicationResponse+        <$> x .@? "Application"
+ gen/Network/AWS/ElasticBeanstalk/UpdateApplicationVersion.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.UpdateApplicationVersion+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Updates the specified application version to have the specified properties.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_UpdateApplicationVersion.html>+module Network.AWS.ElasticBeanstalk.UpdateApplicationVersion+    (+    -- * Request+      UpdateApplicationVersion+    -- ** Request constructor+    , updateApplicationVersion+    -- ** Request lenses+    , uavApplicationName+    , uavDescription+    , uavVersionLabel++    -- * Response+    , UpdateApplicationVersionResponse+    -- ** Response constructor+    , updateApplicationVersionResponse+    -- ** Response lenses+    , uavrApplicationVersion+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data UpdateApplicationVersion = UpdateApplicationVersion+    { _uavApplicationName :: Text+    , _uavDescription     :: Maybe Text+    , _uavVersionLabel    :: Text+    } deriving (Eq, Ord, Show)++-- | 'UpdateApplicationVersion' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'uavApplicationName' @::@ 'Text'+--+-- * 'uavDescription' @::@ 'Maybe' 'Text'+--+-- * 'uavVersionLabel' @::@ 'Text'+--+updateApplicationVersion :: Text -- ^ 'uavApplicationName'+                         -> Text -- ^ 'uavVersionLabel'+                         -> UpdateApplicationVersion+updateApplicationVersion p1 p2 = UpdateApplicationVersion+    { _uavApplicationName = p1+    , _uavVersionLabel    = p2+    , _uavDescription     = Nothing+    }++-- | The name of the application associated with this version. If no+-- application is found with this name, UpdateApplication returns an+-- InvalidParameterValue error.+uavApplicationName :: Lens' UpdateApplicationVersion Text+uavApplicationName =+    lens _uavApplicationName (\s a -> s { _uavApplicationName = a })++-- | A new description for this release.+uavDescription :: Lens' UpdateApplicationVersion (Maybe Text)+uavDescription = lens _uavDescription (\s a -> s { _uavDescription = a })++-- | The name of the version to update. If no application version is found+-- with this label, UpdateApplication returns an InvalidParameterValue+-- error.+uavVersionLabel :: Lens' UpdateApplicationVersion Text+uavVersionLabel = lens _uavVersionLabel (\s a -> s { _uavVersionLabel = a })++newtype UpdateApplicationVersionResponse = UpdateApplicationVersionResponse+    { _uavrApplicationVersion :: Maybe ApplicationVersionDescription+    } deriving (Eq, Show)++-- | 'UpdateApplicationVersionResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'uavrApplicationVersion' @::@ 'Maybe' 'ApplicationVersionDescription'+--+updateApplicationVersionResponse :: UpdateApplicationVersionResponse+updateApplicationVersionResponse = UpdateApplicationVersionResponse+    { _uavrApplicationVersion = Nothing+    }++-- | The ApplicationVersionDescription of the application version.+uavrApplicationVersion :: Lens' UpdateApplicationVersionResponse (Maybe ApplicationVersionDescription)+uavrApplicationVersion =+    lens _uavrApplicationVersion (\s a -> s { _uavrApplicationVersion = a })++instance ToPath UpdateApplicationVersion where+    toPath = const "/"++instance ToQuery UpdateApplicationVersion where+    toQuery UpdateApplicationVersion{..} = mconcat+        [ "ApplicationName" =? _uavApplicationName+        , "Description"     =? _uavDescription+        , "VersionLabel"    =? _uavVersionLabel+        ]++instance ToHeaders UpdateApplicationVersion++instance AWSRequest UpdateApplicationVersion where+    type Sv UpdateApplicationVersion = ElasticBeanstalk+    type Rs UpdateApplicationVersion = UpdateApplicationVersionResponse++    request  = post "UpdateApplicationVersion"+    response = xmlResponse++instance FromXML UpdateApplicationVersionResponse where+    parseXML = withElement "UpdateApplicationVersionResult" $ \x -> UpdateApplicationVersionResponse+        <$> x .@? "ApplicationVersion"
+ gen/Network/AWS/ElasticBeanstalk/UpdateConfigurationTemplate.hs view
@@ -0,0 +1,261 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Updates the specified configuration template to have the specified+-- properties or configuration option values. Related Topics+-- DescribeConfigurationOptions.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_UpdateConfigurationTemplate.html>+module Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate+    (+    -- * Request+      UpdateConfigurationTemplate+    -- ** Request constructor+    , updateConfigurationTemplate+    -- ** Request lenses+    , uctApplicationName+    , uctDescription+    , uctOptionSettings+    , uctOptionsToRemove+    , uctTemplateName++    -- * Response+    , UpdateConfigurationTemplateResponse+    -- ** Response constructor+    , updateConfigurationTemplateResponse+    -- ** Response lenses+    , uctrApplicationName+    , uctrDateCreated+    , uctrDateUpdated+    , uctrDeploymentStatus+    , uctrDescription+    , uctrEnvironmentName+    , uctrOptionSettings+    , uctrSolutionStackName+    , uctrTemplateName+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data UpdateConfigurationTemplate = UpdateConfigurationTemplate+    { _uctApplicationName :: Text+    , _uctDescription     :: Maybe Text+    , _uctOptionSettings  :: List "OptionSettings" ConfigurationOptionSetting+    , _uctOptionsToRemove :: List "OptionsToRemove" OptionSpecification+    , _uctTemplateName    :: Text+    } deriving (Eq, Show)++-- | 'UpdateConfigurationTemplate' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'uctApplicationName' @::@ 'Text'+--+-- * 'uctDescription' @::@ 'Maybe' 'Text'+--+-- * 'uctOptionSettings' @::@ ['ConfigurationOptionSetting']+--+-- * 'uctOptionsToRemove' @::@ ['OptionSpecification']+--+-- * 'uctTemplateName' @::@ 'Text'+--+updateConfigurationTemplate :: Text -- ^ 'uctApplicationName'+                            -> Text -- ^ 'uctTemplateName'+                            -> UpdateConfigurationTemplate+updateConfigurationTemplate p1 p2 = UpdateConfigurationTemplate+    { _uctApplicationName = p1+    , _uctTemplateName    = p2+    , _uctDescription     = Nothing+    , _uctOptionSettings  = mempty+    , _uctOptionsToRemove = mempty+    }++-- | The name of the application associated with the configuration template to+-- update. If no application is found with this name,+-- UpdateConfigurationTemplate returns an InvalidParameterValue error.+uctApplicationName :: Lens' UpdateConfigurationTemplate Text+uctApplicationName =+    lens _uctApplicationName (\s a -> s { _uctApplicationName = a })++-- | A new description for the configuration.+uctDescription :: Lens' UpdateConfigurationTemplate (Maybe Text)+uctDescription = lens _uctDescription (\s a -> s { _uctDescription = a })++-- | A list of configuration option settings to update with the new specified+-- option value.+uctOptionSettings :: Lens' UpdateConfigurationTemplate [ConfigurationOptionSetting]+uctOptionSettings =+    lens _uctOptionSettings (\s a -> s { _uctOptionSettings = a })+        . _List++-- | A list of configuration options to remove from the configuration set.+-- Constraint: You can remove only UserDefined configuration options.+uctOptionsToRemove :: Lens' UpdateConfigurationTemplate [OptionSpecification]+uctOptionsToRemove =+    lens _uctOptionsToRemove (\s a -> s { _uctOptionsToRemove = a })+        . _List++-- | The name of the configuration template to update. If no configuration+-- template is found with this name, UpdateConfigurationTemplate returns an+-- InvalidParameterValue error.+uctTemplateName :: Lens' UpdateConfigurationTemplate Text+uctTemplateName = lens _uctTemplateName (\s a -> s { _uctTemplateName = a })++data UpdateConfigurationTemplateResponse = UpdateConfigurationTemplateResponse+    { _uctrApplicationName   :: Maybe Text+    , _uctrDateCreated       :: Maybe RFC822+    , _uctrDateUpdated       :: Maybe RFC822+    , _uctrDeploymentStatus  :: Maybe Text+    , _uctrDescription       :: Maybe Text+    , _uctrEnvironmentName   :: Maybe Text+    , _uctrOptionSettings    :: List "OptionSettings" ConfigurationOptionSetting+    , _uctrSolutionStackName :: Maybe Text+    , _uctrTemplateName      :: Maybe Text+    } deriving (Eq, Show)++-- | 'UpdateConfigurationTemplateResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'uctrApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'uctrDateCreated' @::@ 'Maybe' 'UTCTime'+--+-- * 'uctrDateUpdated' @::@ 'Maybe' 'UTCTime'+--+-- * 'uctrDeploymentStatus' @::@ 'Maybe' 'Text'+--+-- * 'uctrDescription' @::@ 'Maybe' 'Text'+--+-- * 'uctrEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'uctrOptionSettings' @::@ ['ConfigurationOptionSetting']+--+-- * 'uctrSolutionStackName' @::@ 'Maybe' 'Text'+--+-- * 'uctrTemplateName' @::@ 'Maybe' 'Text'+--+updateConfigurationTemplateResponse :: UpdateConfigurationTemplateResponse+updateConfigurationTemplateResponse = UpdateConfigurationTemplateResponse+    { _uctrSolutionStackName = Nothing+    , _uctrApplicationName   = Nothing+    , _uctrTemplateName      = Nothing+    , _uctrDescription       = Nothing+    , _uctrEnvironmentName   = Nothing+    , _uctrDeploymentStatus  = Nothing+    , _uctrDateCreated       = Nothing+    , _uctrDateUpdated       = Nothing+    , _uctrOptionSettings    = mempty+    }++-- | The name of the application associated with this configuration set.+uctrApplicationName :: Lens' UpdateConfigurationTemplateResponse (Maybe Text)+uctrApplicationName =+    lens _uctrApplicationName (\s a -> s { _uctrApplicationName = a })++-- | The date (in UTC time) when this configuration set was created.+uctrDateCreated :: Lens' UpdateConfigurationTemplateResponse (Maybe UTCTime)+uctrDateCreated = lens _uctrDateCreated (\s a -> s { _uctrDateCreated = a }) . mapping _Time++-- | The date (in UTC time) when this configuration set was last modified.+uctrDateUpdated :: Lens' UpdateConfigurationTemplateResponse (Maybe UTCTime)+uctrDateUpdated = lens _uctrDateUpdated (\s a -> s { _uctrDateUpdated = a }) . mapping _Time++-- | If this configuration set is associated with an environment, the+-- DeploymentStatus parameter indicates the deployment status of this+-- configuration set: null: This configuration is not associated with a+-- running environment. pending: This is a draft configuration that is not+-- deployed to the associated environment but is in the process of+-- deploying. deployed: This is the configuration that is currently deployed+-- to the associated running environment. failed: This is a draft+-- configuration, that failed to successfully deploy. null: This+-- configuration is not associated with a running environment. pending: This+-- is a draft configuration that is not deployed to the associated+-- environment but is in the process of deploying. deployed: This is the+-- configuration that is currently deployed to the associated running+-- environment. failed: This is a draft configuration that failed to+-- successfully deploy.+uctrDeploymentStatus :: Lens' UpdateConfigurationTemplateResponse (Maybe Text)+uctrDeploymentStatus =+    lens _uctrDeploymentStatus (\s a -> s { _uctrDeploymentStatus = a })++-- | Describes this configuration set.+uctrDescription :: Lens' UpdateConfigurationTemplateResponse (Maybe Text)+uctrDescription = lens _uctrDescription (\s a -> s { _uctrDescription = a })++-- | If not null, the name of the environment for this configuration set.+uctrEnvironmentName :: Lens' UpdateConfigurationTemplateResponse (Maybe Text)+uctrEnvironmentName =+    lens _uctrEnvironmentName (\s a -> s { _uctrEnvironmentName = a })++-- | A list of the configuration options and their values in this+-- configuration set.+uctrOptionSettings :: Lens' UpdateConfigurationTemplateResponse [ConfigurationOptionSetting]+uctrOptionSettings =+    lens _uctrOptionSettings (\s a -> s { _uctrOptionSettings = a })+        . _List++-- | The name of the solution stack this configuration set uses.+uctrSolutionStackName :: Lens' UpdateConfigurationTemplateResponse (Maybe Text)+uctrSolutionStackName =+    lens _uctrSolutionStackName (\s a -> s { _uctrSolutionStackName = a })++-- | If not null, the name of the configuration template for this+-- configuration set.+uctrTemplateName :: Lens' UpdateConfigurationTemplateResponse (Maybe Text)+uctrTemplateName = lens _uctrTemplateName (\s a -> s { _uctrTemplateName = a })++instance ToPath UpdateConfigurationTemplate where+    toPath = const "/"++instance ToQuery UpdateConfigurationTemplate where+    toQuery UpdateConfigurationTemplate{..} = mconcat+        [ "ApplicationName" =? _uctApplicationName+        , "Description"     =? _uctDescription+        , "OptionSettings"  =? _uctOptionSettings+        , "OptionsToRemove" =? _uctOptionsToRemove+        , "TemplateName"    =? _uctTemplateName+        ]++instance ToHeaders UpdateConfigurationTemplate++instance AWSRequest UpdateConfigurationTemplate where+    type Sv UpdateConfigurationTemplate = ElasticBeanstalk+    type Rs UpdateConfigurationTemplate = UpdateConfigurationTemplateResponse++    request  = post "UpdateConfigurationTemplate"+    response = xmlResponse++instance FromXML UpdateConfigurationTemplateResponse where+    parseXML = withElement "UpdateConfigurationTemplateResult" $ \x -> UpdateConfigurationTemplateResponse+        <$> x .@? "ApplicationName"+        <*> x .@? "DateCreated"+        <*> x .@? "DateUpdated"+        <*> x .@? "DeploymentStatus"+        <*> x .@? "Description"+        <*> x .@? "EnvironmentName"+        <*> x .@  "OptionSettings"+        <*> x .@? "SolutionStackName"+        <*> x .@? "TemplateName"
+ gen/Network/AWS/ElasticBeanstalk/UpdateEnvironment.hs view
@@ -0,0 +1,368 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.UpdateEnvironment+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Updates the environment description, deploys a new application version,+-- updates the configuration settings to an entirely new configuration+-- template, or updates select configuration option values in the running+-- environment. Attempting to update both the release and configuration is not+-- allowed and AWS Elastic Beanstalk returns an InvalidParameterCombination+-- error. When updating the configuration settings to a new template or+-- individual settings, a draft configuration is created and+-- DescribeConfigurationSettings for this environment returns two setting+-- descriptions with different DeploymentStatus values.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_UpdateEnvironment.html>+module Network.AWS.ElasticBeanstalk.UpdateEnvironment+    (+    -- * Request+      UpdateEnvironment+    -- ** Request constructor+    , updateEnvironment+    -- ** Request lenses+    , ueDescription+    , ueEnvironmentId+    , ueEnvironmentName+    , ueOptionSettings+    , ueOptionsToRemove+    , ueTemplateName+    , ueTier+    , ueVersionLabel++    -- * Response+    , UpdateEnvironmentResponse+    -- ** Response constructor+    , updateEnvironmentResponse+    -- ** Response lenses+    , uerApplicationName+    , uerCNAME+    , uerDateCreated+    , uerDateUpdated+    , uerDescription+    , uerEndpointURL+    , uerEnvironmentId+    , uerEnvironmentName+    , uerHealth+    , uerResources+    , uerSolutionStackName+    , uerStatus+    , uerTemplateName+    , uerTier+    , uerVersionLabel+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data UpdateEnvironment = UpdateEnvironment+    { _ueDescription     :: Maybe Text+    , _ueEnvironmentId   :: Maybe Text+    , _ueEnvironmentName :: Maybe Text+    , _ueOptionSettings  :: List "OptionSettings" ConfigurationOptionSetting+    , _ueOptionsToRemove :: List "OptionsToRemove" OptionSpecification+    , _ueTemplateName    :: Maybe Text+    , _ueTier            :: Maybe EnvironmentTier+    , _ueVersionLabel    :: Maybe Text+    } deriving (Eq, Show)++-- | 'UpdateEnvironment' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'ueDescription' @::@ 'Maybe' 'Text'+--+-- * 'ueEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'ueEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'ueOptionSettings' @::@ ['ConfigurationOptionSetting']+--+-- * 'ueOptionsToRemove' @::@ ['OptionSpecification']+--+-- * 'ueTemplateName' @::@ 'Maybe' 'Text'+--+-- * 'ueTier' @::@ 'Maybe' 'EnvironmentTier'+--+-- * 'ueVersionLabel' @::@ 'Maybe' 'Text'+--+updateEnvironment :: UpdateEnvironment+updateEnvironment = UpdateEnvironment+    { _ueEnvironmentId   = Nothing+    , _ueEnvironmentName = Nothing+    , _ueDescription     = Nothing+    , _ueTier            = Nothing+    , _ueVersionLabel    = Nothing+    , _ueTemplateName    = Nothing+    , _ueOptionSettings  = mempty+    , _ueOptionsToRemove = mempty+    }++-- | If this parameter is specified, AWS Elastic Beanstalk updates the+-- description of this environment.+ueDescription :: Lens' UpdateEnvironment (Maybe Text)+ueDescription = lens _ueDescription (\s a -> s { _ueDescription = a })++-- | The ID of the environment to update. If no environment with this ID+-- exists, AWS Elastic Beanstalk returns an InvalidParameterValue error.+-- Condition: You must specify either this or an EnvironmentName, or both.+-- If you do not specify either, AWS Elastic Beanstalk returns+-- MissingRequiredParameter error.+ueEnvironmentId :: Lens' UpdateEnvironment (Maybe Text)+ueEnvironmentId = lens _ueEnvironmentId (\s a -> s { _ueEnvironmentId = a })++-- | The name of the environment to update. If no environment with this name+-- exists, AWS Elastic Beanstalk returns an InvalidParameterValue error.+-- Condition: You must specify either this or an EnvironmentId, or both. If+-- you do not specify either, AWS Elastic Beanstalk returns+-- MissingRequiredParameter error.+ueEnvironmentName :: Lens' UpdateEnvironment (Maybe Text)+ueEnvironmentName =+    lens _ueEnvironmentName (\s a -> s { _ueEnvironmentName = a })++-- | If specified, AWS Elastic Beanstalk updates the configuration set+-- associated with the running environment and sets the specified+-- configuration options to the requested value.+ueOptionSettings :: Lens' UpdateEnvironment [ConfigurationOptionSetting]+ueOptionSettings = lens _ueOptionSettings (\s a -> s { _ueOptionSettings = a }) . _List++-- | A list of custom user-defined configuration options to remove from the+-- configuration set for this environment.+ueOptionsToRemove :: Lens' UpdateEnvironment [OptionSpecification]+ueOptionsToRemove =+    lens _ueOptionsToRemove (\s a -> s { _ueOptionsToRemove = a })+        . _List++-- | If this parameter is specified, AWS Elastic Beanstalk deploys this+-- configuration template to the environment. If no such configuration+-- template is found, AWS Elastic Beanstalk returns an InvalidParameterValue+-- error.+ueTemplateName :: Lens' UpdateEnvironment (Maybe Text)+ueTemplateName = lens _ueTemplateName (\s a -> s { _ueTemplateName = a })++-- | This specifies the tier to use to update the environment. Condition: You+-- can only update the tier version for an environment. If you change the+-- name of the type, AWS Elastic Beanstalk returns InvalidParameterValue+-- error.+ueTier :: Lens' UpdateEnvironment (Maybe EnvironmentTier)+ueTier = lens _ueTier (\s a -> s { _ueTier = a })++-- | If this parameter is specified, AWS Elastic Beanstalk deploys the named+-- application version to the environment. If no such application version is+-- found, returns an InvalidParameterValue error.+ueVersionLabel :: Lens' UpdateEnvironment (Maybe Text)+ueVersionLabel = lens _ueVersionLabel (\s a -> s { _ueVersionLabel = a })++data UpdateEnvironmentResponse = UpdateEnvironmentResponse+    { _uerApplicationName   :: Maybe Text+    , _uerCNAME             :: Maybe Text+    , _uerDateCreated       :: Maybe RFC822+    , _uerDateUpdated       :: Maybe RFC822+    , _uerDescription       :: Maybe Text+    , _uerEndpointURL       :: Maybe Text+    , _uerEnvironmentId     :: Maybe Text+    , _uerEnvironmentName   :: Maybe Text+    , _uerHealth            :: Maybe Text+    , _uerResources         :: Maybe EnvironmentResourcesDescription+    , _uerSolutionStackName :: Maybe Text+    , _uerStatus            :: Maybe Text+    , _uerTemplateName      :: Maybe Text+    , _uerTier              :: Maybe EnvironmentTier+    , _uerVersionLabel      :: Maybe Text+    } deriving (Eq, Show)++-- | 'UpdateEnvironmentResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'uerApplicationName' @::@ 'Maybe' 'Text'+--+-- * 'uerCNAME' @::@ 'Maybe' 'Text'+--+-- * 'uerDateCreated' @::@ 'Maybe' 'UTCTime'+--+-- * 'uerDateUpdated' @::@ 'Maybe' 'UTCTime'+--+-- * 'uerDescription' @::@ 'Maybe' 'Text'+--+-- * 'uerEndpointURL' @::@ 'Maybe' 'Text'+--+-- * 'uerEnvironmentId' @::@ 'Maybe' 'Text'+--+-- * 'uerEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'uerHealth' @::@ 'Maybe' 'Text'+--+-- * 'uerResources' @::@ 'Maybe' 'EnvironmentResourcesDescription'+--+-- * 'uerSolutionStackName' @::@ 'Maybe' 'Text'+--+-- * 'uerStatus' @::@ 'Maybe' 'Text'+--+-- * 'uerTemplateName' @::@ 'Maybe' 'Text'+--+-- * 'uerTier' @::@ 'Maybe' 'EnvironmentTier'+--+-- * 'uerVersionLabel' @::@ 'Maybe' 'Text'+--+updateEnvironmentResponse :: UpdateEnvironmentResponse+updateEnvironmentResponse = UpdateEnvironmentResponse+    { _uerEnvironmentName   = Nothing+    , _uerEnvironmentId     = Nothing+    , _uerApplicationName   = Nothing+    , _uerVersionLabel      = Nothing+    , _uerSolutionStackName = Nothing+    , _uerTemplateName      = Nothing+    , _uerDescription       = Nothing+    , _uerEndpointURL       = Nothing+    , _uerCNAME             = Nothing+    , _uerDateCreated       = Nothing+    , _uerDateUpdated       = Nothing+    , _uerStatus            = Nothing+    , _uerHealth            = Nothing+    , _uerResources         = Nothing+    , _uerTier              = Nothing+    }++-- | The name of the application associated with this environment.+uerApplicationName :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerApplicationName =+    lens _uerApplicationName (\s a -> s { _uerApplicationName = a })++-- | The URL to the CNAME for this environment.+uerCNAME :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerCNAME = lens _uerCNAME (\s a -> s { _uerCNAME = a })++-- | The creation date for this environment.+uerDateCreated :: Lens' UpdateEnvironmentResponse (Maybe UTCTime)+uerDateCreated = lens _uerDateCreated (\s a -> s { _uerDateCreated = a }) . mapping _Time++-- | The last modified date for this environment.+uerDateUpdated :: Lens' UpdateEnvironmentResponse (Maybe UTCTime)+uerDateUpdated = lens _uerDateUpdated (\s a -> s { _uerDateUpdated = a }) . mapping _Time++-- | Describes this environment.+uerDescription :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerDescription = lens _uerDescription (\s a -> s { _uerDescription = a })++-- | For load-balanced, autoscaling environments, the URL to the LoadBalancer.+-- For single-instance environments, the IP address of the instance.+uerEndpointURL :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerEndpointURL = lens _uerEndpointURL (\s a -> s { _uerEndpointURL = a })++-- | The ID of this environment.+uerEnvironmentId :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerEnvironmentId = lens _uerEnvironmentId (\s a -> s { _uerEnvironmentId = a })++-- | The name of this environment.+uerEnvironmentName :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerEnvironmentName =+    lens _uerEnvironmentName (\s a -> s { _uerEnvironmentName = a })++-- | Describes the health status of the environment. AWS Elastic Beanstalk+-- indicates the failure levels for a running environment: Red : Indicates+-- the environment is not working. Yellow: Indicates that something is+-- wrong, the application might not be available, but the instances appear+-- running. Green: Indicates the environment is healthy and fully+-- functional. Red: Indicates the environment is not responsive. Occurs when+-- three or more consecutive failures occur for an environment. Yellow:+-- Indicates that something is wrong. Occurs when two consecutive failures+-- occur for an environment. Green: Indicates the environment is healthy and+-- fully functional. Grey: Default health for a new environment. The+-- environment is not fully launched and health checks have not started or+-- health checks are suspended during an UpdateEnvironment or+-- RestartEnvironement request. Default: Grey.+uerHealth :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerHealth = lens _uerHealth (\s a -> s { _uerHealth = a })++-- | The description of the AWS resources used by this environment.+uerResources :: Lens' UpdateEnvironmentResponse (Maybe EnvironmentResourcesDescription)+uerResources = lens _uerResources (\s a -> s { _uerResources = a })++-- | The name of the SolutionStack deployed with this environment.+uerSolutionStackName :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerSolutionStackName =+    lens _uerSolutionStackName (\s a -> s { _uerSolutionStackName = a })++-- | The current operational status of the environment: Launching: Environment+-- is in the process of initial deployment. Updating: Environment is in the+-- process of updating its configuration settings or application version.+-- Ready: Environment is available to have an action performed on it, such+-- as update or terminate. Terminating: Environment is in the shut-down+-- process. Terminated: Environment is not running.+uerStatus :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerStatus = lens _uerStatus (\s a -> s { _uerStatus = a })++-- | The name of the configuration template used to originally launch this+-- environment.+uerTemplateName :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerTemplateName = lens _uerTemplateName (\s a -> s { _uerTemplateName = a })++-- | Describes the current tier of this environment.+uerTier :: Lens' UpdateEnvironmentResponse (Maybe EnvironmentTier)+uerTier = lens _uerTier (\s a -> s { _uerTier = a })++-- | The application version deployed in this environment.+uerVersionLabel :: Lens' UpdateEnvironmentResponse (Maybe Text)+uerVersionLabel = lens _uerVersionLabel (\s a -> s { _uerVersionLabel = a })++instance ToPath UpdateEnvironment where+    toPath = const "/"++instance ToQuery UpdateEnvironment where+    toQuery UpdateEnvironment{..} = mconcat+        [ "Description"     =? _ueDescription+        , "EnvironmentId"   =? _ueEnvironmentId+        , "EnvironmentName" =? _ueEnvironmentName+        , "OptionSettings"  =? _ueOptionSettings+        , "OptionsToRemove" =? _ueOptionsToRemove+        , "TemplateName"    =? _ueTemplateName+        , "Tier"            =? _ueTier+        , "VersionLabel"    =? _ueVersionLabel+        ]++instance ToHeaders UpdateEnvironment++instance AWSRequest UpdateEnvironment where+    type Sv UpdateEnvironment = ElasticBeanstalk+    type Rs UpdateEnvironment = UpdateEnvironmentResponse++    request  = post "UpdateEnvironment"+    response = xmlResponse++instance FromXML UpdateEnvironmentResponse where+    parseXML = withElement "UpdateEnvironmentResult" $ \x -> UpdateEnvironmentResponse+        <$> x .@? "ApplicationName"+        <*> x .@? "CNAME"+        <*> x .@? "DateCreated"+        <*> x .@? "DateUpdated"+        <*> x .@? "Description"+        <*> x .@? "EndpointURL"+        <*> x .@? "EnvironmentId"+        <*> x .@? "EnvironmentName"+        <*> x .@? "Health"+        <*> x .@? "Resources"+        <*> x .@? "SolutionStackName"+        <*> x .@? "Status"+        <*> x .@? "TemplateName"+        <*> x .@? "Tier"+        <*> x .@? "VersionLabel"
+ gen/Network/AWS/ElasticBeanstalk/ValidateConfigurationSettings.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DataKinds                   #-}+{-# LANGUAGE DeriveGeneric               #-}+{-# LANGUAGE FlexibleInstances           #-}+{-# LANGUAGE GeneralizedNewtypeDeriving  #-}+{-# LANGUAGE LambdaCase                  #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE OverloadedStrings           #-}+{-# LANGUAGE RecordWildCards             #-}+{-# LANGUAGE TypeFamilies                #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module      : Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings+-- Copyright   : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>+-- 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)++-- | Takes a set of configuration settings and either a configuration template+-- or environment, and determines whether those values are valid. This action+-- returns a list of messages indicating any errors or warnings associated+-- with the selection of option values.+--+-- <http://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_ValidateConfigurationSettings.html>+module Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings+    (+    -- * Request+      ValidateConfigurationSettings+    -- ** Request constructor+    , validateConfigurationSettings+    -- ** Request lenses+    , vcsApplicationName+    , vcsEnvironmentName+    , vcsOptionSettings+    , vcsTemplateName++    -- * Response+    , ValidateConfigurationSettingsResponse+    -- ** Response constructor+    , validateConfigurationSettingsResponse+    -- ** Response lenses+    , vcsrMessages+    ) where++import Network.AWS.Prelude+import Network.AWS.Request.Query+import Network.AWS.ElasticBeanstalk.Types+import qualified GHC.Exts++data ValidateConfigurationSettings = ValidateConfigurationSettings+    { _vcsApplicationName :: Text+    , _vcsEnvironmentName :: Maybe Text+    , _vcsOptionSettings  :: List "OptionSettings" ConfigurationOptionSetting+    , _vcsTemplateName    :: Maybe Text+    } deriving (Eq, Show)++-- | 'ValidateConfigurationSettings' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'vcsApplicationName' @::@ 'Text'+--+-- * 'vcsEnvironmentName' @::@ 'Maybe' 'Text'+--+-- * 'vcsOptionSettings' @::@ ['ConfigurationOptionSetting']+--+-- * 'vcsTemplateName' @::@ 'Maybe' 'Text'+--+validateConfigurationSettings :: Text -- ^ 'vcsApplicationName'+                              -> ValidateConfigurationSettings+validateConfigurationSettings p1 = ValidateConfigurationSettings+    { _vcsApplicationName = p1+    , _vcsTemplateName    = Nothing+    , _vcsEnvironmentName = Nothing+    , _vcsOptionSettings  = mempty+    }++-- | The name of the application that the configuration template or+-- environment belongs to.+vcsApplicationName :: Lens' ValidateConfigurationSettings Text+vcsApplicationName =+    lens _vcsApplicationName (\s a -> s { _vcsApplicationName = a })++-- | The name of the environment to validate the settings against. Condition:+-- You cannot specify both this and a configuration template name.+vcsEnvironmentName :: Lens' ValidateConfigurationSettings (Maybe Text)+vcsEnvironmentName =+    lens _vcsEnvironmentName (\s a -> s { _vcsEnvironmentName = a })++-- | A list of the options and desired values to evaluate.+vcsOptionSettings :: Lens' ValidateConfigurationSettings [ConfigurationOptionSetting]+vcsOptionSettings =+    lens _vcsOptionSettings (\s a -> s { _vcsOptionSettings = a })+        . _List++-- | The name of the configuration template to validate the settings against.+-- Condition: You cannot specify both this and an environment name.+vcsTemplateName :: Lens' ValidateConfigurationSettings (Maybe Text)+vcsTemplateName = lens _vcsTemplateName (\s a -> s { _vcsTemplateName = a })++newtype ValidateConfigurationSettingsResponse = ValidateConfigurationSettingsResponse+    { _vcsrMessages :: List "Messages" ValidationMessage+    } deriving (Eq, Show, Monoid, Semigroup)++instance GHC.Exts.IsList ValidateConfigurationSettingsResponse where+    type Item ValidateConfigurationSettingsResponse = ValidationMessage++    fromList = ValidateConfigurationSettingsResponse . GHC.Exts.fromList+    toList   = GHC.Exts.toList . _vcsrMessages++-- | 'ValidateConfigurationSettingsResponse' constructor.+--+-- The fields accessible through corresponding lenses are:+--+-- * 'vcsrMessages' @::@ ['ValidationMessage']+--+validateConfigurationSettingsResponse :: ValidateConfigurationSettingsResponse+validateConfigurationSettingsResponse = ValidateConfigurationSettingsResponse+    { _vcsrMessages = mempty+    }++-- | A list of ValidationMessage.+vcsrMessages :: Lens' ValidateConfigurationSettingsResponse [ValidationMessage]+vcsrMessages = lens _vcsrMessages (\s a -> s { _vcsrMessages = a }) . _List++instance ToPath ValidateConfigurationSettings where+    toPath = const "/"++instance ToQuery ValidateConfigurationSettings where+    toQuery ValidateConfigurationSettings{..} = mconcat+        [ "ApplicationName" =? _vcsApplicationName+        , "EnvironmentName" =? _vcsEnvironmentName+        , "OptionSettings"  =? _vcsOptionSettings+        , "TemplateName"    =? _vcsTemplateName+        ]++instance ToHeaders ValidateConfigurationSettings++instance AWSRequest ValidateConfigurationSettings where+    type Sv ValidateConfigurationSettings = ElasticBeanstalk+    type Rs ValidateConfigurationSettings = ValidateConfigurationSettingsResponse++    request  = post "ValidateConfigurationSettings"+    response = xmlResponse++instance FromXML ValidateConfigurationSettingsResponse where+    parseXML = withElement "ValidateConfigurationSettingsResult" $ \x -> ValidateConfigurationSettingsResponse+        <$> x .@  "Messages"