packages feed

amazonka-m2 (empty) → 2.0

raw patch · 154 files changed

+15924/−0 lines, 154 filesdep +amazonka-coredep +amazonka-m2dep +amazonka-test

Dependencies added: amazonka-core, amazonka-m2, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers

Files

+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+    means each individual or legal entity that creates, contributes to+    the creation of, or owns Covered Software.++1.2. "Contributor Version"+    means the combination of the Contributions of others (if any) used+    by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+    means Covered Software of a particular Contributor.++1.4. "Covered Software"+    means Source Code Form to which the initial Contributor has attached+    the notice in Exhibit A, the Executable Form of such Source Code+    Form, and Modifications of such Source Code Form, in each case+    including portions thereof.++1.5. "Incompatible With Secondary Licenses"+    means++    (a) that the initial Contributor has attached the notice described+        in Exhibit B to the Covered Software; or++    (b) that the Covered Software was made available under the terms of+        version 1.1 or earlier of the License, but not also under the+        terms of a Secondary License.++1.6. "Executable Form"+    means any form of the work other than Source Code Form.++1.7. "Larger Work"+    means a work that combines Covered Software with other material, in+    a separate file or files, that is not Covered Software.++1.8. "License"+    means this document.++1.9. "Licensable"+    means having the right to grant, to the maximum extent possible,+    whether at the time of the initial grant or subsequently, any and+    all of the rights conveyed by this License.++1.10. "Modifications"+    means any of the following:++    (a) any file in Source Code Form that results from an addition to,+        deletion from, or modification of the contents of Covered+        Software; or++    (b) any new file in Source Code Form that contains any Covered+        Software.++1.11. "Patent Claims" of a Contributor+    means any patent claim(s), including without limitation, method,+    process, and apparatus claims, in any patent Licensable by such+    Contributor that would be infringed, but for the grant of the+    License, by the making, using, selling, offering for sale, having+    made, import, or transfer of either its Contributions or its+    Contributor Version.++1.12. "Secondary License"+    means either the GNU General Public License, Version 2.0, the GNU+    Lesser General Public License, Version 2.1, the GNU Affero General+    Public License, Version 3.0, or any later versions of those+    licenses.++1.13. "Source Code Form"+    means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+    means an individual or a legal entity exercising rights under this+    License. For legal entities, "You" includes any entity that+    controls, is controlled by, or is under common control with You. For+    purposes of this definition, "control" means (a) the power, direct+    or indirect, to cause the direction or management of such entity,+    whether by contract or otherwise, or (b) ownership of more than+    fifty percent (50%) of the outstanding shares or beneficial+    ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+    Licensable by such Contributor to use, reproduce, make available,+    modify, display, perform, distribute, and otherwise exploit its+    Contributions, either on an unmodified basis, with Modifications, or+    as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+    for sale, have made, import, and otherwise transfer either its+    Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+    or++(b) for infringements caused by: (i) Your and any other third party's+    modifications of Covered Software, or (ii) the combination of its+    Contributions with other software (except as part of its Contributor+    Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+    its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+    Form, as described in Section 3.1, and You must inform recipients of+    the Executable Form how they can obtain a copy of such Source Code+    Form by reasonable means in a timely manner, at a charge no more+    than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+    License, or sublicense it under different terms, provided that the+    license for the Executable Form does not attempt to limit or alter+    the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+*                                                                      *+*  6. Disclaimer of Warranty                                           *+*  -------------------------                                           *+*                                                                      *+*  Covered Software is provided under this License on an "as is"       *+*  basis, without warranty of any kind, either expressed, implied, or  *+*  statutory, including, without limitation, warranties that the       *+*  Covered Software is free of defects, merchantable, fit for a        *+*  particular purpose or non-infringing. The entire risk as to the     *+*  quality and performance of the Covered Software is with You.        *+*  Should any Covered Software prove defective in any respect, You     *+*  (not any Contributor) assume the cost of any necessary servicing,   *+*  repair, or correction. This disclaimer of warranty constitutes an   *+*  essential part of this License. No use of any Covered Software is   *+*  authorized under this License except under this disclaimer.         *+*                                                                      *+************************************************************************++************************************************************************+*                                                                      *+*  7. Limitation of Liability                                          *+*  --------------------------                                          *+*                                                                      *+*  Under no circumstances and under no legal theory, whether tort      *+*  (including negligence), contract, or otherwise, shall any           *+*  Contributor, or anyone who distributes Covered Software as          *+*  permitted above, be liable to You for any direct, indirect,         *+*  special, incidental, or consequential damages of any character      *+*  including, without limitation, damages for lost profits, loss of    *+*  goodwill, work stoppage, computer failure or malfunction, or any    *+*  and all other commercial damages or losses, even if such party      *+*  shall have been informed of the possibility of such damages. This   *+*  limitation of liability shall not apply to liability for death or   *+*  personal injury resulting from such party's negligence to the       *+*  extent applicable law prohibits such limitation. Some               *+*  jurisdictions do not allow the exclusion or limitation of           *+*  incidental or consequential damages, so this exclusion and          *+*  limitation may not apply to You.                                    *+*                                                                      *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++  This Source Code Form is subject to the terms of the Mozilla Public+  License, v. 2.0. If a copy of the MPL was not distributed with this+  file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon MainframeModernization SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2021-04-28@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-m2)+and the [AWS API Reference](https://aws.amazon.com/documentation/).++The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information, sending requests,+and receiving responses.++Lenses are used for constructing and manipulating types,+due to the depth of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core).++See [Amazonka.M2](http://hackage.haskell.org/package/amazonka-m2/docs/Amazonka-M2.html)+or [the AWS documentation](https://aws.amazon.com/documentation/) to get started.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`amazonka-m2` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).++Parts of the code are derived from AWS service descriptions, licensed under Apache 2.0.+Source files subject to this contain an additional licensing clause in their header.
+ amazonka-m2.cabal view
@@ -0,0 +1,161 @@+cabal-version:      2.2+name:               amazonka-m2+version:            2.0+synopsis:           Amazon MainframeModernization SDK.+homepage:           https://github.com/brendanhay/amazonka+bug-reports:        https://github.com/brendanhay/amazonka/issues+license:            MPL-2.0+license-file:       LICENSE+author:             Brendan Hay+maintainer:+  Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright:          Copyright (c) 2013-2023 Brendan Hay+category:           AWS+build-type:         Simple+extra-source-files:+  fixture/*.proto+  fixture/*.yaml+  README.md+  src/.gitkeep++description:+  Derived from API version @2021-04-28@ of the AWS service descriptions, licensed under Apache 2.0.+  .+  The types from this library are intended to be used with <http://hackage.haskell.org/package/amazonka amazonka>,+  which provides mechanisms for specifying AuthN/AuthZ information, sending requests, and receiving responses.+  .+  It is recommended to use generic lenses or optics from packages such as <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify optional fields and deconstruct responses.+  .+  Generated lenses can be found in "Amazonka.M2.Lens" and are+  suitable for use with a lens package such as <http://hackage.haskell.org/package/lens lens> or <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+  .+  See "Amazonka.M2" and the <https://aws.amazon.com/documentation/ AWS documentation> to get started.++source-repository head+  type:     git+  location: git://github.com/brendanhay/amazonka.git+  subdir:   amazonka-m2++library+  default-language: Haskell2010+  hs-source-dirs:   src gen+  ghc-options:+    -Wall -fwarn-incomplete-uni-patterns+    -fwarn-incomplete-record-updates -funbox-strict-fields++  exposed-modules:+    Amazonka.M2+    Amazonka.M2.CancelBatchJobExecution+    Amazonka.M2.CreateApplication+    Amazonka.M2.CreateDataSetImportTask+    Amazonka.M2.CreateDeployment+    Amazonka.M2.CreateEnvironment+    Amazonka.M2.DeleteApplication+    Amazonka.M2.DeleteApplicationFromEnvironment+    Amazonka.M2.DeleteEnvironment+    Amazonka.M2.GetApplication+    Amazonka.M2.GetApplicationVersion+    Amazonka.M2.GetBatchJobExecution+    Amazonka.M2.GetDataSetDetails+    Amazonka.M2.GetDataSetImportTask+    Amazonka.M2.GetDeployment+    Amazonka.M2.GetEnvironment+    Amazonka.M2.Lens+    Amazonka.M2.ListApplications+    Amazonka.M2.ListApplicationVersions+    Amazonka.M2.ListBatchJobDefinitions+    Amazonka.M2.ListBatchJobExecutions+    Amazonka.M2.ListDataSetImportHistory+    Amazonka.M2.ListDataSets+    Amazonka.M2.ListDeployments+    Amazonka.M2.ListEngineVersions+    Amazonka.M2.ListEnvironments+    Amazonka.M2.ListTagsForResource+    Amazonka.M2.StartApplication+    Amazonka.M2.StartBatchJob+    Amazonka.M2.StopApplication+    Amazonka.M2.TagResource+    Amazonka.M2.Types+    Amazonka.M2.Types.AlternateKey+    Amazonka.M2.Types.ApplicationDeploymentLifecycle+    Amazonka.M2.Types.ApplicationLifecycle+    Amazonka.M2.Types.ApplicationSummary+    Amazonka.M2.Types.ApplicationVersionLifecycle+    Amazonka.M2.Types.ApplicationVersionSummary+    Amazonka.M2.Types.BatchJobDefinition+    Amazonka.M2.Types.BatchJobExecutionStatus+    Amazonka.M2.Types.BatchJobExecutionSummary+    Amazonka.M2.Types.BatchJobIdentifier+    Amazonka.M2.Types.BatchJobType+    Amazonka.M2.Types.DataSet+    Amazonka.M2.Types.DatasetDetailOrgAttributes+    Amazonka.M2.Types.DataSetImportConfig+    Amazonka.M2.Types.DataSetImportItem+    Amazonka.M2.Types.DataSetImportSummary+    Amazonka.M2.Types.DataSetImportTask+    Amazonka.M2.Types.DatasetOrgAttributes+    Amazonka.M2.Types.DataSetSummary+    Amazonka.M2.Types.DataSetTaskLifecycle+    Amazonka.M2.Types.Definition+    Amazonka.M2.Types.DeployedVersionSummary+    Amazonka.M2.Types.DeploymentLifecycle+    Amazonka.M2.Types.DeploymentSummary+    Amazonka.M2.Types.EfsStorageConfiguration+    Amazonka.M2.Types.EngineType+    Amazonka.M2.Types.EngineVersionsSummary+    Amazonka.M2.Types.EnvironmentLifecycle+    Amazonka.M2.Types.EnvironmentSummary+    Amazonka.M2.Types.ExternalLocation+    Amazonka.M2.Types.FileBatchJobDefinition+    Amazonka.M2.Types.FileBatchJobIdentifier+    Amazonka.M2.Types.FsxStorageConfiguration+    Amazonka.M2.Types.GdgAttributes+    Amazonka.M2.Types.GdgDetailAttributes+    Amazonka.M2.Types.HighAvailabilityConfig+    Amazonka.M2.Types.LogGroupSummary+    Amazonka.M2.Types.MaintenanceSchedule+    Amazonka.M2.Types.PendingMaintenance+    Amazonka.M2.Types.PrimaryKey+    Amazonka.M2.Types.RecordLength+    Amazonka.M2.Types.ScriptBatchJobDefinition+    Amazonka.M2.Types.ScriptBatchJobIdentifier+    Amazonka.M2.Types.StorageConfiguration+    Amazonka.M2.Types.VsamAttributes+    Amazonka.M2.Types.VsamDetailAttributes+    Amazonka.M2.UntagResource+    Amazonka.M2.UpdateApplication+    Amazonka.M2.UpdateEnvironment+    Amazonka.M2.Waiters++  build-depends:+    , amazonka-core  >=2.0  && <2.1+    , base           >=4.12 && <5++test-suite amazonka-m2-test+  type:             exitcode-stdio-1.0+  default-language: Haskell2010+  hs-source-dirs:   test+  main-is:          Main.hs+  ghc-options:      -Wall -threaded++  -- This section is encoded by the template and any modules added by+  -- hand outside these namespaces will not correctly be added to the+  -- distribution package.+  other-modules:+    Test.Amazonka.Gen.M2+    Test.Amazonka.M2+    Test.Amazonka.M2.Internal++  build-depends:+    , amazonka-core         >=2.0 && <2.1+    , amazonka-m2+    , amazonka-test         >=2.0 && <2.1+    , base+    , bytestring+    , case-insensitive+    , tasty+    , tasty-hunit+    , text+    , time+    , unordered-containers
+ fixture/CancelBatchJobExecution.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/CancelBatchJobExecutionResponse.proto view
+ fixture/CreateApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/CreateApplicationResponse.proto view
+ fixture/CreateDataSetImportTask.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/CreateDataSetImportTaskResponse.proto view
+ fixture/CreateDeployment.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/CreateDeploymentResponse.proto view
+ fixture/CreateEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/CreateEnvironmentResponse.proto view
+ fixture/DeleteApplication.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/DeleteApplicationFromEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/DeleteApplicationFromEnvironmentResponse.proto view
+ fixture/DeleteApplicationResponse.proto view
+ fixture/DeleteEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/DeleteEnvironmentResponse.proto view
+ fixture/GetApplication.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetApplicationResponse.proto view
+ fixture/GetApplicationVersion.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetApplicationVersionResponse.proto view
+ fixture/GetBatchJobExecution.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetBatchJobExecutionResponse.proto view
+ fixture/GetDataSetDetails.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetDataSetDetailsResponse.proto view
+ fixture/GetDataSetImportTask.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetDataSetImportTaskResponse.proto view
+ fixture/GetDeployment.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetDeploymentResponse.proto view
+ fixture/GetEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetEnvironmentResponse.proto view
+ fixture/ListApplicationVersions.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListApplicationVersionsResponse.proto view
+ fixture/ListApplications.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListApplicationsResponse.proto view
+ fixture/ListBatchJobDefinitions.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListBatchJobDefinitionsResponse.proto view
+ fixture/ListBatchJobExecutions.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListBatchJobExecutionsResponse.proto view
+ fixture/ListDataSetImportHistory.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListDataSetImportHistoryResponse.proto view
+ fixture/ListDataSets.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListDataSetsResponse.proto view
+ fixture/ListDeployments.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListDeploymentsResponse.proto view
+ fixture/ListEngineVersions.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListEngineVersionsResponse.proto view
+ fixture/ListEnvironments.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListEnvironmentsResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListTagsForResourceResponse.proto view
+ fixture/StartApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/StartApplicationResponse.proto view
+ fixture/StartBatchJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/StartBatchJobResponse.proto view
+ fixture/StopApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/StopApplicationResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/TagResourceResponse.proto view
+ fixture/UntagResource.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/UntagResourceResponse.proto view
+ fixture/UpdateApplication.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/UpdateApplicationResponse.proto view
+ fixture/UpdateEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/m2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  m2.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/UpdateEnvironmentResponse.proto view
+ gen/Amazonka/M2.hs view
@@ -0,0 +1,487 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module      : Amazonka.M2+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2021-04-28@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- Amazon Web Services Mainframe Modernization provides tools and resources+-- to help you plan and implement migration and modernization from+-- mainframes to Amazon Web Services managed runtime environments. It+-- provides tools for analyzing existing mainframe applications, developing+-- or updating mainframe applications using COBOL or PL\/I, and+-- implementing an automated pipeline for continuous integration and+-- continuous delivery (CI\/CD) of the applications.+module Amazonka.M2+  ( -- * Service Configuration+    defaultService,++    -- * Errors+    -- $errors++    -- ** AccessDeniedException+    _AccessDeniedException,++    -- ** ConflictException+    _ConflictException,++    -- ** InternalServerException+    _InternalServerException,++    -- ** ResourceNotFoundException+    _ResourceNotFoundException,++    -- ** ServiceQuotaExceededException+    _ServiceQuotaExceededException,++    -- ** ThrottlingException+    _ThrottlingException,++    -- ** ValidationException+    _ValidationException,++    -- * Waiters+    -- $waiters++    -- * Operations+    -- $operations++    -- ** CancelBatchJobExecution+    CancelBatchJobExecution (CancelBatchJobExecution'),+    newCancelBatchJobExecution,+    CancelBatchJobExecutionResponse (CancelBatchJobExecutionResponse'),+    newCancelBatchJobExecutionResponse,++    -- ** CreateApplication+    CreateApplication (CreateApplication'),+    newCreateApplication,+    CreateApplicationResponse (CreateApplicationResponse'),+    newCreateApplicationResponse,++    -- ** CreateDataSetImportTask+    CreateDataSetImportTask (CreateDataSetImportTask'),+    newCreateDataSetImportTask,+    CreateDataSetImportTaskResponse (CreateDataSetImportTaskResponse'),+    newCreateDataSetImportTaskResponse,++    -- ** CreateDeployment+    CreateDeployment (CreateDeployment'),+    newCreateDeployment,+    CreateDeploymentResponse (CreateDeploymentResponse'),+    newCreateDeploymentResponse,++    -- ** CreateEnvironment+    CreateEnvironment (CreateEnvironment'),+    newCreateEnvironment,+    CreateEnvironmentResponse (CreateEnvironmentResponse'),+    newCreateEnvironmentResponse,++    -- ** DeleteApplication+    DeleteApplication (DeleteApplication'),+    newDeleteApplication,+    DeleteApplicationResponse (DeleteApplicationResponse'),+    newDeleteApplicationResponse,++    -- ** DeleteApplicationFromEnvironment+    DeleteApplicationFromEnvironment (DeleteApplicationFromEnvironment'),+    newDeleteApplicationFromEnvironment,+    DeleteApplicationFromEnvironmentResponse (DeleteApplicationFromEnvironmentResponse'),+    newDeleteApplicationFromEnvironmentResponse,++    -- ** DeleteEnvironment+    DeleteEnvironment (DeleteEnvironment'),+    newDeleteEnvironment,+    DeleteEnvironmentResponse (DeleteEnvironmentResponse'),+    newDeleteEnvironmentResponse,++    -- ** GetApplication+    GetApplication (GetApplication'),+    newGetApplication,+    GetApplicationResponse (GetApplicationResponse'),+    newGetApplicationResponse,++    -- ** GetApplicationVersion+    GetApplicationVersion (GetApplicationVersion'),+    newGetApplicationVersion,+    GetApplicationVersionResponse (GetApplicationVersionResponse'),+    newGetApplicationVersionResponse,++    -- ** GetBatchJobExecution+    GetBatchJobExecution (GetBatchJobExecution'),+    newGetBatchJobExecution,+    GetBatchJobExecutionResponse (GetBatchJobExecutionResponse'),+    newGetBatchJobExecutionResponse,++    -- ** GetDataSetDetails+    GetDataSetDetails (GetDataSetDetails'),+    newGetDataSetDetails,+    GetDataSetDetailsResponse (GetDataSetDetailsResponse'),+    newGetDataSetDetailsResponse,++    -- ** GetDataSetImportTask+    GetDataSetImportTask (GetDataSetImportTask'),+    newGetDataSetImportTask,+    GetDataSetImportTaskResponse (GetDataSetImportTaskResponse'),+    newGetDataSetImportTaskResponse,++    -- ** GetDeployment+    GetDeployment (GetDeployment'),+    newGetDeployment,+    GetDeploymentResponse (GetDeploymentResponse'),+    newGetDeploymentResponse,++    -- ** GetEnvironment+    GetEnvironment (GetEnvironment'),+    newGetEnvironment,+    GetEnvironmentResponse (GetEnvironmentResponse'),+    newGetEnvironmentResponse,++    -- ** ListApplicationVersions (Paginated)+    ListApplicationVersions (ListApplicationVersions'),+    newListApplicationVersions,+    ListApplicationVersionsResponse (ListApplicationVersionsResponse'),+    newListApplicationVersionsResponse,++    -- ** ListApplications (Paginated)+    ListApplications (ListApplications'),+    newListApplications,+    ListApplicationsResponse (ListApplicationsResponse'),+    newListApplicationsResponse,++    -- ** ListBatchJobDefinitions (Paginated)+    ListBatchJobDefinitions (ListBatchJobDefinitions'),+    newListBatchJobDefinitions,+    ListBatchJobDefinitionsResponse (ListBatchJobDefinitionsResponse'),+    newListBatchJobDefinitionsResponse,++    -- ** ListBatchJobExecutions (Paginated)+    ListBatchJobExecutions (ListBatchJobExecutions'),+    newListBatchJobExecutions,+    ListBatchJobExecutionsResponse (ListBatchJobExecutionsResponse'),+    newListBatchJobExecutionsResponse,++    -- ** ListDataSetImportHistory (Paginated)+    ListDataSetImportHistory (ListDataSetImportHistory'),+    newListDataSetImportHistory,+    ListDataSetImportHistoryResponse (ListDataSetImportHistoryResponse'),+    newListDataSetImportHistoryResponse,++    -- ** ListDataSets (Paginated)+    ListDataSets (ListDataSets'),+    newListDataSets,+    ListDataSetsResponse (ListDataSetsResponse'),+    newListDataSetsResponse,++    -- ** ListDeployments (Paginated)+    ListDeployments (ListDeployments'),+    newListDeployments,+    ListDeploymentsResponse (ListDeploymentsResponse'),+    newListDeploymentsResponse,++    -- ** ListEngineVersions (Paginated)+    ListEngineVersions (ListEngineVersions'),+    newListEngineVersions,+    ListEngineVersionsResponse (ListEngineVersionsResponse'),+    newListEngineVersionsResponse,++    -- ** ListEnvironments (Paginated)+    ListEnvironments (ListEnvironments'),+    newListEnvironments,+    ListEnvironmentsResponse (ListEnvironmentsResponse'),+    newListEnvironmentsResponse,++    -- ** ListTagsForResource+    ListTagsForResource (ListTagsForResource'),+    newListTagsForResource,+    ListTagsForResourceResponse (ListTagsForResourceResponse'),+    newListTagsForResourceResponse,++    -- ** StartApplication+    StartApplication (StartApplication'),+    newStartApplication,+    StartApplicationResponse (StartApplicationResponse'),+    newStartApplicationResponse,++    -- ** StartBatchJob+    StartBatchJob (StartBatchJob'),+    newStartBatchJob,+    StartBatchJobResponse (StartBatchJobResponse'),+    newStartBatchJobResponse,++    -- ** StopApplication+    StopApplication (StopApplication'),+    newStopApplication,+    StopApplicationResponse (StopApplicationResponse'),+    newStopApplicationResponse,++    -- ** TagResource+    TagResource (TagResource'),+    newTagResource,+    TagResourceResponse (TagResourceResponse'),+    newTagResourceResponse,++    -- ** UntagResource+    UntagResource (UntagResource'),+    newUntagResource,+    UntagResourceResponse (UntagResourceResponse'),+    newUntagResourceResponse,++    -- ** UpdateApplication+    UpdateApplication (UpdateApplication'),+    newUpdateApplication,+    UpdateApplicationResponse (UpdateApplicationResponse'),+    newUpdateApplicationResponse,++    -- ** UpdateEnvironment+    UpdateEnvironment (UpdateEnvironment'),+    newUpdateEnvironment,+    UpdateEnvironmentResponse (UpdateEnvironmentResponse'),+    newUpdateEnvironmentResponse,++    -- * Types++    -- ** ApplicationDeploymentLifecycle+    ApplicationDeploymentLifecycle (..),++    -- ** ApplicationLifecycle+    ApplicationLifecycle (..),++    -- ** ApplicationVersionLifecycle+    ApplicationVersionLifecycle (..),++    -- ** BatchJobExecutionStatus+    BatchJobExecutionStatus (..),++    -- ** BatchJobType+    BatchJobType (..),++    -- ** DataSetTaskLifecycle+    DataSetTaskLifecycle (..),++    -- ** DeploymentLifecycle+    DeploymentLifecycle (..),++    -- ** EngineType+    EngineType (..),++    -- ** EnvironmentLifecycle+    EnvironmentLifecycle (..),++    -- ** AlternateKey+    AlternateKey (AlternateKey'),+    newAlternateKey,++    -- ** ApplicationSummary+    ApplicationSummary (ApplicationSummary'),+    newApplicationSummary,++    -- ** ApplicationVersionSummary+    ApplicationVersionSummary (ApplicationVersionSummary'),+    newApplicationVersionSummary,++    -- ** BatchJobDefinition+    BatchJobDefinition (BatchJobDefinition'),+    newBatchJobDefinition,++    -- ** BatchJobExecutionSummary+    BatchJobExecutionSummary (BatchJobExecutionSummary'),+    newBatchJobExecutionSummary,++    -- ** BatchJobIdentifier+    BatchJobIdentifier (BatchJobIdentifier'),+    newBatchJobIdentifier,++    -- ** DataSet+    DataSet (DataSet'),+    newDataSet,++    -- ** DataSetImportConfig+    DataSetImportConfig (DataSetImportConfig'),+    newDataSetImportConfig,++    -- ** DataSetImportItem+    DataSetImportItem (DataSetImportItem'),+    newDataSetImportItem,++    -- ** DataSetImportSummary+    DataSetImportSummary (DataSetImportSummary'),+    newDataSetImportSummary,++    -- ** DataSetImportTask+    DataSetImportTask (DataSetImportTask'),+    newDataSetImportTask,++    -- ** DataSetSummary+    DataSetSummary (DataSetSummary'),+    newDataSetSummary,++    -- ** DatasetDetailOrgAttributes+    DatasetDetailOrgAttributes (DatasetDetailOrgAttributes'),+    newDatasetDetailOrgAttributes,++    -- ** DatasetOrgAttributes+    DatasetOrgAttributes (DatasetOrgAttributes'),+    newDatasetOrgAttributes,++    -- ** Definition+    Definition (Definition'),+    newDefinition,++    -- ** DeployedVersionSummary+    DeployedVersionSummary (DeployedVersionSummary'),+    newDeployedVersionSummary,++    -- ** DeploymentSummary+    DeploymentSummary (DeploymentSummary'),+    newDeploymentSummary,++    -- ** EfsStorageConfiguration+    EfsStorageConfiguration (EfsStorageConfiguration'),+    newEfsStorageConfiguration,++    -- ** EngineVersionsSummary+    EngineVersionsSummary (EngineVersionsSummary'),+    newEngineVersionsSummary,++    -- ** EnvironmentSummary+    EnvironmentSummary (EnvironmentSummary'),+    newEnvironmentSummary,++    -- ** ExternalLocation+    ExternalLocation (ExternalLocation'),+    newExternalLocation,++    -- ** FileBatchJobDefinition+    FileBatchJobDefinition (FileBatchJobDefinition'),+    newFileBatchJobDefinition,++    -- ** FileBatchJobIdentifier+    FileBatchJobIdentifier (FileBatchJobIdentifier'),+    newFileBatchJobIdentifier,++    -- ** FsxStorageConfiguration+    FsxStorageConfiguration (FsxStorageConfiguration'),+    newFsxStorageConfiguration,++    -- ** GdgAttributes+    GdgAttributes (GdgAttributes'),+    newGdgAttributes,++    -- ** GdgDetailAttributes+    GdgDetailAttributes (GdgDetailAttributes'),+    newGdgDetailAttributes,++    -- ** HighAvailabilityConfig+    HighAvailabilityConfig (HighAvailabilityConfig'),+    newHighAvailabilityConfig,++    -- ** LogGroupSummary+    LogGroupSummary (LogGroupSummary'),+    newLogGroupSummary,++    -- ** MaintenanceSchedule+    MaintenanceSchedule (MaintenanceSchedule'),+    newMaintenanceSchedule,++    -- ** PendingMaintenance+    PendingMaintenance (PendingMaintenance'),+    newPendingMaintenance,++    -- ** PrimaryKey+    PrimaryKey (PrimaryKey'),+    newPrimaryKey,++    -- ** RecordLength+    RecordLength (RecordLength'),+    newRecordLength,++    -- ** ScriptBatchJobDefinition+    ScriptBatchJobDefinition (ScriptBatchJobDefinition'),+    newScriptBatchJobDefinition,++    -- ** ScriptBatchJobIdentifier+    ScriptBatchJobIdentifier (ScriptBatchJobIdentifier'),+    newScriptBatchJobIdentifier,++    -- ** StorageConfiguration+    StorageConfiguration (StorageConfiguration'),+    newStorageConfiguration,++    -- ** VsamAttributes+    VsamAttributes (VsamAttributes'),+    newVsamAttributes,++    -- ** VsamDetailAttributes+    VsamDetailAttributes (VsamDetailAttributes'),+    newVsamDetailAttributes,+  )+where++import Amazonka.M2.CancelBatchJobExecution+import Amazonka.M2.CreateApplication+import Amazonka.M2.CreateDataSetImportTask+import Amazonka.M2.CreateDeployment+import Amazonka.M2.CreateEnvironment+import Amazonka.M2.DeleteApplication+import Amazonka.M2.DeleteApplicationFromEnvironment+import Amazonka.M2.DeleteEnvironment+import Amazonka.M2.GetApplication+import Amazonka.M2.GetApplicationVersion+import Amazonka.M2.GetBatchJobExecution+import Amazonka.M2.GetDataSetDetails+import Amazonka.M2.GetDataSetImportTask+import Amazonka.M2.GetDeployment+import Amazonka.M2.GetEnvironment+import Amazonka.M2.Lens+import Amazonka.M2.ListApplicationVersions+import Amazonka.M2.ListApplications+import Amazonka.M2.ListBatchJobDefinitions+import Amazonka.M2.ListBatchJobExecutions+import Amazonka.M2.ListDataSetImportHistory+import Amazonka.M2.ListDataSets+import Amazonka.M2.ListDeployments+import Amazonka.M2.ListEngineVersions+import Amazonka.M2.ListEnvironments+import Amazonka.M2.ListTagsForResource+import Amazonka.M2.StartApplication+import Amazonka.M2.StartBatchJob+import Amazonka.M2.StopApplication+import Amazonka.M2.TagResource+import Amazonka.M2.Types+import Amazonka.M2.UntagResource+import Amazonka.M2.UpdateApplication+import Amazonka.M2.UpdateEnvironment+import Amazonka.M2.Waiters++-- $errors+-- Error matchers are designed for use with the functions provided by+-- <http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+-- This allows catching (and rethrowing) service specific errors returned+-- by 'M2'.++-- $operations+-- Some AWS operations return results that are incomplete and require subsequent+-- requests in order to obtain the entire result set. The process of sending+-- subsequent requests to continue where a previous request left off is called+-- pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+-- 1000 objects at a time, and you must send subsequent requests with the+-- appropriate Marker in order to retrieve the next page of results.+--+-- Operations that have an 'AWSPager' instance can transparently perform subsequent+-- requests, correctly setting Markers and other request facets to iterate through+-- the entire result set of a truncated API operation. Operations which support+-- this have an additional note in the documentation.+--+-- Many operations have the ability to filter results on the server side. See the+-- individual operation parameters for details.++-- $waiters+-- Waiters poll by repeatedly sending a request until some remote success condition+-- configured by the 'Wait' specification is fulfilled. The 'Wait' specification+-- determines how many attempts should be made, in addition to delay and retry strategies.
+ gen/Amazonka/M2/CancelBatchJobExecution.hs view
@@ -0,0 +1,179 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.CancelBatchJobExecution+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Cancels the running of a specific batch job execution.+module Amazonka.M2.CancelBatchJobExecution+  ( -- * Creating a Request+    CancelBatchJobExecution (..),+    newCancelBatchJobExecution,++    -- * Request Lenses+    cancelBatchJobExecution_applicationId,+    cancelBatchJobExecution_executionId,++    -- * Destructuring the Response+    CancelBatchJobExecutionResponse (..),+    newCancelBatchJobExecutionResponse,++    -- * Response Lenses+    cancelBatchJobExecutionResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCancelBatchJobExecution' smart constructor.+data CancelBatchJobExecution = CancelBatchJobExecution'+  { -- | The unique identifier of the application.+    applicationId :: Prelude.Text,+    -- | The unique identifier of the batch job execution.+    executionId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelBatchJobExecution' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'cancelBatchJobExecution_applicationId' - The unique identifier of the application.+--+-- 'executionId', 'cancelBatchJobExecution_executionId' - The unique identifier of the batch job execution.+newCancelBatchJobExecution ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'executionId'+  Prelude.Text ->+  CancelBatchJobExecution+newCancelBatchJobExecution+  pApplicationId_+  pExecutionId_ =+    CancelBatchJobExecution'+      { applicationId =+          pApplicationId_,+        executionId = pExecutionId_+      }++-- | The unique identifier of the application.+cancelBatchJobExecution_applicationId :: Lens.Lens' CancelBatchJobExecution Prelude.Text+cancelBatchJobExecution_applicationId = Lens.lens (\CancelBatchJobExecution' {applicationId} -> applicationId) (\s@CancelBatchJobExecution' {} a -> s {applicationId = a} :: CancelBatchJobExecution)++-- | The unique identifier of the batch job execution.+cancelBatchJobExecution_executionId :: Lens.Lens' CancelBatchJobExecution Prelude.Text+cancelBatchJobExecution_executionId = Lens.lens (\CancelBatchJobExecution' {executionId} -> executionId) (\s@CancelBatchJobExecution' {} a -> s {executionId = a} :: CancelBatchJobExecution)++instance Core.AWSRequest CancelBatchJobExecution where+  type+    AWSResponse CancelBatchJobExecution =+      CancelBatchJobExecutionResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          CancelBatchJobExecutionResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable CancelBatchJobExecution where+  hashWithSalt _salt CancelBatchJobExecution' {..} =+    _salt+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` executionId++instance Prelude.NFData CancelBatchJobExecution where+  rnf CancelBatchJobExecution' {..} =+    Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf executionId++instance Data.ToHeaders CancelBatchJobExecution where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CancelBatchJobExecution where+  toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath CancelBatchJobExecution where+  toPath CancelBatchJobExecution' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/batch-job-executions/",+        Data.toBS executionId,+        "/cancel"+      ]++instance Data.ToQuery CancelBatchJobExecution where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCancelBatchJobExecutionResponse' smart constructor.+data CancelBatchJobExecutionResponse = CancelBatchJobExecutionResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelBatchJobExecutionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'cancelBatchJobExecutionResponse_httpStatus' - The response's http status code.+newCancelBatchJobExecutionResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  CancelBatchJobExecutionResponse+newCancelBatchJobExecutionResponse pHttpStatus_ =+  CancelBatchJobExecutionResponse'+    { httpStatus =+        pHttpStatus_+    }++-- | The response's http status code.+cancelBatchJobExecutionResponse_httpStatus :: Lens.Lens' CancelBatchJobExecutionResponse Prelude.Int+cancelBatchJobExecutionResponse_httpStatus = Lens.lens (\CancelBatchJobExecutionResponse' {httpStatus} -> httpStatus) (\s@CancelBatchJobExecutionResponse' {} a -> s {httpStatus = a} :: CancelBatchJobExecutionResponse)++instance+  Prelude.NFData+    CancelBatchJobExecutionResponse+  where+  rnf CancelBatchJobExecutionResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/M2/CreateApplication.hs view
@@ -0,0 +1,304 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.CreateApplication+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new application with given parameters. Requires an existing+-- runtime environment and application definition file.+module Amazonka.M2.CreateApplication+  ( -- * Creating a Request+    CreateApplication (..),+    newCreateApplication,++    -- * Request Lenses+    createApplication_clientToken,+    createApplication_description,+    createApplication_kmsKeyId,+    createApplication_tags,+    createApplication_definition,+    createApplication_engineType,+    createApplication_name,++    -- * Destructuring the Response+    CreateApplicationResponse (..),+    newCreateApplicationResponse,++    -- * Response Lenses+    createApplicationResponse_httpStatus,+    createApplicationResponse_applicationArn,+    createApplicationResponse_applicationId,+    createApplicationResponse_applicationVersion,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateApplication' smart constructor.+data CreateApplication = CreateApplication'+  { -- | Unique, case-sensitive identifier the service generates to ensure the+    -- idempotency of the request to create an application. The service+    -- generates the clientToken when the API call is triggered. The token+    -- expires after one hour, so if you retry the API within this timeframe+    -- with the same clientToken, you will get the same response. The service+    -- also handles deleting the clientToken after it expires.+    clientToken :: Prelude.Maybe Prelude.Text,+    -- | The description of the application.+    description :: Prelude.Maybe Prelude.Text,+    -- | The identifier of a customer managed key.+    kmsKeyId :: Prelude.Maybe Prelude.Text,+    -- | A list of tags to apply to the application.+    tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+    -- | The application definition for this application. You can specify either+    -- inline JSON or an S3 bucket location.+    definition :: Definition,+    -- | The type of the target platform for this application.+    engineType :: EngineType,+    -- | The unique identifier of the application.+    name :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createApplication_clientToken' - Unique, case-sensitive identifier the service generates to ensure the+-- idempotency of the request to create an application. The service+-- generates the clientToken when the API call is triggered. The token+-- expires after one hour, so if you retry the API within this timeframe+-- with the same clientToken, you will get the same response. The service+-- also handles deleting the clientToken after it expires.+--+-- 'description', 'createApplication_description' - The description of the application.+--+-- 'kmsKeyId', 'createApplication_kmsKeyId' - The identifier of a customer managed key.+--+-- 'tags', 'createApplication_tags' - A list of tags to apply to the application.+--+-- 'definition', 'createApplication_definition' - The application definition for this application. You can specify either+-- inline JSON or an S3 bucket location.+--+-- 'engineType', 'createApplication_engineType' - The type of the target platform for this application.+--+-- 'name', 'createApplication_name' - The unique identifier of the application.+newCreateApplication ::+  -- | 'definition'+  Definition ->+  -- | 'engineType'+  EngineType ->+  -- | 'name'+  Prelude.Text ->+  CreateApplication+newCreateApplication pDefinition_ pEngineType_ pName_ =+  CreateApplication'+    { clientToken = Prelude.Nothing,+      description = Prelude.Nothing,+      kmsKeyId = Prelude.Nothing,+      tags = Prelude.Nothing,+      definition = pDefinition_,+      engineType = pEngineType_,+      name = pName_+    }++-- | Unique, case-sensitive identifier the service generates to ensure the+-- idempotency of the request to create an application. The service+-- generates the clientToken when the API call is triggered. The token+-- expires after one hour, so if you retry the API within this timeframe+-- with the same clientToken, you will get the same response. The service+-- also handles deleting the clientToken after it expires.+createApplication_clientToken :: Lens.Lens' CreateApplication (Prelude.Maybe Prelude.Text)+createApplication_clientToken = Lens.lens (\CreateApplication' {clientToken} -> clientToken) (\s@CreateApplication' {} a -> s {clientToken = a} :: CreateApplication)++-- | The description of the application.+createApplication_description :: Lens.Lens' CreateApplication (Prelude.Maybe Prelude.Text)+createApplication_description = Lens.lens (\CreateApplication' {description} -> description) (\s@CreateApplication' {} a -> s {description = a} :: CreateApplication)++-- | The identifier of a customer managed key.+createApplication_kmsKeyId :: Lens.Lens' CreateApplication (Prelude.Maybe Prelude.Text)+createApplication_kmsKeyId = Lens.lens (\CreateApplication' {kmsKeyId} -> kmsKeyId) (\s@CreateApplication' {} a -> s {kmsKeyId = a} :: CreateApplication)++-- | A list of tags to apply to the application.+createApplication_tags :: Lens.Lens' CreateApplication (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createApplication_tags = Lens.lens (\CreateApplication' {tags} -> tags) (\s@CreateApplication' {} a -> s {tags = a} :: CreateApplication) Prelude.. Lens.mapping Lens.coerced++-- | The application definition for this application. You can specify either+-- inline JSON or an S3 bucket location.+createApplication_definition :: Lens.Lens' CreateApplication Definition+createApplication_definition = Lens.lens (\CreateApplication' {definition} -> definition) (\s@CreateApplication' {} a -> s {definition = a} :: CreateApplication)++-- | The type of the target platform for this application.+createApplication_engineType :: Lens.Lens' CreateApplication EngineType+createApplication_engineType = Lens.lens (\CreateApplication' {engineType} -> engineType) (\s@CreateApplication' {} a -> s {engineType = a} :: CreateApplication)++-- | The unique identifier of the application.+createApplication_name :: Lens.Lens' CreateApplication Prelude.Text+createApplication_name = Lens.lens (\CreateApplication' {name} -> name) (\s@CreateApplication' {} a -> s {name = a} :: CreateApplication)++instance Core.AWSRequest CreateApplication where+  type+    AWSResponse CreateApplication =+      CreateApplicationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          CreateApplicationResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "applicationArn")+            Prelude.<*> (x Data..:> "applicationId")+            Prelude.<*> (x Data..:> "applicationVersion")+      )++instance Prelude.Hashable CreateApplication where+  hashWithSalt _salt CreateApplication' {..} =+    _salt+      `Prelude.hashWithSalt` clientToken+      `Prelude.hashWithSalt` description+      `Prelude.hashWithSalt` kmsKeyId+      `Prelude.hashWithSalt` tags+      `Prelude.hashWithSalt` definition+      `Prelude.hashWithSalt` engineType+      `Prelude.hashWithSalt` name++instance Prelude.NFData CreateApplication where+  rnf CreateApplication' {..} =+    Prelude.rnf clientToken+      `Prelude.seq` Prelude.rnf description+      `Prelude.seq` Prelude.rnf kmsKeyId+      `Prelude.seq` Prelude.rnf tags+      `Prelude.seq` Prelude.rnf definition+      `Prelude.seq` Prelude.rnf engineType+      `Prelude.seq` Prelude.rnf name++instance Data.ToHeaders CreateApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateApplication where+  toJSON CreateApplication' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("clientToken" Data..=) Prelude.<$> clientToken,+            ("description" Data..=) Prelude.<$> description,+            ("kmsKeyId" Data..=) Prelude.<$> kmsKeyId,+            ("tags" Data..=) Prelude.<$> tags,+            Prelude.Just ("definition" Data..= definition),+            Prelude.Just ("engineType" Data..= engineType),+            Prelude.Just ("name" Data..= name)+          ]+      )++instance Data.ToPath CreateApplication where+  toPath = Prelude.const "/applications"++instance Data.ToQuery CreateApplication where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateApplicationResponse' smart constructor.+data CreateApplicationResponse = CreateApplicationResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The Amazon Resource Name (ARN) of the application.+    applicationArn :: Prelude.Text,+    -- | The unique application identifier.+    applicationId :: Prelude.Text,+    -- | The version number of the application.+    applicationVersion :: Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createApplicationResponse_httpStatus' - The response's http status code.+--+-- 'applicationArn', 'createApplicationResponse_applicationArn' - The Amazon Resource Name (ARN) of the application.+--+-- 'applicationId', 'createApplicationResponse_applicationId' - The unique application identifier.+--+-- 'applicationVersion', 'createApplicationResponse_applicationVersion' - The version number of the application.+newCreateApplicationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'applicationArn'+  Prelude.Text ->+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'applicationVersion'+  Prelude.Natural ->+  CreateApplicationResponse+newCreateApplicationResponse+  pHttpStatus_+  pApplicationArn_+  pApplicationId_+  pApplicationVersion_ =+    CreateApplicationResponse'+      { httpStatus =+          pHttpStatus_,+        applicationArn = pApplicationArn_,+        applicationId = pApplicationId_,+        applicationVersion = pApplicationVersion_+      }++-- | The response's http status code.+createApplicationResponse_httpStatus :: Lens.Lens' CreateApplicationResponse Prelude.Int+createApplicationResponse_httpStatus = Lens.lens (\CreateApplicationResponse' {httpStatus} -> httpStatus) (\s@CreateApplicationResponse' {} a -> s {httpStatus = a} :: CreateApplicationResponse)++-- | The Amazon Resource Name (ARN) of the application.+createApplicationResponse_applicationArn :: Lens.Lens' CreateApplicationResponse Prelude.Text+createApplicationResponse_applicationArn = Lens.lens (\CreateApplicationResponse' {applicationArn} -> applicationArn) (\s@CreateApplicationResponse' {} a -> s {applicationArn = a} :: CreateApplicationResponse)++-- | The unique application identifier.+createApplicationResponse_applicationId :: Lens.Lens' CreateApplicationResponse Prelude.Text+createApplicationResponse_applicationId = Lens.lens (\CreateApplicationResponse' {applicationId} -> applicationId) (\s@CreateApplicationResponse' {} a -> s {applicationId = a} :: CreateApplicationResponse)++-- | The version number of the application.+createApplicationResponse_applicationVersion :: Lens.Lens' CreateApplicationResponse Prelude.Natural+createApplicationResponse_applicationVersion = Lens.lens (\CreateApplicationResponse' {applicationVersion} -> applicationVersion) (\s@CreateApplicationResponse' {} a -> s {applicationVersion = a} :: CreateApplicationResponse)++instance Prelude.NFData CreateApplicationResponse where+  rnf CreateApplicationResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationArn+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf applicationVersion
+ gen/Amazonka/M2/CreateDataSetImportTask.hs view
@@ -0,0 +1,235 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.CreateDataSetImportTask+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Starts a data set import task for a specific application.+module Amazonka.M2.CreateDataSetImportTask+  ( -- * Creating a Request+    CreateDataSetImportTask (..),+    newCreateDataSetImportTask,++    -- * Request Lenses+    createDataSetImportTask_clientToken,+    createDataSetImportTask_applicationId,+    createDataSetImportTask_importConfig,++    -- * Destructuring the Response+    CreateDataSetImportTaskResponse (..),+    newCreateDataSetImportTaskResponse,++    -- * Response Lenses+    createDataSetImportTaskResponse_httpStatus,+    createDataSetImportTaskResponse_taskId,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateDataSetImportTask' smart constructor.+data CreateDataSetImportTask = CreateDataSetImportTask'+  { -- | Unique, case-sensitive identifier you provide to ensure the idempotency+    -- of the request to create a data set import. The service generates the+    -- clientToken when the API call is triggered. The token expires after one+    -- hour, so if you retry the API within this timeframe with the same+    -- clientToken, you will get the same response. The service also handles+    -- deleting the clientToken after it expires.+    clientToken :: Prelude.Maybe Prelude.Text,+    -- | The unique identifier of the application for which you want to import+    -- data sets.+    applicationId :: Prelude.Text,+    -- | The data set import task configuration.+    importConfig :: DataSetImportConfig+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDataSetImportTask' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createDataSetImportTask_clientToken' - Unique, case-sensitive identifier you provide to ensure the idempotency+-- of the request to create a data set import. The service generates the+-- clientToken when the API call is triggered. The token expires after one+-- hour, so if you retry the API within this timeframe with the same+-- clientToken, you will get the same response. The service also handles+-- deleting the clientToken after it expires.+--+-- 'applicationId', 'createDataSetImportTask_applicationId' - The unique identifier of the application for which you want to import+-- data sets.+--+-- 'importConfig', 'createDataSetImportTask_importConfig' - The data set import task configuration.+newCreateDataSetImportTask ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'importConfig'+  DataSetImportConfig ->+  CreateDataSetImportTask+newCreateDataSetImportTask+  pApplicationId_+  pImportConfig_ =+    CreateDataSetImportTask'+      { clientToken =+          Prelude.Nothing,+        applicationId = pApplicationId_,+        importConfig = pImportConfig_+      }++-- | Unique, case-sensitive identifier you provide to ensure the idempotency+-- of the request to create a data set import. The service generates the+-- clientToken when the API call is triggered. The token expires after one+-- hour, so if you retry the API within this timeframe with the same+-- clientToken, you will get the same response. The service also handles+-- deleting the clientToken after it expires.+createDataSetImportTask_clientToken :: Lens.Lens' CreateDataSetImportTask (Prelude.Maybe Prelude.Text)+createDataSetImportTask_clientToken = Lens.lens (\CreateDataSetImportTask' {clientToken} -> clientToken) (\s@CreateDataSetImportTask' {} a -> s {clientToken = a} :: CreateDataSetImportTask)++-- | The unique identifier of the application for which you want to import+-- data sets.+createDataSetImportTask_applicationId :: Lens.Lens' CreateDataSetImportTask Prelude.Text+createDataSetImportTask_applicationId = Lens.lens (\CreateDataSetImportTask' {applicationId} -> applicationId) (\s@CreateDataSetImportTask' {} a -> s {applicationId = a} :: CreateDataSetImportTask)++-- | The data set import task configuration.+createDataSetImportTask_importConfig :: Lens.Lens' CreateDataSetImportTask DataSetImportConfig+createDataSetImportTask_importConfig = Lens.lens (\CreateDataSetImportTask' {importConfig} -> importConfig) (\s@CreateDataSetImportTask' {} a -> s {importConfig = a} :: CreateDataSetImportTask)++instance Core.AWSRequest CreateDataSetImportTask where+  type+    AWSResponse CreateDataSetImportTask =+      CreateDataSetImportTaskResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          CreateDataSetImportTaskResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "taskId")+      )++instance Prelude.Hashable CreateDataSetImportTask where+  hashWithSalt _salt CreateDataSetImportTask' {..} =+    _salt+      `Prelude.hashWithSalt` clientToken+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` importConfig++instance Prelude.NFData CreateDataSetImportTask where+  rnf CreateDataSetImportTask' {..} =+    Prelude.rnf clientToken+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf importConfig++instance Data.ToHeaders CreateDataSetImportTask where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateDataSetImportTask where+  toJSON CreateDataSetImportTask' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("clientToken" Data..=) Prelude.<$> clientToken,+            Prelude.Just ("importConfig" Data..= importConfig)+          ]+      )++instance Data.ToPath CreateDataSetImportTask where+  toPath CreateDataSetImportTask' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/dataset-import-task"+      ]++instance Data.ToQuery CreateDataSetImportTask where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateDataSetImportTaskResponse' smart constructor.+data CreateDataSetImportTaskResponse = CreateDataSetImportTaskResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The task identifier. This operation is asynchronous. Use this identifier+    -- with the GetDataSetImportTask operation to obtain the status of this+    -- task.+    taskId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDataSetImportTaskResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createDataSetImportTaskResponse_httpStatus' - The response's http status code.+--+-- 'taskId', 'createDataSetImportTaskResponse_taskId' - The task identifier. This operation is asynchronous. Use this identifier+-- with the GetDataSetImportTask operation to obtain the status of this+-- task.+newCreateDataSetImportTaskResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'taskId'+  Prelude.Text ->+  CreateDataSetImportTaskResponse+newCreateDataSetImportTaskResponse+  pHttpStatus_+  pTaskId_ =+    CreateDataSetImportTaskResponse'+      { httpStatus =+          pHttpStatus_,+        taskId = pTaskId_+      }++-- | The response's http status code.+createDataSetImportTaskResponse_httpStatus :: Lens.Lens' CreateDataSetImportTaskResponse Prelude.Int+createDataSetImportTaskResponse_httpStatus = Lens.lens (\CreateDataSetImportTaskResponse' {httpStatus} -> httpStatus) (\s@CreateDataSetImportTaskResponse' {} a -> s {httpStatus = a} :: CreateDataSetImportTaskResponse)++-- | The task identifier. This operation is asynchronous. Use this identifier+-- with the GetDataSetImportTask operation to obtain the status of this+-- task.+createDataSetImportTaskResponse_taskId :: Lens.Lens' CreateDataSetImportTaskResponse Prelude.Text+createDataSetImportTaskResponse_taskId = Lens.lens (\CreateDataSetImportTaskResponse' {taskId} -> taskId) (\s@CreateDataSetImportTaskResponse' {} a -> s {taskId = a} :: CreateDataSetImportTaskResponse)++instance+  Prelude.NFData+    CreateDataSetImportTaskResponse+  where+  rnf CreateDataSetImportTaskResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf taskId
+ gen/Amazonka/M2/CreateDeployment.hs view
@@ -0,0 +1,244 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.CreateDeployment+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates and starts a deployment to deploy an application into a runtime+-- environment.+module Amazonka.M2.CreateDeployment+  ( -- * Creating a Request+    CreateDeployment (..),+    newCreateDeployment,++    -- * Request Lenses+    createDeployment_clientToken,+    createDeployment_applicationId,+    createDeployment_applicationVersion,+    createDeployment_environmentId,++    -- * Destructuring the Response+    CreateDeploymentResponse (..),+    newCreateDeploymentResponse,++    -- * Response Lenses+    createDeploymentResponse_httpStatus,+    createDeploymentResponse_deploymentId,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateDeployment' smart constructor.+data CreateDeployment = CreateDeployment'+  { -- | Unique, case-sensitive identifier you provide to ensure the idempotency+    -- of the request to create a deployment. The service generates the+    -- clientToken when the API call is triggered. The token expires after one+    -- hour, so if you retry the API within this timeframe with the same+    -- clientToken, you will get the same response. The service also handles+    -- deleting the clientToken after it expires.+    clientToken :: Prelude.Maybe Prelude.Text,+    -- | The application identifier.+    applicationId :: Prelude.Text,+    -- | The version of the application to deploy.+    applicationVersion :: Prelude.Natural,+    -- | The identifier of the runtime environment where you want to deploy this+    -- application.+    environmentId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDeployment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createDeployment_clientToken' - Unique, case-sensitive identifier you provide to ensure the idempotency+-- of the request to create a deployment. The service generates the+-- clientToken when the API call is triggered. The token expires after one+-- hour, so if you retry the API within this timeframe with the same+-- clientToken, you will get the same response. The service also handles+-- deleting the clientToken after it expires.+--+-- 'applicationId', 'createDeployment_applicationId' - The application identifier.+--+-- 'applicationVersion', 'createDeployment_applicationVersion' - The version of the application to deploy.+--+-- 'environmentId', 'createDeployment_environmentId' - The identifier of the runtime environment where you want to deploy this+-- application.+newCreateDeployment ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'applicationVersion'+  Prelude.Natural ->+  -- | 'environmentId'+  Prelude.Text ->+  CreateDeployment+newCreateDeployment+  pApplicationId_+  pApplicationVersion_+  pEnvironmentId_ =+    CreateDeployment'+      { clientToken = Prelude.Nothing,+        applicationId = pApplicationId_,+        applicationVersion = pApplicationVersion_,+        environmentId = pEnvironmentId_+      }++-- | Unique, case-sensitive identifier you provide to ensure the idempotency+-- of the request to create a deployment. The service generates the+-- clientToken when the API call is triggered. The token expires after one+-- hour, so if you retry the API within this timeframe with the same+-- clientToken, you will get the same response. The service also handles+-- deleting the clientToken after it expires.+createDeployment_clientToken :: Lens.Lens' CreateDeployment (Prelude.Maybe Prelude.Text)+createDeployment_clientToken = Lens.lens (\CreateDeployment' {clientToken} -> clientToken) (\s@CreateDeployment' {} a -> s {clientToken = a} :: CreateDeployment)++-- | The application identifier.+createDeployment_applicationId :: Lens.Lens' CreateDeployment Prelude.Text+createDeployment_applicationId = Lens.lens (\CreateDeployment' {applicationId} -> applicationId) (\s@CreateDeployment' {} a -> s {applicationId = a} :: CreateDeployment)++-- | The version of the application to deploy.+createDeployment_applicationVersion :: Lens.Lens' CreateDeployment Prelude.Natural+createDeployment_applicationVersion = Lens.lens (\CreateDeployment' {applicationVersion} -> applicationVersion) (\s@CreateDeployment' {} a -> s {applicationVersion = a} :: CreateDeployment)++-- | The identifier of the runtime environment where you want to deploy this+-- application.+createDeployment_environmentId :: Lens.Lens' CreateDeployment Prelude.Text+createDeployment_environmentId = Lens.lens (\CreateDeployment' {environmentId} -> environmentId) (\s@CreateDeployment' {} a -> s {environmentId = a} :: CreateDeployment)++instance Core.AWSRequest CreateDeployment where+  type+    AWSResponse CreateDeployment =+      CreateDeploymentResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          CreateDeploymentResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "deploymentId")+      )++instance Prelude.Hashable CreateDeployment where+  hashWithSalt _salt CreateDeployment' {..} =+    _salt+      `Prelude.hashWithSalt` clientToken+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` applicationVersion+      `Prelude.hashWithSalt` environmentId++instance Prelude.NFData CreateDeployment where+  rnf CreateDeployment' {..} =+    Prelude.rnf clientToken+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf applicationVersion+      `Prelude.seq` Prelude.rnf environmentId++instance Data.ToHeaders CreateDeployment where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateDeployment where+  toJSON CreateDeployment' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("clientToken" Data..=) Prelude.<$> clientToken,+            Prelude.Just+              ("applicationVersion" Data..= applicationVersion),+            Prelude.Just+              ("environmentId" Data..= environmentId)+          ]+      )++instance Data.ToPath CreateDeployment where+  toPath CreateDeployment' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/deployments"+      ]++instance Data.ToQuery CreateDeployment where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateDeploymentResponse' smart constructor.+data CreateDeploymentResponse = CreateDeploymentResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The unique identifier of the deployment.+    deploymentId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDeploymentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createDeploymentResponse_httpStatus' - The response's http status code.+--+-- 'deploymentId', 'createDeploymentResponse_deploymentId' - The unique identifier of the deployment.+newCreateDeploymentResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'deploymentId'+  Prelude.Text ->+  CreateDeploymentResponse+newCreateDeploymentResponse+  pHttpStatus_+  pDeploymentId_ =+    CreateDeploymentResponse'+      { httpStatus =+          pHttpStatus_,+        deploymentId = pDeploymentId_+      }++-- | The response's http status code.+createDeploymentResponse_httpStatus :: Lens.Lens' CreateDeploymentResponse Prelude.Int+createDeploymentResponse_httpStatus = Lens.lens (\CreateDeploymentResponse' {httpStatus} -> httpStatus) (\s@CreateDeploymentResponse' {} a -> s {httpStatus = a} :: CreateDeploymentResponse)++-- | The unique identifier of the deployment.+createDeploymentResponse_deploymentId :: Lens.Lens' CreateDeploymentResponse Prelude.Text+createDeploymentResponse_deploymentId = Lens.lens (\CreateDeploymentResponse' {deploymentId} -> deploymentId) (\s@CreateDeploymentResponse' {} a -> s {deploymentId = a} :: CreateDeploymentResponse)++instance Prelude.NFData CreateDeploymentResponse where+  rnf CreateDeploymentResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf deploymentId
+ gen/Amazonka/M2/CreateEnvironment.hs view
@@ -0,0 +1,384 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.CreateEnvironment+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a runtime environment for a given runtime engine.+module Amazonka.M2.CreateEnvironment+  ( -- * Creating a Request+    CreateEnvironment (..),+    newCreateEnvironment,++    -- * Request Lenses+    createEnvironment_clientToken,+    createEnvironment_description,+    createEnvironment_engineVersion,+    createEnvironment_highAvailabilityConfig,+    createEnvironment_kmsKeyId,+    createEnvironment_preferredMaintenanceWindow,+    createEnvironment_publiclyAccessible,+    createEnvironment_securityGroupIds,+    createEnvironment_storageConfigurations,+    createEnvironment_subnetIds,+    createEnvironment_tags,+    createEnvironment_engineType,+    createEnvironment_instanceType,+    createEnvironment_name,++    -- * Destructuring the Response+    CreateEnvironmentResponse (..),+    newCreateEnvironmentResponse,++    -- * Response Lenses+    createEnvironmentResponse_httpStatus,+    createEnvironmentResponse_environmentId,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateEnvironment' smart constructor.+data CreateEnvironment = CreateEnvironment'+  { -- | Unique, case-sensitive identifier you provide to ensure the idempotency+    -- of the request to create an environment. The service generates the+    -- clientToken when the API call is triggered. The token expires after one+    -- hour, so if you retry the API within this timeframe with the same+    -- clientToken, you will get the same response. The service also handles+    -- deleting the clientToken after it expires.+    clientToken :: Prelude.Maybe Prelude.Text,+    -- | The description of the runtime environment.+    description :: Prelude.Maybe Prelude.Text,+    -- | The version of the engine type for the runtime environment.+    engineVersion :: Prelude.Maybe Prelude.Text,+    -- | The details of a high availability configuration for this runtime+    -- environment.+    highAvailabilityConfig :: Prelude.Maybe HighAvailabilityConfig,+    -- | The identifier of a customer managed key.+    kmsKeyId :: Prelude.Maybe Prelude.Text,+    -- | Configures the maintenance window you want for the runtime environment.+    -- If you do not provide a value, a random system-generated value will be+    -- assigned.+    preferredMaintenanceWindow :: Prelude.Maybe Prelude.Text,+    -- | Specifies whether the runtime environment is publicly accessible.+    publiclyAccessible :: Prelude.Maybe Prelude.Bool,+    -- | The list of security groups for the VPC associated with this runtime+    -- environment.+    securityGroupIds :: Prelude.Maybe [Prelude.Text],+    -- | Optional. The storage configurations for this runtime environment.+    storageConfigurations :: Prelude.Maybe [StorageConfiguration],+    -- | The list of subnets associated with the VPC for this runtime+    -- environment.+    subnetIds :: Prelude.Maybe [Prelude.Text],+    -- | The tags for the runtime environment.+    tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+    -- | The engine type for the runtime environment.+    engineType :: EngineType,+    -- | The type of instance for the runtime environment.+    instanceType :: Prelude.Text,+    -- | The name of the runtime environment. Must be unique within the account.+    name :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createEnvironment_clientToken' - Unique, case-sensitive identifier you provide to ensure the idempotency+-- of the request to create an environment. The service generates the+-- clientToken when the API call is triggered. The token expires after one+-- hour, so if you retry the API within this timeframe with the same+-- clientToken, you will get the same response. The service also handles+-- deleting the clientToken after it expires.+--+-- 'description', 'createEnvironment_description' - The description of the runtime environment.+--+-- 'engineVersion', 'createEnvironment_engineVersion' - The version of the engine type for the runtime environment.+--+-- 'highAvailabilityConfig', 'createEnvironment_highAvailabilityConfig' - The details of a high availability configuration for this runtime+-- environment.+--+-- 'kmsKeyId', 'createEnvironment_kmsKeyId' - The identifier of a customer managed key.+--+-- 'preferredMaintenanceWindow', 'createEnvironment_preferredMaintenanceWindow' - Configures the maintenance window you want for the runtime environment.+-- If you do not provide a value, a random system-generated value will be+-- assigned.+--+-- 'publiclyAccessible', 'createEnvironment_publiclyAccessible' - Specifies whether the runtime environment is publicly accessible.+--+-- 'securityGroupIds', 'createEnvironment_securityGroupIds' - The list of security groups for the VPC associated with this runtime+-- environment.+--+-- 'storageConfigurations', 'createEnvironment_storageConfigurations' - Optional. The storage configurations for this runtime environment.+--+-- 'subnetIds', 'createEnvironment_subnetIds' - The list of subnets associated with the VPC for this runtime+-- environment.+--+-- 'tags', 'createEnvironment_tags' - The tags for the runtime environment.+--+-- 'engineType', 'createEnvironment_engineType' - The engine type for the runtime environment.+--+-- 'instanceType', 'createEnvironment_instanceType' - The type of instance for the runtime environment.+--+-- 'name', 'createEnvironment_name' - The name of the runtime environment. Must be unique within the account.+newCreateEnvironment ::+  -- | 'engineType'+  EngineType ->+  -- | 'instanceType'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  CreateEnvironment+newCreateEnvironment+  pEngineType_+  pInstanceType_+  pName_ =+    CreateEnvironment'+      { clientToken = Prelude.Nothing,+        description = Prelude.Nothing,+        engineVersion = Prelude.Nothing,+        highAvailabilityConfig = Prelude.Nothing,+        kmsKeyId = Prelude.Nothing,+        preferredMaintenanceWindow = Prelude.Nothing,+        publiclyAccessible = Prelude.Nothing,+        securityGroupIds = Prelude.Nothing,+        storageConfigurations = Prelude.Nothing,+        subnetIds = Prelude.Nothing,+        tags = Prelude.Nothing,+        engineType = pEngineType_,+        instanceType = pInstanceType_,+        name = pName_+      }++-- | Unique, case-sensitive identifier you provide to ensure the idempotency+-- of the request to create an environment. The service generates the+-- clientToken when the API call is triggered. The token expires after one+-- hour, so if you retry the API within this timeframe with the same+-- clientToken, you will get the same response. The service also handles+-- deleting the clientToken after it expires.+createEnvironment_clientToken :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_clientToken = Lens.lens (\CreateEnvironment' {clientToken} -> clientToken) (\s@CreateEnvironment' {} a -> s {clientToken = a} :: CreateEnvironment)++-- | The description of the runtime environment.+createEnvironment_description :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_description = Lens.lens (\CreateEnvironment' {description} -> description) (\s@CreateEnvironment' {} a -> s {description = a} :: CreateEnvironment)++-- | The version of the engine type for the runtime environment.+createEnvironment_engineVersion :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_engineVersion = Lens.lens (\CreateEnvironment' {engineVersion} -> engineVersion) (\s@CreateEnvironment' {} a -> s {engineVersion = a} :: CreateEnvironment)++-- | The details of a high availability configuration for this runtime+-- environment.+createEnvironment_highAvailabilityConfig :: Lens.Lens' CreateEnvironment (Prelude.Maybe HighAvailabilityConfig)+createEnvironment_highAvailabilityConfig = Lens.lens (\CreateEnvironment' {highAvailabilityConfig} -> highAvailabilityConfig) (\s@CreateEnvironment' {} a -> s {highAvailabilityConfig = a} :: CreateEnvironment)++-- | The identifier of a customer managed key.+createEnvironment_kmsKeyId :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_kmsKeyId = Lens.lens (\CreateEnvironment' {kmsKeyId} -> kmsKeyId) (\s@CreateEnvironment' {} a -> s {kmsKeyId = a} :: CreateEnvironment)++-- | Configures the maintenance window you want for the runtime environment.+-- If you do not provide a value, a random system-generated value will be+-- assigned.+createEnvironment_preferredMaintenanceWindow :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_preferredMaintenanceWindow = Lens.lens (\CreateEnvironment' {preferredMaintenanceWindow} -> preferredMaintenanceWindow) (\s@CreateEnvironment' {} a -> s {preferredMaintenanceWindow = a} :: CreateEnvironment)++-- | Specifies whether the runtime environment is publicly accessible.+createEnvironment_publiclyAccessible :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Bool)+createEnvironment_publiclyAccessible = Lens.lens (\CreateEnvironment' {publiclyAccessible} -> publiclyAccessible) (\s@CreateEnvironment' {} a -> s {publiclyAccessible = a} :: CreateEnvironment)++-- | The list of security groups for the VPC associated with this runtime+-- environment.+createEnvironment_securityGroupIds :: Lens.Lens' CreateEnvironment (Prelude.Maybe [Prelude.Text])+createEnvironment_securityGroupIds = Lens.lens (\CreateEnvironment' {securityGroupIds} -> securityGroupIds) (\s@CreateEnvironment' {} a -> s {securityGroupIds = a} :: CreateEnvironment) Prelude.. Lens.mapping Lens.coerced++-- | Optional. The storage configurations for this runtime environment.+createEnvironment_storageConfigurations :: Lens.Lens' CreateEnvironment (Prelude.Maybe [StorageConfiguration])+createEnvironment_storageConfigurations = Lens.lens (\CreateEnvironment' {storageConfigurations} -> storageConfigurations) (\s@CreateEnvironment' {} a -> s {storageConfigurations = a} :: CreateEnvironment) Prelude.. Lens.mapping Lens.coerced++-- | The list of subnets associated with the VPC for this runtime+-- environment.+createEnvironment_subnetIds :: Lens.Lens' CreateEnvironment (Prelude.Maybe [Prelude.Text])+createEnvironment_subnetIds = Lens.lens (\CreateEnvironment' {subnetIds} -> subnetIds) (\s@CreateEnvironment' {} a -> s {subnetIds = a} :: CreateEnvironment) Prelude.. Lens.mapping Lens.coerced++-- | The tags for the runtime environment.+createEnvironment_tags :: Lens.Lens' CreateEnvironment (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createEnvironment_tags = Lens.lens (\CreateEnvironment' {tags} -> tags) (\s@CreateEnvironment' {} a -> s {tags = a} :: CreateEnvironment) Prelude.. Lens.mapping Lens.coerced++-- | The engine type for the runtime environment.+createEnvironment_engineType :: Lens.Lens' CreateEnvironment EngineType+createEnvironment_engineType = Lens.lens (\CreateEnvironment' {engineType} -> engineType) (\s@CreateEnvironment' {} a -> s {engineType = a} :: CreateEnvironment)++-- | The type of instance for the runtime environment.+createEnvironment_instanceType :: Lens.Lens' CreateEnvironment Prelude.Text+createEnvironment_instanceType = Lens.lens (\CreateEnvironment' {instanceType} -> instanceType) (\s@CreateEnvironment' {} a -> s {instanceType = a} :: CreateEnvironment)++-- | The name of the runtime environment. Must be unique within the account.+createEnvironment_name :: Lens.Lens' CreateEnvironment Prelude.Text+createEnvironment_name = Lens.lens (\CreateEnvironment' {name} -> name) (\s@CreateEnvironment' {} a -> s {name = a} :: CreateEnvironment)++instance Core.AWSRequest CreateEnvironment where+  type+    AWSResponse CreateEnvironment =+      CreateEnvironmentResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          CreateEnvironmentResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "environmentId")+      )++instance Prelude.Hashable CreateEnvironment where+  hashWithSalt _salt CreateEnvironment' {..} =+    _salt+      `Prelude.hashWithSalt` clientToken+      `Prelude.hashWithSalt` description+      `Prelude.hashWithSalt` engineVersion+      `Prelude.hashWithSalt` highAvailabilityConfig+      `Prelude.hashWithSalt` kmsKeyId+      `Prelude.hashWithSalt` preferredMaintenanceWindow+      `Prelude.hashWithSalt` publiclyAccessible+      `Prelude.hashWithSalt` securityGroupIds+      `Prelude.hashWithSalt` storageConfigurations+      `Prelude.hashWithSalt` subnetIds+      `Prelude.hashWithSalt` tags+      `Prelude.hashWithSalt` engineType+      `Prelude.hashWithSalt` instanceType+      `Prelude.hashWithSalt` name++instance Prelude.NFData CreateEnvironment where+  rnf CreateEnvironment' {..} =+    Prelude.rnf clientToken+      `Prelude.seq` Prelude.rnf description+      `Prelude.seq` Prelude.rnf engineVersion+      `Prelude.seq` Prelude.rnf highAvailabilityConfig+      `Prelude.seq` Prelude.rnf kmsKeyId+      `Prelude.seq` Prelude.rnf preferredMaintenanceWindow+      `Prelude.seq` Prelude.rnf publiclyAccessible+      `Prelude.seq` Prelude.rnf securityGroupIds+      `Prelude.seq` Prelude.rnf storageConfigurations+      `Prelude.seq` Prelude.rnf subnetIds+      `Prelude.seq` Prelude.rnf tags+      `Prelude.seq` Prelude.rnf engineType+      `Prelude.seq` Prelude.rnf instanceType+      `Prelude.seq` Prelude.rnf name++instance Data.ToHeaders CreateEnvironment where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateEnvironment where+  toJSON CreateEnvironment' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("clientToken" Data..=) Prelude.<$> clientToken,+            ("description" Data..=) Prelude.<$> description,+            ("engineVersion" Data..=) Prelude.<$> engineVersion,+            ("highAvailabilityConfig" Data..=)+              Prelude.<$> highAvailabilityConfig,+            ("kmsKeyId" Data..=) Prelude.<$> kmsKeyId,+            ("preferredMaintenanceWindow" Data..=)+              Prelude.<$> preferredMaintenanceWindow,+            ("publiclyAccessible" Data..=)+              Prelude.<$> publiclyAccessible,+            ("securityGroupIds" Data..=)+              Prelude.<$> securityGroupIds,+            ("storageConfigurations" Data..=)+              Prelude.<$> storageConfigurations,+            ("subnetIds" Data..=) Prelude.<$> subnetIds,+            ("tags" Data..=) Prelude.<$> tags,+            Prelude.Just ("engineType" Data..= engineType),+            Prelude.Just ("instanceType" Data..= instanceType),+            Prelude.Just ("name" Data..= name)+          ]+      )++instance Data.ToPath CreateEnvironment where+  toPath = Prelude.const "/environments"++instance Data.ToQuery CreateEnvironment where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateEnvironmentResponse' smart constructor.+data CreateEnvironmentResponse = CreateEnvironmentResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The unique identifier of the runtime environment.+    environmentId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createEnvironmentResponse_httpStatus' - The response's http status code.+--+-- 'environmentId', 'createEnvironmentResponse_environmentId' - The unique identifier of the runtime environment.+newCreateEnvironmentResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'environmentId'+  Prelude.Text ->+  CreateEnvironmentResponse+newCreateEnvironmentResponse+  pHttpStatus_+  pEnvironmentId_ =+    CreateEnvironmentResponse'+      { httpStatus =+          pHttpStatus_,+        environmentId = pEnvironmentId_+      }++-- | The response's http status code.+createEnvironmentResponse_httpStatus :: Lens.Lens' CreateEnvironmentResponse Prelude.Int+createEnvironmentResponse_httpStatus = Lens.lens (\CreateEnvironmentResponse' {httpStatus} -> httpStatus) (\s@CreateEnvironmentResponse' {} a -> s {httpStatus = a} :: CreateEnvironmentResponse)++-- | The unique identifier of the runtime environment.+createEnvironmentResponse_environmentId :: Lens.Lens' CreateEnvironmentResponse Prelude.Text+createEnvironmentResponse_environmentId = Lens.lens (\CreateEnvironmentResponse' {environmentId} -> environmentId) (\s@CreateEnvironmentResponse' {} a -> s {environmentId = a} :: CreateEnvironmentResponse)++instance Prelude.NFData CreateEnvironmentResponse where+  rnf CreateEnvironmentResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf environmentId
+ gen/Amazonka/M2/DeleteApplication.hs view
@@ -0,0 +1,148 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.DeleteApplication+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a specific application. You cannot delete a running application.+module Amazonka.M2.DeleteApplication+  ( -- * Creating a Request+    DeleteApplication (..),+    newDeleteApplication,++    -- * Request Lenses+    deleteApplication_applicationId,++    -- * Destructuring the Response+    DeleteApplicationResponse (..),+    newDeleteApplicationResponse,++    -- * Response Lenses+    deleteApplicationResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteApplication' smart constructor.+data DeleteApplication = DeleteApplication'+  { -- | The unique identifier of the application you want to delete.+    applicationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'deleteApplication_applicationId' - The unique identifier of the application you want to delete.+newDeleteApplication ::+  -- | 'applicationId'+  Prelude.Text ->+  DeleteApplication+newDeleteApplication pApplicationId_ =+  DeleteApplication' {applicationId = pApplicationId_}++-- | The unique identifier of the application you want to delete.+deleteApplication_applicationId :: Lens.Lens' DeleteApplication Prelude.Text+deleteApplication_applicationId = Lens.lens (\DeleteApplication' {applicationId} -> applicationId) (\s@DeleteApplication' {} a -> s {applicationId = a} :: DeleteApplication)++instance Core.AWSRequest DeleteApplication where+  type+    AWSResponse DeleteApplication =+      DeleteApplicationResponse+  request overrides =+    Request.delete (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          DeleteApplicationResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable DeleteApplication where+  hashWithSalt _salt DeleteApplication' {..} =+    _salt `Prelude.hashWithSalt` applicationId++instance Prelude.NFData DeleteApplication where+  rnf DeleteApplication' {..} =+    Prelude.rnf applicationId++instance Data.ToHeaders DeleteApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath DeleteApplication where+  toPath DeleteApplication' {..} =+    Prelude.mconcat+      ["/applications/", Data.toBS applicationId]++instance Data.ToQuery DeleteApplication where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteApplicationResponse' smart constructor.+data DeleteApplicationResponse = DeleteApplicationResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteApplicationResponse_httpStatus' - The response's http status code.+newDeleteApplicationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteApplicationResponse+newDeleteApplicationResponse pHttpStatus_ =+  DeleteApplicationResponse'+    { httpStatus =+        pHttpStatus_+    }++-- | The response's http status code.+deleteApplicationResponse_httpStatus :: Lens.Lens' DeleteApplicationResponse Prelude.Int+deleteApplicationResponse_httpStatus = Lens.lens (\DeleteApplicationResponse' {httpStatus} -> httpStatus) (\s@DeleteApplicationResponse' {} a -> s {httpStatus = a} :: DeleteApplicationResponse)++instance Prelude.NFData DeleteApplicationResponse where+  rnf DeleteApplicationResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/M2/DeleteApplicationFromEnvironment.hs view
@@ -0,0 +1,200 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.DeleteApplicationFromEnvironment+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a specific application from the specific runtime environment+-- where it was previously deployed. You cannot delete a runtime+-- environment using DeleteEnvironment if any application has ever been+-- deployed to it. This API removes the association of the application with+-- the runtime environment so you can delete the environment smoothly.+module Amazonka.M2.DeleteApplicationFromEnvironment+  ( -- * Creating a Request+    DeleteApplicationFromEnvironment (..),+    newDeleteApplicationFromEnvironment,++    -- * Request Lenses+    deleteApplicationFromEnvironment_applicationId,+    deleteApplicationFromEnvironment_environmentId,++    -- * Destructuring the Response+    DeleteApplicationFromEnvironmentResponse (..),+    newDeleteApplicationFromEnvironmentResponse,++    -- * Response Lenses+    deleteApplicationFromEnvironmentResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteApplicationFromEnvironment' smart constructor.+data DeleteApplicationFromEnvironment = DeleteApplicationFromEnvironment'+  { -- | The unique identifier of the application you want to delete.+    applicationId :: Prelude.Text,+    -- | The unique identifier of the runtime environment where the application+    -- was previously deployed.+    environmentId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationFromEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'deleteApplicationFromEnvironment_applicationId' - The unique identifier of the application you want to delete.+--+-- 'environmentId', 'deleteApplicationFromEnvironment_environmentId' - The unique identifier of the runtime environment where the application+-- was previously deployed.+newDeleteApplicationFromEnvironment ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'environmentId'+  Prelude.Text ->+  DeleteApplicationFromEnvironment+newDeleteApplicationFromEnvironment+  pApplicationId_+  pEnvironmentId_ =+    DeleteApplicationFromEnvironment'+      { applicationId =+          pApplicationId_,+        environmentId = pEnvironmentId_+      }++-- | The unique identifier of the application you want to delete.+deleteApplicationFromEnvironment_applicationId :: Lens.Lens' DeleteApplicationFromEnvironment Prelude.Text+deleteApplicationFromEnvironment_applicationId = Lens.lens (\DeleteApplicationFromEnvironment' {applicationId} -> applicationId) (\s@DeleteApplicationFromEnvironment' {} a -> s {applicationId = a} :: DeleteApplicationFromEnvironment)++-- | The unique identifier of the runtime environment where the application+-- was previously deployed.+deleteApplicationFromEnvironment_environmentId :: Lens.Lens' DeleteApplicationFromEnvironment Prelude.Text+deleteApplicationFromEnvironment_environmentId = Lens.lens (\DeleteApplicationFromEnvironment' {environmentId} -> environmentId) (\s@DeleteApplicationFromEnvironment' {} a -> s {environmentId = a} :: DeleteApplicationFromEnvironment)++instance+  Core.AWSRequest+    DeleteApplicationFromEnvironment+  where+  type+    AWSResponse DeleteApplicationFromEnvironment =+      DeleteApplicationFromEnvironmentResponse+  request overrides =+    Request.delete (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          DeleteApplicationFromEnvironmentResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    DeleteApplicationFromEnvironment+  where+  hashWithSalt+    _salt+    DeleteApplicationFromEnvironment' {..} =+      _salt+        `Prelude.hashWithSalt` applicationId+        `Prelude.hashWithSalt` environmentId++instance+  Prelude.NFData+    DeleteApplicationFromEnvironment+  where+  rnf DeleteApplicationFromEnvironment' {..} =+    Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf environmentId++instance+  Data.ToHeaders+    DeleteApplicationFromEnvironment+  where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath DeleteApplicationFromEnvironment where+  toPath DeleteApplicationFromEnvironment' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/environment/",+        Data.toBS environmentId+      ]++instance+  Data.ToQuery+    DeleteApplicationFromEnvironment+  where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteApplicationFromEnvironmentResponse' smart constructor.+data DeleteApplicationFromEnvironmentResponse = DeleteApplicationFromEnvironmentResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationFromEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteApplicationFromEnvironmentResponse_httpStatus' - The response's http status code.+newDeleteApplicationFromEnvironmentResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteApplicationFromEnvironmentResponse+newDeleteApplicationFromEnvironmentResponse+  pHttpStatus_ =+    DeleteApplicationFromEnvironmentResponse'+      { httpStatus =+          pHttpStatus_+      }++-- | The response's http status code.+deleteApplicationFromEnvironmentResponse_httpStatus :: Lens.Lens' DeleteApplicationFromEnvironmentResponse Prelude.Int+deleteApplicationFromEnvironmentResponse_httpStatus = Lens.lens (\DeleteApplicationFromEnvironmentResponse' {httpStatus} -> httpStatus) (\s@DeleteApplicationFromEnvironmentResponse' {} a -> s {httpStatus = a} :: DeleteApplicationFromEnvironmentResponse)++instance+  Prelude.NFData+    DeleteApplicationFromEnvironmentResponse+  where+  rnf DeleteApplicationFromEnvironmentResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/M2/DeleteEnvironment.hs view
@@ -0,0 +1,150 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.DeleteEnvironment+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a specific runtime environment. The environment cannot contain+-- deployed applications. If it does, you must delete those applications+-- before you delete the environment.+module Amazonka.M2.DeleteEnvironment+  ( -- * Creating a Request+    DeleteEnvironment (..),+    newDeleteEnvironment,++    -- * Request Lenses+    deleteEnvironment_environmentId,++    -- * Destructuring the Response+    DeleteEnvironmentResponse (..),+    newDeleteEnvironmentResponse,++    -- * Response Lenses+    deleteEnvironmentResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteEnvironment' smart constructor.+data DeleteEnvironment = DeleteEnvironment'+  { -- | The unique identifier of the runtime environment you want to delete.+    environmentId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'environmentId', 'deleteEnvironment_environmentId' - The unique identifier of the runtime environment you want to delete.+newDeleteEnvironment ::+  -- | 'environmentId'+  Prelude.Text ->+  DeleteEnvironment+newDeleteEnvironment pEnvironmentId_ =+  DeleteEnvironment' {environmentId = pEnvironmentId_}++-- | The unique identifier of the runtime environment you want to delete.+deleteEnvironment_environmentId :: Lens.Lens' DeleteEnvironment Prelude.Text+deleteEnvironment_environmentId = Lens.lens (\DeleteEnvironment' {environmentId} -> environmentId) (\s@DeleteEnvironment' {} a -> s {environmentId = a} :: DeleteEnvironment)++instance Core.AWSRequest DeleteEnvironment where+  type+    AWSResponse DeleteEnvironment =+      DeleteEnvironmentResponse+  request overrides =+    Request.delete (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          DeleteEnvironmentResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable DeleteEnvironment where+  hashWithSalt _salt DeleteEnvironment' {..} =+    _salt `Prelude.hashWithSalt` environmentId++instance Prelude.NFData DeleteEnvironment where+  rnf DeleteEnvironment' {..} =+    Prelude.rnf environmentId++instance Data.ToHeaders DeleteEnvironment where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath DeleteEnvironment where+  toPath DeleteEnvironment' {..} =+    Prelude.mconcat+      ["/environments/", Data.toBS environmentId]++instance Data.ToQuery DeleteEnvironment where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteEnvironmentResponse' smart constructor.+data DeleteEnvironmentResponse = DeleteEnvironmentResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteEnvironmentResponse_httpStatus' - The response's http status code.+newDeleteEnvironmentResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteEnvironmentResponse+newDeleteEnvironmentResponse pHttpStatus_ =+  DeleteEnvironmentResponse'+    { httpStatus =+        pHttpStatus_+    }++-- | The response's http status code.+deleteEnvironmentResponse_httpStatus :: Lens.Lens' DeleteEnvironmentResponse Prelude.Int+deleteEnvironmentResponse_httpStatus = Lens.lens (\DeleteEnvironmentResponse' {httpStatus} -> httpStatus) (\s@DeleteEnvironmentResponse' {} a -> s {httpStatus = a} :: DeleteEnvironmentResponse)++instance Prelude.NFData DeleteEnvironmentResponse where+  rnf DeleteEnvironmentResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/M2/GetApplication.hs view
@@ -0,0 +1,430 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.GetApplication+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the details of a specific application.+module Amazonka.M2.GetApplication+  ( -- * Creating a Request+    GetApplication (..),+    newGetApplication,++    -- * Request Lenses+    getApplication_applicationId,++    -- * Destructuring the Response+    GetApplicationResponse (..),+    newGetApplicationResponse,++    -- * Response Lenses+    getApplicationResponse_deployedVersion,+    getApplicationResponse_description,+    getApplicationResponse_environmentId,+    getApplicationResponse_kmsKeyId,+    getApplicationResponse_lastStartTime,+    getApplicationResponse_listenerArns,+    getApplicationResponse_listenerPorts,+    getApplicationResponse_loadBalancerDnsName,+    getApplicationResponse_logGroups,+    getApplicationResponse_statusReason,+    getApplicationResponse_tags,+    getApplicationResponse_targetGroupArns,+    getApplicationResponse_httpStatus,+    getApplicationResponse_applicationArn,+    getApplicationResponse_applicationId,+    getApplicationResponse_creationTime,+    getApplicationResponse_engineType,+    getApplicationResponse_latestVersion,+    getApplicationResponse_name,+    getApplicationResponse_status,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetApplication' smart constructor.+data GetApplication = GetApplication'+  { -- | The identifier of the application.+    applicationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'getApplication_applicationId' - The identifier of the application.+newGetApplication ::+  -- | 'applicationId'+  Prelude.Text ->+  GetApplication+newGetApplication pApplicationId_ =+  GetApplication' {applicationId = pApplicationId_}++-- | The identifier of the application.+getApplication_applicationId :: Lens.Lens' GetApplication Prelude.Text+getApplication_applicationId = Lens.lens (\GetApplication' {applicationId} -> applicationId) (\s@GetApplication' {} a -> s {applicationId = a} :: GetApplication)++instance Core.AWSRequest GetApplication where+  type+    AWSResponse GetApplication =+      GetApplicationResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetApplicationResponse'+            Prelude.<$> (x Data..?> "deployedVersion")+            Prelude.<*> (x Data..?> "description")+            Prelude.<*> (x Data..?> "environmentId")+            Prelude.<*> (x Data..?> "kmsKeyId")+            Prelude.<*> (x Data..?> "lastStartTime")+            Prelude.<*> (x Data..?> "listenerArns")+            Prelude.<*> (x Data..?> "listenerPorts")+            Prelude.<*> (x Data..?> "loadBalancerDnsName")+            Prelude.<*> (x Data..?> "logGroups" Core..!@ Prelude.mempty)+            Prelude.<*> (x Data..?> "statusReason")+            Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+            Prelude.<*> (x Data..?> "targetGroupArns")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "applicationArn")+            Prelude.<*> (x Data..:> "applicationId")+            Prelude.<*> (x Data..:> "creationTime")+            Prelude.<*> (x Data..:> "engineType")+            Prelude.<*> (x Data..:> "latestVersion")+            Prelude.<*> (x Data..:> "name")+            Prelude.<*> (x Data..:> "status")+      )++instance Prelude.Hashable GetApplication where+  hashWithSalt _salt GetApplication' {..} =+    _salt `Prelude.hashWithSalt` applicationId++instance Prelude.NFData GetApplication where+  rnf GetApplication' {..} = Prelude.rnf applicationId++instance Data.ToHeaders GetApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetApplication where+  toPath GetApplication' {..} =+    Prelude.mconcat+      ["/applications/", Data.toBS applicationId]++instance Data.ToQuery GetApplication where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetApplicationResponse' smart constructor.+data GetApplicationResponse = GetApplicationResponse'+  { -- | The version of the application that is deployed.+    deployedVersion :: Prelude.Maybe DeployedVersionSummary,+    -- | The description of the application.+    description :: Prelude.Maybe Prelude.Text,+    -- | The identifier of the runtime environment where you want to deploy the+    -- application.+    environmentId :: Prelude.Maybe Prelude.Text,+    -- | The identifier of a customer managed key.+    kmsKeyId :: Prelude.Maybe Prelude.Text,+    -- | The timestamp when you last started the application. Null until the+    -- application runs for the first time.+    lastStartTime :: Prelude.Maybe Data.POSIX,+    -- | The Amazon Resource Name (ARN) for the network load balancer listener+    -- created in your Amazon Web Services account. Amazon Web Services+    -- Mainframe Modernization creates this listener for you the first time you+    -- deploy an application.+    listenerArns :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+    -- | The port associated with the network load balancer listener created in+    -- your Amazon Web Services account.+    listenerPorts :: Prelude.Maybe (Prelude.NonEmpty Prelude.Int),+    -- | The public DNS name of the load balancer created in your Amazon Web+    -- Services account.+    loadBalancerDnsName :: Prelude.Maybe Prelude.Text,+    -- | The list of log summaries. Each log summary includes the log type as+    -- well as the log group identifier. These are CloudWatch logs. Amazon Web+    -- Services Mainframe Modernization pushes the application log to+    -- CloudWatch under the customer\'s account.+    logGroups :: Prelude.Maybe [LogGroupSummary],+    -- | The reason for the reported status.+    statusReason :: Prelude.Maybe Prelude.Text,+    -- | A list of tags associated with the application.+    tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+    -- | Returns the Amazon Resource Names (ARNs) of the target groups that are+    -- attached to the network load balancer.+    targetGroupArns :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The Amazon Resource Name (ARN) of the application.+    applicationArn :: Prelude.Text,+    -- | The identifier of the application.+    applicationId :: Prelude.Text,+    -- | The timestamp when this application was created.+    creationTime :: Data.POSIX,+    -- | The type of the target platform for the application.+    engineType :: EngineType,+    -- | The latest version of the application.+    latestVersion :: ApplicationVersionSummary,+    -- | The unique identifier of the application.+    name :: Prelude.Text,+    -- | The status of the application.+    status :: ApplicationLifecycle+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'deployedVersion', 'getApplicationResponse_deployedVersion' - The version of the application that is deployed.+--+-- 'description', 'getApplicationResponse_description' - The description of the application.+--+-- 'environmentId', 'getApplicationResponse_environmentId' - The identifier of the runtime environment where you want to deploy the+-- application.+--+-- 'kmsKeyId', 'getApplicationResponse_kmsKeyId' - The identifier of a customer managed key.+--+-- 'lastStartTime', 'getApplicationResponse_lastStartTime' - The timestamp when you last started the application. Null until the+-- application runs for the first time.+--+-- 'listenerArns', 'getApplicationResponse_listenerArns' - The Amazon Resource Name (ARN) for the network load balancer listener+-- created in your Amazon Web Services account. Amazon Web Services+-- Mainframe Modernization creates this listener for you the first time you+-- deploy an application.+--+-- 'listenerPorts', 'getApplicationResponse_listenerPorts' - The port associated with the network load balancer listener created in+-- your Amazon Web Services account.+--+-- 'loadBalancerDnsName', 'getApplicationResponse_loadBalancerDnsName' - The public DNS name of the load balancer created in your Amazon Web+-- Services account.+--+-- 'logGroups', 'getApplicationResponse_logGroups' - The list of log summaries. Each log summary includes the log type as+-- well as the log group identifier. These are CloudWatch logs. Amazon Web+-- Services Mainframe Modernization pushes the application log to+-- CloudWatch under the customer\'s account.+--+-- 'statusReason', 'getApplicationResponse_statusReason' - The reason for the reported status.+--+-- 'tags', 'getApplicationResponse_tags' - A list of tags associated with the application.+--+-- 'targetGroupArns', 'getApplicationResponse_targetGroupArns' - Returns the Amazon Resource Names (ARNs) of the target groups that are+-- attached to the network load balancer.+--+-- 'httpStatus', 'getApplicationResponse_httpStatus' - The response's http status code.+--+-- 'applicationArn', 'getApplicationResponse_applicationArn' - The Amazon Resource Name (ARN) of the application.+--+-- 'applicationId', 'getApplicationResponse_applicationId' - The identifier of the application.+--+-- 'creationTime', 'getApplicationResponse_creationTime' - The timestamp when this application was created.+--+-- 'engineType', 'getApplicationResponse_engineType' - The type of the target platform for the application.+--+-- 'latestVersion', 'getApplicationResponse_latestVersion' - The latest version of the application.+--+-- 'name', 'getApplicationResponse_name' - The unique identifier of the application.+--+-- 'status', 'getApplicationResponse_status' - The status of the application.+newGetApplicationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'applicationArn'+  Prelude.Text ->+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'creationTime'+  Prelude.UTCTime ->+  -- | 'engineType'+  EngineType ->+  -- | 'latestVersion'+  ApplicationVersionSummary ->+  -- | 'name'+  Prelude.Text ->+  -- | 'status'+  ApplicationLifecycle ->+  GetApplicationResponse+newGetApplicationResponse+  pHttpStatus_+  pApplicationArn_+  pApplicationId_+  pCreationTime_+  pEngineType_+  pLatestVersion_+  pName_+  pStatus_ =+    GetApplicationResponse'+      { deployedVersion =+          Prelude.Nothing,+        description = Prelude.Nothing,+        environmentId = Prelude.Nothing,+        kmsKeyId = Prelude.Nothing,+        lastStartTime = Prelude.Nothing,+        listenerArns = Prelude.Nothing,+        listenerPorts = Prelude.Nothing,+        loadBalancerDnsName = Prelude.Nothing,+        logGroups = Prelude.Nothing,+        statusReason = Prelude.Nothing,+        tags = Prelude.Nothing,+        targetGroupArns = Prelude.Nothing,+        httpStatus = pHttpStatus_,+        applicationArn = pApplicationArn_,+        applicationId = pApplicationId_,+        creationTime = Data._Time Lens.# pCreationTime_,+        engineType = pEngineType_,+        latestVersion = pLatestVersion_,+        name = pName_,+        status = pStatus_+      }++-- | The version of the application that is deployed.+getApplicationResponse_deployedVersion :: Lens.Lens' GetApplicationResponse (Prelude.Maybe DeployedVersionSummary)+getApplicationResponse_deployedVersion = Lens.lens (\GetApplicationResponse' {deployedVersion} -> deployedVersion) (\s@GetApplicationResponse' {} a -> s {deployedVersion = a} :: GetApplicationResponse)++-- | The description of the application.+getApplicationResponse_description :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_description = Lens.lens (\GetApplicationResponse' {description} -> description) (\s@GetApplicationResponse' {} a -> s {description = a} :: GetApplicationResponse)++-- | The identifier of the runtime environment where you want to deploy the+-- application.+getApplicationResponse_environmentId :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_environmentId = Lens.lens (\GetApplicationResponse' {environmentId} -> environmentId) (\s@GetApplicationResponse' {} a -> s {environmentId = a} :: GetApplicationResponse)++-- | The identifier of a customer managed key.+getApplicationResponse_kmsKeyId :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_kmsKeyId = Lens.lens (\GetApplicationResponse' {kmsKeyId} -> kmsKeyId) (\s@GetApplicationResponse' {} a -> s {kmsKeyId = a} :: GetApplicationResponse)++-- | The timestamp when you last started the application. Null until the+-- application runs for the first time.+getApplicationResponse_lastStartTime :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.UTCTime)+getApplicationResponse_lastStartTime = Lens.lens (\GetApplicationResponse' {lastStartTime} -> lastStartTime) (\s@GetApplicationResponse' {} a -> s {lastStartTime = a} :: GetApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The Amazon Resource Name (ARN) for the network load balancer listener+-- created in your Amazon Web Services account. Amazon Web Services+-- Mainframe Modernization creates this listener for you the first time you+-- deploy an application.+getApplicationResponse_listenerArns :: Lens.Lens' GetApplicationResponse (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+getApplicationResponse_listenerArns = Lens.lens (\GetApplicationResponse' {listenerArns} -> listenerArns) (\s@GetApplicationResponse' {} a -> s {listenerArns = a} :: GetApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The port associated with the network load balancer listener created in+-- your Amazon Web Services account.+getApplicationResponse_listenerPorts :: Lens.Lens' GetApplicationResponse (Prelude.Maybe (Prelude.NonEmpty Prelude.Int))+getApplicationResponse_listenerPorts = Lens.lens (\GetApplicationResponse' {listenerPorts} -> listenerPorts) (\s@GetApplicationResponse' {} a -> s {listenerPorts = a} :: GetApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The public DNS name of the load balancer created in your Amazon Web+-- Services account.+getApplicationResponse_loadBalancerDnsName :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_loadBalancerDnsName = Lens.lens (\GetApplicationResponse' {loadBalancerDnsName} -> loadBalancerDnsName) (\s@GetApplicationResponse' {} a -> s {loadBalancerDnsName = a} :: GetApplicationResponse)++-- | The list of log summaries. Each log summary includes the log type as+-- well as the log group identifier. These are CloudWatch logs. Amazon Web+-- Services Mainframe Modernization pushes the application log to+-- CloudWatch under the customer\'s account.+getApplicationResponse_logGroups :: Lens.Lens' GetApplicationResponse (Prelude.Maybe [LogGroupSummary])+getApplicationResponse_logGroups = Lens.lens (\GetApplicationResponse' {logGroups} -> logGroups) (\s@GetApplicationResponse' {} a -> s {logGroups = a} :: GetApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The reason for the reported status.+getApplicationResponse_statusReason :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_statusReason = Lens.lens (\GetApplicationResponse' {statusReason} -> statusReason) (\s@GetApplicationResponse' {} a -> s {statusReason = a} :: GetApplicationResponse)++-- | A list of tags associated with the application.+getApplicationResponse_tags :: Lens.Lens' GetApplicationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getApplicationResponse_tags = Lens.lens (\GetApplicationResponse' {tags} -> tags) (\s@GetApplicationResponse' {} a -> s {tags = a} :: GetApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | Returns the Amazon Resource Names (ARNs) of the target groups that are+-- attached to the network load balancer.+getApplicationResponse_targetGroupArns :: Lens.Lens' GetApplicationResponse (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+getApplicationResponse_targetGroupArns = Lens.lens (\GetApplicationResponse' {targetGroupArns} -> targetGroupArns) (\s@GetApplicationResponse' {} a -> s {targetGroupArns = a} :: GetApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+getApplicationResponse_httpStatus :: Lens.Lens' GetApplicationResponse Prelude.Int+getApplicationResponse_httpStatus = Lens.lens (\GetApplicationResponse' {httpStatus} -> httpStatus) (\s@GetApplicationResponse' {} a -> s {httpStatus = a} :: GetApplicationResponse)++-- | The Amazon Resource Name (ARN) of the application.+getApplicationResponse_applicationArn :: Lens.Lens' GetApplicationResponse Prelude.Text+getApplicationResponse_applicationArn = Lens.lens (\GetApplicationResponse' {applicationArn} -> applicationArn) (\s@GetApplicationResponse' {} a -> s {applicationArn = a} :: GetApplicationResponse)++-- | The identifier of the application.+getApplicationResponse_applicationId :: Lens.Lens' GetApplicationResponse Prelude.Text+getApplicationResponse_applicationId = Lens.lens (\GetApplicationResponse' {applicationId} -> applicationId) (\s@GetApplicationResponse' {} a -> s {applicationId = a} :: GetApplicationResponse)++-- | The timestamp when this application was created.+getApplicationResponse_creationTime :: Lens.Lens' GetApplicationResponse Prelude.UTCTime+getApplicationResponse_creationTime = Lens.lens (\GetApplicationResponse' {creationTime} -> creationTime) (\s@GetApplicationResponse' {} a -> s {creationTime = a} :: GetApplicationResponse) Prelude.. Data._Time++-- | The type of the target platform for the application.+getApplicationResponse_engineType :: Lens.Lens' GetApplicationResponse EngineType+getApplicationResponse_engineType = Lens.lens (\GetApplicationResponse' {engineType} -> engineType) (\s@GetApplicationResponse' {} a -> s {engineType = a} :: GetApplicationResponse)++-- | The latest version of the application.+getApplicationResponse_latestVersion :: Lens.Lens' GetApplicationResponse ApplicationVersionSummary+getApplicationResponse_latestVersion = Lens.lens (\GetApplicationResponse' {latestVersion} -> latestVersion) (\s@GetApplicationResponse' {} a -> s {latestVersion = a} :: GetApplicationResponse)++-- | The unique identifier of the application.+getApplicationResponse_name :: Lens.Lens' GetApplicationResponse Prelude.Text+getApplicationResponse_name = Lens.lens (\GetApplicationResponse' {name} -> name) (\s@GetApplicationResponse' {} a -> s {name = a} :: GetApplicationResponse)++-- | The status of the application.+getApplicationResponse_status :: Lens.Lens' GetApplicationResponse ApplicationLifecycle+getApplicationResponse_status = Lens.lens (\GetApplicationResponse' {status} -> status) (\s@GetApplicationResponse' {} a -> s {status = a} :: GetApplicationResponse)++instance Prelude.NFData GetApplicationResponse where+  rnf GetApplicationResponse' {..} =+    Prelude.rnf deployedVersion+      `Prelude.seq` Prelude.rnf description+      `Prelude.seq` Prelude.rnf environmentId+      `Prelude.seq` Prelude.rnf kmsKeyId+      `Prelude.seq` Prelude.rnf lastStartTime+      `Prelude.seq` Prelude.rnf listenerArns+      `Prelude.seq` Prelude.rnf listenerPorts+      `Prelude.seq` Prelude.rnf loadBalancerDnsName+      `Prelude.seq` Prelude.rnf logGroups+      `Prelude.seq` Prelude.rnf statusReason+      `Prelude.seq` Prelude.rnf tags+      `Prelude.seq` Prelude.rnf targetGroupArns+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationArn+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf creationTime+      `Prelude.seq` Prelude.rnf engineType+      `Prelude.seq` Prelude.rnf latestVersion+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/M2/GetApplicationVersion.hs view
@@ -0,0 +1,279 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.GetApplicationVersion+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns details about a specific version of a specific application.+module Amazonka.M2.GetApplicationVersion+  ( -- * Creating a Request+    GetApplicationVersion (..),+    newGetApplicationVersion,++    -- * Request Lenses+    getApplicationVersion_applicationId,+    getApplicationVersion_applicationVersion,++    -- * Destructuring the Response+    GetApplicationVersionResponse (..),+    newGetApplicationVersionResponse,++    -- * Response Lenses+    getApplicationVersionResponse_description,+    getApplicationVersionResponse_statusReason,+    getApplicationVersionResponse_httpStatus,+    getApplicationVersionResponse_applicationVersion,+    getApplicationVersionResponse_creationTime,+    getApplicationVersionResponse_definitionContent,+    getApplicationVersionResponse_name,+    getApplicationVersionResponse_status,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetApplicationVersion' smart constructor.+data GetApplicationVersion = GetApplicationVersion'+  { -- | The unique identifier of the application.+    applicationId :: Prelude.Text,+    -- | The specific version of the application.+    applicationVersion :: Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetApplicationVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'getApplicationVersion_applicationId' - The unique identifier of the application.+--+-- 'applicationVersion', 'getApplicationVersion_applicationVersion' - The specific version of the application.+newGetApplicationVersion ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'applicationVersion'+  Prelude.Natural ->+  GetApplicationVersion+newGetApplicationVersion+  pApplicationId_+  pApplicationVersion_ =+    GetApplicationVersion'+      { applicationId =+          pApplicationId_,+        applicationVersion = pApplicationVersion_+      }++-- | The unique identifier of the application.+getApplicationVersion_applicationId :: Lens.Lens' GetApplicationVersion Prelude.Text+getApplicationVersion_applicationId = Lens.lens (\GetApplicationVersion' {applicationId} -> applicationId) (\s@GetApplicationVersion' {} a -> s {applicationId = a} :: GetApplicationVersion)++-- | The specific version of the application.+getApplicationVersion_applicationVersion :: Lens.Lens' GetApplicationVersion Prelude.Natural+getApplicationVersion_applicationVersion = Lens.lens (\GetApplicationVersion' {applicationVersion} -> applicationVersion) (\s@GetApplicationVersion' {} a -> s {applicationVersion = a} :: GetApplicationVersion)++instance Core.AWSRequest GetApplicationVersion where+  type+    AWSResponse GetApplicationVersion =+      GetApplicationVersionResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetApplicationVersionResponse'+            Prelude.<$> (x Data..?> "description")+            Prelude.<*> (x Data..?> "statusReason")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "applicationVersion")+            Prelude.<*> (x Data..:> "creationTime")+            Prelude.<*> (x Data..:> "definitionContent")+            Prelude.<*> (x Data..:> "name")+            Prelude.<*> (x Data..:> "status")+      )++instance Prelude.Hashable GetApplicationVersion where+  hashWithSalt _salt GetApplicationVersion' {..} =+    _salt+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` applicationVersion++instance Prelude.NFData GetApplicationVersion where+  rnf GetApplicationVersion' {..} =+    Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf applicationVersion++instance Data.ToHeaders GetApplicationVersion where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetApplicationVersion where+  toPath GetApplicationVersion' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/versions/",+        Data.toBS applicationVersion+      ]++instance Data.ToQuery GetApplicationVersion where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetApplicationVersionResponse' smart constructor.+data GetApplicationVersionResponse = GetApplicationVersionResponse'+  { -- | The application description.+    description :: Prelude.Maybe Prelude.Text,+    -- | The reason for the reported status.+    statusReason :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The specific version of the application.+    applicationVersion :: Prelude.Natural,+    -- | The timestamp when the application version was created.+    creationTime :: Data.POSIX,+    -- | The content of the application definition. This is a JSON object that+    -- contains the resource configuration and definitions that identify an+    -- application.+    definitionContent :: Prelude.Text,+    -- | The name of the application version.+    name :: Prelude.Text,+    -- | The status of the application version.+    status :: ApplicationVersionLifecycle+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetApplicationVersionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'getApplicationVersionResponse_description' - The application description.+--+-- 'statusReason', 'getApplicationVersionResponse_statusReason' - The reason for the reported status.+--+-- 'httpStatus', 'getApplicationVersionResponse_httpStatus' - The response's http status code.+--+-- 'applicationVersion', 'getApplicationVersionResponse_applicationVersion' - The specific version of the application.+--+-- 'creationTime', 'getApplicationVersionResponse_creationTime' - The timestamp when the application version was created.+--+-- 'definitionContent', 'getApplicationVersionResponse_definitionContent' - The content of the application definition. This is a JSON object that+-- contains the resource configuration and definitions that identify an+-- application.+--+-- 'name', 'getApplicationVersionResponse_name' - The name of the application version.+--+-- 'status', 'getApplicationVersionResponse_status' - The status of the application version.+newGetApplicationVersionResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'applicationVersion'+  Prelude.Natural ->+  -- | 'creationTime'+  Prelude.UTCTime ->+  -- | 'definitionContent'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'status'+  ApplicationVersionLifecycle ->+  GetApplicationVersionResponse+newGetApplicationVersionResponse+  pHttpStatus_+  pApplicationVersion_+  pCreationTime_+  pDefinitionContent_+  pName_+  pStatus_ =+    GetApplicationVersionResponse'+      { description =+          Prelude.Nothing,+        statusReason = Prelude.Nothing,+        httpStatus = pHttpStatus_,+        applicationVersion = pApplicationVersion_,+        creationTime =+          Data._Time Lens.# pCreationTime_,+        definitionContent = pDefinitionContent_,+        name = pName_,+        status = pStatus_+      }++-- | The application description.+getApplicationVersionResponse_description :: Lens.Lens' GetApplicationVersionResponse (Prelude.Maybe Prelude.Text)+getApplicationVersionResponse_description = Lens.lens (\GetApplicationVersionResponse' {description} -> description) (\s@GetApplicationVersionResponse' {} a -> s {description = a} :: GetApplicationVersionResponse)++-- | The reason for the reported status.+getApplicationVersionResponse_statusReason :: Lens.Lens' GetApplicationVersionResponse (Prelude.Maybe Prelude.Text)+getApplicationVersionResponse_statusReason = Lens.lens (\GetApplicationVersionResponse' {statusReason} -> statusReason) (\s@GetApplicationVersionResponse' {} a -> s {statusReason = a} :: GetApplicationVersionResponse)++-- | The response's http status code.+getApplicationVersionResponse_httpStatus :: Lens.Lens' GetApplicationVersionResponse Prelude.Int+getApplicationVersionResponse_httpStatus = Lens.lens (\GetApplicationVersionResponse' {httpStatus} -> httpStatus) (\s@GetApplicationVersionResponse' {} a -> s {httpStatus = a} :: GetApplicationVersionResponse)++-- | The specific version of the application.+getApplicationVersionResponse_applicationVersion :: Lens.Lens' GetApplicationVersionResponse Prelude.Natural+getApplicationVersionResponse_applicationVersion = Lens.lens (\GetApplicationVersionResponse' {applicationVersion} -> applicationVersion) (\s@GetApplicationVersionResponse' {} a -> s {applicationVersion = a} :: GetApplicationVersionResponse)++-- | The timestamp when the application version was created.+getApplicationVersionResponse_creationTime :: Lens.Lens' GetApplicationVersionResponse Prelude.UTCTime+getApplicationVersionResponse_creationTime = Lens.lens (\GetApplicationVersionResponse' {creationTime} -> creationTime) (\s@GetApplicationVersionResponse' {} a -> s {creationTime = a} :: GetApplicationVersionResponse) Prelude.. Data._Time++-- | The content of the application definition. This is a JSON object that+-- contains the resource configuration and definitions that identify an+-- application.+getApplicationVersionResponse_definitionContent :: Lens.Lens' GetApplicationVersionResponse Prelude.Text+getApplicationVersionResponse_definitionContent = Lens.lens (\GetApplicationVersionResponse' {definitionContent} -> definitionContent) (\s@GetApplicationVersionResponse' {} a -> s {definitionContent = a} :: GetApplicationVersionResponse)++-- | The name of the application version.+getApplicationVersionResponse_name :: Lens.Lens' GetApplicationVersionResponse Prelude.Text+getApplicationVersionResponse_name = Lens.lens (\GetApplicationVersionResponse' {name} -> name) (\s@GetApplicationVersionResponse' {} a -> s {name = a} :: GetApplicationVersionResponse)++-- | The status of the application version.+getApplicationVersionResponse_status :: Lens.Lens' GetApplicationVersionResponse ApplicationVersionLifecycle+getApplicationVersionResponse_status = Lens.lens (\GetApplicationVersionResponse' {status} -> status) (\s@GetApplicationVersionResponse' {} a -> s {status = a} :: GetApplicationVersionResponse)++instance Prelude.NFData GetApplicationVersionResponse where+  rnf GetApplicationVersionResponse' {..} =+    Prelude.rnf description+      `Prelude.seq` Prelude.rnf statusReason+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationVersion+      `Prelude.seq` Prelude.rnf creationTime+      `Prelude.seq` Prelude.rnf definitionContent+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/M2/GetBatchJobExecution.hs view
@@ -0,0 +1,304 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.GetBatchJobExecution+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the details of a specific batch job execution for a specific+-- application.+module Amazonka.M2.GetBatchJobExecution+  ( -- * Creating a Request+    GetBatchJobExecution (..),+    newGetBatchJobExecution,++    -- * Request Lenses+    getBatchJobExecution_applicationId,+    getBatchJobExecution_executionId,++    -- * Destructuring the Response+    GetBatchJobExecutionResponse (..),+    newGetBatchJobExecutionResponse,++    -- * Response Lenses+    getBatchJobExecutionResponse_endTime,+    getBatchJobExecutionResponse_jobId,+    getBatchJobExecutionResponse_jobName,+    getBatchJobExecutionResponse_jobType,+    getBatchJobExecutionResponse_jobUser,+    getBatchJobExecutionResponse_statusReason,+    getBatchJobExecutionResponse_httpStatus,+    getBatchJobExecutionResponse_applicationId,+    getBatchJobExecutionResponse_executionId,+    getBatchJobExecutionResponse_startTime,+    getBatchJobExecutionResponse_status,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetBatchJobExecution' smart constructor.+data GetBatchJobExecution = GetBatchJobExecution'+  { -- | The identifier of the application.+    applicationId :: Prelude.Text,+    -- | The unique identifier of the batch job execution.+    executionId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetBatchJobExecution' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'getBatchJobExecution_applicationId' - The identifier of the application.+--+-- 'executionId', 'getBatchJobExecution_executionId' - The unique identifier of the batch job execution.+newGetBatchJobExecution ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'executionId'+  Prelude.Text ->+  GetBatchJobExecution+newGetBatchJobExecution pApplicationId_ pExecutionId_ =+  GetBatchJobExecution'+    { applicationId =+        pApplicationId_,+      executionId = pExecutionId_+    }++-- | The identifier of the application.+getBatchJobExecution_applicationId :: Lens.Lens' GetBatchJobExecution Prelude.Text+getBatchJobExecution_applicationId = Lens.lens (\GetBatchJobExecution' {applicationId} -> applicationId) (\s@GetBatchJobExecution' {} a -> s {applicationId = a} :: GetBatchJobExecution)++-- | The unique identifier of the batch job execution.+getBatchJobExecution_executionId :: Lens.Lens' GetBatchJobExecution Prelude.Text+getBatchJobExecution_executionId = Lens.lens (\GetBatchJobExecution' {executionId} -> executionId) (\s@GetBatchJobExecution' {} a -> s {executionId = a} :: GetBatchJobExecution)++instance Core.AWSRequest GetBatchJobExecution where+  type+    AWSResponse GetBatchJobExecution =+      GetBatchJobExecutionResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetBatchJobExecutionResponse'+            Prelude.<$> (x Data..?> "endTime")+            Prelude.<*> (x Data..?> "jobId")+            Prelude.<*> (x Data..?> "jobName")+            Prelude.<*> (x Data..?> "jobType")+            Prelude.<*> (x Data..?> "jobUser")+            Prelude.<*> (x Data..?> "statusReason")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "applicationId")+            Prelude.<*> (x Data..:> "executionId")+            Prelude.<*> (x Data..:> "startTime")+            Prelude.<*> (x Data..:> "status")+      )++instance Prelude.Hashable GetBatchJobExecution where+  hashWithSalt _salt GetBatchJobExecution' {..} =+    _salt+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` executionId++instance Prelude.NFData GetBatchJobExecution where+  rnf GetBatchJobExecution' {..} =+    Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf executionId++instance Data.ToHeaders GetBatchJobExecution where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetBatchJobExecution where+  toPath GetBatchJobExecution' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/batch-job-executions/",+        Data.toBS executionId+      ]++instance Data.ToQuery GetBatchJobExecution where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetBatchJobExecutionResponse' smart constructor.+data GetBatchJobExecutionResponse = GetBatchJobExecutionResponse'+  { -- | The timestamp when the batch job execution ended.+    endTime :: Prelude.Maybe Data.POSIX,+    -- | The unique identifier for this batch job.+    jobId :: Prelude.Maybe Prelude.Text,+    -- | The name of this batch job.+    jobName :: Prelude.Maybe Prelude.Text,+    -- | The type of job.+    jobType :: Prelude.Maybe BatchJobType,+    -- | The user for the job.+    jobUser :: Prelude.Maybe Prelude.Text,+    -- | The reason for the reported status.+    statusReason :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The identifier of the application.+    applicationId :: Prelude.Text,+    -- | The unique identifier for this batch job execution.+    executionId :: Prelude.Text,+    -- | The timestamp when the batch job execution started.+    startTime :: Data.POSIX,+    -- | The status of the batch job execution.+    status :: BatchJobExecutionStatus+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetBatchJobExecutionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'endTime', 'getBatchJobExecutionResponse_endTime' - The timestamp when the batch job execution ended.+--+-- 'jobId', 'getBatchJobExecutionResponse_jobId' - The unique identifier for this batch job.+--+-- 'jobName', 'getBatchJobExecutionResponse_jobName' - The name of this batch job.+--+-- 'jobType', 'getBatchJobExecutionResponse_jobType' - The type of job.+--+-- 'jobUser', 'getBatchJobExecutionResponse_jobUser' - The user for the job.+--+-- 'statusReason', 'getBatchJobExecutionResponse_statusReason' - The reason for the reported status.+--+-- 'httpStatus', 'getBatchJobExecutionResponse_httpStatus' - The response's http status code.+--+-- 'applicationId', 'getBatchJobExecutionResponse_applicationId' - The identifier of the application.+--+-- 'executionId', 'getBatchJobExecutionResponse_executionId' - The unique identifier for this batch job execution.+--+-- 'startTime', 'getBatchJobExecutionResponse_startTime' - The timestamp when the batch job execution started.+--+-- 'status', 'getBatchJobExecutionResponse_status' - The status of the batch job execution.+newGetBatchJobExecutionResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'executionId'+  Prelude.Text ->+  -- | 'startTime'+  Prelude.UTCTime ->+  -- | 'status'+  BatchJobExecutionStatus ->+  GetBatchJobExecutionResponse+newGetBatchJobExecutionResponse+  pHttpStatus_+  pApplicationId_+  pExecutionId_+  pStartTime_+  pStatus_ =+    GetBatchJobExecutionResponse'+      { endTime =+          Prelude.Nothing,+        jobId = Prelude.Nothing,+        jobName = Prelude.Nothing,+        jobType = Prelude.Nothing,+        jobUser = Prelude.Nothing,+        statusReason = Prelude.Nothing,+        httpStatus = pHttpStatus_,+        applicationId = pApplicationId_,+        executionId = pExecutionId_,+        startTime = Data._Time Lens.# pStartTime_,+        status = pStatus_+      }++-- | The timestamp when the batch job execution ended.+getBatchJobExecutionResponse_endTime :: Lens.Lens' GetBatchJobExecutionResponse (Prelude.Maybe Prelude.UTCTime)+getBatchJobExecutionResponse_endTime = Lens.lens (\GetBatchJobExecutionResponse' {endTime} -> endTime) (\s@GetBatchJobExecutionResponse' {} a -> s {endTime = a} :: GetBatchJobExecutionResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier for this batch job.+getBatchJobExecutionResponse_jobId :: Lens.Lens' GetBatchJobExecutionResponse (Prelude.Maybe Prelude.Text)+getBatchJobExecutionResponse_jobId = Lens.lens (\GetBatchJobExecutionResponse' {jobId} -> jobId) (\s@GetBatchJobExecutionResponse' {} a -> s {jobId = a} :: GetBatchJobExecutionResponse)++-- | The name of this batch job.+getBatchJobExecutionResponse_jobName :: Lens.Lens' GetBatchJobExecutionResponse (Prelude.Maybe Prelude.Text)+getBatchJobExecutionResponse_jobName = Lens.lens (\GetBatchJobExecutionResponse' {jobName} -> jobName) (\s@GetBatchJobExecutionResponse' {} a -> s {jobName = a} :: GetBatchJobExecutionResponse)++-- | The type of job.+getBatchJobExecutionResponse_jobType :: Lens.Lens' GetBatchJobExecutionResponse (Prelude.Maybe BatchJobType)+getBatchJobExecutionResponse_jobType = Lens.lens (\GetBatchJobExecutionResponse' {jobType} -> jobType) (\s@GetBatchJobExecutionResponse' {} a -> s {jobType = a} :: GetBatchJobExecutionResponse)++-- | The user for the job.+getBatchJobExecutionResponse_jobUser :: Lens.Lens' GetBatchJobExecutionResponse (Prelude.Maybe Prelude.Text)+getBatchJobExecutionResponse_jobUser = Lens.lens (\GetBatchJobExecutionResponse' {jobUser} -> jobUser) (\s@GetBatchJobExecutionResponse' {} a -> s {jobUser = a} :: GetBatchJobExecutionResponse)++-- | The reason for the reported status.+getBatchJobExecutionResponse_statusReason :: Lens.Lens' GetBatchJobExecutionResponse (Prelude.Maybe Prelude.Text)+getBatchJobExecutionResponse_statusReason = Lens.lens (\GetBatchJobExecutionResponse' {statusReason} -> statusReason) (\s@GetBatchJobExecutionResponse' {} a -> s {statusReason = a} :: GetBatchJobExecutionResponse)++-- | The response's http status code.+getBatchJobExecutionResponse_httpStatus :: Lens.Lens' GetBatchJobExecutionResponse Prelude.Int+getBatchJobExecutionResponse_httpStatus = Lens.lens (\GetBatchJobExecutionResponse' {httpStatus} -> httpStatus) (\s@GetBatchJobExecutionResponse' {} a -> s {httpStatus = a} :: GetBatchJobExecutionResponse)++-- | The identifier of the application.+getBatchJobExecutionResponse_applicationId :: Lens.Lens' GetBatchJobExecutionResponse Prelude.Text+getBatchJobExecutionResponse_applicationId = Lens.lens (\GetBatchJobExecutionResponse' {applicationId} -> applicationId) (\s@GetBatchJobExecutionResponse' {} a -> s {applicationId = a} :: GetBatchJobExecutionResponse)++-- | The unique identifier for this batch job execution.+getBatchJobExecutionResponse_executionId :: Lens.Lens' GetBatchJobExecutionResponse Prelude.Text+getBatchJobExecutionResponse_executionId = Lens.lens (\GetBatchJobExecutionResponse' {executionId} -> executionId) (\s@GetBatchJobExecutionResponse' {} a -> s {executionId = a} :: GetBatchJobExecutionResponse)++-- | The timestamp when the batch job execution started.+getBatchJobExecutionResponse_startTime :: Lens.Lens' GetBatchJobExecutionResponse Prelude.UTCTime+getBatchJobExecutionResponse_startTime = Lens.lens (\GetBatchJobExecutionResponse' {startTime} -> startTime) (\s@GetBatchJobExecutionResponse' {} a -> s {startTime = a} :: GetBatchJobExecutionResponse) Prelude.. Data._Time++-- | The status of the batch job execution.+getBatchJobExecutionResponse_status :: Lens.Lens' GetBatchJobExecutionResponse BatchJobExecutionStatus+getBatchJobExecutionResponse_status = Lens.lens (\GetBatchJobExecutionResponse' {status} -> status) (\s@GetBatchJobExecutionResponse' {} a -> s {status = a} :: GetBatchJobExecutionResponse)++instance Prelude.NFData GetBatchJobExecutionResponse where+  rnf GetBatchJobExecutionResponse' {..} =+    Prelude.rnf endTime+      `Prelude.seq` Prelude.rnf jobId+      `Prelude.seq` Prelude.rnf jobName+      `Prelude.seq` Prelude.rnf jobType+      `Prelude.seq` Prelude.rnf jobUser+      `Prelude.seq` Prelude.rnf statusReason+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf executionId+      `Prelude.seq` Prelude.rnf startTime+      `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/M2/GetDataSetDetails.hs view
@@ -0,0 +1,272 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.GetDataSetDetails+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the details of a specific data set.+module Amazonka.M2.GetDataSetDetails+  ( -- * Creating a Request+    GetDataSetDetails (..),+    newGetDataSetDetails,++    -- * Request Lenses+    getDataSetDetails_applicationId,+    getDataSetDetails_dataSetName,++    -- * Destructuring the Response+    GetDataSetDetailsResponse (..),+    newGetDataSetDetailsResponse,++    -- * Response Lenses+    getDataSetDetailsResponse_blocksize,+    getDataSetDetailsResponse_creationTime,+    getDataSetDetailsResponse_dataSetOrg,+    getDataSetDetailsResponse_lastReferencedTime,+    getDataSetDetailsResponse_lastUpdatedTime,+    getDataSetDetailsResponse_location,+    getDataSetDetailsResponse_recordLength,+    getDataSetDetailsResponse_httpStatus,+    getDataSetDetailsResponse_dataSetName,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetDataSetDetails' smart constructor.+data GetDataSetDetails = GetDataSetDetails'+  { -- | The unique identifier of the application that this data set is+    -- associated with.+    applicationId :: Prelude.Text,+    -- | The name of the data set.+    dataSetName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDataSetDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'getDataSetDetails_applicationId' - The unique identifier of the application that this data set is+-- associated with.+--+-- 'dataSetName', 'getDataSetDetails_dataSetName' - The name of the data set.+newGetDataSetDetails ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'dataSetName'+  Prelude.Text ->+  GetDataSetDetails+newGetDataSetDetails pApplicationId_ pDataSetName_ =+  GetDataSetDetails'+    { applicationId = pApplicationId_,+      dataSetName = pDataSetName_+    }++-- | The unique identifier of the application that this data set is+-- associated with.+getDataSetDetails_applicationId :: Lens.Lens' GetDataSetDetails Prelude.Text+getDataSetDetails_applicationId = Lens.lens (\GetDataSetDetails' {applicationId} -> applicationId) (\s@GetDataSetDetails' {} a -> s {applicationId = a} :: GetDataSetDetails)++-- | The name of the data set.+getDataSetDetails_dataSetName :: Lens.Lens' GetDataSetDetails Prelude.Text+getDataSetDetails_dataSetName = Lens.lens (\GetDataSetDetails' {dataSetName} -> dataSetName) (\s@GetDataSetDetails' {} a -> s {dataSetName = a} :: GetDataSetDetails)++instance Core.AWSRequest GetDataSetDetails where+  type+    AWSResponse GetDataSetDetails =+      GetDataSetDetailsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetDataSetDetailsResponse'+            Prelude.<$> (x Data..?> "blocksize")+            Prelude.<*> (x Data..?> "creationTime")+            Prelude.<*> (x Data..?> "dataSetOrg")+            Prelude.<*> (x Data..?> "lastReferencedTime")+            Prelude.<*> (x Data..?> "lastUpdatedTime")+            Prelude.<*> (x Data..?> "location")+            Prelude.<*> (x Data..?> "recordLength")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "dataSetName")+      )++instance Prelude.Hashable GetDataSetDetails where+  hashWithSalt _salt GetDataSetDetails' {..} =+    _salt+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` dataSetName++instance Prelude.NFData GetDataSetDetails where+  rnf GetDataSetDetails' {..} =+    Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf dataSetName++instance Data.ToHeaders GetDataSetDetails where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetDataSetDetails where+  toPath GetDataSetDetails' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/datasets/",+        Data.toBS dataSetName+      ]++instance Data.ToQuery GetDataSetDetails where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetDataSetDetailsResponse' smart constructor.+data GetDataSetDetailsResponse = GetDataSetDetailsResponse'+  { -- | The size of the block on disk.+    blocksize :: Prelude.Maybe Prelude.Int,+    -- | The timestamp when the data set was created.+    creationTime :: Prelude.Maybe Data.POSIX,+    -- | The type of data set. The only supported value is VSAM.+    dataSetOrg :: Prelude.Maybe DatasetDetailOrgAttributes,+    -- | The last time the data set was referenced.+    lastReferencedTime :: Prelude.Maybe Data.POSIX,+    -- | The last time the data set was updated.+    lastUpdatedTime :: Prelude.Maybe Data.POSIX,+    -- | The location where the data set is stored.+    location :: Prelude.Maybe Prelude.Text,+    -- | The length of records in the data set.+    recordLength :: Prelude.Maybe Prelude.Int,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The name of the data set.+    dataSetName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDataSetDetailsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'blocksize', 'getDataSetDetailsResponse_blocksize' - The size of the block on disk.+--+-- 'creationTime', 'getDataSetDetailsResponse_creationTime' - The timestamp when the data set was created.+--+-- 'dataSetOrg', 'getDataSetDetailsResponse_dataSetOrg' - The type of data set. The only supported value is VSAM.+--+-- 'lastReferencedTime', 'getDataSetDetailsResponse_lastReferencedTime' - The last time the data set was referenced.+--+-- 'lastUpdatedTime', 'getDataSetDetailsResponse_lastUpdatedTime' - The last time the data set was updated.+--+-- 'location', 'getDataSetDetailsResponse_location' - The location where the data set is stored.+--+-- 'recordLength', 'getDataSetDetailsResponse_recordLength' - The length of records in the data set.+--+-- 'httpStatus', 'getDataSetDetailsResponse_httpStatus' - The response's http status code.+--+-- 'dataSetName', 'getDataSetDetailsResponse_dataSetName' - The name of the data set.+newGetDataSetDetailsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'dataSetName'+  Prelude.Text ->+  GetDataSetDetailsResponse+newGetDataSetDetailsResponse+  pHttpStatus_+  pDataSetName_ =+    GetDataSetDetailsResponse'+      { blocksize =+          Prelude.Nothing,+        creationTime = Prelude.Nothing,+        dataSetOrg = Prelude.Nothing,+        lastReferencedTime = Prelude.Nothing,+        lastUpdatedTime = Prelude.Nothing,+        location = Prelude.Nothing,+        recordLength = Prelude.Nothing,+        httpStatus = pHttpStatus_,+        dataSetName = pDataSetName_+      }++-- | The size of the block on disk.+getDataSetDetailsResponse_blocksize :: Lens.Lens' GetDataSetDetailsResponse (Prelude.Maybe Prelude.Int)+getDataSetDetailsResponse_blocksize = Lens.lens (\GetDataSetDetailsResponse' {blocksize} -> blocksize) (\s@GetDataSetDetailsResponse' {} a -> s {blocksize = a} :: GetDataSetDetailsResponse)++-- | The timestamp when the data set was created.+getDataSetDetailsResponse_creationTime :: Lens.Lens' GetDataSetDetailsResponse (Prelude.Maybe Prelude.UTCTime)+getDataSetDetailsResponse_creationTime = Lens.lens (\GetDataSetDetailsResponse' {creationTime} -> creationTime) (\s@GetDataSetDetailsResponse' {} a -> s {creationTime = a} :: GetDataSetDetailsResponse) Prelude.. Lens.mapping Data._Time++-- | The type of data set. The only supported value is VSAM.+getDataSetDetailsResponse_dataSetOrg :: Lens.Lens' GetDataSetDetailsResponse (Prelude.Maybe DatasetDetailOrgAttributes)+getDataSetDetailsResponse_dataSetOrg = Lens.lens (\GetDataSetDetailsResponse' {dataSetOrg} -> dataSetOrg) (\s@GetDataSetDetailsResponse' {} a -> s {dataSetOrg = a} :: GetDataSetDetailsResponse)++-- | The last time the data set was referenced.+getDataSetDetailsResponse_lastReferencedTime :: Lens.Lens' GetDataSetDetailsResponse (Prelude.Maybe Prelude.UTCTime)+getDataSetDetailsResponse_lastReferencedTime = Lens.lens (\GetDataSetDetailsResponse' {lastReferencedTime} -> lastReferencedTime) (\s@GetDataSetDetailsResponse' {} a -> s {lastReferencedTime = a} :: GetDataSetDetailsResponse) Prelude.. Lens.mapping Data._Time++-- | The last time the data set was updated.+getDataSetDetailsResponse_lastUpdatedTime :: Lens.Lens' GetDataSetDetailsResponse (Prelude.Maybe Prelude.UTCTime)+getDataSetDetailsResponse_lastUpdatedTime = Lens.lens (\GetDataSetDetailsResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@GetDataSetDetailsResponse' {} a -> s {lastUpdatedTime = a} :: GetDataSetDetailsResponse) Prelude.. Lens.mapping Data._Time++-- | The location where the data set is stored.+getDataSetDetailsResponse_location :: Lens.Lens' GetDataSetDetailsResponse (Prelude.Maybe Prelude.Text)+getDataSetDetailsResponse_location = Lens.lens (\GetDataSetDetailsResponse' {location} -> location) (\s@GetDataSetDetailsResponse' {} a -> s {location = a} :: GetDataSetDetailsResponse)++-- | The length of records in the data set.+getDataSetDetailsResponse_recordLength :: Lens.Lens' GetDataSetDetailsResponse (Prelude.Maybe Prelude.Int)+getDataSetDetailsResponse_recordLength = Lens.lens (\GetDataSetDetailsResponse' {recordLength} -> recordLength) (\s@GetDataSetDetailsResponse' {} a -> s {recordLength = a} :: GetDataSetDetailsResponse)++-- | The response's http status code.+getDataSetDetailsResponse_httpStatus :: Lens.Lens' GetDataSetDetailsResponse Prelude.Int+getDataSetDetailsResponse_httpStatus = Lens.lens (\GetDataSetDetailsResponse' {httpStatus} -> httpStatus) (\s@GetDataSetDetailsResponse' {} a -> s {httpStatus = a} :: GetDataSetDetailsResponse)++-- | The name of the data set.+getDataSetDetailsResponse_dataSetName :: Lens.Lens' GetDataSetDetailsResponse Prelude.Text+getDataSetDetailsResponse_dataSetName = Lens.lens (\GetDataSetDetailsResponse' {dataSetName} -> dataSetName) (\s@GetDataSetDetailsResponse' {} a -> s {dataSetName = a} :: GetDataSetDetailsResponse)++instance Prelude.NFData GetDataSetDetailsResponse where+  rnf GetDataSetDetailsResponse' {..} =+    Prelude.rnf blocksize+      `Prelude.seq` Prelude.rnf creationTime+      `Prelude.seq` Prelude.rnf dataSetOrg+      `Prelude.seq` Prelude.rnf lastReferencedTime+      `Prelude.seq` Prelude.rnf lastUpdatedTime+      `Prelude.seq` Prelude.rnf location+      `Prelude.seq` Prelude.rnf recordLength+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf dataSetName
+ gen/Amazonka/M2/GetDataSetImportTask.hs view
@@ -0,0 +1,214 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.GetDataSetImportTask+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the status of a data set import task initiated with the+-- CreateDataSetImportTask operation.+module Amazonka.M2.GetDataSetImportTask+  ( -- * Creating a Request+    GetDataSetImportTask (..),+    newGetDataSetImportTask,++    -- * Request Lenses+    getDataSetImportTask_applicationId,+    getDataSetImportTask_taskId,++    -- * Destructuring the Response+    GetDataSetImportTaskResponse (..),+    newGetDataSetImportTaskResponse,++    -- * Response Lenses+    getDataSetImportTaskResponse_summary,+    getDataSetImportTaskResponse_httpStatus,+    getDataSetImportTaskResponse_status,+    getDataSetImportTaskResponse_taskId,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetDataSetImportTask' smart constructor.+data GetDataSetImportTask = GetDataSetImportTask'+  { -- | The application identifier.+    applicationId :: Prelude.Text,+    -- | The task identifier returned by the CreateDataSetImportTask operation.+    taskId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDataSetImportTask' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'getDataSetImportTask_applicationId' - The application identifier.+--+-- 'taskId', 'getDataSetImportTask_taskId' - The task identifier returned by the CreateDataSetImportTask operation.+newGetDataSetImportTask ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'taskId'+  Prelude.Text ->+  GetDataSetImportTask+newGetDataSetImportTask pApplicationId_ pTaskId_ =+  GetDataSetImportTask'+    { applicationId =+        pApplicationId_,+      taskId = pTaskId_+    }++-- | The application identifier.+getDataSetImportTask_applicationId :: Lens.Lens' GetDataSetImportTask Prelude.Text+getDataSetImportTask_applicationId = Lens.lens (\GetDataSetImportTask' {applicationId} -> applicationId) (\s@GetDataSetImportTask' {} a -> s {applicationId = a} :: GetDataSetImportTask)++-- | The task identifier returned by the CreateDataSetImportTask operation.+getDataSetImportTask_taskId :: Lens.Lens' GetDataSetImportTask Prelude.Text+getDataSetImportTask_taskId = Lens.lens (\GetDataSetImportTask' {taskId} -> taskId) (\s@GetDataSetImportTask' {} a -> s {taskId = a} :: GetDataSetImportTask)++instance Core.AWSRequest GetDataSetImportTask where+  type+    AWSResponse GetDataSetImportTask =+      GetDataSetImportTaskResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetDataSetImportTaskResponse'+            Prelude.<$> (x Data..?> "summary")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "status")+            Prelude.<*> (x Data..:> "taskId")+      )++instance Prelude.Hashable GetDataSetImportTask where+  hashWithSalt _salt GetDataSetImportTask' {..} =+    _salt+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` taskId++instance Prelude.NFData GetDataSetImportTask where+  rnf GetDataSetImportTask' {..} =+    Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf taskId++instance Data.ToHeaders GetDataSetImportTask where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetDataSetImportTask where+  toPath GetDataSetImportTask' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/dataset-import-tasks/",+        Data.toBS taskId+      ]++instance Data.ToQuery GetDataSetImportTask where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetDataSetImportTaskResponse' smart constructor.+data GetDataSetImportTaskResponse = GetDataSetImportTaskResponse'+  { -- | A summary of the status of the task.+    summary :: Prelude.Maybe DataSetImportSummary,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The status of the task.+    status :: DataSetTaskLifecycle,+    -- | The task identifier.+    taskId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDataSetImportTaskResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'summary', 'getDataSetImportTaskResponse_summary' - A summary of the status of the task.+--+-- 'httpStatus', 'getDataSetImportTaskResponse_httpStatus' - The response's http status code.+--+-- 'status', 'getDataSetImportTaskResponse_status' - The status of the task.+--+-- 'taskId', 'getDataSetImportTaskResponse_taskId' - The task identifier.+newGetDataSetImportTaskResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'status'+  DataSetTaskLifecycle ->+  -- | 'taskId'+  Prelude.Text ->+  GetDataSetImportTaskResponse+newGetDataSetImportTaskResponse+  pHttpStatus_+  pStatus_+  pTaskId_ =+    GetDataSetImportTaskResponse'+      { summary =+          Prelude.Nothing,+        httpStatus = pHttpStatus_,+        status = pStatus_,+        taskId = pTaskId_+      }++-- | A summary of the status of the task.+getDataSetImportTaskResponse_summary :: Lens.Lens' GetDataSetImportTaskResponse (Prelude.Maybe DataSetImportSummary)+getDataSetImportTaskResponse_summary = Lens.lens (\GetDataSetImportTaskResponse' {summary} -> summary) (\s@GetDataSetImportTaskResponse' {} a -> s {summary = a} :: GetDataSetImportTaskResponse)++-- | The response's http status code.+getDataSetImportTaskResponse_httpStatus :: Lens.Lens' GetDataSetImportTaskResponse Prelude.Int+getDataSetImportTaskResponse_httpStatus = Lens.lens (\GetDataSetImportTaskResponse' {httpStatus} -> httpStatus) (\s@GetDataSetImportTaskResponse' {} a -> s {httpStatus = a} :: GetDataSetImportTaskResponse)++-- | The status of the task.+getDataSetImportTaskResponse_status :: Lens.Lens' GetDataSetImportTaskResponse DataSetTaskLifecycle+getDataSetImportTaskResponse_status = Lens.lens (\GetDataSetImportTaskResponse' {status} -> status) (\s@GetDataSetImportTaskResponse' {} a -> s {status = a} :: GetDataSetImportTaskResponse)++-- | The task identifier.+getDataSetImportTaskResponse_taskId :: Lens.Lens' GetDataSetImportTaskResponse Prelude.Text+getDataSetImportTaskResponse_taskId = Lens.lens (\GetDataSetImportTaskResponse' {taskId} -> taskId) (\s@GetDataSetImportTaskResponse' {} a -> s {taskId = a} :: GetDataSetImportTaskResponse)++instance Prelude.NFData GetDataSetImportTaskResponse where+  rnf GetDataSetImportTaskResponse' {..} =+    Prelude.rnf summary+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf status+      `Prelude.seq` Prelude.rnf taskId
+ gen/Amazonka/M2/GetDeployment.hs view
@@ -0,0 +1,273 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.GetDeployment+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets details of a specific deployment with a given deployment+-- identifier.+module Amazonka.M2.GetDeployment+  ( -- * Creating a Request+    GetDeployment (..),+    newGetDeployment,++    -- * Request Lenses+    getDeployment_applicationId,+    getDeployment_deploymentId,++    -- * Destructuring the Response+    GetDeploymentResponse (..),+    newGetDeploymentResponse,++    -- * Response Lenses+    getDeploymentResponse_statusReason,+    getDeploymentResponse_httpStatus,+    getDeploymentResponse_applicationId,+    getDeploymentResponse_applicationVersion,+    getDeploymentResponse_creationTime,+    getDeploymentResponse_deploymentId,+    getDeploymentResponse_environmentId,+    getDeploymentResponse_status,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetDeployment' smart constructor.+data GetDeployment = GetDeployment'+  { -- | The unique identifier of the application.+    applicationId :: Prelude.Text,+    -- | The unique identifier for the deployment.+    deploymentId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDeployment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'getDeployment_applicationId' - The unique identifier of the application.+--+-- 'deploymentId', 'getDeployment_deploymentId' - The unique identifier for the deployment.+newGetDeployment ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'deploymentId'+  Prelude.Text ->+  GetDeployment+newGetDeployment pApplicationId_ pDeploymentId_ =+  GetDeployment'+    { applicationId = pApplicationId_,+      deploymentId = pDeploymentId_+    }++-- | The unique identifier of the application.+getDeployment_applicationId :: Lens.Lens' GetDeployment Prelude.Text+getDeployment_applicationId = Lens.lens (\GetDeployment' {applicationId} -> applicationId) (\s@GetDeployment' {} a -> s {applicationId = a} :: GetDeployment)++-- | The unique identifier for the deployment.+getDeployment_deploymentId :: Lens.Lens' GetDeployment Prelude.Text+getDeployment_deploymentId = Lens.lens (\GetDeployment' {deploymentId} -> deploymentId) (\s@GetDeployment' {} a -> s {deploymentId = a} :: GetDeployment)++instance Core.AWSRequest GetDeployment where+  type+    AWSResponse GetDeployment =+      GetDeploymentResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetDeploymentResponse'+            Prelude.<$> (x Data..?> "statusReason")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "applicationId")+            Prelude.<*> (x Data..:> "applicationVersion")+            Prelude.<*> (x Data..:> "creationTime")+            Prelude.<*> (x Data..:> "deploymentId")+            Prelude.<*> (x Data..:> "environmentId")+            Prelude.<*> (x Data..:> "status")+      )++instance Prelude.Hashable GetDeployment where+  hashWithSalt _salt GetDeployment' {..} =+    _salt+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` deploymentId++instance Prelude.NFData GetDeployment where+  rnf GetDeployment' {..} =+    Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf deploymentId++instance Data.ToHeaders GetDeployment where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetDeployment where+  toPath GetDeployment' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/deployments/",+        Data.toBS deploymentId+      ]++instance Data.ToQuery GetDeployment where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetDeploymentResponse' smart constructor.+data GetDeploymentResponse = GetDeploymentResponse'+  { -- | The reason for the reported status.+    statusReason :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The unique identifier of the application.+    applicationId :: Prelude.Text,+    -- | The application version.+    applicationVersion :: Prelude.Natural,+    -- | The timestamp when the deployment was created.+    creationTime :: Data.POSIX,+    -- | The unique identifier of the deployment.+    deploymentId :: Prelude.Text,+    -- | The unique identifier of the runtime environment.+    environmentId :: Prelude.Text,+    -- | The status of the deployment.+    status :: DeploymentLifecycle+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDeploymentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'statusReason', 'getDeploymentResponse_statusReason' - The reason for the reported status.+--+-- 'httpStatus', 'getDeploymentResponse_httpStatus' - The response's http status code.+--+-- 'applicationId', 'getDeploymentResponse_applicationId' - The unique identifier of the application.+--+-- 'applicationVersion', 'getDeploymentResponse_applicationVersion' - The application version.+--+-- 'creationTime', 'getDeploymentResponse_creationTime' - The timestamp when the deployment was created.+--+-- 'deploymentId', 'getDeploymentResponse_deploymentId' - The unique identifier of the deployment.+--+-- 'environmentId', 'getDeploymentResponse_environmentId' - The unique identifier of the runtime environment.+--+-- 'status', 'getDeploymentResponse_status' - The status of the deployment.+newGetDeploymentResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'applicationVersion'+  Prelude.Natural ->+  -- | 'creationTime'+  Prelude.UTCTime ->+  -- | 'deploymentId'+  Prelude.Text ->+  -- | 'environmentId'+  Prelude.Text ->+  -- | 'status'+  DeploymentLifecycle ->+  GetDeploymentResponse+newGetDeploymentResponse+  pHttpStatus_+  pApplicationId_+  pApplicationVersion_+  pCreationTime_+  pDeploymentId_+  pEnvironmentId_+  pStatus_ =+    GetDeploymentResponse'+      { statusReason =+          Prelude.Nothing,+        httpStatus = pHttpStatus_,+        applicationId = pApplicationId_,+        applicationVersion = pApplicationVersion_,+        creationTime = Data._Time Lens.# pCreationTime_,+        deploymentId = pDeploymentId_,+        environmentId = pEnvironmentId_,+        status = pStatus_+      }++-- | The reason for the reported status.+getDeploymentResponse_statusReason :: Lens.Lens' GetDeploymentResponse (Prelude.Maybe Prelude.Text)+getDeploymentResponse_statusReason = Lens.lens (\GetDeploymentResponse' {statusReason} -> statusReason) (\s@GetDeploymentResponse' {} a -> s {statusReason = a} :: GetDeploymentResponse)++-- | The response's http status code.+getDeploymentResponse_httpStatus :: Lens.Lens' GetDeploymentResponse Prelude.Int+getDeploymentResponse_httpStatus = Lens.lens (\GetDeploymentResponse' {httpStatus} -> httpStatus) (\s@GetDeploymentResponse' {} a -> s {httpStatus = a} :: GetDeploymentResponse)++-- | The unique identifier of the application.+getDeploymentResponse_applicationId :: Lens.Lens' GetDeploymentResponse Prelude.Text+getDeploymentResponse_applicationId = Lens.lens (\GetDeploymentResponse' {applicationId} -> applicationId) (\s@GetDeploymentResponse' {} a -> s {applicationId = a} :: GetDeploymentResponse)++-- | The application version.+getDeploymentResponse_applicationVersion :: Lens.Lens' GetDeploymentResponse Prelude.Natural+getDeploymentResponse_applicationVersion = Lens.lens (\GetDeploymentResponse' {applicationVersion} -> applicationVersion) (\s@GetDeploymentResponse' {} a -> s {applicationVersion = a} :: GetDeploymentResponse)++-- | The timestamp when the deployment was created.+getDeploymentResponse_creationTime :: Lens.Lens' GetDeploymentResponse Prelude.UTCTime+getDeploymentResponse_creationTime = Lens.lens (\GetDeploymentResponse' {creationTime} -> creationTime) (\s@GetDeploymentResponse' {} a -> s {creationTime = a} :: GetDeploymentResponse) Prelude.. Data._Time++-- | The unique identifier of the deployment.+getDeploymentResponse_deploymentId :: Lens.Lens' GetDeploymentResponse Prelude.Text+getDeploymentResponse_deploymentId = Lens.lens (\GetDeploymentResponse' {deploymentId} -> deploymentId) (\s@GetDeploymentResponse' {} a -> s {deploymentId = a} :: GetDeploymentResponse)++-- | The unique identifier of the runtime environment.+getDeploymentResponse_environmentId :: Lens.Lens' GetDeploymentResponse Prelude.Text+getDeploymentResponse_environmentId = Lens.lens (\GetDeploymentResponse' {environmentId} -> environmentId) (\s@GetDeploymentResponse' {} a -> s {environmentId = a} :: GetDeploymentResponse)++-- | The status of the deployment.+getDeploymentResponse_status :: Lens.Lens' GetDeploymentResponse DeploymentLifecycle+getDeploymentResponse_status = Lens.lens (\GetDeploymentResponse' {status} -> status) (\s@GetDeploymentResponse' {} a -> s {status = a} :: GetDeploymentResponse)++instance Prelude.NFData GetDeploymentResponse where+  rnf GetDeploymentResponse' {..} =+    Prelude.rnf statusReason+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf applicationVersion+      `Prelude.seq` Prelude.rnf creationTime+      `Prelude.seq` Prelude.rnf deploymentId+      `Prelude.seq` Prelude.rnf environmentId+      `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/M2/GetEnvironment.hs view
@@ -0,0 +1,475 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.GetEnvironment+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes a specific runtime environment.+module Amazonka.M2.GetEnvironment+  ( -- * Creating a Request+    GetEnvironment (..),+    newGetEnvironment,++    -- * Request Lenses+    getEnvironment_environmentId,++    -- * Destructuring the Response+    GetEnvironmentResponse (..),+    newGetEnvironmentResponse,++    -- * Response Lenses+    getEnvironmentResponse_actualCapacity,+    getEnvironmentResponse_description,+    getEnvironmentResponse_highAvailabilityConfig,+    getEnvironmentResponse_kmsKeyId,+    getEnvironmentResponse_loadBalancerArn,+    getEnvironmentResponse_pendingMaintenance,+    getEnvironmentResponse_preferredMaintenanceWindow,+    getEnvironmentResponse_publiclyAccessible,+    getEnvironmentResponse_statusReason,+    getEnvironmentResponse_storageConfigurations,+    getEnvironmentResponse_tags,+    getEnvironmentResponse_httpStatus,+    getEnvironmentResponse_creationTime,+    getEnvironmentResponse_engineType,+    getEnvironmentResponse_engineVersion,+    getEnvironmentResponse_environmentArn,+    getEnvironmentResponse_environmentId,+    getEnvironmentResponse_instanceType,+    getEnvironmentResponse_name,+    getEnvironmentResponse_securityGroupIds,+    getEnvironmentResponse_status,+    getEnvironmentResponse_subnetIds,+    getEnvironmentResponse_vpcId,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetEnvironment' smart constructor.+data GetEnvironment = GetEnvironment'+  { -- | The unique identifier of the runtime environment.+    environmentId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'environmentId', 'getEnvironment_environmentId' - The unique identifier of the runtime environment.+newGetEnvironment ::+  -- | 'environmentId'+  Prelude.Text ->+  GetEnvironment+newGetEnvironment pEnvironmentId_ =+  GetEnvironment' {environmentId = pEnvironmentId_}++-- | The unique identifier of the runtime environment.+getEnvironment_environmentId :: Lens.Lens' GetEnvironment Prelude.Text+getEnvironment_environmentId = Lens.lens (\GetEnvironment' {environmentId} -> environmentId) (\s@GetEnvironment' {} a -> s {environmentId = a} :: GetEnvironment)++instance Core.AWSRequest GetEnvironment where+  type+    AWSResponse GetEnvironment =+      GetEnvironmentResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetEnvironmentResponse'+            Prelude.<$> (x Data..?> "actualCapacity")+            Prelude.<*> (x Data..?> "description")+            Prelude.<*> (x Data..?> "highAvailabilityConfig")+            Prelude.<*> (x Data..?> "kmsKeyId")+            Prelude.<*> (x Data..?> "loadBalancerArn")+            Prelude.<*> (x Data..?> "pendingMaintenance")+            Prelude.<*> (x Data..?> "preferredMaintenanceWindow")+            Prelude.<*> (x Data..?> "publiclyAccessible")+            Prelude.<*> (x Data..?> "statusReason")+            Prelude.<*> ( x+                            Data..?> "storageConfigurations"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "creationTime")+            Prelude.<*> (x Data..:> "engineType")+            Prelude.<*> (x Data..:> "engineVersion")+            Prelude.<*> (x Data..:> "environmentArn")+            Prelude.<*> (x Data..:> "environmentId")+            Prelude.<*> (x Data..:> "instanceType")+            Prelude.<*> (x Data..:> "name")+            Prelude.<*> ( x+                            Data..?> "securityGroupIds"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> (x Data..:> "status")+            Prelude.<*> (x Data..?> "subnetIds" Core..!@ Prelude.mempty)+            Prelude.<*> (x Data..:> "vpcId")+      )++instance Prelude.Hashable GetEnvironment where+  hashWithSalt _salt GetEnvironment' {..} =+    _salt `Prelude.hashWithSalt` environmentId++instance Prelude.NFData GetEnvironment where+  rnf GetEnvironment' {..} = Prelude.rnf environmentId++instance Data.ToHeaders GetEnvironment where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetEnvironment where+  toPath GetEnvironment' {..} =+    Prelude.mconcat+      ["/environments/", Data.toBS environmentId]++instance Data.ToQuery GetEnvironment where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetEnvironmentResponse' smart constructor.+data GetEnvironmentResponse = GetEnvironmentResponse'+  { -- | The number of instances included in the runtime environment. A+    -- standalone runtime environment has a maxiumum of one instance.+    -- Currently, a high availability runtime environment has a maximum of two+    -- instances.+    actualCapacity :: Prelude.Maybe Prelude.Natural,+    -- | The description of the runtime environment.+    description :: Prelude.Maybe Prelude.Text,+    -- | The desired capacity of the high availability configuration for the+    -- runtime environment.+    highAvailabilityConfig :: Prelude.Maybe HighAvailabilityConfig,+    -- | The identifier of a customer managed key.+    kmsKeyId :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) for the load balancer used with the+    -- runtime environment.+    loadBalancerArn :: Prelude.Maybe Prelude.Text,+    -- | Indicates the pending maintenance scheduled on this environment.+    pendingMaintenance :: Prelude.Maybe PendingMaintenance,+    -- | Configures the maintenance window you want for the runtime environment.+    -- If you do not provide a value, a random system-generated value will be+    -- assigned.+    preferredMaintenanceWindow :: Prelude.Maybe Prelude.Text,+    -- | Whether applications running in this runtime environment are publicly+    -- accessible.+    publiclyAccessible :: Prelude.Maybe Prelude.Bool,+    -- | The reason for the reported status.+    statusReason :: Prelude.Maybe Prelude.Text,+    -- | The storage configurations defined for the runtime environment.+    storageConfigurations :: Prelude.Maybe [StorageConfiguration],+    -- | The tags defined for this runtime environment.+    tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The timestamp when the runtime environment was created.+    creationTime :: Data.POSIX,+    -- | The target platform for the runtime environment.+    engineType :: EngineType,+    -- | The version of the runtime engine.+    engineVersion :: Prelude.Text,+    -- | The Amazon Resource Name (ARN) of the runtime environment.+    environmentArn :: Prelude.Text,+    -- | The unique identifier of the runtime environment.+    environmentId :: Prelude.Text,+    -- | The type of instance underlying the runtime environment.+    instanceType :: Prelude.Text,+    -- | The name of the runtime environment. Must be unique within the account.+    name :: Prelude.Text,+    -- | The unique identifiers of the security groups assigned to this runtime+    -- environment.+    securityGroupIds :: [Prelude.Text],+    -- | The status of the runtime environment.+    status :: EnvironmentLifecycle,+    -- | The unique identifiers of the subnets assigned to this runtime+    -- environment.+    subnetIds :: [Prelude.Text],+    -- | The unique identifier for the VPC used with this runtime environment.+    vpcId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'actualCapacity', 'getEnvironmentResponse_actualCapacity' - The number of instances included in the runtime environment. A+-- standalone runtime environment has a maxiumum of one instance.+-- Currently, a high availability runtime environment has a maximum of two+-- instances.+--+-- 'description', 'getEnvironmentResponse_description' - The description of the runtime environment.+--+-- 'highAvailabilityConfig', 'getEnvironmentResponse_highAvailabilityConfig' - The desired capacity of the high availability configuration for the+-- runtime environment.+--+-- 'kmsKeyId', 'getEnvironmentResponse_kmsKeyId' - The identifier of a customer managed key.+--+-- 'loadBalancerArn', 'getEnvironmentResponse_loadBalancerArn' - The Amazon Resource Name (ARN) for the load balancer used with the+-- runtime environment.+--+-- 'pendingMaintenance', 'getEnvironmentResponse_pendingMaintenance' - Indicates the pending maintenance scheduled on this environment.+--+-- 'preferredMaintenanceWindow', 'getEnvironmentResponse_preferredMaintenanceWindow' - Configures the maintenance window you want for the runtime environment.+-- If you do not provide a value, a random system-generated value will be+-- assigned.+--+-- 'publiclyAccessible', 'getEnvironmentResponse_publiclyAccessible' - Whether applications running in this runtime environment are publicly+-- accessible.+--+-- 'statusReason', 'getEnvironmentResponse_statusReason' - The reason for the reported status.+--+-- 'storageConfigurations', 'getEnvironmentResponse_storageConfigurations' - The storage configurations defined for the runtime environment.+--+-- 'tags', 'getEnvironmentResponse_tags' - The tags defined for this runtime environment.+--+-- 'httpStatus', 'getEnvironmentResponse_httpStatus' - The response's http status code.+--+-- 'creationTime', 'getEnvironmentResponse_creationTime' - The timestamp when the runtime environment was created.+--+-- 'engineType', 'getEnvironmentResponse_engineType' - The target platform for the runtime environment.+--+-- 'engineVersion', 'getEnvironmentResponse_engineVersion' - The version of the runtime engine.+--+-- 'environmentArn', 'getEnvironmentResponse_environmentArn' - The Amazon Resource Name (ARN) of the runtime environment.+--+-- 'environmentId', 'getEnvironmentResponse_environmentId' - The unique identifier of the runtime environment.+--+-- 'instanceType', 'getEnvironmentResponse_instanceType' - The type of instance underlying the runtime environment.+--+-- 'name', 'getEnvironmentResponse_name' - The name of the runtime environment. Must be unique within the account.+--+-- 'securityGroupIds', 'getEnvironmentResponse_securityGroupIds' - The unique identifiers of the security groups assigned to this runtime+-- environment.+--+-- 'status', 'getEnvironmentResponse_status' - The status of the runtime environment.+--+-- 'subnetIds', 'getEnvironmentResponse_subnetIds' - The unique identifiers of the subnets assigned to this runtime+-- environment.+--+-- 'vpcId', 'getEnvironmentResponse_vpcId' - The unique identifier for the VPC used with this runtime environment.+newGetEnvironmentResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'creationTime'+  Prelude.UTCTime ->+  -- | 'engineType'+  EngineType ->+  -- | 'engineVersion'+  Prelude.Text ->+  -- | 'environmentArn'+  Prelude.Text ->+  -- | 'environmentId'+  Prelude.Text ->+  -- | 'instanceType'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'status'+  EnvironmentLifecycle ->+  -- | 'vpcId'+  Prelude.Text ->+  GetEnvironmentResponse+newGetEnvironmentResponse+  pHttpStatus_+  pCreationTime_+  pEngineType_+  pEngineVersion_+  pEnvironmentArn_+  pEnvironmentId_+  pInstanceType_+  pName_+  pStatus_+  pVpcId_ =+    GetEnvironmentResponse'+      { actualCapacity =+          Prelude.Nothing,+        description = Prelude.Nothing,+        highAvailabilityConfig = Prelude.Nothing,+        kmsKeyId = Prelude.Nothing,+        loadBalancerArn = Prelude.Nothing,+        pendingMaintenance = Prelude.Nothing,+        preferredMaintenanceWindow = Prelude.Nothing,+        publiclyAccessible = Prelude.Nothing,+        statusReason = Prelude.Nothing,+        storageConfigurations = Prelude.Nothing,+        tags = Prelude.Nothing,+        httpStatus = pHttpStatus_,+        creationTime = Data._Time Lens.# pCreationTime_,+        engineType = pEngineType_,+        engineVersion = pEngineVersion_,+        environmentArn = pEnvironmentArn_,+        environmentId = pEnvironmentId_,+        instanceType = pInstanceType_,+        name = pName_,+        securityGroupIds = Prelude.mempty,+        status = pStatus_,+        subnetIds = Prelude.mempty,+        vpcId = pVpcId_+      }++-- | The number of instances included in the runtime environment. A+-- standalone runtime environment has a maxiumum of one instance.+-- Currently, a high availability runtime environment has a maximum of two+-- instances.+getEnvironmentResponse_actualCapacity :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Natural)+getEnvironmentResponse_actualCapacity = Lens.lens (\GetEnvironmentResponse' {actualCapacity} -> actualCapacity) (\s@GetEnvironmentResponse' {} a -> s {actualCapacity = a} :: GetEnvironmentResponse)++-- | The description of the runtime environment.+getEnvironmentResponse_description :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_description = Lens.lens (\GetEnvironmentResponse' {description} -> description) (\s@GetEnvironmentResponse' {} a -> s {description = a} :: GetEnvironmentResponse)++-- | The desired capacity of the high availability configuration for the+-- runtime environment.+getEnvironmentResponse_highAvailabilityConfig :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe HighAvailabilityConfig)+getEnvironmentResponse_highAvailabilityConfig = Lens.lens (\GetEnvironmentResponse' {highAvailabilityConfig} -> highAvailabilityConfig) (\s@GetEnvironmentResponse' {} a -> s {highAvailabilityConfig = a} :: GetEnvironmentResponse)++-- | The identifier of a customer managed key.+getEnvironmentResponse_kmsKeyId :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_kmsKeyId = Lens.lens (\GetEnvironmentResponse' {kmsKeyId} -> kmsKeyId) (\s@GetEnvironmentResponse' {} a -> s {kmsKeyId = a} :: GetEnvironmentResponse)++-- | The Amazon Resource Name (ARN) for the load balancer used with the+-- runtime environment.+getEnvironmentResponse_loadBalancerArn :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_loadBalancerArn = Lens.lens (\GetEnvironmentResponse' {loadBalancerArn} -> loadBalancerArn) (\s@GetEnvironmentResponse' {} a -> s {loadBalancerArn = a} :: GetEnvironmentResponse)++-- | Indicates the pending maintenance scheduled on this environment.+getEnvironmentResponse_pendingMaintenance :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe PendingMaintenance)+getEnvironmentResponse_pendingMaintenance = Lens.lens (\GetEnvironmentResponse' {pendingMaintenance} -> pendingMaintenance) (\s@GetEnvironmentResponse' {} a -> s {pendingMaintenance = a} :: GetEnvironmentResponse)++-- | Configures the maintenance window you want for the runtime environment.+-- If you do not provide a value, a random system-generated value will be+-- assigned.+getEnvironmentResponse_preferredMaintenanceWindow :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_preferredMaintenanceWindow = Lens.lens (\GetEnvironmentResponse' {preferredMaintenanceWindow} -> preferredMaintenanceWindow) (\s@GetEnvironmentResponse' {} a -> s {preferredMaintenanceWindow = a} :: GetEnvironmentResponse)++-- | Whether applications running in this runtime environment are publicly+-- accessible.+getEnvironmentResponse_publiclyAccessible :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Bool)+getEnvironmentResponse_publiclyAccessible = Lens.lens (\GetEnvironmentResponse' {publiclyAccessible} -> publiclyAccessible) (\s@GetEnvironmentResponse' {} a -> s {publiclyAccessible = a} :: GetEnvironmentResponse)++-- | The reason for the reported status.+getEnvironmentResponse_statusReason :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_statusReason = Lens.lens (\GetEnvironmentResponse' {statusReason} -> statusReason) (\s@GetEnvironmentResponse' {} a -> s {statusReason = a} :: GetEnvironmentResponse)++-- | The storage configurations defined for the runtime environment.+getEnvironmentResponse_storageConfigurations :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe [StorageConfiguration])+getEnvironmentResponse_storageConfigurations = Lens.lens (\GetEnvironmentResponse' {storageConfigurations} -> storageConfigurations) (\s@GetEnvironmentResponse' {} a -> s {storageConfigurations = a} :: GetEnvironmentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The tags defined for this runtime environment.+getEnvironmentResponse_tags :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getEnvironmentResponse_tags = Lens.lens (\GetEnvironmentResponse' {tags} -> tags) (\s@GetEnvironmentResponse' {} a -> s {tags = a} :: GetEnvironmentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+getEnvironmentResponse_httpStatus :: Lens.Lens' GetEnvironmentResponse Prelude.Int+getEnvironmentResponse_httpStatus = Lens.lens (\GetEnvironmentResponse' {httpStatus} -> httpStatus) (\s@GetEnvironmentResponse' {} a -> s {httpStatus = a} :: GetEnvironmentResponse)++-- | The timestamp when the runtime environment was created.+getEnvironmentResponse_creationTime :: Lens.Lens' GetEnvironmentResponse Prelude.UTCTime+getEnvironmentResponse_creationTime = Lens.lens (\GetEnvironmentResponse' {creationTime} -> creationTime) (\s@GetEnvironmentResponse' {} a -> s {creationTime = a} :: GetEnvironmentResponse) Prelude.. Data._Time++-- | The target platform for the runtime environment.+getEnvironmentResponse_engineType :: Lens.Lens' GetEnvironmentResponse EngineType+getEnvironmentResponse_engineType = Lens.lens (\GetEnvironmentResponse' {engineType} -> engineType) (\s@GetEnvironmentResponse' {} a -> s {engineType = a} :: GetEnvironmentResponse)++-- | The version of the runtime engine.+getEnvironmentResponse_engineVersion :: Lens.Lens' GetEnvironmentResponse Prelude.Text+getEnvironmentResponse_engineVersion = Lens.lens (\GetEnvironmentResponse' {engineVersion} -> engineVersion) (\s@GetEnvironmentResponse' {} a -> s {engineVersion = a} :: GetEnvironmentResponse)++-- | The Amazon Resource Name (ARN) of the runtime environment.+getEnvironmentResponse_environmentArn :: Lens.Lens' GetEnvironmentResponse Prelude.Text+getEnvironmentResponse_environmentArn = Lens.lens (\GetEnvironmentResponse' {environmentArn} -> environmentArn) (\s@GetEnvironmentResponse' {} a -> s {environmentArn = a} :: GetEnvironmentResponse)++-- | The unique identifier of the runtime environment.+getEnvironmentResponse_environmentId :: Lens.Lens' GetEnvironmentResponse Prelude.Text+getEnvironmentResponse_environmentId = Lens.lens (\GetEnvironmentResponse' {environmentId} -> environmentId) (\s@GetEnvironmentResponse' {} a -> s {environmentId = a} :: GetEnvironmentResponse)++-- | The type of instance underlying the runtime environment.+getEnvironmentResponse_instanceType :: Lens.Lens' GetEnvironmentResponse Prelude.Text+getEnvironmentResponse_instanceType = Lens.lens (\GetEnvironmentResponse' {instanceType} -> instanceType) (\s@GetEnvironmentResponse' {} a -> s {instanceType = a} :: GetEnvironmentResponse)++-- | The name of the runtime environment. Must be unique within the account.+getEnvironmentResponse_name :: Lens.Lens' GetEnvironmentResponse Prelude.Text+getEnvironmentResponse_name = Lens.lens (\GetEnvironmentResponse' {name} -> name) (\s@GetEnvironmentResponse' {} a -> s {name = a} :: GetEnvironmentResponse)++-- | The unique identifiers of the security groups assigned to this runtime+-- environment.+getEnvironmentResponse_securityGroupIds :: Lens.Lens' GetEnvironmentResponse [Prelude.Text]+getEnvironmentResponse_securityGroupIds = Lens.lens (\GetEnvironmentResponse' {securityGroupIds} -> securityGroupIds) (\s@GetEnvironmentResponse' {} a -> s {securityGroupIds = a} :: GetEnvironmentResponse) Prelude.. Lens.coerced++-- | The status of the runtime environment.+getEnvironmentResponse_status :: Lens.Lens' GetEnvironmentResponse EnvironmentLifecycle+getEnvironmentResponse_status = Lens.lens (\GetEnvironmentResponse' {status} -> status) (\s@GetEnvironmentResponse' {} a -> s {status = a} :: GetEnvironmentResponse)++-- | The unique identifiers of the subnets assigned to this runtime+-- environment.+getEnvironmentResponse_subnetIds :: Lens.Lens' GetEnvironmentResponse [Prelude.Text]+getEnvironmentResponse_subnetIds = Lens.lens (\GetEnvironmentResponse' {subnetIds} -> subnetIds) (\s@GetEnvironmentResponse' {} a -> s {subnetIds = a} :: GetEnvironmentResponse) Prelude.. Lens.coerced++-- | The unique identifier for the VPC used with this runtime environment.+getEnvironmentResponse_vpcId :: Lens.Lens' GetEnvironmentResponse Prelude.Text+getEnvironmentResponse_vpcId = Lens.lens (\GetEnvironmentResponse' {vpcId} -> vpcId) (\s@GetEnvironmentResponse' {} a -> s {vpcId = a} :: GetEnvironmentResponse)++instance Prelude.NFData GetEnvironmentResponse where+  rnf GetEnvironmentResponse' {..} =+    Prelude.rnf actualCapacity+      `Prelude.seq` Prelude.rnf description+      `Prelude.seq` Prelude.rnf highAvailabilityConfig+      `Prelude.seq` Prelude.rnf kmsKeyId+      `Prelude.seq` Prelude.rnf loadBalancerArn+      `Prelude.seq` Prelude.rnf pendingMaintenance+      `Prelude.seq` Prelude.rnf preferredMaintenanceWindow+      `Prelude.seq` Prelude.rnf publiclyAccessible+      `Prelude.seq` Prelude.rnf statusReason+      `Prelude.seq` Prelude.rnf storageConfigurations+      `Prelude.seq` Prelude.rnf tags+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf creationTime+      `Prelude.seq` Prelude.rnf engineType+      `Prelude.seq` Prelude.rnf engineVersion+      `Prelude.seq` Prelude.rnf environmentArn+      `Prelude.seq` Prelude.rnf environmentId+      `Prelude.seq` Prelude.rnf instanceType+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf securityGroupIds+      `Prelude.seq` Prelude.rnf status+      `Prelude.seq` Prelude.rnf subnetIds+      `Prelude.seq` Prelude.rnf vpcId
+ gen/Amazonka/M2/Lens.hs view
@@ -0,0 +1,587 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Lens+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Lens+  ( -- * Operations++    -- ** CancelBatchJobExecution+    cancelBatchJobExecution_applicationId,+    cancelBatchJobExecution_executionId,+    cancelBatchJobExecutionResponse_httpStatus,++    -- ** CreateApplication+    createApplication_clientToken,+    createApplication_description,+    createApplication_kmsKeyId,+    createApplication_tags,+    createApplication_definition,+    createApplication_engineType,+    createApplication_name,+    createApplicationResponse_httpStatus,+    createApplicationResponse_applicationArn,+    createApplicationResponse_applicationId,+    createApplicationResponse_applicationVersion,++    -- ** CreateDataSetImportTask+    createDataSetImportTask_clientToken,+    createDataSetImportTask_applicationId,+    createDataSetImportTask_importConfig,+    createDataSetImportTaskResponse_httpStatus,+    createDataSetImportTaskResponse_taskId,++    -- ** CreateDeployment+    createDeployment_clientToken,+    createDeployment_applicationId,+    createDeployment_applicationVersion,+    createDeployment_environmentId,+    createDeploymentResponse_httpStatus,+    createDeploymentResponse_deploymentId,++    -- ** CreateEnvironment+    createEnvironment_clientToken,+    createEnvironment_description,+    createEnvironment_engineVersion,+    createEnvironment_highAvailabilityConfig,+    createEnvironment_kmsKeyId,+    createEnvironment_preferredMaintenanceWindow,+    createEnvironment_publiclyAccessible,+    createEnvironment_securityGroupIds,+    createEnvironment_storageConfigurations,+    createEnvironment_subnetIds,+    createEnvironment_tags,+    createEnvironment_engineType,+    createEnvironment_instanceType,+    createEnvironment_name,+    createEnvironmentResponse_httpStatus,+    createEnvironmentResponse_environmentId,++    -- ** DeleteApplication+    deleteApplication_applicationId,+    deleteApplicationResponse_httpStatus,++    -- ** DeleteApplicationFromEnvironment+    deleteApplicationFromEnvironment_applicationId,+    deleteApplicationFromEnvironment_environmentId,+    deleteApplicationFromEnvironmentResponse_httpStatus,++    -- ** DeleteEnvironment+    deleteEnvironment_environmentId,+    deleteEnvironmentResponse_httpStatus,++    -- ** GetApplication+    getApplication_applicationId,+    getApplicationResponse_deployedVersion,+    getApplicationResponse_description,+    getApplicationResponse_environmentId,+    getApplicationResponse_kmsKeyId,+    getApplicationResponse_lastStartTime,+    getApplicationResponse_listenerArns,+    getApplicationResponse_listenerPorts,+    getApplicationResponse_loadBalancerDnsName,+    getApplicationResponse_logGroups,+    getApplicationResponse_statusReason,+    getApplicationResponse_tags,+    getApplicationResponse_targetGroupArns,+    getApplicationResponse_httpStatus,+    getApplicationResponse_applicationArn,+    getApplicationResponse_applicationId,+    getApplicationResponse_creationTime,+    getApplicationResponse_engineType,+    getApplicationResponse_latestVersion,+    getApplicationResponse_name,+    getApplicationResponse_status,++    -- ** GetApplicationVersion+    getApplicationVersion_applicationId,+    getApplicationVersion_applicationVersion,+    getApplicationVersionResponse_description,+    getApplicationVersionResponse_statusReason,+    getApplicationVersionResponse_httpStatus,+    getApplicationVersionResponse_applicationVersion,+    getApplicationVersionResponse_creationTime,+    getApplicationVersionResponse_definitionContent,+    getApplicationVersionResponse_name,+    getApplicationVersionResponse_status,++    -- ** GetBatchJobExecution+    getBatchJobExecution_applicationId,+    getBatchJobExecution_executionId,+    getBatchJobExecutionResponse_endTime,+    getBatchJobExecutionResponse_jobId,+    getBatchJobExecutionResponse_jobName,+    getBatchJobExecutionResponse_jobType,+    getBatchJobExecutionResponse_jobUser,+    getBatchJobExecutionResponse_statusReason,+    getBatchJobExecutionResponse_httpStatus,+    getBatchJobExecutionResponse_applicationId,+    getBatchJobExecutionResponse_executionId,+    getBatchJobExecutionResponse_startTime,+    getBatchJobExecutionResponse_status,++    -- ** GetDataSetDetails+    getDataSetDetails_applicationId,+    getDataSetDetails_dataSetName,+    getDataSetDetailsResponse_blocksize,+    getDataSetDetailsResponse_creationTime,+    getDataSetDetailsResponse_dataSetOrg,+    getDataSetDetailsResponse_lastReferencedTime,+    getDataSetDetailsResponse_lastUpdatedTime,+    getDataSetDetailsResponse_location,+    getDataSetDetailsResponse_recordLength,+    getDataSetDetailsResponse_httpStatus,+    getDataSetDetailsResponse_dataSetName,++    -- ** GetDataSetImportTask+    getDataSetImportTask_applicationId,+    getDataSetImportTask_taskId,+    getDataSetImportTaskResponse_summary,+    getDataSetImportTaskResponse_httpStatus,+    getDataSetImportTaskResponse_status,+    getDataSetImportTaskResponse_taskId,++    -- ** GetDeployment+    getDeployment_applicationId,+    getDeployment_deploymentId,+    getDeploymentResponse_statusReason,+    getDeploymentResponse_httpStatus,+    getDeploymentResponse_applicationId,+    getDeploymentResponse_applicationVersion,+    getDeploymentResponse_creationTime,+    getDeploymentResponse_deploymentId,+    getDeploymentResponse_environmentId,+    getDeploymentResponse_status,++    -- ** GetEnvironment+    getEnvironment_environmentId,+    getEnvironmentResponse_actualCapacity,+    getEnvironmentResponse_description,+    getEnvironmentResponse_highAvailabilityConfig,+    getEnvironmentResponse_kmsKeyId,+    getEnvironmentResponse_loadBalancerArn,+    getEnvironmentResponse_pendingMaintenance,+    getEnvironmentResponse_preferredMaintenanceWindow,+    getEnvironmentResponse_publiclyAccessible,+    getEnvironmentResponse_statusReason,+    getEnvironmentResponse_storageConfigurations,+    getEnvironmentResponse_tags,+    getEnvironmentResponse_httpStatus,+    getEnvironmentResponse_creationTime,+    getEnvironmentResponse_engineType,+    getEnvironmentResponse_engineVersion,+    getEnvironmentResponse_environmentArn,+    getEnvironmentResponse_environmentId,+    getEnvironmentResponse_instanceType,+    getEnvironmentResponse_name,+    getEnvironmentResponse_securityGroupIds,+    getEnvironmentResponse_status,+    getEnvironmentResponse_subnetIds,+    getEnvironmentResponse_vpcId,++    -- ** ListApplicationVersions+    listApplicationVersions_maxResults,+    listApplicationVersions_nextToken,+    listApplicationVersions_applicationId,+    listApplicationVersionsResponse_nextToken,+    listApplicationVersionsResponse_httpStatus,+    listApplicationVersionsResponse_applicationVersions,++    -- ** ListApplications+    listApplications_environmentId,+    listApplications_maxResults,+    listApplications_names,+    listApplications_nextToken,+    listApplicationsResponse_nextToken,+    listApplicationsResponse_httpStatus,+    listApplicationsResponse_applications,++    -- ** ListBatchJobDefinitions+    listBatchJobDefinitions_maxResults,+    listBatchJobDefinitions_nextToken,+    listBatchJobDefinitions_prefix,+    listBatchJobDefinitions_applicationId,+    listBatchJobDefinitionsResponse_nextToken,+    listBatchJobDefinitionsResponse_httpStatus,+    listBatchJobDefinitionsResponse_batchJobDefinitions,++    -- ** ListBatchJobExecutions+    listBatchJobExecutions_executionIds,+    listBatchJobExecutions_jobName,+    listBatchJobExecutions_maxResults,+    listBatchJobExecutions_nextToken,+    listBatchJobExecutions_startedAfter,+    listBatchJobExecutions_startedBefore,+    listBatchJobExecutions_status,+    listBatchJobExecutions_applicationId,+    listBatchJobExecutionsResponse_nextToken,+    listBatchJobExecutionsResponse_httpStatus,+    listBatchJobExecutionsResponse_batchJobExecutions,++    -- ** ListDataSetImportHistory+    listDataSetImportHistory_maxResults,+    listDataSetImportHistory_nextToken,+    listDataSetImportHistory_applicationId,+    listDataSetImportHistoryResponse_nextToken,+    listDataSetImportHistoryResponse_httpStatus,+    listDataSetImportHistoryResponse_dataSetImportTasks,++    -- ** ListDataSets+    listDataSets_maxResults,+    listDataSets_nextToken,+    listDataSets_prefix,+    listDataSets_applicationId,+    listDataSetsResponse_nextToken,+    listDataSetsResponse_httpStatus,+    listDataSetsResponse_dataSets,++    -- ** ListDeployments+    listDeployments_maxResults,+    listDeployments_nextToken,+    listDeployments_applicationId,+    listDeploymentsResponse_nextToken,+    listDeploymentsResponse_httpStatus,+    listDeploymentsResponse_deployments,++    -- ** ListEngineVersions+    listEngineVersions_engineType,+    listEngineVersions_maxResults,+    listEngineVersions_nextToken,+    listEngineVersionsResponse_nextToken,+    listEngineVersionsResponse_httpStatus,+    listEngineVersionsResponse_engineVersions,++    -- ** ListEnvironments+    listEnvironments_engineType,+    listEnvironments_maxResults,+    listEnvironments_names,+    listEnvironments_nextToken,+    listEnvironmentsResponse_nextToken,+    listEnvironmentsResponse_httpStatus,+    listEnvironmentsResponse_environments,++    -- ** ListTagsForResource+    listTagsForResource_resourceArn,+    listTagsForResourceResponse_httpStatus,+    listTagsForResourceResponse_tags,++    -- ** StartApplication+    startApplication_applicationId,+    startApplicationResponse_httpStatus,++    -- ** StartBatchJob+    startBatchJob_jobParams,+    startBatchJob_applicationId,+    startBatchJob_batchJobIdentifier,+    startBatchJobResponse_httpStatus,+    startBatchJobResponse_executionId,++    -- ** StopApplication+    stopApplication_forceStop,+    stopApplication_applicationId,+    stopApplicationResponse_httpStatus,++    -- ** TagResource+    tagResource_resourceArn,+    tagResource_tags,+    tagResourceResponse_httpStatus,++    -- ** UntagResource+    untagResource_resourceArn,+    untagResource_tagKeys,+    untagResourceResponse_httpStatus,++    -- ** UpdateApplication+    updateApplication_definition,+    updateApplication_description,+    updateApplication_applicationId,+    updateApplication_currentApplicationVersion,+    updateApplicationResponse_httpStatus,+    updateApplicationResponse_applicationVersion,++    -- ** UpdateEnvironment+    updateEnvironment_applyDuringMaintenanceWindow,+    updateEnvironment_desiredCapacity,+    updateEnvironment_engineVersion,+    updateEnvironment_instanceType,+    updateEnvironment_preferredMaintenanceWindow,+    updateEnvironment_environmentId,+    updateEnvironmentResponse_httpStatus,+    updateEnvironmentResponse_environmentId,++    -- * Types++    -- ** AlternateKey+    alternateKey_allowDuplicates,+    alternateKey_name,+    alternateKey_length,+    alternateKey_offset,++    -- ** ApplicationSummary+    applicationSummary_deploymentStatus,+    applicationSummary_description,+    applicationSummary_environmentId,+    applicationSummary_lastStartTime,+    applicationSummary_versionStatus,+    applicationSummary_applicationArn,+    applicationSummary_applicationId,+    applicationSummary_applicationVersion,+    applicationSummary_creationTime,+    applicationSummary_engineType,+    applicationSummary_name,+    applicationSummary_status,++    -- ** ApplicationVersionSummary+    applicationVersionSummary_statusReason,+    applicationVersionSummary_applicationVersion,+    applicationVersionSummary_creationTime,+    applicationVersionSummary_status,++    -- ** BatchJobDefinition+    batchJobDefinition_fileBatchJobDefinition,+    batchJobDefinition_scriptBatchJobDefinition,++    -- ** BatchJobExecutionSummary+    batchJobExecutionSummary_endTime,+    batchJobExecutionSummary_jobId,+    batchJobExecutionSummary_jobName,+    batchJobExecutionSummary_jobType,+    batchJobExecutionSummary_applicationId,+    batchJobExecutionSummary_executionId,+    batchJobExecutionSummary_startTime,+    batchJobExecutionSummary_status,++    -- ** BatchJobIdentifier+    batchJobIdentifier_fileBatchJobIdentifier,+    batchJobIdentifier_scriptBatchJobIdentifier,++    -- ** DataSet+    dataSet_relativePath,+    dataSet_storageType,+    dataSet_datasetName,+    dataSet_datasetOrg,+    dataSet_recordLength,++    -- ** DataSetImportConfig+    dataSetImportConfig_dataSets,+    dataSetImportConfig_s3Location,++    -- ** DataSetImportItem+    dataSetImportItem_dataSet,+    dataSetImportItem_externalLocation,++    -- ** DataSetImportSummary+    dataSetImportSummary_failed,+    dataSetImportSummary_inProgress,+    dataSetImportSummary_pending,+    dataSetImportSummary_succeeded,+    dataSetImportSummary_total,++    -- ** DataSetImportTask+    dataSetImportTask_status,+    dataSetImportTask_summary,+    dataSetImportTask_taskId,++    -- ** DataSetSummary+    dataSetSummary_creationTime,+    dataSetSummary_dataSetOrg,+    dataSetSummary_format,+    dataSetSummary_lastReferencedTime,+    dataSetSummary_lastUpdatedTime,+    dataSetSummary_dataSetName,++    -- ** DatasetDetailOrgAttributes+    datasetDetailOrgAttributes_gdg,+    datasetDetailOrgAttributes_vsam,++    -- ** DatasetOrgAttributes+    datasetOrgAttributes_gdg,+    datasetOrgAttributes_vsam,++    -- ** Definition+    definition_content,+    definition_s3Location,++    -- ** DeployedVersionSummary+    deployedVersionSummary_statusReason,+    deployedVersionSummary_applicationVersion,+    deployedVersionSummary_status,++    -- ** DeploymentSummary+    deploymentSummary_statusReason,+    deploymentSummary_applicationId,+    deploymentSummary_applicationVersion,+    deploymentSummary_creationTime,+    deploymentSummary_deploymentId,+    deploymentSummary_environmentId,+    deploymentSummary_status,++    -- ** EfsStorageConfiguration+    efsStorageConfiguration_fileSystemId,+    efsStorageConfiguration_mountPoint,++    -- ** EngineVersionsSummary+    engineVersionsSummary_engineType,+    engineVersionsSummary_engineVersion,++    -- ** EnvironmentSummary+    environmentSummary_creationTime,+    environmentSummary_engineType,+    environmentSummary_engineVersion,+    environmentSummary_environmentArn,+    environmentSummary_environmentId,+    environmentSummary_instanceType,+    environmentSummary_name,+    environmentSummary_status,++    -- ** ExternalLocation+    externalLocation_s3Location,++    -- ** FileBatchJobDefinition+    fileBatchJobDefinition_folderPath,+    fileBatchJobDefinition_fileName,++    -- ** FileBatchJobIdentifier+    fileBatchJobIdentifier_folderPath,+    fileBatchJobIdentifier_fileName,++    -- ** FsxStorageConfiguration+    fsxStorageConfiguration_fileSystemId,+    fsxStorageConfiguration_mountPoint,++    -- ** GdgAttributes+    gdgAttributes_limit,+    gdgAttributes_rollDisposition,++    -- ** GdgDetailAttributes+    gdgDetailAttributes_limit,+    gdgDetailAttributes_rollDisposition,++    -- ** HighAvailabilityConfig+    highAvailabilityConfig_desiredCapacity,++    -- ** LogGroupSummary+    logGroupSummary_logGroupName,+    logGroupSummary_logType,++    -- ** MaintenanceSchedule+    maintenanceSchedule_endTime,+    maintenanceSchedule_startTime,++    -- ** PendingMaintenance+    pendingMaintenance_engineVersion,+    pendingMaintenance_schedule,++    -- ** PrimaryKey+    primaryKey_name,+    primaryKey_length,+    primaryKey_offset,++    -- ** RecordLength+    recordLength_max,+    recordLength_min,++    -- ** ScriptBatchJobDefinition+    scriptBatchJobDefinition_scriptName,++    -- ** ScriptBatchJobIdentifier+    scriptBatchJobIdentifier_scriptName,++    -- ** StorageConfiguration+    storageConfiguration_efs,+    storageConfiguration_fsx,++    -- ** VsamAttributes+    vsamAttributes_alternateKeys,+    vsamAttributes_compressed,+    vsamAttributes_encoding,+    vsamAttributes_primaryKey,+    vsamAttributes_format,++    -- ** VsamDetailAttributes+    vsamDetailAttributes_alternateKeys,+    vsamDetailAttributes_cacheAtStartup,+    vsamDetailAttributes_compressed,+    vsamDetailAttributes_encoding,+    vsamDetailAttributes_primaryKey,+    vsamDetailAttributes_recordFormat,+  )+where++import Amazonka.M2.CancelBatchJobExecution+import Amazonka.M2.CreateApplication+import Amazonka.M2.CreateDataSetImportTask+import Amazonka.M2.CreateDeployment+import Amazonka.M2.CreateEnvironment+import Amazonka.M2.DeleteApplication+import Amazonka.M2.DeleteApplicationFromEnvironment+import Amazonka.M2.DeleteEnvironment+import Amazonka.M2.GetApplication+import Amazonka.M2.GetApplicationVersion+import Amazonka.M2.GetBatchJobExecution+import Amazonka.M2.GetDataSetDetails+import Amazonka.M2.GetDataSetImportTask+import Amazonka.M2.GetDeployment+import Amazonka.M2.GetEnvironment+import Amazonka.M2.ListApplicationVersions+import Amazonka.M2.ListApplications+import Amazonka.M2.ListBatchJobDefinitions+import Amazonka.M2.ListBatchJobExecutions+import Amazonka.M2.ListDataSetImportHistory+import Amazonka.M2.ListDataSets+import Amazonka.M2.ListDeployments+import Amazonka.M2.ListEngineVersions+import Amazonka.M2.ListEnvironments+import Amazonka.M2.ListTagsForResource+import Amazonka.M2.StartApplication+import Amazonka.M2.StartBatchJob+import Amazonka.M2.StopApplication+import Amazonka.M2.TagResource+import Amazonka.M2.Types.AlternateKey+import Amazonka.M2.Types.ApplicationSummary+import Amazonka.M2.Types.ApplicationVersionSummary+import Amazonka.M2.Types.BatchJobDefinition+import Amazonka.M2.Types.BatchJobExecutionSummary+import Amazonka.M2.Types.BatchJobIdentifier+import Amazonka.M2.Types.DataSet+import Amazonka.M2.Types.DataSetImportConfig+import Amazonka.M2.Types.DataSetImportItem+import Amazonka.M2.Types.DataSetImportSummary+import Amazonka.M2.Types.DataSetImportTask+import Amazonka.M2.Types.DataSetSummary+import Amazonka.M2.Types.DatasetDetailOrgAttributes+import Amazonka.M2.Types.DatasetOrgAttributes+import Amazonka.M2.Types.Definition+import Amazonka.M2.Types.DeployedVersionSummary+import Amazonka.M2.Types.DeploymentSummary+import Amazonka.M2.Types.EfsStorageConfiguration+import Amazonka.M2.Types.EngineVersionsSummary+import Amazonka.M2.Types.EnvironmentSummary+import Amazonka.M2.Types.ExternalLocation+import Amazonka.M2.Types.FileBatchJobDefinition+import Amazonka.M2.Types.FileBatchJobIdentifier+import Amazonka.M2.Types.FsxStorageConfiguration+import Amazonka.M2.Types.GdgAttributes+import Amazonka.M2.Types.GdgDetailAttributes+import Amazonka.M2.Types.HighAvailabilityConfig+import Amazonka.M2.Types.LogGroupSummary+import Amazonka.M2.Types.MaintenanceSchedule+import Amazonka.M2.Types.PendingMaintenance+import Amazonka.M2.Types.PrimaryKey+import Amazonka.M2.Types.RecordLength+import Amazonka.M2.Types.ScriptBatchJobDefinition+import Amazonka.M2.Types.ScriptBatchJobIdentifier+import Amazonka.M2.Types.StorageConfiguration+import Amazonka.M2.Types.VsamAttributes+import Amazonka.M2.Types.VsamDetailAttributes+import Amazonka.M2.UntagResource+import Amazonka.M2.UpdateApplication+import Amazonka.M2.UpdateEnvironment
+ gen/Amazonka/M2/ListApplicationVersions.hs view
@@ -0,0 +1,248 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.ListApplicationVersions+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of the application versions for a specific application.+--+-- This operation returns paginated results.+module Amazonka.M2.ListApplicationVersions+  ( -- * Creating a Request+    ListApplicationVersions (..),+    newListApplicationVersions,++    -- * Request Lenses+    listApplicationVersions_maxResults,+    listApplicationVersions_nextToken,+    listApplicationVersions_applicationId,++    -- * Destructuring the Response+    ListApplicationVersionsResponse (..),+    newListApplicationVersionsResponse,++    -- * Response Lenses+    listApplicationVersionsResponse_nextToken,+    listApplicationVersionsResponse_httpStatus,+    listApplicationVersionsResponse_applicationVersions,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListApplicationVersions' smart constructor.+data ListApplicationVersions = ListApplicationVersions'+  { -- | The maximum number of application versions to return.+    maxResults :: Prelude.Maybe Prelude.Natural,+    -- | A pagination token returned from a previous call to this operation. This+    -- specifies the next item to return. To return to the beginning of the+    -- list, exclude this parameter.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The unique identifier of the application.+    applicationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplicationVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listApplicationVersions_maxResults' - The maximum number of application versions to return.+--+-- 'nextToken', 'listApplicationVersions_nextToken' - A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+--+-- 'applicationId', 'listApplicationVersions_applicationId' - The unique identifier of the application.+newListApplicationVersions ::+  -- | 'applicationId'+  Prelude.Text ->+  ListApplicationVersions+newListApplicationVersions pApplicationId_ =+  ListApplicationVersions'+    { maxResults =+        Prelude.Nothing,+      nextToken = Prelude.Nothing,+      applicationId = pApplicationId_+    }++-- | The maximum number of application versions to return.+listApplicationVersions_maxResults :: Lens.Lens' ListApplicationVersions (Prelude.Maybe Prelude.Natural)+listApplicationVersions_maxResults = Lens.lens (\ListApplicationVersions' {maxResults} -> maxResults) (\s@ListApplicationVersions' {} a -> s {maxResults = a} :: ListApplicationVersions)++-- | A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+listApplicationVersions_nextToken :: Lens.Lens' ListApplicationVersions (Prelude.Maybe Prelude.Text)+listApplicationVersions_nextToken = Lens.lens (\ListApplicationVersions' {nextToken} -> nextToken) (\s@ListApplicationVersions' {} a -> s {nextToken = a} :: ListApplicationVersions)++-- | The unique identifier of the application.+listApplicationVersions_applicationId :: Lens.Lens' ListApplicationVersions Prelude.Text+listApplicationVersions_applicationId = Lens.lens (\ListApplicationVersions' {applicationId} -> applicationId) (\s@ListApplicationVersions' {} a -> s {applicationId = a} :: ListApplicationVersions)++instance Core.AWSPager ListApplicationVersions where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listApplicationVersionsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^. listApplicationVersionsResponse_applicationVersions+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listApplicationVersions_nextToken+          Lens..~ rs+          Lens.^? listApplicationVersionsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListApplicationVersions where+  type+    AWSResponse ListApplicationVersions =+      ListApplicationVersionsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListApplicationVersionsResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> ( x+                            Data..?> "applicationVersions"+                            Core..!@ Prelude.mempty+                        )+      )++instance Prelude.Hashable ListApplicationVersions where+  hashWithSalt _salt ListApplicationVersions' {..} =+    _salt+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` applicationId++instance Prelude.NFData ListApplicationVersions where+  rnf ListApplicationVersions' {..} =+    Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf applicationId++instance Data.ToHeaders ListApplicationVersions where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListApplicationVersions where+  toPath ListApplicationVersions' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/versions"+      ]++instance Data.ToQuery ListApplicationVersions where+  toQuery ListApplicationVersions' {..} =+    Prelude.mconcat+      [ "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken+      ]++-- | /See:/ 'newListApplicationVersionsResponse' smart constructor.+data ListApplicationVersionsResponse = ListApplicationVersionsResponse'+  { -- | If there are more items to return, this contains a token that is passed+    -- to a subsequent call to this operation to retrieve the next set of+    -- items.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The list of application versions.+    applicationVersions :: [ApplicationVersionSummary]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplicationVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listApplicationVersionsResponse_nextToken' - If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+--+-- 'httpStatus', 'listApplicationVersionsResponse_httpStatus' - The response's http status code.+--+-- 'applicationVersions', 'listApplicationVersionsResponse_applicationVersions' - The list of application versions.+newListApplicationVersionsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListApplicationVersionsResponse+newListApplicationVersionsResponse pHttpStatus_ =+  ListApplicationVersionsResponse'+    { nextToken =+        Prelude.Nothing,+      httpStatus = pHttpStatus_,+      applicationVersions = Prelude.mempty+    }++-- | If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+listApplicationVersionsResponse_nextToken :: Lens.Lens' ListApplicationVersionsResponse (Prelude.Maybe Prelude.Text)+listApplicationVersionsResponse_nextToken = Lens.lens (\ListApplicationVersionsResponse' {nextToken} -> nextToken) (\s@ListApplicationVersionsResponse' {} a -> s {nextToken = a} :: ListApplicationVersionsResponse)++-- | The response's http status code.+listApplicationVersionsResponse_httpStatus :: Lens.Lens' ListApplicationVersionsResponse Prelude.Int+listApplicationVersionsResponse_httpStatus = Lens.lens (\ListApplicationVersionsResponse' {httpStatus} -> httpStatus) (\s@ListApplicationVersionsResponse' {} a -> s {httpStatus = a} :: ListApplicationVersionsResponse)++-- | The list of application versions.+listApplicationVersionsResponse_applicationVersions :: Lens.Lens' ListApplicationVersionsResponse [ApplicationVersionSummary]+listApplicationVersionsResponse_applicationVersions = Lens.lens (\ListApplicationVersionsResponse' {applicationVersions} -> applicationVersions) (\s@ListApplicationVersionsResponse' {} a -> s {applicationVersions = a} :: ListApplicationVersionsResponse) Prelude.. Lens.coerced++instance+  Prelude.NFData+    ListApplicationVersionsResponse+  where+  rnf ListApplicationVersionsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationVersions
+ gen/Amazonka/M2/ListApplications.hs view
@@ -0,0 +1,251 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.ListApplications+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the applications associated with a specific Amazon Web Services+-- account. You can provide the unique identifier of a specific runtime+-- environment in a query parameter to see all applications associated with+-- that environment.+--+-- This operation returns paginated results.+module Amazonka.M2.ListApplications+  ( -- * Creating a Request+    ListApplications (..),+    newListApplications,++    -- * Request Lenses+    listApplications_environmentId,+    listApplications_maxResults,+    listApplications_names,+    listApplications_nextToken,++    -- * Destructuring the Response+    ListApplicationsResponse (..),+    newListApplicationsResponse,++    -- * Response Lenses+    listApplicationsResponse_nextToken,+    listApplicationsResponse_httpStatus,+    listApplicationsResponse_applications,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListApplications' smart constructor.+data ListApplications = ListApplications'+  { -- | The unique identifier of the runtime environment where the applications+    -- are deployed.+    environmentId :: Prelude.Maybe Prelude.Text,+    -- | The maximum number of applications to return.+    maxResults :: Prelude.Maybe Prelude.Natural,+    -- | The names of the applications.+    names :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+    -- | A pagination token to control the number of applications displayed in+    -- the list.+    nextToken :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplications' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'environmentId', 'listApplications_environmentId' - The unique identifier of the runtime environment where the applications+-- are deployed.+--+-- 'maxResults', 'listApplications_maxResults' - The maximum number of applications to return.+--+-- 'names', 'listApplications_names' - The names of the applications.+--+-- 'nextToken', 'listApplications_nextToken' - A pagination token to control the number of applications displayed in+-- the list.+newListApplications ::+  ListApplications+newListApplications =+  ListApplications'+    { environmentId = Prelude.Nothing,+      maxResults = Prelude.Nothing,+      names = Prelude.Nothing,+      nextToken = Prelude.Nothing+    }++-- | The unique identifier of the runtime environment where the applications+-- are deployed.+listApplications_environmentId :: Lens.Lens' ListApplications (Prelude.Maybe Prelude.Text)+listApplications_environmentId = Lens.lens (\ListApplications' {environmentId} -> environmentId) (\s@ListApplications' {} a -> s {environmentId = a} :: ListApplications)++-- | The maximum number of applications to return.+listApplications_maxResults :: Lens.Lens' ListApplications (Prelude.Maybe Prelude.Natural)+listApplications_maxResults = Lens.lens (\ListApplications' {maxResults} -> maxResults) (\s@ListApplications' {} a -> s {maxResults = a} :: ListApplications)++-- | The names of the applications.+listApplications_names :: Lens.Lens' ListApplications (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+listApplications_names = Lens.lens (\ListApplications' {names} -> names) (\s@ListApplications' {} a -> s {names = a} :: ListApplications) Prelude.. Lens.mapping Lens.coerced++-- | A pagination token to control the number of applications displayed in+-- the list.+listApplications_nextToken :: Lens.Lens' ListApplications (Prelude.Maybe Prelude.Text)+listApplications_nextToken = Lens.lens (\ListApplications' {nextToken} -> nextToken) (\s@ListApplications' {} a -> s {nextToken = a} :: ListApplications)++instance Core.AWSPager ListApplications where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listApplicationsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        (rs Lens.^. listApplicationsResponse_applications) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listApplications_nextToken+          Lens..~ rs+          Lens.^? listApplicationsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListApplications where+  type+    AWSResponse ListApplications =+      ListApplicationsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListApplicationsResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..?> "applications" Core..!@ Prelude.mempty)+      )++instance Prelude.Hashable ListApplications where+  hashWithSalt _salt ListApplications' {..} =+    _salt+      `Prelude.hashWithSalt` environmentId+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` names+      `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListApplications where+  rnf ListApplications' {..} =+    Prelude.rnf environmentId+      `Prelude.seq` Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf names+      `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListApplications where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListApplications where+  toPath = Prelude.const "/applications"++instance Data.ToQuery ListApplications where+  toQuery ListApplications' {..} =+    Prelude.mconcat+      [ "environmentId" Data.=: environmentId,+        "maxResults" Data.=: maxResults,+        "names"+          Data.=: Data.toQuery+            (Data.toQueryList "member" Prelude.<$> names),+        "nextToken" Data.=: nextToken+      ]++-- | /See:/ 'newListApplicationsResponse' smart constructor.+data ListApplicationsResponse = ListApplicationsResponse'+  { -- | A pagination token that\'s returned when the response doesn\'t contain+    -- all applications.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | Returns a list of summary details for all the applications in a runtime+    -- environment.+    applications :: [ApplicationSummary]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplicationsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listApplicationsResponse_nextToken' - A pagination token that\'s returned when the response doesn\'t contain+-- all applications.+--+-- 'httpStatus', 'listApplicationsResponse_httpStatus' - The response's http status code.+--+-- 'applications', 'listApplicationsResponse_applications' - Returns a list of summary details for all the applications in a runtime+-- environment.+newListApplicationsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListApplicationsResponse+newListApplicationsResponse pHttpStatus_ =+  ListApplicationsResponse'+    { nextToken =+        Prelude.Nothing,+      httpStatus = pHttpStatus_,+      applications = Prelude.mempty+    }++-- | A pagination token that\'s returned when the response doesn\'t contain+-- all applications.+listApplicationsResponse_nextToken :: Lens.Lens' ListApplicationsResponse (Prelude.Maybe Prelude.Text)+listApplicationsResponse_nextToken = Lens.lens (\ListApplicationsResponse' {nextToken} -> nextToken) (\s@ListApplicationsResponse' {} a -> s {nextToken = a} :: ListApplicationsResponse)++-- | The response's http status code.+listApplicationsResponse_httpStatus :: Lens.Lens' ListApplicationsResponse Prelude.Int+listApplicationsResponse_httpStatus = Lens.lens (\ListApplicationsResponse' {httpStatus} -> httpStatus) (\s@ListApplicationsResponse' {} a -> s {httpStatus = a} :: ListApplicationsResponse)++-- | Returns a list of summary details for all the applications in a runtime+-- environment.+listApplicationsResponse_applications :: Lens.Lens' ListApplicationsResponse [ApplicationSummary]+listApplicationsResponse_applications = Lens.lens (\ListApplicationsResponse' {applications} -> applications) (\s@ListApplicationsResponse' {} a -> s {applications = a} :: ListApplicationsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListApplicationsResponse where+  rnf ListApplicationsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applications
+ gen/Amazonka/M2/ListBatchJobDefinitions.hs view
@@ -0,0 +1,266 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.ListBatchJobDefinitions+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the available batch job definitions based on the batch job+-- resources uploaded during the application creation. You can use the+-- batch job definitions in the list to start a batch job.+--+-- This operation returns paginated results.+module Amazonka.M2.ListBatchJobDefinitions+  ( -- * Creating a Request+    ListBatchJobDefinitions (..),+    newListBatchJobDefinitions,++    -- * Request Lenses+    listBatchJobDefinitions_maxResults,+    listBatchJobDefinitions_nextToken,+    listBatchJobDefinitions_prefix,+    listBatchJobDefinitions_applicationId,++    -- * Destructuring the Response+    ListBatchJobDefinitionsResponse (..),+    newListBatchJobDefinitionsResponse,++    -- * Response Lenses+    listBatchJobDefinitionsResponse_nextToken,+    listBatchJobDefinitionsResponse_httpStatus,+    listBatchJobDefinitionsResponse_batchJobDefinitions,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListBatchJobDefinitions' smart constructor.+data ListBatchJobDefinitions = ListBatchJobDefinitions'+  { -- | The maximum number of batch job definitions to return.+    maxResults :: Prelude.Maybe Prelude.Natural,+    -- | A pagination token returned from a previous call to this operation. This+    -- specifies the next item to return. To return to the beginning of the+    -- list, exclude this parameter.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | If the batch job definition is a FileBatchJobDefinition, the prefix+    -- allows you to search on the file names of FileBatchJobDefinitions.+    prefix :: Prelude.Maybe Prelude.Text,+    -- | The identifier of the application.+    applicationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBatchJobDefinitions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listBatchJobDefinitions_maxResults' - The maximum number of batch job definitions to return.+--+-- 'nextToken', 'listBatchJobDefinitions_nextToken' - A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+--+-- 'prefix', 'listBatchJobDefinitions_prefix' - If the batch job definition is a FileBatchJobDefinition, the prefix+-- allows you to search on the file names of FileBatchJobDefinitions.+--+-- 'applicationId', 'listBatchJobDefinitions_applicationId' - The identifier of the application.+newListBatchJobDefinitions ::+  -- | 'applicationId'+  Prelude.Text ->+  ListBatchJobDefinitions+newListBatchJobDefinitions pApplicationId_ =+  ListBatchJobDefinitions'+    { maxResults =+        Prelude.Nothing,+      nextToken = Prelude.Nothing,+      prefix = Prelude.Nothing,+      applicationId = pApplicationId_+    }++-- | The maximum number of batch job definitions to return.+listBatchJobDefinitions_maxResults :: Lens.Lens' ListBatchJobDefinitions (Prelude.Maybe Prelude.Natural)+listBatchJobDefinitions_maxResults = Lens.lens (\ListBatchJobDefinitions' {maxResults} -> maxResults) (\s@ListBatchJobDefinitions' {} a -> s {maxResults = a} :: ListBatchJobDefinitions)++-- | A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+listBatchJobDefinitions_nextToken :: Lens.Lens' ListBatchJobDefinitions (Prelude.Maybe Prelude.Text)+listBatchJobDefinitions_nextToken = Lens.lens (\ListBatchJobDefinitions' {nextToken} -> nextToken) (\s@ListBatchJobDefinitions' {} a -> s {nextToken = a} :: ListBatchJobDefinitions)++-- | If the batch job definition is a FileBatchJobDefinition, the prefix+-- allows you to search on the file names of FileBatchJobDefinitions.+listBatchJobDefinitions_prefix :: Lens.Lens' ListBatchJobDefinitions (Prelude.Maybe Prelude.Text)+listBatchJobDefinitions_prefix = Lens.lens (\ListBatchJobDefinitions' {prefix} -> prefix) (\s@ListBatchJobDefinitions' {} a -> s {prefix = a} :: ListBatchJobDefinitions)++-- | The identifier of the application.+listBatchJobDefinitions_applicationId :: Lens.Lens' ListBatchJobDefinitions Prelude.Text+listBatchJobDefinitions_applicationId = Lens.lens (\ListBatchJobDefinitions' {applicationId} -> applicationId) (\s@ListBatchJobDefinitions' {} a -> s {applicationId = a} :: ListBatchJobDefinitions)++instance Core.AWSPager ListBatchJobDefinitions where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listBatchJobDefinitionsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^. listBatchJobDefinitionsResponse_batchJobDefinitions+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listBatchJobDefinitions_nextToken+          Lens..~ rs+          Lens.^? listBatchJobDefinitionsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListBatchJobDefinitions where+  type+    AWSResponse ListBatchJobDefinitions =+      ListBatchJobDefinitionsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListBatchJobDefinitionsResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> ( x+                            Data..?> "batchJobDefinitions"+                            Core..!@ Prelude.mempty+                        )+      )++instance Prelude.Hashable ListBatchJobDefinitions where+  hashWithSalt _salt ListBatchJobDefinitions' {..} =+    _salt+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` prefix+      `Prelude.hashWithSalt` applicationId++instance Prelude.NFData ListBatchJobDefinitions where+  rnf ListBatchJobDefinitions' {..} =+    Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf prefix+      `Prelude.seq` Prelude.rnf applicationId++instance Data.ToHeaders ListBatchJobDefinitions where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListBatchJobDefinitions where+  toPath ListBatchJobDefinitions' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/batch-job-definitions"+      ]++instance Data.ToQuery ListBatchJobDefinitions where+  toQuery ListBatchJobDefinitions' {..} =+    Prelude.mconcat+      [ "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken,+        "prefix" Data.=: prefix+      ]++-- | /See:/ 'newListBatchJobDefinitionsResponse' smart constructor.+data ListBatchJobDefinitionsResponse = ListBatchJobDefinitionsResponse'+  { -- | If there are more items to return, this contains a token that is passed+    -- to a subsequent call to this operation to retrieve the next set of+    -- items.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The list of batch job definitions.+    batchJobDefinitions :: [BatchJobDefinition]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBatchJobDefinitionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listBatchJobDefinitionsResponse_nextToken' - If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+--+-- 'httpStatus', 'listBatchJobDefinitionsResponse_httpStatus' - The response's http status code.+--+-- 'batchJobDefinitions', 'listBatchJobDefinitionsResponse_batchJobDefinitions' - The list of batch job definitions.+newListBatchJobDefinitionsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListBatchJobDefinitionsResponse+newListBatchJobDefinitionsResponse pHttpStatus_ =+  ListBatchJobDefinitionsResponse'+    { nextToken =+        Prelude.Nothing,+      httpStatus = pHttpStatus_,+      batchJobDefinitions = Prelude.mempty+    }++-- | If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+listBatchJobDefinitionsResponse_nextToken :: Lens.Lens' ListBatchJobDefinitionsResponse (Prelude.Maybe Prelude.Text)+listBatchJobDefinitionsResponse_nextToken = Lens.lens (\ListBatchJobDefinitionsResponse' {nextToken} -> nextToken) (\s@ListBatchJobDefinitionsResponse' {} a -> s {nextToken = a} :: ListBatchJobDefinitionsResponse)++-- | The response's http status code.+listBatchJobDefinitionsResponse_httpStatus :: Lens.Lens' ListBatchJobDefinitionsResponse Prelude.Int+listBatchJobDefinitionsResponse_httpStatus = Lens.lens (\ListBatchJobDefinitionsResponse' {httpStatus} -> httpStatus) (\s@ListBatchJobDefinitionsResponse' {} a -> s {httpStatus = a} :: ListBatchJobDefinitionsResponse)++-- | The list of batch job definitions.+listBatchJobDefinitionsResponse_batchJobDefinitions :: Lens.Lens' ListBatchJobDefinitionsResponse [BatchJobDefinition]+listBatchJobDefinitionsResponse_batchJobDefinitions = Lens.lens (\ListBatchJobDefinitionsResponse' {batchJobDefinitions} -> batchJobDefinitions) (\s@ListBatchJobDefinitionsResponse' {} a -> s {batchJobDefinitions = a} :: ListBatchJobDefinitionsResponse) Prelude.. Lens.coerced++instance+  Prelude.NFData+    ListBatchJobDefinitionsResponse+  where+  rnf ListBatchJobDefinitionsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf batchJobDefinitions
+ gen/Amazonka/M2/ListBatchJobExecutions.hs view
@@ -0,0 +1,310 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.ListBatchJobExecutions+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists historical, current, and scheduled batch job executions for a+-- specific application.+--+-- This operation returns paginated results.+module Amazonka.M2.ListBatchJobExecutions+  ( -- * Creating a Request+    ListBatchJobExecutions (..),+    newListBatchJobExecutions,++    -- * Request Lenses+    listBatchJobExecutions_executionIds,+    listBatchJobExecutions_jobName,+    listBatchJobExecutions_maxResults,+    listBatchJobExecutions_nextToken,+    listBatchJobExecutions_startedAfter,+    listBatchJobExecutions_startedBefore,+    listBatchJobExecutions_status,+    listBatchJobExecutions_applicationId,++    -- * Destructuring the Response+    ListBatchJobExecutionsResponse (..),+    newListBatchJobExecutionsResponse,++    -- * Response Lenses+    listBatchJobExecutionsResponse_nextToken,+    listBatchJobExecutionsResponse_httpStatus,+    listBatchJobExecutionsResponse_batchJobExecutions,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListBatchJobExecutions' smart constructor.+data ListBatchJobExecutions = ListBatchJobExecutions'+  { -- | The unique identifier of each batch job execution.+    executionIds :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+    -- | The name of each batch job execution.+    jobName :: Prelude.Maybe Prelude.Text,+    -- | The maximum number of batch job executions to return.+    maxResults :: Prelude.Maybe Prelude.Natural,+    -- | A pagination token to control the number of batch job executions+    -- displayed in the list.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The time after which the batch job executions started.+    startedAfter :: Prelude.Maybe Data.POSIX,+    -- | The time before the batch job executions started.+    startedBefore :: Prelude.Maybe Data.POSIX,+    -- | The status of the batch job executions.+    status :: Prelude.Maybe BatchJobExecutionStatus,+    -- | The unique identifier of the application.+    applicationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBatchJobExecutions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'executionIds', 'listBatchJobExecutions_executionIds' - The unique identifier of each batch job execution.+--+-- 'jobName', 'listBatchJobExecutions_jobName' - The name of each batch job execution.+--+-- 'maxResults', 'listBatchJobExecutions_maxResults' - The maximum number of batch job executions to return.+--+-- 'nextToken', 'listBatchJobExecutions_nextToken' - A pagination token to control the number of batch job executions+-- displayed in the list.+--+-- 'startedAfter', 'listBatchJobExecutions_startedAfter' - The time after which the batch job executions started.+--+-- 'startedBefore', 'listBatchJobExecutions_startedBefore' - The time before the batch job executions started.+--+-- 'status', 'listBatchJobExecutions_status' - The status of the batch job executions.+--+-- 'applicationId', 'listBatchJobExecutions_applicationId' - The unique identifier of the application.+newListBatchJobExecutions ::+  -- | 'applicationId'+  Prelude.Text ->+  ListBatchJobExecutions+newListBatchJobExecutions pApplicationId_ =+  ListBatchJobExecutions'+    { executionIds =+        Prelude.Nothing,+      jobName = Prelude.Nothing,+      maxResults = Prelude.Nothing,+      nextToken = Prelude.Nothing,+      startedAfter = Prelude.Nothing,+      startedBefore = Prelude.Nothing,+      status = Prelude.Nothing,+      applicationId = pApplicationId_+    }++-- | The unique identifier of each batch job execution.+listBatchJobExecutions_executionIds :: Lens.Lens' ListBatchJobExecutions (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+listBatchJobExecutions_executionIds = Lens.lens (\ListBatchJobExecutions' {executionIds} -> executionIds) (\s@ListBatchJobExecutions' {} a -> s {executionIds = a} :: ListBatchJobExecutions) Prelude.. Lens.mapping Lens.coerced++-- | The name of each batch job execution.+listBatchJobExecutions_jobName :: Lens.Lens' ListBatchJobExecutions (Prelude.Maybe Prelude.Text)+listBatchJobExecutions_jobName = Lens.lens (\ListBatchJobExecutions' {jobName} -> jobName) (\s@ListBatchJobExecutions' {} a -> s {jobName = a} :: ListBatchJobExecutions)++-- | The maximum number of batch job executions to return.+listBatchJobExecutions_maxResults :: Lens.Lens' ListBatchJobExecutions (Prelude.Maybe Prelude.Natural)+listBatchJobExecutions_maxResults = Lens.lens (\ListBatchJobExecutions' {maxResults} -> maxResults) (\s@ListBatchJobExecutions' {} a -> s {maxResults = a} :: ListBatchJobExecutions)++-- | A pagination token to control the number of batch job executions+-- displayed in the list.+listBatchJobExecutions_nextToken :: Lens.Lens' ListBatchJobExecutions (Prelude.Maybe Prelude.Text)+listBatchJobExecutions_nextToken = Lens.lens (\ListBatchJobExecutions' {nextToken} -> nextToken) (\s@ListBatchJobExecutions' {} a -> s {nextToken = a} :: ListBatchJobExecutions)++-- | The time after which the batch job executions started.+listBatchJobExecutions_startedAfter :: Lens.Lens' ListBatchJobExecutions (Prelude.Maybe Prelude.UTCTime)+listBatchJobExecutions_startedAfter = Lens.lens (\ListBatchJobExecutions' {startedAfter} -> startedAfter) (\s@ListBatchJobExecutions' {} a -> s {startedAfter = a} :: ListBatchJobExecutions) Prelude.. Lens.mapping Data._Time++-- | The time before the batch job executions started.+listBatchJobExecutions_startedBefore :: Lens.Lens' ListBatchJobExecutions (Prelude.Maybe Prelude.UTCTime)+listBatchJobExecutions_startedBefore = Lens.lens (\ListBatchJobExecutions' {startedBefore} -> startedBefore) (\s@ListBatchJobExecutions' {} a -> s {startedBefore = a} :: ListBatchJobExecutions) Prelude.. Lens.mapping Data._Time++-- | The status of the batch job executions.+listBatchJobExecutions_status :: Lens.Lens' ListBatchJobExecutions (Prelude.Maybe BatchJobExecutionStatus)+listBatchJobExecutions_status = Lens.lens (\ListBatchJobExecutions' {status} -> status) (\s@ListBatchJobExecutions' {} a -> s {status = a} :: ListBatchJobExecutions)++-- | The unique identifier of the application.+listBatchJobExecutions_applicationId :: Lens.Lens' ListBatchJobExecutions Prelude.Text+listBatchJobExecutions_applicationId = Lens.lens (\ListBatchJobExecutions' {applicationId} -> applicationId) (\s@ListBatchJobExecutions' {} a -> s {applicationId = a} :: ListBatchJobExecutions)++instance Core.AWSPager ListBatchJobExecutions where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listBatchJobExecutionsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^. listBatchJobExecutionsResponse_batchJobExecutions+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listBatchJobExecutions_nextToken+          Lens..~ rs+          Lens.^? listBatchJobExecutionsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListBatchJobExecutions where+  type+    AWSResponse ListBatchJobExecutions =+      ListBatchJobExecutionsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListBatchJobExecutionsResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> ( x+                            Data..?> "batchJobExecutions"+                            Core..!@ Prelude.mempty+                        )+      )++instance Prelude.Hashable ListBatchJobExecutions where+  hashWithSalt _salt ListBatchJobExecutions' {..} =+    _salt+      `Prelude.hashWithSalt` executionIds+      `Prelude.hashWithSalt` jobName+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` startedAfter+      `Prelude.hashWithSalt` startedBefore+      `Prelude.hashWithSalt` status+      `Prelude.hashWithSalt` applicationId++instance Prelude.NFData ListBatchJobExecutions where+  rnf ListBatchJobExecutions' {..} =+    Prelude.rnf executionIds+      `Prelude.seq` Prelude.rnf jobName+      `Prelude.seq` Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf startedAfter+      `Prelude.seq` Prelude.rnf startedBefore+      `Prelude.seq` Prelude.rnf status+      `Prelude.seq` Prelude.rnf applicationId++instance Data.ToHeaders ListBatchJobExecutions where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListBatchJobExecutions where+  toPath ListBatchJobExecutions' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/batch-job-executions"+      ]++instance Data.ToQuery ListBatchJobExecutions where+  toQuery ListBatchJobExecutions' {..} =+    Prelude.mconcat+      [ "executionIds"+          Data.=: Data.toQuery+            (Data.toQueryList "member" Prelude.<$> executionIds),+        "jobName" Data.=: jobName,+        "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken,+        "startedAfter" Data.=: startedAfter,+        "startedBefore" Data.=: startedBefore,+        "status" Data.=: status+      ]++-- | /See:/ 'newListBatchJobExecutionsResponse' smart constructor.+data ListBatchJobExecutionsResponse = ListBatchJobExecutionsResponse'+  { -- | A pagination token that\'s returned when the response doesn\'t contain+    -- all batch job executions.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | Returns a list of batch job executions for an application.+    batchJobExecutions :: [BatchJobExecutionSummary]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBatchJobExecutionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listBatchJobExecutionsResponse_nextToken' - A pagination token that\'s returned when the response doesn\'t contain+-- all batch job executions.+--+-- 'httpStatus', 'listBatchJobExecutionsResponse_httpStatus' - The response's http status code.+--+-- 'batchJobExecutions', 'listBatchJobExecutionsResponse_batchJobExecutions' - Returns a list of batch job executions for an application.+newListBatchJobExecutionsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListBatchJobExecutionsResponse+newListBatchJobExecutionsResponse pHttpStatus_ =+  ListBatchJobExecutionsResponse'+    { nextToken =+        Prelude.Nothing,+      httpStatus = pHttpStatus_,+      batchJobExecutions = Prelude.mempty+    }++-- | A pagination token that\'s returned when the response doesn\'t contain+-- all batch job executions.+listBatchJobExecutionsResponse_nextToken :: Lens.Lens' ListBatchJobExecutionsResponse (Prelude.Maybe Prelude.Text)+listBatchJobExecutionsResponse_nextToken = Lens.lens (\ListBatchJobExecutionsResponse' {nextToken} -> nextToken) (\s@ListBatchJobExecutionsResponse' {} a -> s {nextToken = a} :: ListBatchJobExecutionsResponse)++-- | The response's http status code.+listBatchJobExecutionsResponse_httpStatus :: Lens.Lens' ListBatchJobExecutionsResponse Prelude.Int+listBatchJobExecutionsResponse_httpStatus = Lens.lens (\ListBatchJobExecutionsResponse' {httpStatus} -> httpStatus) (\s@ListBatchJobExecutionsResponse' {} a -> s {httpStatus = a} :: ListBatchJobExecutionsResponse)++-- | Returns a list of batch job executions for an application.+listBatchJobExecutionsResponse_batchJobExecutions :: Lens.Lens' ListBatchJobExecutionsResponse [BatchJobExecutionSummary]+listBatchJobExecutionsResponse_batchJobExecutions = Lens.lens (\ListBatchJobExecutionsResponse' {batchJobExecutions} -> batchJobExecutions) (\s@ListBatchJobExecutionsResponse' {} a -> s {batchJobExecutions = a} :: ListBatchJobExecutionsResponse) Prelude.. Lens.coerced++instance+  Prelude.NFData+    ListBatchJobExecutionsResponse+  where+  rnf ListBatchJobExecutionsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf batchJobExecutions
+ gen/Amazonka/M2/ListDataSetImportHistory.hs view
@@ -0,0 +1,248 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.ListDataSetImportHistory+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the data set imports for the specified application.+--+-- This operation returns paginated results.+module Amazonka.M2.ListDataSetImportHistory+  ( -- * Creating a Request+    ListDataSetImportHistory (..),+    newListDataSetImportHistory,++    -- * Request Lenses+    listDataSetImportHistory_maxResults,+    listDataSetImportHistory_nextToken,+    listDataSetImportHistory_applicationId,++    -- * Destructuring the Response+    ListDataSetImportHistoryResponse (..),+    newListDataSetImportHistoryResponse,++    -- * Response Lenses+    listDataSetImportHistoryResponse_nextToken,+    listDataSetImportHistoryResponse_httpStatus,+    listDataSetImportHistoryResponse_dataSetImportTasks,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListDataSetImportHistory' smart constructor.+data ListDataSetImportHistory = ListDataSetImportHistory'+  { -- | The maximum number of objects to return.+    maxResults :: Prelude.Maybe Prelude.Natural,+    -- | A pagination token returned from a previous call to this operation. This+    -- specifies the next item to return. To return to the beginning of the+    -- list, exclude this parameter.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The unique identifier of the application.+    applicationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDataSetImportHistory' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listDataSetImportHistory_maxResults' - The maximum number of objects to return.+--+-- 'nextToken', 'listDataSetImportHistory_nextToken' - A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+--+-- 'applicationId', 'listDataSetImportHistory_applicationId' - The unique identifier of the application.+newListDataSetImportHistory ::+  -- | 'applicationId'+  Prelude.Text ->+  ListDataSetImportHistory+newListDataSetImportHistory pApplicationId_ =+  ListDataSetImportHistory'+    { maxResults =+        Prelude.Nothing,+      nextToken = Prelude.Nothing,+      applicationId = pApplicationId_+    }++-- | The maximum number of objects to return.+listDataSetImportHistory_maxResults :: Lens.Lens' ListDataSetImportHistory (Prelude.Maybe Prelude.Natural)+listDataSetImportHistory_maxResults = Lens.lens (\ListDataSetImportHistory' {maxResults} -> maxResults) (\s@ListDataSetImportHistory' {} a -> s {maxResults = a} :: ListDataSetImportHistory)++-- | A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+listDataSetImportHistory_nextToken :: Lens.Lens' ListDataSetImportHistory (Prelude.Maybe Prelude.Text)+listDataSetImportHistory_nextToken = Lens.lens (\ListDataSetImportHistory' {nextToken} -> nextToken) (\s@ListDataSetImportHistory' {} a -> s {nextToken = a} :: ListDataSetImportHistory)++-- | The unique identifier of the application.+listDataSetImportHistory_applicationId :: Lens.Lens' ListDataSetImportHistory Prelude.Text+listDataSetImportHistory_applicationId = Lens.lens (\ListDataSetImportHistory' {applicationId} -> applicationId) (\s@ListDataSetImportHistory' {} a -> s {applicationId = a} :: ListDataSetImportHistory)++instance Core.AWSPager ListDataSetImportHistory where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listDataSetImportHistoryResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^. listDataSetImportHistoryResponse_dataSetImportTasks+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listDataSetImportHistory_nextToken+          Lens..~ rs+          Lens.^? listDataSetImportHistoryResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListDataSetImportHistory where+  type+    AWSResponse ListDataSetImportHistory =+      ListDataSetImportHistoryResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListDataSetImportHistoryResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> ( x+                            Data..?> "dataSetImportTasks"+                            Core..!@ Prelude.mempty+                        )+      )++instance Prelude.Hashable ListDataSetImportHistory where+  hashWithSalt _salt ListDataSetImportHistory' {..} =+    _salt+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` applicationId++instance Prelude.NFData ListDataSetImportHistory where+  rnf ListDataSetImportHistory' {..} =+    Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf applicationId++instance Data.ToHeaders ListDataSetImportHistory where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListDataSetImportHistory where+  toPath ListDataSetImportHistory' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/dataset-import-tasks"+      ]++instance Data.ToQuery ListDataSetImportHistory where+  toQuery ListDataSetImportHistory' {..} =+    Prelude.mconcat+      [ "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken+      ]++-- | /See:/ 'newListDataSetImportHistoryResponse' smart constructor.+data ListDataSetImportHistoryResponse = ListDataSetImportHistoryResponse'+  { -- | If there are more items to return, this contains a token that is passed+    -- to a subsequent call to this operation to retrieve the next set of+    -- items.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The data set import tasks.+    dataSetImportTasks :: [DataSetImportTask]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDataSetImportHistoryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listDataSetImportHistoryResponse_nextToken' - If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+--+-- 'httpStatus', 'listDataSetImportHistoryResponse_httpStatus' - The response's http status code.+--+-- 'dataSetImportTasks', 'listDataSetImportHistoryResponse_dataSetImportTasks' - The data set import tasks.+newListDataSetImportHistoryResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListDataSetImportHistoryResponse+newListDataSetImportHistoryResponse pHttpStatus_ =+  ListDataSetImportHistoryResponse'+    { nextToken =+        Prelude.Nothing,+      httpStatus = pHttpStatus_,+      dataSetImportTasks = Prelude.mempty+    }++-- | If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+listDataSetImportHistoryResponse_nextToken :: Lens.Lens' ListDataSetImportHistoryResponse (Prelude.Maybe Prelude.Text)+listDataSetImportHistoryResponse_nextToken = Lens.lens (\ListDataSetImportHistoryResponse' {nextToken} -> nextToken) (\s@ListDataSetImportHistoryResponse' {} a -> s {nextToken = a} :: ListDataSetImportHistoryResponse)++-- | The response's http status code.+listDataSetImportHistoryResponse_httpStatus :: Lens.Lens' ListDataSetImportHistoryResponse Prelude.Int+listDataSetImportHistoryResponse_httpStatus = Lens.lens (\ListDataSetImportHistoryResponse' {httpStatus} -> httpStatus) (\s@ListDataSetImportHistoryResponse' {} a -> s {httpStatus = a} :: ListDataSetImportHistoryResponse)++-- | The data set import tasks.+listDataSetImportHistoryResponse_dataSetImportTasks :: Lens.Lens' ListDataSetImportHistoryResponse [DataSetImportTask]+listDataSetImportHistoryResponse_dataSetImportTasks = Lens.lens (\ListDataSetImportHistoryResponse' {dataSetImportTasks} -> dataSetImportTasks) (\s@ListDataSetImportHistoryResponse' {} a -> s {dataSetImportTasks = a} :: ListDataSetImportHistoryResponse) Prelude.. Lens.coerced++instance+  Prelude.NFData+    ListDataSetImportHistoryResponse+  where+  rnf ListDataSetImportHistoryResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf dataSetImportTasks
+ gen/Amazonka/M2/ListDataSets.hs view
@@ -0,0 +1,266 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.ListDataSets+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the data sets imported for a specific application. In Amazon Web+-- Services Mainframe Modernization, data sets are associated with+-- applications deployed on runtime environments. This is known as+-- importing data sets. Currently, Amazon Web Services Mainframe+-- Modernization can import data sets into catalogs using+-- <https://docs.aws.amazon.com/m2/latest/APIReference/API_CreateDataSetImportTask.html CreateDataSetImportTask>.+--+-- This operation returns paginated results.+module Amazonka.M2.ListDataSets+  ( -- * Creating a Request+    ListDataSets (..),+    newListDataSets,++    -- * Request Lenses+    listDataSets_maxResults,+    listDataSets_nextToken,+    listDataSets_prefix,+    listDataSets_applicationId,++    -- * Destructuring the Response+    ListDataSetsResponse (..),+    newListDataSetsResponse,++    -- * Response Lenses+    listDataSetsResponse_nextToken,+    listDataSetsResponse_httpStatus,+    listDataSetsResponse_dataSets,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListDataSets' smart constructor.+data ListDataSets = ListDataSets'+  { -- | The maximum number of objects to return.+    maxResults :: Prelude.Maybe Prelude.Natural,+    -- | A pagination token returned from a previous call to this operation. This+    -- specifies the next item to return. To return to the beginning of the+    -- list, exclude this parameter.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The prefix of the data set name, which you can use to filter the list of+    -- data sets.+    prefix :: Prelude.Maybe Prelude.Text,+    -- | The unique identifier of the application for which you want to list the+    -- associated data sets.+    applicationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDataSets' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listDataSets_maxResults' - The maximum number of objects to return.+--+-- 'nextToken', 'listDataSets_nextToken' - A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+--+-- 'prefix', 'listDataSets_prefix' - The prefix of the data set name, which you can use to filter the list of+-- data sets.+--+-- 'applicationId', 'listDataSets_applicationId' - The unique identifier of the application for which you want to list the+-- associated data sets.+newListDataSets ::+  -- | 'applicationId'+  Prelude.Text ->+  ListDataSets+newListDataSets pApplicationId_ =+  ListDataSets'+    { maxResults = Prelude.Nothing,+      nextToken = Prelude.Nothing,+      prefix = Prelude.Nothing,+      applicationId = pApplicationId_+    }++-- | The maximum number of objects to return.+listDataSets_maxResults :: Lens.Lens' ListDataSets (Prelude.Maybe Prelude.Natural)+listDataSets_maxResults = Lens.lens (\ListDataSets' {maxResults} -> maxResults) (\s@ListDataSets' {} a -> s {maxResults = a} :: ListDataSets)++-- | A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+listDataSets_nextToken :: Lens.Lens' ListDataSets (Prelude.Maybe Prelude.Text)+listDataSets_nextToken = Lens.lens (\ListDataSets' {nextToken} -> nextToken) (\s@ListDataSets' {} a -> s {nextToken = a} :: ListDataSets)++-- | The prefix of the data set name, which you can use to filter the list of+-- data sets.+listDataSets_prefix :: Lens.Lens' ListDataSets (Prelude.Maybe Prelude.Text)+listDataSets_prefix = Lens.lens (\ListDataSets' {prefix} -> prefix) (\s@ListDataSets' {} a -> s {prefix = a} :: ListDataSets)++-- | The unique identifier of the application for which you want to list the+-- associated data sets.+listDataSets_applicationId :: Lens.Lens' ListDataSets Prelude.Text+listDataSets_applicationId = Lens.lens (\ListDataSets' {applicationId} -> applicationId) (\s@ListDataSets' {} a -> s {applicationId = a} :: ListDataSets)++instance Core.AWSPager ListDataSets where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listDataSetsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        (rs Lens.^. listDataSetsResponse_dataSets) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listDataSets_nextToken+          Lens..~ rs+          Lens.^? listDataSetsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListDataSets where+  type AWSResponse ListDataSets = ListDataSetsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListDataSetsResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..?> "dataSets" Core..!@ Prelude.mempty)+      )++instance Prelude.Hashable ListDataSets where+  hashWithSalt _salt ListDataSets' {..} =+    _salt+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` prefix+      `Prelude.hashWithSalt` applicationId++instance Prelude.NFData ListDataSets where+  rnf ListDataSets' {..} =+    Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf prefix+      `Prelude.seq` Prelude.rnf applicationId++instance Data.ToHeaders ListDataSets where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListDataSets where+  toPath ListDataSets' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/datasets"+      ]++instance Data.ToQuery ListDataSets where+  toQuery ListDataSets' {..} =+    Prelude.mconcat+      [ "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken,+        "prefix" Data.=: prefix+      ]++-- | /See:/ 'newListDataSetsResponse' smart constructor.+data ListDataSetsResponse = ListDataSetsResponse'+  { -- | If there are more items to return, this contains a token that is passed+    -- to a subsequent call to this operation to retrieve the next set of+    -- items.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The list of data sets, containing information including the creation+    -- time, the data set name, the data set organization, the data set format,+    -- and the last time the data set was referenced or updated.+    dataSets :: [DataSetSummary]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDataSetsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listDataSetsResponse_nextToken' - If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+--+-- 'httpStatus', 'listDataSetsResponse_httpStatus' - The response's http status code.+--+-- 'dataSets', 'listDataSetsResponse_dataSets' - The list of data sets, containing information including the creation+-- time, the data set name, the data set organization, the data set format,+-- and the last time the data set was referenced or updated.+newListDataSetsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListDataSetsResponse+newListDataSetsResponse pHttpStatus_ =+  ListDataSetsResponse'+    { nextToken = Prelude.Nothing,+      httpStatus = pHttpStatus_,+      dataSets = Prelude.mempty+    }++-- | If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+listDataSetsResponse_nextToken :: Lens.Lens' ListDataSetsResponse (Prelude.Maybe Prelude.Text)+listDataSetsResponse_nextToken = Lens.lens (\ListDataSetsResponse' {nextToken} -> nextToken) (\s@ListDataSetsResponse' {} a -> s {nextToken = a} :: ListDataSetsResponse)++-- | The response's http status code.+listDataSetsResponse_httpStatus :: Lens.Lens' ListDataSetsResponse Prelude.Int+listDataSetsResponse_httpStatus = Lens.lens (\ListDataSetsResponse' {httpStatus} -> httpStatus) (\s@ListDataSetsResponse' {} a -> s {httpStatus = a} :: ListDataSetsResponse)++-- | The list of data sets, containing information including the creation+-- time, the data set name, the data set organization, the data set format,+-- and the last time the data set was referenced or updated.+listDataSetsResponse_dataSets :: Lens.Lens' ListDataSetsResponse [DataSetSummary]+listDataSetsResponse_dataSets = Lens.lens (\ListDataSetsResponse' {dataSets} -> dataSets) (\s@ListDataSetsResponse' {} a -> s {dataSets = a} :: ListDataSetsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListDataSetsResponse where+  rnf ListDataSetsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf dataSets
+ gen/Amazonka/M2/ListDeployments.hs view
@@ -0,0 +1,242 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.ListDeployments+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of all deployments of a specific application. A+-- deployment is a combination of a specific application and a specific+-- version of that application. Each deployment is mapped to a particular+-- application version.+--+-- This operation returns paginated results.+module Amazonka.M2.ListDeployments+  ( -- * Creating a Request+    ListDeployments (..),+    newListDeployments,++    -- * Request Lenses+    listDeployments_maxResults,+    listDeployments_nextToken,+    listDeployments_applicationId,++    -- * Destructuring the Response+    ListDeploymentsResponse (..),+    newListDeploymentsResponse,++    -- * Response Lenses+    listDeploymentsResponse_nextToken,+    listDeploymentsResponse_httpStatus,+    listDeploymentsResponse_deployments,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListDeployments' smart constructor.+data ListDeployments = ListDeployments'+  { -- | The maximum number of objects to return.+    maxResults :: Prelude.Maybe Prelude.Natural,+    -- | A pagination token returned from a previous call to this operation. This+    -- specifies the next item to return. To return to the beginning of the+    -- list, exclude this parameter.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The application identifier.+    applicationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDeployments' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listDeployments_maxResults' - The maximum number of objects to return.+--+-- 'nextToken', 'listDeployments_nextToken' - A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+--+-- 'applicationId', 'listDeployments_applicationId' - The application identifier.+newListDeployments ::+  -- | 'applicationId'+  Prelude.Text ->+  ListDeployments+newListDeployments pApplicationId_ =+  ListDeployments'+    { maxResults = Prelude.Nothing,+      nextToken = Prelude.Nothing,+      applicationId = pApplicationId_+    }++-- | The maximum number of objects to return.+listDeployments_maxResults :: Lens.Lens' ListDeployments (Prelude.Maybe Prelude.Natural)+listDeployments_maxResults = Lens.lens (\ListDeployments' {maxResults} -> maxResults) (\s@ListDeployments' {} a -> s {maxResults = a} :: ListDeployments)++-- | A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+listDeployments_nextToken :: Lens.Lens' ListDeployments (Prelude.Maybe Prelude.Text)+listDeployments_nextToken = Lens.lens (\ListDeployments' {nextToken} -> nextToken) (\s@ListDeployments' {} a -> s {nextToken = a} :: ListDeployments)++-- | The application identifier.+listDeployments_applicationId :: Lens.Lens' ListDeployments Prelude.Text+listDeployments_applicationId = Lens.lens (\ListDeployments' {applicationId} -> applicationId) (\s@ListDeployments' {} a -> s {applicationId = a} :: ListDeployments)++instance Core.AWSPager ListDeployments where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listDeploymentsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        (rs Lens.^. listDeploymentsResponse_deployments) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listDeployments_nextToken+          Lens..~ rs+          Lens.^? listDeploymentsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListDeployments where+  type+    AWSResponse ListDeployments =+      ListDeploymentsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListDeploymentsResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..?> "deployments" Core..!@ Prelude.mempty)+      )++instance Prelude.Hashable ListDeployments where+  hashWithSalt _salt ListDeployments' {..} =+    _salt+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` applicationId++instance Prelude.NFData ListDeployments where+  rnf ListDeployments' {..} =+    Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf applicationId++instance Data.ToHeaders ListDeployments where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListDeployments where+  toPath ListDeployments' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/deployments"+      ]++instance Data.ToQuery ListDeployments where+  toQuery ListDeployments' {..} =+    Prelude.mconcat+      [ "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken+      ]++-- | /See:/ 'newListDeploymentsResponse' smart constructor.+data ListDeploymentsResponse = ListDeploymentsResponse'+  { -- | If there are more items to return, this contains a token that is passed+    -- to a subsequent call to this operation to retrieve the next set of+    -- items.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The list of deployments that is returned.+    deployments :: [DeploymentSummary]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDeploymentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listDeploymentsResponse_nextToken' - If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+--+-- 'httpStatus', 'listDeploymentsResponse_httpStatus' - The response's http status code.+--+-- 'deployments', 'listDeploymentsResponse_deployments' - The list of deployments that is returned.+newListDeploymentsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListDeploymentsResponse+newListDeploymentsResponse pHttpStatus_ =+  ListDeploymentsResponse'+    { nextToken =+        Prelude.Nothing,+      httpStatus = pHttpStatus_,+      deployments = Prelude.mempty+    }++-- | If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+listDeploymentsResponse_nextToken :: Lens.Lens' ListDeploymentsResponse (Prelude.Maybe Prelude.Text)+listDeploymentsResponse_nextToken = Lens.lens (\ListDeploymentsResponse' {nextToken} -> nextToken) (\s@ListDeploymentsResponse' {} a -> s {nextToken = a} :: ListDeploymentsResponse)++-- | The response's http status code.+listDeploymentsResponse_httpStatus :: Lens.Lens' ListDeploymentsResponse Prelude.Int+listDeploymentsResponse_httpStatus = Lens.lens (\ListDeploymentsResponse' {httpStatus} -> httpStatus) (\s@ListDeploymentsResponse' {} a -> s {httpStatus = a} :: ListDeploymentsResponse)++-- | The list of deployments that is returned.+listDeploymentsResponse_deployments :: Lens.Lens' ListDeploymentsResponse [DeploymentSummary]+listDeploymentsResponse_deployments = Lens.lens (\ListDeploymentsResponse' {deployments} -> deployments) (\s@ListDeploymentsResponse' {} a -> s {deployments = a} :: ListDeploymentsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListDeploymentsResponse where+  rnf ListDeploymentsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf deployments
+ gen/Amazonka/M2/ListEngineVersions.hs view
@@ -0,0 +1,238 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.ListEngineVersions+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the available engine versions.+--+-- This operation returns paginated results.+module Amazonka.M2.ListEngineVersions+  ( -- * Creating a Request+    ListEngineVersions (..),+    newListEngineVersions,++    -- * Request Lenses+    listEngineVersions_engineType,+    listEngineVersions_maxResults,+    listEngineVersions_nextToken,++    -- * Destructuring the Response+    ListEngineVersionsResponse (..),+    newListEngineVersionsResponse,++    -- * Response Lenses+    listEngineVersionsResponse_nextToken,+    listEngineVersionsResponse_httpStatus,+    listEngineVersionsResponse_engineVersions,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListEngineVersions' smart constructor.+data ListEngineVersions = ListEngineVersions'+  { -- | The type of target platform.+    engineType :: Prelude.Maybe EngineType,+    -- | The maximum number of objects to return.+    maxResults :: Prelude.Maybe Prelude.Natural,+    -- | A pagination token returned from a previous call to this operation. This+    -- specifies the next item to return. To return to the beginning of the+    -- list, exclude this parameter.+    nextToken :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEngineVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'engineType', 'listEngineVersions_engineType' - The type of target platform.+--+-- 'maxResults', 'listEngineVersions_maxResults' - The maximum number of objects to return.+--+-- 'nextToken', 'listEngineVersions_nextToken' - A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+newListEngineVersions ::+  ListEngineVersions+newListEngineVersions =+  ListEngineVersions'+    { engineType = Prelude.Nothing,+      maxResults = Prelude.Nothing,+      nextToken = Prelude.Nothing+    }++-- | The type of target platform.+listEngineVersions_engineType :: Lens.Lens' ListEngineVersions (Prelude.Maybe EngineType)+listEngineVersions_engineType = Lens.lens (\ListEngineVersions' {engineType} -> engineType) (\s@ListEngineVersions' {} a -> s {engineType = a} :: ListEngineVersions)++-- | The maximum number of objects to return.+listEngineVersions_maxResults :: Lens.Lens' ListEngineVersions (Prelude.Maybe Prelude.Natural)+listEngineVersions_maxResults = Lens.lens (\ListEngineVersions' {maxResults} -> maxResults) (\s@ListEngineVersions' {} a -> s {maxResults = a} :: ListEngineVersions)++-- | A pagination token returned from a previous call to this operation. This+-- specifies the next item to return. To return to the beginning of the+-- list, exclude this parameter.+listEngineVersions_nextToken :: Lens.Lens' ListEngineVersions (Prelude.Maybe Prelude.Text)+listEngineVersions_nextToken = Lens.lens (\ListEngineVersions' {nextToken} -> nextToken) (\s@ListEngineVersions' {} a -> s {nextToken = a} :: ListEngineVersions)++instance Core.AWSPager ListEngineVersions where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listEngineVersionsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^. listEngineVersionsResponse_engineVersions+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listEngineVersions_nextToken+          Lens..~ rs+          Lens.^? listEngineVersionsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListEngineVersions where+  type+    AWSResponse ListEngineVersions =+      ListEngineVersionsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListEngineVersionsResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> ( x+                            Data..?> "engineVersions"+                            Core..!@ Prelude.mempty+                        )+      )++instance Prelude.Hashable ListEngineVersions where+  hashWithSalt _salt ListEngineVersions' {..} =+    _salt+      `Prelude.hashWithSalt` engineType+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListEngineVersions where+  rnf ListEngineVersions' {..} =+    Prelude.rnf engineType+      `Prelude.seq` Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListEngineVersions where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListEngineVersions where+  toPath = Prelude.const "/engine-versions"++instance Data.ToQuery ListEngineVersions where+  toQuery ListEngineVersions' {..} =+    Prelude.mconcat+      [ "engineType" Data.=: engineType,+        "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken+      ]++-- | /See:/ 'newListEngineVersionsResponse' smart constructor.+data ListEngineVersionsResponse = ListEngineVersionsResponse'+  { -- | If there are more items to return, this contains a token that is passed+    -- to a subsequent call to this operation to retrieve the next set of+    -- items.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | Returns the engine versions.+    engineVersions :: [EngineVersionsSummary]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEngineVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listEngineVersionsResponse_nextToken' - If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+--+-- 'httpStatus', 'listEngineVersionsResponse_httpStatus' - The response's http status code.+--+-- 'engineVersions', 'listEngineVersionsResponse_engineVersions' - Returns the engine versions.+newListEngineVersionsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListEngineVersionsResponse+newListEngineVersionsResponse pHttpStatus_ =+  ListEngineVersionsResponse'+    { nextToken =+        Prelude.Nothing,+      httpStatus = pHttpStatus_,+      engineVersions = Prelude.mempty+    }++-- | If there are more items to return, this contains a token that is passed+-- to a subsequent call to this operation to retrieve the next set of+-- items.+listEngineVersionsResponse_nextToken :: Lens.Lens' ListEngineVersionsResponse (Prelude.Maybe Prelude.Text)+listEngineVersionsResponse_nextToken = Lens.lens (\ListEngineVersionsResponse' {nextToken} -> nextToken) (\s@ListEngineVersionsResponse' {} a -> s {nextToken = a} :: ListEngineVersionsResponse)++-- | The response's http status code.+listEngineVersionsResponse_httpStatus :: Lens.Lens' ListEngineVersionsResponse Prelude.Int+listEngineVersionsResponse_httpStatus = Lens.lens (\ListEngineVersionsResponse' {httpStatus} -> httpStatus) (\s@ListEngineVersionsResponse' {} a -> s {httpStatus = a} :: ListEngineVersionsResponse)++-- | Returns the engine versions.+listEngineVersionsResponse_engineVersions :: Lens.Lens' ListEngineVersionsResponse [EngineVersionsSummary]+listEngineVersionsResponse_engineVersions = Lens.lens (\ListEngineVersionsResponse' {engineVersions} -> engineVersions) (\s@ListEngineVersionsResponse' {} a -> s {engineVersions = a} :: ListEngineVersionsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListEngineVersionsResponse where+  rnf ListEngineVersionsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf engineVersions
+ gen/Amazonka/M2/ListEnvironments.hs view
@@ -0,0 +1,248 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.ListEnvironments+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the runtime environments.+--+-- This operation returns paginated results.+module Amazonka.M2.ListEnvironments+  ( -- * Creating a Request+    ListEnvironments (..),+    newListEnvironments,++    -- * Request Lenses+    listEnvironments_engineType,+    listEnvironments_maxResults,+    listEnvironments_names,+    listEnvironments_nextToken,++    -- * Destructuring the Response+    ListEnvironmentsResponse (..),+    newListEnvironmentsResponse,++    -- * Response Lenses+    listEnvironmentsResponse_nextToken,+    listEnvironmentsResponse_httpStatus,+    listEnvironmentsResponse_environments,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListEnvironments' smart constructor.+data ListEnvironments = ListEnvironments'+  { -- | The engine type for the runtime environment.+    engineType :: Prelude.Maybe EngineType,+    -- | The maximum number of runtime environments to return.+    maxResults :: Prelude.Maybe Prelude.Natural,+    -- | The names of the runtime environments. Must be unique within the+    -- account.+    names :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+    -- | A pagination token to control the number of runtime environments+    -- displayed in the list.+    nextToken :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEnvironments' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'engineType', 'listEnvironments_engineType' - The engine type for the runtime environment.+--+-- 'maxResults', 'listEnvironments_maxResults' - The maximum number of runtime environments to return.+--+-- 'names', 'listEnvironments_names' - The names of the runtime environments. Must be unique within the+-- account.+--+-- 'nextToken', 'listEnvironments_nextToken' - A pagination token to control the number of runtime environments+-- displayed in the list.+newListEnvironments ::+  ListEnvironments+newListEnvironments =+  ListEnvironments'+    { engineType = Prelude.Nothing,+      maxResults = Prelude.Nothing,+      names = Prelude.Nothing,+      nextToken = Prelude.Nothing+    }++-- | The engine type for the runtime environment.+listEnvironments_engineType :: Lens.Lens' ListEnvironments (Prelude.Maybe EngineType)+listEnvironments_engineType = Lens.lens (\ListEnvironments' {engineType} -> engineType) (\s@ListEnvironments' {} a -> s {engineType = a} :: ListEnvironments)++-- | The maximum number of runtime environments to return.+listEnvironments_maxResults :: Lens.Lens' ListEnvironments (Prelude.Maybe Prelude.Natural)+listEnvironments_maxResults = Lens.lens (\ListEnvironments' {maxResults} -> maxResults) (\s@ListEnvironments' {} a -> s {maxResults = a} :: ListEnvironments)++-- | The names of the runtime environments. Must be unique within the+-- account.+listEnvironments_names :: Lens.Lens' ListEnvironments (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+listEnvironments_names = Lens.lens (\ListEnvironments' {names} -> names) (\s@ListEnvironments' {} a -> s {names = a} :: ListEnvironments) Prelude.. Lens.mapping Lens.coerced++-- | A pagination token to control the number of runtime environments+-- displayed in the list.+listEnvironments_nextToken :: Lens.Lens' ListEnvironments (Prelude.Maybe Prelude.Text)+listEnvironments_nextToken = Lens.lens (\ListEnvironments' {nextToken} -> nextToken) (\s@ListEnvironments' {} a -> s {nextToken = a} :: ListEnvironments)++instance Core.AWSPager ListEnvironments where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listEnvironmentsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        (rs Lens.^. listEnvironmentsResponse_environments) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listEnvironments_nextToken+          Lens..~ rs+          Lens.^? listEnvironmentsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListEnvironments where+  type+    AWSResponse ListEnvironments =+      ListEnvironmentsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListEnvironmentsResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..?> "environments" Core..!@ Prelude.mempty)+      )++instance Prelude.Hashable ListEnvironments where+  hashWithSalt _salt ListEnvironments' {..} =+    _salt+      `Prelude.hashWithSalt` engineType+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` names+      `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListEnvironments where+  rnf ListEnvironments' {..} =+    Prelude.rnf engineType+      `Prelude.seq` Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf names+      `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListEnvironments where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListEnvironments where+  toPath = Prelude.const "/environments"++instance Data.ToQuery ListEnvironments where+  toQuery ListEnvironments' {..} =+    Prelude.mconcat+      [ "engineType" Data.=: engineType,+        "maxResults" Data.=: maxResults,+        "names"+          Data.=: Data.toQuery+            (Data.toQueryList "member" Prelude.<$> names),+        "nextToken" Data.=: nextToken+      ]++-- | /See:/ 'newListEnvironmentsResponse' smart constructor.+data ListEnvironmentsResponse = ListEnvironmentsResponse'+  { -- | A pagination token that\'s returned when the response doesn\'t contain+    -- all the runtime environments.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | Returns a list of summary details for all the runtime environments in+    -- your account.+    environments :: [EnvironmentSummary]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEnvironmentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listEnvironmentsResponse_nextToken' - A pagination token that\'s returned when the response doesn\'t contain+-- all the runtime environments.+--+-- 'httpStatus', 'listEnvironmentsResponse_httpStatus' - The response's http status code.+--+-- 'environments', 'listEnvironmentsResponse_environments' - Returns a list of summary details for all the runtime environments in+-- your account.+newListEnvironmentsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListEnvironmentsResponse+newListEnvironmentsResponse pHttpStatus_ =+  ListEnvironmentsResponse'+    { nextToken =+        Prelude.Nothing,+      httpStatus = pHttpStatus_,+      environments = Prelude.mempty+    }++-- | A pagination token that\'s returned when the response doesn\'t contain+-- all the runtime environments.+listEnvironmentsResponse_nextToken :: Lens.Lens' ListEnvironmentsResponse (Prelude.Maybe Prelude.Text)+listEnvironmentsResponse_nextToken = Lens.lens (\ListEnvironmentsResponse' {nextToken} -> nextToken) (\s@ListEnvironmentsResponse' {} a -> s {nextToken = a} :: ListEnvironmentsResponse)++-- | The response's http status code.+listEnvironmentsResponse_httpStatus :: Lens.Lens' ListEnvironmentsResponse Prelude.Int+listEnvironmentsResponse_httpStatus = Lens.lens (\ListEnvironmentsResponse' {httpStatus} -> httpStatus) (\s@ListEnvironmentsResponse' {} a -> s {httpStatus = a} :: ListEnvironmentsResponse)++-- | Returns a list of summary details for all the runtime environments in+-- your account.+listEnvironmentsResponse_environments :: Lens.Lens' ListEnvironmentsResponse [EnvironmentSummary]+listEnvironmentsResponse_environments = Lens.lens (\ListEnvironmentsResponse' {environments} -> environments) (\s@ListEnvironmentsResponse' {} a -> s {environments = a} :: ListEnvironmentsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListEnvironmentsResponse where+  rnf ListEnvironmentsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf environments
+ gen/Amazonka/M2/ListTagsForResource.hs view
@@ -0,0 +1,159 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.ListTagsForResource+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags for the specified resource.+module Amazonka.M2.ListTagsForResource+  ( -- * Creating a Request+    ListTagsForResource (..),+    newListTagsForResource,++    -- * Request Lenses+    listTagsForResource_resourceArn,++    -- * Destructuring the Response+    ListTagsForResourceResponse (..),+    newListTagsForResourceResponse,++    -- * Response Lenses+    listTagsForResourceResponse_httpStatus,+    listTagsForResourceResponse_tags,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+  { -- | The Amazon Resource Name (ARN) of the resource.+    resourceArn :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'listTagsForResource_resourceArn' - The Amazon Resource Name (ARN) of the resource.+newListTagsForResource ::+  -- | 'resourceArn'+  Prelude.Text ->+  ListTagsForResource+newListTagsForResource pResourceArn_ =+  ListTagsForResource' {resourceArn = pResourceArn_}++-- | The Amazon Resource Name (ARN) of the resource.+listTagsForResource_resourceArn :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_resourceArn = Lens.lens (\ListTagsForResource' {resourceArn} -> resourceArn) (\s@ListTagsForResource' {} a -> s {resourceArn = a} :: ListTagsForResource)++instance Core.AWSRequest ListTagsForResource where+  type+    AWSResponse ListTagsForResource =+      ListTagsForResourceResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListTagsForResourceResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+      )++instance Prelude.Hashable ListTagsForResource where+  hashWithSalt _salt ListTagsForResource' {..} =+    _salt `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData ListTagsForResource where+  rnf ListTagsForResource' {..} =+    Prelude.rnf resourceArn++instance Data.ToHeaders ListTagsForResource where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListTagsForResource where+  toPath ListTagsForResource' {..} =+    Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery ListTagsForResource where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The tags for the resource.+    tags :: Prelude.HashMap Prelude.Text Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+--+-- 'tags', 'listTagsForResourceResponse_tags' - The tags for the resource.+newListTagsForResourceResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+  ListTagsForResourceResponse'+    { httpStatus =+        pHttpStatus_,+      tags = Prelude.mempty+    }++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++-- | The tags for the resource.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.HashMap Prelude.Text Prelude.Text)+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListTagsForResourceResponse where+  rnf ListTagsForResourceResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/M2/StartApplication.hs view
@@ -0,0 +1,150 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.StartApplication+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Starts an application that is currently stopped.+module Amazonka.M2.StartApplication+  ( -- * Creating a Request+    StartApplication (..),+    newStartApplication,++    -- * Request Lenses+    startApplication_applicationId,++    -- * Destructuring the Response+    StartApplicationResponse (..),+    newStartApplicationResponse,++    -- * Response Lenses+    startApplicationResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStartApplication' smart constructor.+data StartApplication = StartApplication'+  { -- | The unique identifier of the application you want to start.+    applicationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'startApplication_applicationId' - The unique identifier of the application you want to start.+newStartApplication ::+  -- | 'applicationId'+  Prelude.Text ->+  StartApplication+newStartApplication pApplicationId_ =+  StartApplication' {applicationId = pApplicationId_}++-- | The unique identifier of the application you want to start.+startApplication_applicationId :: Lens.Lens' StartApplication Prelude.Text+startApplication_applicationId = Lens.lens (\StartApplication' {applicationId} -> applicationId) (\s@StartApplication' {} a -> s {applicationId = a} :: StartApplication)++instance Core.AWSRequest StartApplication where+  type+    AWSResponse StartApplication =+      StartApplicationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          StartApplicationResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable StartApplication where+  hashWithSalt _salt StartApplication' {..} =+    _salt `Prelude.hashWithSalt` applicationId++instance Prelude.NFData StartApplication where+  rnf StartApplication' {..} = Prelude.rnf applicationId++instance Data.ToHeaders StartApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON StartApplication where+  toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath StartApplication where+  toPath StartApplication' {..} =+    Prelude.mconcat+      ["/applications/", Data.toBS applicationId, "/start"]++instance Data.ToQuery StartApplication where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStartApplicationResponse' smart constructor.+data StartApplicationResponse = StartApplicationResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'startApplicationResponse_httpStatus' - The response's http status code.+newStartApplicationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  StartApplicationResponse+newStartApplicationResponse pHttpStatus_ =+  StartApplicationResponse'+    { httpStatus =+        pHttpStatus_+    }++-- | The response's http status code.+startApplicationResponse_httpStatus :: Lens.Lens' StartApplicationResponse Prelude.Int+startApplicationResponse_httpStatus = Lens.lens (\StartApplicationResponse' {httpStatus} -> httpStatus) (\s@StartApplicationResponse' {} a -> s {httpStatus = a} :: StartApplicationResponse)++instance Prelude.NFData StartApplicationResponse where+  rnf StartApplicationResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/M2/StartBatchJob.hs view
@@ -0,0 +1,211 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.StartBatchJob+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Starts a batch job and returns the unique identifier of this execution+-- of the batch job. The associated application must be running in order to+-- start the batch job.+module Amazonka.M2.StartBatchJob+  ( -- * Creating a Request+    StartBatchJob (..),+    newStartBatchJob,++    -- * Request Lenses+    startBatchJob_jobParams,+    startBatchJob_applicationId,+    startBatchJob_batchJobIdentifier,++    -- * Destructuring the Response+    StartBatchJobResponse (..),+    newStartBatchJobResponse,++    -- * Response Lenses+    startBatchJobResponse_httpStatus,+    startBatchJobResponse_executionId,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStartBatchJob' smart constructor.+data StartBatchJob = StartBatchJob'+  { -- | The collection of batch job parameters. For details about limits for+    -- keys and values, see+    -- <https://www.ibm.com/docs/en/workload-automation/9.3.0?topic=zos-coding-variables-in-jcl Coding variables in JCL>.+    jobParams :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+    -- | The unique identifier of the application associated with this batch job.+    applicationId :: Prelude.Text,+    -- | The unique identifier of the batch job.+    batchJobIdentifier :: BatchJobIdentifier+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartBatchJob' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'jobParams', 'startBatchJob_jobParams' - The collection of batch job parameters. For details about limits for+-- keys and values, see+-- <https://www.ibm.com/docs/en/workload-automation/9.3.0?topic=zos-coding-variables-in-jcl Coding variables in JCL>.+--+-- 'applicationId', 'startBatchJob_applicationId' - The unique identifier of the application associated with this batch job.+--+-- 'batchJobIdentifier', 'startBatchJob_batchJobIdentifier' - The unique identifier of the batch job.+newStartBatchJob ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'batchJobIdentifier'+  BatchJobIdentifier ->+  StartBatchJob+newStartBatchJob pApplicationId_ pBatchJobIdentifier_ =+  StartBatchJob'+    { jobParams = Prelude.Nothing,+      applicationId = pApplicationId_,+      batchJobIdentifier = pBatchJobIdentifier_+    }++-- | The collection of batch job parameters. For details about limits for+-- keys and values, see+-- <https://www.ibm.com/docs/en/workload-automation/9.3.0?topic=zos-coding-variables-in-jcl Coding variables in JCL>.+startBatchJob_jobParams :: Lens.Lens' StartBatchJob (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+startBatchJob_jobParams = Lens.lens (\StartBatchJob' {jobParams} -> jobParams) (\s@StartBatchJob' {} a -> s {jobParams = a} :: StartBatchJob) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier of the application associated with this batch job.+startBatchJob_applicationId :: Lens.Lens' StartBatchJob Prelude.Text+startBatchJob_applicationId = Lens.lens (\StartBatchJob' {applicationId} -> applicationId) (\s@StartBatchJob' {} a -> s {applicationId = a} :: StartBatchJob)++-- | The unique identifier of the batch job.+startBatchJob_batchJobIdentifier :: Lens.Lens' StartBatchJob BatchJobIdentifier+startBatchJob_batchJobIdentifier = Lens.lens (\StartBatchJob' {batchJobIdentifier} -> batchJobIdentifier) (\s@StartBatchJob' {} a -> s {batchJobIdentifier = a} :: StartBatchJob)++instance Core.AWSRequest StartBatchJob where+  type+    AWSResponse StartBatchJob =+      StartBatchJobResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          StartBatchJobResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "executionId")+      )++instance Prelude.Hashable StartBatchJob where+  hashWithSalt _salt StartBatchJob' {..} =+    _salt+      `Prelude.hashWithSalt` jobParams+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` batchJobIdentifier++instance Prelude.NFData StartBatchJob where+  rnf StartBatchJob' {..} =+    Prelude.rnf jobParams+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf batchJobIdentifier++instance Data.ToHeaders StartBatchJob where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON StartBatchJob where+  toJSON StartBatchJob' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("jobParams" Data..=) Prelude.<$> jobParams,+            Prelude.Just+              ("batchJobIdentifier" Data..= batchJobIdentifier)+          ]+      )++instance Data.ToPath StartBatchJob where+  toPath StartBatchJob' {..} =+    Prelude.mconcat+      [ "/applications/",+        Data.toBS applicationId,+        "/batch-job"+      ]++instance Data.ToQuery StartBatchJob where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStartBatchJobResponse' smart constructor.+data StartBatchJobResponse = StartBatchJobResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The unique identifier of this execution of the batch job.+    executionId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartBatchJobResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'startBatchJobResponse_httpStatus' - The response's http status code.+--+-- 'executionId', 'startBatchJobResponse_executionId' - The unique identifier of this execution of the batch job.+newStartBatchJobResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'executionId'+  Prelude.Text ->+  StartBatchJobResponse+newStartBatchJobResponse pHttpStatus_ pExecutionId_ =+  StartBatchJobResponse'+    { httpStatus = pHttpStatus_,+      executionId = pExecutionId_+    }++-- | The response's http status code.+startBatchJobResponse_httpStatus :: Lens.Lens' StartBatchJobResponse Prelude.Int+startBatchJobResponse_httpStatus = Lens.lens (\StartBatchJobResponse' {httpStatus} -> httpStatus) (\s@StartBatchJobResponse' {} a -> s {httpStatus = a} :: StartBatchJobResponse)++-- | The unique identifier of this execution of the batch job.+startBatchJobResponse_executionId :: Lens.Lens' StartBatchJobResponse Prelude.Text+startBatchJobResponse_executionId = Lens.lens (\StartBatchJobResponse' {executionId} -> executionId) (\s@StartBatchJobResponse' {} a -> s {executionId = a} :: StartBatchJobResponse)++instance Prelude.NFData StartBatchJobResponse where+  rnf StartBatchJobResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf executionId
+ gen/Amazonka/M2/StopApplication.hs view
@@ -0,0 +1,176 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.StopApplication+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Stops a running application.+module Amazonka.M2.StopApplication+  ( -- * Creating a Request+    StopApplication (..),+    newStopApplication,++    -- * Request Lenses+    stopApplication_forceStop,+    stopApplication_applicationId,++    -- * Destructuring the Response+    StopApplicationResponse (..),+    newStopApplicationResponse,++    -- * Response Lenses+    stopApplicationResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStopApplication' smart constructor.+data StopApplication = StopApplication'+  { -- | Stopping an application process can take a long time. Setting this+    -- parameter to true lets you force stop the application so you don\'t need+    -- to wait until the process finishes to apply another action on the+    -- application. The default value is false.+    forceStop :: Prelude.Maybe Prelude.Bool,+    -- | The unique identifier of the application you want to stop.+    applicationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StopApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'forceStop', 'stopApplication_forceStop' - Stopping an application process can take a long time. Setting this+-- parameter to true lets you force stop the application so you don\'t need+-- to wait until the process finishes to apply another action on the+-- application. The default value is false.+--+-- 'applicationId', 'stopApplication_applicationId' - The unique identifier of the application you want to stop.+newStopApplication ::+  -- | 'applicationId'+  Prelude.Text ->+  StopApplication+newStopApplication pApplicationId_ =+  StopApplication'+    { forceStop = Prelude.Nothing,+      applicationId = pApplicationId_+    }++-- | Stopping an application process can take a long time. Setting this+-- parameter to true lets you force stop the application so you don\'t need+-- to wait until the process finishes to apply another action on the+-- application. The default value is false.+stopApplication_forceStop :: Lens.Lens' StopApplication (Prelude.Maybe Prelude.Bool)+stopApplication_forceStop = Lens.lens (\StopApplication' {forceStop} -> forceStop) (\s@StopApplication' {} a -> s {forceStop = a} :: StopApplication)++-- | The unique identifier of the application you want to stop.+stopApplication_applicationId :: Lens.Lens' StopApplication Prelude.Text+stopApplication_applicationId = Lens.lens (\StopApplication' {applicationId} -> applicationId) (\s@StopApplication' {} a -> s {applicationId = a} :: StopApplication)++instance Core.AWSRequest StopApplication where+  type+    AWSResponse StopApplication =+      StopApplicationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          StopApplicationResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable StopApplication where+  hashWithSalt _salt StopApplication' {..} =+    _salt+      `Prelude.hashWithSalt` forceStop+      `Prelude.hashWithSalt` applicationId++instance Prelude.NFData StopApplication where+  rnf StopApplication' {..} =+    Prelude.rnf forceStop+      `Prelude.seq` Prelude.rnf applicationId++instance Data.ToHeaders StopApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON StopApplication where+  toJSON StopApplication' {..} =+    Data.object+      ( Prelude.catMaybes+          [("forceStop" Data..=) Prelude.<$> forceStop]+      )++instance Data.ToPath StopApplication where+  toPath StopApplication' {..} =+    Prelude.mconcat+      ["/applications/", Data.toBS applicationId, "/stop"]++instance Data.ToQuery StopApplication where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStopApplicationResponse' smart constructor.+data StopApplicationResponse = StopApplicationResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StopApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'stopApplicationResponse_httpStatus' - The response's http status code.+newStopApplicationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  StopApplicationResponse+newStopApplicationResponse pHttpStatus_ =+  StopApplicationResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+stopApplicationResponse_httpStatus :: Lens.Lens' StopApplicationResponse Prelude.Int+stopApplicationResponse_httpStatus = Lens.lens (\StopApplicationResponse' {httpStatus} -> httpStatus) (\s@StopApplicationResponse' {} a -> s {httpStatus = a} :: StopApplicationResponse)++instance Prelude.NFData StopApplicationResponse where+  rnf StopApplicationResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/M2/TagResource.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.TagResource+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds one or more tags to the specified resource.+module Amazonka.M2.TagResource+  ( -- * Creating a Request+    TagResource (..),+    newTagResource,++    -- * Request Lenses+    tagResource_resourceArn,+    tagResource_tags,++    -- * Destructuring the Response+    TagResourceResponse (..),+    newTagResourceResponse,++    -- * Response Lenses+    tagResourceResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+  { -- | The Amazon Resource Name (ARN) of the resource.+    resourceArn :: Prelude.Text,+    -- | The tags to add to the resource.+    tags :: Prelude.HashMap Prelude.Text Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'tagResource_resourceArn' - The Amazon Resource Name (ARN) of the resource.+--+-- 'tags', 'tagResource_tags' - The tags to add to the resource.+newTagResource ::+  -- | 'resourceArn'+  Prelude.Text ->+  TagResource+newTagResource pResourceArn_ =+  TagResource'+    { resourceArn = pResourceArn_,+      tags = Prelude.mempty+    }++-- | The Amazon Resource Name (ARN) of the resource.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++-- | The tags to add to the resource.+tagResource_tags :: Lens.Lens' TagResource (Prelude.HashMap Prelude.Text Prelude.Text)+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+  type AWSResponse TagResource = TagResourceResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          TagResourceResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable TagResource where+  hashWithSalt _salt TagResource' {..} =+    _salt+      `Prelude.hashWithSalt` resourceArn+      `Prelude.hashWithSalt` tags++instance Prelude.NFData TagResource where+  rnf TagResource' {..} =+    Prelude.rnf resourceArn+      `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagResource where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON TagResource where+  toJSON TagResource' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("tags" Data..= tags)]+      )++instance Data.ToPath TagResource where+  toPath TagResource' {..} =+    Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery TagResource where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTagResourceResponse' smart constructor.+data TagResourceResponse = TagResourceResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'tagResourceResponse_httpStatus' - The response's http status code.+newTagResourceResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  TagResourceResponse+newTagResourceResponse pHttpStatus_ =+  TagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+tagResourceResponse_httpStatus :: Lens.Lens' TagResourceResponse Prelude.Int+tagResourceResponse_httpStatus = Lens.lens (\TagResourceResponse' {httpStatus} -> httpStatus) (\s@TagResourceResponse' {} a -> s {httpStatus = a} :: TagResourceResponse)++instance Prelude.NFData TagResourceResponse where+  rnf TagResourceResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/M2/Types.hs view
@@ -0,0 +1,504 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types+  ( -- * Service Configuration+    defaultService,++    -- * Errors+    _AccessDeniedException,+    _ConflictException,+    _InternalServerException,+    _ResourceNotFoundException,+    _ServiceQuotaExceededException,+    _ThrottlingException,+    _ValidationException,++    -- * ApplicationDeploymentLifecycle+    ApplicationDeploymentLifecycle (..),++    -- * ApplicationLifecycle+    ApplicationLifecycle (..),++    -- * ApplicationVersionLifecycle+    ApplicationVersionLifecycle (..),++    -- * BatchJobExecutionStatus+    BatchJobExecutionStatus (..),++    -- * BatchJobType+    BatchJobType (..),++    -- * DataSetTaskLifecycle+    DataSetTaskLifecycle (..),++    -- * DeploymentLifecycle+    DeploymentLifecycle (..),++    -- * EngineType+    EngineType (..),++    -- * EnvironmentLifecycle+    EnvironmentLifecycle (..),++    -- * AlternateKey+    AlternateKey (..),+    newAlternateKey,+    alternateKey_allowDuplicates,+    alternateKey_name,+    alternateKey_length,+    alternateKey_offset,++    -- * ApplicationSummary+    ApplicationSummary (..),+    newApplicationSummary,+    applicationSummary_deploymentStatus,+    applicationSummary_description,+    applicationSummary_environmentId,+    applicationSummary_lastStartTime,+    applicationSummary_versionStatus,+    applicationSummary_applicationArn,+    applicationSummary_applicationId,+    applicationSummary_applicationVersion,+    applicationSummary_creationTime,+    applicationSummary_engineType,+    applicationSummary_name,+    applicationSummary_status,++    -- * ApplicationVersionSummary+    ApplicationVersionSummary (..),+    newApplicationVersionSummary,+    applicationVersionSummary_statusReason,+    applicationVersionSummary_applicationVersion,+    applicationVersionSummary_creationTime,+    applicationVersionSummary_status,++    -- * BatchJobDefinition+    BatchJobDefinition (..),+    newBatchJobDefinition,+    batchJobDefinition_fileBatchJobDefinition,+    batchJobDefinition_scriptBatchJobDefinition,++    -- * BatchJobExecutionSummary+    BatchJobExecutionSummary (..),+    newBatchJobExecutionSummary,+    batchJobExecutionSummary_endTime,+    batchJobExecutionSummary_jobId,+    batchJobExecutionSummary_jobName,+    batchJobExecutionSummary_jobType,+    batchJobExecutionSummary_applicationId,+    batchJobExecutionSummary_executionId,+    batchJobExecutionSummary_startTime,+    batchJobExecutionSummary_status,++    -- * BatchJobIdentifier+    BatchJobIdentifier (..),+    newBatchJobIdentifier,+    batchJobIdentifier_fileBatchJobIdentifier,+    batchJobIdentifier_scriptBatchJobIdentifier,++    -- * DataSet+    DataSet (..),+    newDataSet,+    dataSet_relativePath,+    dataSet_storageType,+    dataSet_datasetName,+    dataSet_datasetOrg,+    dataSet_recordLength,++    -- * DataSetImportConfig+    DataSetImportConfig (..),+    newDataSetImportConfig,+    dataSetImportConfig_dataSets,+    dataSetImportConfig_s3Location,++    -- * DataSetImportItem+    DataSetImportItem (..),+    newDataSetImportItem,+    dataSetImportItem_dataSet,+    dataSetImportItem_externalLocation,++    -- * DataSetImportSummary+    DataSetImportSummary (..),+    newDataSetImportSummary,+    dataSetImportSummary_failed,+    dataSetImportSummary_inProgress,+    dataSetImportSummary_pending,+    dataSetImportSummary_succeeded,+    dataSetImportSummary_total,++    -- * DataSetImportTask+    DataSetImportTask (..),+    newDataSetImportTask,+    dataSetImportTask_status,+    dataSetImportTask_summary,+    dataSetImportTask_taskId,++    -- * DataSetSummary+    DataSetSummary (..),+    newDataSetSummary,+    dataSetSummary_creationTime,+    dataSetSummary_dataSetOrg,+    dataSetSummary_format,+    dataSetSummary_lastReferencedTime,+    dataSetSummary_lastUpdatedTime,+    dataSetSummary_dataSetName,++    -- * DatasetDetailOrgAttributes+    DatasetDetailOrgAttributes (..),+    newDatasetDetailOrgAttributes,+    datasetDetailOrgAttributes_gdg,+    datasetDetailOrgAttributes_vsam,++    -- * DatasetOrgAttributes+    DatasetOrgAttributes (..),+    newDatasetOrgAttributes,+    datasetOrgAttributes_gdg,+    datasetOrgAttributes_vsam,++    -- * Definition+    Definition (..),+    newDefinition,+    definition_content,+    definition_s3Location,++    -- * DeployedVersionSummary+    DeployedVersionSummary (..),+    newDeployedVersionSummary,+    deployedVersionSummary_statusReason,+    deployedVersionSummary_applicationVersion,+    deployedVersionSummary_status,++    -- * DeploymentSummary+    DeploymentSummary (..),+    newDeploymentSummary,+    deploymentSummary_statusReason,+    deploymentSummary_applicationId,+    deploymentSummary_applicationVersion,+    deploymentSummary_creationTime,+    deploymentSummary_deploymentId,+    deploymentSummary_environmentId,+    deploymentSummary_status,++    -- * EfsStorageConfiguration+    EfsStorageConfiguration (..),+    newEfsStorageConfiguration,+    efsStorageConfiguration_fileSystemId,+    efsStorageConfiguration_mountPoint,++    -- * EngineVersionsSummary+    EngineVersionsSummary (..),+    newEngineVersionsSummary,+    engineVersionsSummary_engineType,+    engineVersionsSummary_engineVersion,++    -- * EnvironmentSummary+    EnvironmentSummary (..),+    newEnvironmentSummary,+    environmentSummary_creationTime,+    environmentSummary_engineType,+    environmentSummary_engineVersion,+    environmentSummary_environmentArn,+    environmentSummary_environmentId,+    environmentSummary_instanceType,+    environmentSummary_name,+    environmentSummary_status,++    -- * ExternalLocation+    ExternalLocation (..),+    newExternalLocation,+    externalLocation_s3Location,++    -- * FileBatchJobDefinition+    FileBatchJobDefinition (..),+    newFileBatchJobDefinition,+    fileBatchJobDefinition_folderPath,+    fileBatchJobDefinition_fileName,++    -- * FileBatchJobIdentifier+    FileBatchJobIdentifier (..),+    newFileBatchJobIdentifier,+    fileBatchJobIdentifier_folderPath,+    fileBatchJobIdentifier_fileName,++    -- * FsxStorageConfiguration+    FsxStorageConfiguration (..),+    newFsxStorageConfiguration,+    fsxStorageConfiguration_fileSystemId,+    fsxStorageConfiguration_mountPoint,++    -- * GdgAttributes+    GdgAttributes (..),+    newGdgAttributes,+    gdgAttributes_limit,+    gdgAttributes_rollDisposition,++    -- * GdgDetailAttributes+    GdgDetailAttributes (..),+    newGdgDetailAttributes,+    gdgDetailAttributes_limit,+    gdgDetailAttributes_rollDisposition,++    -- * HighAvailabilityConfig+    HighAvailabilityConfig (..),+    newHighAvailabilityConfig,+    highAvailabilityConfig_desiredCapacity,++    -- * LogGroupSummary+    LogGroupSummary (..),+    newLogGroupSummary,+    logGroupSummary_logGroupName,+    logGroupSummary_logType,++    -- * MaintenanceSchedule+    MaintenanceSchedule (..),+    newMaintenanceSchedule,+    maintenanceSchedule_endTime,+    maintenanceSchedule_startTime,++    -- * PendingMaintenance+    PendingMaintenance (..),+    newPendingMaintenance,+    pendingMaintenance_engineVersion,+    pendingMaintenance_schedule,++    -- * PrimaryKey+    PrimaryKey (..),+    newPrimaryKey,+    primaryKey_name,+    primaryKey_length,+    primaryKey_offset,++    -- * RecordLength+    RecordLength (..),+    newRecordLength,+    recordLength_max,+    recordLength_min,++    -- * ScriptBatchJobDefinition+    ScriptBatchJobDefinition (..),+    newScriptBatchJobDefinition,+    scriptBatchJobDefinition_scriptName,++    -- * ScriptBatchJobIdentifier+    ScriptBatchJobIdentifier (..),+    newScriptBatchJobIdentifier,+    scriptBatchJobIdentifier_scriptName,++    -- * StorageConfiguration+    StorageConfiguration (..),+    newStorageConfiguration,+    storageConfiguration_efs,+    storageConfiguration_fsx,++    -- * VsamAttributes+    VsamAttributes (..),+    newVsamAttributes,+    vsamAttributes_alternateKeys,+    vsamAttributes_compressed,+    vsamAttributes_encoding,+    vsamAttributes_primaryKey,+    vsamAttributes_format,++    -- * VsamDetailAttributes+    VsamDetailAttributes (..),+    newVsamDetailAttributes,+    vsamDetailAttributes_alternateKeys,+    vsamDetailAttributes_cacheAtStartup,+    vsamDetailAttributes_compressed,+    vsamDetailAttributes_encoding,+    vsamDetailAttributes_primaryKey,+    vsamDetailAttributes_recordFormat,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.M2.Types.AlternateKey+import Amazonka.M2.Types.ApplicationDeploymentLifecycle+import Amazonka.M2.Types.ApplicationLifecycle+import Amazonka.M2.Types.ApplicationSummary+import Amazonka.M2.Types.ApplicationVersionLifecycle+import Amazonka.M2.Types.ApplicationVersionSummary+import Amazonka.M2.Types.BatchJobDefinition+import Amazonka.M2.Types.BatchJobExecutionStatus+import Amazonka.M2.Types.BatchJobExecutionSummary+import Amazonka.M2.Types.BatchJobIdentifier+import Amazonka.M2.Types.BatchJobType+import Amazonka.M2.Types.DataSet+import Amazonka.M2.Types.DataSetImportConfig+import Amazonka.M2.Types.DataSetImportItem+import Amazonka.M2.Types.DataSetImportSummary+import Amazonka.M2.Types.DataSetImportTask+import Amazonka.M2.Types.DataSetSummary+import Amazonka.M2.Types.DataSetTaskLifecycle+import Amazonka.M2.Types.DatasetDetailOrgAttributes+import Amazonka.M2.Types.DatasetOrgAttributes+import Amazonka.M2.Types.Definition+import Amazonka.M2.Types.DeployedVersionSummary+import Amazonka.M2.Types.DeploymentLifecycle+import Amazonka.M2.Types.DeploymentSummary+import Amazonka.M2.Types.EfsStorageConfiguration+import Amazonka.M2.Types.EngineType+import Amazonka.M2.Types.EngineVersionsSummary+import Amazonka.M2.Types.EnvironmentLifecycle+import Amazonka.M2.Types.EnvironmentSummary+import Amazonka.M2.Types.ExternalLocation+import Amazonka.M2.Types.FileBatchJobDefinition+import Amazonka.M2.Types.FileBatchJobIdentifier+import Amazonka.M2.Types.FsxStorageConfiguration+import Amazonka.M2.Types.GdgAttributes+import Amazonka.M2.Types.GdgDetailAttributes+import Amazonka.M2.Types.HighAvailabilityConfig+import Amazonka.M2.Types.LogGroupSummary+import Amazonka.M2.Types.MaintenanceSchedule+import Amazonka.M2.Types.PendingMaintenance+import Amazonka.M2.Types.PrimaryKey+import Amazonka.M2.Types.RecordLength+import Amazonka.M2.Types.ScriptBatchJobDefinition+import Amazonka.M2.Types.ScriptBatchJobIdentifier+import Amazonka.M2.Types.StorageConfiguration+import Amazonka.M2.Types.VsamAttributes+import Amazonka.M2.Types.VsamDetailAttributes+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2021-04-28@ of the Amazon MainframeModernization SDK configuration.+defaultService :: Core.Service+defaultService =+  Core.Service+    { Core.abbrev = "M2",+      Core.signer = Sign.v4,+      Core.endpointPrefix = "m2",+      Core.signingName = "m2",+      Core.version = "2021-04-28",+      Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+      Core.endpoint = Core.defaultEndpoint defaultService,+      Core.timeout = Prelude.Just 70,+      Core.check = Core.statusSuccess,+      Core.error = Core.parseJSONError "M2",+      Core.retry = retry+    }+  where+    retry =+      Core.Exponential+        { Core.base = 5.0e-2,+          Core.growth = 2,+          Core.attempts = 5,+          Core.check = check+        }+    check e+      | Lens.has (Core.hasStatus 502) e =+          Prelude.Just "bad_gateway"+      | Lens.has (Core.hasStatus 504) e =+          Prelude.Just "gateway_timeout"+      | Lens.has (Core.hasStatus 500) e =+          Prelude.Just "general_server_error"+      | Lens.has (Core.hasStatus 509) e =+          Prelude.Just "limit_exceeded"+      | Lens.has+          ( Core.hasCode "RequestThrottledException"+              Prelude.. Core.hasStatus 400+          )+          e =+          Prelude.Just "request_throttled_exception"+      | Lens.has (Core.hasStatus 503) e =+          Prelude.Just "service_unavailable"+      | Lens.has+          ( Core.hasCode "ThrottledException"+              Prelude.. Core.hasStatus 400+          )+          e =+          Prelude.Just "throttled_exception"+      | Lens.has+          ( Core.hasCode "Throttling"+              Prelude.. Core.hasStatus 400+          )+          e =+          Prelude.Just "throttling"+      | Lens.has+          ( Core.hasCode "ThrottlingException"+              Prelude.. Core.hasStatus 400+          )+          e =+          Prelude.Just "throttling_exception"+      | Lens.has+          ( Core.hasCode+              "ProvisionedThroughputExceededException"+              Prelude.. Core.hasStatus 400+          )+          e =+          Prelude.Just "throughput_exceeded"+      | Lens.has (Core.hasStatus 429) e =+          Prelude.Just "too_many_requests"+      | Prelude.otherwise = Prelude.Nothing++-- | The account or role doesn\'t have the right permissions to make the+-- request.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+  Core._MatchServiceError+    defaultService+    "AccessDeniedException"+    Prelude.. Core.hasStatus 403++-- | The parameters provided in the request conflict with existing resources.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+  Core._MatchServiceError+    defaultService+    "ConflictException"+    Prelude.. Core.hasStatus 409++-- | An unexpected error occurred during the processing of the request.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+  Core._MatchServiceError+    defaultService+    "InternalServerException"+    Prelude.. Core.hasStatus 500++-- | The specified resource was not found.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+  Core._MatchServiceError+    defaultService+    "ResourceNotFoundException"+    Prelude.. Core.hasStatus 404++-- | One or more quotas for Amazon Web Services Mainframe Modernization+-- exceeds the limit.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+  Core._MatchServiceError+    defaultService+    "ServiceQuotaExceededException"+    Prelude.. Core.hasStatus 402++-- | The number of requests made exceeds the limit.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+  Core._MatchServiceError+    defaultService+    "ThrottlingException"+    Prelude.. Core.hasStatus 429++-- | One or more parameters provided in the request is not valid.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+  Core._MatchServiceError+    defaultService+    "ValidationException"+    Prelude.. Core.hasStatus 400
+ gen/Amazonka/M2/Types/AlternateKey.hs view
@@ -0,0 +1,136 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.AlternateKey+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.AlternateKey where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Defines an alternate key. This value is optional. A legacy data set+-- might not have any alternate key defined but if those alternate keys+-- definitions exist, provide them, as some applications will make use of+-- them.+--+-- /See:/ 'newAlternateKey' smart constructor.+data AlternateKey = AlternateKey'+  { -- | Indicates whether the alternate key values are supposed to be unique for+    -- the given data set.+    allowDuplicates :: Prelude.Maybe Prelude.Bool,+    -- | The name of the alternate key.+    name :: Prelude.Maybe Prelude.Text,+    -- | A strictly positive integer value representing the length of the+    -- alternate key.+    length :: Prelude.Int,+    -- | A positive integer value representing the offset to mark the start of+    -- the alternate key part in the record byte array.+    offset :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AlternateKey' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowDuplicates', 'alternateKey_allowDuplicates' - Indicates whether the alternate key values are supposed to be unique for+-- the given data set.+--+-- 'name', 'alternateKey_name' - The name of the alternate key.+--+-- 'length', 'alternateKey_length' - A strictly positive integer value representing the length of the+-- alternate key.+--+-- 'offset', 'alternateKey_offset' - A positive integer value representing the offset to mark the start of+-- the alternate key part in the record byte array.+newAlternateKey ::+  -- | 'length'+  Prelude.Int ->+  -- | 'offset'+  Prelude.Int ->+  AlternateKey+newAlternateKey pLength_ pOffset_ =+  AlternateKey'+    { allowDuplicates = Prelude.Nothing,+      name = Prelude.Nothing,+      length = pLength_,+      offset = pOffset_+    }++-- | Indicates whether the alternate key values are supposed to be unique for+-- the given data set.+alternateKey_allowDuplicates :: Lens.Lens' AlternateKey (Prelude.Maybe Prelude.Bool)+alternateKey_allowDuplicates = Lens.lens (\AlternateKey' {allowDuplicates} -> allowDuplicates) (\s@AlternateKey' {} a -> s {allowDuplicates = a} :: AlternateKey)++-- | The name of the alternate key.+alternateKey_name :: Lens.Lens' AlternateKey (Prelude.Maybe Prelude.Text)+alternateKey_name = Lens.lens (\AlternateKey' {name} -> name) (\s@AlternateKey' {} a -> s {name = a} :: AlternateKey)++-- | A strictly positive integer value representing the length of the+-- alternate key.+alternateKey_length :: Lens.Lens' AlternateKey Prelude.Int+alternateKey_length = Lens.lens (\AlternateKey' {length} -> length) (\s@AlternateKey' {} a -> s {length = a} :: AlternateKey)++-- | A positive integer value representing the offset to mark the start of+-- the alternate key part in the record byte array.+alternateKey_offset :: Lens.Lens' AlternateKey Prelude.Int+alternateKey_offset = Lens.lens (\AlternateKey' {offset} -> offset) (\s@AlternateKey' {} a -> s {offset = a} :: AlternateKey)++instance Data.FromJSON AlternateKey where+  parseJSON =+    Data.withObject+      "AlternateKey"+      ( \x ->+          AlternateKey'+            Prelude.<$> (x Data..:? "allowDuplicates")+            Prelude.<*> (x Data..:? "name")+            Prelude.<*> (x Data..: "length")+            Prelude.<*> (x Data..: "offset")+      )++instance Prelude.Hashable AlternateKey where+  hashWithSalt _salt AlternateKey' {..} =+    _salt+      `Prelude.hashWithSalt` allowDuplicates+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` length+      `Prelude.hashWithSalt` offset++instance Prelude.NFData AlternateKey where+  rnf AlternateKey' {..} =+    Prelude.rnf allowDuplicates+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf length+      `Prelude.seq` Prelude.rnf offset++instance Data.ToJSON AlternateKey where+  toJSON AlternateKey' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("allowDuplicates" Data..=)+              Prelude.<$> allowDuplicates,+            ("name" Data..=) Prelude.<$> name,+            Prelude.Just ("length" Data..= length),+            Prelude.Just ("offset" Data..= offset)+          ]+      )
+ gen/Amazonka/M2/Types/ApplicationDeploymentLifecycle.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.ApplicationDeploymentLifecycle+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.ApplicationDeploymentLifecycle+  ( ApplicationDeploymentLifecycle+      ( ..,+        ApplicationDeploymentLifecycle_Deployed,+        ApplicationDeploymentLifecycle_Deploying+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationDeploymentLifecycle = ApplicationDeploymentLifecycle'+  { fromApplicationDeploymentLifecycle ::+      Data.Text+  }+  deriving stock+    ( Prelude.Show,+      Prelude.Read,+      Prelude.Eq,+      Prelude.Ord,+      Prelude.Generic+    )+  deriving newtype+    ( Prelude.Hashable,+      Prelude.NFData,+      Data.FromText,+      Data.ToText,+      Data.ToByteString,+      Data.ToLog,+      Data.ToHeader,+      Data.ToQuery,+      Data.FromJSON,+      Data.FromJSONKey,+      Data.ToJSON,+      Data.ToJSONKey,+      Data.FromXML,+      Data.ToXML+    )++pattern ApplicationDeploymentLifecycle_Deployed :: ApplicationDeploymentLifecycle+pattern ApplicationDeploymentLifecycle_Deployed = ApplicationDeploymentLifecycle' "Deployed"++pattern ApplicationDeploymentLifecycle_Deploying :: ApplicationDeploymentLifecycle+pattern ApplicationDeploymentLifecycle_Deploying = ApplicationDeploymentLifecycle' "Deploying"++{-# COMPLETE+  ApplicationDeploymentLifecycle_Deployed,+  ApplicationDeploymentLifecycle_Deploying,+  ApplicationDeploymentLifecycle'+  #-}
+ gen/Amazonka/M2/Types/ApplicationLifecycle.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.ApplicationLifecycle+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.ApplicationLifecycle+  ( ApplicationLifecycle+      ( ..,+        ApplicationLifecycle_Available,+        ApplicationLifecycle_Created,+        ApplicationLifecycle_Creating,+        ApplicationLifecycle_Deleting,+        ApplicationLifecycle_Deleting_From_Environment,+        ApplicationLifecycle_Failed,+        ApplicationLifecycle_Ready,+        ApplicationLifecycle_Running,+        ApplicationLifecycle_Starting,+        ApplicationLifecycle_Stopped,+        ApplicationLifecycle_Stopping+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationLifecycle = ApplicationLifecycle'+  { fromApplicationLifecycle ::+      Data.Text+  }+  deriving stock+    ( Prelude.Show,+      Prelude.Read,+      Prelude.Eq,+      Prelude.Ord,+      Prelude.Generic+    )+  deriving newtype+    ( Prelude.Hashable,+      Prelude.NFData,+      Data.FromText,+      Data.ToText,+      Data.ToByteString,+      Data.ToLog,+      Data.ToHeader,+      Data.ToQuery,+      Data.FromJSON,+      Data.FromJSONKey,+      Data.ToJSON,+      Data.ToJSONKey,+      Data.FromXML,+      Data.ToXML+    )++pattern ApplicationLifecycle_Available :: ApplicationLifecycle+pattern ApplicationLifecycle_Available = ApplicationLifecycle' "Available"++pattern ApplicationLifecycle_Created :: ApplicationLifecycle+pattern ApplicationLifecycle_Created = ApplicationLifecycle' "Created"++pattern ApplicationLifecycle_Creating :: ApplicationLifecycle+pattern ApplicationLifecycle_Creating = ApplicationLifecycle' "Creating"++pattern ApplicationLifecycle_Deleting :: ApplicationLifecycle+pattern ApplicationLifecycle_Deleting = ApplicationLifecycle' "Deleting"++pattern ApplicationLifecycle_Deleting_From_Environment :: ApplicationLifecycle+pattern ApplicationLifecycle_Deleting_From_Environment = ApplicationLifecycle' "Deleting From Environment"++pattern ApplicationLifecycle_Failed :: ApplicationLifecycle+pattern ApplicationLifecycle_Failed = ApplicationLifecycle' "Failed"++pattern ApplicationLifecycle_Ready :: ApplicationLifecycle+pattern ApplicationLifecycle_Ready = ApplicationLifecycle' "Ready"++pattern ApplicationLifecycle_Running :: ApplicationLifecycle+pattern ApplicationLifecycle_Running = ApplicationLifecycle' "Running"++pattern ApplicationLifecycle_Starting :: ApplicationLifecycle+pattern ApplicationLifecycle_Starting = ApplicationLifecycle' "Starting"++pattern ApplicationLifecycle_Stopped :: ApplicationLifecycle+pattern ApplicationLifecycle_Stopped = ApplicationLifecycle' "Stopped"++pattern ApplicationLifecycle_Stopping :: ApplicationLifecycle+pattern ApplicationLifecycle_Stopping = ApplicationLifecycle' "Stopping"++{-# COMPLETE+  ApplicationLifecycle_Available,+  ApplicationLifecycle_Created,+  ApplicationLifecycle_Creating,+  ApplicationLifecycle_Deleting,+  ApplicationLifecycle_Deleting_From_Environment,+  ApplicationLifecycle_Failed,+  ApplicationLifecycle_Ready,+  ApplicationLifecycle_Running,+  ApplicationLifecycle_Starting,+  ApplicationLifecycle_Stopped,+  ApplicationLifecycle_Stopping,+  ApplicationLifecycle'+  #-}
+ gen/Amazonka/M2/Types/ApplicationSummary.hs view
@@ -0,0 +1,240 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.ApplicationSummary+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.ApplicationSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.ApplicationDeploymentLifecycle+import Amazonka.M2.Types.ApplicationLifecycle+import Amazonka.M2.Types.ApplicationVersionLifecycle+import Amazonka.M2.Types.EngineType+import qualified Amazonka.Prelude as Prelude++-- | A subset of the possible application attributes. Used in the application+-- list.+--+-- /See:/ 'newApplicationSummary' smart constructor.+data ApplicationSummary = ApplicationSummary'+  { -- | Indicates either an ongoing deployment or if the application has ever+    -- deployed successfully.+    deploymentStatus :: Prelude.Maybe ApplicationDeploymentLifecycle,+    -- | The description of the application.+    description :: Prelude.Maybe Prelude.Text,+    -- | The unique identifier of the runtime environment that hosts this+    -- application.+    environmentId :: Prelude.Maybe Prelude.Text,+    -- | The timestamp when you last started the application. Null until the+    -- application runs for the first time.+    lastStartTime :: Prelude.Maybe Data.POSIX,+    -- | Indicates the status of the latest version of the application.+    versionStatus :: Prelude.Maybe ApplicationVersionLifecycle,+    -- | The Amazon Resource Name (ARN) of the application.+    applicationArn :: Prelude.Text,+    -- | The unique identifier of the application.+    applicationId :: Prelude.Text,+    -- | The version of the application.+    applicationVersion :: Prelude.Natural,+    -- | The timestamp when the application was created.+    creationTime :: Data.POSIX,+    -- | The type of the target platform for this application.+    engineType :: EngineType,+    -- | The name of the application.+    name :: Prelude.Text,+    -- | The status of the application.+    status :: ApplicationLifecycle+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'deploymentStatus', 'applicationSummary_deploymentStatus' - Indicates either an ongoing deployment or if the application has ever+-- deployed successfully.+--+-- 'description', 'applicationSummary_description' - The description of the application.+--+-- 'environmentId', 'applicationSummary_environmentId' - The unique identifier of the runtime environment that hosts this+-- application.+--+-- 'lastStartTime', 'applicationSummary_lastStartTime' - The timestamp when you last started the application. Null until the+-- application runs for the first time.+--+-- 'versionStatus', 'applicationSummary_versionStatus' - Indicates the status of the latest version of the application.+--+-- 'applicationArn', 'applicationSummary_applicationArn' - The Amazon Resource Name (ARN) of the application.+--+-- 'applicationId', 'applicationSummary_applicationId' - The unique identifier of the application.+--+-- 'applicationVersion', 'applicationSummary_applicationVersion' - The version of the application.+--+-- 'creationTime', 'applicationSummary_creationTime' - The timestamp when the application was created.+--+-- 'engineType', 'applicationSummary_engineType' - The type of the target platform for this application.+--+-- 'name', 'applicationSummary_name' - The name of the application.+--+-- 'status', 'applicationSummary_status' - The status of the application.+newApplicationSummary ::+  -- | 'applicationArn'+  Prelude.Text ->+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'applicationVersion'+  Prelude.Natural ->+  -- | 'creationTime'+  Prelude.UTCTime ->+  -- | 'engineType'+  EngineType ->+  -- | 'name'+  Prelude.Text ->+  -- | 'status'+  ApplicationLifecycle ->+  ApplicationSummary+newApplicationSummary+  pApplicationArn_+  pApplicationId_+  pApplicationVersion_+  pCreationTime_+  pEngineType_+  pName_+  pStatus_ =+    ApplicationSummary'+      { deploymentStatus =+          Prelude.Nothing,+        description = Prelude.Nothing,+        environmentId = Prelude.Nothing,+        lastStartTime = Prelude.Nothing,+        versionStatus = Prelude.Nothing,+        applicationArn = pApplicationArn_,+        applicationId = pApplicationId_,+        applicationVersion = pApplicationVersion_,+        creationTime = Data._Time Lens.# pCreationTime_,+        engineType = pEngineType_,+        name = pName_,+        status = pStatus_+      }++-- | Indicates either an ongoing deployment or if the application has ever+-- deployed successfully.+applicationSummary_deploymentStatus :: Lens.Lens' ApplicationSummary (Prelude.Maybe ApplicationDeploymentLifecycle)+applicationSummary_deploymentStatus = Lens.lens (\ApplicationSummary' {deploymentStatus} -> deploymentStatus) (\s@ApplicationSummary' {} a -> s {deploymentStatus = a} :: ApplicationSummary)++-- | The description of the application.+applicationSummary_description :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_description = Lens.lens (\ApplicationSummary' {description} -> description) (\s@ApplicationSummary' {} a -> s {description = a} :: ApplicationSummary)++-- | The unique identifier of the runtime environment that hosts this+-- application.+applicationSummary_environmentId :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_environmentId = Lens.lens (\ApplicationSummary' {environmentId} -> environmentId) (\s@ApplicationSummary' {} a -> s {environmentId = a} :: ApplicationSummary)++-- | The timestamp when you last started the application. Null until the+-- application runs for the first time.+applicationSummary_lastStartTime :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.UTCTime)+applicationSummary_lastStartTime = Lens.lens (\ApplicationSummary' {lastStartTime} -> lastStartTime) (\s@ApplicationSummary' {} a -> s {lastStartTime = a} :: ApplicationSummary) Prelude.. Lens.mapping Data._Time++-- | Indicates the status of the latest version of the application.+applicationSummary_versionStatus :: Lens.Lens' ApplicationSummary (Prelude.Maybe ApplicationVersionLifecycle)+applicationSummary_versionStatus = Lens.lens (\ApplicationSummary' {versionStatus} -> versionStatus) (\s@ApplicationSummary' {} a -> s {versionStatus = a} :: ApplicationSummary)++-- | The Amazon Resource Name (ARN) of the application.+applicationSummary_applicationArn :: Lens.Lens' ApplicationSummary Prelude.Text+applicationSummary_applicationArn = Lens.lens (\ApplicationSummary' {applicationArn} -> applicationArn) (\s@ApplicationSummary' {} a -> s {applicationArn = a} :: ApplicationSummary)++-- | The unique identifier of the application.+applicationSummary_applicationId :: Lens.Lens' ApplicationSummary Prelude.Text+applicationSummary_applicationId = Lens.lens (\ApplicationSummary' {applicationId} -> applicationId) (\s@ApplicationSummary' {} a -> s {applicationId = a} :: ApplicationSummary)++-- | The version of the application.+applicationSummary_applicationVersion :: Lens.Lens' ApplicationSummary Prelude.Natural+applicationSummary_applicationVersion = Lens.lens (\ApplicationSummary' {applicationVersion} -> applicationVersion) (\s@ApplicationSummary' {} a -> s {applicationVersion = a} :: ApplicationSummary)++-- | The timestamp when the application was created.+applicationSummary_creationTime :: Lens.Lens' ApplicationSummary Prelude.UTCTime+applicationSummary_creationTime = Lens.lens (\ApplicationSummary' {creationTime} -> creationTime) (\s@ApplicationSummary' {} a -> s {creationTime = a} :: ApplicationSummary) Prelude.. Data._Time++-- | The type of the target platform for this application.+applicationSummary_engineType :: Lens.Lens' ApplicationSummary EngineType+applicationSummary_engineType = Lens.lens (\ApplicationSummary' {engineType} -> engineType) (\s@ApplicationSummary' {} a -> s {engineType = a} :: ApplicationSummary)++-- | The name of the application.+applicationSummary_name :: Lens.Lens' ApplicationSummary Prelude.Text+applicationSummary_name = Lens.lens (\ApplicationSummary' {name} -> name) (\s@ApplicationSummary' {} a -> s {name = a} :: ApplicationSummary)++-- | The status of the application.+applicationSummary_status :: Lens.Lens' ApplicationSummary ApplicationLifecycle+applicationSummary_status = Lens.lens (\ApplicationSummary' {status} -> status) (\s@ApplicationSummary' {} a -> s {status = a} :: ApplicationSummary)++instance Data.FromJSON ApplicationSummary where+  parseJSON =+    Data.withObject+      "ApplicationSummary"+      ( \x ->+          ApplicationSummary'+            Prelude.<$> (x Data..:? "deploymentStatus")+            Prelude.<*> (x Data..:? "description")+            Prelude.<*> (x Data..:? "environmentId")+            Prelude.<*> (x Data..:? "lastStartTime")+            Prelude.<*> (x Data..:? "versionStatus")+            Prelude.<*> (x Data..: "applicationArn")+            Prelude.<*> (x Data..: "applicationId")+            Prelude.<*> (x Data..: "applicationVersion")+            Prelude.<*> (x Data..: "creationTime")+            Prelude.<*> (x Data..: "engineType")+            Prelude.<*> (x Data..: "name")+            Prelude.<*> (x Data..: "status")+      )++instance Prelude.Hashable ApplicationSummary where+  hashWithSalt _salt ApplicationSummary' {..} =+    _salt+      `Prelude.hashWithSalt` deploymentStatus+      `Prelude.hashWithSalt` description+      `Prelude.hashWithSalt` environmentId+      `Prelude.hashWithSalt` lastStartTime+      `Prelude.hashWithSalt` versionStatus+      `Prelude.hashWithSalt` applicationArn+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` applicationVersion+      `Prelude.hashWithSalt` creationTime+      `Prelude.hashWithSalt` engineType+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` status++instance Prelude.NFData ApplicationSummary where+  rnf ApplicationSummary' {..} =+    Prelude.rnf deploymentStatus+      `Prelude.seq` Prelude.rnf description+      `Prelude.seq` Prelude.rnf environmentId+      `Prelude.seq` Prelude.rnf lastStartTime+      `Prelude.seq` Prelude.rnf versionStatus+      `Prelude.seq` Prelude.rnf applicationArn+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf applicationVersion+      `Prelude.seq` Prelude.rnf creationTime+      `Prelude.seq` Prelude.rnf engineType+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/M2/Types/ApplicationVersionLifecycle.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.ApplicationVersionLifecycle+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.ApplicationVersionLifecycle+  ( ApplicationVersionLifecycle+      ( ..,+        ApplicationVersionLifecycle_Available,+        ApplicationVersionLifecycle_Creating,+        ApplicationVersionLifecycle_Failed+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationVersionLifecycle = ApplicationVersionLifecycle'+  { fromApplicationVersionLifecycle ::+      Data.Text+  }+  deriving stock+    ( Prelude.Show,+      Prelude.Read,+      Prelude.Eq,+      Prelude.Ord,+      Prelude.Generic+    )+  deriving newtype+    ( Prelude.Hashable,+      Prelude.NFData,+      Data.FromText,+      Data.ToText,+      Data.ToByteString,+      Data.ToLog,+      Data.ToHeader,+      Data.ToQuery,+      Data.FromJSON,+      Data.FromJSONKey,+      Data.ToJSON,+      Data.ToJSONKey,+      Data.FromXML,+      Data.ToXML+    )++pattern ApplicationVersionLifecycle_Available :: ApplicationVersionLifecycle+pattern ApplicationVersionLifecycle_Available = ApplicationVersionLifecycle' "Available"++pattern ApplicationVersionLifecycle_Creating :: ApplicationVersionLifecycle+pattern ApplicationVersionLifecycle_Creating = ApplicationVersionLifecycle' "Creating"++pattern ApplicationVersionLifecycle_Failed :: ApplicationVersionLifecycle+pattern ApplicationVersionLifecycle_Failed = ApplicationVersionLifecycle' "Failed"++{-# COMPLETE+  ApplicationVersionLifecycle_Available,+  ApplicationVersionLifecycle_Creating,+  ApplicationVersionLifecycle_Failed,+  ApplicationVersionLifecycle'+  #-}
+ gen/Amazonka/M2/Types/ApplicationVersionSummary.hs view
@@ -0,0 +1,119 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.ApplicationVersionSummary+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.ApplicationVersionSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.ApplicationVersionLifecycle+import qualified Amazonka.Prelude as Prelude++-- | Defines an application version summary.+--+-- /See:/ 'newApplicationVersionSummary' smart constructor.+data ApplicationVersionSummary = ApplicationVersionSummary'+  { -- | The reason for the reported status.+    statusReason :: Prelude.Maybe Prelude.Text,+    -- | The application version.+    applicationVersion :: Prelude.Natural,+    -- | The timestamp when the application version was created.+    creationTime :: Data.POSIX,+    -- | The status of the application.+    status :: ApplicationVersionLifecycle+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationVersionSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'statusReason', 'applicationVersionSummary_statusReason' - The reason for the reported status.+--+-- 'applicationVersion', 'applicationVersionSummary_applicationVersion' - The application version.+--+-- 'creationTime', 'applicationVersionSummary_creationTime' - The timestamp when the application version was created.+--+-- 'status', 'applicationVersionSummary_status' - The status of the application.+newApplicationVersionSummary ::+  -- | 'applicationVersion'+  Prelude.Natural ->+  -- | 'creationTime'+  Prelude.UTCTime ->+  -- | 'status'+  ApplicationVersionLifecycle ->+  ApplicationVersionSummary+newApplicationVersionSummary+  pApplicationVersion_+  pCreationTime_+  pStatus_ =+    ApplicationVersionSummary'+      { statusReason =+          Prelude.Nothing,+        applicationVersion = pApplicationVersion_,+        creationTime = Data._Time Lens.# pCreationTime_,+        status = pStatus_+      }++-- | The reason for the reported status.+applicationVersionSummary_statusReason :: Lens.Lens' ApplicationVersionSummary (Prelude.Maybe Prelude.Text)+applicationVersionSummary_statusReason = Lens.lens (\ApplicationVersionSummary' {statusReason} -> statusReason) (\s@ApplicationVersionSummary' {} a -> s {statusReason = a} :: ApplicationVersionSummary)++-- | The application version.+applicationVersionSummary_applicationVersion :: Lens.Lens' ApplicationVersionSummary Prelude.Natural+applicationVersionSummary_applicationVersion = Lens.lens (\ApplicationVersionSummary' {applicationVersion} -> applicationVersion) (\s@ApplicationVersionSummary' {} a -> s {applicationVersion = a} :: ApplicationVersionSummary)++-- | The timestamp when the application version was created.+applicationVersionSummary_creationTime :: Lens.Lens' ApplicationVersionSummary Prelude.UTCTime+applicationVersionSummary_creationTime = Lens.lens (\ApplicationVersionSummary' {creationTime} -> creationTime) (\s@ApplicationVersionSummary' {} a -> s {creationTime = a} :: ApplicationVersionSummary) Prelude.. Data._Time++-- | The status of the application.+applicationVersionSummary_status :: Lens.Lens' ApplicationVersionSummary ApplicationVersionLifecycle+applicationVersionSummary_status = Lens.lens (\ApplicationVersionSummary' {status} -> status) (\s@ApplicationVersionSummary' {} a -> s {status = a} :: ApplicationVersionSummary)++instance Data.FromJSON ApplicationVersionSummary where+  parseJSON =+    Data.withObject+      "ApplicationVersionSummary"+      ( \x ->+          ApplicationVersionSummary'+            Prelude.<$> (x Data..:? "statusReason")+            Prelude.<*> (x Data..: "applicationVersion")+            Prelude.<*> (x Data..: "creationTime")+            Prelude.<*> (x Data..: "status")+      )++instance Prelude.Hashable ApplicationVersionSummary where+  hashWithSalt _salt ApplicationVersionSummary' {..} =+    _salt+      `Prelude.hashWithSalt` statusReason+      `Prelude.hashWithSalt` applicationVersion+      `Prelude.hashWithSalt` creationTime+      `Prelude.hashWithSalt` status++instance Prelude.NFData ApplicationVersionSummary where+  rnf ApplicationVersionSummary' {..} =+    Prelude.rnf statusReason+      `Prelude.seq` Prelude.rnf applicationVersion+      `Prelude.seq` Prelude.rnf creationTime+      `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/M2/Types/BatchJobDefinition.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.BatchJobDefinition+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.BatchJobDefinition where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.FileBatchJobDefinition+import Amazonka.M2.Types.ScriptBatchJobDefinition+import qualified Amazonka.Prelude as Prelude++-- | Defines the details of a batch job.+--+-- /See:/ 'newBatchJobDefinition' smart constructor.+data BatchJobDefinition = BatchJobDefinition'+  { -- | Specifies a file containing a batch job definition.+    fileBatchJobDefinition :: Prelude.Maybe FileBatchJobDefinition,+    -- | A script containing a batch job definition.+    scriptBatchJobDefinition :: Prelude.Maybe ScriptBatchJobDefinition+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchJobDefinition' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'fileBatchJobDefinition', 'batchJobDefinition_fileBatchJobDefinition' - Specifies a file containing a batch job definition.+--+-- 'scriptBatchJobDefinition', 'batchJobDefinition_scriptBatchJobDefinition' - A script containing a batch job definition.+newBatchJobDefinition ::+  BatchJobDefinition+newBatchJobDefinition =+  BatchJobDefinition'+    { fileBatchJobDefinition =+        Prelude.Nothing,+      scriptBatchJobDefinition = Prelude.Nothing+    }++-- | Specifies a file containing a batch job definition.+batchJobDefinition_fileBatchJobDefinition :: Lens.Lens' BatchJobDefinition (Prelude.Maybe FileBatchJobDefinition)+batchJobDefinition_fileBatchJobDefinition = Lens.lens (\BatchJobDefinition' {fileBatchJobDefinition} -> fileBatchJobDefinition) (\s@BatchJobDefinition' {} a -> s {fileBatchJobDefinition = a} :: BatchJobDefinition)++-- | A script containing a batch job definition.+batchJobDefinition_scriptBatchJobDefinition :: Lens.Lens' BatchJobDefinition (Prelude.Maybe ScriptBatchJobDefinition)+batchJobDefinition_scriptBatchJobDefinition = Lens.lens (\BatchJobDefinition' {scriptBatchJobDefinition} -> scriptBatchJobDefinition) (\s@BatchJobDefinition' {} a -> s {scriptBatchJobDefinition = a} :: BatchJobDefinition)++instance Data.FromJSON BatchJobDefinition where+  parseJSON =+    Data.withObject+      "BatchJobDefinition"+      ( \x ->+          BatchJobDefinition'+            Prelude.<$> (x Data..:? "fileBatchJobDefinition")+            Prelude.<*> (x Data..:? "scriptBatchJobDefinition")+      )++instance Prelude.Hashable BatchJobDefinition where+  hashWithSalt _salt BatchJobDefinition' {..} =+    _salt+      `Prelude.hashWithSalt` fileBatchJobDefinition+      `Prelude.hashWithSalt` scriptBatchJobDefinition++instance Prelude.NFData BatchJobDefinition where+  rnf BatchJobDefinition' {..} =+    Prelude.rnf fileBatchJobDefinition+      `Prelude.seq` Prelude.rnf scriptBatchJobDefinition
+ gen/Amazonka/M2/Types/BatchJobExecutionStatus.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.BatchJobExecutionStatus+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.BatchJobExecutionStatus+  ( BatchJobExecutionStatus+      ( ..,+        BatchJobExecutionStatus_Cancelled,+        BatchJobExecutionStatus_Cancelling,+        BatchJobExecutionStatus_Dispatching,+        BatchJobExecutionStatus_Failed,+        BatchJobExecutionStatus_Holding,+        BatchJobExecutionStatus_Running,+        BatchJobExecutionStatus_Submitting,+        BatchJobExecutionStatus_Succeeded,+        BatchJobExecutionStatus_Succeeded_With_Warning+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BatchJobExecutionStatus = BatchJobExecutionStatus'+  { fromBatchJobExecutionStatus ::+      Data.Text+  }+  deriving stock+    ( Prelude.Show,+      Prelude.Read,+      Prelude.Eq,+      Prelude.Ord,+      Prelude.Generic+    )+  deriving newtype+    ( Prelude.Hashable,+      Prelude.NFData,+      Data.FromText,+      Data.ToText,+      Data.ToByteString,+      Data.ToLog,+      Data.ToHeader,+      Data.ToQuery,+      Data.FromJSON,+      Data.FromJSONKey,+      Data.ToJSON,+      Data.ToJSONKey,+      Data.FromXML,+      Data.ToXML+    )++pattern BatchJobExecutionStatus_Cancelled :: BatchJobExecutionStatus+pattern BatchJobExecutionStatus_Cancelled = BatchJobExecutionStatus' "Cancelled"++pattern BatchJobExecutionStatus_Cancelling :: BatchJobExecutionStatus+pattern BatchJobExecutionStatus_Cancelling = BatchJobExecutionStatus' "Cancelling"++pattern BatchJobExecutionStatus_Dispatching :: BatchJobExecutionStatus+pattern BatchJobExecutionStatus_Dispatching = BatchJobExecutionStatus' "Dispatching"++pattern BatchJobExecutionStatus_Failed :: BatchJobExecutionStatus+pattern BatchJobExecutionStatus_Failed = BatchJobExecutionStatus' "Failed"++pattern BatchJobExecutionStatus_Holding :: BatchJobExecutionStatus+pattern BatchJobExecutionStatus_Holding = BatchJobExecutionStatus' "Holding"++pattern BatchJobExecutionStatus_Running :: BatchJobExecutionStatus+pattern BatchJobExecutionStatus_Running = BatchJobExecutionStatus' "Running"++pattern BatchJobExecutionStatus_Submitting :: BatchJobExecutionStatus+pattern BatchJobExecutionStatus_Submitting = BatchJobExecutionStatus' "Submitting"++pattern BatchJobExecutionStatus_Succeeded :: BatchJobExecutionStatus+pattern BatchJobExecutionStatus_Succeeded = BatchJobExecutionStatus' "Succeeded"++pattern BatchJobExecutionStatus_Succeeded_With_Warning :: BatchJobExecutionStatus+pattern BatchJobExecutionStatus_Succeeded_With_Warning = BatchJobExecutionStatus' "Succeeded With Warning"++{-# COMPLETE+  BatchJobExecutionStatus_Cancelled,+  BatchJobExecutionStatus_Cancelling,+  BatchJobExecutionStatus_Dispatching,+  BatchJobExecutionStatus_Failed,+  BatchJobExecutionStatus_Holding,+  BatchJobExecutionStatus_Running,+  BatchJobExecutionStatus_Submitting,+  BatchJobExecutionStatus_Succeeded,+  BatchJobExecutionStatus_Succeeded_With_Warning,+  BatchJobExecutionStatus'+  #-}
+ gen/Amazonka/M2/Types/BatchJobExecutionSummary.hs view
@@ -0,0 +1,172 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.BatchJobExecutionSummary+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.BatchJobExecutionSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.BatchJobExecutionStatus+import Amazonka.M2.Types.BatchJobType+import qualified Amazonka.Prelude as Prelude++-- | A subset of the possible batch job attributes. Used in the batch job+-- list.+--+-- /See:/ 'newBatchJobExecutionSummary' smart constructor.+data BatchJobExecutionSummary = BatchJobExecutionSummary'+  { -- | The timestamp when this batch job execution ended.+    endTime :: Prelude.Maybe Data.POSIX,+    -- | The unique identifier of a particular batch job.+    jobId :: Prelude.Maybe Prelude.Text,+    -- | The name of a particular batch job.+    jobName :: Prelude.Maybe Prelude.Text,+    -- | The type of a particular batch job execution.+    jobType :: Prelude.Maybe BatchJobType,+    -- | The unique identifier of the application that hosts this batch job.+    applicationId :: Prelude.Text,+    -- | The unique identifier of this execution of the batch job.+    executionId :: Prelude.Text,+    -- | The timestamp when a particular batch job execution started.+    startTime :: Data.POSIX,+    -- | The status of a particular batch job execution.+    status :: BatchJobExecutionStatus+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchJobExecutionSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'endTime', 'batchJobExecutionSummary_endTime' - The timestamp when this batch job execution ended.+--+-- 'jobId', 'batchJobExecutionSummary_jobId' - The unique identifier of a particular batch job.+--+-- 'jobName', 'batchJobExecutionSummary_jobName' - The name of a particular batch job.+--+-- 'jobType', 'batchJobExecutionSummary_jobType' - The type of a particular batch job execution.+--+-- 'applicationId', 'batchJobExecutionSummary_applicationId' - The unique identifier of the application that hosts this batch job.+--+-- 'executionId', 'batchJobExecutionSummary_executionId' - The unique identifier of this execution of the batch job.+--+-- 'startTime', 'batchJobExecutionSummary_startTime' - The timestamp when a particular batch job execution started.+--+-- 'status', 'batchJobExecutionSummary_status' - The status of a particular batch job execution.+newBatchJobExecutionSummary ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'executionId'+  Prelude.Text ->+  -- | 'startTime'+  Prelude.UTCTime ->+  -- | 'status'+  BatchJobExecutionStatus ->+  BatchJobExecutionSummary+newBatchJobExecutionSummary+  pApplicationId_+  pExecutionId_+  pStartTime_+  pStatus_ =+    BatchJobExecutionSummary'+      { endTime =+          Prelude.Nothing,+        jobId = Prelude.Nothing,+        jobName = Prelude.Nothing,+        jobType = Prelude.Nothing,+        applicationId = pApplicationId_,+        executionId = pExecutionId_,+        startTime = Data._Time Lens.# pStartTime_,+        status = pStatus_+      }++-- | The timestamp when this batch job execution ended.+batchJobExecutionSummary_endTime :: Lens.Lens' BatchJobExecutionSummary (Prelude.Maybe Prelude.UTCTime)+batchJobExecutionSummary_endTime = Lens.lens (\BatchJobExecutionSummary' {endTime} -> endTime) (\s@BatchJobExecutionSummary' {} a -> s {endTime = a} :: BatchJobExecutionSummary) Prelude.. Lens.mapping Data._Time++-- | The unique identifier of a particular batch job.+batchJobExecutionSummary_jobId :: Lens.Lens' BatchJobExecutionSummary (Prelude.Maybe Prelude.Text)+batchJobExecutionSummary_jobId = Lens.lens (\BatchJobExecutionSummary' {jobId} -> jobId) (\s@BatchJobExecutionSummary' {} a -> s {jobId = a} :: BatchJobExecutionSummary)++-- | The name of a particular batch job.+batchJobExecutionSummary_jobName :: Lens.Lens' BatchJobExecutionSummary (Prelude.Maybe Prelude.Text)+batchJobExecutionSummary_jobName = Lens.lens (\BatchJobExecutionSummary' {jobName} -> jobName) (\s@BatchJobExecutionSummary' {} a -> s {jobName = a} :: BatchJobExecutionSummary)++-- | The type of a particular batch job execution.+batchJobExecutionSummary_jobType :: Lens.Lens' BatchJobExecutionSummary (Prelude.Maybe BatchJobType)+batchJobExecutionSummary_jobType = Lens.lens (\BatchJobExecutionSummary' {jobType} -> jobType) (\s@BatchJobExecutionSummary' {} a -> s {jobType = a} :: BatchJobExecutionSummary)++-- | The unique identifier of the application that hosts this batch job.+batchJobExecutionSummary_applicationId :: Lens.Lens' BatchJobExecutionSummary Prelude.Text+batchJobExecutionSummary_applicationId = Lens.lens (\BatchJobExecutionSummary' {applicationId} -> applicationId) (\s@BatchJobExecutionSummary' {} a -> s {applicationId = a} :: BatchJobExecutionSummary)++-- | The unique identifier of this execution of the batch job.+batchJobExecutionSummary_executionId :: Lens.Lens' BatchJobExecutionSummary Prelude.Text+batchJobExecutionSummary_executionId = Lens.lens (\BatchJobExecutionSummary' {executionId} -> executionId) (\s@BatchJobExecutionSummary' {} a -> s {executionId = a} :: BatchJobExecutionSummary)++-- | The timestamp when a particular batch job execution started.+batchJobExecutionSummary_startTime :: Lens.Lens' BatchJobExecutionSummary Prelude.UTCTime+batchJobExecutionSummary_startTime = Lens.lens (\BatchJobExecutionSummary' {startTime} -> startTime) (\s@BatchJobExecutionSummary' {} a -> s {startTime = a} :: BatchJobExecutionSummary) Prelude.. Data._Time++-- | The status of a particular batch job execution.+batchJobExecutionSummary_status :: Lens.Lens' BatchJobExecutionSummary BatchJobExecutionStatus+batchJobExecutionSummary_status = Lens.lens (\BatchJobExecutionSummary' {status} -> status) (\s@BatchJobExecutionSummary' {} a -> s {status = a} :: BatchJobExecutionSummary)++instance Data.FromJSON BatchJobExecutionSummary where+  parseJSON =+    Data.withObject+      "BatchJobExecutionSummary"+      ( \x ->+          BatchJobExecutionSummary'+            Prelude.<$> (x Data..:? "endTime")+            Prelude.<*> (x Data..:? "jobId")+            Prelude.<*> (x Data..:? "jobName")+            Prelude.<*> (x Data..:? "jobType")+            Prelude.<*> (x Data..: "applicationId")+            Prelude.<*> (x Data..: "executionId")+            Prelude.<*> (x Data..: "startTime")+            Prelude.<*> (x Data..: "status")+      )++instance Prelude.Hashable BatchJobExecutionSummary where+  hashWithSalt _salt BatchJobExecutionSummary' {..} =+    _salt+      `Prelude.hashWithSalt` endTime+      `Prelude.hashWithSalt` jobId+      `Prelude.hashWithSalt` jobName+      `Prelude.hashWithSalt` jobType+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` executionId+      `Prelude.hashWithSalt` startTime+      `Prelude.hashWithSalt` status++instance Prelude.NFData BatchJobExecutionSummary where+  rnf BatchJobExecutionSummary' {..} =+    Prelude.rnf endTime+      `Prelude.seq` Prelude.rnf jobId+      `Prelude.seq` Prelude.rnf jobName+      `Prelude.seq` Prelude.rnf jobType+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf executionId+      `Prelude.seq` Prelude.rnf startTime+      `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/M2/Types/BatchJobIdentifier.hs view
@@ -0,0 +1,91 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.BatchJobIdentifier+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.BatchJobIdentifier where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.FileBatchJobIdentifier+import Amazonka.M2.Types.ScriptBatchJobIdentifier+import qualified Amazonka.Prelude as Prelude++-- | Identifies a specific batch job.+--+-- /See:/ 'newBatchJobIdentifier' smart constructor.+data BatchJobIdentifier = BatchJobIdentifier'+  { -- | Specifies a file associated with a specific batch job.+    fileBatchJobIdentifier :: Prelude.Maybe FileBatchJobIdentifier,+    -- | A batch job identifier in which the batch job to run is identified by+    -- the script name.+    scriptBatchJobIdentifier :: Prelude.Maybe ScriptBatchJobIdentifier+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchJobIdentifier' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'fileBatchJobIdentifier', 'batchJobIdentifier_fileBatchJobIdentifier' - Specifies a file associated with a specific batch job.+--+-- 'scriptBatchJobIdentifier', 'batchJobIdentifier_scriptBatchJobIdentifier' - A batch job identifier in which the batch job to run is identified by+-- the script name.+newBatchJobIdentifier ::+  BatchJobIdentifier+newBatchJobIdentifier =+  BatchJobIdentifier'+    { fileBatchJobIdentifier =+        Prelude.Nothing,+      scriptBatchJobIdentifier = Prelude.Nothing+    }++-- | Specifies a file associated with a specific batch job.+batchJobIdentifier_fileBatchJobIdentifier :: Lens.Lens' BatchJobIdentifier (Prelude.Maybe FileBatchJobIdentifier)+batchJobIdentifier_fileBatchJobIdentifier = Lens.lens (\BatchJobIdentifier' {fileBatchJobIdentifier} -> fileBatchJobIdentifier) (\s@BatchJobIdentifier' {} a -> s {fileBatchJobIdentifier = a} :: BatchJobIdentifier)++-- | A batch job identifier in which the batch job to run is identified by+-- the script name.+batchJobIdentifier_scriptBatchJobIdentifier :: Lens.Lens' BatchJobIdentifier (Prelude.Maybe ScriptBatchJobIdentifier)+batchJobIdentifier_scriptBatchJobIdentifier = Lens.lens (\BatchJobIdentifier' {scriptBatchJobIdentifier} -> scriptBatchJobIdentifier) (\s@BatchJobIdentifier' {} a -> s {scriptBatchJobIdentifier = a} :: BatchJobIdentifier)++instance Prelude.Hashable BatchJobIdentifier where+  hashWithSalt _salt BatchJobIdentifier' {..} =+    _salt+      `Prelude.hashWithSalt` fileBatchJobIdentifier+      `Prelude.hashWithSalt` scriptBatchJobIdentifier++instance Prelude.NFData BatchJobIdentifier where+  rnf BatchJobIdentifier' {..} =+    Prelude.rnf fileBatchJobIdentifier+      `Prelude.seq` Prelude.rnf scriptBatchJobIdentifier++instance Data.ToJSON BatchJobIdentifier where+  toJSON BatchJobIdentifier' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("fileBatchJobIdentifier" Data..=)+              Prelude.<$> fileBatchJobIdentifier,+            ("scriptBatchJobIdentifier" Data..=)+              Prelude.<$> scriptBatchJobIdentifier+          ]+      )
+ gen/Amazonka/M2/Types/BatchJobType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.BatchJobType+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.BatchJobType+  ( BatchJobType+      ( ..,+        BatchJobType_JES2,+        BatchJobType_JES3,+        BatchJobType_VSE+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BatchJobType = BatchJobType'+  { fromBatchJobType ::+      Data.Text+  }+  deriving stock+    ( Prelude.Show,+      Prelude.Read,+      Prelude.Eq,+      Prelude.Ord,+      Prelude.Generic+    )+  deriving newtype+    ( Prelude.Hashable,+      Prelude.NFData,+      Data.FromText,+      Data.ToText,+      Data.ToByteString,+      Data.ToLog,+      Data.ToHeader,+      Data.ToQuery,+      Data.FromJSON,+      Data.FromJSONKey,+      Data.ToJSON,+      Data.ToJSONKey,+      Data.FromXML,+      Data.ToXML+    )++pattern BatchJobType_JES2 :: BatchJobType+pattern BatchJobType_JES2 = BatchJobType' "JES2"++pattern BatchJobType_JES3 :: BatchJobType+pattern BatchJobType_JES3 = BatchJobType' "JES3"++pattern BatchJobType_VSE :: BatchJobType+pattern BatchJobType_VSE = BatchJobType' "VSE"++{-# COMPLETE+  BatchJobType_JES2,+  BatchJobType_JES3,+  BatchJobType_VSE,+  BatchJobType'+  #-}
+ gen/Amazonka/M2/Types/DataSet.hs view
@@ -0,0 +1,136 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DataSet+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DataSet where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.DatasetOrgAttributes+import Amazonka.M2.Types.RecordLength+import qualified Amazonka.Prelude as Prelude++-- | Defines a data set.+--+-- /See:/ 'newDataSet' smart constructor.+data DataSet = DataSet'+  { -- | The relative location of the data set in the database or file system.+    relativePath :: Prelude.Maybe Prelude.Text,+    -- | The storage type of the data set: database or file system. For Micro+    -- Focus, database corresponds to datastore and file system corresponds to+    -- EFS\/FSX. For Blu Age, there is no support of file system and database+    -- corresponds to Blusam.+    storageType :: Prelude.Maybe Prelude.Text,+    -- | The logical identifier for a specific data set (in mainframe format).+    datasetName :: Prelude.Text,+    -- | The type of dataset. The only supported value is VSAM.+    datasetOrg :: DatasetOrgAttributes,+    -- | The length of a record.+    recordLength :: RecordLength+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'relativePath', 'dataSet_relativePath' - The relative location of the data set in the database or file system.+--+-- 'storageType', 'dataSet_storageType' - The storage type of the data set: database or file system. For Micro+-- Focus, database corresponds to datastore and file system corresponds to+-- EFS\/FSX. For Blu Age, there is no support of file system and database+-- corresponds to Blusam.+--+-- 'datasetName', 'dataSet_datasetName' - The logical identifier for a specific data set (in mainframe format).+--+-- 'datasetOrg', 'dataSet_datasetOrg' - The type of dataset. The only supported value is VSAM.+--+-- 'recordLength', 'dataSet_recordLength' - The length of a record.+newDataSet ::+  -- | 'datasetName'+  Prelude.Text ->+  -- | 'datasetOrg'+  DatasetOrgAttributes ->+  -- | 'recordLength'+  RecordLength ->+  DataSet+newDataSet pDatasetName_ pDatasetOrg_ pRecordLength_ =+  DataSet'+    { relativePath = Prelude.Nothing,+      storageType = Prelude.Nothing,+      datasetName = pDatasetName_,+      datasetOrg = pDatasetOrg_,+      recordLength = pRecordLength_+    }++-- | The relative location of the data set in the database or file system.+dataSet_relativePath :: Lens.Lens' DataSet (Prelude.Maybe Prelude.Text)+dataSet_relativePath = Lens.lens (\DataSet' {relativePath} -> relativePath) (\s@DataSet' {} a -> s {relativePath = a} :: DataSet)++-- | The storage type of the data set: database or file system. For Micro+-- Focus, database corresponds to datastore and file system corresponds to+-- EFS\/FSX. For Blu Age, there is no support of file system and database+-- corresponds to Blusam.+dataSet_storageType :: Lens.Lens' DataSet (Prelude.Maybe Prelude.Text)+dataSet_storageType = Lens.lens (\DataSet' {storageType} -> storageType) (\s@DataSet' {} a -> s {storageType = a} :: DataSet)++-- | The logical identifier for a specific data set (in mainframe format).+dataSet_datasetName :: Lens.Lens' DataSet Prelude.Text+dataSet_datasetName = Lens.lens (\DataSet' {datasetName} -> datasetName) (\s@DataSet' {} a -> s {datasetName = a} :: DataSet)++-- | The type of dataset. The only supported value is VSAM.+dataSet_datasetOrg :: Lens.Lens' DataSet DatasetOrgAttributes+dataSet_datasetOrg = Lens.lens (\DataSet' {datasetOrg} -> datasetOrg) (\s@DataSet' {} a -> s {datasetOrg = a} :: DataSet)++-- | The length of a record.+dataSet_recordLength :: Lens.Lens' DataSet RecordLength+dataSet_recordLength = Lens.lens (\DataSet' {recordLength} -> recordLength) (\s@DataSet' {} a -> s {recordLength = a} :: DataSet)++instance Prelude.Hashable DataSet where+  hashWithSalt _salt DataSet' {..} =+    _salt+      `Prelude.hashWithSalt` relativePath+      `Prelude.hashWithSalt` storageType+      `Prelude.hashWithSalt` datasetName+      `Prelude.hashWithSalt` datasetOrg+      `Prelude.hashWithSalt` recordLength++instance Prelude.NFData DataSet where+  rnf DataSet' {..} =+    Prelude.rnf relativePath+      `Prelude.seq` Prelude.rnf storageType+      `Prelude.seq` Prelude.rnf datasetName+      `Prelude.seq` Prelude.rnf datasetOrg+      `Prelude.seq` Prelude.rnf recordLength++instance Data.ToJSON DataSet where+  toJSON DataSet' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("relativePath" Data..=) Prelude.<$> relativePath,+            ("storageType" Data..=) Prelude.<$> storageType,+            Prelude.Just ("datasetName" Data..= datasetName),+            Prelude.Just ("datasetOrg" Data..= datasetOrg),+            Prelude.Just ("recordLength" Data..= recordLength)+          ]+      )
+ gen/Amazonka/M2/Types/DataSetImportConfig.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DataSetImportConfig+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DataSetImportConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.DataSetImportItem+import qualified Amazonka.Prelude as Prelude++-- | Identifies one or more data sets you want to import with the+-- CreateDataSetImportTask operation.+--+-- /See:/ 'newDataSetImportConfig' smart constructor.+data DataSetImportConfig = DataSetImportConfig'+  { -- | The data sets.+    dataSets :: Prelude.Maybe (Prelude.NonEmpty DataSetImportItem),+    -- | The Amazon S3 location of the data sets.+    s3Location :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataSetImportConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSets', 'dataSetImportConfig_dataSets' - The data sets.+--+-- 's3Location', 'dataSetImportConfig_s3Location' - The Amazon S3 location of the data sets.+newDataSetImportConfig ::+  DataSetImportConfig+newDataSetImportConfig =+  DataSetImportConfig'+    { dataSets = Prelude.Nothing,+      s3Location = Prelude.Nothing+    }++-- | The data sets.+dataSetImportConfig_dataSets :: Lens.Lens' DataSetImportConfig (Prelude.Maybe (Prelude.NonEmpty DataSetImportItem))+dataSetImportConfig_dataSets = Lens.lens (\DataSetImportConfig' {dataSets} -> dataSets) (\s@DataSetImportConfig' {} a -> s {dataSets = a} :: DataSetImportConfig) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon S3 location of the data sets.+dataSetImportConfig_s3Location :: Lens.Lens' DataSetImportConfig (Prelude.Maybe Prelude.Text)+dataSetImportConfig_s3Location = Lens.lens (\DataSetImportConfig' {s3Location} -> s3Location) (\s@DataSetImportConfig' {} a -> s {s3Location = a} :: DataSetImportConfig)++instance Prelude.Hashable DataSetImportConfig where+  hashWithSalt _salt DataSetImportConfig' {..} =+    _salt+      `Prelude.hashWithSalt` dataSets+      `Prelude.hashWithSalt` s3Location++instance Prelude.NFData DataSetImportConfig where+  rnf DataSetImportConfig' {..} =+    Prelude.rnf dataSets+      `Prelude.seq` Prelude.rnf s3Location++instance Data.ToJSON DataSetImportConfig where+  toJSON DataSetImportConfig' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("dataSets" Data..=) Prelude.<$> dataSets,+            ("s3Location" Data..=) Prelude.<$> s3Location+          ]+      )
+ gen/Amazonka/M2/Types/DataSetImportItem.hs view
@@ -0,0 +1,90 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DataSetImportItem+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DataSetImportItem where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.DataSet+import Amazonka.M2.Types.ExternalLocation+import qualified Amazonka.Prelude as Prelude++-- | Identifies a specific data set to import from an external location.+--+-- /See:/ 'newDataSetImportItem' smart constructor.+data DataSetImportItem = DataSetImportItem'+  { -- | The data set.+    dataSet :: DataSet,+    -- | The location of the data set.+    externalLocation :: ExternalLocation+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataSetImportItem' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSet', 'dataSetImportItem_dataSet' - The data set.+--+-- 'externalLocation', 'dataSetImportItem_externalLocation' - The location of the data set.+newDataSetImportItem ::+  -- | 'dataSet'+  DataSet ->+  -- | 'externalLocation'+  ExternalLocation ->+  DataSetImportItem+newDataSetImportItem pDataSet_ pExternalLocation_ =+  DataSetImportItem'+    { dataSet = pDataSet_,+      externalLocation = pExternalLocation_+    }++-- | The data set.+dataSetImportItem_dataSet :: Lens.Lens' DataSetImportItem DataSet+dataSetImportItem_dataSet = Lens.lens (\DataSetImportItem' {dataSet} -> dataSet) (\s@DataSetImportItem' {} a -> s {dataSet = a} :: DataSetImportItem)++-- | The location of the data set.+dataSetImportItem_externalLocation :: Lens.Lens' DataSetImportItem ExternalLocation+dataSetImportItem_externalLocation = Lens.lens (\DataSetImportItem' {externalLocation} -> externalLocation) (\s@DataSetImportItem' {} a -> s {externalLocation = a} :: DataSetImportItem)++instance Prelude.Hashable DataSetImportItem where+  hashWithSalt _salt DataSetImportItem' {..} =+    _salt+      `Prelude.hashWithSalt` dataSet+      `Prelude.hashWithSalt` externalLocation++instance Prelude.NFData DataSetImportItem where+  rnf DataSetImportItem' {..} =+    Prelude.rnf dataSet+      `Prelude.seq` Prelude.rnf externalLocation++instance Data.ToJSON DataSetImportItem where+  toJSON DataSetImportItem' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just ("dataSet" Data..= dataSet),+            Prelude.Just+              ("externalLocation" Data..= externalLocation)+          ]+      )
+ gen/Amazonka/M2/Types/DataSetImportSummary.hs view
@@ -0,0 +1,135 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DataSetImportSummary+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DataSetImportSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Represents a summary of data set imports.+--+-- /See:/ 'newDataSetImportSummary' smart constructor.+data DataSetImportSummary = DataSetImportSummary'+  { -- | The number of data set imports that have failed.+    failed :: Prelude.Int,+    -- | The number of data set imports that are in progress.+    inProgress :: Prelude.Int,+    -- | The number of data set imports that are pending.+    pending :: Prelude.Int,+    -- | The number of data set imports that have succeeded.+    succeeded :: Prelude.Int,+    -- | The total number of data set imports.+    total :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataSetImportSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'failed', 'dataSetImportSummary_failed' - The number of data set imports that have failed.+--+-- 'inProgress', 'dataSetImportSummary_inProgress' - The number of data set imports that are in progress.+--+-- 'pending', 'dataSetImportSummary_pending' - The number of data set imports that are pending.+--+-- 'succeeded', 'dataSetImportSummary_succeeded' - The number of data set imports that have succeeded.+--+-- 'total', 'dataSetImportSummary_total' - The total number of data set imports.+newDataSetImportSummary ::+  -- | 'failed'+  Prelude.Int ->+  -- | 'inProgress'+  Prelude.Int ->+  -- | 'pending'+  Prelude.Int ->+  -- | 'succeeded'+  Prelude.Int ->+  -- | 'total'+  Prelude.Int ->+  DataSetImportSummary+newDataSetImportSummary+  pFailed_+  pInProgress_+  pPending_+  pSucceeded_+  pTotal_ =+    DataSetImportSummary'+      { failed = pFailed_,+        inProgress = pInProgress_,+        pending = pPending_,+        succeeded = pSucceeded_,+        total = pTotal_+      }++-- | The number of data set imports that have failed.+dataSetImportSummary_failed :: Lens.Lens' DataSetImportSummary Prelude.Int+dataSetImportSummary_failed = Lens.lens (\DataSetImportSummary' {failed} -> failed) (\s@DataSetImportSummary' {} a -> s {failed = a} :: DataSetImportSummary)++-- | The number of data set imports that are in progress.+dataSetImportSummary_inProgress :: Lens.Lens' DataSetImportSummary Prelude.Int+dataSetImportSummary_inProgress = Lens.lens (\DataSetImportSummary' {inProgress} -> inProgress) (\s@DataSetImportSummary' {} a -> s {inProgress = a} :: DataSetImportSummary)++-- | The number of data set imports that are pending.+dataSetImportSummary_pending :: Lens.Lens' DataSetImportSummary Prelude.Int+dataSetImportSummary_pending = Lens.lens (\DataSetImportSummary' {pending} -> pending) (\s@DataSetImportSummary' {} a -> s {pending = a} :: DataSetImportSummary)++-- | The number of data set imports that have succeeded.+dataSetImportSummary_succeeded :: Lens.Lens' DataSetImportSummary Prelude.Int+dataSetImportSummary_succeeded = Lens.lens (\DataSetImportSummary' {succeeded} -> succeeded) (\s@DataSetImportSummary' {} a -> s {succeeded = a} :: DataSetImportSummary)++-- | The total number of data set imports.+dataSetImportSummary_total :: Lens.Lens' DataSetImportSummary Prelude.Int+dataSetImportSummary_total = Lens.lens (\DataSetImportSummary' {total} -> total) (\s@DataSetImportSummary' {} a -> s {total = a} :: DataSetImportSummary)++instance Data.FromJSON DataSetImportSummary where+  parseJSON =+    Data.withObject+      "DataSetImportSummary"+      ( \x ->+          DataSetImportSummary'+            Prelude.<$> (x Data..: "failed")+            Prelude.<*> (x Data..: "inProgress")+            Prelude.<*> (x Data..: "pending")+            Prelude.<*> (x Data..: "succeeded")+            Prelude.<*> (x Data..: "total")+      )++instance Prelude.Hashable DataSetImportSummary where+  hashWithSalt _salt DataSetImportSummary' {..} =+    _salt+      `Prelude.hashWithSalt` failed+      `Prelude.hashWithSalt` inProgress+      `Prelude.hashWithSalt` pending+      `Prelude.hashWithSalt` succeeded+      `Prelude.hashWithSalt` total++instance Prelude.NFData DataSetImportSummary where+  rnf DataSetImportSummary' {..} =+    Prelude.rnf failed+      `Prelude.seq` Prelude.rnf inProgress+      `Prelude.seq` Prelude.rnf pending+      `Prelude.seq` Prelude.rnf succeeded+      `Prelude.seq` Prelude.rnf total
+ gen/Amazonka/M2/Types/DataSetImportTask.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DataSetImportTask+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DataSetImportTask where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.DataSetImportSummary+import Amazonka.M2.Types.DataSetTaskLifecycle+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a data set import task.+--+-- /See:/ 'newDataSetImportTask' smart constructor.+data DataSetImportTask = DataSetImportTask'+  { -- | The status of the data set import task.+    status :: DataSetTaskLifecycle,+    -- | A summary of the data set import task.+    summary :: DataSetImportSummary,+    -- | The identifier of the data set import task.+    taskId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataSetImportTask' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'status', 'dataSetImportTask_status' - The status of the data set import task.+--+-- 'summary', 'dataSetImportTask_summary' - A summary of the data set import task.+--+-- 'taskId', 'dataSetImportTask_taskId' - The identifier of the data set import task.+newDataSetImportTask ::+  -- | 'status'+  DataSetTaskLifecycle ->+  -- | 'summary'+  DataSetImportSummary ->+  -- | 'taskId'+  Prelude.Text ->+  DataSetImportTask+newDataSetImportTask pStatus_ pSummary_ pTaskId_ =+  DataSetImportTask'+    { status = pStatus_,+      summary = pSummary_,+      taskId = pTaskId_+    }++-- | The status of the data set import task.+dataSetImportTask_status :: Lens.Lens' DataSetImportTask DataSetTaskLifecycle+dataSetImportTask_status = Lens.lens (\DataSetImportTask' {status} -> status) (\s@DataSetImportTask' {} a -> s {status = a} :: DataSetImportTask)++-- | A summary of the data set import task.+dataSetImportTask_summary :: Lens.Lens' DataSetImportTask DataSetImportSummary+dataSetImportTask_summary = Lens.lens (\DataSetImportTask' {summary} -> summary) (\s@DataSetImportTask' {} a -> s {summary = a} :: DataSetImportTask)++-- | The identifier of the data set import task.+dataSetImportTask_taskId :: Lens.Lens' DataSetImportTask Prelude.Text+dataSetImportTask_taskId = Lens.lens (\DataSetImportTask' {taskId} -> taskId) (\s@DataSetImportTask' {} a -> s {taskId = a} :: DataSetImportTask)++instance Data.FromJSON DataSetImportTask where+  parseJSON =+    Data.withObject+      "DataSetImportTask"+      ( \x ->+          DataSetImportTask'+            Prelude.<$> (x Data..: "status")+            Prelude.<*> (x Data..: "summary")+            Prelude.<*> (x Data..: "taskId")+      )++instance Prelude.Hashable DataSetImportTask where+  hashWithSalt _salt DataSetImportTask' {..} =+    _salt+      `Prelude.hashWithSalt` status+      `Prelude.hashWithSalt` summary+      `Prelude.hashWithSalt` taskId++instance Prelude.NFData DataSetImportTask where+  rnf DataSetImportTask' {..} =+    Prelude.rnf status+      `Prelude.seq` Prelude.rnf summary+      `Prelude.seq` Prelude.rnf taskId
+ gen/Amazonka/M2/Types/DataSetSummary.hs view
@@ -0,0 +1,134 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DataSetSummary+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DataSetSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A subset of the possible data set attributes.+--+-- /See:/ 'newDataSetSummary' smart constructor.+data DataSetSummary = DataSetSummary'+  { -- | The timestamp when the data set was created.+    creationTime :: Prelude.Maybe Data.POSIX,+    -- | The type of data set. The only supported value is VSAM.+    dataSetOrg :: Prelude.Maybe Prelude.Text,+    -- | The format of the data set.+    format :: Prelude.Maybe Prelude.Text,+    -- | The last time the data set was referenced.+    lastReferencedTime :: Prelude.Maybe Data.POSIX,+    -- | The last time the data set was updated.+    lastUpdatedTime :: Prelude.Maybe Data.POSIX,+    -- | The name of the data set.+    dataSetName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataSetSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'creationTime', 'dataSetSummary_creationTime' - The timestamp when the data set was created.+--+-- 'dataSetOrg', 'dataSetSummary_dataSetOrg' - The type of data set. The only supported value is VSAM.+--+-- 'format', 'dataSetSummary_format' - The format of the data set.+--+-- 'lastReferencedTime', 'dataSetSummary_lastReferencedTime' - The last time the data set was referenced.+--+-- 'lastUpdatedTime', 'dataSetSummary_lastUpdatedTime' - The last time the data set was updated.+--+-- 'dataSetName', 'dataSetSummary_dataSetName' - The name of the data set.+newDataSetSummary ::+  -- | 'dataSetName'+  Prelude.Text ->+  DataSetSummary+newDataSetSummary pDataSetName_ =+  DataSetSummary'+    { creationTime = Prelude.Nothing,+      dataSetOrg = Prelude.Nothing,+      format = Prelude.Nothing,+      lastReferencedTime = Prelude.Nothing,+      lastUpdatedTime = Prelude.Nothing,+      dataSetName = pDataSetName_+    }++-- | The timestamp when the data set was created.+dataSetSummary_creationTime :: Lens.Lens' DataSetSummary (Prelude.Maybe Prelude.UTCTime)+dataSetSummary_creationTime = Lens.lens (\DataSetSummary' {creationTime} -> creationTime) (\s@DataSetSummary' {} a -> s {creationTime = a} :: DataSetSummary) Prelude.. Lens.mapping Data._Time++-- | The type of data set. The only supported value is VSAM.+dataSetSummary_dataSetOrg :: Lens.Lens' DataSetSummary (Prelude.Maybe Prelude.Text)+dataSetSummary_dataSetOrg = Lens.lens (\DataSetSummary' {dataSetOrg} -> dataSetOrg) (\s@DataSetSummary' {} a -> s {dataSetOrg = a} :: DataSetSummary)++-- | The format of the data set.+dataSetSummary_format :: Lens.Lens' DataSetSummary (Prelude.Maybe Prelude.Text)+dataSetSummary_format = Lens.lens (\DataSetSummary' {format} -> format) (\s@DataSetSummary' {} a -> s {format = a} :: DataSetSummary)++-- | The last time the data set was referenced.+dataSetSummary_lastReferencedTime :: Lens.Lens' DataSetSummary (Prelude.Maybe Prelude.UTCTime)+dataSetSummary_lastReferencedTime = Lens.lens (\DataSetSummary' {lastReferencedTime} -> lastReferencedTime) (\s@DataSetSummary' {} a -> s {lastReferencedTime = a} :: DataSetSummary) Prelude.. Lens.mapping Data._Time++-- | The last time the data set was updated.+dataSetSummary_lastUpdatedTime :: Lens.Lens' DataSetSummary (Prelude.Maybe Prelude.UTCTime)+dataSetSummary_lastUpdatedTime = Lens.lens (\DataSetSummary' {lastUpdatedTime} -> lastUpdatedTime) (\s@DataSetSummary' {} a -> s {lastUpdatedTime = a} :: DataSetSummary) Prelude.. Lens.mapping Data._Time++-- | The name of the data set.+dataSetSummary_dataSetName :: Lens.Lens' DataSetSummary Prelude.Text+dataSetSummary_dataSetName = Lens.lens (\DataSetSummary' {dataSetName} -> dataSetName) (\s@DataSetSummary' {} a -> s {dataSetName = a} :: DataSetSummary)++instance Data.FromJSON DataSetSummary where+  parseJSON =+    Data.withObject+      "DataSetSummary"+      ( \x ->+          DataSetSummary'+            Prelude.<$> (x Data..:? "creationTime")+            Prelude.<*> (x Data..:? "dataSetOrg")+            Prelude.<*> (x Data..:? "format")+            Prelude.<*> (x Data..:? "lastReferencedTime")+            Prelude.<*> (x Data..:? "lastUpdatedTime")+            Prelude.<*> (x Data..: "dataSetName")+      )++instance Prelude.Hashable DataSetSummary where+  hashWithSalt _salt DataSetSummary' {..} =+    _salt+      `Prelude.hashWithSalt` creationTime+      `Prelude.hashWithSalt` dataSetOrg+      `Prelude.hashWithSalt` format+      `Prelude.hashWithSalt` lastReferencedTime+      `Prelude.hashWithSalt` lastUpdatedTime+      `Prelude.hashWithSalt` dataSetName++instance Prelude.NFData DataSetSummary where+  rnf DataSetSummary' {..} =+    Prelude.rnf creationTime+      `Prelude.seq` Prelude.rnf dataSetOrg+      `Prelude.seq` Prelude.rnf format+      `Prelude.seq` Prelude.rnf lastReferencedTime+      `Prelude.seq` Prelude.rnf lastUpdatedTime+      `Prelude.seq` Prelude.rnf dataSetName
+ gen/Amazonka/M2/Types/DataSetTaskLifecycle.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DataSetTaskLifecycle+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DataSetTaskLifecycle+  ( DataSetTaskLifecycle+      ( ..,+        DataSetTaskLifecycle_Completed,+        DataSetTaskLifecycle_Creating,+        DataSetTaskLifecycle_Running+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DataSetTaskLifecycle = DataSetTaskLifecycle'+  { fromDataSetTaskLifecycle ::+      Data.Text+  }+  deriving stock+    ( Prelude.Show,+      Prelude.Read,+      Prelude.Eq,+      Prelude.Ord,+      Prelude.Generic+    )+  deriving newtype+    ( Prelude.Hashable,+      Prelude.NFData,+      Data.FromText,+      Data.ToText,+      Data.ToByteString,+      Data.ToLog,+      Data.ToHeader,+      Data.ToQuery,+      Data.FromJSON,+      Data.FromJSONKey,+      Data.ToJSON,+      Data.ToJSONKey,+      Data.FromXML,+      Data.ToXML+    )++pattern DataSetTaskLifecycle_Completed :: DataSetTaskLifecycle+pattern DataSetTaskLifecycle_Completed = DataSetTaskLifecycle' "Completed"++pattern DataSetTaskLifecycle_Creating :: DataSetTaskLifecycle+pattern DataSetTaskLifecycle_Creating = DataSetTaskLifecycle' "Creating"++pattern DataSetTaskLifecycle_Running :: DataSetTaskLifecycle+pattern DataSetTaskLifecycle_Running = DataSetTaskLifecycle' "Running"++{-# COMPLETE+  DataSetTaskLifecycle_Completed,+  DataSetTaskLifecycle_Creating,+  DataSetTaskLifecycle_Running,+  DataSetTaskLifecycle'+  #-}
+ gen/Amazonka/M2/Types/DatasetDetailOrgAttributes.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DatasetDetailOrgAttributes+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DatasetDetailOrgAttributes where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.GdgDetailAttributes+import Amazonka.M2.Types.VsamDetailAttributes+import qualified Amazonka.Prelude as Prelude++-- | Additional details about the data set. Different attributes correspond+-- to different data set organizations. The values are populated based on+-- datasetOrg, storageType and backend (Blu Age or Micro Focus).+--+-- /See:/ 'newDatasetDetailOrgAttributes' smart constructor.+data DatasetDetailOrgAttributes = DatasetDetailOrgAttributes'+  { -- | The generation data group of the data set.+    gdg :: Prelude.Maybe GdgDetailAttributes,+    -- | The details of a VSAM data set.+    vsam :: Prelude.Maybe VsamDetailAttributes+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DatasetDetailOrgAttributes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'gdg', 'datasetDetailOrgAttributes_gdg' - The generation data group of the data set.+--+-- 'vsam', 'datasetDetailOrgAttributes_vsam' - The details of a VSAM data set.+newDatasetDetailOrgAttributes ::+  DatasetDetailOrgAttributes+newDatasetDetailOrgAttributes =+  DatasetDetailOrgAttributes'+    { gdg = Prelude.Nothing,+      vsam = Prelude.Nothing+    }++-- | The generation data group of the data set.+datasetDetailOrgAttributes_gdg :: Lens.Lens' DatasetDetailOrgAttributes (Prelude.Maybe GdgDetailAttributes)+datasetDetailOrgAttributes_gdg = Lens.lens (\DatasetDetailOrgAttributes' {gdg} -> gdg) (\s@DatasetDetailOrgAttributes' {} a -> s {gdg = a} :: DatasetDetailOrgAttributes)++-- | The details of a VSAM data set.+datasetDetailOrgAttributes_vsam :: Lens.Lens' DatasetDetailOrgAttributes (Prelude.Maybe VsamDetailAttributes)+datasetDetailOrgAttributes_vsam = Lens.lens (\DatasetDetailOrgAttributes' {vsam} -> vsam) (\s@DatasetDetailOrgAttributes' {} a -> s {vsam = a} :: DatasetDetailOrgAttributes)++instance Data.FromJSON DatasetDetailOrgAttributes where+  parseJSON =+    Data.withObject+      "DatasetDetailOrgAttributes"+      ( \x ->+          DatasetDetailOrgAttributes'+            Prelude.<$> (x Data..:? "gdg")+            Prelude.<*> (x Data..:? "vsam")+      )++instance Prelude.Hashable DatasetDetailOrgAttributes where+  hashWithSalt _salt DatasetDetailOrgAttributes' {..} =+    _salt+      `Prelude.hashWithSalt` gdg+      `Prelude.hashWithSalt` vsam++instance Prelude.NFData DatasetDetailOrgAttributes where+  rnf DatasetDetailOrgAttributes' {..} =+    Prelude.rnf gdg `Prelude.seq` Prelude.rnf vsam
+ gen/Amazonka/M2/Types/DatasetOrgAttributes.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DatasetOrgAttributes+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DatasetOrgAttributes where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.GdgAttributes+import Amazonka.M2.Types.VsamAttributes+import qualified Amazonka.Prelude as Prelude++-- | Additional details about the data set. Different attributes correspond+-- to different data set organizations. The values are populated based on+-- datasetOrg, storageType and backend (Blu Age or Micro Focus).+--+-- /See:/ 'newDatasetOrgAttributes' smart constructor.+data DatasetOrgAttributes = DatasetOrgAttributes'+  { -- | The generation data group of the data set.+    gdg :: Prelude.Maybe GdgAttributes,+    -- | The details of a VSAM data set.+    vsam :: Prelude.Maybe VsamAttributes+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DatasetOrgAttributes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'gdg', 'datasetOrgAttributes_gdg' - The generation data group of the data set.+--+-- 'vsam', 'datasetOrgAttributes_vsam' - The details of a VSAM data set.+newDatasetOrgAttributes ::+  DatasetOrgAttributes+newDatasetOrgAttributes =+  DatasetOrgAttributes'+    { gdg = Prelude.Nothing,+      vsam = Prelude.Nothing+    }++-- | The generation data group of the data set.+datasetOrgAttributes_gdg :: Lens.Lens' DatasetOrgAttributes (Prelude.Maybe GdgAttributes)+datasetOrgAttributes_gdg = Lens.lens (\DatasetOrgAttributes' {gdg} -> gdg) (\s@DatasetOrgAttributes' {} a -> s {gdg = a} :: DatasetOrgAttributes)++-- | The details of a VSAM data set.+datasetOrgAttributes_vsam :: Lens.Lens' DatasetOrgAttributes (Prelude.Maybe VsamAttributes)+datasetOrgAttributes_vsam = Lens.lens (\DatasetOrgAttributes' {vsam} -> vsam) (\s@DatasetOrgAttributes' {} a -> s {vsam = a} :: DatasetOrgAttributes)++instance Prelude.Hashable DatasetOrgAttributes where+  hashWithSalt _salt DatasetOrgAttributes' {..} =+    _salt+      `Prelude.hashWithSalt` gdg+      `Prelude.hashWithSalt` vsam++instance Prelude.NFData DatasetOrgAttributes where+  rnf DatasetOrgAttributes' {..} =+    Prelude.rnf gdg `Prelude.seq` Prelude.rnf vsam++instance Data.ToJSON DatasetOrgAttributes where+  toJSON DatasetOrgAttributes' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("gdg" Data..=) Prelude.<$> gdg,+            ("vsam" Data..=) Prelude.<$> vsam+          ]+      )
+ gen/Amazonka/M2/Types/Definition.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.Definition+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.Definition where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The application definition for a particular application.+--+-- /See:/ 'newDefinition' smart constructor.+data Definition = Definition'+  { -- | The content of the application definition. This is a JSON object that+    -- contains the resource configuration\/definitions that identify an+    -- application.+    content :: Prelude.Maybe Prelude.Text,+    -- | The S3 bucket that contains the application definition.+    s3Location :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Definition' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'content', 'definition_content' - The content of the application definition. This is a JSON object that+-- contains the resource configuration\/definitions that identify an+-- application.+--+-- 's3Location', 'definition_s3Location' - The S3 bucket that contains the application definition.+newDefinition ::+  Definition+newDefinition =+  Definition'+    { content = Prelude.Nothing,+      s3Location = Prelude.Nothing+    }++-- | The content of the application definition. This is a JSON object that+-- contains the resource configuration\/definitions that identify an+-- application.+definition_content :: Lens.Lens' Definition (Prelude.Maybe Prelude.Text)+definition_content = Lens.lens (\Definition' {content} -> content) (\s@Definition' {} a -> s {content = a} :: Definition)++-- | The S3 bucket that contains the application definition.+definition_s3Location :: Lens.Lens' Definition (Prelude.Maybe Prelude.Text)+definition_s3Location = Lens.lens (\Definition' {s3Location} -> s3Location) (\s@Definition' {} a -> s {s3Location = a} :: Definition)++instance Prelude.Hashable Definition where+  hashWithSalt _salt Definition' {..} =+    _salt+      `Prelude.hashWithSalt` content+      `Prelude.hashWithSalt` s3Location++instance Prelude.NFData Definition where+  rnf Definition' {..} =+    Prelude.rnf content+      `Prelude.seq` Prelude.rnf s3Location++instance Data.ToJSON Definition where+  toJSON Definition' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("content" Data..=) Prelude.<$> content,+            ("s3Location" Data..=) Prelude.<$> s3Location+          ]+      )
+ gen/Amazonka/M2/Types/DeployedVersionSummary.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DeployedVersionSummary+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DeployedVersionSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.DeploymentLifecycle+import qualified Amazonka.Prelude as Prelude++-- | Contains a summary of a deployed application.+--+-- /See:/ 'newDeployedVersionSummary' smart constructor.+data DeployedVersionSummary = DeployedVersionSummary'+  { -- | The reason for the reported status.+    statusReason :: Prelude.Maybe Prelude.Text,+    -- | The version of the deployed application.+    applicationVersion :: Prelude.Natural,+    -- | The status of the deployment.+    status :: DeploymentLifecycle+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeployedVersionSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'statusReason', 'deployedVersionSummary_statusReason' - The reason for the reported status.+--+-- 'applicationVersion', 'deployedVersionSummary_applicationVersion' - The version of the deployed application.+--+-- 'status', 'deployedVersionSummary_status' - The status of the deployment.+newDeployedVersionSummary ::+  -- | 'applicationVersion'+  Prelude.Natural ->+  -- | 'status'+  DeploymentLifecycle ->+  DeployedVersionSummary+newDeployedVersionSummary+  pApplicationVersion_+  pStatus_ =+    DeployedVersionSummary'+      { statusReason =+          Prelude.Nothing,+        applicationVersion = pApplicationVersion_,+        status = pStatus_+      }++-- | The reason for the reported status.+deployedVersionSummary_statusReason :: Lens.Lens' DeployedVersionSummary (Prelude.Maybe Prelude.Text)+deployedVersionSummary_statusReason = Lens.lens (\DeployedVersionSummary' {statusReason} -> statusReason) (\s@DeployedVersionSummary' {} a -> s {statusReason = a} :: DeployedVersionSummary)++-- | The version of the deployed application.+deployedVersionSummary_applicationVersion :: Lens.Lens' DeployedVersionSummary Prelude.Natural+deployedVersionSummary_applicationVersion = Lens.lens (\DeployedVersionSummary' {applicationVersion} -> applicationVersion) (\s@DeployedVersionSummary' {} a -> s {applicationVersion = a} :: DeployedVersionSummary)++-- | The status of the deployment.+deployedVersionSummary_status :: Lens.Lens' DeployedVersionSummary DeploymentLifecycle+deployedVersionSummary_status = Lens.lens (\DeployedVersionSummary' {status} -> status) (\s@DeployedVersionSummary' {} a -> s {status = a} :: DeployedVersionSummary)++instance Data.FromJSON DeployedVersionSummary where+  parseJSON =+    Data.withObject+      "DeployedVersionSummary"+      ( \x ->+          DeployedVersionSummary'+            Prelude.<$> (x Data..:? "statusReason")+            Prelude.<*> (x Data..: "applicationVersion")+            Prelude.<*> (x Data..: "status")+      )++instance Prelude.Hashable DeployedVersionSummary where+  hashWithSalt _salt DeployedVersionSummary' {..} =+    _salt+      `Prelude.hashWithSalt` statusReason+      `Prelude.hashWithSalt` applicationVersion+      `Prelude.hashWithSalt` status++instance Prelude.NFData DeployedVersionSummary where+  rnf DeployedVersionSummary' {..} =+    Prelude.rnf statusReason+      `Prelude.seq` Prelude.rnf applicationVersion+      `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/M2/Types/DeploymentLifecycle.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DeploymentLifecycle+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DeploymentLifecycle+  ( DeploymentLifecycle+      ( ..,+        DeploymentLifecycle_Deploying,+        DeploymentLifecycle_Failed,+        DeploymentLifecycle_Succeeded+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DeploymentLifecycle = DeploymentLifecycle'+  { fromDeploymentLifecycle ::+      Data.Text+  }+  deriving stock+    ( Prelude.Show,+      Prelude.Read,+      Prelude.Eq,+      Prelude.Ord,+      Prelude.Generic+    )+  deriving newtype+    ( Prelude.Hashable,+      Prelude.NFData,+      Data.FromText,+      Data.ToText,+      Data.ToByteString,+      Data.ToLog,+      Data.ToHeader,+      Data.ToQuery,+      Data.FromJSON,+      Data.FromJSONKey,+      Data.ToJSON,+      Data.ToJSONKey,+      Data.FromXML,+      Data.ToXML+    )++pattern DeploymentLifecycle_Deploying :: DeploymentLifecycle+pattern DeploymentLifecycle_Deploying = DeploymentLifecycle' "Deploying"++pattern DeploymentLifecycle_Failed :: DeploymentLifecycle+pattern DeploymentLifecycle_Failed = DeploymentLifecycle' "Failed"++pattern DeploymentLifecycle_Succeeded :: DeploymentLifecycle+pattern DeploymentLifecycle_Succeeded = DeploymentLifecycle' "Succeeded"++{-# COMPLETE+  DeploymentLifecycle_Deploying,+  DeploymentLifecycle_Failed,+  DeploymentLifecycle_Succeeded,+  DeploymentLifecycle'+  #-}
+ gen/Amazonka/M2/Types/DeploymentSummary.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.DeploymentSummary+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.DeploymentSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.DeploymentLifecycle+import qualified Amazonka.Prelude as Prelude++-- | A subset of information about a specific deployment.+--+-- /See:/ 'newDeploymentSummary' smart constructor.+data DeploymentSummary = DeploymentSummary'+  { -- | The reason for the reported status.+    statusReason :: Prelude.Maybe Prelude.Text,+    -- | The unique identifier of the application.+    applicationId :: Prelude.Text,+    -- | The version of the application.+    applicationVersion :: Prelude.Natural,+    -- | The timestamp when the deployment was created.+    creationTime :: Data.POSIX,+    -- | The unique identifier of the deployment.+    deploymentId :: Prelude.Text,+    -- | The unique identifier of the runtime environment.+    environmentId :: Prelude.Text,+    -- | The current status of the deployment.+    status :: DeploymentLifecycle+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeploymentSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'statusReason', 'deploymentSummary_statusReason' - The reason for the reported status.+--+-- 'applicationId', 'deploymentSummary_applicationId' - The unique identifier of the application.+--+-- 'applicationVersion', 'deploymentSummary_applicationVersion' - The version of the application.+--+-- 'creationTime', 'deploymentSummary_creationTime' - The timestamp when the deployment was created.+--+-- 'deploymentId', 'deploymentSummary_deploymentId' - The unique identifier of the deployment.+--+-- 'environmentId', 'deploymentSummary_environmentId' - The unique identifier of the runtime environment.+--+-- 'status', 'deploymentSummary_status' - The current status of the deployment.+newDeploymentSummary ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'applicationVersion'+  Prelude.Natural ->+  -- | 'creationTime'+  Prelude.UTCTime ->+  -- | 'deploymentId'+  Prelude.Text ->+  -- | 'environmentId'+  Prelude.Text ->+  -- | 'status'+  DeploymentLifecycle ->+  DeploymentSummary+newDeploymentSummary+  pApplicationId_+  pApplicationVersion_+  pCreationTime_+  pDeploymentId_+  pEnvironmentId_+  pStatus_ =+    DeploymentSummary'+      { statusReason = Prelude.Nothing,+        applicationId = pApplicationId_,+        applicationVersion = pApplicationVersion_,+        creationTime = Data._Time Lens.# pCreationTime_,+        deploymentId = pDeploymentId_,+        environmentId = pEnvironmentId_,+        status = pStatus_+      }++-- | The reason for the reported status.+deploymentSummary_statusReason :: Lens.Lens' DeploymentSummary (Prelude.Maybe Prelude.Text)+deploymentSummary_statusReason = Lens.lens (\DeploymentSummary' {statusReason} -> statusReason) (\s@DeploymentSummary' {} a -> s {statusReason = a} :: DeploymentSummary)++-- | The unique identifier of the application.+deploymentSummary_applicationId :: Lens.Lens' DeploymentSummary Prelude.Text+deploymentSummary_applicationId = Lens.lens (\DeploymentSummary' {applicationId} -> applicationId) (\s@DeploymentSummary' {} a -> s {applicationId = a} :: DeploymentSummary)++-- | The version of the application.+deploymentSummary_applicationVersion :: Lens.Lens' DeploymentSummary Prelude.Natural+deploymentSummary_applicationVersion = Lens.lens (\DeploymentSummary' {applicationVersion} -> applicationVersion) (\s@DeploymentSummary' {} a -> s {applicationVersion = a} :: DeploymentSummary)++-- | The timestamp when the deployment was created.+deploymentSummary_creationTime :: Lens.Lens' DeploymentSummary Prelude.UTCTime+deploymentSummary_creationTime = Lens.lens (\DeploymentSummary' {creationTime} -> creationTime) (\s@DeploymentSummary' {} a -> s {creationTime = a} :: DeploymentSummary) Prelude.. Data._Time++-- | The unique identifier of the deployment.+deploymentSummary_deploymentId :: Lens.Lens' DeploymentSummary Prelude.Text+deploymentSummary_deploymentId = Lens.lens (\DeploymentSummary' {deploymentId} -> deploymentId) (\s@DeploymentSummary' {} a -> s {deploymentId = a} :: DeploymentSummary)++-- | The unique identifier of the runtime environment.+deploymentSummary_environmentId :: Lens.Lens' DeploymentSummary Prelude.Text+deploymentSummary_environmentId = Lens.lens (\DeploymentSummary' {environmentId} -> environmentId) (\s@DeploymentSummary' {} a -> s {environmentId = a} :: DeploymentSummary)++-- | The current status of the deployment.+deploymentSummary_status :: Lens.Lens' DeploymentSummary DeploymentLifecycle+deploymentSummary_status = Lens.lens (\DeploymentSummary' {status} -> status) (\s@DeploymentSummary' {} a -> s {status = a} :: DeploymentSummary)++instance Data.FromJSON DeploymentSummary where+  parseJSON =+    Data.withObject+      "DeploymentSummary"+      ( \x ->+          DeploymentSummary'+            Prelude.<$> (x Data..:? "statusReason")+            Prelude.<*> (x Data..: "applicationId")+            Prelude.<*> (x Data..: "applicationVersion")+            Prelude.<*> (x Data..: "creationTime")+            Prelude.<*> (x Data..: "deploymentId")+            Prelude.<*> (x Data..: "environmentId")+            Prelude.<*> (x Data..: "status")+      )++instance Prelude.Hashable DeploymentSummary where+  hashWithSalt _salt DeploymentSummary' {..} =+    _salt+      `Prelude.hashWithSalt` statusReason+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` applicationVersion+      `Prelude.hashWithSalt` creationTime+      `Prelude.hashWithSalt` deploymentId+      `Prelude.hashWithSalt` environmentId+      `Prelude.hashWithSalt` status++instance Prelude.NFData DeploymentSummary where+  rnf DeploymentSummary' {..} =+    Prelude.rnf statusReason+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf applicationVersion+      `Prelude.seq` Prelude.rnf creationTime+      `Prelude.seq` Prelude.rnf deploymentId+      `Prelude.seq` Prelude.rnf environmentId+      `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/M2/Types/EfsStorageConfiguration.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.EfsStorageConfiguration+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.EfsStorageConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Defines the storage configuration for an Amazon EFS file system.+--+-- /See:/ 'newEfsStorageConfiguration' smart constructor.+data EfsStorageConfiguration = EfsStorageConfiguration'+  { -- | The file system identifier.+    fileSystemId :: Prelude.Text,+    -- | The mount point for the file system.+    mountPoint :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EfsStorageConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'fileSystemId', 'efsStorageConfiguration_fileSystemId' - The file system identifier.+--+-- 'mountPoint', 'efsStorageConfiguration_mountPoint' - The mount point for the file system.+newEfsStorageConfiguration ::+  -- | 'fileSystemId'+  Prelude.Text ->+  -- | 'mountPoint'+  Prelude.Text ->+  EfsStorageConfiguration+newEfsStorageConfiguration+  pFileSystemId_+  pMountPoint_ =+    EfsStorageConfiguration'+      { fileSystemId =+          pFileSystemId_,+        mountPoint = pMountPoint_+      }++-- | The file system identifier.+efsStorageConfiguration_fileSystemId :: Lens.Lens' EfsStorageConfiguration Prelude.Text+efsStorageConfiguration_fileSystemId = Lens.lens (\EfsStorageConfiguration' {fileSystemId} -> fileSystemId) (\s@EfsStorageConfiguration' {} a -> s {fileSystemId = a} :: EfsStorageConfiguration)++-- | The mount point for the file system.+efsStorageConfiguration_mountPoint :: Lens.Lens' EfsStorageConfiguration Prelude.Text+efsStorageConfiguration_mountPoint = Lens.lens (\EfsStorageConfiguration' {mountPoint} -> mountPoint) (\s@EfsStorageConfiguration' {} a -> s {mountPoint = a} :: EfsStorageConfiguration)++instance Data.FromJSON EfsStorageConfiguration where+  parseJSON =+    Data.withObject+      "EfsStorageConfiguration"+      ( \x ->+          EfsStorageConfiguration'+            Prelude.<$> (x Data..: "file-system-id")+            Prelude.<*> (x Data..: "mount-point")+      )++instance Prelude.Hashable EfsStorageConfiguration where+  hashWithSalt _salt EfsStorageConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` fileSystemId+      `Prelude.hashWithSalt` mountPoint++instance Prelude.NFData EfsStorageConfiguration where+  rnf EfsStorageConfiguration' {..} =+    Prelude.rnf fileSystemId+      `Prelude.seq` Prelude.rnf mountPoint++instance Data.ToJSON EfsStorageConfiguration where+  toJSON EfsStorageConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("file-system-id" Data..= fileSystemId),+            Prelude.Just ("mount-point" Data..= mountPoint)+          ]+      )
+ gen/Amazonka/M2/Types/EngineType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.EngineType+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.EngineType+  ( EngineType+      ( ..,+        EngineType_Bluage,+        EngineType_Microfocus+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype EngineType = EngineType'+  { fromEngineType ::+      Data.Text+  }+  deriving stock+    ( Prelude.Show,+      Prelude.Read,+      Prelude.Eq,+      Prelude.Ord,+      Prelude.Generic+    )+  deriving newtype+    ( Prelude.Hashable,+      Prelude.NFData,+      Data.FromText,+      Data.ToText,+      Data.ToByteString,+      Data.ToLog,+      Data.ToHeader,+      Data.ToQuery,+      Data.FromJSON,+      Data.FromJSONKey,+      Data.ToJSON,+      Data.ToJSONKey,+      Data.FromXML,+      Data.ToXML+    )++pattern EngineType_Bluage :: EngineType+pattern EngineType_Bluage = EngineType' "bluage"++pattern EngineType_Microfocus :: EngineType+pattern EngineType_Microfocus = EngineType' "microfocus"++{-# COMPLETE+  EngineType_Bluage,+  EngineType_Microfocus,+  EngineType'+  #-}
+ gen/Amazonka/M2/Types/EngineVersionsSummary.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.EngineVersionsSummary+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.EngineVersionsSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A subset of information about the engine version for a specific+-- application.+--+-- /See:/ 'newEngineVersionsSummary' smart constructor.+data EngineVersionsSummary = EngineVersionsSummary'+  { -- | The type of target platform for the application.+    engineType :: Prelude.Text,+    -- | The version of the engine type used by the application.+    engineVersion :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EngineVersionsSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'engineType', 'engineVersionsSummary_engineType' - The type of target platform for the application.+--+-- 'engineVersion', 'engineVersionsSummary_engineVersion' - The version of the engine type used by the application.+newEngineVersionsSummary ::+  -- | 'engineType'+  Prelude.Text ->+  -- | 'engineVersion'+  Prelude.Text ->+  EngineVersionsSummary+newEngineVersionsSummary pEngineType_ pEngineVersion_ =+  EngineVersionsSummary'+    { engineType = pEngineType_,+      engineVersion = pEngineVersion_+    }++-- | The type of target platform for the application.+engineVersionsSummary_engineType :: Lens.Lens' EngineVersionsSummary Prelude.Text+engineVersionsSummary_engineType = Lens.lens (\EngineVersionsSummary' {engineType} -> engineType) (\s@EngineVersionsSummary' {} a -> s {engineType = a} :: EngineVersionsSummary)++-- | The version of the engine type used by the application.+engineVersionsSummary_engineVersion :: Lens.Lens' EngineVersionsSummary Prelude.Text+engineVersionsSummary_engineVersion = Lens.lens (\EngineVersionsSummary' {engineVersion} -> engineVersion) (\s@EngineVersionsSummary' {} a -> s {engineVersion = a} :: EngineVersionsSummary)++instance Data.FromJSON EngineVersionsSummary where+  parseJSON =+    Data.withObject+      "EngineVersionsSummary"+      ( \x ->+          EngineVersionsSummary'+            Prelude.<$> (x Data..: "engineType")+            Prelude.<*> (x Data..: "engineVersion")+      )++instance Prelude.Hashable EngineVersionsSummary where+  hashWithSalt _salt EngineVersionsSummary' {..} =+    _salt+      `Prelude.hashWithSalt` engineType+      `Prelude.hashWithSalt` engineVersion++instance Prelude.NFData EngineVersionsSummary where+  rnf EngineVersionsSummary' {..} =+    Prelude.rnf engineType+      `Prelude.seq` Prelude.rnf engineVersion
+ gen/Amazonka/M2/Types/EnvironmentLifecycle.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.EnvironmentLifecycle+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.EnvironmentLifecycle+  ( EnvironmentLifecycle+      ( ..,+        EnvironmentLifecycle_Available,+        EnvironmentLifecycle_Creating,+        EnvironmentLifecycle_Deleting,+        EnvironmentLifecycle_Failed,+        EnvironmentLifecycle_Updating+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype EnvironmentLifecycle = EnvironmentLifecycle'+  { fromEnvironmentLifecycle ::+      Data.Text+  }+  deriving stock+    ( Prelude.Show,+      Prelude.Read,+      Prelude.Eq,+      Prelude.Ord,+      Prelude.Generic+    )+  deriving newtype+    ( Prelude.Hashable,+      Prelude.NFData,+      Data.FromText,+      Data.ToText,+      Data.ToByteString,+      Data.ToLog,+      Data.ToHeader,+      Data.ToQuery,+      Data.FromJSON,+      Data.FromJSONKey,+      Data.ToJSON,+      Data.ToJSONKey,+      Data.FromXML,+      Data.ToXML+    )++pattern EnvironmentLifecycle_Available :: EnvironmentLifecycle+pattern EnvironmentLifecycle_Available = EnvironmentLifecycle' "Available"++pattern EnvironmentLifecycle_Creating :: EnvironmentLifecycle+pattern EnvironmentLifecycle_Creating = EnvironmentLifecycle' "Creating"++pattern EnvironmentLifecycle_Deleting :: EnvironmentLifecycle+pattern EnvironmentLifecycle_Deleting = EnvironmentLifecycle' "Deleting"++pattern EnvironmentLifecycle_Failed :: EnvironmentLifecycle+pattern EnvironmentLifecycle_Failed = EnvironmentLifecycle' "Failed"++pattern EnvironmentLifecycle_Updating :: EnvironmentLifecycle+pattern EnvironmentLifecycle_Updating = EnvironmentLifecycle' "Updating"++{-# COMPLETE+  EnvironmentLifecycle_Available,+  EnvironmentLifecycle_Creating,+  EnvironmentLifecycle_Deleting,+  EnvironmentLifecycle_Failed,+  EnvironmentLifecycle_Updating,+  EnvironmentLifecycle'+  #-}
+ gen/Amazonka/M2/Types/EnvironmentSummary.hs view
@@ -0,0 +1,184 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.EnvironmentSummary+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.EnvironmentSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.EngineType+import Amazonka.M2.Types.EnvironmentLifecycle+import qualified Amazonka.Prelude as Prelude++-- | Contains a subset of the possible runtime environment attributes. Used+-- in the environment list.+--+-- /See:/ 'newEnvironmentSummary' smart constructor.+data EnvironmentSummary = EnvironmentSummary'+  { -- | The timestamp when the runtime environment was created.+    creationTime :: Data.POSIX,+    -- | The target platform for the runtime environment.+    engineType :: EngineType,+    -- | The version of the runtime engine.+    engineVersion :: Prelude.Text,+    -- | The Amazon Resource Name (ARN) of a particular runtime environment.+    environmentArn :: Prelude.Text,+    -- | The unique identifier of a particular runtime environment.+    environmentId :: Prelude.Text,+    -- | The instance type of the runtime environment.+    instanceType :: Prelude.Text,+    -- | The name of the runtime environment.+    name :: Prelude.Text,+    -- | The status of the runtime environment+    status :: EnvironmentLifecycle+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EnvironmentSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'creationTime', 'environmentSummary_creationTime' - The timestamp when the runtime environment was created.+--+-- 'engineType', 'environmentSummary_engineType' - The target platform for the runtime environment.+--+-- 'engineVersion', 'environmentSummary_engineVersion' - The version of the runtime engine.+--+-- 'environmentArn', 'environmentSummary_environmentArn' - The Amazon Resource Name (ARN) of a particular runtime environment.+--+-- 'environmentId', 'environmentSummary_environmentId' - The unique identifier of a particular runtime environment.+--+-- 'instanceType', 'environmentSummary_instanceType' - The instance type of the runtime environment.+--+-- 'name', 'environmentSummary_name' - The name of the runtime environment.+--+-- 'status', 'environmentSummary_status' - The status of the runtime environment+newEnvironmentSummary ::+  -- | 'creationTime'+  Prelude.UTCTime ->+  -- | 'engineType'+  EngineType ->+  -- | 'engineVersion'+  Prelude.Text ->+  -- | 'environmentArn'+  Prelude.Text ->+  -- | 'environmentId'+  Prelude.Text ->+  -- | 'instanceType'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'status'+  EnvironmentLifecycle ->+  EnvironmentSummary+newEnvironmentSummary+  pCreationTime_+  pEngineType_+  pEngineVersion_+  pEnvironmentArn_+  pEnvironmentId_+  pInstanceType_+  pName_+  pStatus_ =+    EnvironmentSummary'+      { creationTime =+          Data._Time Lens.# pCreationTime_,+        engineType = pEngineType_,+        engineVersion = pEngineVersion_,+        environmentArn = pEnvironmentArn_,+        environmentId = pEnvironmentId_,+        instanceType = pInstanceType_,+        name = pName_,+        status = pStatus_+      }++-- | The timestamp when the runtime environment was created.+environmentSummary_creationTime :: Lens.Lens' EnvironmentSummary Prelude.UTCTime+environmentSummary_creationTime = Lens.lens (\EnvironmentSummary' {creationTime} -> creationTime) (\s@EnvironmentSummary' {} a -> s {creationTime = a} :: EnvironmentSummary) Prelude.. Data._Time++-- | The target platform for the runtime environment.+environmentSummary_engineType :: Lens.Lens' EnvironmentSummary EngineType+environmentSummary_engineType = Lens.lens (\EnvironmentSummary' {engineType} -> engineType) (\s@EnvironmentSummary' {} a -> s {engineType = a} :: EnvironmentSummary)++-- | The version of the runtime engine.+environmentSummary_engineVersion :: Lens.Lens' EnvironmentSummary Prelude.Text+environmentSummary_engineVersion = Lens.lens (\EnvironmentSummary' {engineVersion} -> engineVersion) (\s@EnvironmentSummary' {} a -> s {engineVersion = a} :: EnvironmentSummary)++-- | The Amazon Resource Name (ARN) of a particular runtime environment.+environmentSummary_environmentArn :: Lens.Lens' EnvironmentSummary Prelude.Text+environmentSummary_environmentArn = Lens.lens (\EnvironmentSummary' {environmentArn} -> environmentArn) (\s@EnvironmentSummary' {} a -> s {environmentArn = a} :: EnvironmentSummary)++-- | The unique identifier of a particular runtime environment.+environmentSummary_environmentId :: Lens.Lens' EnvironmentSummary Prelude.Text+environmentSummary_environmentId = Lens.lens (\EnvironmentSummary' {environmentId} -> environmentId) (\s@EnvironmentSummary' {} a -> s {environmentId = a} :: EnvironmentSummary)++-- | The instance type of the runtime environment.+environmentSummary_instanceType :: Lens.Lens' EnvironmentSummary Prelude.Text+environmentSummary_instanceType = Lens.lens (\EnvironmentSummary' {instanceType} -> instanceType) (\s@EnvironmentSummary' {} a -> s {instanceType = a} :: EnvironmentSummary)++-- | The name of the runtime environment.+environmentSummary_name :: Lens.Lens' EnvironmentSummary Prelude.Text+environmentSummary_name = Lens.lens (\EnvironmentSummary' {name} -> name) (\s@EnvironmentSummary' {} a -> s {name = a} :: EnvironmentSummary)++-- | The status of the runtime environment+environmentSummary_status :: Lens.Lens' EnvironmentSummary EnvironmentLifecycle+environmentSummary_status = Lens.lens (\EnvironmentSummary' {status} -> status) (\s@EnvironmentSummary' {} a -> s {status = a} :: EnvironmentSummary)++instance Data.FromJSON EnvironmentSummary where+  parseJSON =+    Data.withObject+      "EnvironmentSummary"+      ( \x ->+          EnvironmentSummary'+            Prelude.<$> (x Data..: "creationTime")+            Prelude.<*> (x Data..: "engineType")+            Prelude.<*> (x Data..: "engineVersion")+            Prelude.<*> (x Data..: "environmentArn")+            Prelude.<*> (x Data..: "environmentId")+            Prelude.<*> (x Data..: "instanceType")+            Prelude.<*> (x Data..: "name")+            Prelude.<*> (x Data..: "status")+      )++instance Prelude.Hashable EnvironmentSummary where+  hashWithSalt _salt EnvironmentSummary' {..} =+    _salt+      `Prelude.hashWithSalt` creationTime+      `Prelude.hashWithSalt` engineType+      `Prelude.hashWithSalt` engineVersion+      `Prelude.hashWithSalt` environmentArn+      `Prelude.hashWithSalt` environmentId+      `Prelude.hashWithSalt` instanceType+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` status++instance Prelude.NFData EnvironmentSummary where+  rnf EnvironmentSummary' {..} =+    Prelude.rnf creationTime+      `Prelude.seq` Prelude.rnf engineType+      `Prelude.seq` Prelude.rnf engineVersion+      `Prelude.seq` Prelude.rnf environmentArn+      `Prelude.seq` Prelude.rnf environmentId+      `Prelude.seq` Prelude.rnf instanceType+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/M2/Types/ExternalLocation.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.ExternalLocation+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.ExternalLocation where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Defines an external storage location.+--+-- /See:/ 'newExternalLocation' smart constructor.+data ExternalLocation = ExternalLocation'+  { -- | The URI of the Amazon S3 bucket.+    s3Location :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExternalLocation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 's3Location', 'externalLocation_s3Location' - The URI of the Amazon S3 bucket.+newExternalLocation ::+  ExternalLocation+newExternalLocation =+  ExternalLocation' {s3Location = Prelude.Nothing}++-- | The URI of the Amazon S3 bucket.+externalLocation_s3Location :: Lens.Lens' ExternalLocation (Prelude.Maybe Prelude.Text)+externalLocation_s3Location = Lens.lens (\ExternalLocation' {s3Location} -> s3Location) (\s@ExternalLocation' {} a -> s {s3Location = a} :: ExternalLocation)++instance Prelude.Hashable ExternalLocation where+  hashWithSalt _salt ExternalLocation' {..} =+    _salt `Prelude.hashWithSalt` s3Location++instance Prelude.NFData ExternalLocation where+  rnf ExternalLocation' {..} = Prelude.rnf s3Location++instance Data.ToJSON ExternalLocation where+  toJSON ExternalLocation' {..} =+    Data.object+      ( Prelude.catMaybes+          [("s3Location" Data..=) Prelude.<$> s3Location]+      )
+ gen/Amazonka/M2/Types/FileBatchJobDefinition.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.FileBatchJobDefinition+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.FileBatchJobDefinition where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A file containing a batch job definition.+--+-- /See:/ 'newFileBatchJobDefinition' smart constructor.+data FileBatchJobDefinition = FileBatchJobDefinition'+  { -- | The path to the file containing the batch job definition.+    folderPath :: Prelude.Maybe Prelude.Text,+    -- | The name of the file containing the batch job definition.+    fileName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FileBatchJobDefinition' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'folderPath', 'fileBatchJobDefinition_folderPath' - The path to the file containing the batch job definition.+--+-- 'fileName', 'fileBatchJobDefinition_fileName' - The name of the file containing the batch job definition.+newFileBatchJobDefinition ::+  -- | 'fileName'+  Prelude.Text ->+  FileBatchJobDefinition+newFileBatchJobDefinition pFileName_ =+  FileBatchJobDefinition'+    { folderPath =+        Prelude.Nothing,+      fileName = pFileName_+    }++-- | The path to the file containing the batch job definition.+fileBatchJobDefinition_folderPath :: Lens.Lens' FileBatchJobDefinition (Prelude.Maybe Prelude.Text)+fileBatchJobDefinition_folderPath = Lens.lens (\FileBatchJobDefinition' {folderPath} -> folderPath) (\s@FileBatchJobDefinition' {} a -> s {folderPath = a} :: FileBatchJobDefinition)++-- | The name of the file containing the batch job definition.+fileBatchJobDefinition_fileName :: Lens.Lens' FileBatchJobDefinition Prelude.Text+fileBatchJobDefinition_fileName = Lens.lens (\FileBatchJobDefinition' {fileName} -> fileName) (\s@FileBatchJobDefinition' {} a -> s {fileName = a} :: FileBatchJobDefinition)++instance Data.FromJSON FileBatchJobDefinition where+  parseJSON =+    Data.withObject+      "FileBatchJobDefinition"+      ( \x ->+          FileBatchJobDefinition'+            Prelude.<$> (x Data..:? "folderPath")+            Prelude.<*> (x Data..: "fileName")+      )++instance Prelude.Hashable FileBatchJobDefinition where+  hashWithSalt _salt FileBatchJobDefinition' {..} =+    _salt+      `Prelude.hashWithSalt` folderPath+      `Prelude.hashWithSalt` fileName++instance Prelude.NFData FileBatchJobDefinition where+  rnf FileBatchJobDefinition' {..} =+    Prelude.rnf folderPath+      `Prelude.seq` Prelude.rnf fileName
+ gen/Amazonka/M2/Types/FileBatchJobIdentifier.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.FileBatchJobIdentifier+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.FileBatchJobIdentifier where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A batch job identifier in which the batch job to run is identified by+-- the file name and the relative path to the file name.+--+-- /See:/ 'newFileBatchJobIdentifier' smart constructor.+data FileBatchJobIdentifier = FileBatchJobIdentifier'+  { -- | The relative path to the file name for the batch job identifier.+    folderPath :: Prelude.Maybe Prelude.Text,+    -- | The file name for the batch job identifier.+    fileName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FileBatchJobIdentifier' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'folderPath', 'fileBatchJobIdentifier_folderPath' - The relative path to the file name for the batch job identifier.+--+-- 'fileName', 'fileBatchJobIdentifier_fileName' - The file name for the batch job identifier.+newFileBatchJobIdentifier ::+  -- | 'fileName'+  Prelude.Text ->+  FileBatchJobIdentifier+newFileBatchJobIdentifier pFileName_ =+  FileBatchJobIdentifier'+    { folderPath =+        Prelude.Nothing,+      fileName = pFileName_+    }++-- | The relative path to the file name for the batch job identifier.+fileBatchJobIdentifier_folderPath :: Lens.Lens' FileBatchJobIdentifier (Prelude.Maybe Prelude.Text)+fileBatchJobIdentifier_folderPath = Lens.lens (\FileBatchJobIdentifier' {folderPath} -> folderPath) (\s@FileBatchJobIdentifier' {} a -> s {folderPath = a} :: FileBatchJobIdentifier)++-- | The file name for the batch job identifier.+fileBatchJobIdentifier_fileName :: Lens.Lens' FileBatchJobIdentifier Prelude.Text+fileBatchJobIdentifier_fileName = Lens.lens (\FileBatchJobIdentifier' {fileName} -> fileName) (\s@FileBatchJobIdentifier' {} a -> s {fileName = a} :: FileBatchJobIdentifier)++instance Prelude.Hashable FileBatchJobIdentifier where+  hashWithSalt _salt FileBatchJobIdentifier' {..} =+    _salt+      `Prelude.hashWithSalt` folderPath+      `Prelude.hashWithSalt` fileName++instance Prelude.NFData FileBatchJobIdentifier where+  rnf FileBatchJobIdentifier' {..} =+    Prelude.rnf folderPath+      `Prelude.seq` Prelude.rnf fileName++instance Data.ToJSON FileBatchJobIdentifier where+  toJSON FileBatchJobIdentifier' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("folderPath" Data..=) Prelude.<$> folderPath,+            Prelude.Just ("fileName" Data..= fileName)+          ]+      )
+ gen/Amazonka/M2/Types/FsxStorageConfiguration.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.FsxStorageConfiguration+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.FsxStorageConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Defines the storage configuration for an Amazon FSx file system.+--+-- /See:/ 'newFsxStorageConfiguration' smart constructor.+data FsxStorageConfiguration = FsxStorageConfiguration'+  { -- | The file system identifier.+    fileSystemId :: Prelude.Text,+    -- | The mount point for the file system.+    mountPoint :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FsxStorageConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'fileSystemId', 'fsxStorageConfiguration_fileSystemId' - The file system identifier.+--+-- 'mountPoint', 'fsxStorageConfiguration_mountPoint' - The mount point for the file system.+newFsxStorageConfiguration ::+  -- | 'fileSystemId'+  Prelude.Text ->+  -- | 'mountPoint'+  Prelude.Text ->+  FsxStorageConfiguration+newFsxStorageConfiguration+  pFileSystemId_+  pMountPoint_ =+    FsxStorageConfiguration'+      { fileSystemId =+          pFileSystemId_,+        mountPoint = pMountPoint_+      }++-- | The file system identifier.+fsxStorageConfiguration_fileSystemId :: Lens.Lens' FsxStorageConfiguration Prelude.Text+fsxStorageConfiguration_fileSystemId = Lens.lens (\FsxStorageConfiguration' {fileSystemId} -> fileSystemId) (\s@FsxStorageConfiguration' {} a -> s {fileSystemId = a} :: FsxStorageConfiguration)++-- | The mount point for the file system.+fsxStorageConfiguration_mountPoint :: Lens.Lens' FsxStorageConfiguration Prelude.Text+fsxStorageConfiguration_mountPoint = Lens.lens (\FsxStorageConfiguration' {mountPoint} -> mountPoint) (\s@FsxStorageConfiguration' {} a -> s {mountPoint = a} :: FsxStorageConfiguration)++instance Data.FromJSON FsxStorageConfiguration where+  parseJSON =+    Data.withObject+      "FsxStorageConfiguration"+      ( \x ->+          FsxStorageConfiguration'+            Prelude.<$> (x Data..: "file-system-id")+            Prelude.<*> (x Data..: "mount-point")+      )++instance Prelude.Hashable FsxStorageConfiguration where+  hashWithSalt _salt FsxStorageConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` fileSystemId+      `Prelude.hashWithSalt` mountPoint++instance Prelude.NFData FsxStorageConfiguration where+  rnf FsxStorageConfiguration' {..} =+    Prelude.rnf fileSystemId+      `Prelude.seq` Prelude.rnf mountPoint++instance Data.ToJSON FsxStorageConfiguration where+  toJSON FsxStorageConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("file-system-id" Data..= fileSystemId),+            Prelude.Just ("mount-point" Data..= mountPoint)+          ]+      )
+ gen/Amazonka/M2/Types/GdgAttributes.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.GdgAttributes+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.GdgAttributes where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The required attributes for a generation data group data set. A+-- generation data set is one of a collection of successive, historically+-- related, catalogued data sets that together are known as a generation+-- data group (GDG). Use this structure when you want to import a GDG. For+-- more information on GDG, see+-- <https://www.ibm.com/docs/en/zos/2.3.0?topic=guide-generation-data-sets Generation data sets>.+--+-- /See:/ 'newGdgAttributes' smart constructor.+data GdgAttributes = GdgAttributes'+  { -- | The maximum number of generation data sets, up to 255, in a GDG.+    limit :: Prelude.Maybe Prelude.Int,+    -- | The disposition of the data set in the catalog.+    rollDisposition :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GdgAttributes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'limit', 'gdgAttributes_limit' - The maximum number of generation data sets, up to 255, in a GDG.+--+-- 'rollDisposition', 'gdgAttributes_rollDisposition' - The disposition of the data set in the catalog.+newGdgAttributes ::+  GdgAttributes+newGdgAttributes =+  GdgAttributes'+    { limit = Prelude.Nothing,+      rollDisposition = Prelude.Nothing+    }++-- | The maximum number of generation data sets, up to 255, in a GDG.+gdgAttributes_limit :: Lens.Lens' GdgAttributes (Prelude.Maybe Prelude.Int)+gdgAttributes_limit = Lens.lens (\GdgAttributes' {limit} -> limit) (\s@GdgAttributes' {} a -> s {limit = a} :: GdgAttributes)++-- | The disposition of the data set in the catalog.+gdgAttributes_rollDisposition :: Lens.Lens' GdgAttributes (Prelude.Maybe Prelude.Text)+gdgAttributes_rollDisposition = Lens.lens (\GdgAttributes' {rollDisposition} -> rollDisposition) (\s@GdgAttributes' {} a -> s {rollDisposition = a} :: GdgAttributes)++instance Prelude.Hashable GdgAttributes where+  hashWithSalt _salt GdgAttributes' {..} =+    _salt+      `Prelude.hashWithSalt` limit+      `Prelude.hashWithSalt` rollDisposition++instance Prelude.NFData GdgAttributes where+  rnf GdgAttributes' {..} =+    Prelude.rnf limit+      `Prelude.seq` Prelude.rnf rollDisposition++instance Data.ToJSON GdgAttributes where+  toJSON GdgAttributes' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("limit" Data..=) Prelude.<$> limit,+            ("rollDisposition" Data..=)+              Prelude.<$> rollDisposition+          ]+      )
+ gen/Amazonka/M2/Types/GdgDetailAttributes.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.GdgDetailAttributes+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.GdgDetailAttributes where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The required attributes for a generation data group data set. A+-- generation data set is one of a collection of successive, historically+-- related, catalogued data sets that together are known as a generation+-- data group (GDG). Use this structure when you want to import a GDG. For+-- more information on GDG, see+-- <https://www.ibm.com/docs/en/zos/2.3.0?topic=guide-generation-data-sets Generation data sets>.+--+-- /See:/ 'newGdgDetailAttributes' smart constructor.+data GdgDetailAttributes = GdgDetailAttributes'+  { -- | The maximum number of generation data sets, up to 255, in a GDG.+    limit :: Prelude.Maybe Prelude.Int,+    -- | The disposition of the data set in the catalog.+    rollDisposition :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GdgDetailAttributes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'limit', 'gdgDetailAttributes_limit' - The maximum number of generation data sets, up to 255, in a GDG.+--+-- 'rollDisposition', 'gdgDetailAttributes_rollDisposition' - The disposition of the data set in the catalog.+newGdgDetailAttributes ::+  GdgDetailAttributes+newGdgDetailAttributes =+  GdgDetailAttributes'+    { limit = Prelude.Nothing,+      rollDisposition = Prelude.Nothing+    }++-- | The maximum number of generation data sets, up to 255, in a GDG.+gdgDetailAttributes_limit :: Lens.Lens' GdgDetailAttributes (Prelude.Maybe Prelude.Int)+gdgDetailAttributes_limit = Lens.lens (\GdgDetailAttributes' {limit} -> limit) (\s@GdgDetailAttributes' {} a -> s {limit = a} :: GdgDetailAttributes)++-- | The disposition of the data set in the catalog.+gdgDetailAttributes_rollDisposition :: Lens.Lens' GdgDetailAttributes (Prelude.Maybe Prelude.Text)+gdgDetailAttributes_rollDisposition = Lens.lens (\GdgDetailAttributes' {rollDisposition} -> rollDisposition) (\s@GdgDetailAttributes' {} a -> s {rollDisposition = a} :: GdgDetailAttributes)++instance Data.FromJSON GdgDetailAttributes where+  parseJSON =+    Data.withObject+      "GdgDetailAttributes"+      ( \x ->+          GdgDetailAttributes'+            Prelude.<$> (x Data..:? "limit")+            Prelude.<*> (x Data..:? "rollDisposition")+      )++instance Prelude.Hashable GdgDetailAttributes where+  hashWithSalt _salt GdgDetailAttributes' {..} =+    _salt+      `Prelude.hashWithSalt` limit+      `Prelude.hashWithSalt` rollDisposition++instance Prelude.NFData GdgDetailAttributes where+  rnf GdgDetailAttributes' {..} =+    Prelude.rnf limit+      `Prelude.seq` Prelude.rnf rollDisposition
+ gen/Amazonka/M2/Types/HighAvailabilityConfig.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.HighAvailabilityConfig+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.HighAvailabilityConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Defines the details of a high availability configuration.+--+-- /See:/ 'newHighAvailabilityConfig' smart constructor.+data HighAvailabilityConfig = HighAvailabilityConfig'+  { -- | The number of instances in a high availability configuration.+    desiredCapacity :: Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'HighAvailabilityConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'desiredCapacity', 'highAvailabilityConfig_desiredCapacity' - The number of instances in a high availability configuration.+newHighAvailabilityConfig ::+  -- | 'desiredCapacity'+  Prelude.Natural ->+  HighAvailabilityConfig+newHighAvailabilityConfig pDesiredCapacity_ =+  HighAvailabilityConfig'+    { desiredCapacity =+        pDesiredCapacity_+    }++-- | The number of instances in a high availability configuration.+highAvailabilityConfig_desiredCapacity :: Lens.Lens' HighAvailabilityConfig Prelude.Natural+highAvailabilityConfig_desiredCapacity = Lens.lens (\HighAvailabilityConfig' {desiredCapacity} -> desiredCapacity) (\s@HighAvailabilityConfig' {} a -> s {desiredCapacity = a} :: HighAvailabilityConfig)++instance Data.FromJSON HighAvailabilityConfig where+  parseJSON =+    Data.withObject+      "HighAvailabilityConfig"+      ( \x ->+          HighAvailabilityConfig'+            Prelude.<$> (x Data..: "desiredCapacity")+      )++instance Prelude.Hashable HighAvailabilityConfig where+  hashWithSalt _salt HighAvailabilityConfig' {..} =+    _salt `Prelude.hashWithSalt` desiredCapacity++instance Prelude.NFData HighAvailabilityConfig where+  rnf HighAvailabilityConfig' {..} =+    Prelude.rnf desiredCapacity++instance Data.ToJSON HighAvailabilityConfig where+  toJSON HighAvailabilityConfig' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("desiredCapacity" Data..= desiredCapacity)+          ]+      )
+ gen/Amazonka/M2/Types/LogGroupSummary.hs view
@@ -0,0 +1,90 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.LogGroupSummary+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.LogGroupSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A subset of the attributes that describe a log group. In CloudWatch a+-- log group is a group of log streams that share the same retention,+-- monitoring, and access control settings.+--+-- /See:/ 'newLogGroupSummary' smart constructor.+data LogGroupSummary = LogGroupSummary'+  { -- | The name of the log group.+    logGroupName :: Prelude.Text,+    -- | The type of log.+    logType :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LogGroupSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'logGroupName', 'logGroupSummary_logGroupName' - The name of the log group.+--+-- 'logType', 'logGroupSummary_logType' - The type of log.+newLogGroupSummary ::+  -- | 'logGroupName'+  Prelude.Text ->+  -- | 'logType'+  Prelude.Text ->+  LogGroupSummary+newLogGroupSummary pLogGroupName_ pLogType_ =+  LogGroupSummary'+    { logGroupName = pLogGroupName_,+      logType = pLogType_+    }++-- | The name of the log group.+logGroupSummary_logGroupName :: Lens.Lens' LogGroupSummary Prelude.Text+logGroupSummary_logGroupName = Lens.lens (\LogGroupSummary' {logGroupName} -> logGroupName) (\s@LogGroupSummary' {} a -> s {logGroupName = a} :: LogGroupSummary)++-- | The type of log.+logGroupSummary_logType :: Lens.Lens' LogGroupSummary Prelude.Text+logGroupSummary_logType = Lens.lens (\LogGroupSummary' {logType} -> logType) (\s@LogGroupSummary' {} a -> s {logType = a} :: LogGroupSummary)++instance Data.FromJSON LogGroupSummary where+  parseJSON =+    Data.withObject+      "LogGroupSummary"+      ( \x ->+          LogGroupSummary'+            Prelude.<$> (x Data..: "logGroupName")+            Prelude.<*> (x Data..: "logType")+      )++instance Prelude.Hashable LogGroupSummary where+  hashWithSalt _salt LogGroupSummary' {..} =+    _salt+      `Prelude.hashWithSalt` logGroupName+      `Prelude.hashWithSalt` logType++instance Prelude.NFData LogGroupSummary where+  rnf LogGroupSummary' {..} =+    Prelude.rnf logGroupName+      `Prelude.seq` Prelude.rnf logType
+ gen/Amazonka/M2/Types/MaintenanceSchedule.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.MaintenanceSchedule+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.MaintenanceSchedule where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The information about the maintenance schedule.+--+-- /See:/ 'newMaintenanceSchedule' smart constructor.+data MaintenanceSchedule = MaintenanceSchedule'+  { -- | The time the scheduled maintenance is to end.+    endTime :: Prelude.Maybe Data.POSIX,+    -- | The time the scheduled maintenance is to start.+    startTime :: Prelude.Maybe Data.POSIX+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MaintenanceSchedule' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'endTime', 'maintenanceSchedule_endTime' - The time the scheduled maintenance is to end.+--+-- 'startTime', 'maintenanceSchedule_startTime' - The time the scheduled maintenance is to start.+newMaintenanceSchedule ::+  MaintenanceSchedule+newMaintenanceSchedule =+  MaintenanceSchedule'+    { endTime = Prelude.Nothing,+      startTime = Prelude.Nothing+    }++-- | The time the scheduled maintenance is to end.+maintenanceSchedule_endTime :: Lens.Lens' MaintenanceSchedule (Prelude.Maybe Prelude.UTCTime)+maintenanceSchedule_endTime = Lens.lens (\MaintenanceSchedule' {endTime} -> endTime) (\s@MaintenanceSchedule' {} a -> s {endTime = a} :: MaintenanceSchedule) Prelude.. Lens.mapping Data._Time++-- | The time the scheduled maintenance is to start.+maintenanceSchedule_startTime :: Lens.Lens' MaintenanceSchedule (Prelude.Maybe Prelude.UTCTime)+maintenanceSchedule_startTime = Lens.lens (\MaintenanceSchedule' {startTime} -> startTime) (\s@MaintenanceSchedule' {} a -> s {startTime = a} :: MaintenanceSchedule) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON MaintenanceSchedule where+  parseJSON =+    Data.withObject+      "MaintenanceSchedule"+      ( \x ->+          MaintenanceSchedule'+            Prelude.<$> (x Data..:? "endTime")+            Prelude.<*> (x Data..:? "startTime")+      )++instance Prelude.Hashable MaintenanceSchedule where+  hashWithSalt _salt MaintenanceSchedule' {..} =+    _salt+      `Prelude.hashWithSalt` endTime+      `Prelude.hashWithSalt` startTime++instance Prelude.NFData MaintenanceSchedule where+  rnf MaintenanceSchedule' {..} =+    Prelude.rnf endTime+      `Prelude.seq` Prelude.rnf startTime
+ gen/Amazonka/M2/Types/PendingMaintenance.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.PendingMaintenance+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.PendingMaintenance where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.MaintenanceSchedule+import qualified Amazonka.Prelude as Prelude++-- | The scheduled maintenance for a runtime engine.+--+-- /See:/ 'newPendingMaintenance' smart constructor.+data PendingMaintenance = PendingMaintenance'+  { -- | The specific runtime engine that the maintenance schedule applies to.+    engineVersion :: Prelude.Maybe Prelude.Text,+    -- | The maintenance schedule for the runtime engine version.+    schedule :: Prelude.Maybe MaintenanceSchedule+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PendingMaintenance' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'engineVersion', 'pendingMaintenance_engineVersion' - The specific runtime engine that the maintenance schedule applies to.+--+-- 'schedule', 'pendingMaintenance_schedule' - The maintenance schedule for the runtime engine version.+newPendingMaintenance ::+  PendingMaintenance+newPendingMaintenance =+  PendingMaintenance'+    { engineVersion =+        Prelude.Nothing,+      schedule = Prelude.Nothing+    }++-- | The specific runtime engine that the maintenance schedule applies to.+pendingMaintenance_engineVersion :: Lens.Lens' PendingMaintenance (Prelude.Maybe Prelude.Text)+pendingMaintenance_engineVersion = Lens.lens (\PendingMaintenance' {engineVersion} -> engineVersion) (\s@PendingMaintenance' {} a -> s {engineVersion = a} :: PendingMaintenance)++-- | The maintenance schedule for the runtime engine version.+pendingMaintenance_schedule :: Lens.Lens' PendingMaintenance (Prelude.Maybe MaintenanceSchedule)+pendingMaintenance_schedule = Lens.lens (\PendingMaintenance' {schedule} -> schedule) (\s@PendingMaintenance' {} a -> s {schedule = a} :: PendingMaintenance)++instance Data.FromJSON PendingMaintenance where+  parseJSON =+    Data.withObject+      "PendingMaintenance"+      ( \x ->+          PendingMaintenance'+            Prelude.<$> (x Data..:? "engineVersion")+            Prelude.<*> (x Data..:? "schedule")+      )++instance Prelude.Hashable PendingMaintenance where+  hashWithSalt _salt PendingMaintenance' {..} =+    _salt+      `Prelude.hashWithSalt` engineVersion+      `Prelude.hashWithSalt` schedule++instance Prelude.NFData PendingMaintenance where+  rnf PendingMaintenance' {..} =+    Prelude.rnf engineVersion+      `Prelude.seq` Prelude.rnf schedule
+ gen/Amazonka/M2/Types/PrimaryKey.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.PrimaryKey+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.PrimaryKey where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The primary key for a KSDS data set.+--+-- /See:/ 'newPrimaryKey' smart constructor.+data PrimaryKey = PrimaryKey'+  { -- | A name for the Primary Key.+    name :: Prelude.Maybe Prelude.Text,+    -- | A strictly positive integer value representing the length of the primary+    -- key.+    length :: Prelude.Int,+    -- | A positive integer value representing the offset to mark the start of+    -- the primary key in the record byte array.+    offset :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PrimaryKey' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'primaryKey_name' - A name for the Primary Key.+--+-- 'length', 'primaryKey_length' - A strictly positive integer value representing the length of the primary+-- key.+--+-- 'offset', 'primaryKey_offset' - A positive integer value representing the offset to mark the start of+-- the primary key in the record byte array.+newPrimaryKey ::+  -- | 'length'+  Prelude.Int ->+  -- | 'offset'+  Prelude.Int ->+  PrimaryKey+newPrimaryKey pLength_ pOffset_ =+  PrimaryKey'+    { name = Prelude.Nothing,+      length = pLength_,+      offset = pOffset_+    }++-- | A name for the Primary Key.+primaryKey_name :: Lens.Lens' PrimaryKey (Prelude.Maybe Prelude.Text)+primaryKey_name = Lens.lens (\PrimaryKey' {name} -> name) (\s@PrimaryKey' {} a -> s {name = a} :: PrimaryKey)++-- | A strictly positive integer value representing the length of the primary+-- key.+primaryKey_length :: Lens.Lens' PrimaryKey Prelude.Int+primaryKey_length = Lens.lens (\PrimaryKey' {length} -> length) (\s@PrimaryKey' {} a -> s {length = a} :: PrimaryKey)++-- | A positive integer value representing the offset to mark the start of+-- the primary key in the record byte array.+primaryKey_offset :: Lens.Lens' PrimaryKey Prelude.Int+primaryKey_offset = Lens.lens (\PrimaryKey' {offset} -> offset) (\s@PrimaryKey' {} a -> s {offset = a} :: PrimaryKey)++instance Data.FromJSON PrimaryKey where+  parseJSON =+    Data.withObject+      "PrimaryKey"+      ( \x ->+          PrimaryKey'+            Prelude.<$> (x Data..:? "name")+            Prelude.<*> (x Data..: "length")+            Prelude.<*> (x Data..: "offset")+      )++instance Prelude.Hashable PrimaryKey where+  hashWithSalt _salt PrimaryKey' {..} =+    _salt+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` length+      `Prelude.hashWithSalt` offset++instance Prelude.NFData PrimaryKey where+  rnf PrimaryKey' {..} =+    Prelude.rnf name+      `Prelude.seq` Prelude.rnf length+      `Prelude.seq` Prelude.rnf offset++instance Data.ToJSON PrimaryKey where+  toJSON PrimaryKey' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("name" Data..=) Prelude.<$> name,+            Prelude.Just ("length" Data..= length),+            Prelude.Just ("offset" Data..= offset)+          ]+      )
+ gen/Amazonka/M2/Types/RecordLength.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.RecordLength+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.RecordLength where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The length of the records in the data set.+--+-- /See:/ 'newRecordLength' smart constructor.+data RecordLength = RecordLength'+  { -- | The maximum record length. In case of fixed, both minimum and maximum+    -- are the same.+    max :: Prelude.Int,+    -- | The minimum record length of a record.+    min :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RecordLength' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'max', 'recordLength_max' - The maximum record length. In case of fixed, both minimum and maximum+-- are the same.+--+-- 'min', 'recordLength_min' - The minimum record length of a record.+newRecordLength ::+  -- | 'max'+  Prelude.Int ->+  -- | 'min'+  Prelude.Int ->+  RecordLength+newRecordLength pMax_ pMin_ =+  RecordLength' {max = pMax_, min = pMin_}++-- | The maximum record length. In case of fixed, both minimum and maximum+-- are the same.+recordLength_max :: Lens.Lens' RecordLength Prelude.Int+recordLength_max = Lens.lens (\RecordLength' {max} -> max) (\s@RecordLength' {} a -> s {max = a} :: RecordLength)++-- | The minimum record length of a record.+recordLength_min :: Lens.Lens' RecordLength Prelude.Int+recordLength_min = Lens.lens (\RecordLength' {min} -> min) (\s@RecordLength' {} a -> s {min = a} :: RecordLength)++instance Prelude.Hashable RecordLength where+  hashWithSalt _salt RecordLength' {..} =+    _salt+      `Prelude.hashWithSalt` max+      `Prelude.hashWithSalt` min++instance Prelude.NFData RecordLength where+  rnf RecordLength' {..} =+    Prelude.rnf max `Prelude.seq` Prelude.rnf min++instance Data.ToJSON RecordLength where+  toJSON RecordLength' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just ("max" Data..= max),+            Prelude.Just ("min" Data..= min)+          ]+      )
+ gen/Amazonka/M2/Types/ScriptBatchJobDefinition.hs view
@@ -0,0 +1,74 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.ScriptBatchJobDefinition+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.ScriptBatchJobDefinition where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A batch job definition contained in a script.+--+-- /See:/ 'newScriptBatchJobDefinition' smart constructor.+data ScriptBatchJobDefinition = ScriptBatchJobDefinition'+  { -- | The name of the script containing the batch job definition.+    scriptName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ScriptBatchJobDefinition' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'scriptName', 'scriptBatchJobDefinition_scriptName' - The name of the script containing the batch job definition.+newScriptBatchJobDefinition ::+  -- | 'scriptName'+  Prelude.Text ->+  ScriptBatchJobDefinition+newScriptBatchJobDefinition pScriptName_ =+  ScriptBatchJobDefinition'+    { scriptName =+        pScriptName_+    }++-- | The name of the script containing the batch job definition.+scriptBatchJobDefinition_scriptName :: Lens.Lens' ScriptBatchJobDefinition Prelude.Text+scriptBatchJobDefinition_scriptName = Lens.lens (\ScriptBatchJobDefinition' {scriptName} -> scriptName) (\s@ScriptBatchJobDefinition' {} a -> s {scriptName = a} :: ScriptBatchJobDefinition)++instance Data.FromJSON ScriptBatchJobDefinition where+  parseJSON =+    Data.withObject+      "ScriptBatchJobDefinition"+      ( \x ->+          ScriptBatchJobDefinition'+            Prelude.<$> (x Data..: "scriptName")+      )++instance Prelude.Hashable ScriptBatchJobDefinition where+  hashWithSalt _salt ScriptBatchJobDefinition' {..} =+    _salt `Prelude.hashWithSalt` scriptName++instance Prelude.NFData ScriptBatchJobDefinition where+  rnf ScriptBatchJobDefinition' {..} =+    Prelude.rnf scriptName
+ gen/Amazonka/M2/Types/ScriptBatchJobIdentifier.hs view
@@ -0,0 +1,73 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.ScriptBatchJobIdentifier+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.ScriptBatchJobIdentifier where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A batch job identifier in which the batch job to run is identified by+-- the script name.+--+-- /See:/ 'newScriptBatchJobIdentifier' smart constructor.+data ScriptBatchJobIdentifier = ScriptBatchJobIdentifier'+  { -- | The name of the script containing the batch job definition.+    scriptName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ScriptBatchJobIdentifier' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'scriptName', 'scriptBatchJobIdentifier_scriptName' - The name of the script containing the batch job definition.+newScriptBatchJobIdentifier ::+  -- | 'scriptName'+  Prelude.Text ->+  ScriptBatchJobIdentifier+newScriptBatchJobIdentifier pScriptName_ =+  ScriptBatchJobIdentifier'+    { scriptName =+        pScriptName_+    }++-- | The name of the script containing the batch job definition.+scriptBatchJobIdentifier_scriptName :: Lens.Lens' ScriptBatchJobIdentifier Prelude.Text+scriptBatchJobIdentifier_scriptName = Lens.lens (\ScriptBatchJobIdentifier' {scriptName} -> scriptName) (\s@ScriptBatchJobIdentifier' {} a -> s {scriptName = a} :: ScriptBatchJobIdentifier)++instance Prelude.Hashable ScriptBatchJobIdentifier where+  hashWithSalt _salt ScriptBatchJobIdentifier' {..} =+    _salt `Prelude.hashWithSalt` scriptName++instance Prelude.NFData ScriptBatchJobIdentifier where+  rnf ScriptBatchJobIdentifier' {..} =+    Prelude.rnf scriptName++instance Data.ToJSON ScriptBatchJobIdentifier where+  toJSON ScriptBatchJobIdentifier' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("scriptName" Data..= scriptName)]+      )
+ gen/Amazonka/M2/Types/StorageConfiguration.hs view
@@ -0,0 +1,94 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.StorageConfiguration+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.StorageConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.EfsStorageConfiguration+import Amazonka.M2.Types.FsxStorageConfiguration+import qualified Amazonka.Prelude as Prelude++-- | Defines the storage configuration for a runtime environment.+--+-- /See:/ 'newStorageConfiguration' smart constructor.+data StorageConfiguration = StorageConfiguration'+  { -- | Defines the storage configuration for an Amazon EFS file system.+    efs :: Prelude.Maybe EfsStorageConfiguration,+    -- | Defines the storage configuration for an Amazon FSx file system.+    fsx :: Prelude.Maybe FsxStorageConfiguration+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StorageConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'efs', 'storageConfiguration_efs' - Defines the storage configuration for an Amazon EFS file system.+--+-- 'fsx', 'storageConfiguration_fsx' - Defines the storage configuration for an Amazon FSx file system.+newStorageConfiguration ::+  StorageConfiguration+newStorageConfiguration =+  StorageConfiguration'+    { efs = Prelude.Nothing,+      fsx = Prelude.Nothing+    }++-- | Defines the storage configuration for an Amazon EFS file system.+storageConfiguration_efs :: Lens.Lens' StorageConfiguration (Prelude.Maybe EfsStorageConfiguration)+storageConfiguration_efs = Lens.lens (\StorageConfiguration' {efs} -> efs) (\s@StorageConfiguration' {} a -> s {efs = a} :: StorageConfiguration)++-- | Defines the storage configuration for an Amazon FSx file system.+storageConfiguration_fsx :: Lens.Lens' StorageConfiguration (Prelude.Maybe FsxStorageConfiguration)+storageConfiguration_fsx = Lens.lens (\StorageConfiguration' {fsx} -> fsx) (\s@StorageConfiguration' {} a -> s {fsx = a} :: StorageConfiguration)++instance Data.FromJSON StorageConfiguration where+  parseJSON =+    Data.withObject+      "StorageConfiguration"+      ( \x ->+          StorageConfiguration'+            Prelude.<$> (x Data..:? "efs")+            Prelude.<*> (x Data..:? "fsx")+      )++instance Prelude.Hashable StorageConfiguration where+  hashWithSalt _salt StorageConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` efs+      `Prelude.hashWithSalt` fsx++instance Prelude.NFData StorageConfiguration where+  rnf StorageConfiguration' {..} =+    Prelude.rnf efs `Prelude.seq` Prelude.rnf fsx++instance Data.ToJSON StorageConfiguration where+  toJSON StorageConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("efs" Data..=) Prelude.<$> efs,+            ("fsx" Data..=) Prelude.<$> fsx+          ]+      )
+ gen/Amazonka/M2/Types/VsamAttributes.hs view
@@ -0,0 +1,138 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.VsamAttributes+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.VsamAttributes where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.AlternateKey+import Amazonka.M2.Types.PrimaryKey+import qualified Amazonka.Prelude as Prelude++-- | The attributes of a VSAM type data set.+--+-- /See:/ 'newVsamAttributes' smart constructor.+data VsamAttributes = VsamAttributes'+  { -- | The alternate key definitions, if any. A legacy dataset might not have+    -- any alternate key defined, but if those alternate keys definitions+    -- exist, provide them as some applications will make use of them.+    alternateKeys :: Prelude.Maybe [AlternateKey],+    -- | Indicates whether indexes for this dataset are stored as compressed+    -- values. If you have a large data set (typically > 100 Mb), consider+    -- setting this flag to True.+    compressed :: Prelude.Maybe Prelude.Bool,+    -- | The character set used by the data set. Can be ASCII, EBCDIC, or+    -- unknown.+    encoding :: Prelude.Maybe Prelude.Text,+    -- | The primary key of the data set.+    primaryKey :: Prelude.Maybe PrimaryKey,+    -- | The record format of the data set.+    format :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VsamAttributes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'alternateKeys', 'vsamAttributes_alternateKeys' - The alternate key definitions, if any. A legacy dataset might not have+-- any alternate key defined, but if those alternate keys definitions+-- exist, provide them as some applications will make use of them.+--+-- 'compressed', 'vsamAttributes_compressed' - Indicates whether indexes for this dataset are stored as compressed+-- values. If you have a large data set (typically > 100 Mb), consider+-- setting this flag to True.+--+-- 'encoding', 'vsamAttributes_encoding' - The character set used by the data set. Can be ASCII, EBCDIC, or+-- unknown.+--+-- 'primaryKey', 'vsamAttributes_primaryKey' - The primary key of the data set.+--+-- 'format', 'vsamAttributes_format' - The record format of the data set.+newVsamAttributes ::+  -- | 'format'+  Prelude.Text ->+  VsamAttributes+newVsamAttributes pFormat_ =+  VsamAttributes'+    { alternateKeys = Prelude.Nothing,+      compressed = Prelude.Nothing,+      encoding = Prelude.Nothing,+      primaryKey = Prelude.Nothing,+      format = pFormat_+    }++-- | The alternate key definitions, if any. A legacy dataset might not have+-- any alternate key defined, but if those alternate keys definitions+-- exist, provide them as some applications will make use of them.+vsamAttributes_alternateKeys :: Lens.Lens' VsamAttributes (Prelude.Maybe [AlternateKey])+vsamAttributes_alternateKeys = Lens.lens (\VsamAttributes' {alternateKeys} -> alternateKeys) (\s@VsamAttributes' {} a -> s {alternateKeys = a} :: VsamAttributes) Prelude.. Lens.mapping Lens.coerced++-- | Indicates whether indexes for this dataset are stored as compressed+-- values. If you have a large data set (typically > 100 Mb), consider+-- setting this flag to True.+vsamAttributes_compressed :: Lens.Lens' VsamAttributes (Prelude.Maybe Prelude.Bool)+vsamAttributes_compressed = Lens.lens (\VsamAttributes' {compressed} -> compressed) (\s@VsamAttributes' {} a -> s {compressed = a} :: VsamAttributes)++-- | The character set used by the data set. Can be ASCII, EBCDIC, or+-- unknown.+vsamAttributes_encoding :: Lens.Lens' VsamAttributes (Prelude.Maybe Prelude.Text)+vsamAttributes_encoding = Lens.lens (\VsamAttributes' {encoding} -> encoding) (\s@VsamAttributes' {} a -> s {encoding = a} :: VsamAttributes)++-- | The primary key of the data set.+vsamAttributes_primaryKey :: Lens.Lens' VsamAttributes (Prelude.Maybe PrimaryKey)+vsamAttributes_primaryKey = Lens.lens (\VsamAttributes' {primaryKey} -> primaryKey) (\s@VsamAttributes' {} a -> s {primaryKey = a} :: VsamAttributes)++-- | The record format of the data set.+vsamAttributes_format :: Lens.Lens' VsamAttributes Prelude.Text+vsamAttributes_format = Lens.lens (\VsamAttributes' {format} -> format) (\s@VsamAttributes' {} a -> s {format = a} :: VsamAttributes)++instance Prelude.Hashable VsamAttributes where+  hashWithSalt _salt VsamAttributes' {..} =+    _salt+      `Prelude.hashWithSalt` alternateKeys+      `Prelude.hashWithSalt` compressed+      `Prelude.hashWithSalt` encoding+      `Prelude.hashWithSalt` primaryKey+      `Prelude.hashWithSalt` format++instance Prelude.NFData VsamAttributes where+  rnf VsamAttributes' {..} =+    Prelude.rnf alternateKeys+      `Prelude.seq` Prelude.rnf compressed+      `Prelude.seq` Prelude.rnf encoding+      `Prelude.seq` Prelude.rnf primaryKey+      `Prelude.seq` Prelude.rnf format++instance Data.ToJSON VsamAttributes where+  toJSON VsamAttributes' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("alternateKeys" Data..=) Prelude.<$> alternateKeys,+            ("compressed" Data..=) Prelude.<$> compressed,+            ("encoding" Data..=) Prelude.<$> encoding,+            ("primaryKey" Data..=) Prelude.<$> primaryKey,+            Prelude.Just ("format" Data..= format)+          ]+      )
+ gen/Amazonka/M2/Types/VsamDetailAttributes.hs view
@@ -0,0 +1,153 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Types.VsamDetailAttributes+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Types.VsamDetailAttributes where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types.AlternateKey+import Amazonka.M2.Types.PrimaryKey+import qualified Amazonka.Prelude as Prelude++-- | The attributes of a VSAM type data set.+--+-- /See:/ 'newVsamDetailAttributes' smart constructor.+data VsamDetailAttributes = VsamDetailAttributes'+  { -- | The alternate key definitions, if any. A legacy dataset might not have+    -- any alternate key defined, but if those alternate keys definitions+    -- exist, provide them as some applications will make use of them.+    alternateKeys :: Prelude.Maybe [AlternateKey],+    -- | If set to True, enforces loading the data set into cache before it’s+    -- used by the application.+    cacheAtStartup :: Prelude.Maybe Prelude.Bool,+    -- | Indicates whether indexes for this dataset are stored as compressed+    -- values. If you have a large data set (typically > 100 Mb), consider+    -- setting this flag to True.+    compressed :: Prelude.Maybe Prelude.Bool,+    -- | The character set used by the data set. Can be ASCII, EBCDIC, or+    -- unknown.+    encoding :: Prelude.Maybe Prelude.Text,+    -- | The primary key of the data set.+    primaryKey :: Prelude.Maybe PrimaryKey,+    -- | The record format of the data set.+    recordFormat :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VsamDetailAttributes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'alternateKeys', 'vsamDetailAttributes_alternateKeys' - The alternate key definitions, if any. A legacy dataset might not have+-- any alternate key defined, but if those alternate keys definitions+-- exist, provide them as some applications will make use of them.+--+-- 'cacheAtStartup', 'vsamDetailAttributes_cacheAtStartup' - If set to True, enforces loading the data set into cache before it’s+-- used by the application.+--+-- 'compressed', 'vsamDetailAttributes_compressed' - Indicates whether indexes for this dataset are stored as compressed+-- values. If you have a large data set (typically > 100 Mb), consider+-- setting this flag to True.+--+-- 'encoding', 'vsamDetailAttributes_encoding' - The character set used by the data set. Can be ASCII, EBCDIC, or+-- unknown.+--+-- 'primaryKey', 'vsamDetailAttributes_primaryKey' - The primary key of the data set.+--+-- 'recordFormat', 'vsamDetailAttributes_recordFormat' - The record format of the data set.+newVsamDetailAttributes ::+  VsamDetailAttributes+newVsamDetailAttributes =+  VsamDetailAttributes'+    { alternateKeys =+        Prelude.Nothing,+      cacheAtStartup = Prelude.Nothing,+      compressed = Prelude.Nothing,+      encoding = Prelude.Nothing,+      primaryKey = Prelude.Nothing,+      recordFormat = Prelude.Nothing+    }++-- | The alternate key definitions, if any. A legacy dataset might not have+-- any alternate key defined, but if those alternate keys definitions+-- exist, provide them as some applications will make use of them.+vsamDetailAttributes_alternateKeys :: Lens.Lens' VsamDetailAttributes (Prelude.Maybe [AlternateKey])+vsamDetailAttributes_alternateKeys = Lens.lens (\VsamDetailAttributes' {alternateKeys} -> alternateKeys) (\s@VsamDetailAttributes' {} a -> s {alternateKeys = a} :: VsamDetailAttributes) Prelude.. Lens.mapping Lens.coerced++-- | If set to True, enforces loading the data set into cache before it’s+-- used by the application.+vsamDetailAttributes_cacheAtStartup :: Lens.Lens' VsamDetailAttributes (Prelude.Maybe Prelude.Bool)+vsamDetailAttributes_cacheAtStartup = Lens.lens (\VsamDetailAttributes' {cacheAtStartup} -> cacheAtStartup) (\s@VsamDetailAttributes' {} a -> s {cacheAtStartup = a} :: VsamDetailAttributes)++-- | Indicates whether indexes for this dataset are stored as compressed+-- values. If you have a large data set (typically > 100 Mb), consider+-- setting this flag to True.+vsamDetailAttributes_compressed :: Lens.Lens' VsamDetailAttributes (Prelude.Maybe Prelude.Bool)+vsamDetailAttributes_compressed = Lens.lens (\VsamDetailAttributes' {compressed} -> compressed) (\s@VsamDetailAttributes' {} a -> s {compressed = a} :: VsamDetailAttributes)++-- | The character set used by the data set. Can be ASCII, EBCDIC, or+-- unknown.+vsamDetailAttributes_encoding :: Lens.Lens' VsamDetailAttributes (Prelude.Maybe Prelude.Text)+vsamDetailAttributes_encoding = Lens.lens (\VsamDetailAttributes' {encoding} -> encoding) (\s@VsamDetailAttributes' {} a -> s {encoding = a} :: VsamDetailAttributes)++-- | The primary key of the data set.+vsamDetailAttributes_primaryKey :: Lens.Lens' VsamDetailAttributes (Prelude.Maybe PrimaryKey)+vsamDetailAttributes_primaryKey = Lens.lens (\VsamDetailAttributes' {primaryKey} -> primaryKey) (\s@VsamDetailAttributes' {} a -> s {primaryKey = a} :: VsamDetailAttributes)++-- | The record format of the data set.+vsamDetailAttributes_recordFormat :: Lens.Lens' VsamDetailAttributes (Prelude.Maybe Prelude.Text)+vsamDetailAttributes_recordFormat = Lens.lens (\VsamDetailAttributes' {recordFormat} -> recordFormat) (\s@VsamDetailAttributes' {} a -> s {recordFormat = a} :: VsamDetailAttributes)++instance Data.FromJSON VsamDetailAttributes where+  parseJSON =+    Data.withObject+      "VsamDetailAttributes"+      ( \x ->+          VsamDetailAttributes'+            Prelude.<$> (x Data..:? "alternateKeys" Data..!= Prelude.mempty)+            Prelude.<*> (x Data..:? "cacheAtStartup")+            Prelude.<*> (x Data..:? "compressed")+            Prelude.<*> (x Data..:? "encoding")+            Prelude.<*> (x Data..:? "primaryKey")+            Prelude.<*> (x Data..:? "recordFormat")+      )++instance Prelude.Hashable VsamDetailAttributes where+  hashWithSalt _salt VsamDetailAttributes' {..} =+    _salt+      `Prelude.hashWithSalt` alternateKeys+      `Prelude.hashWithSalt` cacheAtStartup+      `Prelude.hashWithSalt` compressed+      `Prelude.hashWithSalt` encoding+      `Prelude.hashWithSalt` primaryKey+      `Prelude.hashWithSalt` recordFormat++instance Prelude.NFData VsamDetailAttributes where+  rnf VsamDetailAttributes' {..} =+    Prelude.rnf alternateKeys+      `Prelude.seq` Prelude.rnf cacheAtStartup+      `Prelude.seq` Prelude.rnf compressed+      `Prelude.seq` Prelude.rnf encoding+      `Prelude.seq` Prelude.rnf primaryKey+      `Prelude.seq` Prelude.rnf recordFormat
+ gen/Amazonka/M2/UntagResource.hs view
@@ -0,0 +1,161 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.UntagResource+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes one or more tags from the specified resource.+module Amazonka.M2.UntagResource+  ( -- * Creating a Request+    UntagResource (..),+    newUntagResource,++    -- * Request Lenses+    untagResource_resourceArn,+    untagResource_tagKeys,++    -- * Destructuring the Response+    UntagResourceResponse (..),+    newUntagResourceResponse,++    -- * Response Lenses+    untagResourceResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+  { -- | The Amazon Resource Name (ARN) of the resource.+    resourceArn :: Prelude.Text,+    -- | The keys of the tags to remove.+    tagKeys :: [Prelude.Text]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'untagResource_resourceArn' - The Amazon Resource Name (ARN) of the resource.+--+-- 'tagKeys', 'untagResource_tagKeys' - The keys of the tags to remove.+newUntagResource ::+  -- | 'resourceArn'+  Prelude.Text ->+  UntagResource+newUntagResource pResourceArn_ =+  UntagResource'+    { resourceArn = pResourceArn_,+      tagKeys = Prelude.mempty+    }++-- | The Amazon Resource Name (ARN) of the resource.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | The keys of the tags to remove.+untagResource_tagKeys :: Lens.Lens' UntagResource [Prelude.Text]+untagResource_tagKeys = Lens.lens (\UntagResource' {tagKeys} -> tagKeys) (\s@UntagResource' {} a -> s {tagKeys = a} :: UntagResource) Prelude.. Lens.coerced++instance Core.AWSRequest UntagResource where+  type+    AWSResponse UntagResource =+      UntagResourceResponse+  request overrides =+    Request.delete (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          UntagResourceResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable UntagResource where+  hashWithSalt _salt UntagResource' {..} =+    _salt+      `Prelude.hashWithSalt` resourceArn+      `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagResource where+  rnf UntagResource' {..} =+    Prelude.rnf resourceArn+      `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagResource where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath UntagResource where+  toPath UntagResource' {..} =+    Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery UntagResource where+  toQuery UntagResource' {..} =+    Prelude.mconcat+      ["tagKeys" Data.=: Data.toQueryList "member" tagKeys]++-- | /See:/ 'newUntagResourceResponse' smart constructor.+data UntagResourceResponse = UntagResourceResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'untagResourceResponse_httpStatus' - The response's http status code.+newUntagResourceResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  UntagResourceResponse+newUntagResourceResponse pHttpStatus_ =+  UntagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+untagResourceResponse_httpStatus :: Lens.Lens' UntagResourceResponse Prelude.Int+untagResourceResponse_httpStatus = Lens.lens (\UntagResourceResponse' {httpStatus} -> httpStatus) (\s@UntagResourceResponse' {} a -> s {httpStatus = a} :: UntagResourceResponse)++instance Prelude.NFData UntagResourceResponse where+  rnf UntagResourceResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/M2/UpdateApplication.hs view
@@ -0,0 +1,224 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.UpdateApplication+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates an application and creates a new version.+module Amazonka.M2.UpdateApplication+  ( -- * Creating a Request+    UpdateApplication (..),+    newUpdateApplication,++    -- * Request Lenses+    updateApplication_definition,+    updateApplication_description,+    updateApplication_applicationId,+    updateApplication_currentApplicationVersion,++    -- * Destructuring the Response+    UpdateApplicationResponse (..),+    newUpdateApplicationResponse,++    -- * Response Lenses+    updateApplicationResponse_httpStatus,+    updateApplicationResponse_applicationVersion,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateApplication' smart constructor.+data UpdateApplication = UpdateApplication'+  { -- | The application definition for this application. You can specify either+    -- inline JSON or an S3 bucket location.+    definition :: Prelude.Maybe Definition,+    -- | The description of the application to update.+    description :: Prelude.Maybe Prelude.Text,+    -- | The unique identifier of the application you want to update.+    applicationId :: Prelude.Text,+    -- | The current version of the application to update.+    currentApplicationVersion :: Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'definition', 'updateApplication_definition' - The application definition for this application. You can specify either+-- inline JSON or an S3 bucket location.+--+-- 'description', 'updateApplication_description' - The description of the application to update.+--+-- 'applicationId', 'updateApplication_applicationId' - The unique identifier of the application you want to update.+--+-- 'currentApplicationVersion', 'updateApplication_currentApplicationVersion' - The current version of the application to update.+newUpdateApplication ::+  -- | 'applicationId'+  Prelude.Text ->+  -- | 'currentApplicationVersion'+  Prelude.Natural ->+  UpdateApplication+newUpdateApplication+  pApplicationId_+  pCurrentApplicationVersion_ =+    UpdateApplication'+      { definition = Prelude.Nothing,+        description = Prelude.Nothing,+        applicationId = pApplicationId_,+        currentApplicationVersion =+          pCurrentApplicationVersion_+      }++-- | The application definition for this application. You can specify either+-- inline JSON or an S3 bucket location.+updateApplication_definition :: Lens.Lens' UpdateApplication (Prelude.Maybe Definition)+updateApplication_definition = Lens.lens (\UpdateApplication' {definition} -> definition) (\s@UpdateApplication' {} a -> s {definition = a} :: UpdateApplication)++-- | The description of the application to update.+updateApplication_description :: Lens.Lens' UpdateApplication (Prelude.Maybe Prelude.Text)+updateApplication_description = Lens.lens (\UpdateApplication' {description} -> description) (\s@UpdateApplication' {} a -> s {description = a} :: UpdateApplication)++-- | The unique identifier of the application you want to update.+updateApplication_applicationId :: Lens.Lens' UpdateApplication Prelude.Text+updateApplication_applicationId = Lens.lens (\UpdateApplication' {applicationId} -> applicationId) (\s@UpdateApplication' {} a -> s {applicationId = a} :: UpdateApplication)++-- | The current version of the application to update.+updateApplication_currentApplicationVersion :: Lens.Lens' UpdateApplication Prelude.Natural+updateApplication_currentApplicationVersion = Lens.lens (\UpdateApplication' {currentApplicationVersion} -> currentApplicationVersion) (\s@UpdateApplication' {} a -> s {currentApplicationVersion = a} :: UpdateApplication)++instance Core.AWSRequest UpdateApplication where+  type+    AWSResponse UpdateApplication =+      UpdateApplicationResponse+  request overrides =+    Request.patchJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          UpdateApplicationResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "applicationVersion")+      )++instance Prelude.Hashable UpdateApplication where+  hashWithSalt _salt UpdateApplication' {..} =+    _salt+      `Prelude.hashWithSalt` definition+      `Prelude.hashWithSalt` description+      `Prelude.hashWithSalt` applicationId+      `Prelude.hashWithSalt` currentApplicationVersion++instance Prelude.NFData UpdateApplication where+  rnf UpdateApplication' {..} =+    Prelude.rnf definition+      `Prelude.seq` Prelude.rnf description+      `Prelude.seq` Prelude.rnf applicationId+      `Prelude.seq` Prelude.rnf currentApplicationVersion++instance Data.ToHeaders UpdateApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON UpdateApplication where+  toJSON UpdateApplication' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("definition" Data..=) Prelude.<$> definition,+            ("description" Data..=) Prelude.<$> description,+            Prelude.Just+              ( "currentApplicationVersion"+                  Data..= currentApplicationVersion+              )+          ]+      )++instance Data.ToPath UpdateApplication where+  toPath UpdateApplication' {..} =+    Prelude.mconcat+      ["/applications/", Data.toBS applicationId]++instance Data.ToQuery UpdateApplication where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateApplicationResponse' smart constructor.+data UpdateApplicationResponse = UpdateApplicationResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The new version of the application.+    applicationVersion :: Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'updateApplicationResponse_httpStatus' - The response's http status code.+--+-- 'applicationVersion', 'updateApplicationResponse_applicationVersion' - The new version of the application.+newUpdateApplicationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'applicationVersion'+  Prelude.Natural ->+  UpdateApplicationResponse+newUpdateApplicationResponse+  pHttpStatus_+  pApplicationVersion_ =+    UpdateApplicationResponse'+      { httpStatus =+          pHttpStatus_,+        applicationVersion = pApplicationVersion_+      }++-- | The response's http status code.+updateApplicationResponse_httpStatus :: Lens.Lens' UpdateApplicationResponse Prelude.Int+updateApplicationResponse_httpStatus = Lens.lens (\UpdateApplicationResponse' {httpStatus} -> httpStatus) (\s@UpdateApplicationResponse' {} a -> s {httpStatus = a} :: UpdateApplicationResponse)++-- | The new version of the application.+updateApplicationResponse_applicationVersion :: Lens.Lens' UpdateApplicationResponse Prelude.Natural+updateApplicationResponse_applicationVersion = Lens.lens (\UpdateApplicationResponse' {applicationVersion} -> applicationVersion) (\s@UpdateApplicationResponse' {} a -> s {applicationVersion = a} :: UpdateApplicationResponse)++instance Prelude.NFData UpdateApplicationResponse where+  rnf UpdateApplicationResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationVersion
+ gen/Amazonka/M2/UpdateEnvironment.hs view
@@ -0,0 +1,267 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.UpdateEnvironment+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the configuration details for a specific runtime environment.+module Amazonka.M2.UpdateEnvironment+  ( -- * Creating a Request+    UpdateEnvironment (..),+    newUpdateEnvironment,++    -- * Request Lenses+    updateEnvironment_applyDuringMaintenanceWindow,+    updateEnvironment_desiredCapacity,+    updateEnvironment_engineVersion,+    updateEnvironment_instanceType,+    updateEnvironment_preferredMaintenanceWindow,+    updateEnvironment_environmentId,++    -- * Destructuring the Response+    UpdateEnvironmentResponse (..),+    newUpdateEnvironmentResponse,++    -- * Response Lenses+    updateEnvironmentResponse_httpStatus,+    updateEnvironmentResponse_environmentId,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateEnvironment' smart constructor.+data UpdateEnvironment = UpdateEnvironment'+  { -- | Indicates whether to update the runtime environment during the+    -- maintenance window. The default is false. Currently, Amazon Web Services+    -- Mainframe Modernization accepts the @engineVersion@ parameter only if+    -- @applyDuringMaintenanceWindow@ is true. If any parameter other than+    -- @engineVersion@ is provided in @UpdateEnvironmentRequest@, it will fail+    -- if @applyDuringMaintenanceWindow@ is set to true.+    applyDuringMaintenanceWindow :: Prelude.Maybe Prelude.Bool,+    -- | The desired capacity for the runtime environment to update.+    desiredCapacity :: Prelude.Maybe Prelude.Natural,+    -- | The version of the runtime engine for the runtime environment.+    engineVersion :: Prelude.Maybe Prelude.Text,+    -- | The instance type for the runtime environment to update.+    instanceType :: Prelude.Maybe Prelude.Text,+    -- | Configures the maintenance window you want for the runtime environment.+    -- If you do not provide a value, a random system-generated value will be+    -- assigned.+    preferredMaintenanceWindow :: Prelude.Maybe Prelude.Text,+    -- | The unique identifier of the runtime environment that you want to+    -- update.+    environmentId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applyDuringMaintenanceWindow', 'updateEnvironment_applyDuringMaintenanceWindow' - Indicates whether to update the runtime environment during the+-- maintenance window. The default is false. Currently, Amazon Web Services+-- Mainframe Modernization accepts the @engineVersion@ parameter only if+-- @applyDuringMaintenanceWindow@ is true. If any parameter other than+-- @engineVersion@ is provided in @UpdateEnvironmentRequest@, it will fail+-- if @applyDuringMaintenanceWindow@ is set to true.+--+-- 'desiredCapacity', 'updateEnvironment_desiredCapacity' - The desired capacity for the runtime environment to update.+--+-- 'engineVersion', 'updateEnvironment_engineVersion' - The version of the runtime engine for the runtime environment.+--+-- 'instanceType', 'updateEnvironment_instanceType' - The instance type for the runtime environment to update.+--+-- 'preferredMaintenanceWindow', 'updateEnvironment_preferredMaintenanceWindow' - Configures the maintenance window you want for the runtime environment.+-- If you do not provide a value, a random system-generated value will be+-- assigned.+--+-- 'environmentId', 'updateEnvironment_environmentId' - The unique identifier of the runtime environment that you want to+-- update.+newUpdateEnvironment ::+  -- | 'environmentId'+  Prelude.Text ->+  UpdateEnvironment+newUpdateEnvironment pEnvironmentId_ =+  UpdateEnvironment'+    { applyDuringMaintenanceWindow =+        Prelude.Nothing,+      desiredCapacity = Prelude.Nothing,+      engineVersion = Prelude.Nothing,+      instanceType = Prelude.Nothing,+      preferredMaintenanceWindow = Prelude.Nothing,+      environmentId = pEnvironmentId_+    }++-- | Indicates whether to update the runtime environment during the+-- maintenance window. The default is false. Currently, Amazon Web Services+-- Mainframe Modernization accepts the @engineVersion@ parameter only if+-- @applyDuringMaintenanceWindow@ is true. If any parameter other than+-- @engineVersion@ is provided in @UpdateEnvironmentRequest@, it will fail+-- if @applyDuringMaintenanceWindow@ is set to true.+updateEnvironment_applyDuringMaintenanceWindow :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Bool)+updateEnvironment_applyDuringMaintenanceWindow = Lens.lens (\UpdateEnvironment' {applyDuringMaintenanceWindow} -> applyDuringMaintenanceWindow) (\s@UpdateEnvironment' {} a -> s {applyDuringMaintenanceWindow = a} :: UpdateEnvironment)++-- | The desired capacity for the runtime environment to update.+updateEnvironment_desiredCapacity :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Natural)+updateEnvironment_desiredCapacity = Lens.lens (\UpdateEnvironment' {desiredCapacity} -> desiredCapacity) (\s@UpdateEnvironment' {} a -> s {desiredCapacity = a} :: UpdateEnvironment)++-- | The version of the runtime engine for the runtime environment.+updateEnvironment_engineVersion :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_engineVersion = Lens.lens (\UpdateEnvironment' {engineVersion} -> engineVersion) (\s@UpdateEnvironment' {} a -> s {engineVersion = a} :: UpdateEnvironment)++-- | The instance type for the runtime environment to update.+updateEnvironment_instanceType :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_instanceType = Lens.lens (\UpdateEnvironment' {instanceType} -> instanceType) (\s@UpdateEnvironment' {} a -> s {instanceType = a} :: UpdateEnvironment)++-- | Configures the maintenance window you want for the runtime environment.+-- If you do not provide a value, a random system-generated value will be+-- assigned.+updateEnvironment_preferredMaintenanceWindow :: Lens.Lens' UpdateEnvironment (Prelude.Maybe Prelude.Text)+updateEnvironment_preferredMaintenanceWindow = Lens.lens (\UpdateEnvironment' {preferredMaintenanceWindow} -> preferredMaintenanceWindow) (\s@UpdateEnvironment' {} a -> s {preferredMaintenanceWindow = a} :: UpdateEnvironment)++-- | The unique identifier of the runtime environment that you want to+-- update.+updateEnvironment_environmentId :: Lens.Lens' UpdateEnvironment Prelude.Text+updateEnvironment_environmentId = Lens.lens (\UpdateEnvironment' {environmentId} -> environmentId) (\s@UpdateEnvironment' {} a -> s {environmentId = a} :: UpdateEnvironment)++instance Core.AWSRequest UpdateEnvironment where+  type+    AWSResponse UpdateEnvironment =+      UpdateEnvironmentResponse+  request overrides =+    Request.patchJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          UpdateEnvironmentResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "environmentId")+      )++instance Prelude.Hashable UpdateEnvironment where+  hashWithSalt _salt UpdateEnvironment' {..} =+    _salt+      `Prelude.hashWithSalt` applyDuringMaintenanceWindow+      `Prelude.hashWithSalt` desiredCapacity+      `Prelude.hashWithSalt` engineVersion+      `Prelude.hashWithSalt` instanceType+      `Prelude.hashWithSalt` preferredMaintenanceWindow+      `Prelude.hashWithSalt` environmentId++instance Prelude.NFData UpdateEnvironment where+  rnf UpdateEnvironment' {..} =+    Prelude.rnf applyDuringMaintenanceWindow+      `Prelude.seq` Prelude.rnf desiredCapacity+      `Prelude.seq` Prelude.rnf engineVersion+      `Prelude.seq` Prelude.rnf instanceType+      `Prelude.seq` Prelude.rnf preferredMaintenanceWindow+      `Prelude.seq` Prelude.rnf environmentId++instance Data.ToHeaders UpdateEnvironment where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON UpdateEnvironment where+  toJSON UpdateEnvironment' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("applyDuringMaintenanceWindow" Data..=)+              Prelude.<$> applyDuringMaintenanceWindow,+            ("desiredCapacity" Data..=)+              Prelude.<$> desiredCapacity,+            ("engineVersion" Data..=) Prelude.<$> engineVersion,+            ("instanceType" Data..=) Prelude.<$> instanceType,+            ("preferredMaintenanceWindow" Data..=)+              Prelude.<$> preferredMaintenanceWindow+          ]+      )++instance Data.ToPath UpdateEnvironment where+  toPath UpdateEnvironment' {..} =+    Prelude.mconcat+      ["/environments/", Data.toBS environmentId]++instance Data.ToQuery UpdateEnvironment where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateEnvironmentResponse' smart constructor.+data UpdateEnvironmentResponse = UpdateEnvironmentResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The unique identifier of the runtime environment that was updated.+    environmentId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'updateEnvironmentResponse_httpStatus' - The response's http status code.+--+-- 'environmentId', 'updateEnvironmentResponse_environmentId' - The unique identifier of the runtime environment that was updated.+newUpdateEnvironmentResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'environmentId'+  Prelude.Text ->+  UpdateEnvironmentResponse+newUpdateEnvironmentResponse+  pHttpStatus_+  pEnvironmentId_ =+    UpdateEnvironmentResponse'+      { httpStatus =+          pHttpStatus_,+        environmentId = pEnvironmentId_+      }++-- | The response's http status code.+updateEnvironmentResponse_httpStatus :: Lens.Lens' UpdateEnvironmentResponse Prelude.Int+updateEnvironmentResponse_httpStatus = Lens.lens (\UpdateEnvironmentResponse' {httpStatus} -> httpStatus) (\s@UpdateEnvironmentResponse' {} a -> s {httpStatus = a} :: UpdateEnvironmentResponse)++-- | The unique identifier of the runtime environment that was updated.+updateEnvironmentResponse_environmentId :: Lens.Lens' UpdateEnvironmentResponse Prelude.Text+updateEnvironmentResponse_environmentId = Lens.lens (\UpdateEnvironmentResponse' {environmentId} -> environmentId) (\s@UpdateEnvironmentResponse' {} a -> s {environmentId = a} :: UpdateEnvironmentResponse)++instance Prelude.NFData UpdateEnvironmentResponse where+  rnf UpdateEnvironmentResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf environmentId
+ gen/Amazonka/M2/Waiters.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.M2.Waiters+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.M2.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.M2.Lens+import Amazonka.M2.Types+import qualified Amazonka.Prelude as Prelude
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module      : Main+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.M2+import Test.Amazonka.M2.Internal+import Test.Tasty++main :: IO ()+main =+  defaultMain $+    testGroup+      "M2"+      [ testGroup "tests" tests,+        testGroup "fixtures" fixtures+      ]
+ test/Test/Amazonka/Gen/M2.hs view
@@ -0,0 +1,678 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Test.Amazonka.Gen.M2+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.Gen.M2 where++import Amazonka.M2+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.M2.Internal+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+--     [ testGroup "request"+--         [ requestCancelBatchJobExecution $+--             newCancelBatchJobExecution+--+--         , requestCreateApplication $+--             newCreateApplication+--+--         , requestCreateDataSetImportTask $+--             newCreateDataSetImportTask+--+--         , requestCreateDeployment $+--             newCreateDeployment+--+--         , requestCreateEnvironment $+--             newCreateEnvironment+--+--         , requestDeleteApplication $+--             newDeleteApplication+--+--         , requestDeleteApplicationFromEnvironment $+--             newDeleteApplicationFromEnvironment+--+--         , requestDeleteEnvironment $+--             newDeleteEnvironment+--+--         , requestGetApplication $+--             newGetApplication+--+--         , requestGetApplicationVersion $+--             newGetApplicationVersion+--+--         , requestGetBatchJobExecution $+--             newGetBatchJobExecution+--+--         , requestGetDataSetDetails $+--             newGetDataSetDetails+--+--         , requestGetDataSetImportTask $+--             newGetDataSetImportTask+--+--         , requestGetDeployment $+--             newGetDeployment+--+--         , requestGetEnvironment $+--             newGetEnvironment+--+--         , requestListApplicationVersions $+--             newListApplicationVersions+--+--         , requestListApplications $+--             newListApplications+--+--         , requestListBatchJobDefinitions $+--             newListBatchJobDefinitions+--+--         , requestListBatchJobExecutions $+--             newListBatchJobExecutions+--+--         , requestListDataSetImportHistory $+--             newListDataSetImportHistory+--+--         , requestListDataSets $+--             newListDataSets+--+--         , requestListDeployments $+--             newListDeployments+--+--         , requestListEngineVersions $+--             newListEngineVersions+--+--         , requestListEnvironments $+--             newListEnvironments+--+--         , requestListTagsForResource $+--             newListTagsForResource+--+--         , requestStartApplication $+--             newStartApplication+--+--         , requestStartBatchJob $+--             newStartBatchJob+--+--         , requestStopApplication $+--             newStopApplication+--+--         , requestTagResource $+--             newTagResource+--+--         , requestUntagResource $+--             newUntagResource+--+--         , requestUpdateApplication $+--             newUpdateApplication+--+--         , requestUpdateEnvironment $+--             newUpdateEnvironment+--+--           ]++--     , testGroup "response"+--         [ responseCancelBatchJobExecution $+--             newCancelBatchJobExecutionResponse+--+--         , responseCreateApplication $+--             newCreateApplicationResponse+--+--         , responseCreateDataSetImportTask $+--             newCreateDataSetImportTaskResponse+--+--         , responseCreateDeployment $+--             newCreateDeploymentResponse+--+--         , responseCreateEnvironment $+--             newCreateEnvironmentResponse+--+--         , responseDeleteApplication $+--             newDeleteApplicationResponse+--+--         , responseDeleteApplicationFromEnvironment $+--             newDeleteApplicationFromEnvironmentResponse+--+--         , responseDeleteEnvironment $+--             newDeleteEnvironmentResponse+--+--         , responseGetApplication $+--             newGetApplicationResponse+--+--         , responseGetApplicationVersion $+--             newGetApplicationVersionResponse+--+--         , responseGetBatchJobExecution $+--             newGetBatchJobExecutionResponse+--+--         , responseGetDataSetDetails $+--             newGetDataSetDetailsResponse+--+--         , responseGetDataSetImportTask $+--             newGetDataSetImportTaskResponse+--+--         , responseGetDeployment $+--             newGetDeploymentResponse+--+--         , responseGetEnvironment $+--             newGetEnvironmentResponse+--+--         , responseListApplicationVersions $+--             newListApplicationVersionsResponse+--+--         , responseListApplications $+--             newListApplicationsResponse+--+--         , responseListBatchJobDefinitions $+--             newListBatchJobDefinitionsResponse+--+--         , responseListBatchJobExecutions $+--             newListBatchJobExecutionsResponse+--+--         , responseListDataSetImportHistory $+--             newListDataSetImportHistoryResponse+--+--         , responseListDataSets $+--             newListDataSetsResponse+--+--         , responseListDeployments $+--             newListDeploymentsResponse+--+--         , responseListEngineVersions $+--             newListEngineVersionsResponse+--+--         , responseListEnvironments $+--             newListEnvironmentsResponse+--+--         , responseListTagsForResource $+--             newListTagsForResourceResponse+--+--         , responseStartApplication $+--             newStartApplicationResponse+--+--         , responseStartBatchJob $+--             newStartBatchJobResponse+--+--         , responseStopApplication $+--             newStopApplicationResponse+--+--         , responseTagResource $+--             newTagResourceResponse+--+--         , responseUntagResource $+--             newUntagResourceResponse+--+--         , responseUpdateApplication $+--             newUpdateApplicationResponse+--+--         , responseUpdateEnvironment $+--             newUpdateEnvironmentResponse+--+--           ]+--     ]++-- Requests++requestCancelBatchJobExecution :: CancelBatchJobExecution -> TestTree+requestCancelBatchJobExecution =+  req+    "CancelBatchJobExecution"+    "fixture/CancelBatchJobExecution.yaml"++requestCreateApplication :: CreateApplication -> TestTree+requestCreateApplication =+  req+    "CreateApplication"+    "fixture/CreateApplication.yaml"++requestCreateDataSetImportTask :: CreateDataSetImportTask -> TestTree+requestCreateDataSetImportTask =+  req+    "CreateDataSetImportTask"+    "fixture/CreateDataSetImportTask.yaml"++requestCreateDeployment :: CreateDeployment -> TestTree+requestCreateDeployment =+  req+    "CreateDeployment"+    "fixture/CreateDeployment.yaml"++requestCreateEnvironment :: CreateEnvironment -> TestTree+requestCreateEnvironment =+  req+    "CreateEnvironment"+    "fixture/CreateEnvironment.yaml"++requestDeleteApplication :: DeleteApplication -> TestTree+requestDeleteApplication =+  req+    "DeleteApplication"+    "fixture/DeleteApplication.yaml"++requestDeleteApplicationFromEnvironment :: DeleteApplicationFromEnvironment -> TestTree+requestDeleteApplicationFromEnvironment =+  req+    "DeleteApplicationFromEnvironment"+    "fixture/DeleteApplicationFromEnvironment.yaml"++requestDeleteEnvironment :: DeleteEnvironment -> TestTree+requestDeleteEnvironment =+  req+    "DeleteEnvironment"+    "fixture/DeleteEnvironment.yaml"++requestGetApplication :: GetApplication -> TestTree+requestGetApplication =+  req+    "GetApplication"+    "fixture/GetApplication.yaml"++requestGetApplicationVersion :: GetApplicationVersion -> TestTree+requestGetApplicationVersion =+  req+    "GetApplicationVersion"+    "fixture/GetApplicationVersion.yaml"++requestGetBatchJobExecution :: GetBatchJobExecution -> TestTree+requestGetBatchJobExecution =+  req+    "GetBatchJobExecution"+    "fixture/GetBatchJobExecution.yaml"++requestGetDataSetDetails :: GetDataSetDetails -> TestTree+requestGetDataSetDetails =+  req+    "GetDataSetDetails"+    "fixture/GetDataSetDetails.yaml"++requestGetDataSetImportTask :: GetDataSetImportTask -> TestTree+requestGetDataSetImportTask =+  req+    "GetDataSetImportTask"+    "fixture/GetDataSetImportTask.yaml"++requestGetDeployment :: GetDeployment -> TestTree+requestGetDeployment =+  req+    "GetDeployment"+    "fixture/GetDeployment.yaml"++requestGetEnvironment :: GetEnvironment -> TestTree+requestGetEnvironment =+  req+    "GetEnvironment"+    "fixture/GetEnvironment.yaml"++requestListApplicationVersions :: ListApplicationVersions -> TestTree+requestListApplicationVersions =+  req+    "ListApplicationVersions"+    "fixture/ListApplicationVersions.yaml"++requestListApplications :: ListApplications -> TestTree+requestListApplications =+  req+    "ListApplications"+    "fixture/ListApplications.yaml"++requestListBatchJobDefinitions :: ListBatchJobDefinitions -> TestTree+requestListBatchJobDefinitions =+  req+    "ListBatchJobDefinitions"+    "fixture/ListBatchJobDefinitions.yaml"++requestListBatchJobExecutions :: ListBatchJobExecutions -> TestTree+requestListBatchJobExecutions =+  req+    "ListBatchJobExecutions"+    "fixture/ListBatchJobExecutions.yaml"++requestListDataSetImportHistory :: ListDataSetImportHistory -> TestTree+requestListDataSetImportHistory =+  req+    "ListDataSetImportHistory"+    "fixture/ListDataSetImportHistory.yaml"++requestListDataSets :: ListDataSets -> TestTree+requestListDataSets =+  req+    "ListDataSets"+    "fixture/ListDataSets.yaml"++requestListDeployments :: ListDeployments -> TestTree+requestListDeployments =+  req+    "ListDeployments"+    "fixture/ListDeployments.yaml"++requestListEngineVersions :: ListEngineVersions -> TestTree+requestListEngineVersions =+  req+    "ListEngineVersions"+    "fixture/ListEngineVersions.yaml"++requestListEnvironments :: ListEnvironments -> TestTree+requestListEnvironments =+  req+    "ListEnvironments"+    "fixture/ListEnvironments.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+  req+    "ListTagsForResource"+    "fixture/ListTagsForResource.yaml"++requestStartApplication :: StartApplication -> TestTree+requestStartApplication =+  req+    "StartApplication"+    "fixture/StartApplication.yaml"++requestStartBatchJob :: StartBatchJob -> TestTree+requestStartBatchJob =+  req+    "StartBatchJob"+    "fixture/StartBatchJob.yaml"++requestStopApplication :: StopApplication -> TestTree+requestStopApplication =+  req+    "StopApplication"+    "fixture/StopApplication.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+  req+    "TagResource"+    "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+  req+    "UntagResource"+    "fixture/UntagResource.yaml"++requestUpdateApplication :: UpdateApplication -> TestTree+requestUpdateApplication =+  req+    "UpdateApplication"+    "fixture/UpdateApplication.yaml"++requestUpdateEnvironment :: UpdateEnvironment -> TestTree+requestUpdateEnvironment =+  req+    "UpdateEnvironment"+    "fixture/UpdateEnvironment.yaml"++-- Responses++responseCancelBatchJobExecution :: CancelBatchJobExecutionResponse -> TestTree+responseCancelBatchJobExecution =+  res+    "CancelBatchJobExecutionResponse"+    "fixture/CancelBatchJobExecutionResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CancelBatchJobExecution)++responseCreateApplication :: CreateApplicationResponse -> TestTree+responseCreateApplication =+  res+    "CreateApplicationResponse"+    "fixture/CreateApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateApplication)++responseCreateDataSetImportTask :: CreateDataSetImportTaskResponse -> TestTree+responseCreateDataSetImportTask =+  res+    "CreateDataSetImportTaskResponse"+    "fixture/CreateDataSetImportTaskResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateDataSetImportTask)++responseCreateDeployment :: CreateDeploymentResponse -> TestTree+responseCreateDeployment =+  res+    "CreateDeploymentResponse"+    "fixture/CreateDeploymentResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateDeployment)++responseCreateEnvironment :: CreateEnvironmentResponse -> TestTree+responseCreateEnvironment =+  res+    "CreateEnvironmentResponse"+    "fixture/CreateEnvironmentResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateEnvironment)++responseDeleteApplication :: DeleteApplicationResponse -> TestTree+responseDeleteApplication =+  res+    "DeleteApplicationResponse"+    "fixture/DeleteApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteApplication)++responseDeleteApplicationFromEnvironment :: DeleteApplicationFromEnvironmentResponse -> TestTree+responseDeleteApplicationFromEnvironment =+  res+    "DeleteApplicationFromEnvironmentResponse"+    "fixture/DeleteApplicationFromEnvironmentResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteApplicationFromEnvironment)++responseDeleteEnvironment :: DeleteEnvironmentResponse -> TestTree+responseDeleteEnvironment =+  res+    "DeleteEnvironmentResponse"+    "fixture/DeleteEnvironmentResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteEnvironment)++responseGetApplication :: GetApplicationResponse -> TestTree+responseGetApplication =+  res+    "GetApplicationResponse"+    "fixture/GetApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetApplication)++responseGetApplicationVersion :: GetApplicationVersionResponse -> TestTree+responseGetApplicationVersion =+  res+    "GetApplicationVersionResponse"+    "fixture/GetApplicationVersionResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetApplicationVersion)++responseGetBatchJobExecution :: GetBatchJobExecutionResponse -> TestTree+responseGetBatchJobExecution =+  res+    "GetBatchJobExecutionResponse"+    "fixture/GetBatchJobExecutionResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetBatchJobExecution)++responseGetDataSetDetails :: GetDataSetDetailsResponse -> TestTree+responseGetDataSetDetails =+  res+    "GetDataSetDetailsResponse"+    "fixture/GetDataSetDetailsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetDataSetDetails)++responseGetDataSetImportTask :: GetDataSetImportTaskResponse -> TestTree+responseGetDataSetImportTask =+  res+    "GetDataSetImportTaskResponse"+    "fixture/GetDataSetImportTaskResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetDataSetImportTask)++responseGetDeployment :: GetDeploymentResponse -> TestTree+responseGetDeployment =+  res+    "GetDeploymentResponse"+    "fixture/GetDeploymentResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetDeployment)++responseGetEnvironment :: GetEnvironmentResponse -> TestTree+responseGetEnvironment =+  res+    "GetEnvironmentResponse"+    "fixture/GetEnvironmentResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetEnvironment)++responseListApplicationVersions :: ListApplicationVersionsResponse -> TestTree+responseListApplicationVersions =+  res+    "ListApplicationVersionsResponse"+    "fixture/ListApplicationVersionsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListApplicationVersions)++responseListApplications :: ListApplicationsResponse -> TestTree+responseListApplications =+  res+    "ListApplicationsResponse"+    "fixture/ListApplicationsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListApplications)++responseListBatchJobDefinitions :: ListBatchJobDefinitionsResponse -> TestTree+responseListBatchJobDefinitions =+  res+    "ListBatchJobDefinitionsResponse"+    "fixture/ListBatchJobDefinitionsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListBatchJobDefinitions)++responseListBatchJobExecutions :: ListBatchJobExecutionsResponse -> TestTree+responseListBatchJobExecutions =+  res+    "ListBatchJobExecutionsResponse"+    "fixture/ListBatchJobExecutionsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListBatchJobExecutions)++responseListDataSetImportHistory :: ListDataSetImportHistoryResponse -> TestTree+responseListDataSetImportHistory =+  res+    "ListDataSetImportHistoryResponse"+    "fixture/ListDataSetImportHistoryResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListDataSetImportHistory)++responseListDataSets :: ListDataSetsResponse -> TestTree+responseListDataSets =+  res+    "ListDataSetsResponse"+    "fixture/ListDataSetsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListDataSets)++responseListDeployments :: ListDeploymentsResponse -> TestTree+responseListDeployments =+  res+    "ListDeploymentsResponse"+    "fixture/ListDeploymentsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListDeployments)++responseListEngineVersions :: ListEngineVersionsResponse -> TestTree+responseListEngineVersions =+  res+    "ListEngineVersionsResponse"+    "fixture/ListEngineVersionsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListEngineVersions)++responseListEnvironments :: ListEnvironmentsResponse -> TestTree+responseListEnvironments =+  res+    "ListEnvironmentsResponse"+    "fixture/ListEnvironmentsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListEnvironments)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+  res+    "ListTagsForResourceResponse"+    "fixture/ListTagsForResourceResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseStartApplication :: StartApplicationResponse -> TestTree+responseStartApplication =+  res+    "StartApplicationResponse"+    "fixture/StartApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy StartApplication)++responseStartBatchJob :: StartBatchJobResponse -> TestTree+responseStartBatchJob =+  res+    "StartBatchJobResponse"+    "fixture/StartBatchJobResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy StartBatchJob)++responseStopApplication :: StopApplicationResponse -> TestTree+responseStopApplication =+  res+    "StopApplicationResponse"+    "fixture/StopApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy StopApplication)++responseTagResource :: TagResourceResponse -> TestTree+responseTagResource =+  res+    "TagResourceResponse"+    "fixture/TagResourceResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy TagResource)++responseUntagResource :: UntagResourceResponse -> TestTree+responseUntagResource =+  res+    "UntagResourceResponse"+    "fixture/UntagResourceResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy UntagResource)++responseUpdateApplication :: UpdateApplicationResponse -> TestTree+responseUpdateApplication =+  res+    "UpdateApplicationResponse"+    "fixture/UpdateApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy UpdateApplication)++responseUpdateEnvironment :: UpdateEnvironmentResponse -> TestTree+responseUpdateEnvironment =+  res+    "UpdateEnvironmentResponse"+    "fixture/UpdateEnvironmentResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy UpdateEnvironment)
+ test/Test/Amazonka/M2.hs view
@@ -0,0 +1,20 @@+-- |+-- Module      : Test.Amazonka.M2+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.M2+  ( tests,+    fixtures,+  )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/M2/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module      : Test.Amazonka.M2.Internal+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.M2.Internal where